From owner-freebsd-stable@FreeBSD.ORG Tue Mar 17 19:38:07 2009 Return-Path: Delivered-To: freebsd-stable@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 035381065693; Tue, 17 Mar 2009 19:38:07 +0000 (UTC) (envelope-from rnoland@FreeBSD.org) Received: from gizmo.2hip.net (gizmo.2hip.net [64.74.207.195]) by mx1.freebsd.org (Postfix) with ESMTP id B8B8B8FC22; Tue, 17 Mar 2009 19:38:06 +0000 (UTC) (envelope-from rnoland@FreeBSD.org) Received: from [192.168.1.156] (adsl-19-214-182.bna.bellsouth.net [68.19.214.182]) (authenticated bits=0) by gizmo.2hip.net (8.14.3/8.14.3) with ESMTP id n2HJaiFj065134 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Tue, 17 Mar 2009 15:36:44 -0400 (EDT) (envelope-from rnoland@FreeBSD.org) From: Robert Noland To: Greg Rivers In-Reply-To: References: <1231599679.1837.13.camel@wombat.2hip.net> Content-Type: multipart/signed; micalg="pgp-sha1"; protocol="application/pgp-signature"; boundary="=-NEKwcLo4DP/LGBO0aopT" Organization: FreeBSD Date: Tue, 17 Mar 2009 14:37:51 -0500 Message-Id: <1237318671.1728.7.camel@balrog.2hip.net> Mime-Version: 1.0 X-Mailer: Evolution 2.24.5 FreeBSD GNOME Team Port X-Spam-Status: No, score=-2.3 required=5.0 tests=AWL,BAYES_00, MIME_QP_LONG_LINE,RDNS_DYNAMIC autolearn=no version=3.2.5 X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on gizmo.2hip.net Cc: freebsd-x11 , freebsd-stable Subject: Re: [HEADS UP] drm merged to -STABLE X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 17 Mar 2009 19:38:08 -0000 --=-NEKwcLo4DP/LGBO0aopT Content-Type: multipart/mixed; boundary="=-W+ozQIQnwEbUXdwyFHsA" --=-W+ozQIQnwEbUXdwyFHsA Content-Type: text/plain Content-Transfer-Encoding: quoted-printable On Tue, 2009-03-17 at 12:20 -0500, Greg Rivers wrote: > On Sat, 10 Jan 2009, Robert Noland wrote: >=20 > > 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. > > >=20 > I have a workstation with a [Radeon X600 (PCIE)] card. The X display has= =20 > been garbled since these DRM updates went in in January, and remains=20 > garbled with 7.1-STABLE as of yesterday. As a work-around, I'm running=20 > the up-to-date 7.1-STABLE system (both world and ports) with a=20 > 7.1-RELEASE-p2 kernel. The display is fine with the old kernel and X=20 > works great; I even see dramatically improved performance with the new=20 > Xorg and EXA acceleration. Your work is much appreciated. >=20 > But the garbled display with the recent DRM still plagues me. >=20 > Here's how pciconf identifies the card: > vgapci0@pci0:1:0:0: class=3D0x030000 card=3D0x06021002 chip=3D0x5b621002 = rev=3D0x00 hdr=3D0x00 > vendor =3D 'ATI Technologies Inc' > device =3D 'RV380 RADEON X600 Series 265MB' > class =3D display > subclass =3D VGA > vgapci1@pci0:1:0:1: class=3D0x038000 card=3D0x06031002 chip=3D0x5b721002 = rev=3D0x00 hdr=3D0x00 > vendor =3D 'ATI Technologies Inc' > device =3D 'Radeon X600 Series - Secondary' > class =3D display >=20 > The old DRM probe: > vgapci0: port 0x2000-0x20ff mem 0xe0000000-0xe7f= fffff,0xe8500000-0xe850ffff irq 16 at device 0.0 on pci1 > drm0: on vgapci0 > info: [drm] Initialized radeon 1.25.0 20060524 > vgapci1: mem 0xe8510000-0xe851ffff at device 0.1= on pci1 > ... > vgapci0: Reserved 0x10000 bytes for rid 0x18 type 3 at 0xe8500000 > vgapci0: Reserved 0x8000000 bytes for rid 0x10 type 3 at 0xe0000000 > info: [drm] Setting GART location based on new memory map > info: [drm] Loading R300 Microcode > info: [drm] writeback test succeeded in 1 usecs > ioapic0: Assigning PCI IRQ 16 to local APIC 0 > ioapic0: routing intpin 16 (PCI IRQ 16) to vector 60 > drm0: [MPSAFE] >=20 > The new DRM probe: > vgapci0: port 0x2000-0x20ff mem 0xe0000000-0xe7f= fffff,0xe8500000-0xe850ffff irq 16 at device 0.0 on pci1 > drm0: on vgapci0 > vgapci0: Reserved 0x10000 bytes for rid 0x18 type 3 at 0xe8500000 > vgapci0: child drm0 requested pci_enable_busmaster > info: [drm] Initialized radeon 1.29.0 20080528 > vgapci1: mem 0xe8510000-0xe851ffff at device 0.1= on pci1 > ... > vgapci0: Reserved 0x8000000 bytes for rid 0x10 type 3 at 0xe0000000 > info: [drm] Setting GART location based on new memory map > info: [drm] Loading R300 Microcode > info: [drm] Num pipes: 1 > info: [drm] writeback test succeeded in 1 usecs > ioapic0: Assigning PCI IRQ 16 to local APIC 0 > ioapic0: routing intpin 16 (PCI IRQ 16) to vector 59 > drm0: [MPSAFE] > drm0: [ITHREAD] > info: [drm] Num pipes: 1 >=20 > Difference between the Xorg logs when it's working and when it's not: > --- ok/Xorg.0.log 2009-03-16 14:39:40.000000000 -0500 > +++ garbled/Xorg.0.log 2009-03-16 14:46:13.000000000 -0500 > @@ -6 +6 @@ > -Current Operating System: FreeBSD xxx.xxx.xxxxx.xxx 7.1-RELEASE-p2 FreeB= SD 7.1-RELEASE-p2 #0: Fri Jan 16 18:00:35 CST 2009 root@xxx.xxx.xxxxx.x= xx:/usr/obj/usr/src/sys/SMALL-SMP i386 > +Current Operating System: FreeBSD xxx.xxx.xxxxx.xxx 7.1-STABLE FreeBSD 7= .1-STABLE #0: Mon Mar 16 11:42:42 CDT 2009 root@xxx.xxx.xxxxx.xxx:/usr/= obj/usr/src/sys/SMALL-SMP i386 > @@ -14 +14 @@ > -(=3D=3D) Log file: "/var/log/Xorg.0.log", Time: Mon Mar 16 14:39:34 2009 > +(=3D=3D) Log file: "/var/log/Xorg.0.log", Time: Mon Mar 16 14:22:00 2009 > @@ -407 +407 @@ > -(II) RADEON(0): [dri] Found DRI library version 1.3.0 and kernel module = version 1.25.0 > +(II) RADEON(0): [dri] Found DRI library version 1.3.0 and kernel module = version 1.29.0 > @@ -774,5 +774,5 @@ > -(II) RADEON(0): [pci] 32768 kB allocated with handle 0xc56d4000 > -(II) RADEON(0): [pci] ring handle =3D 0xc56d4000 > -(II) RADEON(0): [pci] Ring mapped at 0x90a00000 > -(II) RADEON(0): [pci] Ring contents 0x00000000 > -(II) RADEON(0): [pci] ring read ptr handle =3D 0xc57d5000 > +(II) RADEON(0): [pci] 32768 kB allocated with handle 0xe7732000 > +(II) RADEON(0): [pci] ring handle =3D 0xe7732000 > +(II) RADEON(0): [pci] Ring mapped at 0x88a00000 > +(II) RADEON(0): [pci] Ring contents 0xff7d8c94 > +(II) RADEON(0): [pci] ring read ptr handle =3D 0xe7833000 > @@ -780,6 +780,6 @@ > -(II) RADEON(0): [pci] Ring read ptr contents 0x00000000 > -(II) RADEON(0): [pci] vertex/indirect buffers handle =3D 0xc57d6000 > -(II) RADEON(0): [pci] Vertex/indirect buffers mapped at 0x90b01000 > -(II) RADEON(0): [pci] Vertex/indirect buffers contents 0x00000000 > -(II) RADEON(0): [pci] GART texture map handle =3D 0xc59d6000 > -(II) RADEON(0): [pci] GART Texture map mapped at 0x90d01000 > +(II) RADEON(0): [pci] Ring read ptr contents 0xff180000 > +(II) RADEON(0): [pci] vertex/indirect buffers handle =3D 0xe7834000 > +(II) RADEON(0): [pci] Vertex/indirect buffers mapped at 0x90c00000 > +(II) RADEON(0): [pci] Vertex/indirect buffers contents 0xff100049 > +(II) RADEON(0): [pci] GART texture map handle =3D 0xe7a34000 > +(II) RADEON(0): [pci] GART Texture map mapped at 0x90e34000 > @@ -806 +805,0 @@ > -(WW) RADEON(0): Failed to determine num pipes from DRM, falling back to = manual look-up! >=20 > I tried setting hw.dri.0.debug=3D1. That produced a lot of output, but=20 > nothing that looked like an error or warning. Do you have any idea what=20 > might be causing this, or how to troubleshoot further? Could you try the attached patch. Also, I'm guessing that this is a PCI based card, right? Also, it isn't an integrated model? robert. --=20 Robert Noland FreeBSD --=-W+ozQIQnwEbUXdwyFHsA Content-Disposition: attachment; filename="drm_bufs.patch" Content-Transfer-Encoding: base64 Content-Type: text/x-patch; name="drm_bufs.patch"; charset="us-ascii" SW5kZXg6IGRybV9idWZzLmMNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCi0tLSBkcm1fYnVmcy5jCShyZXZpc2lvbiAx ODk5MDcpDQorKysgZHJtX2J1ZnMuYwkocmV2aXNpb24gMTg5OTA4KQ0KQEAgLTExMDYsNyArMTEw Niw3IEBADQogCWlmIChzaXplID09IDApDQogCQlyZXR1cm4gMDsNCiANCi0Jb3JkZXIgPSBmZnNs KHNpemUpIC0gMTsNCisJb3JkZXIgPSBmbHNsKHNpemUpIC0gMTsNCiAJaWYgKHNpemUgJiB+KDF1 bCA8PCBvcmRlcikpDQogCQkrK29yZGVyOw0KIA0K --=-W+ozQIQnwEbUXdwyFHsA-- --=-NEKwcLo4DP/LGBO0aopT Content-Type: application/pgp-signature; name="signature.asc" Content-Description: This is a digitally signed message part -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.11 (FreeBSD) iEYEABECAAYFAkm//A8ACgkQM4TrQ4qfROOcmwCfV6+OX4L1HFo7iFxkhndK/N9g 1oQAnRFVTUxPL2vx7NVvV3ctLMDvnJr5 =I+MK -----END PGP SIGNATURE----- --=-NEKwcLo4DP/LGBO0aopT--