You are viewing airlied

airlied
airlied
:.:..:.
airlied [userpic]
drm-next and r600 KMS support

I've pushed out the drm-next branch to

http://git.kernel.org/?p=linux/kernel/git/airlied/drm-2.6.git;a=shortlog;h=drm-next

A few highlights include:
firmware loading for r128/mga/radeon + radeon kms drivers. (for all the Debian fans).
Intel -next tree pulled in.
radeon r100/r200 kms command stream checking
radeon kms tv-out support
merged fb handling for all kms drivers
DMT timings + better HDMI EDID decoding
R600 3D support
R600 KMS support (under staging drivers along with radeon KMS).

along with numerous other patch.

The r600 3D support enables r600 3D without KMS.

The r600/r700 KMS support in that tree enables full 2D/3D/Xv accel + DRI2,
you need a master libdrm, master ati DDX and master mesa. Jerome and myself
at Red Hat have been working on this tag team along with Alex at AMD. It may
not be 100% stable yet and I'm sure we can make things a lot faster, but
the basics all work for me here. So get testing and reporting please.

Fedora rawhide users, just wait for a day and it should all be available.

I've done some boot testing on my rs780, rv635, rv610 and rv730 so far
and all seem to at least start and run my X session.

Comments
(Anonymous)

>firmware loading for r128/mga/radeon + radeon kms drivers. (for all the Debian fans).
I LOVE YOU DAVE

(Anonymous)
Will you push these upgrades to Fedora 11?

I am a Fedora 11 user. I have a RV635 card. I can not bear so terrible fglrx drivers. Do you push these upgrade to mainline fedora version? Such as fedora 11 or fedora 10.

Re: Will you push these upgrades to Fedora 11?

Not planning on it yet, as they will probably introduce regressions.

Sweeeeeet =)

(Anonymous)
Constantine

Saying this will be implemented in rawhide, do you mean constantine will get a 2.6.32 kernel or a 2.6.31 kernel with r600 kms support?

Re: Constantine

2.6.31 with drm-next backported to it. rawhide has it already.

Does this branch have both 3D and KMS as all the branches I've tried so far will either give KMS with slow 3D or fast 3D and no KMS

Is this the same but all in one place and controlled with radeon.modeset?

yup all in one place radeon.modeset picks it.

(Anonymous)
Thank you!

This is great news. Thank you for your hard work!

(Anonymous)
Dave is the man!!!!!

Feel like compiling some software again... almost :)

(Anonymous)
You are...

a ninja! thanks and hopefully Fedora 12 will be smooth on my R600!

(Anonymous)
Thanks

Will sure be nice to see some glxgears running on my brand new 4890 with OSS drivers =D

Keep up the awesome work

(Anonymous)

>firmware loading for r128/mga/radeon + radeon kms drivers
>firmware loading for radeon kms drivers
>firmware loading
>firmware

OMG NO THIS IS SO UNFAIR I WANT MY FOR FREDOMS CUZ I NEED TO PUT BITTORENT ON MY RADEON OMG NO PLZ WHY R U DOIN THIS OMG SOO UNCOOL

SERSLY I HAET U GUYZ FOR NOT MAKIN ALL THE CODEZ AVALABLE FOR US 31337 HACKRZ TO

~ C.

(Anonymous)

On RS780 with built-in drm (radeon.modeset=1):
[ 0.273297] Linux agpgart interface v0.103
[ 0.273385] [drm] Initialized drm 1.1.0 20060810
[ 0.273463] [drm] radeon kernel modesetting enabled.
[ 0.273542] radeon 0000:01:05.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18
[ 0.273581] radeon 0000:01:05.0: setting latency timer to 64
[ 0.275072] [drm] radeon: Initializing kernel modesetting.
[ 0.275125] [drm] register mmio base: 0xFE9F0000
[ 0.275161] [drm] register mmio size: 65536
[ 0.275646] ATOM BIOS: B27722
[ 0.275687] [drm] Clocks initialized !
[ 0.275770] [TTM] Zone kernel: Available graphics memory: 899800 kiB.
[ 0.275816] [drm] radeon: 384M of VRAM memory ready
[ 0.275854] [drm] radeon: 512M of GTT memory ready.
[ 0.275946] [drm] Loading RS780 CP Microcode
[ 0.275986] platform radeon_cp.0: firmware: using built-in firmware radeon/RS780_pfp.bin
[ 0.276037] platform radeon_cp.0: firmware: using built-in firmware radeon/RS780_me.bin
[ 0.278418] [drm] GART: num cpu pages 131072, num gpu pages 131072
[ 0.312398] [drm] ring test succeeded in 1 usecs
[ 0.312494] [drm] radeon: ib pool ready.
[ 0.312579] [drm:r600_ib_test] *ERROR* radeon: fence wait failed (-16).
[ 0.312623] [drm:r600_init] *ERROR* radeon: failled testing IB (-16).
[ 0.312661] [drm:radeon_driver_load_kms] *ERROR* Failed to initialize radeon, disabling IOCTL
[ 0.312710] [drm] radeon: finishing device.
[ 0.314767] [drm] radeon: fence finalized
[ 0.314847] [TTM] Zone kernel: Used memory at exit: 1028 kiB.
[ 0.314885] [drm] radeon: ttm finalized
[ 0.315162] radeon 0000:01:05.0: PCI INT A disabled
[ 0.315209] radeon: probe of 0000:01:05.0 failed with error -16

and no KMS. if drm/radeon built as modules - kernel fails to load (stuck on radeon firmware loading) with backtrace in a minute (will post a photo, if needed).

(Anonymous)

try this: http://www.phoronix.com/forums/showthread.php?p=91227

(Anonymous)
M86

One question: Does this also mean that M86 notebook graphics chipsets (and the like) are supported? Thanks!

Re: M86

yes should be.

(Anonymous)

>> R600 3D support

Superb!

(Anonymous)

With drm compiled as a module kernel fails to load (stuck on firmware loaded, backtrace in 60 seconds. Will provide photo, if needed). Wit built-in drm (radeon.modeset=1 drm.debug=1) KMS fails to start and there isn't any acceleration.

Sep 8 23:49:42 ojab kernel: [ 0.272303] Linux agpgart interface v0.103
Sep 8 23:49:42 ojab kernel: [ 0.272391] [drm] Initialized drm 1.1.0 20060810
Sep 8 23:49:42 ojab kernel: [ 0.272469] [drm] radeon kernel modesetting enabled.
Sep 8 23:49:42 ojab kernel: [ 0.272506] [drm:drm_init],
Sep 8 23:49:42 ojab kernel: [ 0.272541] [drm:drm_get_dev],
Sep 8 23:49:42 ojab kernel: [ 0.272551] radeon 0000:01:05.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18
Sep 8 23:49:42 ojab kernel: [ 0.272590] radeon 0000:01:05.0: setting latency timer to 64
Sep 8 23:49:42 ojab kernel: [ 0.273860] [drm:drm_get_minor],
Sep 8 23:49:42 ojab kernel: [ 0.274003] [drm:drm_get_minor], new minor assigned 64
Sep 8 23:49:42 ojab kernel: [ 0.274005] [drm:drm_get_minor],
Sep 8 23:49:42 ojab kernel: [ 0.274171] [drm:drm_get_minor], new minor assigned 0
Sep 8 23:49:42 ojab kernel: [ 0.274179] [drm] radeon: Initializing kernel modesetting.
Sep 8 23:49:42 ojab kernel: [ 0.274230] [drm] register mmio base: 0xFE9F0000
Sep 8 23:49:42 ojab kernel: [ 0.274267] [drm] register mmio size: 65536
Sep 8 23:49:42 ojab kernel: [ 0.274745] [drm:radeon_get_bios], ATOMBIOS detected
Sep 8 23:49:42 ojab kernel: [ 0.274747] ATOM BIOS: B27722
Sep 8 23:49:42 ojab kernel: [ 0.274788] [drm] Clocks initialized !
Sep 8 23:49:42 ojab kernel: [ 0.274871] [TTM] Zone kernel: Available graphics memory: 899800 kiB.
Sep 8 23:49:42 ojab kernel: [ 0.274916] [drm] radeon: 384M of VRAM memory ready
Sep 8 23:49:42 ojab kernel: [ 0.274954] [drm] radeon: 512M of GTT memory ready.
Sep 8 23:49:42 ojab kernel: [ 0.275003] [drm:r600_cp_init_microcode],
Sep 8 23:49:42 ojab kernel: [ 0.275079] [drm] Loading RS780 CP Microcode
Sep 8 23:49:42 ojab kernel: [ 0.275119] platform radeon_cp.0: firmware: using built-in firmware radeon/RS780_pfp.bin
Sep 8 23:49:42 ojab kernel: [ 0.275169] platform radeon_cp.0: firmware: using built-in firmware radeon/RS780_me.bin
Sep 8 23:49:42 ojab kernel: [ 0.277481] [drm] GART: num cpu pages 131072, num gpu pages 131072
Sep 8 23:49:42 ojab kernel: [ 0.311500] [drm] ring test succeeded in 1 usecs
Sep 8 23:49:42 ojab kernel: [ 0.311599] [drm] radeon: ib pool ready.
Sep 8 23:49:42 ojab kernel: [ 0.311673] [drm:r600_blit_init], r6xx blit allocated bo @ 0x c0140000 00000b00 vs 00000900 ps 00000a00
Sep 8 23:49:42 ojab kernel: [ 0.311687] [drm:r600_ib_test] *ERROR* radeon: fence wait failed (-16).
Sep 8 23:49:42 ojab kernel: [ 0.311728] [drm:r600_init] *ERROR* radeon: failled testing IB (-16).
Sep 8 23:49:42 ojab kernel: [ 0.311766] [drm:radeon_driver_load_kms] *ERROR* Failed to initialize radeon, disabling IOCTL
Sep 8 23:49:42 ojab kernel: [ 0.311815] [drm] radeon: finishing device.
Sep 8 23:49:42 ojab kernel: [ 0.313873] [drm] radeon: fence finalized
Sep 8 23:49:42 ojab kernel: [ 0.313948] [TTM] Zone kernel: Used memory at exit: 1028 kiB.
Sep 8 23:49:42 ojab kernel: [ 0.313990] [drm] radeon: ttm finalized
Sep 8 23:49:42 ojab kernel: [ 0.314031] [drm:drm_put_minor], release secondary minor 0
Sep 8 23:49:42 ojab kernel: [ 0.314146] [drm:drm_put_minor], release secondary minor 64
Sep 8 23:49:42 ojab kernel: [ 0.314265] radeon 0000:01:05.0: PCI INT A disabled
Sep 8 23:49:42 ojab kernel: [ 0.314312] radeon: probe of 0000:01:05.0 failed with error -16

make sure the distro puts firmware into the initrd, if on Fedora grab latest mkinitrd from updates-testing or rawhide.

(Anonymous)

Firmware loading should be fine (wi-fi works OK). There isn't initrd, firmware located in /lib/firmware/.
According to http://thread.gmane.org/gmane.comp.video.dri.devel/38499 i'm not alone with not-working KMS issue (to my noob view dmesg error is the same).

Ubuntu?

I guess you don't know if there will be Ubuntu/Debian packages for all this for our testing pleasure? :)

Re: Ubuntu?

not sure I'm sure someone will make a ppa at some stage.

(Anonymous)
sweet

You should hope we never meet at a conference, because I might just hump your leg for getting this running. :O Thanks!

Re: sweet

Now there's an odd mental image. Hey Dave, are you going to be at LinuxCon in Portland? ....

Is #D support for R6xx in Rawhide?

Is the support already in rawhide nightly spins?