Problems with fxtv and bktr cards on modern hardware

Andre Albsmeier Andre.Albsmeier at siemens.com
Mon Mar 17 08:32:43 UTC 2008


I have problems using fxtv (without -disableDirectV) on modern
hardware (Asus P5W, BrookTree 878 PCI, Matrox G550 PCIe). On an
older board (Asus CUBX-L) with the same BrookTree 878 PCI card
and a Matrox G550 AGP everything works.

I have found two test programmes on http://people.freebsd.org/~rhh/fxtv/:

1. dgafbtest tests the functionality of the DGA extensions. It draws
   some lines in the corners of the screen using DGA. This programme
   works perfectly on the Asus P5W.

2. tv-dgatest switches the bktr-card into a mode where it generates
   colourbars (instead of video). The result is written directly to
   the graphics card's memory using DGA. This doesn't work on the P5W
   but it works on the CUBX-L.

tv-dgatest outputs some diagnostic data. In the case of the P5W
these are:

XF86 DGA Extension Test

        Version        = 2.00
        Direct Video   = NO-DirectGraphics NO-DirectMouse NO-DirectKeyb 

XF86DGAGetVideo:
        Video Address  = 0x48400000
              Width    = 1280
              BankSize = 32768K
              MemSize  = 32768K

XF86DGAGetVideoLL:
        Video Address  = 0xfa000000
              Width    = 1280
              BankSize = 32768K
              MemSize  = 32768K


The data for the CUBX-L is the same except for the "Video Address"
which changes from 0xfa000000 to 0xe2000000.

Since dgafbtest works we can assume that the address of the video
memory is correct in both cases. In tv-dgatest, it seems that the call

ioctl( fd, METEORSVIDEO, &video )

instructs the bktr driver to tell the card where to copy its
output. Then, the lines

larg = METEOR_CAP_SINGLE;
ioctl( fd, METEORCAPTUR, &larg )

actually tell the card to send its colour bars to graphics adapter.

Could it be that the bktr driver (or the card) has problems with
the METEORSVIDEO ioctl() with a video address 0xfa000000?

Or could it be, that the old PCI-based BrookTree 878 card can't
work together with a PCIe-based G550?

Any ideas?

Thanks,

	-Andre


More information about the freebsd-multimedia mailing list