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ó:No tiene que ver con el kernel, sino con el hardware y con la BIOS.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?
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