[Success] 3D support with Radeon UMS driver + Kernel 2.6.34rc5 + X Server 1.8

Hi all,
This is just to report that I’ve got 3D support successfully enabled on my Mobility Radeon HD3200 chip with the open source driver on openSUSE 11.2. I did this to replace the proprietary fglrx driver that has already been installed for quite some time on my system.

Uninstalled fglrx, and here we go…

Basically what I did was to get the latest X.Org server (1.8) and Mesa from
Index of /repositories/X11:/XOrg/openSUSE_11.2
I changed all the corresponding system packages to the versions in that repository.

I noticed that I cannot get any 3D support when pairing the last X server with the updated openSUSE 11.2 kernel (2.6.31.12_0.2). With RadeonHD driver it gives me no acceleration at all (No DRI), perhaps it is still intentionally disabled to prevent lockups in r600 cards. With Radeon KDE wouldn’t start.

So to get usable driver support I have to update the stock kernel to the one in
Index of /repositories/Kernel:/HEAD/openSUSE_11.2
I installed the 2.6.34-rc5-22 kernel and reboot. Immediately I notice that KMS is working, but I could not get DRI to work, presumably caused by the drm being unable to locate two related firmware files (it is there in the kernel, just doesn’t know why it is not being loaded). Other than that I do not know why I can’t get any acceleration with KMS on. To workaround I passed the ‘nomodeset’ parameter to the kernel to run in UMS mode instead, and lol! voila! with UMS 2D + 3D accelerations are working. I can enable kwin effects just fine.

Since this is a laptop I need suspend & resume and power management working. Good news is s2ram works perfectly with extra parameter. And all the new Radeon power management options: DynamicPM, ClockGating and ForceLowPowerMode can be enabled just fine! (For UMS you need to generate a xorg.conf and put those options in)

Performance is good. So far it’s faster than fglrx in some areas and slower in some other area. Now this is truly amazing!! :open_mouth:

I also note the 11.3 M5 provided radeon driver (on the 64-bit 11.3 M5 liveCD) works well with a Dell Studio 1537 laptop with the ATI Radeon HD3450 graphics hardware. I think 11.3M5 has RC4 of the 2.6.34 kernel. This includes 3D and special desktop effects. I did not get to test compatibility in driving an external monitor via xrandr.

I’ll have to give a presentation in a small class on Wednesday. I’ll have the chance to test projector output via this radeon driver. Can you point out what parameters I’ll have to pass to xrandr to do the job?

Thanks a lot in advance.

In the case of the proprietary driver with KDE-4, one just needs to boot to X / KDE4, then plugin the external projector, and as a regular user type: xrandr

Here is a wiki some of us prepared on this: Configuring graphics cards/Dual Head Mode - openSUSE

I also note another wiki: Multiple Screens Using XRandR - openSUSE

and our forum guide: Laptop external (cloned) projector support in KDE - openSUSE Forums

Thanks a lot oldcpu!! I’ll keep you informed!!

lol! I’m happy to report that with the above configuration driving an external projector through VGA-0 connection is possible and flawless!

Now this really looks like a very very strong contender to fglrx. :open_mouth:

Excellent news ! Thanks for testing this.

Just one question…

Do you have an idea if it will work as well (successfully 2D+3D+suspend*+multiscreen functionalities) for legacy ATI cards out of support of the propietary ATI driver???

If this is possible, it will be very good news for those of us who can not get all of our graphics cards yet.

any comment is welcome :slight_smile:

The best way to find out is to download the openSUSE-11.3 milestone6 liveCD iso file, do the md5sum (comparing to the web site), burn the CD, and then boot to the CD. Confirm your PC booted with the radeon driver. And then try xrandr.

You don’t need to install. Just test from the liveCD.

You can find the 11.3 Milestone6 liveCD download here: Software.openSUSE.org - development/milestone version of openSUSE

Thanks for the fast reply… I am trying right now… one more question,

How can I confirm if I am using the radeon driver? by taking a look to glxinfo? this is correct?

Take a look here: openSUSE Forums - View Single Post - openSUSE Graphic Card Practical Theory Guide for Users

I think if you run:

cat /var/log/Xorg.0.log | grep '('II')'' 'RADEON

and get lots of output, then the RADEON driver is loaded. If you get no return, then possibly the RADEON driver is NOT loaded.

The thread I quoted gives more detail.

Just did some fast testing with a live USB on Dell Inspiron E1505 (aka 6400) equipped with a ATI Mobility Radeon X1400 and this were my results:

Graphic Card:

  • 3D Acceleration: activated by default but not 100% operational
    approx. 50 fps with glxgears at fullscreen.
    Multiple screens: worked out of the box
    Sound: worked out of the box
    network/wireless: worked out of the box
    Multimedia keys: worked out of the box

I’ll update this report as soon as I have time to do a longer test

Thanks. I believe the 11.3 M6 radeon driver still needs more work, but it is much better than what is present in 11.2 (IMHO).

Reference glxgears, I’ve never been a believer in it. I ran it tonight for the first time in over 1 year (maybe in a few years) and the first thing I noted was a big warning not to use it as a bench mark. So having typed that, with a proprietary nVidia graphic driver (not ATI and not open source) I obtained approximately:

  • 32-bit athlon-1100 w/AGP nVidia GeForce FX5200 card on openSUSE-11.3 M6 running LXDE desktop: glxgears=740 in a window and 57 full screen
  • 32-bit athlon-2800 w/PCI (not PCI-e) GeForce 8400GS card on openSUSE-11.2 running KDE-4.3.5 desktop: glxgears=575 in a window and 77 full screen
  • 64-bit Intel Core i7 w/PCI-e GeForce GTX260 card on openSUSE-11.2 running KDE-4.3.5 desktop: glxgears > 20,500 in a window and > 3950 full screen.
    … full screen being 1920x1080 resolution.

I confess I’m more curious as to how the special desktop effects worked without artifacts, and if when doing things like “the cube” with desktop effects would they stop after a dozen seconds or so ?

… and of course, back to the original question, would xrandr work? … or krandrtray (if using KDE) ? ie if using KDE (and assuming the proprietary driver is running) you can boot to X and then type in a terminal: “krandrtray” (no quotes) and then look for a small “monitor” icon in lower right corner. Right click on that and select “configure display”. Use that to configure things.

Just a little update about my low frame rate and texture artifacts with the radeon driver while playing the Penumbra games.

I just upgraded on openSUSE 11.2 to the kernel 2.6.34-38, run a system update and updated to Mesa 7.8.1 . In a short test, Penumbra Overture ran well, as good as in openSUSE 11.2 with the propietary ATI drivers. In addition to that, some artifacts that I was having in the Aquaria game disappeared as well, but keep in mind that Aquaria is less 3D acceleration demanding.

I haven’t tried yet the other 2 games of the Penumbra series, but up to now looks promising. Now I can get more from my ATI Mobility Radeon X1400 :D.

until the next, hope long and successful, update

jaom7

I’m feeling litle stupid, but please, tell me what you did for have this kernel installed?

I just add the repo, installed the kernel with zypper (of course accepting the vendor change), and it installs but mention errors:

Kernel image: /boot/vmlinuz-2.6.35-rc3-2-desktop
Initrd image: /boot/initrd-2.6.35-rc3-2-desktop
Root device: /dev/system/root (mounted on / as reiserfs)
Resume device: /dev/system/swap
modprobe: Module atiixp not found.
WARNING: no dependencies for kernel module ‘atiixp’ found.
modprobe: Module ide_pci_generic not found.
WARNING: no dependencies for kernel module ‘ide_pci_generic’ found.

Kernel Modules: thermal_sys thermal pata_atiixp ata_generic processor fan dm-mod dm-snapshot reiserfs linear
Features: dm block usb lvm2 resume.userspace resume.kernel
Bootsplash: SuSE-Elegant (1024x768)
28993 blocks

Kernel image: /boot/vmlinuz-2.6.35-rc3-2-pae
Initrd image: /boot/initrd-2.6.35-rc3-2-pae
Root device: /dev/system/root (mounted on / as reiserfs)
Resume device: /dev/system/swap
modprobe: Module atiixp not found.
WARNING: no dependencies for kernel module ‘atiixp’ found.
modprobe: Module ide_pci_generic not found.
WARNING: no dependencies for kernel module ‘ide_pci_generic’ found.

Kernel Modules: thermal_sys thermal scsi_mod libata pata_atiixp libahci ahci ata_generic processor fan dm-mod dm-snapshot reiserfs sd_mod usbcore pcmcia_core pcmcia mmc_core ssb ohci-hcd ehci-hcd uhci-hcd usbhid linear
Features: dm block usb lvm2 resume.userspace resume.kernel
Bootsplash: SuSE-Elegant (1024x768)
31920 blocks

The same errors when I try to mkintrd, so when I tried to boot from this both kernels, it justs hangs and black screen. I also installed the debug kernel for both, and when I tried, it shows a kernel panic (really fun, I didn’t see one of those since my days as SCO Openserver V admin! rotfl! ).

So, what is wrong? I’m thinking to compile the kernel direct from the kernel sources, but I just want to understand why this modules are not loading, and fix it if I can.

This is the kernel rpms in my system:

rpm -qa | grep kernel

kernel-default-base-2.6.35-rc3.2.1.i586
linux-kernel-headers-2.6.31-3.4.noarch
kernel-xen-base-2.6.31.12-0.2.1.i586
kernel-devel-2.6.35-rc3.2.1.noarch
kernel-debug-devel-2.6.35-rc3.2.1.i586
nfs-kernel-server-1.1.3-21.3.1.i586
kernel-debug-base-2.6.35-rc3.2.1.i586
kernel-firmware-20100227-22.1.noarch
kernel-pae-devel-2.6.35-rc3.2.1.i586
kernel-debug-2.6.35-rc3.2.1.i586
kernel-pae-base-2.6.35-rc3.2.1.i586
patterns-openSUSE-devel_kernel-11.3-1.1.1.i586
kernel-desktop-2.6.35-rc3.2.1.i586
kernel-xen-2.6.31.12-0.2.1.i586
kernel-desktop-devel-2.6.35-rc3.2.1.i586
kernel-desktop-base-2.6.35-rc3.2.1.i586
kernel-syms-2.6.35-rc3.2.1.i586
kernel-default-2.6.35-rc3.2.1.i586
kernel-source-2.6.35-rc3.2.1.noarch
kernel-default-devel-2.6.35-rc3.2.1.i586
kernel-pae-2.6.35-rc3.2.1.i586

As you see, I still have the xen kernel, what is from oficial updates, so I didn’t lost my system :good:

Thanks in the advance.

Regards.

Are you trying to install the proprietary ATI driver ?

If so, what repository are you using? Also looking at the massively excessive number of 2.6.35 kernel rpms you have on your PC, I am not surprised this does not work.

Note, an rpm for a proprietary graphic driver is typically built against a specific kernel. Ergo a driver built for the 2.6.31.5 is unlikely to work for the 2.6.31.12 and definitely unlikely to work for the 2.6.35.

Plus a proprietary driver custom built for the 2.6.35 default is unlikely to work for the 2.6.35 desktop , nor the 2.6.35 pae … etc …

Why do you have so many kernel versions ? Do you understand clearly the technical aspects of what you are doing here with so many different kernel ?

Hi.

Yes I’m systems engineer and have clear the idea about the kernel is what for. I use XEN as own virtual platform (since part of my job is support Sles Xen servers), so I have the xen kernel. I installed the pae kernel since I’ve been using it on ubuntu, for get better performance, for example, using vmware workstation (I use both XEN and Vmware for my own virtual testing labs).

About the Desktop kernel, I’m testing it since I read is exactly the same as pae kernel, just optimized for work in desktops, so I’m trying it too, (because all this occurs on my laptop, hp dv5). The only one is not used is the Default kernel, but this is installed as default with the opensuse distro, I didn’t uninstalled it.

And I’m not trying to install the fglrx drivers right now, in fact, my idea is to compile myself from latest 10.6 catalyst, just after make things work with radeon (or radeonhd) driver and then compare and decide which one is better for me.

And a comment, the propietary driver from ATI repo for opensuse 11.2 fits perfect on desktop and pae kernels, using its kmp rpms, but in the official versions form update-oss, I also tested in this kernels.

I just want to test what saying in the first post, since I really like test new things, and in fact I was in trouble with the past fglrx drivers in kde, slow response and always I re-enable the composite efects 2 times in every restart, somhow the daemon never starts by itself at the load of kde4 and the next time I re-enabled the composite, just at third intent. The past radeon/radeonhd drivers never enabled 2d or 3d.

Is just I’m feeling like newbie in Open SuSE environment, since I came from ubuntu and debian, since this new job is about supporting novell sles and sled and also other products, I must certificate as Novell CLE soon, and I’m using OpenSuse since I prefer it over sled.

I think the problem is about the kernel was not compiled for support that modules or something like that, I know I can enable or disable the module flags inside suseconfig, but I don’t know what effect can bring.

Thanks a lot!

Regards.

Well, at the risk of fanning the flames of experimentation, if you enjoy that, you could also look at this URL which contains some repositories:

http://download.opensuse.org/repositories/X11:/XOrg/

… I do NOT install those myself, as I am NOT a cutting edge person. I’m far too conservative.

I’m quit. I tested from other repositories, edited the /etc/sysconfig/kernel and nothing makes boot the kernel, it is not compiled with that module options. I can patch it or even compile a new one, but since only left 19 days for opensuse 11.3, I will wait it.

Success on downgrade to the oficial kernel versions! (at least)

I have 3D support on 2.6.34 and radeon drivers 6.13.0 under openSUSE 11.2