Documentación para las extensiones SoundPro CMI8330 del controlador WSS ad1848.o-------------------------------------------------------------------------------- Ion Badulescu, ionut@cs.columbia.edu Febrero 24, 1999 (derivado de la documentación OPL3-SA2 por Scott Murray) El SoundPro CMI8330 (ISA) es un chip encontrado normalmente en alguna placas base Taiwanesas. El nombre oficial en la documentación es CMI8330, SoundPro es el apodo y la inscripción grande en el chip. El chip emula un WSS así como una SB16, pero tiene ciertas diferencias en la sección del mezclador que requieren soporte por separado. También emula un sintetizador MPU401 y un OPL3, por lo que problamente quiera activar también, el soporte para estos. El chip se identifica a sí mismo como un AD1848, pero su mezclador es ligeramente más avanzado que el AD1848 original. Si su sistema funciona con el WSS o SB16 y tiene problemas con algunos controles del mezclador (no CD audio, no line-in, etc), quizás quiera darle una oportunidad a este controlador. La detección debería funcionar, pero no ha sido testeada ampliamente, por lo que todavía puede indentificar mal el chip. Puede forzar soundpro=1 en la llamada a modprobe para el ad1848. Por favor hágame saber si le pasa a usted, para que pueda ajustar la rutina de detección. El chip es capaz de realizar full-duplex, pero como el controlador lo ve como un AD1848, no puede usarlo. Además, el modo full-duplex no se puede usar desde la interfaz WSS, necesita una línea dma16 que sólo se asigna al subdispositivo SB16 (con isapnp). La documentación de windows dice que el usuario debe usar la Reproducción WSS y la grabación SB16 para realizar full-duplex, por lo que puede ser posible hacer lo mismo desde Linux. Puede probar a cargar los dos módulos ad1848 y sb y usar uno para reproducción y el otro para la grabación. No sé si esto funciona, no lo he probado. De cualquier forma, si lo prueba sea cuidadoso: El mezclador S16 funciona bastante bien, pero ciertas configuraciones puedes tener efectos imprevistos. Use el mezclador WSS para los mejores resultados. También hay un chip PCI SoundPro. No he visto este chip, por lo que no tengo ni idea de si el chip funcionará con él. Sospecho que no. Como con las tarjetas PnP, se necesita cierta configuración. Hay dos formas de hacerlo. La más común es usar el paquete isapnptools para inicializar la tarjeta, y luego usar la forma módular del subsistema de sonido del núcleo. Alternativamente, algunas BIOS permiten la configuración manual en un menú de la BIOS, de los dispositivos PnP instalados. Lo que permitiría usar controladores de sonido no modulares, por ejemplo incorporados en el núcleo. Dado que en este caso no puede usar parámetros del módulo, necesitará activar el soporte para el SoundPro en tiempo de compilación. Los valores IRQ y DMA pueden ser cualquiera aceptable para una WSS. Asumiendo que tiene a isapnp feliz, debería ser capaz de hacer algo como lo siguiente (que *debe* concordar con la configuración de isapnp/BIOS): modprobe ad1848 io=0x530 irq=11 dma=0 soundpro=1 -y quizás- modprobe sb io=0x220 irq=5 dma=1 dma16=5 -después- modprobe mpu401 io=0x330 irq=9 modprobe opl3 io=0x388 Si todo va bien y no ve mensajes de error, debería ser capaz de usar las capacidades sonoras de su sistema. Si obtiene algún mensaje de error en su sistema mientras inserta los módulos, entonces compruebe que los valores especificados concuerdan con el fichero de configuración de isapnp, y que no hay conflicto con otro dispositivo, puerto E/S o interrupción. Comprobar el contenido de /proc/ioports y /proc/interrupts puede ser útil para ver si está chocando con algún otro dispositivo. Si no ve ningún mensaje de versión del chip, y ninguno de los otros mensajes presentes en el registro del sistema son útiles intente añadir 'debug=1' a los parámentros del ad1848, mándeme los resultados de syslog e intentaré hacer lo mejor para poder ayudar. Por último, si está usando módulos y quiere cargarlos automáticamente con kmod, el cargador de módulos del núcleo, aquí tiene la sección que uso actualmente en mi ficharo conf.modules: # Sonido post-install sound modprobe -k ad1848; modprobe -k mpu401; modprobe -k opl3 options ad1848 io=0x530 irq=11 dma=0 options sb io=0x220 irq=5 dma=1 dma16=5 options mpu401 io=0x330 irq=9 options opl3 io=0x388 El trozo anterior se asegura de que el ad1848 será cargado cuando el sistema de sonido esté siendo usado. Buena suerte. Ion NO TESTEADO REALMENTE: - grabación - selección del dispositivo de grabación - full-duplex POR HACER: - implementar soporte del mezclador para surround, loud y digital CD. - pensar un esquema que permita volúmenes de grabación diferentes para cada subdispositivo. Este es un cambio mayor en el API OSS. "Traducido para el proyecto NuLies por Gorka Olaizola Sánchez "