Here you find the code: http://code.google.com/p/gma500/source/browse/trunk/xserver-xorg-video-psb/xserver-xorg-video-psb-0.32.1/src/psb_video.c
The problem is on line 688. The code tries to find the pointer to the buffer and the offset, and if it doesnt find it, it calls exaMoveInPixmap(). I don't like the 'while' thing personally but I didn't write that code and are willing to change it, that's not the problem. The problem is that exaMoveInPixmap() doesnt do anything if the pixmap has a score that is 'PINNED', and that's the case here... Could it be mplayer that is creating the window region the wrong way? I can imagine alot of drivers don't touch the pixmap and simply overlay their video... -Yves On Thu, Jun 10, 2010 at 12:38:27PM +0200, Michel Dänzer wrote: > On Don, 2010-06-10 at 12:34 +0200, Yves De Muyter wrote: > > OK so i'm porting the 'poulsbo' driver to Xorg 1.7. What I'm working on > > right now is to make Xv work in the driver. What the Xv-code does is to > > get the address of the drawable, map it into SHM and ask the hardware to > > blit the videoframe onto that drawable. > > > > The problem is that the address of the drawable is not within our region > > of SHM pixmap memory, so we need to call exaMoveInPixmap, but that one > > doesnt work when the pixmap is pinned... > > It would probably help if you could point to the code in question along > with a specific example of a window being passed in and where exactly > the problem arises. > > > -- > Earthling Michel Dänzer | http://www.vmware.com > Libre software enthusiast | Debian, X and DRI developer > _______________________________________________ > [email protected]: X.Org support > Archives: http://lists.freedesktop.org/archives/xorg > Info: http://lists.freedesktop.org/mailman/listinfo/xorg > Your subscription address: [email protected] _______________________________________________ [email protected]: X.Org support Archives: http://lists.freedesktop.org/archives/xorg Info: http://lists.freedesktop.org/mailman/listinfo/xorg Your subscription address: [email protected]
