LinuxQuestions.org
Welcome to the most active Linux Forum on the web.
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Hardware
User Name
Password
Linux - Hardware This forum is for Hardware issues.
Having trouble installing a piece of hardware? Want to know if that peripheral is compatible with Linux?

Notices


Reply
  Search this Thread
Old 09-03-2005, 05:43 PM   #1
svenwinkle
LQ Newbie
 
Registered: Sep 2005
Location: north
Distribution: gentoo
Posts: 23

Rep: Reputation: 15
ATI x86_64 proprietary drivers fail to start direct rendering


Hello,

I've been trying very hard to get direct rendering to work with a 64 bit AMD processor and a Radeon 9800 SE. I am using linux kernel 2.6.13. I am using the SLAMD (64 bit port of Slackware 10.1).

I was able to get direct rendering to work with Slackware 10.1 (no 64 bit support) on this same hardware. I had to load the following modules:
agpgart
amd64_agp
fglrx (after loading the ati proprietary driver of course)

With this setup, direct rendering worked and life was good.

I decided to try 64 bit linux. I was able to install and recompile the kernel to the 2.6.13 version. I have everything working the same as before except for the direct rendering. The 2.6.13 kernel does not give you the option to set agp and agp_amd64 as modules when you are using 64 bit. When I was using 32 bit I had an option to set these as modules.

I looked through several posts and read the ATI Release notes for the x86_64 driver (I am using the latest one available). I was originally having a problem getting the fglrx module to compile, but I found a post that said I needed to edit the line in firegl_public.c that said:
#include "asm/ioctl32.h"
to
#include "linux/ioctl32.h"

After doing this, I was able to compile and load the module. I then ran fglrxconfig and set the appropriate parameters for my hardware.

The graphics section of my /etc/X11/xorg.conf looks like this:

# === ATI device section ===

Section "Device"
Identifier "ATI Graphics Adapter"
Driver "fglrx"
# ### generic DRI settings ###
# === disable PnP Monitor ===
#Option "NoDDC"
# === disable/enable XAA/DRI ===
Option "no_accel" "no"
Option "no_dri" "no"
# === misc DRI settings ===
Option "mtrr" "off" # disable DRI mtrr mapper, driver has its own c
ode for mtrr

blah blah blah

# === Misc Options ===
Option "UseFastTLS" "0"
Option "BlockSignalsOnLock" "on"
Option "UseInternalAGPGART" "yes"
Option "ForceGenericCPU" "no"
BusID "PCI:1:0:0" # vendor=1002, device=4148
Screen 0
EndSection

After doing all this, I startx and it comes up fine. I open up a terminal window and run some commands and get the following:

root@main:~# lspci | grep ATI
01:00.0 VGA compatible controller: ATI Technologies Inc R350 AH [Radeon 9800]
01:00.1 Display controller: ATI Technologies Inc Radeon R350 [Radeon 9800] (Secondary)

root@main:~# fglrxinfo
display: :0.0 screen: 0
OpenGL vendor string: Mesa project: <not allowed to post url>
OpenGL renderer string: Mesa GLX Indirect
OpenGL version string: 1.2 (1.5 Mesa 6.2.1)

root@main:~# glxinfo | grep "rendering"
direct rendering: No


This is really strange to me. It recognizes the Radeon 9800 during boot-up. Yet it still uses the Mesa drivers for OpenGL and rendering is not enabled.

I have attempted turning on drm in the kernel and also directly editing the kernel config to put an m (for module) after the lines CONFIG_AGP and CONFIG_AGP_AMD64 and I still don't get the option to load them as modules. The fglrx module loads fine. I tried running fglrxconfig after loading the module and even after rebooting, and I still get the same results.

I have also been sure to add the tmpfs /dev/shm entry to my /etc/fstab.

I have read several posts and am continuing to google this issue. If anyone has any suggestions please let me know.
 
Old 09-05-2005, 12:22 PM   #2
svenwinkle
LQ Newbie
 
Registered: Sep 2005
Location: north
Distribution: gentoo
Posts: 23

Original Poster
Rep: Reputation: 15
Talking

Alright, this is crazy, I posted the stuff above a few days ago. After that I walked away from the issue since I probably spent around 12 hours on it and needed to get away from it for a while. Last night I ran glxgears just to remind myself how horrible the FPS were without direct rendering. They came up going at 4000+ FPS. I checked fglrxinfo and now I have:

display: :0.0 screen: 0
OpenGL vendor string: ATI Technologies Inc.
OpenGL renderer string: RADEON 9800 SE Generic
OpenGL version string: 1.3.5272 (X4.3.0-8.16.20)

I immediately loaded up World of Warcraft and I am running smoothly at 1600x1200 resolution. Life is good again.

The only problem I have is I don't know exactly what triggered it. The only thing I can think of is a reboot at some point. I rebooted the machine regularly while I was going through the procedure I described above. I must have run out of patience and forgotten to reboot at the end. The only other explanation I can come up with is that for parts of the attempted configuration I was logged into my X session as root. I guess that may have had some effect. I have read reports of others who were not able to get direct rendering to work as root. I thought I was being careful to test everything I did as an unprivileged user, but maybe not.

Anyway, for those interested, the pertinent lines in my kernel config are:

CONFIG_AGP=y
CONFIG_AGP_AMD64=y

and

# CONFIG_DRM is not set

One thing I should mention is that the fglrx module (the ATI proprietary driver) will not install while DRM is turned on in the kernel.

Since the agpgart (CONFIG_AGP=y) is enabled in the kernel config, there is no agpgart module that needs to be loaded. The same goes for the AMD64_AGP module that I had been loading previously under 32 bit architecture. So the only results of an lsmod are:

Module Size Used by
fglrx 277296 7

Now glxgears returns:

13984 frames in 5.0 seconds = 2796.800 FPS
20864 frames in 5.0 seconds = 4172.800 FPS
20863 frames in 5.0 seconds = 4172.600 FPS
20864 frames in 5.0 seconds = 4172.800 FPS


When I go through fglrxconfig, I leave all defaults, with the exception of changing the mouse device to /dev/mouse (I'm using slackware after all) and the horizontalsync and vertrefresh (so that I can run at 1600x1200 resolution). None of the things I altered in the xorg.conf had any effect on whether direct rendering worked.

Since I don't know the exact tweak that fixed it I can't say anything with certainty. Must have been gremlins.

Anyway, if anyone would like more info from my system, feel free to ask. I'll be checking back here. I think I've posted all the pertinent information above, but I know what it's like to be grasping for anything just to get the stupid thing to work.
 
Old 09-18-2005, 08:56 AM   #3
npc
Member
 
Registered: May 2005
Location: Sao Luis, MA, Brazil
Distribution: Slackware, Gentoo
Posts: 32

Rep: Reputation: 15
Hi there.
I'm glad you got that problem sorted out.
Anyways, I'm curious about Slamd64. How stable is it? Is it any close to the official Slackware? I'm a newbie but already addicted to Slackware and I was promised a notebook (AMD Turion 64 for sure) and I was wondering if it would be safe to get a little away from Slack. I guess the most important questions would be: Is slamd64's conf files and directory structure identical to Slackware? Can I mix packages from both distros? What about Qt and GTK support, I just can't live without GTK? Should I try Gentoo instead (lol)?

Thank you.
 
Old 09-20-2005, 01:15 PM   #4
svenwinkle
LQ Newbie
 
Registered: Sep 2005
Location: north
Distribution: gentoo
Posts: 23

Original Poster
Rep: Reputation: 15
I hate to say this, but if I were you I would go with Ubuntu. It is much nicer to work with. slamd64 is functional and you can get answers to questions about it off of the slamd64 website, but I had several issues with it. I'm not a guru by any stretch of the imagination, so this may not apply to everyone. I had several problems with libraries and dependencies. I never knew if a program was going to need to read the 64 or 32 bit libraries. I was able to get the video drivers working because it was all 64 bit stuff. My main example, I guess, of a program not working was mplayer. I searched all over to get the missing libraries, and then tried linking them to proper ld.so paths and got ld /usr/bin/mplayer to return all files found, but the program still would not work. I'm sure a good portion of the fault falls on my shoulders for not understanding the shared object libraries as well as I should, but it has been a major pain for me. Ubuntu works better "out of the box". Keep in mind I'm speaking of the 64 bit version. For 32 bit, I will recommend slackware over any distro anyday. For 64 bit however, I am ignorant enough that I would much prefer to go with Ubuntu. They have a lot more documentation on their website and the install is much much nicer. I had to try about 7 or 8 times to install slamd64 due to segfaults during the install. The sad thing is it is almost a given that you will have segfaults during the install. If you check their website, you will see this is a very common problem. When things started breaking, that really made me wonder if the poor install had something to do with it. I will probably try slamd64 at some point again when I feel more comfortable with the ld.so structure in 64 bit. Hopefully by then slamd64 will have fixed the install issues as well.

That's kind of a rambling response, but the main idea is that Ubuntu is much more clean and will save you a lot of frustration. As to your question about the pkgtool and the config structure, I have to say maybe. Somethings installed, but most had the issues I mentioned above with the .so libraries. The nice thing is that if something doesn't work, pkgtool still works fine to remove it.
 
  


Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
Ati Mobility x600 Direct rendering help jplev22 Linux - Hardware 4 09-15-2005 04:28 PM
Direct Rendering (ATI Radeon) xbuzz Linux - Newbie 8 06-03-2005 05:38 PM
Direct Rendering with ATI's proprietary drivers xarius Linux - Hardware 2 03-15-2005 04:02 PM
How do i get direct rendering ATI 8500? glenn69 Linux - Newbie 0 10-07-2004 10:25 PM
ATI Radeon Direct Rendering chodviolin Linux - Hardware 0 03-27-2004 02:23 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Hardware

All times are GMT -5. The time now is 05:57 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration