Aug 18, 2009 22:18
Наконец-то нашел время написать о настройке этой машинки. Довольно странно, что про неё в нете не слыхать, только есть мануал на испанском, и то практически копия вики CentOS. Почти ничего не сказано там про железо, а это самое интересное.
В мануале, по-моему, нуждаются лишь дисплей и звук. Остальное (по крайней мере у меня) подхватилось без особых проблем. Главное - обновить ядро хотя бы до 2.6.29 (но особенно не увлекаться), либо самому собрать, либо стянуть из backports. Написано для Debian Lenny (точнее, там проверялось), но может подойти и для других дистров.
*** Звук ***
Звуковая карта у нас - AD1984A, драйвер snd-hda-intel. Он есть по умолчанию (проверить можно с помощью lsmod | grep hda-intel), нам же нужно прописать его режим. Рецепт прост - открываем /etc/modprobe.d/alsa-base (или с .conf в конце, если совсем новое ядро). Там добавляем строку
options hda-intel model=laptop index=0
Внимание, именно в конец файла! Иначе не сообразит. Далее перезапускаем систему (перезапуска ALSA недостаточно) и проверяем по alsamixer. Экспериментально установлено, что звуковая карта поддерживается версиями с 1.0.16, хотя желательно собрать самому свежую версию (не забыв перед компиляцией драйвера записать ./configure --with-cards=hda-intel --with-sequencer=yes).
P.S. Долго мучался с этой проблемой, в итоге очень помог IRC-канал #ALSA на irc.freenode.net.
*** Графика ***
Здесь проблема состоит в том, что экран широкоформатный. Почему-то Х11 считает драйвер intel чем-то необычным (VESA не способна отображать разрешение 1280х800), поэтому вписываем его в /etc/X11/xorg.conf. Меняем соответствующие секции
Section "Device"
Identifier "Configured Video Device"
Driver "intel"
EndSection
Section "Monitor"
Identifier "Configured Monitor"
VendorName "LGPhilipsLCD"
ModelName "LP141WX3-TLP2"
Option "DPMS"
Horizsync 49.3
Vertrefresh 61
Modeline "1280x800@60" 69.3 1280 1328 1360 1405 800 803 809 822 -hsync -vsync
EndSection
Section "Screen"
Identifier "Default Screen"
Device "Configured Video Device"
Monitor "Configured Monitor"
DefaultDepth 24
SubSection "Display"
Depth 24
Modes "1280x800"
EndSubSection
EndSection
Внимание! Перед редактированием конфига следует заранее убедиться в параметрах своего монитора. Для этого выполняем в терминале
$ cat /var/log/Xorg.0.log | grep modeline
Высветится строка с цифрами. Их нужно записать в том же порядке между "1280x800@60" и -hsync -vsync.
Теперь сохраняемся и перезапускаем Х (Ctrl+Alt+Backspace). Радуемся жизни.
P.S. По идее direct rendering в OpenGL должен быть включен по умолчанию. Но в ядре 2.6.30.4 этого нет, скорее всего, из-за кривизны самого ядра. Разрабы там что-то как раз с DRM накосячили, оно даже в suspend нормально не уходит.
*** Сборка ядра Debian-way ***
Считается идейно неправильным собирать ядро в Debian с помощью обычных make, make install. Лучше всего ядро компилить, запаковывать в .deb и инсталить с помощью dpkg.
Итак, сначала ставим необзодимые для сборки пакеты:
# aptitude install make gcc kernel-packages ncurses-dev
Потом конфигурим ядро (make menuconfig) и собираем в пакет:
$ make-kpkg kernel_image
Далее инсталим как обычный пакет
# dpkg -i linux-2.6.xx.deb (хх - версия ядра)
Создаем initrd:
# update-initramfs -c -k 2.6.xx
Готово! Теперь ядро установлено абсолютно кошерным способом ;-)
linux