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 |
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
Are you new to LinuxQuestions.org? Visit the following links:
Site Howto |
Site FAQ |
Sitemap |
Register Now
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
|
 |
|
11-27-2004, 01:52 PM
|
#1
|
LQ Newbie
Registered: May 2004
Location: South Florida
Distribution: Gentoo 1.4
Posts: 18
Rep:
|
Cant get DRI working with ATI Radeon 7000 and Gentoo Linux
I am trying to get the Direct Rendering Interface working for my ATI Radeon 7000 video card. I have tried everything I can think of and I am still not getting it working. I have followed the complete guide at http://www.gentoo.org/doc/en/dri-howto.xml to no avail. If I 'dmesg | grep drm', I see these errors:
Code:
[drm] Initialized radeon 1.11.0 20020828 on minor 0: ATI Technologies Inc Radeon RV100 QY [Radeon 7000/VE]
[drm:radeon_cp_init] *ERROR* radeon_cp_init called without lock held
[drm:radeon_unlock] *ERROR* Process 8148 using kernel context 0
[drm:radeon_ati_pcigart_cleanup] *ERROR* no scatter/gather memory!
[drm:radeon_do_cleanup_cp] *ERROR* failed to cleanup PCI GART!
I also see errors in my /var/log/Xorg.0.log file:
Code:
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
drmOpenByBusid: Searching for BusID pci:0000:00:0c.0
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 5, (OK)
drmOpenByBusid: drmOpenMinor returns 5
drmOpenByBusid: drmGetBusid reports pci:0000:00:0c.0
(II) RADEON(0): [drm] loaded kernel module for "radeon" driver
(II) RADEON(0): [drm] DRM interface version 1.2
(II) RADEON(0): [drm] created "radeon" driver at busid "pci:0000:00:0c.0"
(II) RADEON(0): [drm] added 8192 byte SAREA at 0xcc922000
(II) RADEON(0): [drm] mapped SAREA 0xcc922000 to 0xb5cf4000
(II) RADEON(0): [drm] framebuffer handle = 0xd8000000
(II) RADEON(0): [drm] added 1 reserved context for kernel
(EE) RADEON(0): [pci] Out of memory (-1007)
(EE) RADEON(0): [pci] PCI failed to initialize. Disabling the DRI.
I have compiled everything needed in the kerenl as modules then built into the kernel. I have gotten nothing, I cant think of anything else, and cant afford a new video card. If someone could please help me out, I would greatly appreciate it.
Here is some more information:
Xorg version - 6.8.0
ATI Radeon 7000 32MB PCI
Gentoo Linux
If you need more information, ask me. I will greatly appreciate any help.
|
|
|
11-27-2004, 05:26 PM
|
#2
|
LQ Veteran
Registered: Mar 2003
Location: Boise, ID
Distribution: Mint
Posts: 6,642
Rep:
|
Can you also post the contents of your xorg.conf file? Are you loading the dri module and have you uncommented the DRI section (typically at the bottom of the xorg.conf file)?
ATI cards can be difficult (I've spent more hours than I care to think about wrestling with them) but having the xorg.conf file visible would be a big help -- J.W.
|
|
|
11-27-2004, 09:00 PM
|
#3
|
LQ Newbie
Registered: May 2004
Location: South Florida
Distribution: Gentoo 1.4
Posts: 18
Original Poster
Rep:
|
I am almost 100% positive I have set up everything in my xorg.conf file properly. I have the glx and dri modules loaded, and I tried the ati and radeon drivers for my card. I tried out XFree86 to see if it would work, but nothing, so I am compiling xorg right now. I still have my old config file below
EDIT: I cant get my xorg.conf file posted right now because I dont have the copy+paste functions a GUI gives. Xorg should be done in about an hour or so, I will update this post with my config then.
|
|
|
11-27-2004, 09:30 PM
|
#4
|
Member
Registered: Mar 2003
Posts: 34
Rep:
|
I have an Ati Radeon 7000 working under Slackware 10. 0, xorg 6.8.1, kernel 2.6.10-rc2,
so don't panic -- this card does work. Should work under Gentoo also. I've been using
it for years now under many kernels. The stock "radeon" driver works under xorg 6.8.x.
There is an issue with the Mesa GL I had to work through for 6.8.1. I can help you with
that, the kernel settings and the x config file vagueries, but right now, i'm having another
beer and playing some quake.
Stay calm and keep your seat belt fastened until the captain says it's ok to move about
the cabin.
doc
|
|
|
11-28-2004, 12:56 AM
|
#5
|
LQ Newbie
Registered: May 2004
Location: South Florida
Distribution: Gentoo 1.4
Posts: 18
Original Poster
Rep:
|
I got xorg re-merged, and edited the config file again to the way the gentoo guide told me too, still the same errors. When I looked at the DRI Wiki, I saw something about if I get "[drm:radeon_cp_init] *ERROR* radeon_cp_init called without lock held" in an error message, I didn't configure my kernel properly. I made sure to compile in APG GART support for my AGP chipset and ATI chipsets, though my video card is a PCI card. I don't really know what else to try. Here is my xorg.conf file
Code:
# File generated by xorgconfig.
#
# Copyright 2004 The X.Org Foundation
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the "Software"),
# to deal in the Software without restriction, including without limitation
# the rights to use, copy, modify, merge, publish, distribute, sublicense,
# and/or sell copies of the Software, and to permit persons to whom the
# Software is furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in
# all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
# The X.Org Foundation BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
# WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
# OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# Except as contained in this notice, the name of The X.Org Foundation shall
# not be used in advertising or otherwise to promote the sale, use or other
# dealings in this Software without prior written authorization from
# The X.Org Foundation.
#
# **********************************************************************
# Refer to the xorg.conf(5x) man page for details about the format of
# this file.
# **********************************************************************
# **********************************************************************
# Module section -- this section is used to specify
# which dynamically loadable modules to load.
# **********************************************************************
#
Section "Module"
# This loads the DBE extension module.
Load "dbe" # Double buffer extension
# This loads the miscellaneous extensions module, and disables
# initialisation of the XFree86-DGA extension within that module.
SubSection "extmod"
Option "omit xfree86-dga" # don't initialise the DGA extension
EndSubSection
# This loads the font modules
Load "type1"
# Load "speedo"
Load "freetype"
# Load "xtt"
# This loads the GLX module
Load "glx"
# This loads the DRI module
Load "dri"
EndSection
# **********************************************************************
# Files section. This allows default font and rgb paths to be set
# **********************************************************************
Section "Files"
# The location of the RGB database. Note, this is the name of the
# file minus the extension (like ".txt" or ".db"). There is normally
# no need to change the default.
RgbPath "/usr/X11R6/lib/X11/rgb"
# Multiple FontPath entries are allowed (which are concatenated together),
# as well as specifying multiple comma-separated entries in one FontPath
# command (or a combination of both methods)
#
#
FontPath "/usr/share/fonts/misc/"
FontPath "/usr/share/fonts/TTF/"
FontPath "/usr/share/fonts/Type1/"
# FontPath "/usr/share/fonts/CID/"
FontPath "/usr/share/fonts/75dpi/"
FontPath "/usr/share/fonts/100dpi/"
FontPath "/usr/share/fonts/local/"
# FontPath "/usr/share/fonts/Speedo/"
# FontPath "/usr/share/fonts/TrueType/"
# FontPath "/usr/share/fonts/freefont/"
# The module search path. The default path is shown here.
# ModulePath "/usr/X11R6/lib/modules"
EndSection
# **********************************************************************
# Server flags section.
# **********************************************************************
Section "ServerFlags"
# Uncomment this to cause a core dump at the spot where a signal is
# received. This may leave the console in an unusable state, but may
# provide a better stack trace in the core dump to aid in debugging
# Option "NoTrapSignals"
# Uncomment this to disable the <Crtl><Alt><Fn> VT switch sequence
# (where n is 1 through 12). This allows clients to receive these key
# events.
# Option "DontVTSwitch"
# Uncomment this to disable the <Crtl><Alt><BS> server abort sequence
# This allows clients to receive this key event.
# Option "DontZap"
# Uncomment this to disable the <Crtl><Alt><KP_+>/<KP_-> mode switching
# sequences. This allows clients to receive these key events.
# Option "Dont Zoom"
# Uncomment this to disable tuning with the xvidtune client. With
# it the client can still run and fetch card and monitor attributes,
# but it will not be allowed to change them. If it tries it will
# receive a protocol error.
# Option "DisableVidModeExtension"
# Uncomment this to enable the use of a non-local xvidtune client.
# Option "AllowNonLocalXvidtune"
# Uncomment this to disable dynamically modifying the input device
# (mouse and keyboard) settings.
# Option "DisableModInDev"
# Uncomment this to enable the use of a non-local client to
# change the keyboard or mouse settings (currently only xset).
# Option "AllowNonLocalModInDev"
EndSection
# **********************************************************************
# Input devices
# **********************************************************************
# **********************************************************************
# Core keyboard's InputDevice section
# **********************************************************************
Section "InputDevice"
Identifier "Keyboard1"
Driver "kbd"
# For most OSs the protocol can be omitted (it defaults to "Standard").
# When using XQUEUE (only for SVR3 and SVR4, but not Solaris),
# uncomment the following line.
# Option "Protocol" "Xqueue"
Option "AutoRepeat" "500 30"
# Specify which keyboard LEDs can be user-controlled (eg, with xset(1))
# Option "Xleds" "1 2 3"
# Option "LeftAlt" "Meta"
# Option "RightAlt" "ModeShift"
# To customise the XKB settings to suit your keyboard, modify the
# lines below (which are the defaults). For example, for a non-U.S.
# keyboard, you will probably want to use:
# Option "XkbModel" "pc102"
# If you have a US Microsoft Natural keyboard, you can use:
# Option "XkbModel" "microsoft"
#
# Then to change the language, change the Layout setting.
# For example, a german layout can be obtained with:
# Option "XkbLayout" "de"
# or:
# Option "XkbLayout" "de"
# Option "XkbVariant" "nodeadkeys"
#
# If you'd like to switch the positions of your capslock and
# control keys, use:
# Option "XkbOptions" "ctrl:swapcaps"
# These are the default XKB settings for Xorg
# Option "XkbRules" "xorg"
# Option "XkbModel" "pc101"
# Option "XkbLayout" "us"
# Option "XkbVariant" ""
# Option "XkbOptions" ""
# Option "XkbDisable"
Option "XkbRules" "xorg"
Option "XkbModel" "pc101"
Option "XkbLayout" "us"
EndSection
# **********************************************************************
# Core Pointer's InputDevice section
# **********************************************************************
Section "InputDevice"
# Identifier and driver
Identifier "Mouse1"
Driver "mouse"
Option "Protocol" "IMPS/2"
Option "Device" "/dev/psaux"
Option "ZAxisMapping" "4 5"
# Mouse-speed setting for PS/2 mouse.
# Option "Resolution" "256"
# When using XQUEUE, comment out the above two lines, and uncomment
# the following line.
# Option "Protocol" "Xqueue"
# Baudrate and SampleRate are only for some Logitech mice. In
# almost every case these lines should be omitted.
# Option "BaudRate" "9600"
# Option "SampleRate" "150"
# Emulate3Buttons is an option for 2-button Microsoft mice
# Emulate3Timeout is the timeout in milliseconds (default is 50ms)
# Option "Emulate3Buttons"
# Option "Emulate3Timeout" "50"
# ChordMiddle is an option for some 3-button Logitech mice
# Option "ChordMiddle"
EndSection
# **********************************************************************
# Other input device sections
# this is optional and is required only if you
# are using extended input devices. This is for example only. Refer
# to the xorg.conf man page for a description of the options.
# **********************************************************************
#
# Section "InputDevice"
# Identifier "Mouse2"
# Driver "mouse"
# Option "Protocol" "MouseMan"
# Option "Device" "/dev/mouse2"
# EndSection
#
# Section "InputDevice"
# Identifier "spaceball"
# Driver "magellan"
# Option "Device" "/dev/cua0"
# EndSection
#
# Section "InputDevice"
# Identifier "spaceball2"
# Driver "spaceorb"
# Option "Device" "/dev/cua0"
# EndSection
#
# Section "InputDevice"
# Identifier "touchscreen0"
# Driver "microtouch"
# Option "Device" "/dev/ttyS0"
# Option "MinX" "1412"
# Option "MaxX" "15184"
# Option "MinY" "15372"
# Option "MaxY" "1230"
# Option "ScreenNumber" "0"
# Option "ReportingMode" "Scaled"
# Option "ButtonNumber" "1"
# Option "SendCoreEvents"
# EndSection
#
# Section "InputDevice"
# Identifier "touchscreen1"
# Driver "elo2300"
# Option "Device" "/dev/ttyS0"
# Option "MinX" "231"
# Option "MaxX" "3868"
# Option "MinY" "3858"
# Option "MaxY" "272"
# Option "ScreenNumber" "0"
# Option "ReportingMode" "Scaled"
# Option "ButtonThreshold" "17"
# Option "ButtonNumber" "1"
# Option "SendCoreEvents"
# EndSection
# **********************************************************************
# Monitor section
# **********************************************************************
# Any number of monitor sections may be present
Section "Monitor"
Identifier "Dell E770"
# HorizSync is in kHz unless units are specified.
# HorizSync may be a comma separated list of discrete values, or a
# comma separated list of ranges of values.
# NOTE: THE VALUES HERE ARE EXAMPLES ONLY. REFER TO YOUR MONITOR'S
# USER MANUAL FOR THE CORRECT NUMBERS.
HorizSync 31.5 - 64.3
# HorizSync 30-64 # multisync
# HorizSync 31.5, 35.2 # multiple fixed sync frequencies
# HorizSync 15-25, 30-50 # multiple ranges of sync frequencies
# VertRefresh is in Hz unless units are specified.
# VertRefresh may be a comma separated list of discrete values, or a
# comma separated list of ranges of values.
# NOTE: THE VALUES HERE ARE EXAMPLES ONLY. REFER TO YOUR MONITOR'S
# USER MANUAL FOR THE CORRECT NUMBERS.
VertRefresh 50-90
EndSection
# **********************************************************************
# 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
# intalled.
# BusID "PCI:0:10:0"
# VideoRam 256
# Clocks 25.2 28.3
EndSection
# Device configured by xorgconfig:
Section "Device"
Identifier "ATI Radeon 7000 32MB PCI"
Driver "radeon"
#VideoRam 32768
# Insert Clocks lines here if appropriate
EndSection
# **********************************************************************
# Screen sections
# **********************************************************************
# Any number of screen sections may be present. Each describes
# the configuration of a single screen. A single specific screen section
# may be specified from the X server command line with the "-screen"
# option.
Section "Screen"
Identifier "Screen 1"
Device "ATI Radeon 7000 32MB PCI"
Monitor "Dell E770"
DefaultDepth 24
Subsection "Display"
Depth 8
Modes "1280x1024" "1024x768" "800x600" "640x480"
ViewPort 0 0
EndSubsection
Subsection "Display"
Depth 16
Modes "1280x1024" "1024x768" "800x600" "640x480"
ViewPort 0 0
EndSubsection
Subsection "Display"
Depth 24
Modes "1280x1024" "1024x768" "800x600" "640x480"
ViewPort 0 0
EndSubsection
EndSection
# **********************************************************************
# ServerLayout sections.
# **********************************************************************
# Any number of ServerLayout sections may be present. Each describes
# the way multiple screens are organised. A specific ServerLayout
# section may be specified from the X server command line with the
# "-layout" option. In the absence of this, the first section is used.
# When now ServerLayout section is present, the first Screen section
# is used alone.
Section "ServerLayout"
# The Identifier line must be present
Identifier "Simple Layout"
# Each Screen line specifies a Screen section name, and optionally
# the relative position of other screens. The four names after
# primary screen name are the screens to the top, bottom, left and right
# of the primary screen. In this example, screen 2 is located to the
# right of screen 1.
Screen "Screen 1"
# Each InputDevice line specifies an InputDevice section name and
# optionally some options to specify the way the device is to be
# used. Those options include "CorePointer", "CoreKeyboard" and
# "SendCoreEvents".
InputDevice "Mouse1" "CorePointer"
InputDevice "Keyboard1" "CoreKeyboard"
EndSection
Section "DRI"
Mode 0666
EndSection
Also, I know the Radeon works under Linux, I have had it with DRI before, this same install even, I just have no idea what happened to it.
|
|
|
11-28-2004, 07:47 AM
|
#6
|
Member
Registered: Dec 2002
Location: Qc, Canada
Distribution: CRUX
Posts: 317
Rep:
|
I'd try Option "BusType" "PCI" in the Section "Device" of your config.
...see $man radeon
|
|
|
11-28-2004, 02:29 PM
|
#7
|
LQ Newbie
Registered: May 2004
Location: South Florida
Distribution: Gentoo 1.4
Posts: 18
Original Poster
Rep:
|
The bus type option dosent work, I get the same results. I read the whole radeon man page and anything else I could find on the subject. Nothing. I'm gonna try some stuff with the kernel. Will update if I find anything.
EDIT: I didn't get anything after changing some kernel config options.
Last edited by kofrad; 11-28-2004 at 05:17 PM.
|
|
|
11-28-2004, 08:52 PM
|
#8
|
Member
Registered: Mar 2003
Posts: 34
Rep:
|
I would try these things:
-- double-check your BIOS settings to be sure the mobo is configured properly for PCI video instead of AGP.
-- in the kernel disable any and all framebuffer support so as not to confuse the issue while you debug.
--- make sure these kernel configs are in there:
Code:
CONFIG_DRM=y
# CONFIG_DRM_TDFX is not set
# CONFIG_DRM_R128 is not set
CONFIG_DRM_RADEON=y
# CONFIG_DRM_I810 is not set
# CONFIG_DRM_I830 is not set
# CONFIG_DRM_I915 is not set
# CONFIG_DRM_MGA is not set
# CONFIG_DRM_SIS is not set
my card is an AGP card so I use these for AGP support:
Code:
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=y
CONFIG_AGP_INTEL_MCH=y
-- my xorg config Module and Device sections:
Code:
Section "Module"
Load "extmod"
Load "dbe" # double-buffering extensions
Load "dri" # direct-rendering
Load "GLcore"
Load "glx" # 3D layer
Load "record"
Load "xtrap"
Load "type1" # fonts
Load "freetype" # fonts
# Load "speedo" # fonts
# Load "xtt" # fonts
Load "v4l" # video for linux
EndSection
Section "Device"
Identifier "ATI Radeon 7000"
Driver "radeon"
VendorName "ATI"
BoardName "Radeon VE/7000 QY"
BusID "PCI:1:0:0"
Option "AGPMode" "4"
Option "AGPSize" "64"
# ATI Radeon 7000 doesnt support fast-writes
#Option "AGPFastWrite" "yes" #requires dri modules
Option "EnablePageFlip" "True"
Option "RenderAccel" "True"
EndSection
hope that helps ....
doc
|
|
|
11-28-2004, 10:31 PM
|
#9
|
LQ Newbie
Registered: May 2004
Location: South Florida
Distribution: Gentoo 1.4
Posts: 18
Original Poster
Rep:
|
Well, I'm making some progress now. I went into my kernel, I disabled AGP GART support because my card is PCI, then I enabled the DRM, compilied. I then edited my Modules and Device section to match yours where needed. I rebooted, got back into X fine, but now is where the problem is. I try to run 'glxgears -info -v' and I get all the text showing my GL extensions and I see enough that tells me it is using direct rendering *yes*, but the first frame or two of animation starts, then my system completely hangs. Nothing is responding. I belive it is because the kernel DRM is for an older version of X, but the DRM for my version of X dosent seem to work for me.
|
|
|
11-28-2004, 11:30 PM
|
#10
|
Member
Registered: Mar 2003
Posts: 34
Rep:
|
The problem you are having I struggled with until I finally discovered and fixed it. It's the Mesa 6.1 openGL implementation that comes with xorg 6.8.1. These are the software openGL libs (/usr/lib/libGL*.so, etc) that this card relies on. Newer cards don't use software openGL -- the hardware itself does the rendering, but the Radeon 7000 relies on the Mesa libs. Go here: http://www.mesa3d.org/ and download Mesa 6.2 into your /usr/local/src. Compile and install it following their directions of course and then set LD_LIBRARY_PATH to point into the lib directory you chose to install Mesa 6.2. In my case I installed it into /usr/local/lib/Mesa-6.2. Then, check to make sure that glxgears is pulling in the Mesa libs before you run it:
Code:
ldd `which glxgears`
You should see, e.g.
Code:
libGL.so.1 => /usr/local/lib/Mesa-6.2/libGL.so.1 (0xb7dcf000)
and not the /usr/lib/libGL.so version.
Your system will not hang if you do this. The next version of xorg should bundle Mesa 6.2 into it which would eliminate the need to do this. 6.1 is buggy and causes hang-ups, as the Mesa site explains.
Lemme know how you make out.
doc
P.S. I am using the same kernel DRM as you: 1.11.0 20020828, that comes with the latest stock 2.6 kernel: 2.6.10-rc2.
Last edited by drphibes; 11-28-2004 at 11:42 PM.
|
|
|
11-29-2004, 02:44 AM
|
#11
|
LQ Newbie
Registered: May 2004
Location: South Florida
Distribution: Gentoo 1.4
Posts: 18
Original Poster
Rep:
|
I downloaded Mesa3D 6.2, compiled and installed it. I set LD_LIBRARY_PATH in my .bashrc file, and everything runs fine. The strange thing though is, glxgears runs slower than before, but my OpenGL screensavers run faster, with some pretty bad flicker in between frames. I remember reading that if I have DRM support in my kernel, the DRI will run with bad flicker or not at all. The howto said to use the x11-drm package, so I am going to try that one instead of the one in the kernel.
EDIT: I tried x11-drm, it got rid of the flicker, but seemed a lot buggier, everything ran slower and didn't really look the way it should. I am just going to switch back to the kernel DRM. I geuss I'm fine with the flicker.
EDIT: Now it's slow again, still using Mesa 6.2, but it is running slower than it did before. It's slower than it was with software rendering. Someone help
EDIT: For some reason, it did go back to software rendering. I decided to update my kernel and see if that will solve anything.
Anyways, thanks for all your help everyone, especially drphibes!
Last edited by kofrad; 11-29-2004 at 03:51 AM.
|
|
|
11-29-2004, 11:35 AM
|
#12
|
Member
Registered: Mar 2003
Posts: 34
Rep:
|
Also make sure mtrr (memory type range registers) is configured for your kernel,
as well as the /proc fs. You'll need:
Code:
CONFIG_MTRR=y
...
CONFIG_PROC_FS=y
Check that mtrr is running:
Code:
$ dmesg | grep mtrr
mtrr: v2.0 (20020519)
and (with X running):
Code:
$ cat /proc/mtrr
reg00: base=0x00000000 ( 0MB), size=1024MB: write-back, count=1
reg01: base=0xf8000000 (3968MB), size= 64MB: write-combining, count=2
reg02: base=0xf0000000 (3840MB), size= 32MB: write-combining, count=3
See /usr/src/linux/Documentation/mtrr.txt for more info on mtrr. It allows fast writes
to memory ranges -- essential for video.
doc
|
|
|
11-30-2004, 04:13 AM
|
#13
|
LQ Newbie
Registered: May 2004
Location: South Florida
Distribution: Gentoo 1.4
Posts: 18
Original Poster
Rep:
|
I have proc and mtrr enabled in my kernel and they are both working fine. I upgraded my kernel, I don't think it will do much though as it was an update from 2.6.9-gentoo-r1 to 2.6.9-gentoo-r6. I will try anyway though.
|
|
|
12-04-2004, 02:43 PM
|
#14
|
LQ Newbie
Registered: May 2004
Location: South Florida
Distribution: Gentoo 1.4
Posts: 18
Original Poster
Rep:
|
This is strange, I booted into the new kernel, and I checked for direct rendering, glxinfo reported I ddin't have it. I checked for kernel error messages with DRM, there were none, I checked my Xorg log for errors with the card, there were none. I can't seem to figure out what is going on here. The Xorg log says that it is enabling Direct Rendering too, but glxinfo reports no direct rendering.
|
|
|
01-24-2005, 11:39 PM
|
#15
|
Member
Registered: Jan 2004
Location: Atlanta, GA
Distribution: Slackware 12.2
Posts: 82
Rep:
|
drphibes,
Maybe I'm a bit out of line here. I am currently running Slackware 9.1, XFree 4.3, with ATI Radeon 7500. I haven't updated the machine for a year and half and recently decided to move to Slackware 10. As I am making my decision, I remember I had hell of a problem with enabling 3D accel. I just can't figure out what I did that I got everything working smoothly. I know Slackware 10 uses Xorg 6.7 with 2.4.26 kernel so not sure if I going to encounter problems.
Now here's the thing, I know DRM, DRI, and agpgart are enabled as module in the kernel and here's the following information:
$ glxinfo
Code:
name of display: :0.0
display: :0 screen: 0
direct rendering: Yes
server glx vendor string: SGI
server glx version string: 1.2
server glx extensions:
GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_EXT_import_context
client glx vendor string: SGI
client glx version string: 1.2
client glx extensions:
GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_EXT_import_context
GLX extensions:
GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_EXT_import_context
OpenGL vendor string: Tungsten Graphics, Inc.
OpenGL renderer string: Mesa DRI Radeon 20020611 AGP 1x x86/MMX/SSE TCL
OpenGL version string: 1.2 Mesa 4.0.4
OpenGL extensions:
GL_ARB_imaging, GL_ARB_multisample, GL_ARB_multitexture,
GL_ARB_texture_border_clamp, GL_ARB_texture_compression,
GL_ARB_texture_env_add, GL_ARB_texture_env_combine,
GL_ARB_texture_env_dot3, GL_ARB_texture_mirrored_repeat,
GL_ARB_transpose_matrix, GL_EXT_abgr, GL_EXT_bgra, GL_EXT_blend_color,
GL_EXT_blend_logic_op, GL_EXT_blend_minmax, GL_EXT_blend_subtract,
GL_EXT_clip_volume_hint, GL_EXT_convolution, GL_EXT_compiled_vertex_array,
GL_EXT_histogram, GL_EXT_packed_pixels, GL_EXT_polygon_offset,
GL_EXT_rescale_normal, GL_EXT_secondary_color, GL_EXT_texture3D,
GL_EXT_texture_env_add, GL_EXT_texture_env_combine,
GL_EXT_texture_env_dot3, GL_EXT_texture_filter_anisotropic,
GL_EXT_texture_object, GL_EXT_texture_lod_bias, GL_EXT_vertex_array,
GL_IBM_rasterpos_clip, GL_IBM_texture_mirrored_repeat, GL_MESA_window_pos,
GL_NV_blend_square, GL_NV_texgen_reflection, GL_SGI_color_matrix,
GL_SGI_color_table, GL_SGIS_generate_mipmap, GL_SGIS_texture_border_clamp
glu version: 1.3
glu extensions:
GLU_EXT_nurbs_tessellator, GLU_EXT_object_space_tess
visual x bf lv rg d st colorbuffer ax dp st accumbuffer ms cav
id dep cl sp sz l ci b ro r g b a bf th cl r g b a ns b eat
----------------------------------------------------------------------
0x23 24 tc 0 24 0 r . . 8 8 8 8 0 24 0 0 0 0 0 0 0 None
0x24 24 tc 0 24 0 r . . 8 8 8 8 0 24 8 0 0 0 0 0 0 None
0x25 24 tc 0 24 0 r . . 8 8 8 8 0 24 0 16 16 16 16 0 0 Slow
0x26 24 tc 0 24 0 r . . 8 8 8 8 0 24 8 16 16 16 16 0 0 Slow
0x27 24 tc 0 24 0 r y . 8 8 8 8 0 24 0 0 0 0 0 0 0 None
0x28 24 tc 0 24 0 r y . 8 8 8 8 0 24 8 0 0 0 0 0 0 None
0x29 24 tc 0 24 0 r y . 8 8 8 8 0 24 0 16 16 16 16 0 0 Slow
0x2a 24 tc 0 24 0 r y . 8 8 8 8 0 24 8 16 16 16 16 0 0 Slow
0x2b 24 dc 0 24 0 r . . 8 8 8 8 0 24 0 0 0 0 0 0 0 None
0x2c 24 dc 0 24 0 r . . 8 8 8 8 0 24 8 0 0 0 0 0 0 None
0x2d 24 dc 0 24 0 r . . 8 8 8 8 0 24 0 16 16 16 16 0 0 Slow
0x2e 24 dc 0 24 0 r . . 8 8 8 8 0 24 8 16 16 16 16 0 0 Slow
0x2f 24 dc 0 24 0 r y . 8 8 8 8 0 24 0 0 0 0 0 0 0 None
0x30 24 dc 0 24 0 r y . 8 8 8 8 0 24 8 0 0 0 0 0 0 None
0x31 24 dc 0 24 0 r y . 8 8 8 8 0 24 0 16 16 16 16 0 0 Slow
0x32 24 dc 0 24 0 r y . 8 8 8 8 0 24 8 16 16 16 16 0 0 Slow
Well, as you can see I'm running an old Mesa software, 4.0.4 and Direct Rendering is enabled.
$ glxgears
Code:
5165 frames in 5.0 seconds = 1033.000 FPS
5791 frames in 5.0 seconds = 1158.200 FPS
5821 frames in 5.0 seconds = 1164.200 FPS
5775 frames in 5.0 seconds = 1155.000 FPS
5779 frames in 5.0 seconds = 1155.800 FPS
5757 frames in 5.0 seconds = 1151.400 FPS
5777 frames in 5.0 seconds = 1155.400 FPS
Which is pretty decent (P4 1.6 GHz, 256 DDR).
$ dmesg
Code:
Linux agpgart interface v0.99 (c) Jeff Hartmann
agpgart: Maximum main memory to use for agp memory: 203M
agpgart: Detected SiS 645 chipset
agpgart: AGP aperture is 64M @ 0xe8000000
[drm] AGP 0.99 Aperture @ 0xe8000000 64MB
[drm] Initialized radeon 1.7.0 20020828 on minor 0
$ cat /proc/mtrr
Code:
reg00: base=0x00000000 ( 0MB), size= 256MB: write-back, count=1
reg01: base=0xe8000000 (3712MB), size= 64MB: write-combining, count=2
reg02: base=0xf0000000 (3840MB), size= 64MB: write-combining, count=2
As you can see mtrr is enabled in the kernel.
Now, I was going to play around and get the stable release of Mesa before my migration to Slackware 10, so I compiled Mesa 6.2.1 and, as documented, set the library path to see how it goes... But unfortunately it got slower and for some reason direct rendering got disabled!
glxinfo with the new Mesa
Code:
name of display: :0.0
display: :0 screen: 0
direct rendering: No
server glx vendor string: Brian Paul
server glx version string: 1.4 Mesa 6.2.1
server glx extensions:
GLX_MESA_copy_sub_buffer, GLX_MESA_pixmap_colormap,
GLX_MESA_release_buffers, GLX_ARB_get_proc_address, GLX_EXT_visual_info,
GLX_EXT_visual_rating, GLX_SGI_video_sync, GLX_SGIX_fbconfig,
GLX_SGIX_pbuffer
client glx vendor string: Brian Paul
client glx version string: 1.4 Mesa 6.2.1
client glx extensions:
GLX_MESA_copy_sub_buffer, GLX_MESA_pixmap_colormap,
GLX_MESA_release_buffers, GLX_ARB_get_proc_address, GLX_EXT_visual_info,
GLX_EXT_visual_rating, GLX_SGI_video_sync, GLX_SGIX_fbconfig,
GLX_SGIX_pbuffer
GLX extensions:
GLX_MESA_copy_sub_buffer, GLX_MESA_pixmap_colormap,
GLX_MESA_release_buffers, GLX_ARB_get_proc_address, GLX_EXT_visual_info,
GLX_EXT_visual_rating, GLX_SGI_video_sync, GLX_SGIX_fbconfig,
GLX_SGIX_pbuffer
OpenGL vendor string: Brian Paul
OpenGL renderer string: Mesa X11
OpenGL version string: 1.5 Mesa 6.2.1
OpenGL extensions:
GL_ARB_depth_texture, GL_ARB_fragment_program, GL_ARB_imaging,
GL_ARB_multisample, GL_ARB_multitexture, GL_ARB_occlusion_query,
GL_ARB_point_parameters, GL_ARB_point_sprite, GL_ARB_shadow,
GL_ARB_shadow_ambient, GL_ARB_texture_border_clamp,
GL_ARB_texture_compression, GL_ARB_texture_cube_map,
GL_ARB_texture_env_add, GL_ARB_texture_env_combine,
GL_ARB_texture_env_crossbar, GL_ARB_texture_env_dot3,
GL_ARB_texture_mirrored_repeat, GL_ARB_texture_non_power_of_two,
GL_ARB_texture_rectangle, GL_ARB_transpose_matrix,
GL_ARB_vertex_buffer_object, GL_ARB_vertex_program, GL_ARB_window_pos,
GL_EXT_abgr, GL_EXT_bgra, GL_EXT_blend_color,
GL_EXT_blend_equation_separate, GL_EXT_blend_func_separate,
GL_EXT_blend_logic_op, GL_EXT_blend_minmax, GL_EXT_blend_subtract,
GL_EXT_clip_volume_hint, GL_EXT_compiled_vertex_array, GL_EXT_convolution,
GL_EXT_copy_texture, GL_EXT_depth_bounds_test, GL_EXT_draw_range_elements,
GL_EXT_fog_coord, GL_EXT_histogram, GL_EXT_multi_draw_arrays,
GL_EXT_packed_pixels, GL_EXT_paletted_texture, GL_EXT_pixel_buffer_object,
GL_EXT_point_parameters, GL_EXT_polygon_offset, GL_EXT_rescale_normal,
GL_EXT_secondary_color, GL_EXT_separate_specular_color,
GL_EXT_shadow_funcs, GL_EXT_shared_texture_palette,
GL_EXT_stencil_two_side, GL_EXT_stencil_wrap, GL_EXT_subtexture,
GL_EXT_texture, GL_EXT_texture3D, GL_EXT_texture_edge_clamp,
GL_EXT_texture_env_add, GL_EXT_texture_env_combine,
GL_EXT_texture_env_dot3, GL_EXT_texture_lod_bias,
GL_EXT_texture_mirror_clamp, GL_EXT_texture_object,
GL_EXT_texture_rectangle, GL_EXT_vertex_array, GL_APPLE_packed_pixels,
GL_ATI_blend_equation_separate, GL_ATI_texture_env_combine3,
GL_ATI_texture_mirror_once, GL_HP_occlusion_test,
GL_IBM_multimode_draw_arrays, GL_IBM_rasterpos_clip,
GL_IBM_texture_mirrored_repeat, GL_INGR_blend_func_separate,
GL_MESA_pack_invert, GL_MESA_program_debug, GL_MESA_resize_buffers,
GL_MESA_ycbcr_texture, GL_MESA_window_pos, GL_NV_blend_square,
GL_NV_fragment_program, GL_NV_light_max_exponent, GL_NV_point_sprite,
GL_NV_texture_rectangle, GL_NV_texgen_reflection, GL_NV_vertex_program,
GL_NV_vertex_program1_1, GL_SGI_color_matrix, GL_SGI_color_table,
GL_SGI_texture_color_table, GL_SGIS_generate_mipmap,
GL_SGIS_pixel_texture, GL_SGIS_texture_border_clamp,
GL_SGIS_texture_edge_clamp, GL_SGIS_texture_lod, GL_SGIX_depth_texture,
GL_SGIX_pixel_texture, GL_SGIX_shadow, GL_SGIX_shadow_ambient,
GL_SUN_multi_draw_arrays
glu version: 1.3
glu extensions:
GLU_EXT_nurbs_tessellator, GLU_EXT_object_space_tess
visual x bf lv rg d st colorbuffer ax dp st accumbuffer ms cav
id dep cl sp sz l ci b ro r g b a bf th cl r g b a ns b eat
----------------------------------------------------------------------
0x23 24 tc 0 24 0 r y . 8 8 8 0 0 16 8 16 16 16 0 0 0 None
0x24 24 tc 0 24 0 r y . 8 8 8 0 0 16 8 16 16 16 16 0 0 None
0x25 24 tc 0 24 0 r y . 8 8 8 0 0 16 8 16 16 16 16 0 0 None
0x26 24 tc 0 24 0 r y . 8 8 8 0 0 16 8 16 16 16 16 0 0 None
0x27 24 tc 0 24 0 r y . 8 8 8 0 0 16 8 16 16 16 16 0 0 None
0x28 24 tc 0 24 0 r y . 8 8 8 0 0 16 8 16 16 16 16 0 0 None
0x29 24 tc 0 24 0 r y . 8 8 8 0 0 16 8 16 16 16 16 0 0 None
0x2a 24 tc 0 24 0 r y . 8 8 8 0 0 16 8 16 16 16 16 0 0 None
0x2b 24 dc 0 24 0 r y . 8 8 8 0 0 16 8 16 16 16 16 0 0 None
0x2c 24 dc 0 24 0 r y . 8 8 8 0 0 16 8 16 16 16 16 0 0 None
0x2d 24 dc 0 24 0 r y . 8 8 8 0 0 16 8 16 16 16 16 0 0 None
0x2e 24 dc 0 24 0 r y . 8 8 8 0 0 16 8 16 16 16 16 0 0 None
0x2f 24 dc 0 24 0 r y . 8 8 8 0 0 16 8 16 16 16 16 0 0 None
0x30 24 dc 0 24 0 r y . 8 8 8 0 0 16 8 16 16 16 16 0 0 None
0x31 24 dc 0 24 0 r y . 8 8 8 0 0 16 8 16 16 16 16 0 0 None
0x32 24 dc 0 24 0 r y . 8 8 8 0 0 16 8 16 16 16 16 0 0 None
And glxgears craps big time:
Code:
1121 frames in 5.0 seconds = 224.200 FPS
1248 frames in 5.0 seconds = 249.600 FPS
1228 frames in 5.0 seconds = 245.600 FPS
1247 frames in 5.0 seconds = 249.400 FPS
680 frames in 5.0 seconds = 136.000 FPS
192 frames in 5.0 seconds = 38.400 FPS
910 frames in 5.0 seconds = 182.000 FPS
What gives?
|
|
|
All times are GMT -5. The time now is 02:25 PM.
|
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.
|
Latest Threads
LQ News
|
|