Tarjeta de sonido USB compatible con Linux, alguna?

  • 2
#16 por Pablo_F el 03/09/2011
Alguien escribió:
Y como se hace eso de poner el bus usb el solo en un IRQ... muy interesado, tengo la misma tarjeta


Alguien escribió:
Hola, lo de poner el bus USB solito en un IRQ se puede solo con un kernel multimedia o tambien se puede con un kernel nomal?
No tiene que ver con el kernel, sino con el hardware y con la BIOS.

Alguien escribió:
debo tener un serio problema porque en la interrupcion 10 tengo akgunos dispositivos uhci_hcd:usb1, uhci_hcd:usb2, ohci1394, eth0, radeon@pci:0000:01, creo que eso esta causando los ruidos, aunque el jack no me indica xruns


Esta tercera cita es lo mismo que me pasó a mí el otro día. Después de un año sin usar el netbook para grabar, mi memoria falló y enchufé la tarjeta en el sitio equivocado. Y no hice comprobaciones.

Para responder a las dos citas de arriba, creo que los pasos correctos serían:

1) Mirar si es posible enchufarla un bus que no esté en un IRQ superpoblado.

2) Si esto es imposible*, usar un kernel que permita "IRQ threading". Esto se puede conseguir (a) con un kernel realtime, por ejemplo 2.6.29-rt, 2.6.31-rt ó 2.6.33-rt, o bien (b) con un kernel 2.6.39 ó 3.x con o sin el parche realtime ** pero con el parámetro de arranque "threadirqs". En los casos 2)(a) y 2)(b), es imprescindible usar el script rtirq-init para levantar la prioridad de la tarjera de audio automáticamente al arrancar el ordenador (y olvidarnos de todo este rollo).

* También si es posible, pero en este caso no es imprescindible ir a la opción 2), aunque puede venir bien.

** En teoría, mejor con el parche realtime disponible para 3.0, en la práctica no tengo claro si se notará diferencia para el uso que le damos.

Elaborando un poco más el caso 1). Enchufamos la tarjeta y listamos los dispositivos USB. Esto es un ejemplo en un ordenador que no es mío (qué bueno es llevar un Sistema Operativo Live en un pincho USB) pero me he traido la tarjetita. La enchufo en la toma USB que encuentro más a mano:

Alguien escribió:
$lsusb
Bus 005 Device 002: ID 08bb:2902 Texas Instruments Japan PCM2902 Audio Codec
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 002: ID 04a9:2220 Canon, Inc. CanoScan LIDE 25
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 003: ID 13fe:1f00 Kingston Technology Company Inc. DataTraveler 2.0 4GB Flash Drive / Patriot Xporter 32GB (PEF32GUSB) Flash Drive
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub


La "08bb:2902" es la UCA202 y está en el bus 5. Ahora veo cómo están los IRQ's:

Alguien escribió:
$ cat /proc/interrupts
CPU0 CPU1
0: 59 0 IO-APIC-edge timer
1: 12521 0 IO-APIC-edge i8042
6: 3 0 IO-APIC-edge floppy
7: 0 0 IO-APIC-edge parport0
8: 1 0 IO-APIC-edge rtc0
9: 0 0 IO-APIC-fasteoi acpi
12: 84382 0 IO-APIC-edge i8042
14: 526 0 IO-APIC-edge ata_piix
15: 37193 0 IO-APIC-edge ata_piix
16: 23 204388 IO-APIC-fasteoi uhci_hcd:usb5, i915, eth0
17: 199 0 IO-APIC-fasteoi firewire_ohci, Intel ICH6
18: 0 0 IO-APIC-fasteoi uhci_hcd:usb4
19: 0 0 IO-APIC-fasteoi uhci_hcd:usb3
21: 14814 0 IO-APIC-fasteoi eth1
23: 38905 0 IO-APIC-fasteoi ehci_hcd:usb1, uhci_hcd:usb2
NMI: 0 0 Non-maskable interrupts
LOC: 1245652 1203057 Local timer interrupts
SPU: 0 0 Spurious interrupts
PMI: 0 0 Performance monitoring interrupts
IWI: 0 0 IRQ work interrupts
RES: 7469 8815 Rescheduling interrupts
CAL: 411 375 Function call interrupts
TLB: 1327 1409 TLB shootdowns
TRM: 0 0 Thermal event interrupts
THR: 0 0 Threshold APIC interrupts
MCE: 0 0 Machine check exceptions
MCP: 16 16 Machine check polls
ERR: 1
MIS: 0


Estoy en un caso parecido al de osakaiba, con el bus USB 5 en el que reside la UCA202, junto con la tarjeta gráfica y la tarjeta de red, en el IRQ 16. Viendo los interrupts, yo ahora quiero que vaya en el bus 3 o en el 4, que no comparten su IRQ con otros dispositivos. Entonces pruebo en otro enchufe:


Alguien escribió:
$ lsusb
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 003: ID 08bb:2902 Texas Instruments Japan PCM2902 Audio Codec
Bus 002 Device 002: ID 04a9:2220 Canon, Inc. CanoScan LIDE 25
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 003: ID 13fe:1f00 Kingston Technology Company Inc. DataTraveler 2.0 4GB Flash Drive / Patriot Xporter 32GB (PEF32GUSB) Flash Drive
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub


Ahora está en el bus USB 2, que está en el IRQ23 junto con el bus USB 1. Tampoco es lo ideal, además la impresora tambien está en el bus 2. No voy a seguir enredando en la parte trasera de un ordenador que no es mío, Creo que ya se entiende la idea.

El punto 2) es un poco más complicado, a ver si puedo elaborarlo mejor mañana.

Pero queda claro que conseguir el caso 1) depende de cada ordenador; las tomas USB disponibles y cómo están organizadas a nivel de hardware y de BIOS.

Saludos, Pablo
Subir
#17 por osakaiba el 03/09/2011
Muchas gracias por el dato, siguiendo los pasos tengo la tarjeta en un puerto en donde el irq lo comparto con "yenta" (que segun tengo entendido es el controlador de la pcmcia, el cual lo tengo vacio), igual obtengo ruiditos como si se apagara y se prendiera (especie de "craks" o "chaks") por ejemplo al abrir un terminal y mover la ventana repetidamente por el escritorio.

Cabe rescatar que conecte la tarjeta a otro pc y obtuve casi nada de chasquidos (en XP) asi que veo que el caso es diferente para cada pc. Seguire tratando, ya estoy instalando el linux-rt para probar de nuevo, como siempre tus explicaciones son muy utiles Pablo (tu blog guardado en mis favoritos), saludos !!
Subir
#18 por osakaiba el 03/09/2011
Hola de nuevo, gracias a la info de tu blog pude asignarle rt a la tarjeta de sonido y a los timers, pero de forma manual ya que no tenia a mano el rtirq-init. Los chasquidos no se fueron por lo que pense que eran mis puertos los fallosos, pero antes de dejar esa conclucion me di cuenta que al tener abierto el Ardour o el Seq24 los ruidos cesan y escucho perfectamente en mi tarjeta. Cosa rara no?.Casos hay casos, el Seq24 se ejecuta con PRI 20 y me soluciona los problemas :ook: ...bueno, de todas maneras me estoy enviciando en el seq24 asi que no molesta por ahora... y tambien puedo decir que me alegro de tener esta berhinger como tarjeta, saludos!!!
Subir
#19 por andriu el 03/09/2011
Joe que detallado!!!! Muchas gracias Pablo, con esto me pongo a investigar/experimentar pero ya a ver si pongo a tono a mi "pequeñin" xDDDD

Por cierto que distro usas en el netbook? yo ahora estoy probando debian squeeze y no va mal pero quizá le instale xlde o alguna otra ligera

Saludos ;)

Decibelios Linuxeros

Subir
#20 por Pablo_F el 04/09/2011
Hola Osakaiba, el script rtirq-init está empaquetado en las distribuciones principales. No hay que hacer nada raro para instalarlo. Lo recomiendo mil veces. En la entrada de "semicorchux" a la que haces referencia está más o menos explicado como configurarlo para cada caso. En el netbook creo recordar que tengo "rtc usb2" en la variable que establece el orden de prioridades.

Pero a nivel de programas de usuario, se supone que no nos tenemos que liar con las prioridades de los clientes de jack. Yo al menos no lo hago. Lanzo jackd con prioridad de 60 ó 70 y todo lo demás viene solo.

Hola Andriu. En el netbook tengo un dual boot. Uno es ubuntu natty, para oficina aunque también tengo instalado jack. El de estudio portátil es ubuntu jaunty (9.04) con un kernel 2.6.29-multimedia de 64studio (es un rt). Es el tercer verano que lo uso y funciona bien para grabar a la familia (este año hemos grabado una canción muy bonita, igual me animo y os la presento, aunque como siempre, al no ser original me da un poco de reparo). Si tuviera que preparar otro sistema para netbook no sería ubuntu jaunty pero en su momento es lo que instalé, conseguí que funcionara bien y no le he dado más vueltas. Seguro que lo dejas muy bien, ya contarás.

Pues nada, saludos a todos.
Subir
#21 por osakaiba el 04/09/2011
Hola, el rtirq-init no viene en mi distro que es algo antigua, xubuntu 8.04, pero en una info que vi en sounddebian (link que mencionas en semicorchux) logre poner las prioridades a mano, la verad es que no me fue tan biem con el linux-rt, el jack empezaba a detenerse al tratar de usar el qsynth junto con el zyn, o a veces solo con el qsynth, me va mejor con el kernel generic, solo que con 46 ms de latencia, claro que sigo teniendo que abrir el seq24 para no tener que oir los chasquidos que hace la tarjeta de audio usb.

Se que voy a tener que seguir probando con las configuraciones, o tal vez me decida a cambiar de distro (alguna buena para audio y que funcione en mi viejo hp con P4 2.8 Mhz con 532 de ram) con todo .. sigo contento de tener la berhinger :)
Subir
#22 por igny el 04/09/2011
Gracias Pablo por tus aportaciones.

Salut
Subir
Respuesta rápida

Regístrate o para poder postear en este hilo