Subject: Re: PR/23700 and PCIBIOS_INTR_FIXUP
To: None <kochi@netbsd.org>
From: Masahiko KIMOTO <kimoto@ohnolab.org>
List: port-i386
Date: 04/07/2004 10:59:44
 > such that we can support better support of 'native' interrupt
 > router than compatible one.
 > 
 > If you have any problem with this change, please let me know.

I've checked out -current kernel.
It seems working without problem in my environment, Panasonic CF-W2.
Thanks.

Corresponding part of dmesg:
---------------------------------------------------------------------------
PCI IRQ Routing Table rev. 1.0 found at 0xfdf40, size 160 bytes (8 entries)
PCI Interrupt Router at 000:31:0 (Intel 82371FB PCI-to-ISA Bridge (PIIX) compati
ble)
PIR Entry 0:
        Bus: 0  Device: 30
                INTA: link 0x60 bitmap 0x0200
                INTB: link 0x61 bitmap 0x0200
                INTC: link 0x62 bitmap 0x0200
                INTD: link 0x63 bitmap 0x0008
PIR Entry 1:
        Bus: 1  Device: 1
                INTA: link 0x63 bitmap 0x0008
                INTB: link 0x00 bitmap 0x0000
                INTC: link 0x00 bitmap 0x0000
                INTD: link 0x00 bitmap 0x0000
PIR Entry 2:
        Bus: 1  Device: 4
                INTA: link 0x69 bitmap 0x0080
                INTB: link 0x63 bitmap 0x0008
                INTC: link 0x69 bitmap 0x0080
                INTD: link 0x63 bitmap 0x0008
PIR Entry 3:
        Bus: 1  Device: 5
                INTA: link 0x6a bitmap 0x0400
                INTB: link 0x68 bitmap 0x0020
                INTC: link 0x68 bitmap 0x0020
                INTD: link 0x00 bitmap 0x0000
PIR Entry 4:
        Bus: 0  Device: 0
                INTA: link 0x60 bitmap 0x0200
                INTB: link 0x61 bitmap 0x0200
                INTC: link 0x62 bitmap 0x0200
                INTD: link 0x63 bitmap 0x0008
PIR Entry 5:
        Bus: 0  Device: 31
                INTA: link 0x62 bitmap 0x0200
                INTB: link 0x61 bitmap 0x0200
                INTC: link 0x00 bitmap 0x0000
                INTD: link 0x00 bitmap 0x0000
PIR Entry 6:
        Bus: 0  Device: 29
                INTA: link 0x60 bitmap 0x0200
                INTB: link 0x63 bitmap 0x0008
                INTC: link 0x62 bitmap 0x0200
                INTD: link 0x6b bitmap 0x0800
PIR Entry 7:
        Bus: 0  Device: 2
                INTA: link 0x60 bitmap 0x0200
                INTB: link 0x00 bitmap 0x0000
                INTC: link 0x00 bitmap 0x0000
                INTD: link 0x00 bitmap 0x0000
pciintr_link_fixup: PIRQ 0x00 already connected to IRQ 9
pciintr_link_fixup: PIRQ 0x01 already connected to IRQ 9
pciintr_link_fixup: PIRQ 0x02 not connected, assigning IRQ 9
pciintr_link_fixup: PIRQ 0x03 already connected to IRQ 3
pciintr_link_fixup: PIRQ 0x05 already connected to IRQ 7
pciintr_link_fixup: PIRQ 0x06 not connected, assigning IRQ 10
pciintr_link_fixup: PIRQ 0x04 already connected to IRQ 5
pciintr_link_fixup: PIRQ 0x07 already connected to IRQ 11
pciintr_link_route: route of PIRQ 0x00 -> IRQ 9 preserved BIOS setting
pciintr_link_route: route of PIRQ 0x01 -> IRQ 9 preserved BIOS setting
pciintr_link_route: route of PIRQ 0x03 -> IRQ 3 preserved BIOS setting
pciintr_link_route: route of PIRQ 0x05 -> IRQ 7 preserved BIOS setting
pciintr_link_route: route of PIRQ 0x04 -> IRQ 5 preserved BIOS setting
pciintr_link_route: route of PIRQ 0x07 -> IRQ 11 preserved BIOS setting
------------------------------------------
  device vendor product pin PIRQ IRQ stage
------------------------------------------
000:02:0 0x8086 0x3582   A  0x00   9  0    already assigned
000:29:0 0x8086 0x24c2   A  0x00   9  0    already assigned
000:29:7 0x8086 0x24cd   D  0x07  11  0    already assigned
000:31:1 0x8086 0x24ca   A  0x02   9  1    fixed up
000:31:3 0x8086 0x24c3   B  0x01   9  0    already assigned
000:31:5 0x8086 0x24c5   B  0x01   9  0    already assigned
001:01:0 0x10ec 0x8139   A  0x03   3  0    already assigned
001:05:0 0x1180 0x0475   A  0x06  10  1    fixed up
001:05:1 0x1180 0x0575   B  0x04   5  0    already assigned
------------------------------------------
PCI fixup examining 8086:3580
PCI fixup examining 8086:3584
PCI fixup examining 8086:3585
PCI fixup examining 8086:3582
PCI fixup examining 8086:3582
PCI fixup examining 8086:24c2
PCI fixup examining 8086:24cd
PCI fixup examining 8086:2448
PCI fixup examining 10ec:8139
PCI fixup examining 1180:475
PCI bridge 1: primary 1, secondary 2, subordinate 2
PCI fixup examining 1180:575
PCI bridge 0: primary 0, secondary 1, subordinate 2
PCI fixup examining 8086:24cc
PCI fixup examining 8086:24ca
PCI fixup examining 8086:24c3
PCI fixup examining 8086:24c5
PCI bus #2 is the last bus

-----------------------------------------------------------------------------
Masahiko KIMOTO, Ph.D. <kimoto@ohnolab.org> - http://www.ohnolab.org/~kimoto
SOUM Corporation.
WIDE Project.