FreeBSD & i810: Настройка видео и звука"

С того самого момента, как Intel перешел на хабовую архитектуру и выпустил материнские платы на чипсете i810, а позже и i815, компьютерщики забеспокоились. Новые чипсеты имели интегрированный звук и видео. То, что звук и (частично) видео перестали воспринимать ДОС-программы, особо никого не беспокоило. Однако та же самая беда постигла и FreeBSD вместе с Linux'ом. В конференциях, посвященных этим операционкам, бесконечно задавались вопросы вроде "Так работает FreeBSD с видео от i810 или нет?". Рекомендации людей, которым удавалось все это настроить, часто не помогали. В общем, кошмар.

Сейчас ситуация прояснилась, и настроить весь этот ужас достаточно просто. Вот о том, как это сделать, я постараюсь рассказать.

Интегрированное видео

За поддержку видео отвечает команда разработчиков, пишущая драйвера для Иксов (XFree86). Сначала в версии 3.3.6 появился модуль для поддержки интегрированного видео i810, однако он работал далеко не всегда (в документации было сказано, что он только для пробных экземпляров материнок). Затем ребята сделали большой рывок и выпустили-таки четвертую версию X-Windows. В ней, в свою очередь, появилась-таки нормальная поддержка интегрированного видео.
Итак, что же делать, чтобы в Иксах было больше чем 16 цветов и экран был больше чем 320х200?
Во-первых, поставьте себе четвертые Иксы. Как их настроить - я постараюсь описать в другой статье...
Теперь нужно сделать так, чтобы загружался модуль ядра, отвечающий за AGP-видео. Редактируем файлик /boot/default/ loader.conf. В нем (ближе к концу файла) будет строчка вроде
   agp_load="NO"
Ставим, естественно, YES. Перезагружаемся.
Теперь осталось совсем немного. Запускаем /usr/X11R6/bin/xf86config и, кроме прочих настроек, выбираем в списке видеокарт i810.
Пожалуй, все. Однако остается еще проблема. В Иксах можно переключаться на любую консоль, нажав Ctrl+Alt+F*. Однако в четвертых иксах, да еще на интегрированном видео, переключиться тоже можно, только насовсем - при переключении в текстовую консоль Иксы рушатся. Возможно, эту проблему уже исправили в XFree86 4.1.0.

Интегрированный звук
Ууу... Вот тут начинается зона кошмара :) Разработчики материнских плат, видимо, не смогли договориться, какой кодек принять за стандарт. И в результате мы имеем кучу материнок с разными звуковыми кодеками - начиная от наболее распространенного AC'97 и до некого подобия ESS (от друга узнал). Естественно, настройка всего этого сильно различается. Я расскажу здесь про AC'97, так как сам его настраивал...

В FreeBSD до версии 4.3 вообще не было никаких средств для поддержки интегрированного звука. В 4.3 они появились, но работают далеко не на всех материнских платах (видимо, еще есть разные АС'97 кодеки). Но тут нам спешит на помощь программист из далекой Японии со своим патчем к ядру для поддержки этого самого кодека! Как пишет автор, поддерживается кодек, интегрированный в Intel 443MX, i810 и i820 чипсеты. Сразу скажу, что патч к ядру на момент написания статьи существовал для FreeBSD 4.2 (полностью отлаженный) и FreeBSD 4-STABLE,5-CURRENT. Сайт разработчика, с которого можно скачать этот патч и инструкции по установке, находится по адресу http://www.katsurajima.seya.yokohama.jp/ich/.

Вроде все.
Ну, вроде бы все рассказал. Однако в эту статью могли вкрасться какие-то баги :) Так что если тут чтo не так, пишите, разберемся.


Автор: Можайский Сергей.