Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 17 Mar 2009 14:37:51 -0500
From:      Robert Noland <rnoland@FreeBSD.org>
To:        Greg Rivers <gcr+freebsd-stable@tharned.org>
Cc:        freebsd-x11 <freebsd-x11@freebsd.org>, freebsd-stable <freebsd-stable@freebsd.org>
Subject:   Re: [HEADS UP] drm merged to -STABLE
Message-ID:  <1237318671.1728.7.camel@balrog.2hip.net>
In-Reply-To: <alpine.BSF.2.00.0903171011540.30152@roadkill.tharned.org>
References:  <1231599679.1837.13.camel@wombat.2hip.net> <alpine.BSF.2.00.0903171011540.30152@roadkill.tharned.org>

next in thread | previous in thread | raw e-mail | index | archive | help

--=-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: <VGA-compatible display> port 0x2000-0x20ff mem 0xe0000000-0xe7f=
fffff,0xe8500000-0xe850ffff irq 16 at device 0.0 on pci1
> drm0: <ATI Radeon RV370 X600 Pro> on vgapci0
> info: [drm] Initialized radeon 1.25.0 20060524
> vgapci1: <VGA-compatible display> 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: <VGA-compatible display> port 0x2000-0x20ff mem 0xe0000000-0xe7f=
fffff,0xe8500000-0xe850ffff irq 16 at device 0.0 on pci1
> drm0: <ATI Radeon RV370 X600 Pro> 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: <VGA-compatible display> 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 <rnoland@FreeBSD.org>
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--




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1237318671.1728.7.camel>