LinuxQuestions.org
Register a domain and help support LQ
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Software
User Name
Password
Linux - Software This forum is for Software issues.
Having a problem installing a new program? Want to know which application is best for the job? Post your question in this forum.

Notices



Reply
 
Search this Thread
Old 10-27-2005, 07:45 PM   #1
Dtsazza
Member
 
Registered: Oct 2005
Location: Oxford, UK
Distribution: Debian Etch (w/ dual-boot XP for gaming)
Posts: 282

Rep: Reputation: 30
No Direct Rendering with Radeon 9700Pro in X.org 6.8.2


Hi all,

I'm having a go at getting 3D acceleration working on my Linux box. I've installed the latest (v8.18.8) ATI Proprietary drivers, via their graphical install. It correctly determined my X windows version, and installed the drivers reporting success. I then ran the fglrxconfig program to generate an xorg.conf file.

After restarting X, 'glxinfo | grep "direct rendering" showed the sad answer of "No". I've tried various searches on Google, but they've all lead to dead ends. One thing I have noticed though, in the X log, is the following lines:
Code:
...
(II) Primary Device is: PCI 01:00:0
(II) ATI Proprietary Linux Driver Version Identifier:8.18.8
(II) ATI Proprietary Linux Driver Release Identifier: LGDr8.18g2                           
(II) ATI Proprietary Linux Driver Build Date: Oct 25 2005 10:35:14
(II) ATI Proprietary Linux Driver Build Information: autobuild-rel-r6-8.18.1-driver-lnx-221930
(WW) fglrx: No matching Device section for instance (BusID PCI:1:0:1) found
(--) Chipset RADEON 9800 PRO (R350 4E48) found
(II) resource ranges after xf86ClaimFixedResources() call:
...
and after that, a bunch of lines that look like the card is initialising properly.

I'm curious about that line - the relevant section in my xorg.conf (which has not been changed from that generated by flgrxconfig) is
Code:
# **********************************************************************
# Graphics device section
# **********************************************************************

# Any number of graphics device sections may be present

# Standard VGA Device:

Section "Device"
    Identifier  "Standard VGA"
    VendorName  "Unknown"
    BoardName   "Unknown"

# The chipset line is optional in most cases.  It can be used to override
# the driver's chipset detection, and should not normally be specified.

#    Chipset     "generic"

# The Driver line must be present.  When using run-time loadable driver
# modules, this line instructs the server to load the specified driver
# module.  Even when not using loadable driver modules, this line
# indicates which driver should interpret the information in this section.

    Driver      "vga"
# The BusID line is used to specify which of possibly multiple devices
# this section is intended for.  When this line isn't present, a device
# section can only match up with the primary video device.  For PCI
# devices a line like the following could be used.  This line should not
# normally be included unless there is more than one video device
# installed.

#    BusID       "PCI:0:10:0"

#    VideoRam    256

#    Clocks      25.2 28.3

EndSection

# === 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 code for mtrr
# ### FireGL DDX driver module specific settings ###
# === Screen Management ===
    Option "DesktopSetup"               "(null)" 
    Option "ScreenOverlap"              "0" 
    Option "GammaCorrectionI"           "0x00000000"
    Option "GammaCorrectionII"          "0x00000000"
# === OpenGL specific profiles/settings ===
    Option "Capabilities"               "0x00000000"
    Option "CapabilitiesEx"             "0x00000000"
# === Video Overlay for the Xv extension ===
    Option "VideoOverlay"               "on"
# === OpenGL Overlay ===
# Note: When OpenGL Overlay is enabled, Video Overlay
#       will be disabled automatically
    Option "OpenGLOverlay"              "off"
# === Center Mode (Laptops only) ===
    Option "CenterMode"                 "off"
# === Pseudo Color Visuals (8-bit visuals) ===
    Option "PseudoColorVisuals"         "off"
# === QBS Management ===
    Option "Stereo"                     "off"
    Option "StereoSyncEnable"           "1"
# === FSAA Management ===
    Option "FSAAEnable"                 "no"
    Option "FSAAScale"                  "1"
    Option "FSAADisableGamma"           "no"
    Option "FSAACustomizeMSPos"         "no"
    Option "FSAAMSPosX0"                "0.000000"
    Option "FSAAMSPosY0"                "0.000000"
    Option "FSAAMSPosX1"                "0.000000"
    Option "FSAAMSPosY1"                "0.000000"
    Option "FSAAMSPosX2"                "0.000000"
    Option "FSAAMSPosY2"                "0.000000"
    Option "FSAAMSPosX3"                "0.000000"
    Option "FSAAMSPosY3"                "0.000000"
    Option "FSAAMSPosX4"                "0.000000"
    Option "FSAAMSPosY4"                "0.000000"
    Option "FSAAMSPosX5"                "0.000000"
    Option "FSAAMSPosY5"                "0.000000"
# === Misc Options ===
    Option "UseFastTLS"                 "0"
    Option "BlockSignalsOnLock"         "on"
    Option "UseInternalAGPGART"         "yes"
    Option "ForceGenericCPU"            "no"
    BusID "PCI:1:0:0"    # vendor=1002, device=4e48
    Screen 0
EndSection
I did try experimenting by changing the bottom BusID line to PCI:1:0:1, but as expected X threw a bit more of a hissyfit about missing devices and didn't start (no screens found).

Can anyone tell me if this "no matching Device section" warning is likely to be a cause of these problems, or is it just a red herring? I'm at a loss of where else to look for the problem, so any other suggestions would be gratefully received.

Oh, and because my head keeps telling me it's important, the card came with a cooler fitted that takes up the physical space of the next PCI slot down - I'm pretty sure that's not what PCI:1:0:1 means, but you never know...
 
Old 10-29-2005, 05:49 AM   #2
mr_demilord
Member
 
Registered: Sep 2005
Posts: 244

Rep: Reputation: 30
I think you'll find this interesting
linuX-gamers.net - How-Tos - ATI Linux
 
Old 10-30-2005, 08:13 AM   #3
Dtsazza
Member
 
Registered: Oct 2005
Location: Oxford, UK
Distribution: Debian Etch (w/ dual-boot XP for gaming)
Posts: 282

Original Poster
Rep: Reputation: 30
Well, the site didn't help me get things working (it recommended the same steps as other HOWTOs), but it did give me a hint when it recommended modprobe-ing fglrx. When I try to do this (as root), I get the error message
Code:
minerva:/home/adoyle/downloads# modprobe fglrx
FATAL: Error inserting fglrx (/lib/modules/2.6.13.3-minerva-ati/kernel/drivers/char/drm/fglrx.ko): Invalid module format
which would explain a lot. Looking at the X logs again, this little section seems to be the culprit:
Code:
...
(II) fglrx(0): driver needs X.org 6.8.x.y with x.y >= 0.0
(II) fglrx(0): detected X.org 6.8.2.0
(II) Loading extension ATIFGLRXDRI
(II) fglrx(0): doing DRIScreenInit
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is -1, (Unknown error 999)
drmOpenDevice: open result is -1, (Unknown error 999)
drmOpenDevice: Open failed
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is -1, (Unknown error 999)
drmOpenDevice: open result is -1, (Unknown error 999)
drmOpenDevice: Open failed
[drm] failed to load kernel module "fglrx"
(II) fglrx(0): [drm] drmOpen failed
(EE) fglrx(0): DRIScreenInit failed!
(WW) fglrx(0): ***********************************************
(WW) fglrx(0): * DRI initialization failed!                  *
(WW) fglrx(0): * (maybe driver kernel module missing or bad) *
(WW) fglrx(0): * 2D acceleraton available (MMIO)             *
(WW) fglrx(0): * no 3D acceleration available                *
(WW) fglrx(0): ********************************************* *
...
I've checked that my CC environment variable was set to the same version of gcc used to build the kernel (even though I don't think that's the problem), and I tried removing and re-installing the kernel module. Looking at the ATI install logs, I see
Code:
[Message] Kernel Module : Trying to install a precompiled kernel module.
[Message] Kernel Module : Precompiled kernel module version mismatched.
[Message] Kernel Module : Found kernel module build environment, generating kernel module now.
ATI module generator V 2.0
==========================
initializing...
cleaning...
patching 'highmem.h'...
assuming new VMA API since we do have kernel 2.6.x...
doing Makefile based build for kernel 2.6.x and higher
make -C /lib/modules/2.6.13.3-minerva-ati/build SUBDIRS=/lib/modules/fglrx/build_mod/2.6.x modules
make[1]: Entering directory `/usr/src/linux-2.6.13.3'
...
[a few warnings on the make, but nothing unusual and it seems to succeed]
...
make[1]: Leaving directory `/usr/src/linux-2.6.13.3'
build succeeded with return value 0
duplicating results into driver repository...
done.
==============================
- creating symlink
- recreating module dependency list
- trying a sample load of the kernel module
failed.
[Error] Kernel Module : Failed to install compiled kernel module - please consult readme.
So there's where the problem's root is. Problem is, I'm not sure what readme they're referring to, or more accurately, where it would live on my hard drive/the internet. I re-read the Release Notes, and noticed the following line: "Note: If a Linux 2.6.11 or newer kernel was built with CONFIG_AGP enabled, the kernel AGP frontend is required to load the fglrx kernel module." What does this specifically mean - as far as I was aware, modules were loaded by modprobing - is there some way to tell the AGP frontend to load a module? This is relevant, since
Code:
minerva:~# cp /proc/config.gz /tmp; gunzip /tmp/config.gz; cat /tmp/config | grep CONFIG_AGP
CONFIG_AGP=y
# CONFIG_AGP_ALI is not set
# CONFIG_AGP_ATI is not set
# CONFIG_AGP_AMD is not set
# CONFIG_AGP_AMD64 is not set
# CONFIG_AGP_INTEL is not set
# CONFIG_AGP_NVIDIA is not set
# CONFIG_AGP_SIS is not set
# CONFIG_AGP_SWORKS is not set
CONFIG_AGP_VIA=y
# CONFIG_AGP_EFFICEON is not set
So, this is the state of affairs. X can't load my flgrx module automatically, I can't modprobe it myself ("Invalid module format" error), the module's own installer "fail[s] to install compiled kernel module" (though it is in the tree, and I can attempt to modprobe it), and the Release Notes recommend the kernel AGP frontend has to do the module loading. Can anyone give me ideas of where to look next to fix this module issue?

I should note that I tend to build my kernels monolithically, so (as in fact you can see from the above config snippet) my AGPGART isn't a module. In fact the only modules I have are sound-related, so I can switch between my onboard sound and SB Audigy if needs be.

Thanks in advance!
Andrzej
 
Old 10-30-2005, 11:42 AM   #4
RedShirt
Senior Member
 
Registered: Oct 2005
Location: Denver
Distribution: Sabayon 3.5Loop2
Posts: 1,150

Rep: Reputation: 45
I had issues... well let's just say for the past long time. I just fixed it yesterday. Here are the tricks to get it running just right. These new install instructions were the key, for me.

Specifically, here is a checklist:
AGPGART needs proper drivers (Why it doesn't have those already... I just don't get)
1. First make sure that agpgart is loading properly.
2. To find out which AGP controller your motherboard uses, issue the following command: lspci | grep AGP
3. To find a list of AGP related kernel modules installed on your machine, issue the following command and look for a module (*.ko file) that suits your AGP Controller: ls /lib/modules/`uname -r`/kernel/drivers/char/agp
4. Use the modprobe command (as root) to load the module. For example: On a motherboard using a VIAŽ AGP Controller, you would load the via-agp.ko using modprobe as follows (notice that the trailing .ko is omitted): modprobe via-agp. Check the modprobe manpage for more information on loading kernel modules.
5. To verify that the AGP module is already loaded, run lsmod as root. With the X server running and the connection established, the usage count of this module must be greater than zero.

Enable POSIX shared memory.(Why this isn't on to begin with, I will never know.)
To enable POSIX Shared Memory on your system, perform the following as root:
1. Add the following line to /etc/fstab (if it isn't there already): tmpfs /dev/shm tmpfs defaults 0 0
2. Mount shared memory as follows: mount /dev/shm
3. Issue the following command to check that it mounted properly: mount | grep "shm"
If the mount was successful, then the following output (or similar) should appear:
tmpfs on /dev/shm type tmpfs (rw)

Install the kernel source
The Linux Kernel Source is highly critical, I have no clue why, as it really shouldn't need it, but the ATI installer does. So you need to use either the install CDs/DVD or an FTP site, and get the Linux Kernel source installed.

Check on glibc 2.2 or higher being installed.
If it isn't, same as the Linux Kernel Source, get it.

Xorg 6.8.2 or Xfree4.1, 4.2, or 4.3
Then once you know which you have, you need to match the version to the fglrx driver you get from ATI.

Then as root, install the fglrx software so you can use the commands to make a new Xorg.conf.
Then run the driver shell.
Run the config.

Reboot. You should be flying.
 
Old 10-30-2005, 05:13 PM   #5
Dtsazza
Member
 
Registered: Oct 2005
Location: Oxford, UK
Distribution: Debian Etch (w/ dual-boot XP for gaming)
Posts: 282

Original Poster
Rep: Reputation: 30
Your link didn't work for me, I'm afraid (I got redirected to http://www.ati.com/online/403/leech.asp).

The instructions didn't shed any light either. I already had shm swap working, and the kernel sources, glibc 2.3.5 and the drivers for X.org 6.8.2 installed. The only thing different was that my AGPGART wasn't compiled as a kernel module. I rebuilt the kernel so this was so, modprobed it, followed all the instructions fine, but to no avail. Still the same errors in the X logs and still the same problems when building and/or modprobing the fglrx module.

Can anyone else shed some light on this?
 
Old 11-04-2005, 10:40 PM   #6
xtypestereotype
LQ Newbie
 
Registered: May 2005
Location: Perth, Australia
Distribution: Arch, Debian/Ubuntu, Gentoo
Posts: 9

Rep: Reputation: 0
Quote:
Originally posted by Dtsazza
Your link didn't work for me, I'm afraid (I got redirected to http://www.ati.com/online/403/leech.asp).

The instructions didn't shed any light either. I already had shm swap working, and the kernel sources, glibc 2.3.5 and the drivers for X.org 6.8.2 installed. The only thing different was that my AGPGART wasn't compiled as a kernel module. I rebuilt the kernel so this was so, modprobed it, followed all the instructions fine, but to no avail. Still the same errors in the X logs and still the same problems when building and/or modprobing the fglrx module.

Can anyone else shed some light on this?
hi there
i was having the same problem
what i did was disable BOTH dri/drm and agpart in the kernel and recompile

disabling just one of them wouldnt work...

hope this helps... good luck
 
Old 11-13-2005, 09:54 AM   #7
sw67
Member
 
Registered: Oct 2004
Location: Here
Distribution: Slackware 12, openSuSE 11.0, XP
Posts: 76

Rep: Reputation: 15
I had troubles with this too... but if you read the ATI release notes carefully, it explains why it doesn't work...
Basically ATI's drivers are built with support for specific kernels, and rarely support the latest kernels.
I have a 9550, and tried the same driver you did, and the release notes say it only supports up to kernel 2.6.12.x.
I find if you run an older kernel, it compiles and runs fine... ATI just don't support the latest kernels.
There is a new driver available now though... and it may support the 2.6.13.x... I haven't got round to trying it yet.
Quite honestly, I'm fine running my 2.6.12.3 and Slackware. Gives me almost 2000fps on glxgears so I'm happy.
 
Old 11-13-2005, 11:13 AM   #8
RedShirt
Senior Member
 
Registered: Oct 2005
Location: Denver
Distribution: Sabayon 3.5Loop2
Posts: 1,150

Rep: Reputation: 45
Actually sw, the new one(8.18) Supports the 2.6.13 AND the brand new 2.6.14 series kernels. I had 13, am not running 14 with it. So they do support the latest greatest.
 
Old 11-13-2005, 10:10 PM   #9
sw67
Member
 
Registered: Oct 2004
Location: Here
Distribution: Slackware 12, openSuSE 11.0, XP
Posts: 76

Rep: Reputation: 15
Quote:
Originally posted by RedShirt
Actually sw, the new one(8.18) Supports the 2.6.13 AND the brand new 2.6.14 series kernels. I had 13, am not running 14 with it. So they do support the latest greatest.
The new one's actually 8.19
The 8.18 refused to compile on my system (said something about module format error) with the 2.6.13.4 I tried, but worked fine with the 2.6.12.3.
Was with the 9550 though, and my complicated pc setup... so it might just be my system...
But working fine on 2.6.12.3 and not 2.6.13.4 does seem to be a kernel thing...
 
Old 11-13-2005, 10:50 PM   #10
RedShirt
Senior Member
 
Registered: Oct 2005
Location: Denver
Distribution: Sabayon 3.5Loop2
Posts: 1,150

Rep: Reputation: 45
Yes, I upgraded to the new one now 8.19.10. I still have 8.18.10 after the new 2.6.14.1 kernel came out and it worked... though I had to reinstall after upgrading kernels. Then I noticed the really new one(8.19.10) afterwards, which works with 2.6.14, don't know if it works back there for sure, but I would think so.
 
Old 11-21-2005, 09:45 AM   #11
howtoo
LQ Newbie
 
Registered: Nov 2005
Location: Norway
Distribution: Debian Unstable
Posts: 2

Rep: Reputation: 0
hey, this might be usefull...
A verify_area workaround..
http://www.colino.net/wordpress-1.5/...l-verify_area/

-howtoo
 
Old 12-01-2005, 02:17 PM   #12
cferreira
LQ Newbie
 
Registered: Apr 2004
Posts: 4

Rep: Reputation: 0
I have the same problem as Dtsazza. BTW Dtsazza, what specific board do you have? I've seen many people having problems but easily surpassable with a few HOWTOS out there. But that wasn't my case, and I have a GeCube ATI 9600xt (is Gecube known out there?)

The thing is I downloaded a few distro's (Ubuntu, Gentoo, Fedora 32bits,...) and the error was always the same. I tried builtin drivers and ATI ones, and followed about a dozen howtos and reinstalls. Now I only did a simple clean install of FC4 x86_64 and used yum for installing the drivers as in fedorafaq.org (which works for 97% of the users!). After reading carefully Xorg.0.log I've notice that same warning: "... unknown third party board, chipset is supported...." could it be because of my "exotic" boardmaker? What are your boardmakers? (I'm a complete newbie, but it seems like a reasonable hypothesis)
 
Old 12-01-2005, 03:22 PM   #13
cferreira
LQ Newbie
 
Registered: Apr 2004
Posts: 4

Rep: Reputation: 0
Sorry guys, there is an error in the popular fedorafaq.org. The problem is that there is a mismatch between the ATI drivers and the kernel to driver interface. So that when one installs the distribution specific kernel-module-fglrx-"kernelhere" and the ati-driver the last one is probably more recent then the previous one.
 
  


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
Direct Rendering (ATI Radeon) xbuzz Linux - Newbie 8 06-03-2005 06:38 PM
kernel 2.4.26, radeon 9800, no direct rendering true_atlantis Linux - Hardware 4 03-06-2005 03:51 AM
radeon 9600 no direct rendering on debian daemonTED Linux - Hardware 14 11-08-2004 08:40 AM
ATI Radeon Direct Rendering chodviolin Linux - Hardware 0 03-27-2004 03:23 PM
Radeon 7500 PCI, direct rendering LinuxQuest01 Linux - Hardware 1 10-31-2003 06:03 PM


All times are GMT -5. The time now is 04:18 PM.

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
identi.ca: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration