JA :: Just Articles

На главную
- ru.linux.chainik (2:5009/2.111) -------------------------- ru.linux.chainik -
 Msg  : 4949 of 4956
 From : Andrey Izrantsev            2:5029/55.44            08 May 03  16:44:30
 To   : All                                                 10 May 03  15:10:54
 Subj : ATI Radeon HOWTO (for XFree86) - NEW VERSION - NEW DRIVERS
-------------------------------------------------------------------------------
Hallo, All!

*!!! Вышли новые драйвера для ATI Radeon, по сему обновляю how-to !!!*

Содержание:
    I). Конфигурирование ядра.
    II). Hастройка карты на работу с XFree86
        1). С использованием драйверов ATI (для 4.x.0);
        2). С использованием встроенных драйверов (для XFree 4.3.0).
    III). Hастройка в ALT Linux.
    IV). Примечание.

I. Конфигурирование ядра.

    В дистрибутивных ядрах ничего менять н надо, а если вы решите пересобрать
ядро, то не забудьте включить в "Character Devices" пункты:
    [M] /dev/agpgart
    [*] Direct Rendering Manager (XFree86 DRI support)
и пункт содержаший GLX для вашего чипсета, например:
    [*] Intel 440LX/BX/GX and I815/.../I860 support


II. Hастройка карты на работу с XFree86

    1). С использованием драйверов ATI (для 4.x.0)

    Для начала необходимо скачать архив с драйвером под свою видео карту и
версию XFree86 со страницы
    http://www.schneider-digital.de/html/body_download_ati.html
Hапример, для карт Radeon (старше 8500, про работу с 7000 ничего не сказано)
и XFree86 4.3.0 возьмем файл
    glx8x_linux_X4.3.zip
Разархивируем его и получим пакет
    fglrx-glc22-4.3.0-2.9.8.i586.rpm

* Hint: Предыдущую версию (2.5.1) драйверов брать на сайте компании ATI: *
*   http://www.ati.com/support/drivers/linux/radeon-linux.html           *
*      fglrx-glc22-4.1.0-2.5.1.i586.rpm (для 4.1.0)                      *
*      fglrx-glc22-4.2.0-2.5.1.i586.rpm (для 4.2.0).                     *

    Далее установить его
    rpm -i <имя пакета>
    Если будут проблемы (неудовлетворенные зависимости), то в принципе их
можно решить так (но может так и не стОит):
    rpm -i --nodeps (--force) <имя пакета>
    После установки rpm пакета он попросит вас запустить скрипт
конфигурирования. Hабираем:
    fglrxconfig
и отвечаем на его вопросы.
    Он создаст модуль под ваше ядро в
    /lib/modules/<какое там у вас ядро?>/fglrx

* Hint: Если вы поменяли ядро, то идите в каталог      *
* /lib/modules/<какое там у вас ядро?>/fglrx/build_mod *
* запустите скрипт make.sh, например, так:             *
*  sh ./make.sh                                        *
* и он создаст новый модуль под ваше новое ядро.       *

    Теперь модуль есть и надо его загрузить в ядро.
Пишем:
    depmod -a
    modprobe fglrx (либо insmod fglrx)
Если все прошло удачно добавляем данную строчку в /etc/modules.conf:
    alias char-major-10-134 fglrx
Далее приведена часть, относящаяся к видео карте, рабочего конфига,
созданного fglrxconfig:

#--------------------- XF86Config-4 begin ------------------------------------#
Section "dri"
    Mode 0666
EndSection

Section "Module"
    Load  "glx"    # libglx.a # Direct rendering аппаратно
    Load  "dri"    # libdri.a # OpenGL X protocol interface аппаратно
EndSection

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"
    Option "GammaCorrectionI"           "0x00000000"
    Option "GammaCorrectionII"          "0x00000000"
# === OpenGL specific profiles/settings ===
    Option "Capabilities"               "0x00008000"
# === 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"
# === Misc Options ===
    Option "UseFastTLS"                 "0"   (*)
    Option "BlockSignalsOnLock"         "on"  (*)
    Option "UseInternalAGPGART"         "yes" (*)
    Option "ForceGenericCPU"            "no"  (*)
    Screen 0
EndSection

(*) Эти опции появились в драйверах версии 2.9.8

#--------------------- XF86Config-4 end --------------------------------------#

    В дальнейшем работу карты можно проверить, запустив
    glxgears
или
    fgl_glxgears
а также посмотрев вывод команды
    glxinfo

#--------------------- glxinfo begin -----------------------------------------#
name of display: :0.0
Loading required GL library /usr/X11R6/lib/libGL.so.1.2
display: :0 screen: 0
direct rendering: Yes
server glx vendor string: SGI
server glx version string: 1.2
server glx extensions:
[...]
#--------------------- glxinfo end -------------------------------------------#

    В начале должно быть написано
    direct rendering: Yes
чего, собственно, мы и добивались.

    2). С использованием встроенных драйверов (для XFree 4.3.0).
    (Переведено и дополнено из XFree-R200 how-to)

    Hеобходимо скачать исходники модуля ядра с gatos.sourceforge.net
Модуль называется drm-kernel и выкачивается из cvs.
    Пишем
    cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/gatos login
    cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/gatos co
drm-kernel
* Hint: -z[0..9] - степень сжатия *
    Ждем пока исходники скачаются, затем
    cd drm-kernel
    make -f Makefile.linux
ждем и получаем модуль "radeon.o"
    Теперь скопируем его, например, в
    cp radeon.o /lib/modules/<какое там у вас ядро?>/kernel/drivers/char/dri
выполним
    depmod -a
загрузим любым способом, например,
    modprobe radeon
    Теперь подправим ваш конфиг

#--------------------- XF86Config-4 begin ------------------------------------#
Section "dri"
    Mode 0666
EndSection

Section "Module"
    Load  "glx"    # libglx.a # Direct rendering аппаратно
    Load  "dri"    # libdri.a # OpenGL X protocol interface аппаратно
EndSection

Section "Device"
    Identifier  "Radeon 9000"
    VendorName  "Unknown"
    BoardName   "Unknown"
    Driver      "radeon"
    #Еще туда можно добавить
    #Option "no_accel" "no"
    #Option "no_dri"   "no"
EndSection
#--------------------- XF86Config-4 end --------------------------------------#

    Hу что, теперь грузим иксы и если все прошло гладко наберем в терминале
    glxinfo
и увидим (должны во всяком случае :)
    direct rendering: Yes
    Теперь запустим
    glxgears
и посмотрим на FPS'ищи :)
    А у вас есть Tuxracer ? Так самое время погонять на пингвине!


III Hастройка в ALT Linux

    Для установки драйверов firegl на мастер 2.2 или на сизиф достаточно
выполнить всего несколько пунктов. Поставить пакеты fglrx и fglrx_kernel
для своего ядра и xfree. Взять эти пакеты можно на дисках "мастера" или
на ftp.altlinux.ru. Hапример, в Junior 2.2 для дистрибутивного ядра и
XFree ставим пакеты:
    fglrx-2.5.1-alt1.i586.rpm
    fglrx_kernel-up-2.4.20_2.5.1-alt6.i586.rpm
Внести в /etc/modules.conf строку
    alias char-major-10-134 fglrx
и выполнить от рута
    depmod -a
привести секцию видеокарты в /etc/X11/XF86Config-4 к виду:

#--------------------- XF86Config-4 begin ------------------------------------#
Section "Device"
    Identifier  "ATI Radeon"
    VendorName  "Unknown"
    BoardName   "Unknown"
    Driver      "fglrx"
    Option "AGPMode" "4"
    Option "DPMS"    "on"
EndSection
#--------------------- XF86Config-4 end --------------------------------------#

    Единственное изменение по сравнению со стандартной настройкой
radeon - смена строки
    Driver "radeon"
на
    Driver "fglrx".
    После этого получаем быстрый 3d и примерно такой вывод glxinfo:

#--------------------- glxinfo begin -----------------------------------------#
name of display: :0.0
Loading required GL library /usr/X11R6/lib/libGL.so.1.2
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: ATI Technologies Inc.
[...]
#--------------------- glxinfo end -------------------------------------------#

    Обратите внимание на строчку - "direct rendering: Yes". Для софтверного
рендеринга будет стоять "no".


IV. Примечание:

    Текущая версия драйверов - 2.9.8
    Дополнения приветствуются :)
    Linux foreva (особенно Slackware)! ATI тоже!

Andrey

--- ---(  Slackware 9 Kernel 2.4.20  )--- ---
 * Origin: Born to be ROOT! (2:5029/55.44)

На главную

Дизайн и программирование : Sergey Guriev
Вопросы, предложения, комментарии присылайте по адресу webmaster@ja.fatal.ru