[LAD] Re: [LAU] Thinkpad R60 for Audio Update - Firewire Conflicts with Audio

Pieter Palmers pieterp at joow.be
Tue Apr 10 12:34:21 UTC 2007


CC: Linux-Audio-Developers
CC: linux1394-devel

Spencer Russell wrote:
> Hey List,
> So my initial concerns that the HDA Intel audio card shares the IRQ
> with ohci1394 seem to have manifested themselves. Using the kernel
> option pci=noacpi initially put most of my devices on IRQ11, but then
> I was able to move them around using the BIOS. Unfortunately, whenever
> I change the IRQs around, HDA Intel, ohci1394, and uhci_hcd:usb2 all
> seem to move together, which to me indicates that there's some
> lower-level hardware connection between the three of them.
> 
> This means that I get loads of xruns if I try to run jackd with a
> firewire hard drive plugged in, which is a pain because I bought this
> enclosure specifically so that I would have access to the hard drive
> that has all my session files on it.

The current interrupt handler for ohci1394 is rather heavyweight. This 
could cause these problems. However, ohci1394 is open source, so we can 
solve that if we want to :).

You should try the new juju stack, and see if you experience the same 
issues there.

I'm also wondering why/whether threaded IRQ's can't be software-demuxed 
in the kernel. A very basic interrupt handler like this:

handle_irq() {
   switch(irq_source) {
     case HDA:
       set_my_prio(high);
       hda_handle_irq();
     case 1394:
       set_my_prio(low);
       1394_handle_irq();
   }
}

Ingo's threaded IRQ stuff does something like this, but I don't quite 
know the details of it. I'm under the impression that it allows setting 
the priority of the 'handle_irq()' but not of the dispatched IRQ handlers.

Greets,

Pieter



More information about the Linux-audio-dev mailing list