Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 3 Feb 2009 22:29:54 -0600
From:      Dan Nelson <dnelson@allantgroup.com>
To:        patrick <gibblertron@gmail.com>
Cc:        freebsd-questions@freebsd.org
Subject:   Re: Control IRQ assignment?
Message-ID:  <20090204042954.GP75802@dan.emsphone.com>
In-Reply-To: <b043a4850902031556k73f3602ey9387f9386d02f1d4@mail.gmail.com>
References:  <b043a4850901271232q5abe8d86oc04e6bcd5c3eb6a0@mail.gmail.com> <20090127223453.GC63837@dan.emsphone.com> <b043a4850902031556k73f3602ey9387f9386d02f1d4@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help

In the last episode (Feb 03), patrick said:
> On Tue, Jan 27, 2009 at 2:34 PM, Dan Nelson <dnelson@allantgroup.com> wrote:
> > In the last episode (Jan 27), patrick said:
> >> I'm running FreeBSD 7.1 on a new Dell Inspiron 530s. I'm having an
> >> issue where the same IRQ is being assigned for multiple devices, and I
> >> have a device that absolutely needs its own IRQ.  The BIOS is very
> >> limiting, and won't allow me to disable shared IRQ assignment.  Some
> >> suggestions I've read about booting FreeBSD with ACPI hasn't been an
> >> option, because without it enabled, FreeBSD does not see the SATA
> >> controllers/disks, and thus won't boot.  Linux has a utility called
> >> irqbalance (http://www.irqbalance.org/) that seems like it could be
> >> promising, but of course it is Linux-specific.  Is there any way in
> >> FreeBSD that I can help the system decide which IRQs to assign to what?
> >
> > irqbalance doesn't do what you think it does; it simply pins interrupt
> > handlers on particular CPUs.  The only way to ensure that a given device
> > has an IRQ line to itself is to look at your motherboard documentation,
> > determine which IRQs are wired to which PCI slots, and rearrange your
> > cards to assign your troublesome device an IRQ of its own.  Some
> > motherboards let you assign onboard devices (NICs, parallel port, etc)
> > to different interrupts, too.

> Hmmm... This Dell motherboard is extremely limited in what can be
> controlled. There are seven USB controllers, and no way I can see to
> disable some of them. I wonder if there's some way I can take some
> blocks out of ACPI code captured from acpidump in order to have it not
> load/be aware of some of those USB controllers that are unneeded and
> using an IRQ I need for a voice card I want to use with Asterisk?

You should be able to add some hints to your /boot/loader.conf to tell the
kernel not to use those USB controllers.  Something like

hint.uhci.0.disabled=1
hint.ehci.0.disabled=1

repeated for whatever other devices get probed on that IRQ.

-- 
	Dan Nelson
	dnelson@allantgroup.com



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20090204042954.GP75802>