sound, SB, AC97 и другое

Drivers for sound cards
  • Ух....Нашел!!
    Вы хоть бы сказали мне что vt8237, vt8237r,vt8233,vt8235 одно и то же (почти). Или не так?
    Нашел я ссылку на даташит в исходниках LinuxBios.
    Вот он: VT8237R_SouthBridge_Revision2.06_Lead-Free.zip 1652 кб

    Добавлено:

    А, вот еще нашел. Но его братец уже есть кажется.
    VT82C686B Southbridge datasheet.pdf
    Но я ее еще не открывл, не знаю что там.
  • Yaskhan
    Действительно очень похожи. А ты можешь потестировать мой драйвер на VT8237?
    На VT8235 с кодеком VT1612A работает, но я бы хотел знать будет ли он работать на других чипсетах >= VT8233.
  • Уррраааааааааа!!!!!!!! РРРаботаеееет!!!!!!
    Даже перезагркжать не пришлось!!!
    Услышал звук и тааак обрадовался!!
    Завтра еще больше протестиру, а сегодня послушал 5 секунд и сразу сюда. Чтоб сообщить об отличной новости!!! ЕЕЕЕЕЕЕЕЕЕЕЕЕЕЕ!!!

    А, еще должно играть на vt8237r plus, VT8251, VT8261, VT8237A
  • Спасибо за тест. Было бы замечательно, если бы и на других чипсетах работало.
  • Поздравляю. Движемся :)
    Из хаоса в космос
  • Добавил драйвера fm801.obj и vt8235.obj в дистр на рамдиск с соответствующими комментариями в config.txt.
    Ушёл к умным, знающим и культурным людям.
  • Leency и Diamond спасибо.

    Пытаюсь сделать драйвер для своей второй (не встроенной) аудиокарты
    Sound Blaster Live! Dell OEM с цифровым аудиопроцессором EMU10K1X (аудио кодек STAC9758,59). Звук есть, но сопровождается потрескиванием после каждого IRQ, вобщем над драйвером ещё надо работать.
  • Вопрос чисто гипотетический - к существующей звуковой подсистеме без переделки ядра можно прикрутить драйвер с HDA кодеком? Или это потребует капитальных изменений?
  • Asper

    Наверное чередование буферов нарушено - драйвер микширует в ту же часть которая читается дма карты.

    Mario

    Нет, не требует.
  • Когда я делал драйвер для fm801, у меня тоже потрескивало. Было связано с тем, что в вызове play я заполнял оба имеющиеся буфера, а оказалось, что нужно заполнять только один. Судя по всему, прерывание возникает незадолго до окончания буфера, а не тогда, когда он воспроизведён полностью.
  • Serge и tsdima спасибо за информацию, посмотрю что можно сделать с буфером.
  • Драйвер использует буфер в 16 Кб на прерывание.
    Примерная схема работы такая:
    два буфера А и Б по 16 Кб
    приходит прерывание
    драйвер передаёт ДМА буфер А, потом передаёт микшеру буфер Б.
    приходит прерывание
    драйвер передаёт ДМА буфер Б, потом передаёт микшеру буфер А и так по-кругу.
  • Serge
    Очень полезная информация. Про 16Кб буфер догадался, но вот что их два не знал (у VIA и с одним работает). Получается работает как fm801?
  • Я не смотрел код fm801. Буферов может быть и больше. SB16 работает с двумя, АС97 с четырьмя. Это осталось от первых версий, на практике двух достаточно. Главный принцип: когда приходит прерывание уже есть буфер готовый к воспроизведению. Драйвер сразу отдаёт его DMA и готовит следующий. Некоторые контроллеры AC97 работают со списком буферов. Если буферы в списке расположены последовательно, то контроллер начнет воспроизводить следующий буфер из списка автоматически даже если мы опоздали с обработкой прерывания.
  • Who is online

    Users browsing this forum: No registered users and 41 guests