|
From: Petr V. <VAN...@vc...> - 2001-05-14 16:24:48
|
On 14 May 01 at 17:58, antirez wrote: > On Mon, May 14, 2001 at 03:45:51PM +0000, Petr Vandrovec wrote: > > ftp://platan.vc.cvut.cz/pub/linux/matrox-latest/ > > vga.gz => vga16fb patch; > > fbset -depth 8 -nonstd 0 => up to 320x200/256 colors, linear > > fbset -depth 8 -nonstd 1 => up to 360x480/256 colors, planes > > fbset -depth 4 -nonstd 0 => up to 720x480/16 colors, planes > > fbset -depth 4 -nonstd 1 => up to 720x182/16 (or 320x480/16), linear > > (due to some VGA incompatibilites last mode works either on > > ATI or on Matrox... you have to change code to switch behavior, > > ATI needs 'xoffset--' in vga16fb_pan_var, while Matrox does not, > > or vice versa...) > > fbset-through-tty.gz => patch to get 'fbset -fb /dev/tty* ...' to work > > (not tested with other fbdev than matroxfb) > > tabstop.gz => patch for fatal kernel memory corruption and TAB not working > > beyond column 160 > > I downloaded the patch, it seems your 256 color driver works > in 360x480 only to provide a graphic console, but not with > other userspace software that mmap() the video memory. > Am I right? It provides mmap. But application must understand FB_AUX_PLANES_CFB8 videomode, not packed pixels. > > fbtv uses busmastering transfers when fbdev reports reasonable values. > > I have no idea what it checks, but on all my packed_pixels hardware > > it does busmastering, even on 320x200 VGA. > > I read the source code of fbtv, and it seems to perform a quite > usual memory mapped I/O. Unfortunatelly I can't test it, I > lacks a TV-card... It then passes this address down to bttv, which converts virtual address back to physical and pushes data directly there. > No I can't use the no-page trick to remap the videoram pages and change > the hardware state, unfortunatelly: it seems not possible. > I used it just to mmap the vmalloc()ed "virtual"-fb memory to userspace. There > is a different kernel timer that updates the video memory and > switches the registers to write to the proper video plane. If there is some memory somewhere it will work, as bttv supports non-continuous data stores due to its ability to write directly to userspace. Petr Vandrovec van...@vc... |