The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Настройка alsa в ядре 2.6.14.5 для систем на основе nvidia nforce (alsa sound linux driver hardware)


<< Предыдущая ИНДЕКС Правка src / Печать Следующая >>
Ключевые слова: alsa, sound, linux, driver, hardware,  (найти похожие документы)
From: nam <namari@mail.zp.ua.> Newsgroups: email Date: Mon, 26 Jul 2006 14:31:37 +0000 (UTC) Subject: Настройка alsa в ядре 2.6.14.5 для систем на основе nvidia nforce Настройка alsa в ядре 2.6.14.5 для систем на основе nvidia nforce mcp410 на примере Asrock K8NF4G-SATA2. Побудило к этому драйвер от производителя который работал только через OSS интерфейс и оставлял желать лучшего. Для начала смотрим какой аудио чип используется в системе, для этого примера это чип от Realtek alc850 , поддержка которого уже реализована но работать с ним альса не хочет , но мы ёй поможем. Посмотреть можно на самой материнке или в мануале на материнку в разделе specifications -> audio, а реализована ли поддержка для этого чипа можно увидеть в файле linux-2.6.14.5/sound/pci/ac97/ac97_id.h для данного примера это строка #define AC97_ID_ALC850 0x414c4790. Поддержка чипа есть но работать он не хочет почему ? Полистав ReleaseNotes.html из NFORCE-Linux-x86-1.0-0310-pkg1.run и у видев енто что в принципе не понравилось ...NVIDIA's audio driver is an OSS driver, and requires OSS sound support in the kernel. NVIDIA's audio control panel is a Qt-based application, and requires Qt run-time libraries in order to run.... и это что натолкнуло на мысль ...If your configuration file already contains an entry for the i810_audio or snd-intel8x0 drivers (open-source audio drivers that supports the nForce audio controller), that entry needs to be commented out with a or removed: alias sound-slot-0 i810_audio Add the following lines to the configuration file: alias sound-slot-0 nvsound alias snd-intel8x0 off alias i810_audio off... копнуть поглубже в сторону snd_intel8x0 Посмотрев в linux-2.6.14.5/Documentation/sound/alsa/ALSA-Configuration.txt натолкнулся на такие строки Module snd-intel8x0 ------------------- Module for AC'97 motherboards from Intel and compatibles. * Intel i810/810E, i815, i820, i830, i84x, MX440 * SiS 7012 (SiS 735) * NVidia NForce, NForce2 * AMD AMD768, AMD8111 * ALi m5455 Заинтересовали строки про Нфорсе Значит будем ковырять исходники ... Роем /usr/src/linux-2.6.14.5/sound/pci/intel8x0.c строки около <400 /* { 0x10de, 0x01b1, PCI_ANY_ID, PCI_ANY_ID, 0, 0, DEVICE_NFORCE }, /* NFORCE */ { 0x10de, 0x003a, PCI_ANY_ID, PCI_ANY_ID, 0, 0, DEVICE_NFORCE }, /* MCP04 */ { 0x10de, 0x006a, PCI_ANY_ID, PCI_ANY_ID, 0, 0, DEVICE_NFORCE }, /* NFORCE2 */ { 0x10de, 0x0059, PCI_ANY_ID, PCI_ANY_ID, 0, 0, DEVICE_NFORCE }, /* CK804 */ { 0x10de, 0x008a, PCI_ANY_ID, PCI_ANY_ID, 0, 0, DEVICE_NFORCE }, /* CK8 */ { 0x10de, 0x00da, PCI_ANY_ID, PCI_ANY_ID, 0, 0, DEVICE_NFORCE }, /* NFORCE3 */ { 0x10de, 0x00ea, PCI_ANY_ID, PCI_ANY_ID, 0, 0, DEVICE_NFORCE }, /* CK8S */ */ поддержка имеется токо надо добавить ID нашего звукового контролера 0x10de энто я так понял идентификатор производителя в нашем случае nvidia, a чего добавить дальше сейчас будем посмотреть дав в терминале команду lspci -v -v видим /* 00:10.2 Multimedia audio controller: nVidia Corporation: Unknown device 026b (rev a2) Subsystem: Unknown device 1849:0850 Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap+ 66Mhz+ UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- Latency: 0 (500ns min, 1250ns max) Interrupt: pin C routed to IRQ 11 Region 0: I/O ports at e400 [size=256] Region 1: I/O ports at e000 [size=256] Region 2: Memory at febdd000 (32-bit, non-prefetchable) [size=4K] Capabilities: [44] Power Management version 2 Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-) Status: D0 PME-Enable- DSel=0 DScale=0 PME- где Multimedia audio controller: nVidia Corporation:и есть наше 0x10de а Unknown device 026b (rev a2) это то чего надо добавить относительно Subsystem: Unknown device 1849:0850 это я так понял производитель 1849 Asrock a 0850 id кодека alc850 используется для дров винды токо там наоборот 08501849 в дровах прописано. Ну вернемся к теме добавляем стрку вида /* { 0x10de, 0x026b, PCI_ANY_ID, PCI_ANY_ID, 0, 0, DEVICE_NFORCE }, /*NFORCE MCP410 */ */ но энто не все, пролистав до строк >2700 находим энто /* { PCI_DEVICE_ID_NVIDIA_MCP1_AUDIO, "NVidia nForce" }, { PCI_DEVICE_ID_NVIDIA_MCP2_AUDIO, "NVidia nForce2" }, { PCI_DEVICE_ID_NVIDIA_MCP3_AUDIO, "NVidia nForce3" }, { PCI_DEVICE_ID_NVIDIA_CK8S_AUDIO, "NVidia CK8S" }, { PCI_DEVICE_ID_NVIDIA_CK804_AUDIO, "NVidia CK804" }, { PCI_DEVICE_ID_NVIDIA_CK8_AUDIO, "NVidia CK8" }, { 0x003a, "NVidia MCP04" }, { 0x746d, "AMD AMD8111" }, { 0x7445, "AMD AMD768" }, { 0x5455, "ALi M5455" }, { 0, NULL }, */ и добавляем /* { 0x026b, "Nvidia MCP410" }, */ всё теперь всё должно заработать после пересборки и замены модуля snd_intel8x0.ko править лучше в мс Автор не несёт ответственности за убитое жёлезо и напрасно потраченное время. Отзывы можно писать на namari@mail.zp.ua

<< Предыдущая ИНДЕКС Правка src / Печать Следующая >>

Обсуждение [ RSS ]
  • 1.1, MaDMaN (??), 00:05, 27/07/2006 [ответить]  
  • +/
    Странно, у меня алса пашет с удовольствием! :)))
     
  • 1.2, Аноним (-), 01:15, 27/07/2006 [ответить]  
  • +/
    "Автор не несёт ответственности за убитое жёлезо ..." - были прецеденты??? =)))
     
  • 1.3, какая разница (?), 09:25, 27/07/2006 [ответить]  
  • +/
    Автору пожелание: учесть, что это статья, а не высказывание в чате. Уделить побольше внимания к грамматике, убрать жаргон. "Драйвер побудило", "энто", "токо".
    Хочу аналогичную статью про nForce 4.
     
  • 1.4, RustNail (??), 10:41, 27/07/2006 [ответить]  
  • +/
    А использовать свежие ядро или ALSA проблема?
    nFirce4 работает и с hda и с intel8x0
     
  • 1.5, Michael Shigorin (?), 11:57, 27/07/2006 [ответить]  
  • +/
    Вообще добавление одного PCI ID -- повод не для статьи на opennet (разве как пример, но тогда согласен с комментарием насчёт грамматики -- учить, так учить :), а для баги с низкой severity на bugs.alsa-project.org или письма в alsa-devel@ на крайний случай.
     
     
  • 2.6, Michael Shigorin (?), 11:59, 27/07/2006 [^] [^^] [^^^] [ответить]  
  • +/
    PS: перед тем, как вешать баги, применяя alsa из 2.6.x, стоит взять свежую с alsa-project.org.  В частности, мне для MCP51 (или 54?) хватило собрать kernel-modules-alsa-std26-up-1.0.11 для того альтовского ядра, которое было в разливке. (не совсем так -- там ещё nvidia-1.0.8??? потребовалось для GF6100, но это отдельно)
     

  • 1.7, pavlinux (??), 12:16, 29/07/2006 [ответить]  
  • +/
    Драйвера Nforce отстой.... (для Linux)

    Используйте snd-intel8x0 - для звука, вместо nvsound
    и forcedeth - вместо nvnet, для сети.

    nvnet все равно на 1Gbit не работает.

     
  • 1.8, Вадим (??), 10:39, 01/08/2006 [ответить]  
  • +/
    У меня на k8n все работает (2.6.14-gentoo-r2)
     
  • 1.9, dnt (?), 05:44, 10/08/2006 [ответить]  
  • +/
    проверял на GA-K8N51 GMF все работает, звук идет :)
    Автору спасибо за статью :)
     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:




    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру