On Tue, 2009-03-17 at 18:24 -0500, Greg Rivers wrote: > On Tue, 17 Mar 2009, Robert Noland wrote: > > > On Tue, 2009-03-17 at 12:20 -0500, Greg Rivers wrote: > >> On Sat, 10 Jan 2009, Robert Noland wrote: > >> > >>> I just merged drm (Direct Rendering) from HEAD. > >>> > >>> - Support for latest Intel chips > >>> - Support and fixes for many AMD/ATI chips r500 and below > >>> - Support AMD/ATI IGP based chips (rs690/rs485) > >>> - Lots of code cleanups > >>> - Lots of other fixes and changes since the existing drm > >>> is 2+ years old > >>> > >>> If you are experiencing a "garbled" screen with certain pci/pci-e based > >>> radeons, I have another patch in HEAD that isn't included yet. > >>> > >> > >> I have a workstation with a [Radeon X600 (PCIE)] card. The X display has > >> been garbled since these DRM updates went in in January, and remains > >> garbled with 7.1-STABLE as of yesterday. As a work-around, I'm running > >> the up-to-date 7.1-STABLE system (both world and ports) with a > >> 7.1-RELEASE-p2 kernel. The display is fine with the old kernel and X > >> works great; I even see dramatically improved performance with the new > >> Xorg and EXA acceleration. Your work is much appreciated. > >> > >> But the garbled display with the recent DRM still plagues me. > >> > >> [snip] > > > > Could you try the attached patch. > > > > Unfortunately, there is no noticeable difference with this patch. > > > > Also, I'm guessing that this is a PCI based card, right? Also, it isn't > > an integrated model? > > > > Yes, this is a PCIEx16 card in a HP Compaq dc7600 desktop PC, not a > motherboard integrated adapter. > > Thanks for your help. I'm willing to spend some time debugging this; > please let me know if there's more information I can provide or other > tests or patches I can try.
Ok, try this patch... I asked the folks from AMD and they agree that this shouldn't be needed on an RV370, but we will give it a try... This is what fixed the garbled display on the IGP chips. robet. > -- > Greg Rivers -- Robert Noland <rnol...@freebsd.org> FreeBSD
Index: dev/drm/ati_pcigart.c =================================================================== --- dev/drm/ati_pcigart.c (revision 189933) +++ dev/drm/ati_pcigart.c (working copy) @@ -83,7 +83,7 @@ } flags = BUS_DMA_NOWAIT | BUS_DMA_ZERO; - if (gart_info->gart_reg_if == DRM_ATI_GART_IGP) +/* if (gart_info->gart_reg_if == DRM_ATI_GART_IGP) */ flags |= BUS_DMA_NOCACHE; ret = bus_dmamem_alloc(dmah->tag, &dmah->vaddr, flags, &dmah->map);
signature.asc
Description: This is a digitally signed message part