2010/7/4 Dave Airlie <airlied@xxxxxxxxx>: > 2010/7/5 Rafał Miłecki <zajec5@xxxxxxxxx>: >> W dniu 4 lipca 2010 22:24 użytkownik Dave Airlie <airlied@xxxxxxxxx> napisał: >>> 2010/7/5 Rafał Miłecki <zajec5@xxxxxxxxx>: >>>> AFAIU EXA is collection of operations (Solid, Copy, UploadToScreen, >>>> DownloadFromScreen) that touch VRAM. So we can tell hardware to move >>>> xterm window 100px right (Copy) and fill freed place with blue >>>> (Solid). Is that right? >>>> >>>> So my question is: when implementing EXA (in DDX) needs DRM and when >>>> it does not? I know in case of R6xx-R7xx we had to get DRM first to >>>> receive EXA. AFAIK it wasn't the case with R1xx-R5xx. >>>> >>>> On the other hand some VIA's driver needs DRM for EXA on Chrome9, >>>> while openChrome claims to support EXA without DRM[1]. >>>> >>>> Could someone explain this to me, please? >>>> >>>> [1] http://phoronix.com/forums/showthread.php?p=89776 >>> >>> Nothing to do with EXA, its up to the driver underneath. >> >> That's why I mentioned "implementation" in subject, not EXA itself :) >> >> >>> If the driver can accel the operations without the drm, it doesn't >>> need the drm, it the driver requires the drm to accel operations then >>> it needs the drm >> >> Any tip why acceleration operations are available on some hardware >> only with DRM, and sometimes not? Is this related to the way how we >> send commands to GPU? AFAIK every command submission implementation >> needs DRM... but somehow in case of r1xx-r5xx it is not true. > > You can program some GPUs via MMIO, its slower and you can't DMA > to/from main memory at all, it just works in an offscreen memory area. > > Its generally pointless maintaining these codepaths since nobody tests > them, and for chips like r600 I don't think MMIO is sufficient to > program accel engines. You can't program the r6xx+ 3D engines via MMIO directly. > > Not so sure on r500 its sufficient either since some regs can't be > programmed via MMIO properly, but we have the codepaths since they are > so similiar to r100. Only copy and solid are available via mmio on r5xx since the WAIT_UNTIL register and a few others are not accessible via MMIO. In theory even the 2D engine could be problematic without those regs, but it's generally fairly well behaved. Alex _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel