Gå til innhold

Hvordan installere ati-drivere


Anbefalte innlegg

Jeg har observert at altfor mange har problemer med å få sitt ati radeon skjermkort til å funke skikkelig under linux, så her er guiden:

 

EDIT: Alle kommandoer skal kjøres som root

 

1: Skaff driveren

 

Hvordan du vil skaffe deg driverne er litt avhengig av hvilken distro du har, men jeg vil prøve å få med de fleste:

 

Gentoo:

emerge ati-drivers

 

Redhat, Fedora, SuSE, Mandrake (Og andre distroer som bruker rpm-pakker):

rpm -Uvh http://www2.ati.com/drivers/linux/fglrx-glc22-4.3.0-3.7.0.i386.rpm

 

Debian:

apt-get install ati-drivers

(gi tilbakemelding på denne, er usikker på om dette er riktig for debian)

 

 

2: Konfigurer/installer driveren:

 

Ati har lagt ved et helt greit program for å konfigurere og installere driverne... Merk at dette vil overskrive /etc/X11/XF86Config-4. Har du denne filen fra før, ta backup av den. (XFree, som er det grafiske opplegget i linux bruker /etx/X11/XF86Config-4 hvis den eksisterer, og /etc/X11/XF86Config hvis den førstnevnte ikke er der)

For å lage en konfigurasjon som funker:

 

/opt/ati/bin/fglrxconfig

Du må vite refreshrates for skjermen din her, du finner dem i din eksisterende /etc/X11/XF86Config(-4?):

NB: Dette er for min egen skjerm, finn tallene som passer din skjerm

Section "Monitor"
Identifier  "Monitor0"
HorizSync   30-96
VertRefresh 50-160

 

Ellers er det stort sett greit å trykke enter hvis du ikke vet hva det du blir spurt om betyr. På slutten får du spørsmål om du vil skrive konfigurasjonen til /etcX11/XF86Config-4. Dette svarer du ja på :)

 

 

3: Konfigurer XF86Config:

Konfigurasjonsfilen trenger fremdeles litt "trimming", så vi åpner /etc/X11/XF86Config-4 med en hvilken som helst editor: (nano er brukt i eksempelet, bruk den du vil, selv foretrekker jeg vim)

 

nano /etc/X11/XF86Config

 

sørg for at "Misc Options" ser slik ut:

# === Misc Options ===
   Option "UseFastTLS"                 "2"
   Option "BlockSignalsOnLock"         "on"
   Option "UseInternalAGPGART"         "no"
   Option "ForceGenericCPU"            "no"
   BusID "PCI:3:0:0"    # vendor=1002, device=4144
   Screen 0
EndSection

(BusID er ingenting å bry seg om, driveren finner selv kortet, såvidt jeg har erfart)

Note: Dette er hvis du har AGPGART kompilert i kjernen, eller som modul i kjernen.. Hvis du ikke har det, eller er usikker på om du har det, sett Option "UseInternalAGPGART" "yes"

 

For andre ting angående XF86Config, se i filen du hadde før du installerte drivere (du har selvfølgelig backup av denne, slik jeg sa, right? :))

Siden jeg er så snill, kan jeg poste min egen her: (endel kommentarer er tatt vekk, ikke få panikk)

 

**********************************************************************
# DRI Section
# **********************************************************************
Section "dri"
# Access to OpenGL ICD is allowed for all users:
  Mode 0666
# Access to OpenGL ICD is restricted to a specific user group:
#    Group 100    # users
#    Mode 0660
EndSection

# **********************************************************************
# 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 Type1 and FreeType font modules
  Load        "type1"
  Load        "freetype"

# This loads the GLX module
  Load        "glx"   # libglx.a
  Load        "dri"   # libdri.a

EndSection

# **********************************************************************
# Files section.  This allows default font and rgb paths to be set
# **********************************************************************

Section "Files"


  RgbPath "/usr/X11R6/lib/X11/rgb"


  FontPath   "/usr/X11R6/lib/X11/fonts/local/"
  FontPath   "/usr/X11R6/lib/X11/fonts/misc/"
  FontPath   "/usr/X11R6/lib/X11/fonts/75dpi/:unscaled"
  FontPath   "/usr/X11R6/lib/X11/fonts/100dpi/:unscaled"
  FontPath   "/usr/X11R6/lib/X11/fonts/Type1/"
  FontPath   "/usr/X11R6/lib/X11/fonts/Speedo/"
  FontPath   "/usr/X11R6/lib/X11/fonts/75dpi/"
  FontPath   "/usr/X11R6/lib/X11/fonts/100dpi/"

# The module search path.  The default path is shown here.

#    ModulePath "/usr/X11R6/lib/modules"

EndSection

# **********************************************************************
# Server flags section.
# **********************************************************************

Section "ServerFlags"


EndSection

# **********************************************************************
# Input devices
# **********************************************************************

# **********************************************************************
# Core keyboard's InputDevice section
# **********************************************************************

Section "InputDevice"

  Identifier "Keyboard1"
  Driver "Keyboard"

  Option "AutoRepeat" "500 30"


  Option "XkbRules" "xfree86"
  Option "XkbModel" "pc101"
  Option "XkbLayout" "no"

EndSection


# **********************************************************************
# Core Pointer's InputDevice section
# **********************************************************************

Section "InputDevice"

# Identifier and driver

  Identifier "Mouse1"
  Driver "mouse"
  Option "Protocol"   "ImPS/2"
  Option "ZAxisMapping"   "4 5"
  Option "Device"     "/dev/input/mice"
  Option "Buttons" "7"


EndSection



Section "Monitor"
  Identifier  "Monitor0"
  HorizSync   30-96
  VertRefresh 50-160



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"

  Driver      "vga"
EndSection

# === ATI device section ===

Section "Device"
  Identifier                          "ATI Graphics Adapter"
  Driver                              "fglrx"
# === disable PnP Monitor  ===
  Option                              "NoDDC"
# === disable/enable XAA/DRI ===
  Option "no_accel"                   "no"
  Option "no_dri"                       "no"
# === FireGL DDX driver module specific settings ===
# === Screen Management ===
  Option "DesktopSetup"               "0x00000000" 
  Option "MonitorLayout"              "AUTO, AUTO"
  Option "IgnoreEDID"                 "off"
  Option "HSync2"                     "unspecified" 
  Option "VRefresh2"                  "unspecified" 
  Option "ScreenOverlap"              "0" 
# === TV-out Management ===
  Option "NoTV"                       "yes"     
  Option "TVStandard"                 "NTSC-M"     
  Option "TVHSizeAdj"                 "0"     
  Option "TVVSizeAdj"                 "0"     
  Option "TVHPosAdj"                  "0"     
  Option "TVVPosAdj"                  "0"     
  Option "TVHStartAdj"                "0"     
  Option "TVColorAdj"                 "0"     
  Option "GammaCorrectionI"           "0x00000000"
  Option "GammaCorrectionII"          "0x00000000"
# === OpenGL specific profiles/settings ===
  Option "Capabilities"               "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 "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"                 "2"
  Option "BlockSignalsOnLock"         "on"
  Option "UseInternalAGPGART"         "no"
  Option "ForceGenericCPU"            "no"
  BusID "PCI:3:0:0"    # vendor=1002, device=4144
  Screen 0
EndSection

# **********************************************************************
# Screen sections
# **********************************************************************

Section "Screen"
  Identifier  "Screen0"
  Device      "ATI Graphics Adapter"
  Monitor     "Monitor0"
  DefaultDepth 24
  #Option "backingstore"

  Subsection "Display"
      Depth       24
      Modes       "1600x1200" "1280x1024" "1024x768" "800x600" "640x480"
      ViewPort    0 0  # initial origin if mode is smaller than desktop
#        Virtual     1280 1024
  EndSubsection
EndSection

# **********************************************************************
# ServerLayout sections.
# **********************************************************************


Section "ServerLayout"

# The Identifier line must be present
  Identifier  "Server Layout"


  Screen "Screen0"


  InputDevice "Mouse1" "CorePointer"
  InputDevice "Keyboard1" "CoreKeyboard"

EndSection

### EOF ###

 

4: modprobe osv:

For å sørge for at driveren blir lastet hver gang vi starter maskinen, setter vi den inn i en lur fil:

 

For 2.4-kjerner:

echo fglrx >> /etc/modules.autoload.d/kernel-2.4

 

for 2.6-kjerner:

echo fglrx >> /etc/modules.autoload.d/kernel-2.6

 

Siden vi ikke gidder å reboote for å kunne ta i bruk kortet, laster vi modulen manuelt:

 

modprobe fglrx

 

Så er det bare en ting som gjenstår, og det er å sørge for at systemet vårt bruker opengl-driverne fra ati.

 

opengl-update ati

 

Da burde alt være i orden, og du burde ha muligheten til å bruke kortet ditt med opengl osv...

 

5: misc:

 

Har du fortsatt problemer, kan du finne ut hva problemet ditt er, med denne kommandoen:

grep -e EE -e WW /var/log/XFree86.0.log

 

Da vil du få ut hva warnings og errors som oppstod i Xfree.

Linjer som begynner på (WW) er warnings, og stort sett ingenting å bry seg om. Jeg har selv disse "warnings", uten at det er noe farlig i det:

(WW) Open APM failed (/dev/apm_bios) (No such file or directory)
(II) Loading extension MIT-SCREEN-SAVER
(WW) fglrx: No matching Device section for instance (BusID PCI:3:0:1) found
(WW) fglrx(0): board is an unknown third party board, chipset is supported
(WW) fglrx(0): Cannot read colourmap from VGA.  Will restore with default

 

Linjer som begynner på (EE) derimot, viser errors, og er som oftest grunnen til at ditt elskede ati radeon ikke funker.

 

For å konfigurere farger og dualhead, er dette programmet kjekt å ha:

 

/opt/ati/bin/fireglcontrol

 

Tilbakemeldinger, rettelser, ris og ros er hjertelig velkommen. Lykke til :)

Endret av Seigemannen
Lenke til kommentar
Videoannonse
Annonse
Debian:

apt-get instrall ati-drivers

(gi tilbakemelding på denne, er usikker på om dette er riktig for debian)

Fant en feil her ;p

 

apt-get instrall ;S.

 

Guiden så veldig bra ut, har ikke mulighet for å teste den ut, jeg har ingen ATI kort ;p.

Lenke til kommentar

Dritbra guide! Eneste jeg lurer på, virker de driverene på mobility 16M kortet? Følger med drivere som virker i GL med XFree, men TV ut funker ikke/dårlig, skjerm ut tuller, og dualhead (ikke mirroring) kan jeg bare glemme...

 

Noen som vet hvor jeg finner en HCL?

Lenke til kommentar

Bra guide.. Bare en ting, på gentoo må du kanskje foreta følgende

opengl-update ati

det er i alle fall min erfaring... opengl-update ordner symbolske linker slik at du kan bytte mellom drm gitt i de åpne driverne og ati sine drivere.

Lenke til kommentar

Hei. Fin guide, men likevel får jeg ikke 3D-akselerasjon.

 

(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(WW) Open APM failed (/dev/apm_bios) (No such device)
(II) Loading extension MIT-SCREEN-SAVER
(WW) fglrx: No matching Device section for instance (BusID PCI:1:0:1) found
(WW) fglrx(0): Cannot read colourmap from VGA.  Will restore with default
(WW) fglrx(0): Kernel Module version does *not* match driver.
(EE) fglrx(0): incompatible kernel module detected - HW accelerated OpenGL will not work
(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): ********************************************* *

 

Har Sapphire Radeon 9500PRO

 

 

EDIT: Når jeg går inn i kontrollpanelet står det transfermode PCI. Det kan ikke stemme. Jeg er en kombinasjon av linux-noob og "har-nesten-ikke-rørt-XF86Config" så håper noen kan bidra med hjelp.

:cry:

Endret av CobraM
Lenke til kommentar
(WW) fglrx(0): Kernel Module version does *not* match driver.
(EE) fglrx(0): incompatible kernel module detected - HW accelerated OpenGL will not work
(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): ********************************************* *

Om du hadde gamle ati-drivere før du installerte ati på nytt kan det være at de gamle driverne er lastet av kjernen. Prøv å gå ut av X og gjør følgende som root

rmmod fglrx
modprobe fglrx

og start X på nytt (eventuelt kan du bare reboote).

 

En annen mulighet er at linux-symlinken i /usr/src peker på feil tre, sjekk at /usr/src/linux peker på rett tre (se omkommandoen "uname-a" gir deg et versjonsnummer som tilsvarer det "ls -al /usr/src/linux" peker på). Om du retter denne linken slik at den peker rett skal det bare være å re-installere ati-drivers, for så å gjøre det jeg beskrev over. Da virker det forhåpentligvis....

Lenke til kommentar
  • 2 uker senere...

Holder på å installere ATI driverne nå, men har litt problemer. Det fungerer å installere RPM'en, men jeg før følgende beskjed:

*** WARNING ***

Tailored kernel module for fglrx not present in your system.

You must go to /lib/modules/fglrx/build_mod subdir

and execute './make.sh' to build a fully customed kernel module.

Afterwards go to /lib/modules/fglrx and run './make_install.sh'

in order to install the module into your kernel's module repository.

(see readme.txt for more details.)

 

As of now you can still run your XServer in 2D, but hardware acclerated

OpenGL will not work and 2D graphics will lack performance.

 

failed.

*** Error: no kernel module build environment - please consult readme.

/sbin/ldconfig: File /usr/X11R6/lib/FGL.renamed.libGL.so.1.2 is too small, not c                                hecked.

Installed: qt3 (gcc 3.2) based control panel application

===

ATI display drivers successfully installed

please run 'fglrxconfig' now

===

 

Jeg gjør som den sier; kjører /lib/modules/fglrx/build_mod/make.sh, men da får jeg bare denne meldingen:

ATI module generator V 2.0

==========================

initializing...

cat: /usr/src/linux/include/linux/version-*.h: No such file or directory

Error:

kernel includes at /usr/src/linux/include do not match current kernel.

they are versioned as ""

instead of "2.4.21-166-athlon".

you might need to adjust your symlinks:

- /usr/include

- /usr/src/linux

 

Jeg ser at posten over denne sier noe om disse symlink'ene, men jeg forstår ikke helt hva det er jeg skal foreta meg.

uname -a gir meg "Linux linux 2.4.21-166-athlon", mens ls -al /usr/src/linux gir meg "/usr/src/linux -> linux-2.4.21-99".

 

Er det noen som har noen tips?

Lenke til kommentar

cd /usr/src

rm linux

ls

ln -s linux-denkjernendubrukerno linux

 

 

så slenger du inn rpm'en på nytt

og drar ein fglbhlabhlaconfig

 

 

 

Edit: eg får opp feilmeldingen, sjølv med linking til riktig kjerne.

Så lenge du får etelleranna.o loaded sucsesfully (eventuelt med warning) på slutten, så bruker det å virke.

(iallefall hos meg)

Endret av Mr.Elendig
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...