Sam said:
Sometime on, or about Sun, 05 Jun 2005 01:42:25 -0500, David Maynard wrote:
My MB (Asus A7N8XE-Dlx) has 5 PCI slots plus AGP. I had the sound card in
slot 4 before. Now it's in slot 5.
According to my documentation, slot 5 shares PCI INT A with slot 1 slot 4
(where the card used to be) shares PCI INT B with the Gigabyte LAN (which I
use). Slot 3 shares PCI INT C with the Serial ATA bus and Slot 2 shares PCI
INT D with the AGP slot.
So it looks like, for my board, the AGP card shares with slot 2. Slot 5
(which my sound card now uses) only shares with slot 1 (which is empty).
Device Manager shows that the sound card is using IRQ 16 all by itself.
Seems like they've done it a bit different than the 'typical' but there's
nothing that requires the 'typical'. It's purely at the mobo maker's
discretion.
It's a little more complicated though. Those are the wired shares but each
PCI slot has 4 interrupt lines that can be assigned to the 4, total,
available 'PCI' interrupts (with the limitation that things wired together
can't be separated.) So you have 'assigned' sharing as well as 'wired' sharing.
So one question is, where's the USB, and the legacy USB?
Also, the IRQ assignment you see in Windows for the audigy is the PCI
assignment and not the 'legacy support' (if it's there. I haven't done an
in-depth analysis of that card) assignments. That, if it's there, would be
on the 'traditional' IRQ DOS would expect.
All this reminds me of the "good old days" (pre-Windows 95) when you had to
juggle IRQ's and DMA's, plus jumpers on the cards, to make everything work.
I guess that I've gotten spoiled by "plug and pray" of modern systems.
It should because it's usually due to cards, sound in particular but your
USB as well, emulating the old DOS days for 'legacy' support.
The real problem is that legacy devices can't share IRQs. And that created
the IRQ shortage which PCI fixes by being able to share (and APIC). But
when emulating legacy you're back to non-share because no 'legacy app' is
going to try doing what wasn't possible... I.E. the app won't try to share
them so they can't be shared and you run out of IRQs just like the old days.
Btw, the reason for "can't share." PCI shares by the O.S. getting an ID
from the card that generated the interrupt so it can figure out who done
it. Legacy cards, however, have no ID to give. The IRQ *was* the 'ID'
directly linked to the driver assignment for the card. So, if two legacy
devices try to use the same IRQ there's no way to tell which one did it.