Re: [GATOS] AIW Rage 128 pro testing - Xorg 6.9.0 - capture works but I must disable DRI
Status: Beta
Brought to you by:
volodya
From: Francisco L. F. <flu...@gm...> - 2006-11-11 16:46:52
|
Vadimir, If the situation is as you describe, (I think that the DMA issue is also affecting the putvideo support merge for mach64 based cards) then I wonder what is the future for gatos on rage 128: 1. Mantain a parallel patch that could work disabling DRI. There are still some issues to solve though, because doing a bit more testing, I have discoverd that old flaws from XFree86 times are still present, namely: - There are reported lockups of rage 128 engine while capturing. As I have said I don't have drm/dri loaded. Probably becasue that, some frames are partially captured and then you notice a vertical displacement in the captured frames. Normal frame -> Displaced frame ---------- ---------- 1111111111 3333333333 2222222222 ---> 4444444444 3333333333 1111111111 4444444444 2222222222 ---------- ---------- - Sometimes (I haven't done extensive testing yet) after using overlay to play video (i.e. with mplayer),it is not possible to display overlay video in (you only get a black screen with xawtv) again, until you reset the X server. 2. Trying to rewrite video capture support from scratch to adapt it to the dma usage by the drm or ddx components. It could even work without X like Eric Sellers driver. It is sad tho say that until now, only Eric's driver has worked for me (I only had AIW mach 64 and 128 --showing the displacement problem in capture and also AIW Radeon 9000 -- not supported then, I plan to test it soon with Xorg 6.9+). 3. Suspend the development and make clear that those cards are never going to work. I have now my AIW 128 pro retired to another computer, but ready to help in testing work. Regards On Wed, 1 Nov 2006 02:58:39 -0500 (EST) Vladimir Dergachev <vo...@mi...> wrote: > > Hi Francisco, > > Sorry for the delayed response, comments below: > > > > > Hello, > > > > I have adapted the patch posted by Vladimir as long ago as Thu, 23 > > Dec 2004, to make it work with Xorg 6.9.0 final release. > > > > Video capture works. I must say that with XFree 4.3 (from which the > > codebase is adapted) I never was able to get video capture working > > properly. > > > > The problem is that it doesn't work with DRI enabled. > > > > Regarding the line: > > > > info->accel->Sync(pScrn); > > > > in r128_video.c > > > > (1) if I left the line uncommented (as is in the patch), Xorg enters > > in a deadlock, posting the following lines again and again: > > > > (EE) R128(0): R128CCEWaitForIdle: CCE stop -1007 > > (EE) R128(0): R128CCEWaitForIdle: CCE reset -1007 > > (EE) R128(0): R128CCEWaitForIdle: CCE start -1007 > > (EE) R128(0): R128CCEWaitForIdle: CCE idle -1007 > > (EE) R128(0): Idle timed out, resetting engine... > > > > > > (2) if I uncomment the line, X locks hard the computer. > > > > Vladimir, I am willing to help sorting out this last obstacle to get > > gatos working at last with > > AIW Rage 128 pro. > > The reason why this happens is that both GATOS capture module and DRI > use the same DMA queue (there is only one on Rage128). That was why > the patch never made it into Xorg CVS - the changes needed to get both > > working smoothly would be too extensive and I was not even sure that > it would be possible. > > One could try to cut out the capture support, but, if I remember > correctly, there was some separate cause for lockups with DRI enabled > and Xv running. > > best > > Vladimir Dergachev > > > > > Regards > > > > On Mon, 10 Jan 2005 06:18:20 -0500 (EST) > > Rick Scott <rw...@al...> wrote: > > > >> The "green dots" problem was fixed with the addition of > >> > >> OUTREG(R128_OV0_VID_BUF0_BASE_ADRS, offset1 & 0xfffffff0); > >> > >> in r128_video.c:R128DisplayVideo422. > >> It should go just before > >> > >> OUTREG(R128_OV0_VID_BUF1_BASE_ADRS, offset1 & 0xfffffff0); > >> > >> Should be around line 1093. > >> > >> > >> On 10-Jan-05 at 05:17, SABA Simone Consultant > >> (Sim...@co...) wrote: > hi, I managed > >to > figure that out that already (after the II try) :) > >>> but thank you very much anyway > >>> in the meantime I found a few problems (unseen the first time), > >>> i will try and describe 'em: > >>> > >>> - surely there is a bug in avview, after you aknoledge km > >>> is not loaded it loops to death, strace-ing the process > >>> you get lots of xv parameters readings, like this > >>> > >>> read(3, "XV_BRIGHTNESS\0Y\0", 16) = 16 > >>> read(3, "\3\0\0\0\30\374\377\377\350\3\0\0\f\0\0\0", 16) = 16 > >>> read(3, "XV_CONTRAST\0", 12) = 12 > >>> read(3, "\3\0\0\0\30\374\377\377\350\3\0\0\20\0\0\0", 16) = 16 > >>> read(3, "XV_SATURATION\0T\0", 16) = 16 > >>> read(3, "\3\0\0\0\30\374\377\377\350\3\0\0\f\0\0\0", 16) = 16 > >>> read(3, "XV_COLOR\0TIO", 12) = 12 > >>> read(3, "\3\0\0\0\30\374\377\377\350\3\0\0\10\0\0\0", 16) = 16 > >>> read(3, "XV_HUE\0C", 8) = 8 > >>> read(3, "\3\0\0\0\0\0\0\0\1\0\0\0\24\0\0\0", 16) = 16 > >>> read(3, "XV_DOUBLE_BUFFER\0\0\0\0", 20) = 20 > >>> read(3, "\3\0\0\0\0\0\0\0\f\0\0\0\f\0\0\0", 16) = 16 > >>> read(3, "XV_ENCODING\0", 12) = 12 > >>> read(3, "\3\0\0\0\0\0\0\0\377\377\377\377\10\0\0\0", 16) = 16 > >>> > >>> so most likely it is some unhandled condition, > >>> tonight i'm going to check if it is really the last revision, > >>> > >>> - xawtv works, meaning that tuner tunes, audio is ok input is > >>> switched from sources, BUT the picture is randomly garbled, > >>> i can still see the picture, but it is dotted with green fixed > >>> pixels, they won't go away and they won't move, if i reboot, the > >>> pattern changes but the problem remains, once i had a pattern > >>> that matched the shape of my gkrellm window quite closely > >>> > >>> - didn't try capture cause avview is unusable > >>> > >>> - loaded the km but i could not get an accesible /dev/video, > >>> well, honestly i didn't try very hard, i will try again > >>> > >>> - xv is still working flawlessly > >>> > >>> xorg.log wasn't a very interesting reading, lots of PutVideo > >logs >> and a few frequency changes, no errors, nothing strange > >>> of course i've not tried to fiddle with the function Rick > >>> suggested > >>> > >>> if you need me to drill out any info from the logs just tell me > >>> > >>> regards > >>> Simone > >>> > >>>> -----Messaggio originale----- > >>>> Da: Vladimir Dergachev [mailto:vo...@mi...] > >>>> Inviato: mercoled_ 5 gennaio 2005 21.51 > >>>> A: SABA Simone Consultant > >>>> Cc: Rick Scott > >>>> Oggetto: Re: R: R: [GATOS][2] Rage 128 testing > >>>> > >>>> > >>>> > >>>> Hi Simone, > >>>> > >>>> Once you compiled the Xserver there is no need to > >>>> recompile the entire > >>>> thing to apply the driver patch, just do this: > >>>> > >>>> cd programs/Xserver/hw/xfree86/drivers/ati > >>>> make > >>>> make install > >>>> > >>>> best > >>>> > >>>> Vladimir Dergachev > >>>> > >>>> On Wed, 5 Jan 2005, SABA Simone Consultant wrote: > >>>> > >>>>> hi, i did not have time to make extensive testing > >>>>> cause compiling took almost forever, and at first i > >>>>> forgot to modify the code as you mentioned :(( > >>>>> anyway it is working :) i tried xv, tv tuner, glxgears > >>>>> (dri remains disabled, any hope to get it working?) > >>>>> without problems, only thing missing a test is video > >>>>> capture > >>>>> in the next few days i think i will try out if km is > >>>>> also working > >>>>> > >>>>> meanwhile thank you for the great patch, > >>>>> i hope it will make it to the official release > >>>>> go gatos :D > >>>>> > >>>>>> -----Messaggio originale----- > >>>>>> Da: Vladimir Dergachev [mailto:vo...@mi...] > >>>>>> Inviato: marted_ 4 gennaio 2005 5.25 > >>>>>> A: Rick Scott > >>>>>> Cc: SABA Simone Consultant > >>>>>> Oggetto: Re: R: [GATOS][2] Rage 128 testing > >>>>>> > >>>>>> > >>>>>>>> > >>>>>>>> Could you check the following: > >>>>>>>> > >>>>>>>> 1. Instead of your fix, could you replace the code > >>>>>> around line 434 > >>>>>>>> in r128_mm_i2c.c with the following and check > >>>>>> whether it does > >>>>>>>> the same thing: > >>>>>>>> > >>>>>>>> /* You can't attach addon card to a notebook */ > >>>>>>>> if(!info->MM_TABLE_valid && > >>>>>>>> (((info->Chipset != PCI_CHIP_RAGE128LE) && > >>>>>>>> (info->Chipset != PCI_CHIP_RAGE128LF) && > >>>>>>>> (info->Chipset != PCI_CHIP_RAGE128MF) && > >>>>>>>> (info->Chipset != PCI_CHIP_RAGE128ML)) || > >>>>>>>> info->forceI2CProbing))R128DetectAddon(pPriv); > >>>>>>>> else { > >>>>>>>> pPriv->addon_board = FALSE; > >>>>>>>> pPriv->board_info = info->MM_TABLE.tuner_type; > >>>>>>>> } > >>>>>>> > >>>>>>> This works fine, and also clears up the vertical jumping. > >>>>>> It seems that > >>>>>>> board_info is used in other key locations, go figure :) > >>>>>> > >>>>>> Excellent - thank you ! > >>>>>> > >>>>>>> > >>>>>>>> > >>>>>>>> 2. Is the deadlock with DRI enabled solved by > >>>>>> removing the line > >>>>>>>> info->accel->Sync(pScrn); > >>>>>>>> someplace around line 452 in r128_video.c ? > >>>>>>> > >>>>>>> This seems to have worked, but I have to go back and check > >>>>>> my config, and the > >>>>>>> logs to make sure. Okay, dri and drm loaded. Direct > >>>>>> rendering got disabled, > >>>>>>> probably due to some of the unresolved symbols, looks like > >>>>>> I'm not loading gl > >>>>>>> :( I'll have to look into that more tomorrow, the holiday > >>>> is over :) > >>>>>> > >>>>>> Cool, thank you ! This would be the last problem I am aware > >>>>>> of, if it is > >>>>>> fixed, I can go commit code to X.org and see whether there > >>>>>> any new bug > >>>>>> reports. > >>>>>> > >>>>>> best > >>>>>> > >>>>>> Vladimir Dergachev > >>>>>> > >>>>> > >>>> > >> > >> > >> > >> ------------------------------------------------------- > >> The SF.Net email is sponsored by: Beat the post-holiday blues > >> Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek. > >> It's fun and FREE -- well, > >almost....http://www.thinkgeek.com/sfshirt > > >_______________________________________________ > Gatos-devel mailing > >list > Gat...@li... > >> https://lists.sourceforge.net/lists/listinfo/gatos-devel > >> > > |