Peter Stuge wrote:
32663C_lx_gx_pciconfig.pdf page 46-49 seems to suggest that USB is always on INTD# IRQ11. This could be hardwired in LX/5536; GL packets from USB will always trigger IRQ11. Or worse they will always trigger PCI_INTD# meaning a well-designed board with 4 PCI slots, or a badly designed board with less slots will always need to share somewhere.
Just to clear up a few confusions in this thread:
Nothing is hard-wired, not even the INTD for USB. All of the interrupt routing in 5536 is configured in the IRQ mapper in the MDD. See section 5.8 of the 5536 datasheet. USB is just input 2 to the unrestricted Y mapper. Lots of other southbridges have similar second-level PIC mappers (XPICs, etc) for their on-board devices.
The "linkage" to INTD is done in VSA:
http://dev.laptop.org/git?p=geode-vsa;a=blob;f=sysmgr/topology.c;h=71d1fe421...
(note the Int Line value in that code is a flag for later: http://dev.laptop.org/git?p=geode-vsa;a=blob;f=legacy/cs5536.c;h=0bcf5f61e60... )
As said later in this thread, USB needs to be a well-behaved PCI device and needs a Int Pin and Int Line. When the PCI config space for LX/5536 was defined, we had to pick a pin for the internal devices. VSA (config space) has to have something defined. That was INTD for USB (similarly INTB for audio). USB just gets stuck with whatever Int Line goes with INTD.
Tom