* PCI IRQ routing problem in 2.4.0
@ 2001-01-28 20:58 Robert Siemer
[not found] ` <200101290323.TAA05252@penguin.transmeta.com>
0 siblings, 1 reply; 17+ messages in thread
From: Robert Siemer @ 2001-01-28 20:58 UTC (permalink / raw)
To: Martin Mares; +Cc: linux-kernel
[-- Attachment #1: Type: Text/Plain, Size: 500 bytes --]
Hi Martin!
While moving from 2.4.0-test9 to 2.4.0 I got the following problem:
Linux thinks my usb controller is on IRQ 12 instead of IRQ 9.
The 'BIOS box' (on boot) still states that usb is on IRQ 9.
Under test9 pci-irq-behaviour was okay for me, but with 2.4.0 I cant
load the usb-modules (the kernel panics and reboots).
I attached the kernel output (with #define DEBUG) and 'lspci -vvx'.
I hope you can help me; otherwise I need a good pointer to pci
configuration specs...
Thanks,
Robert
[-- Attachment #2: lspci-vvx.2.4.0 --]
[-- Type: Text/Plain, Size: 6498 bytes --]
00:00.0 Host bridge: Silicon Integrated Systems [SiS] 5597 [SiS5582] (rev 02)
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort+ >SERR- <PERR-
Latency: 32 set
00: 39 10 97 55 07 00 00 22 02 00 00 06 00 20 00 00
10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00:01.0 ISA bridge: Silicon Integrated Systems [SiS] 85C503/5513 (rev 01)
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
Latency: 0 set
00: 39 10 08 00 07 00 00 02 01 00 01 06 00 00 80 00
10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00:01.1 IDE interface: Silicon Integrated Systems [SiS] 5513 [IDE] (rev d0) (prog-if 8a [Master SecP PriP])
Control: I/O+ Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR-
Interrupt: pin A routed to IRQ 12
Region 0: I/O ports at <ignored>
Region 1: I/O ports at <ignored>
Region 2: I/O ports at <ignored>
Region 3: I/O ports at <ignored>
Region 4: I/O ports at d000 [size=16]
00: 39 10 13 55 01 00 00 00 d0 8a 01 01 00 20 80 00
10: 01 e4 00 00 01 e0 00 00 01 d8 00 00 01 d4 00 00
20: 01 d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00
30: 00 00 00 00 00 00 00 00 00 00 00 00 0c 01 00 00
00:01.2 USB Controller: Silicon Integrated Systems [SiS] 7001 (rev 10) (prog-if 10 [OHCI])
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR- FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
Latency: 32 set, cache line size 08
Interrupt: pin A routed to IRQ 12
Region 0: Memory at e5000000 (32-bit, non-prefetchable) [size=4K]
00: 39 10 01 70 17 00 80 02 10 10 03 0c 08 20 80 00
10: 00 00 00 e5 00 00 00 00 00 00 00 00 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
30: 00 00 00 00 00 00 00 00 00 00 00 00 09 01 00 00
00:09.0 Multimedia video controller: Brooktree Corporation Bt878 (rev 02)
Subsystem: Hauppage computer works Inc.: Unknown device 13eb
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
Latency: 16 min, 40 max, 32 set
Interrupt: pin A routed to IRQ 11
Region 0: Memory at e7800000 (32-bit, prefetchable) [size=4K]
00: 9e 10 6e 03 06 00 80 02 02 00 00 04 00 20 80 00
10: 08 00 80 e7 00 00 00 00 00 00 00 00 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 70 00 eb 13
30: 00 00 00 00 00 00 00 00 00 00 00 00 0b 01 10 28
00:09.1 Multimedia controller: Brooktree Corporation Bt878 (rev 02)
Subsystem: Hauppage computer works Inc.: Unknown device 13eb
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
Latency: 4 min, 255 max, 32 set
Interrupt: pin A routed to IRQ 11
Region 0: Memory at e7000000 (32-bit, prefetchable) [size=4K]
00: 9e 10 78 08 06 00 80 02 02 00 80 04 00 20 80 00
10: 08 00 00 e7 00 00 00 00 00 00 00 00 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 70 00 eb 13
30: 00 00 00 00 00 00 00 00 00 00 00 00 0b 01 04 ff
00:0a.0 Ethernet controller: Winbond Electronics Corp W89C940 (rev 0b)
Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
Interrupt: pin A routed to IRQ 10
Region 0: I/O ports at b800 [size=32]
00: 50 10 40 09 03 00 80 02 0b 00 00 02 00 00 00 00
10: 01 b8 00 00 00 00 00 00 00 00 00 00 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
30: 00 00 00 00 00 00 00 00 00 00 00 00 0a 01 00 00
00:0b.0 VGA compatible controller: S3 Inc. 86c968 [Vision 968 VRAM] rev 0 (prog-if 00 [VGA])
Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping+ SERR- FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
Interrupt: pin A routed to IRQ 14
Region 0: Memory at 10000000 (32-bit, non-prefetchable) [size=64M]
Expansion ROM at <unassigned> [disabled] [size=64K]
00: 33 53 f0 88 83 00 00 02 00 00 00 03 00 00 00 00
10: 00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
30: 00 00 00 00 00 00 00 00 00 00 00 00 0e 01 00 00
00:0c.0 SCSI storage controller: Symbios Logic Inc. (formerly NCR) 53c875 (rev 03)
Subsystem: Tekram Technology Co.,Ltd. DC390F Ultra Wide SCSI Controller
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr+ Stepping- SERR- FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
Latency: 17 min, 64 max, 32 set, cache line size 08
Interrupt: pin A routed to IRQ 12
Region 0: I/O ports at b400 [size=256]
Region 1: Memory at e1800000 (32-bit, non-prefetchable) [size=256]
Region 2: Memory at e1000000 (32-bit, non-prefetchable) [size=4K]
Expansion ROM at <unassigned> [disabled] [size=64K]
00: 00 10 0f 00 57 00 00 02 03 00 00 01 08 20 00 00
10: 01 b4 00 00 00 00 80 e1 00 00 00 e1 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 e1 1d 04 39
30: 00 00 00 00 00 00 00 00 00 00 00 00 0c 01 11 40
00:13.0 VGA compatible controller: Silicon Integrated Systems [SiS] 5597/5598 VGA (rev 65) (prog-if 00 [VGA])
Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
Region 0: Memory at e6000000 (32-bit, prefetchable) [disabled] [size=4M]
Region 1: Memory at e0800000 (32-bit, non-prefetchable) [disabled] [size=64K]
Region 2: I/O ports at b000 [disabled] [size=128]
Expansion ROM at e5ff0000 [disabled] [size=32K]
00: 39 10 00 02 00 00 00 02 65 00 00 03 00 00 00 00
10: 08 00 00 e6 00 00 80 e0 01 b0 00 00 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
30: 00 00 ff e5 00 00 00 00 00 00 00 00 00 00 00 00
[-- Attachment #3: lspci-vvx.2.4.0-test9 --]
[-- Type: Text/Plain, Size: 6507 bytes --]
00:00.0 Host bridge: Silicon Integrated Systems [SiS] 5597 [SiS5582] (rev 02)
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort+ >SERR- <PERR-
Latency: 32 set
00: 39 10 97 55 07 00 00 22 02 00 00 06 00 20 00 00
10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00:01.0 ISA bridge: Silicon Integrated Systems [SiS] 85C503/5513 (rev 01)
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
Latency: 0 set
00: 39 10 08 00 07 00 00 02 01 00 01 06 00 00 80 00
10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00:01.1 IDE interface: Silicon Integrated Systems [SiS] 5513 [IDE] (rev d0) (prog-if 8f [Master SecP SecO PriP PriO])
Control: I/O+ Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR-
Interrupt: pin A routed to IRQ 12
Region 0: I/O ports at <ignored>
Region 1: I/O ports at <ignored>
Region 2: I/O ports at <ignored>
Region 3: I/O ports at <ignored>
Region 4: I/O ports at d000 [size=16]
00: 39 10 13 55 01 00 00 00 d0 8f 01 01 00 20 80 00
10: 01 e4 00 00 01 e0 00 00 01 d8 00 00 01 d4 00 00
20: 01 d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00
30: 00 00 00 00 00 00 00 00 00 00 00 00 0c 01 00 00
00:01.2 USB Controller: Silicon Integrated Systems [SiS] 7001 (rev 10) (prog-if 10 [OHCI])
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR- FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
Latency: 32 set, cache line size 08
Interrupt: pin A routed to IRQ 9
Region 0: Memory at e5000000 (32-bit, non-prefetchable) [size=4K]
00: 39 10 01 70 17 00 80 02 10 10 03 0c 08 20 80 00
10: 00 00 00 e5 00 00 00 00 00 00 00 00 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
30: 00 00 00 00 00 00 00 00 00 00 00 00 09 01 00 00
00:09.0 Multimedia video controller: Brooktree Corporation Bt878 (rev 02)
Subsystem: Hauppage computer works Inc.: Unknown device 13eb
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
Latency: 16 min, 40 max, 32 set
Interrupt: pin A routed to IRQ 11
Region 0: Memory at e7800000 (32-bit, prefetchable) [size=4K]
00: 9e 10 6e 03 06 00 80 02 02 00 00 04 00 20 80 00
10: 08 00 80 e7 00 00 00 00 00 00 00 00 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 70 00 eb 13
30: 00 00 00 00 00 00 00 00 00 00 00 00 0b 01 10 28
00:09.1 Multimedia controller: Brooktree Corporation Bt878 (rev 02)
Subsystem: Hauppage computer works Inc.: Unknown device 13eb
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
Latency: 4 min, 255 max, 32 set
Interrupt: pin A routed to IRQ 11
Region 0: Memory at e7000000 (32-bit, prefetchable) [size=4K]
00: 9e 10 78 08 06 00 80 02 02 00 80 04 00 20 80 00
10: 08 00 00 e7 00 00 00 00 00 00 00 00 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 70 00 eb 13
30: 00 00 00 00 00 00 00 00 00 00 00 00 0b 01 04 ff
00:0a.0 Ethernet controller: Winbond Electronics Corp W89C940 (rev 0b)
Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
Interrupt: pin A routed to IRQ 10
Region 0: I/O ports at b800 [size=32]
00: 50 10 40 09 03 00 80 02 0b 00 00 02 00 00 00 00
10: 01 b8 00 00 00 00 00 00 00 00 00 00 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
30: 00 00 00 00 00 00 00 00 00 00 00 00 0a 01 00 00
00:0b.0 VGA compatible controller: S3 Inc. 86c968 [Vision 968 VRAM] rev 0 (prog-if 00 [VGA])
Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping+ SERR- FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
Interrupt: pin A routed to IRQ 14
Region 0: Memory at 10000000 (32-bit, non-prefetchable) [size=64M]
Expansion ROM at <unassigned> [disabled] [size=64K]
00: 33 53 f0 88 83 00 00 02 00 00 00 03 00 00 00 00
10: 00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
30: 00 00 00 00 00 00 00 00 00 00 00 00 0e 01 00 00
00:0c.0 SCSI storage controller: Symbios Logic Inc. (formerly NCR) 53c875 (rev 03)
Subsystem: Tekram Technology Co.,Ltd. DC390F Ultra Wide SCSI Controller
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr+ Stepping- SERR- FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
Latency: 17 min, 64 max, 32 set, cache line size 08
Interrupt: pin A routed to IRQ 12
Region 0: I/O ports at b400 [size=256]
Region 1: Memory at e1800000 (32-bit, non-prefetchable) [size=256]
Region 2: Memory at e1000000 (32-bit, non-prefetchable) [size=4K]
Expansion ROM at <unassigned> [disabled] [size=64K]
00: 00 10 0f 00 57 00 00 02 03 00 00 01 08 20 00 00
10: 01 b4 00 00 00 00 80 e1 00 00 00 e1 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 e1 1d 04 39
30: 00 00 00 00 00 00 00 00 00 00 00 00 0c 01 11 40
00:13.0 VGA compatible controller: Silicon Integrated Systems [SiS] 5597/5598 VGA (rev 65) (prog-if 00 [VGA])
Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
Region 0: Memory at e6000000 (32-bit, prefetchable) [disabled] [size=4M]
Region 1: Memory at e0800000 (32-bit, non-prefetchable) [disabled] [size=64K]
Region 2: I/O ports at b000 [disabled] [size=128]
Expansion ROM at e5ff0000 [disabled] [size=32K]
00: 39 10 00 02 00 00 00 02 65 00 00 03 00 00 00 00
10: 08 00 00 e6 00 00 80 e0 01 b0 00 00 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
30: 00 00 ff e5 00 00 00 00 00 00 00 00 00 00 00 00
[-- Attachment #4: dmesg.2.4.0.debug --]
[-- Type: Text/Plain, Size: 13247 bytes --]
Linux version 2.4.0 (root@panorama.hadiko.de) (gcc version egcs-2.91.66 19990314/Linux (egcs-1.1.2 release)) #4 Sun Jan 28 19:03:05 CET 2001
BIOS-provided physical RAM map:
BIOS-e820: 000000000009fc00 @ 0000000000000000 (usable)
BIOS-e820: 0000000000000400 @ 000000000009fc00 (reserved)
BIOS-e820: 0000000000010000 @ 00000000000f0000 (reserved)
BIOS-e820: 0000000007f00000 @ 0000000000100000 (usable)
BIOS-e820: 0000000000010000 @ 00000000ffff0000 (reserved)
On node 0 totalpages: 32768
zone(0): 4096 pages.
zone(1): 28672 pages.
zone(2): 0 pages.
Kernel command line: BOOT_IMAGE=lnx ro root=801
Initializing CPU#0
Detected 334.090 MHz processor.
Console: colour VGA+ 80x25
Calibrating delay loop... 666.82 BogoMIPS
Memory: 126884k/131072k available (894k kernel code, 3800k reserved, 332k data, 188k init, 0k highmem)
Dentry-cache hash table entries: 16384 (order: 5, 131072 bytes)
Buffer-cache hash table entries: 8192 (order: 3, 32768 bytes)
Page-cache hash table entries: 32768 (order: 5, 131072 bytes)
Inode-cache hash table entries: 8192 (order: 4, 65536 bytes)
VFS: Diskquotas version dquot_6.4.0 initialized
CPU: Before vendor init, caps: 008001bf 808009bf 00000000, vendor = 2
CPU: L1 I Cache: 32K (32 bytes/line), D cache 32K (32 bytes/line)
CPU: After vendor init, caps: 008001bf 808009bf 00000000 00000000
CPU: After generic, caps: 008001bf 808009bf 00000000 00000000
CPU: Common caps: 008001bf 808009bf 00000000 00000000
CPU: AMD-K6(tm) 3D processor stepping 00
Checking 'hlt' instruction... OK.
POSIX conformance testing by UNIFIX
mtrr: v1.37 (20001109) Richard Gooch (rgooch@atnf.csiro.au)
mtrr: detected mtrr type: none
PCI: BIOS32 Service Directory structure at 0xc00f9a00
PCI: BIOS32 Service Directory entry at 0xf04a0
PCI: BIOS probe returned s=00 hw=11 ver=02.10 l=00
PCI: PCI BIOS revision 2.10 entry at 0xf04d0, last bus=0
PCI: Using configuration type 1
PCI: Probing PCI hardware
Scanning bus 00
Found 00:00 [1039/5597] 000600 00
PCI: Calling quirk c023a2d0 for 00:00.0
PCI: Calling quirk c023a378 for 00:00.0
PCI: Setting max latency to 32
Found 00:08 [1039/0008] 000601 00
PCI: Calling quirk c023a2d0 for 00:01.0
Found 00:09 [1039/5513] 000101 00
PCI: Calling quirk c023a328 for 00:01.1
PCI: IDE base address trash cleared for 00:01.1
PCI: Calling quirk c023a2d0 for 00:01.1
PCI: IDE base address fixup for 00:01.1
Found 00:0a [1039/7001] 000c03 00
PCI: Calling quirk c023a2d0 for 00:01.2
Found 00:48 [109e/036e] 000400 00
PCI: Calling quirk c023a2d0 for 00:09.0
Found 00:49 [109e/0878] 000480 00
PCI: Calling quirk c023a2d0 for 00:09.1
Found 00:50 [1050/0940] 000200 00
PCI: Calling quirk c023a2d0 for 00:0a.0
Found 00:58 [5333/88f0] 000300 00
PCI: Calling quirk c023a2d0 for 00:0b.0
PCI: Calling quirk c0244524 for 00:0b.0
Found 00:60 [1000/000f] 000100 00
PCI: Calling quirk c023a2d0 for 00:0c.0
Found 00:98 [1039/0200] 000300 00
PCI: Calling quirk c023a2d0 for 00:13.0
Fixups for bus 00
PCI: Scanning for ghost devices on bus 0
Bus scan for 00 returning with max=00
PCI: IRQ init
PCI: Interrupt Routing Table found at 0xc00f0a50
00:0c slot=01 0:01/1eb8 1:02/1eb8 2:03/1eb8 3:04/1eb8
00:0b slot=02 0:02/1eb8 1:03/1eb8 2:04/1eb8 3:01/1eb8
00:0a slot=03 0:03/1eb8 1:04/1eb8 2:01/1eb8 3:02/1eb8
00:09 slot=04 0:04/1eb8 1:01/1eb8 2:02/1eb8 3:03/1eb8
00:01 slot=00 0:01/1eb8 1:02/1eb8 2:03/1eb8 3:04/1eb8
00:13 slot=00 0:01/1eb8 1:02/1eb8 2:03/1eb8 3:04/1eb8
PCI: Using IRQ router SIS [1039/0008] at 00:01.0
PCI: IRQ fixup
PCI: Allocating resources
PCI: Resource e5000000-e5000fff (f=200, d=0, p=0)
PCI: Resource e7800000-e7800fff (f=1208, d=0, p=0)
PCI: Resource e7000000-e7000fff (f=1208, d=0, p=0)
PCI: Resource 0000b800-0000b81f (f=101, d=0, p=0)
PCI: Resource 0000b400-0000b4ff (f=101, d=0, p=0)
PCI: Resource e1800000-e18000ff (f=200, d=0, p=0)
PCI: Resource e1000000-e1000fff (f=200, d=0, p=0)
PCI: Resource 0000d000-0000d00f (f=101, d=1, p=1)
PCI: Resource e6000000-e63fffff (f=1208, d=1, p=1)
PCI: Resource e0800000-e080ffff (f=200, d=1, p=1)
PCI: Resource 0000b000-0000b07f (f=101, d=1, p=1)
got res[10000000:13ffffff] for resource 0 of S3 Inc. 86c968 [Vision 968 VRAM] rev 0
PCI: Sorting device list...
PCI: Calling quirk c02444a4 for 00:00.0
Disabling direct PCI/PCI transfers.
Linux NET4.0 for Linux 2.4
Based upon Swansea University Computer Society NET3.039
Initializing RT netlink socket
DMI 2.0 present.
30 structures occupying 941 bytes.
DMI table at 0x000F51DA.
BIOS Vendor: Award Software, Inc.
BIOS Version: #401A0-0106xv
BIOS Release: 01/20/98
System Vendor: System Manufacturer.
Product Name: System Name.
Version System Version.
Serial Number SYS-1234567890.
Board Vendor: ASUSTeK Computer INC..
Board Name: SP97_XV.
Board Version: REV 1.XX.
Asset Tag: Asset-1234567890.
Starting kswapd v1.8
0x378: FIFO is 16 bytes
0x378: writeIntrThreshold is 16
0x378: readIntrThreshold is 16
0x378: PWord is 8 bits
0x378: Interrupts are ISA-Pulses
0x378: ECP port cfgA=0x10 cfgB=0x4b
0x378: ECP settings irq=7 dma=3
parport0: PC-style at 0x378 (0x778) [PCSPP,TRISTATE,COMPAT,EPP,ECP]
parport0: irq 7 detected
parport0: cpp_daisy: aa5500ff(38)
parport0: assign_addrs: aa5500ff(38)
parport0: cpp_daisy: aa5500ff(38)
parport0: assign_addrs: aa5500ff(38)
parport0: No more nibble data (0 bytes)
parport1: PC-style at 0x278 [PCSPP]
parport1: cpp_daisy: aa5500ff(38)
parport1: assign_addrs: aa5500ff(38)
parport1: cpp_daisy: aa5500ff(38)
parport1: assign_addrs: aa5500ff(38)
pty: 256 Unix98 ptys configured
lp0: using parport0 (polling).
lp1: using parport1 (polling).
SCSI subsystem driver Revision: 1.00
sym53c8xx: at PCI bus 0, device 12, function 0
sym53c8xx: setting PCI_COMMAND_PARITY...(fix-up)
sym53c8xx: 53c875 detected with Tekram NVRAM
sym53c875-0: rev 0x3 on pci bus 0 device 12 function 0 irq 12
sym53c875-0: Tekram format NVRAM, ID 7, Fast-20, Parity Checking
sym53c875-0: on-chip RAM at 0xe1000000
sym53c875-0: restart (scsi reset).
sym53c875-0: Downloading SCSI SCRIPTS.
scsi0 : sym53c8xx - version 1.6b
Vendor: IBM Model: FIREBALL1280S !# Rev: 630P
Type: Direct-Access ANSI SCSI revision: 02
Vendor: CONNER Model: CFP1080S Rev: 4649
Type: Direct-Access ANSI SCSI revision: 02
Vendor: PLEXTOR Model: CD-ROM PX-40TS Rev: 1.11
Type: CD-ROM ANSI SCSI revision: 02
Vendor: COMPAQ Model: CD-ROM CR-503BCQ Rev: 1.1c
Type: CD-ROM ANSI SCSI revision: 02
Vendor: SEAGATE Model: ST39140W Rev: 1281
Type: Direct-Access ANSI SCSI revision: 02
Vendor: SEAGATE Model: ST39140W Rev: 1281
Type: Direct-Access ANSI SCSI revision: 02
Vendor: SONY Model: SDT-10000 Rev: 0101
Type: Sequential-Access ANSI SCSI revision: 02
sym53c875-0-<1,0>: tagged command queue depth set to 8
sym53c875-0-<8,0>: tagged command queue depth set to 8
sym53c875-0-<9,0>: tagged command queue depth set to 8
Detected scsi tape st0 at scsi0, channel 0, id 10, lun 0
st: bufsize 32768, wrt 30720, max init. buffers 4, s/g segs 16.
Detected scsi disk sda at scsi0, channel 0, id 0, lun 0
Detected scsi disk sdb at scsi0, channel 0, id 1, lun 0
Detected scsi disk sdc at scsi0, channel 0, id 8, lun 0
Detected scsi disk sdd at scsi0, channel 0, id 9, lun 0
sym53c875-0-<0,0>: sync msgout: 1-3-1-c-10.
sym53c875-0-<0,0>: sync msg in: 1-3-1-19-8.
sym53c875-0-<0,0>: sync: per=25 scntl3=0x30 scntl4=0x0 ofs=8 fak=0 chg=0.
sym53c875-0-<0,*>: FAST-10 SCSI 10.0 MB/s (100 ns, offset 8)
sym53c875-0-<0,0>: sync msgout: 1-3-1-c-10.
sym53c875-0-<0,0>: sync msg in: 1-3-1-19-8.
sym53c875-0-<0,0>: sync: per=25 scntl3=0x30 scntl4=0x0 ofs=8 fak=0 chg=0.
SCSI device sda: 2503872 512-byte hdwr sectors (1282 MB)
Partition check:
/dev/scsi/host0/bus0/target0/lun0: p1 p2
sym53c875-0-<1,0>: sync msgout: 1-3-1-c-10.
sym53c875-0-<1,0>: sync msg in: 1-3-1-19-f.
sym53c875-0-<1,0>: sync: per=25 scntl3=0x30 scntl4=0x0 ofs=15 fak=0 chg=0.
sym53c875-0-<1,*>: FAST-10 SCSI 10.0 MB/s (100 ns, offset 15)
sym53c875-0-<1,0>: sync msgout: 1-3-1-c-10.
sym53c875-0-<1,0>: sync msg in: 1-3-1-19-f.
sym53c875-0-<1,0>: sync: per=25 scntl3=0x30 scntl4=0x0 ofs=15 fak=0 chg=0.
SCSI device sdb: 2110812 512-byte hdwr sectors (1081 MB)
/dev/scsi/host0/bus0/target1/lun0: p1 p2
sym53c875-0-<8,0>: wide msgout: 1-2-3-1.
sym53c875-0-<8,0>: wide msgin: 1-2-3-1.
sym53c875-0-<8,0>: wide: wide=1 chg=0.
sym53c875-0-<8,0>: wide msgout: 1-2-3-1.
sym53c875-0-<8,0>: wide msgin: 1-2-3-1.
sym53c875-0-<8,0>: wide: wide=1 chg=0.
sym53c875-0-<8,0>: sync msgout: 1-3-1-c-10.
sym53c875-0-<8,0>: sync msg in: 1-3-1-c-f.
sym53c875-0-<8,0>: sync: per=12 scntl3=0x90 scntl4=0x0 ofs=15 fak=0 chg=0.
sym53c875-0-<8,*>: FAST-20 WIDE SCSI 40.0 MB/s (50 ns, offset 15)
SCSI device sdc: 17783240 512-byte hdwr sectors (9105 MB)
/dev/scsi/host0/bus0/target8/lun0: p1
sym53c875-0-<9,0>: wide msgout: 1-2-3-1.
sym53c875-0-<9,0>: wide msgin: 1-2-3-1.
sym53c875-0-<9,0>: wide: wide=1 chg=0.
sym53c875-0-<9,0>: wide msgout: 1-2-3-1.
sym53c875-0-<9,0>: wide msgin: 1-2-3-1.
sym53c875-0-<9,0>: wide: wide=1 chg=0.
sym53c875-0-<9,0>: sync msgout: 1-3-1-c-10.
sym53c875-0-<9,0>: sync msg in: 1-3-1-c-f.
sym53c875-0-<9,0>: sync: per=12 scntl3=0x90 scntl4=0x0 ofs=15 fak=0 chg=0.
sym53c875-0-<9,*>: FAST-20 WIDE SCSI 40.0 MB/s (50 ns, offset 15)
SCSI device sdd: 17783240 512-byte hdwr sectors (9105 MB)
/dev/scsi/host0/bus0/target9/lun0: p1
<ACI 0x07, id 6d/43 "m/C", (PCM20 radio)> at 0x344
aci: READYFLAG needed 785911 polls.
aci: READYFLAG needed 835044 polls.
NET4: Linux TCP/IP 1.0 for NET4.0
IP Protocols: ICMP, UDP, TCP, IGMP
IP: routing cache hash table of 1024 buckets, 8Kbytes
TCP: Hash tables configured (established 8192 bind 8192)
Linux IP multicast router 0.06 plus PIM-SM
NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.
devfs: v0.102 (20000622) Richard Gooch (rgooch@atnf.csiro.au)
devfs: boot_options: 0x0
VFS: Mounted root (ext2 filesystem) readonly.
Mounted devfs on /dev
Freeing unused kernel memory: 188k freed
Adding Swap: 132072k swap-space (priority -1)
RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize
Linux video capture interface: v1.00
i2c-core.o: i2c core module
i2c-algo-bit.o: i2c bit algorithm module
bttv: driver version 0.7.50 loaded
bttv: using 2 buffers with 2080k (4160k total) for capture
BT848 and your chipset may not work together.
bttv: Bt8xx card found (0).
IRQ for 00:09.0:0 -> PIRQ 04, mask 1eb8, excl 0000 -> newirq=11 -> got IRQ 7
IRQ routing conflict in pirq table! Try 'pci=autoirq'
bttv0: Bt878 (rev 2) at 00:09.0, irq: 11, latency: 32, memory: 0xe7800000
bttv0: subsystem: 0070:13eb => Hauppauge WinTV => card=10
bttv0: model: BT878(Hauppauge new (bt878)) [autodetected]
bttv0: Hauppauge msp34xx: reset line init
i2c-core.o: adapter bt848 #0 registered as adapter 0.
bttv0: Hauppauge eeprom: model=37284, tuner=Philips FM1216 (5)
bttv0: i2c: checking for MSP34xx @ 0x80... found
i2c-core.o: driver i2c msp3400 driver registered.
msp34xx: init: chip=MSP3410D-B4, has NICAM support
msp3410: daemon started
bttv0: i2c attach [MSP3410D-B4]
i2c-core.o: client [MSP3410D-B4] registered to adapter [bt848 #0](pos. 0).
bttv0: i2c: checking for TDA9875 @ 0xb0... not found
bttv0: i2c: checking for TDA7432 @ 0x8a... not found
tvaudio: TV audio decoder + audio/video mux driver
tvaudio: known chips: tda9840,tda9873h,tda9850,tda9855,tea6300,tea6420,tda8425,pic16c54 (PV951)
i2c-core.o: driver generic i2c audio driver registered.
bttv0: i2c attach [tda9840]
i2c-core.o: client [tda9840] registered to adapter [bt848 #0](pos. 1).
i2c-core.o: driver i2c TV tuner driver registered.
tuner: chip found @ 0x61
bttv0: i2c attach [Philips PAL]
i2c-core.o: client [Philips PAL] registered to adapter [bt848 #0](pos. 2).
inserting floppy driver for 2.4.0
Floppy drive(s): fd0 is 1.44M
FDC 0 is a post-1991 82077
Detected scsi CD-ROM sr0 at scsi0, channel 0, id 4, lun 0
Detected scsi CD-ROM sr1 at scsi0, channel 0, id 5, lun 0
sym53c875-0-<4,0>: sync msgout: 1-3-1-c-10.
sym53c875-0-<4,0>: sync msg in: 1-3-1-c-f.
sym53c875-0-<4,0>: sync: per=12 scntl3=0x90 scntl4=0x0 ofs=15 fak=0 chg=0.
sym53c875-0-<4,*>: FAST-20 SCSI 20.0 MB/s (50 ns, offset 15)
sym53c875-0-<4,0>: sync msgout: 1-3-1-c-10.
sym53c875-0-<4,0>: sync msg in: 1-3-1-c-f.
sym53c875-0-<4,0>: sync: per=12 scntl3=0x90 scntl4=0x0 ofs=15 fak=0 chg=0.
sym53c875-0-<4,0>: sync msgout: 1-3-1-c-10.
sym53c875-0-<4,0>: sync msg in: 1-3-1-c-f.
sym53c875-0-<4,0>: sync: per=12 scntl3=0x90 scntl4=0x0 ofs=15 fak=0 chg=0.
Uniform CD-ROM driver Revision: 3.12
sym53c875-0-<5,*>: target did not report SYNC.
sym53c875-0-<5,*>: target did not report SYNC.
Uniform Multi-Platform E-IDE driver Revision: 6.31
ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx
SIS5513: IDE controller on PCI bus 00 dev 09
PCI: Enabling device 00:01.1 (0000 -> 0001)
IRQ for 00:01.1:0 -> PIRQ 01, mask 1eb8, excl 0000 -> newirq=12 -> assigning IRQ 12 ... OK
PCI: Assigned IRQ 12 for device 00:01.1
PCI: The same IRQ used for device 00:01.2
PCI: The same IRQ used for device 00:0c.0
SIS5513: chipset revision 208
SIS5513: not 100% native mode: will probe irqs later
SIS5513: neither IDE port enabled (BIOS)
[-- Attachment #5: dmesg.2.4.0-test9 --]
[-- Type: Text/Plain, Size: 9739 bytes --]
Linux version 2.4.0-test9 (root@panorama.hadiko.de) (gcc version egcs-2.91.66 19990314/Linux (egcs-1.1.2 release)) #1 Mon Oct 16 16:28:46 CEST 2000
BIOS-provided physical RAM map:
BIOS-e820: 000000000009fc00 @ 0000000000000000 (usable)
BIOS-e820: 0000000000000400 @ 000000000009fc00 (reserved)
BIOS-e820: 0000000000010000 @ 00000000000f0000 (reserved)
BIOS-e820: 0000000007f00000 @ 0000000000100000 (usable)
BIOS-e820: 0000000000010000 @ 00000000ffff0000 (reserved)
Scan SMP from c0000000 for 1024 bytes.
Scan SMP from c009fc00 for 1024 bytes.
Scan SMP from c00f0000 for 65536 bytes.
Scan SMP from c009fc00 for 4096 bytes.
On node 0 totalpages: 32768
zone(0): 4096 pages.
zone(1): 28672 pages.
zone(2): 0 pages.
mapped APIC to ffffe000 (01223000)
Kernel command line: BOOT_IMAGE=old ro root=801
Initializing CPU#0
Detected 334.089 MHz processor.
Console: colour VGA+ 80x25
Calibrating delay loop... 666.83 BogoMIPS
Memory: 126952k/131072k available (1093k kernel code, 3732k reserved, 64k data, 188k init, 0k highmem)
Dentry-cache hash table entries: 16384 (order: 5, 131072 bytes)
Buffer-cache hash table entries: 8192 (order: 3, 32768 bytes)
Page-cache hash table entries: 32768 (order: 5, 131072 bytes)
Inode-cache hash table entries: 8192 (order: 4, 65536 bytes)
VFS: Diskquotas version dquot_6.4.0 initialized
CPU: L1 I Cache: 32K L1 D Cache: 32K (32 bytes/line)
CPU: AMD-K6(tm) 3D processor stepping 00
Checking 'hlt' instruction... OK.
POSIX conformance testing by UNIFIX
PCI: PCI BIOS revision 2.10 entry at 0xf04d0, last bus=0
PCI: Using configuration type 1
PCI: Probing PCI hardware
PCI: Using IRQ router default [1039/0008] at 00:01.0
Disabling direct PCI/PCI transfers.
Linux NET4.0 for Linux 2.4
Based upon Swansea University Computer Society NET3.039
NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.
NET4: Linux TCP/IP 1.0 for NET4.0
IP Protocols: ICMP, UDP, TCP, IGMP
IP: routing cache hash table of 1024 buckets, 8Kbytes
TCP: Hash tables configured (established 8192 bind 8192)
Linux IP multicast router 0.06 plus PIM-SM
Initializing RT netlink socket
Starting kswapd v1.8
0x378: FIFO is 16 bytes
0x378: writeIntrThreshold is 16
0x378: readIntrThreshold is 16
0x378: PWord is 8 bits
0x378: Interrupts are ISA-Pulses
0x378: ECP port cfgA=0x10 cfgB=0x4b
0x378: ECP settings irq=7 dma=3
parport0: PC-style at 0x378 (0x778) [PCSPP,TRISTATE,COMPAT,EPP,ECP]
parport0: irq 7 detected
parport0: cpp_daisy: aa5500ff(38)
parport0: assign_addrs: aa5500ff(38)
parport0: cpp_daisy: aa5500ff(38)
parport0: assign_addrs: aa5500ff(38)
parport0: No more nibble data (0 bytes)
parport1: PC-style at 0x278 [PCSPP]
parport1: cpp_daisy: aa5500ff(38)
parport1: assign_addrs: aa5500ff(38)
parport1: cpp_daisy: aa5500ff(38)
parport1: assign_addrs: aa5500ff(38)
pty: 256 Unix98 ptys configured
lp0: using parport0 (polling).
lp1: using parport1 (polling).
SCSI subsystem driver Revision: 1.00
sym53c8xx: at PCI bus 0, device 12, function 0
sym53c8xx: setting PCI_COMMAND_PARITY...(fix-up)
sym53c8xx: 53c875 detected with Tekram NVRAM
sym53c875-0: rev 0x3 on pci bus 0 device 12 function 0 irq 12
sym53c875-0: Tekram format NVRAM, ID 7, Fast-20, Parity Checking
sym53c875-0: on-chip RAM at 0xe1000000
sym53c875-0: restart (scsi reset).
sym53c875-0: Downloading SCSI SCRIPTS.
scsi0 : sym53c8xx - version 1.6b
Vendor: IBM Model: FIREBALL1280S !# Rev: 630P
Type: Direct-Access ANSI SCSI revision: 02
Vendor: CONNER Model: CFP1080S Rev: 4649
Type: Direct-Access ANSI SCSI revision: 02
Vendor: PLEXTOR Model: CD-ROM PX-40TS Rev: 1.11
Type: CD-ROM ANSI SCSI revision: 02
Vendor: COMPAQ Model: CD-ROM CR-503BCQ Rev: 1.1c
Type: CD-ROM ANSI SCSI revision: 02
Vendor: SEAGATE Model: ST39140W Rev: 1281
Type: Direct-Access ANSI SCSI revision: 02
Vendor: SEAGATE Model: ST39140W Rev: 1281
Type: Direct-Access ANSI SCSI revision: 02
Vendor: SONY Model: SDT-10000 Rev: 0101
Type: Sequential-Access ANSI SCSI revision: 02
sym53c875-0-<1,0>: tagged command queue depth set to 8
sym53c875-0-<8,0>: tagged command queue depth set to 8
sym53c875-0-<9,0>: tagged command queue depth set to 8
Detected scsi tape st0 at scsi0, channel 0, id 10, lun 0
st: bufsize 32768, wrt 30720, max init. buffers 4, s/g segs 16.
Detected scsi disk sda at scsi0, channel 0, id 0, lun 0
Detected scsi disk sdb at scsi0, channel 0, id 1, lun 0
Detected scsi disk sdc at scsi0, channel 0, id 8, lun 0
Detected scsi disk sdd at scsi0, channel 0, id 9, lun 0
sym53c875-0-<0,0>: sync msgout: 1-3-1-c-10.
sym53c875-0-<0,0>: sync msg in: 1-3-1-19-8.
sym53c875-0-<0,0>: sync: per=25 scntl3=0x30 scntl4=0x0 ofs=8 fak=0 chg=0.
sym53c875-0-<0,*>: FAST-10 SCSI 10.0 MB/s (100 ns, offset 8)
sym53c875-0-<0,0>: sync msgout: 1-3-1-c-10.
sym53c875-0-<0,0>: sync msg in: 1-3-1-19-8.
sym53c875-0-<0,0>: sync: per=25 scntl3=0x30 scntl4=0x0 ofs=8 fak=0 chg=0.
SCSI device sda: 2503872 512-byte hdwr sectors (1282 MB)
Partition check:
/dev/scsi/host0/bus0/target0/lun0: p1 p2
sym53c875-0-<1,0>: sync msgout: 1-3-1-c-10.
sym53c875-0-<1,0>: sync msg in: 1-3-1-19-f.
sym53c875-0-<1,0>: sync: per=25 scntl3=0x30 scntl4=0x0 ofs=15 fak=0 chg=0.
sym53c875-0-<1,*>: FAST-10 SCSI 10.0 MB/s (100 ns, offset 15)
sym53c875-0-<1,0>: sync msgout: 1-3-1-c-10.
sym53c875-0-<1,0>: sync msg in: 1-3-1-19-f.
sym53c875-0-<1,0>: sync: per=25 scntl3=0x30 scntl4=0x0 ofs=15 fak=0 chg=0.
SCSI device sdb: 2110812 512-byte hdwr sectors (1081 MB)
/dev/scsi/host0/bus0/target1/lun0: p1 p2
sym53c875-0-<8,0>: wide msgout: 1-2-3-1.
sym53c875-0-<8,0>: wide msgin: 1-2-3-1.
sym53c875-0-<8,0>: wide: wide=1 chg=0.
sym53c875-0-<8,0>: wide msgout: 1-2-3-1.
sym53c875-0-<8,0>: wide msgin: 1-2-3-1.
sym53c875-0-<8,0>: wide: wide=1 chg=0.
sym53c875-0-<8,0>: sync msgout: 1-3-1-c-10.
sym53c875-0-<8,0>: sync msg in: 1-3-1-c-f.
sym53c875-0-<8,0>: sync: per=12 scntl3=0x90 scntl4=0x0 ofs=15 fak=0 chg=0.
sym53c875-0-<8,*>: FAST-20 WIDE SCSI 40.0 MB/s (50 ns, offset 15)
SCSI device sdc: 17783240 512-byte hdwr sectors (9105 MB)
/dev/scsi/host0/bus0/target8/lun0: p1
sym53c875-0-<9,0>: wide msgout: 1-2-3-1.
sym53c875-0-<9,0>: wide msgin: 1-2-3-1.
sym53c875-0-<9,0>: wide: wide=1 chg=0.
sym53c875-0-<9,0>: wide msgout: 1-2-3-1.
sym53c875-0-<9,0>: wide msgin: 1-2-3-1.
sym53c875-0-<9,0>: wide: wide=1 chg=0.
sym53c875-0-<9,0>: sync msgout: 1-3-1-c-10.
sym53c875-0-<9,0>: sync msg in: 1-3-1-c-f.
sym53c875-0-<9,0>: sync: per=12 scntl3=0x90 scntl4=0x0 ofs=15 fak=0 chg=0.
sym53c875-0-<9,*>: FAST-20 WIDE SCSI 40.0 MB/s (50 ns, offset 15)
SCSI device sdd: 17783240 512-byte hdwr sectors (9105 MB)
/dev/scsi/host0/bus0/target9/lun0: p1
devfs: v0.102 (20000622) Richard Gooch (rgooch@atnf.csiro.au)
devfs: boot_options: 0x0
VFS: Mounted root (ext2 filesystem) readonly.
Mounted devfs on /dev
Freeing unused kernel memory: 188k freed
Adding Swap: 132072k swap-space (priority -1)
RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize
Linux video capture interface: v1.00
i2c-core.o: i2c core module
i2c-algo-bit.o: i2c bit algorithm module
bttv: driver version 0.7.38 loaded
bttv: using 2 buffers with 2080k (4160k total) for capture
bttv: Bt8xx card found (0).
bttv0: Brooktree Bt878 (rev 2) bus: 0, devfn: 72, irq: 11, memory: 0xe7800000.
i2c-core.o: adapter bt848 #0 registered as adapter 0.
bttv0: i2c: checking for eeprom @ 0xa0... found
bttv0: card id: Hauppauge WinTV (0x13eb0070) => card=10
bttv0: model: BT878(Hauppauge new (bt878)) [autodetected]
bttv0: Hauppauge eeprom: tuner=Philips FM1216 (5)
bttv0: Hauppauge msp34xx: reset line init
bttv0: i2c: checking for MSP34xx @ 0x80... found
i2c-core.o: adapter unregistered: bt848 #0
i2c-core.o: adapter bt848 #0 registered as adapter 0.
bttv0: i2c: checking for MSP34xx @ 0x80... found
i2c-core.o: driver i2c msp3400 driver registered.
msp3400: init: chip=MSP3410D-B4, has NICAM support
msp3410: daemon started
bttv0: i2c attach [MSP3410D-B4]
i2c-core.o: client [MSP3410D-B4] registered to adapter [bt848 #0](pos. 0).
bttv0: i2c: checking for TDA8425 @ 0x82... not found
bttv0: i2c: checking for TDA985x @ 0xb6... not found
bttv0: i2c: checking for TDA9875 @ 0xb0... not found
i2c-core.o: driver i2c TV tuner driver registered.
tuner: chip found @ 0x61
bttv0: i2c attach [Philips PAL]
i2c-core.o: client [Philips PAL] registered to adapter [bt848 #0](pos. 1).
inserting floppy driver for 2.4.0-test9
Floppy drive(s): fd0 is 1.44M
FDC 0 is a post-1991 82077
Detected scsi CD-ROM sr0 at scsi0, channel 0, id 4, lun 0
Detected scsi CD-ROM sr1 at scsi0, channel 0, id 5, lun 0
sym53c875-0-<4,0>: sync msgout: 1-3-1-c-10.
sym53c875-0-<4,0>: sync msg in: 1-3-1-c-f.
sym53c875-0-<4,0>: sync: per=12 scntl3=0x90 scntl4=0x0 ofs=15 fak=0 chg=0.
sym53c875-0-<4,*>: FAST-20 SCSI 20.0 MB/s (50 ns, offset 15)
sym53c875-0-<4,0>: sync msgout: 1-3-1-c-10.
sym53c875-0-<4,0>: sync msg in: 1-3-1-c-f.
sym53c875-0-<4,0>: sync: per=12 scntl3=0x90 scntl4=0x0 ofs=15 fak=0 chg=0.
sym53c875-0-<4,0>: sync msgout: 1-3-1-c-10.
sym53c875-0-<4,0>: sync msg in: 1-3-1-c-f.
sym53c875-0-<4,0>: sync: per=12 scntl3=0x90 scntl4=0x0 ofs=15 fak=0 chg=0.
Uniform CD-ROM driver Revision: 3.11
sym53c875-0-<5,*>: target did not report SYNC.
sym53c875-0-<5,*>: target did not report SYNC.
Uniform Multi-Platform E-IDE driver Revision: 6.31
ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx
SIS5513: IDE controller on PCI bus 00 dev 09
SIS5513: placing both ports into native PCI mode
SIS5513: device enabled (Linux)
SIS5513: chipset revision 208
SIS5513: will probe irqs later
SIS5513: neither IDE port enabled (BIOS)
^ permalink raw reply [flat|nested] 17+ messages in thread[parent not found: <200101290323.TAA05252@penguin.transmeta.com>]
* Re: PCI IRQ routing problem in 2.4.0 [not found] ` <200101290323.TAA05252@penguin.transmeta.com> @ 2001-01-29 4:29 ` Robert Siemer 2001-01-29 4:58 ` Linus Torvalds 0 siblings, 1 reply; 17+ messages in thread From: Robert Siemer @ 2001-01-29 4:29 UTC (permalink / raw) To: torvalds, jgarzik; +Cc: linux-kernel From: Linus Torvalds <torvalds@transmeta.com> > Another one.. > Robert, can you get the dump_pirq script from the pcmcia_cs package > and send the output to us? ...it seems to reflect my settings in the bios: Interrupt routing table found at address 0xf0a50: Version 1.0, size 0x0080 Interrupt router is device 00:01.0 PCI exclusive interrupt mask: 0x0000 [] Compatible router: vendor 0x1039 device 0x0008 Device 00:0c.0 (slot 1): SCSI storage controller INTA: link 0x01, irq mask 0x1eb8 [3,4,5,7,9,10,11,12] INTB: link 0x02, irq mask 0x1eb8 [3,4,5,7,9,10,11,12] INTC: link 0x03, irq mask 0x1eb8 [3,4,5,7,9,10,11,12] INTD: link 0x04, irq mask 0x1eb8 [3,4,5,7,9,10,11,12] Device 00:0b.0 (slot 2): VGA compatible controller INTA: link 0x02, irq mask 0x1eb8 [3,4,5,7,9,10,11,12] INTB: link 0x03, irq mask 0x1eb8 [3,4,5,7,9,10,11,12] INTC: link 0x04, irq mask 0x1eb8 [3,4,5,7,9,10,11,12] INTD: link 0x01, irq mask 0x1eb8 [3,4,5,7,9,10,11,12] Device 00:0a.0 (slot 3): Ethernet controller INTA: link 0x03, irq mask 0x1eb8 [3,4,5,7,9,10,11,12] INTB: link 0x04, irq mask 0x1eb8 [3,4,5,7,9,10,11,12] INTC: link 0x01, irq mask 0x1eb8 [3,4,5,7,9,10,11,12] INTD: link 0x02, irq mask 0x1eb8 [3,4,5,7,9,10,11,12] Device 00:09.0 (slot 4): Multimedia video controller INTA: link 0x04, irq mask 0x1eb8 [3,4,5,7,9,10,11,12] INTB: link 0x01, irq mask 0x1eb8 [3,4,5,7,9,10,11,12] INTC: link 0x02, irq mask 0x1eb8 [3,4,5,7,9,10,11,12] INTD: link 0x03, irq mask 0x1eb8 [3,4,5,7,9,10,11,12] Device 00:01.0 (slot 0): ISA bridge INTA: link 0x01, irq mask 0x1eb8 [3,4,5,7,9,10,11,12] INTB: link 0x02, irq mask 0x1eb8 [3,4,5,7,9,10,11,12] INTC: link 0x03, irq mask 0x1eb8 [3,4,5,7,9,10,11,12] INTD: link 0x04, irq mask 0x1eb8 [3,4,5,7,9,10,11,12] Device 00:13.0 (slot 0): VGA compatible controller INTA: link 0x01, irq mask 0x1eb8 [3,4,5,7,9,10,11,12] INTB: link 0x02, irq mask 0x1eb8 [3,4,5,7,9,10,11,12] INTC: link 0x03, irq mask 0x1eb8 [3,4,5,7,9,10,11,12] INTD: link 0x04, irq mask 0x1eb8 [3,4,5,7,9,10,11,12] Interrupt router at 00:01.0: SiS 85C503 PCI-to-ISA bridge INTA (link 0x41): irq 12 INTB (link 0x42): irq 14 INTC (link 0x43): irq 10 INTD (link 0x44): irq 11 - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/ ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: PCI IRQ routing problem in 2.4.0 2001-01-29 4:29 ` Robert Siemer @ 2001-01-29 4:58 ` Linus Torvalds 2001-01-29 5:11 ` Tim Hockin ` (3 more replies) 0 siblings, 4 replies; 17+ messages in thread From: Linus Torvalds @ 2001-01-29 4:58 UTC (permalink / raw) To: Robert Siemer; +Cc: jgarzik, linux-kernel On Mon, 29 Jan 2001, Robert Siemer wrote: > From: Linus Torvalds <torvalds@transmeta.com> > > > Another one.. > > > Robert, can you get the dump_pirq script from the pcmcia_cs package > > and send the output to us? > > ...it seems to reflect my settings in the bios: No, but that's really interesting.. > Device 00:01.0 (slot 0): ISA bridge > INTA: link 0x01, irq mask 0x1eb8 [3,4,5,7,9,10,11,12] > INTB: link 0x02, irq mask 0x1eb8 [3,4,5,7,9,10,11,12] > INTC: link 0x03, irq mask 0x1eb8 [3,4,5,7,9,10,11,12] > INTD: link 0x04, irq mask 0x1eb8 [3,4,5,7,9,10,11,12] Your "link" values are in the range 1-4. Which makes perfect sense, but that's absolutely _not_ what the Linux SiS routing code expects (the code seems to expect them to be ASCII 'A' - 'D'). It looks very much like "pirq_sis_get()" and "pirq_sis_set()" in arch/i386/kernel/pci-irq.c are broken for your setup. Can you replace them with the following: static int pirq_sis_get(struct pci_dev *router, struct pci_dev *dev, int pirq) { if (pirq <= 4) { u8 x; pci_read_config_byte(router, 0x40+pirq, &x); return (x & 0x80) ? 0 : (x & 0xf); } printk("Unknown SiS pirq value %d\n", pirq); return 0; } and static int pirq_sis_set(struct pci_dev *router, struct pci_dev *dev, int pirq, int irq) { if (pirq <= 4) { pci_write_config_byte(router, 0x40 + pirq, irq); return 1; } printk("Unknown SiS pirq value %d\n", pirq); return 0; } and see if that changes the behaviour. Anybody else with SiS chipsets that want to try the above? Please.. Linus - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/ ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: PCI IRQ routing problem in 2.4.0 2001-01-29 4:58 ` Linus Torvalds @ 2001-01-29 5:11 ` Tim Hockin 2001-01-29 6:03 ` Linus Torvalds 2001-01-29 5:29 ` PCI IRQ routing problem in 2.4.0 (SiS results) Aaron Tiensivu ` (2 subsequent siblings) 3 siblings, 1 reply; 17+ messages in thread From: Tim Hockin @ 2001-01-29 5:11 UTC (permalink / raw) To: Linus Torvalds; +Cc: Robert Siemer, jgarzik, linux-kernel > > Device 00:01.0 (slot 0): ISA bridge > > INTA: link 0x01, irq mask 0x1eb8 [3,4,5,7,9,10,11,12] > > INTB: link 0x02, irq mask 0x1eb8 [3,4,5,7,9,10,11,12] > > INTC: link 0x03, irq mask 0x1eb8 [3,4,5,7,9,10,11,12] > > INTD: link 0x04, irq mask 0x1eb8 [3,4,5,7,9,10,11,12] > > Your "link" values are in the range 1-4. Which makes perfect sense, but > that's absolutely _not_ what the Linux SiS routing code expects (the code > seems to expect them to be ASCII 'A' - 'D'). In reading the PIRQ specs, and making it work for our board, I thought about this. PIRQ states that link is chipset-dependant. No chipset that I have seen specifies what link should be. So, as this case demonstrates, it may be 'A' - the value the chipset expects, or 1, the logical index. Either one makes sense, assuming the PIRQ routing code knows what link means. Here we see two BIOS vendors/versions that apparently do it differently for the same chipset. Grrr. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/ ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: PCI IRQ routing problem in 2.4.0 2001-01-29 5:11 ` Tim Hockin @ 2001-01-29 6:03 ` Linus Torvalds 2001-01-30 0:50 ` Via PCI IRQ routing problem related? (was: PCI IRQ routing problem in 2.4.0) Pete Toscano 0 siblings, 1 reply; 17+ messages in thread From: Linus Torvalds @ 2001-01-29 6:03 UTC (permalink / raw) To: Tim Hockin; +Cc: Robert Siemer, jgarzik, linux-kernel [-- Attachment #1: Type: TEXT/PLAIN, Size: 1596 bytes --] On Sun, 28 Jan 2001, Tim Hockin wrote: > > In reading the PIRQ specs, and making it work for our board, I thought > about this. PIRQ states that link is chipset-dependant. No chipset that I > have seen specifies what link should be. So, as this case demonstrates, it > may be 'A' - the value the chipset expects, or 1, the logical index. > Either one makes sense, assuming the PIRQ routing code knows what link > means. Here we see two BIOS vendors/versions that apparently do it > differently for the same chipset. Grrr. They _may_ do the same thing for the same chipset, it's just that we don't know exactly what that "same" thing is. Ok, I want to see what people have. ANYBODY who has a SiS chipset, please take 5 seconds to do this as root (yes, you need to be root): dump_pirq | mail -s "dump_pirq" torvalds@transmeta.com and I'm attaching the "dump_pirq" perl script here in this email so that you don't even have to go to the bother of finding it on the net. Oh, before you bombard me with email, please check that dump_pirq actually prints out a PIRQ table. If it says No PCI interrupt routing table was found. followed by a router dump, it's not interesting, and I'd rather not get a million of those particular emails, ok? In fact, even if you don't have a SiS chipset, you could do the above. The exception to that rule is if you have an Intel PIIX router, in which case we pretty much _know_ that we do the right thing already. (And _please_ don't make the subject line anything fancy. I want that subject line to be "dump_pirq" and nothing else, ok?) Linus [-- Attachment #2: Type: TEXT/PLAIN, Size: 8952 bytes --] #!/usr/bin/perl # # dump_pirq 1.20 2000/12/19 19:19:52 # # A utility to parse the BIOS PCI IRQ Routing Table # # Copyright (C) 2000 David A. Hinds -- dahinds@users.sourceforge.net # #----------------------------------------------------------------------- sub dev { my($devfn) = @_; sprintf "%02x.%d", ($devfn>>3), ($devfn&7); } sub print_mask { my($mask) = @_; printf "0x%04x [", $mask; for (my $i = 0; $i < 16; $i++) { next if (!($mask & (1<<$i))); $mask &= ~(1<<$i); print (($mask) ? "$i," : "$i"); } print "]\n"; } sub row { my($tag, $link, $mask) = @_; if ($link != 0) { printf " INT$tag: link 0x%02x, irq mask ", $link; print_mask($mask); } } sub class_of { my($slot) = @_; open(IN, "/sbin/lspci -s $slot |"); $_ = <IN>; close(IN); return (/^....... ([^:]+):/) ? $1 : ""; } sub parse_pirq { my($buf) = @_; my($p) = index($buf, "\$PIR"); my($minor,$major,$size,$rbus,$rdev,$mask,$cvd,$mini) = unpack "CCSCCSLL", substr($buf, $p+4, 16); printf "Interrupt routing table found at address 0xf%04x:\n", $p; printf " Version $major.$minor, size 0x%04x\n", $size; printf " Interrupt router is device %02x:%s\n", $rbus, dev($rdev); print " PCI exclusive interrupt mask: "; print_mask($mask); if ($cvd) { printf(" Compatible router: vendor 0x%04x device 0x%04x\n", ($cvd & 0xffff), ($cvd >> 16)); } $ofs = 32; while ($ofs < $size) { # Parse a table entry describing a single PCI device ($bus, $devfn, $la, $ma, $lb, $mb, $lc, $mc, $ld, $md, $slot) = unpack "CCCSCSCSCSC", substr($buf, $p+$ofs, 15); $s = sprintf "%02x:%s", $bus, dev($devfn); printf "\nDevice $s (slot $slot): %s\n", class_of($s); row("A", $la, $ma); row("B", $lb, $mb); row("C", $lc, $mc); row("D", $ld, $md); push(@{$dev{$la}}, $s . "1"); push(@{$dev{$lb}}, $s . "2"); push(@{$dev{$lc}}, $s . "3"); push(@{$dev{$ld}}, $s . "4"); $ofs += 16; } return ($rbus, $rdev, $cvd); } #----------------------------------------------------------------------- # The link values in the interrupt routing table are implementation # dependent. Here, we'll try to interpret the link values for some # known PCI bridge types. %pIIx = (0x122e8086, "82371FB PIIX", 0x70008086, "82371SB PIIX3", 0x71108086, "82371AB PIIX4/PIIX4E", 0x71988086, "82443MX", 0x24108086, "82801AA ICH", 0x24208086, "82801AB ICH0", 0x24408086, "82801BA ICH2", 0x244c8086, "82801BAM ICH2-M"); %via = (0x05861106, "82C586", 0x05961106, "82C596", 0x06861106, "82C686"); %opti = (0xc7001045, "82C700"); %pico = (0x00021066, "PT86C523"); %ali = (0x153310b9, "Aladdin M1533"); %sis = (0x04961039, "85C496/497", 0x00081039, "85C503"); %cyrix = (0x01001078, "5530"); %all_routers = (%pIIx, %via, %opti, %pico, %ali, %sis, %cyrix); sub outb { my($data,$port) = @_; open(IO, ">/dev/port") || die; sysseek(IO, $port, 0) || die; my $x = pack "C", $data; syswrite(IO, $x, 1); close(IO); } sub inb { my($port) = @_; my($data); open(IO, "/dev/port") || die; sysseek(IO, $port, 0) || die; sysread(IO, $data, 1); close(IO); return unpack "C", $data; } sub dump_router { my($rbus, $rdev, $cvd) = @_; my($buf, @p, $i, $irq); printf "\nInterrupt router at %02x:%s: ", $rbus, dev($rdev); $rf = sprintf "/proc/bus/pci/%02x/%s", $rbus, dev($rdev); open(IN, $rf); if (sysread(IN, $buf, 0x100) != 0x100) { print "\nCould not read router info from $rf.\n"; exit; } close(IN); my $vd = unpack "L", substr($buf, 0, 4); if ((defined $pIIx{$vd}) || (defined $pIIx{$cvd})) { $name = (defined $pIIx{$vd}) ? $pIIx{$vd} : $pIIx{$cvd}; printf "Intel $name PCI-to-ISA bridge\n"; @p = unpack "CCCCC", substr($buf, 0x60, 5); for ($i = 0; $i < 4; $i++) { printf " PIRQ%d (link 0x%02x): ", $i+1, 0x60+$i; print (($p[$i] < 16) ? "irq $p[$i]\n" : "unrouted\n"); } print " Serial IRQ:"; print (($p[4] & 0x80) ? " [enabled]" : " [disabled]"); print (($p[4] & 0x40) ? " [continuous]" : " [quiet]"); print " [frame=", (($p[4] >> 2) & 15) + 17, "]"; print " [pulse=", (($p[4] & 3) * 4 + 4), "]\n"; print " Level mask: "; print_mask((inb(0x4d1)<<8) + inb(0x4d0)); } elsif ((defined $via{$vd}) || (defined $via{$cvd})) { $name = (defined $via{$vd}) ? $via{$vd} : $via{$cvd}; printf "VIA $name PCI-to-ISA bridge\n"; $p = unpack "L", substr($buf, 0x55, 4); %tag = (1, "A", 2, "B", 3, "C", 5, "D"); foreach $link (1,2,3,5) { $irq = ($p >> ($link * 4)) & 15; print " PIRQ$tag{$link} (link 0x0$link): "; print ($irq ? "irq $irq\n" : "unrouted\n"); } } elsif ((defined $opti{$vd}) || (defined $opti{$cvd})) { $name = (defined $opti{$vd}) ? $opti{$vd} : $opti{$cvd}; printf "OPTi $name PCI-to-ISA bridge\n"; $p = unpack "S", substr($buf, 0xb8, 2); for ($i = 0; $i < 4; $i++) { $irq = ($p >> ($i * 4)) & 15; printf " PCIRQ$i (link 0x%02x): ", ($i<<4)+0x02; print ($irq ? "irq $irq\n" : "unrouted\n"); } } elsif ((defined $pico{$vd} || defined $pico{$cvd})) { $name = (defined $pico{$vd}) ? $pico{$vd} : $pico{$cvd}; printf "PicoPower $name PCI-to-ISA bridge\n"; outb(0x10, 0x24); $p = inb(0x26); outb(0x11, 0x24); $p += inb(0x26)<<8; @tag = ("A", "B", "C", "D"); for ($i = 0; $i < 4; $i++) { $irq = ($p >> ($i * 4)) & 15; print " INT$tag[$i] (link 0x0", $i+1, "): "; print ($irq ? "irq $irq\n" : "unrouted\n"); } } elsif ((defined $ali{$vd} || defined $ali{$cvd})) { $name = (defined $ali{$vd}) ? $ali{$vd} : $ali{$cvd}; printf "AcerLabs $name PCI-to-ISA bridge\n"; $p = unpack "L", substr($buf, 0x48, 4); # This mapping is insane! @map = (0, 9, 3, 10, 4, 5, 7, 6, 1, 11, 0, 12, 0, 14, 0, 15); for ($i = 0; $i < 8; $i++) { $irq = ($p >> ($i*4)) & 15; print " INT", $i+1, " (link ", $i+1, "): "; print ($map[$irq] ? "irq $map[$irq]\n" : "unrouted\n"); } $s = unpack "C", substr($buf, 0x70, 1); print " Serial IRQ:"; print (($s & 0x80) ? " [enabled]" : " [disabled]"); print (($s & 0x40) ? " [continuous]" : " [quiet]"); print " [frame=", (($s >> 2) & 15) + 17, "]"; print " [pulse=", (($s & 3) * 4 + 4), "]\n"; } elsif ((defined $sis{$vd}) || (defined $sis{$cvd})) { $name = (defined $sis{$vd}) ? $sis{$vd} : $sis{$cvd}; printf "SiS $name PCI-to-ISA bridge\n"; $base = ($name eq "85C496/497") ? 0xc0 : 0x41; @p = unpack "CCCC", substr($buf, $base, 4); @tag = ("A", "B", "C", "D"); for ($i = 0; $i < 4; $i++) { $irq = ($p[$i] & 0x80) ? 0 : ($p[$i] & 0x0f); printf " INT$tag[$i] (link 0x%02x): ", $i+$base; print ($irq ? "irq $irq\n" : "unrouted\n"); } } elsif ((defined $cyrix{$vd}) || (defined $cyrix{$cvd})) { $name = (defined $cyrix{$vd}) ? $cyrix{$vd} : $cyrix{$cvd}; printf "CYRIX $name PCI-to-ISA bridge\n"; $p = unpack "S", substr($buf, 0x5c, 2); %tag = ("A", "B", "C", "D"); for ($i = 0; $i < 4; $i++) { $irq = ($p >> ($i * 4)) & 15; printf " PIRQ$tag{$i} (link 0x%02x): ", $i+1; print ($irq ? "irq $irq\n" : "unrouted\n"); } } else { printf("unknown vendor 0x%04x device 0x%04x\n", ($vd & 0xffff), ($vd >> 16)); foreach $k (sort keys %dev) { next if ($k == 0); printf " PIRQ? (link 0x%02x): ", $k; $irq = 0; foreach $d (@{$dev{$k}}) { $d =~ /(..):(..)\..(.)/; ($bus,$dev,$pin) = ($1,$2,$3); for ($fn = 0; $fn < 8; $fn++) { open(IN, "/proc/bus/pci/$bus/$dev.$fn") || last; sysread(IN, $buf, 0x100); close(IN); ($i,$p) = unpack "CC", substr($buf, 0x3c, 2); $irq = $i if (($p == $pin) && $i && ($i != 255)); } } print ($irq ? "irq $irq\n" : "unrouted?\n"); } } } #----------------------------------------------------------------------- # Grab the BIOS from 0xf0000-0xfffff open(IN, "/dev/mem") || die "cannot open /dev/mem\n"; sysseek(IN, 0xf0000, 0) || die; die if (sysread(IN, $buf, 0x10000) != 0x10000); close(IN); if (index($buf, "\$PIR") >= 0) { # Dump the PIRQ table, and the router information ($rbus, $rdev, $cvd) = parse_pirq($buf); dump_router($rbus, $rdev, $cvd); } else { # Scan for any interrupt router device we recognize print "No PCI interrupt routing table was found.\n"; open(DEV, "/proc/bus/pci/devices"); while (<DEV>) { ($rbus,$rdev,$vd) = /^(..)(..)\s+(........)/; $rbus = hex($rbus); $rdev = hex($rdev); $vd = hex($vd); $vd = (($vd & 0xffff0000) >> 16) | (($vd & 0xffff) << 16); if (defined $all_routers{$vd}) { dump_router($rbus, $rdev, $vd); $nr++; } } print "\nNo known PCI interrupt routers were found.\n" if (!$nr); } ^ permalink raw reply [flat|nested] 17+ messages in thread
* Via PCI IRQ routing problem related? (was: PCI IRQ routing problem in 2.4.0) 2001-01-29 6:03 ` Linus Torvalds @ 2001-01-30 0:50 ` Pete Toscano 0 siblings, 0 replies; 17+ messages in thread From: Pete Toscano @ 2001-01-30 0:50 UTC (permalink / raw) To: Linus Torvalds; +Cc: jgarzik, linux-kernel [-- Attachment #1: Type: text/plain, Size: 4363 bytes --] hmmm, would these sis-related pirq problems be related to the current problems lots of people with a via chipset (at least the apollo pro 133a chipset) and an smp-enabled kernel are seeing? currently, people with this chipset and an smp-enabled kernel have to disable apic if they wish to use usb. i've been told a few times that it's a problem with pci irq routing, but have been able to find a fix. reports of this problem pop up every-so-often on the linux-usb list. here's my dump_pirq output: Interrupt routing table found at address 0xfdb50: Version 1.0, size 0x00a0 Interrupt router is device 00:07.0 PCI exclusive interrupt mask: 0x1c20 [5,10,11,12] Compatible router: vendor 0x1106 device 0x0596 Device 00:0f.0 (slot 1): FireWire (IEEE 1394) INTA: link 0x05, irq mask 0xdeb8 [3,4,5,7,9,10,11,12,14,15] INTB: link 0x01, irq mask 0xdeb8 [3,4,5,7,9,10,11,12,14,15] INTC: link 0x02, irq mask 0xdeb8 [3,4,5,7,9,10,11,12,14,15] INTD: link 0x03, irq mask 0xdeb8 [3,4,5,7,9,10,11,12,14,15] Device 00:10.0 (slot 2): SCSI storage controller INTA: link 0x01, irq mask 0xdeb8 [3,4,5,7,9,10,11,12,14,15] INTB: link 0x02, irq mask 0xdeb8 [3,4,5,7,9,10,11,12,14,15] INTC: link 0x03, irq mask 0xdeb8 [3,4,5,7,9,10,11,12,14,15] INTD: link 0x05, irq mask 0xdeb8 [3,4,5,7,9,10,11,12,14,15] Device 00:11.0 (slot 3): Multimedia audio controller INTA: link 0x02, irq mask 0xdeb8 [3,4,5,7,9,10,11,12,14,15] INTB: link 0x03, irq mask 0xdeb8 [3,4,5,7,9,10,11,12,14,15] INTC: link 0x05, irq mask 0xdeb8 [3,4,5,7,9,10,11,12,14,15] INTD: link 0x01, irq mask 0xdeb8 [3,4,5,7,9,10,11,12,14,15] Device 00:12.0 (slot 4): Unknown mass storage controller INTA: link 0x03, irq mask 0xdeb8 [3,4,5,7,9,10,11,12,14,15] INTB: link 0x05, irq mask 0xdeb8 [3,4,5,7,9,10,11,12,14,15] INTC: link 0x01, irq mask 0xdeb8 [3,4,5,7,9,10,11,12,14,15] INTD: link 0x02, irq mask 0xdeb8 [3,4,5,7,9,10,11,12,14,15] Device 00:13.0 (slot 5): Ethernet controller INTA: link 0x05, irq mask 0xdeb8 [3,4,5,7,9,10,11,12,14,15] INTB: link 0x01, irq mask 0xdeb8 [3,4,5,7,9,10,11,12,14,15] INTC: link 0x02, irq mask 0xdeb8 [3,4,5,7,9,10,11,12,14,15] INTD: link 0x03, irq mask 0xdeb8 [3,4,5,7,9,10,11,12,14,15] Device 00:14.0 (slot 6): INTA: link 0x01, irq mask 0xdeb8 [3,4,5,7,9,10,11,12,14,15] INTB: link 0x02, irq mask 0xdeb8 [3,4,5,7,9,10,11,12,14,15] INTC: link 0x03, irq mask 0xdeb8 [3,4,5,7,9,10,11,12,14,15] INTD: link 0x05, irq mask 0xdeb8 [3,4,5,7,9,10,11,12,14,15] Device 00:01.0 (slot 0): PCI bridge INTA: link 0x01, irq mask 0xdeb8 [3,4,5,7,9,10,11,12,14,15] INTB: link 0x02, irq mask 0xdeb8 [3,4,5,7,9,10,11,12,14,15] INTC: link 0x03, irq mask 0xdeb8 [3,4,5,7,9,10,11,12,14,15] INTD: link 0x05, irq mask 0xdeb8 [3,4,5,7,9,10,11,12,14,15] Device 00:07.0 (slot 0): ISA bridge INTC: link 0x03, irq mask 0xdeb8 [3,4,5,7,9,10,11,12,14,15] INTD: link 0x05, irq mask 0xdeb8 [3,4,5,7,9,10,11,12,14,15] Interrupt router at 00:07.0: VIA 82C596 PCI-to-ISA bridge PIRQA (link 0x01): irq 11 PIRQB (link 0x02): irq 5 PIRQC (link 0x03): irq 10 PIRQD (link 0x05): irq 12 any ideas? i also saved the lspci -vvvxxx and dmesg output if that'll be helpful. thanks, pete On Sun, 28 Jan 2001, Linus Torvalds wrote: > On Sun, 28 Jan 2001, Tim Hockin wrote: > > > > In reading the PIRQ specs, and making it work for our board, I thought > > about this. PIRQ states that link is chipset-dependant. No chipset that I > > have seen specifies what link should be. So, as this case demonstrates, it > > may be 'A' - the value the chipset expects, or 1, the logical index. > > Either one makes sense, assuming the PIRQ routing code knows what link > > means. Here we see two BIOS vendors/versions that apparently do it > > differently for the same chipset. Grrr. > > They _may_ do the same thing for the same chipset, it's just that we don't > know exactly what that "same" thing is. > > Ok, I want to see what people have. ANYBODY who has a SiS chipset, please > take 5 seconds to do this as root (yes, you need to be root): > > dump_pirq | mail -s "dump_pirq" torvalds@transmeta.com -- Pete Toscano p:sigsegv@psinet.com w:pete@research.netsol.com GPG fingerprint: D8F5 A087 9A4C 56BB 8F78 B29C 1FF0 1BA7 9008 2736 [-- Attachment #2: Type: application/pgp-signature, Size: 232 bytes --] ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: PCI IRQ routing problem in 2.4.0 (SiS results) 2001-01-29 4:58 ` Linus Torvalds 2001-01-29 5:11 ` Tim Hockin @ 2001-01-29 5:29 ` Aaron Tiensivu 2001-01-29 5:50 ` Linus Torvalds 2001-01-29 5:30 ` PCI IRQ routing problem in 2.4.0 (SiS results) Aaron Tiensivu 2001-01-29 6:08 ` PCI IRQ routing problem in 2.4.0 Robert Siemer 3 siblings, 1 reply; 17+ messages in thread From: Aaron Tiensivu @ 2001-01-29 5:29 UTC (permalink / raw) To: Linus Torvalds, linux-kernel | Your "link" values are in the range 1-4. Which makes perfect sense, but | that's absolutely _not_ what the Linux SiS routing code expects (the code | seems to expect them to be ASCII 'A' - 'D'). | It looks very much like "pirq_sis_get()" and "pirq_sis_set()" in | arch/i386/kernel/pci-irq.c are broken for your setup. My ASUS SP97-V complains about PIRQ conflicts so I gave this a whirl (It is SiS 5598 based) | Anybody else with SiS chipsets that want to try the above? Please.. Here is my dmesg: Linux version 2.4.0-ac12 (root@usr1-ip031-cs.wmis.net) (gcc version 2.95.3 20010125 (prerelease)) #3 Mon Jan 29 00:16:07 EST 2001 BIOS-provided physical RAM map: BIOS-e820: 00000000000a0000 @ 0000000000000000 (usable) BIOS-e820: 0000000000010000 @ 00000000000f0000 (reserved) BIOS-e820: 0000000003efd000 @ 0000000000100000 (usable) BIOS-e820: 0000000000002000 @ 0000000003ffd000 (ACPI data) BIOS-e820: 0000000000001000 @ 0000000003fff000 (ACPI NVS) BIOS-e820: 0000000000010000 @ 00000000ffff0000 (reserved) Scan SMP from c0000000 for 1024 bytes. Scan SMP from c009fc00 for 1024 bytes. Scan SMP from c00f0000 for 65536 bytes. Scan SMP from c0000000 for 4096 bytes. On node 0 totalpages: 16381 zone(0): 4096 pages. zone(1): 12285 pages. zone(2): 0 pages. APIC turned off by hardware. mapped APIC to ffffe000 (01112000) Kernel command line: auto BOOT_IMAGE=lnew ro root=341 BOOT_FILE=/home/kernel/kernel/linux/arch/i386/boot/bzImage Initializing CPU#0 Detected 374.229 MHz processor. Console: colour VGA+ 80x25 Calibrating delay loop... 747.11 BogoMIPS Memory: 62368k/65524k available (940k kernel code, 2772k reserved, 327k data, 188k init, 0k highmem) Dentry-cache hash table entries: 8192 (order: 4, 65536 bytes) Buffer-cache hash table entries: 1024 (order: 0, 4096 bytes) Page-cache hash table entries: 16384 (order: 4, 65536 bytes) Inode-cache hash table entries: 4096 (order: 3, 32768 bytes) VFS: Diskquotas version dquot_6.5.0 initialized CPU: Before vendor init, caps: 008021bf 808029bf 00000000, vendor = 2 CPU: L1 I Cache: 32K (32 bytes/line), D cache 32K (32 bytes/line) CPU: After vendor init, caps: 008021bf 808029bf 00000000 00000002 CPU: After generic, caps: 008021bf 808029bf 00000000 00000002 CPU: Common caps: 008021bf 808029bf 00000000 00000002 CPU: AMD-K6(tm) 3D processor stepping 0c Checking 'hlt' instruction... OK. POSIX conformance testing by UNIFIX mtrr: v1.37 (20001109) Richard Gooch (rgooch@atnf.csiro.au) mtrr: detected mtrr type: AMD K6 PCI: BIOS32 Service Directory structure at 0xc00f9b50 PCI: BIOS32 Service Directory entry at 0xf04d0 PCI: BIOS probe returned s=00 hw=11 ver=02.10 l=00 PCI: PCI BIOS revision 2.10 entry at 0xf0500, last bus=0 PCI: Using configuration type 1 PCI: Probing PCI hardware PCI: Setting max latency to 32 PCI: IDE base address trash cleared for 00:01.1 PCI: IDE base address fixup for 00:01.1 PCI: Scanning for ghost devices on bus 0 PCI: IRQ init PCI: Interrupt Routing Table found at 0xc00f0af0 00:0c slot=01 0:41/1eb8 1:42/1eb8 2:43/1eb8 3:44/1eb8 00:0b slot=02 0:42/1eb8 1:43/1eb8 2:44/1eb8 3:41/1eb8 00:0a slot=03 0:43/1eb8 1:44/1eb8 2:41/1eb8 3:42/1eb8 00:09 slot=04 0:44/1eb8 1:41/1eb8 2:42/1eb8 3:43/1eb8 00:01 slot=00 0:62/1eb8 1:00/0000 2:00/0000 3:00/0000 00:13 slot=00 0:41/1eb8 1:42/1eb8 2:43/1eb8 3:44/1eb8 PCI: Using IRQ router SIS [1039/0008] at 00:01.0 PCI: IRQ fixup PCI: Allocating resources PCI: Resource 0000d000-0000d00f (f=101, d=0, p=0) PCI: Resource dd000000-dd000fff (f=200, d=0, p=0) PCI: Resource 0000b800-0000b807 (f=101, d=0, p=0) PCI: Resource dc800000-dc87ffff (f=200, d=0, p=0) PCI: Resource e0000000-e7ffffff (f=1208, d=0, p=0) PCI: Resource df000000-df000fff (f=1208, d=0, p=0) PCI: Resource 0000b400-0000b41f (f=101, d=0, p=0) PCI: Resource dc000000-dc0fffff (f=200, d=0, p=0) PCI: Resource de000000-de3fffff (f=1208, d=1, p=1) PCI: Resource db800000-db80ffff (f=200, d=1, p=1) PCI: Resource 0000b000-0000b07f (f=101, d=1, p=1) PCI: Sorting device list... Disabling direct PCI/PCI transfers. isapnp: Scanning for Pnp cards... isapnp: No Plug & Play device found Linux NET4.0 for Linux 2.4 Based upon Swansea University Computer Society NET3.039 Initializing RT netlink socket apm: BIOS version 1.2 Flags 0x03 (Driver version 1.14) Starting kswapd v1.8 pty: 256 Unix98 ptys configured block: queued sectors max/low 41341kB/31006kB, 128 slots per queue Uniform Multi-Platform E-IDE driver Revision: 6.31 ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx SIS5513: IDE controller on PCI bus 00 dev 09 IRQ for 00:01.1:0 -> PIRQ 62, mask 1eb8, excl 0000 -> newirq=10Unknown SiS pirq value 98 -> assigning IRQ 10Unknown SiS pirq value 98 ... failed SIS5513: chipset revision 208 SIS5513: not 100% native mode: will probe irqs later SiS5597 ide0: BM-DMA at 0xd000-0xd007, BIOS settings: hda:DMA, hdb:DMA ide1: BM-DMA at 0xd008-0xd00f, BIOS settings: hdc:DMA, hdd:pio keyboard: Timeout - AT keyboard not present? keyboard: Timeout - AT keyboard not present? hda: ST5660A, ATA DISK drive hdb: IBM-DJAA-31700, ATA DISK drive hdc: Maxtor 72700 AP, ATA DISK drive ide0 at 0x1f0-0x1f7,0x3f6 on irq 14 ide1 at 0x170-0x177,0x376 on irq 15 hda: 1066184 sectors (546 MB) w/256KiB Cache, CHS=528/32/63, DMA hdb: 3334464 sectors (1707 MB) w/96KiB Cache, CHS=827/64/63, DMA hdc: 5290320 sectors (2709 MB) w/128KiB Cache, CHS=5248/16/63, DMA Partition check: /dev/ide/host0/bus0/target0/lun0: p1 p2 /dev/ide/host0/bus0/target1/lun0: p1 /dev/ide/host0/bus1/target0/lun0: [PTBL] [656/128/63] p1 Floppy drive(s): fd0 is 1.44M FDC 0 is a post-1991 82077 Serial driver version 5.02 (2000-08-09) with MANY_PORTS SHARE_IRQ DETECT_IRQ SERIAL_PCI ISAPNP enabled ttyS00 at 0x03f8 (irq = 4) is a 16550A ttyS01 at 0x02f8 (irq = 3) is a 16550A IRQ for 00:0a.0:0 -> PIRQ 43, mask 1eb8, excl 0000 -> newirq=5Unknown SiS pirq value 67 -> assigning IRQ 5Unknown SiS pirq value 67 ... failed ttyS02 at port 0xb800 (irq = 5) is a 16550A Real Time Clock Driver v1.10d eepro100.c:v1.09j-t 9/29/99 Donald Becker http://cesdis.gsfc.nasa.gov/linux/drivers/eepro100.html eepro100.c: $Revision: 1.35 $ 2000/11/17 Modified by Andrey V. Savochkin <saw@saw.sw.com.sg> and others IRQ for 00:0c.0:0 -> PIRQ 41, mask 1eb8, excl 0000 -> newirq=10Unknown SiS pirq value 65 -> assigning IRQ 10Unknown SiS pirq value 65 ... failed eth0: Intel Corporation 82557 [Ethernet Pro 100], 00:A0:C9:0D:A6:1F, IRQ 10. Board assembly 352509-003, Physical connectors present: RJ45 Primary interface chip DP83840 PHY #1. DP83840 specific setup, setting register 23 to 8462. General self-test: passed. Serial sub-system self-test: passed. Internal registers self-test: passed. ROM checksum self-test: passed (0x49caa8d6). Receiver lock-up workaround activated. PPP generic driver version 2.4.1 PPP Deflate Compression module registered PPP BSD Compression module registered NET4: Linux TCP/IP 1.0 for NET4.0 IP Protocols: ICMP, UDP, TCP, IGMP IP: routing cache hash table of 512 buckets, 4Kbytes TCP: Hash tables configured (established 4096 bind 4096) NET4: Unix domain sockets 1.0/SMP for Linux NET4.0. devfs: v0.102 (20000622) Richard Gooch (rgooch@atnf.csiro.au) devfs: boot_options: 0x0 reiserfs: checking transaction log (device 03:41) ... Using r5 hash to sort names ReiserFS version 3.6.25 VFS: Mounted root (reiserfs filesystem) readonly. Mounted devfs on /dev Freeing unused kernel memory: 188k freed Adding Swap: 18136k swap-space (priority -1) usb.c: registered new driver usbdevfs usb.c: wow registered new driver hub IRQ for 00:01.2:0 -> PIRQ 62, mask 1eb8, excl 0000 -> newirq=7Unknown SiS pirq value 98 -> assigning IRQ 7Unknown SiS pirq value 98 ... failed usb-ohci.c: USB OHCI at membase 0xc48c6000, IRQ 7 usb-ohci.c: usb-00:01.2, Silicon Integrated Systems [SiS] 7001 usb.c: new USB bus registered, assigned bus number 1 hub.c: USB hub found hub.c: 2 ports detected reiserfs: checking transaction log (device 03:01) ... Using r5 hash to sort names ReiserFS version 3.6.25 Adding Swap: 65528k swap-space (priority -2) Adding Swap: 131064k swap-space (priority -3) - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/ ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: PCI IRQ routing problem in 2.4.0 (SiS results) 2001-01-29 5:29 ` PCI IRQ routing problem in 2.4.0 (SiS results) Aaron Tiensivu @ 2001-01-29 5:50 ` Linus Torvalds 2001-01-29 7:10 ` PCI IRQ routing problem in 2.4.0 (SiS results part 2) Aaron Tiensivu 2001-01-29 7:11 ` Aaron Tiensivu 0 siblings, 2 replies; 17+ messages in thread From: Linus Torvalds @ 2001-01-29 5:50 UTC (permalink / raw) To: Aaron Tiensivu; +Cc: linux-kernel On Mon, 29 Jan 2001, Aaron Tiensivu wrote: > > My ASUS SP97-V complains about PIRQ conflicts so I gave this a whirl > (It is SiS 5598 based) Your pirq values are different - they are in the 0x41-0x44 range, like the old SiS router code assumes. Except for one that has value 0x62, which the old SiS code actually refused to set because it refused anything that matches (x & 0x20). I suspect that the low bits are the "PCI interrupt number", and that the high bits are some other state information. (ie 0x02, 0x42 and 0x62 all imply PCI irq INTB, just with different flags set for some reason). Which one was it you got a PIRQ conflict for before? as it te device at 00:01.00 with the strange "0x62" entry? How about you try adding the line pirq = (pirq-1) & 3; at the top of both pirq_sis_get() and pirq_sis_set() (with my "alternate" SiS routines). What happens then? Linus - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/ ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: PCI IRQ routing problem in 2.4.0 (SiS results part 2) 2001-01-29 5:50 ` Linus Torvalds @ 2001-01-29 7:10 ` Aaron Tiensivu 2001-01-29 7:21 ` Linus Torvalds 2001-01-29 7:11 ` Aaron Tiensivu 1 sibling, 1 reply; 17+ messages in thread From: Aaron Tiensivu @ 2001-01-29 7:10 UTC (permalink / raw) To: Linus Torvalds; +Cc: linux-kernel | Which one was it you got a PIRQ conflict for before? as it te device at | 00:01.00 with the strange "0x62" entry? Yes. | How about you try adding the line | pirq = (pirq-1) & 3; | at the top of both pirq_sis_get() and pirq_sis_set() (with my "alternate" | SiS routines). What happens then? Done. Linux version 2.4.0-ac12 (root@usr1-ip012-cs.wmis.net) (gcc version 2.95.3 20010125 (prerelease)) #4 Mon Jan 29 01:53:12 EST 2001 BIOS-provided physical RAM map: BIOS-e820: 00000000000a0000 @ 0000000000000000 (usable) BIOS-e820: 0000000000010000 @ 00000000000f0000 (reserved) BIOS-e820: 0000000003efd000 @ 0000000000100000 (usable) BIOS-e820: 0000000000002000 @ 0000000003ffd000 (ACPI data) BIOS-e820: 0000000000001000 @ 0000000003fff000 (ACPI NVS) BIOS-e820: 0000000000010000 @ 00000000ffff0000 (reserved) Scan SMP from c0000000 for 1024 bytes. Scan SMP from c009fc00 for 1024 bytes. Scan SMP from c00f0000 for 65536 bytes. Scan SMP from c0000000 for 4096 bytes. On node 0 totalpages: 16381 zone(0): 4096 pages. zone(1): 12285 pages. zone(2): 0 pages. APIC turned off by hardware. mapped APIC to ffffe000 (01112000) Kernel command line: auto BOOT_IMAGE=lnew ro root=341 BOOT_FILE=/home/kernel/kernel/linux/arch/i386/boot/bzImage Initializing CPU#0 Detected 374.227 MHz processor. Console: colour VGA+ 80x25 Calibrating delay loop... 747.11 BogoMIPS Memory: 62368k/65524k available (940k kernel code, 2772k reserved, 327k data, 188k init, 0k highmem) Dentry-cache hash table entries: 8192 (order: 4, 65536 bytes) Buffer-cache hash table entries: 1024 (order: 0, 4096 bytes) Page-cache hash table entries: 16384 (order: 4, 65536 bytes) Inode-cache hash table entries: 4096 (order: 3, 32768 bytes) VFS: Diskquotas version dquot_6.5.0 initialized CPU: Before vendor init, caps: 008021bf 808029bf 00000000, vendor = 2 CPU: L1 I Cache: 32K (32 bytes/line), D cache 32K (32 bytes/line) CPU: After vendor init, caps: 008021bf 808029bf 00000000 00000002 CPU: After generic, caps: 008021bf 808029bf 00000000 00000002 CPU: Common caps: 008021bf 808029bf 00000000 00000002 CPU: AMD-K6(tm) 3D processor stepping 0c Checking 'hlt' instruction... OK. POSIX conformance testing by UNIFIX mtrr: v1.37 (20001109) Richard Gooch (rgooch@atnf.csiro.au) mtrr: detected mtrr type: AMD K6 PCI: BIOS32 Service Directory structure at 0xc00f9b50 PCI: BIOS32 Service Directory entry at 0xf04d0 PCI: BIOS probe returned s=00 hw=11 ver=02.10 l=00 PCI: PCI BIOS revision 2.10 entry at 0xf0500, last bus=0 PCI: Using configuration type 1 PCI: Probing PCI hardware PCI: Setting max latency to 32 PCI: IDE base address trash cleared for 00:01.1 PCI: IDE base address fixup for 00:01.1 PCI: Scanning for ghost devices on bus 0 PCI: IRQ init PCI: Interrupt Routing Table found at 0xc00f0af0 00:0c slot=01 0:41/1eb8 1:42/1eb8 2:43/1eb8 3:44/1eb8 00:0b slot=02 0:42/1eb8 1:43/1eb8 2:44/1eb8 3:41/1eb8 00:0a slot=03 0:43/1eb8 1:44/1eb8 2:41/1eb8 3:42/1eb8 00:09 slot=04 0:44/1eb8 1:41/1eb8 2:42/1eb8 3:43/1eb8 00:01 slot=00 0:62/1eb8 1:00/0000 2:00/0000 3:00/0000 00:13 slot=00 0:41/1eb8 1:42/1eb8 2:43/1eb8 3:44/1eb8 PCI: Using IRQ router SIS [1039/0008] at 00:01.0 PCI: IRQ fixup PCI: Allocating resources PCI: Resource 0000d000-0000d00f (f=101, d=0, p=0) PCI: Resource dd000000-dd000fff (f=200, d=0, p=0) PCI: Resource 0000b800-0000b807 (f=101, d=0, p=0) PCI: Resource dc800000-dc87ffff (f=200, d=0, p=0) PCI: Resource e0000000-e7ffffff (f=1208, d=0, p=0) PCI: Resource df000000-df000fff (f=1208, d=0, p=0) PCI: Resource 0000b400-0000b41f (f=101, d=0, p=0) PCI: Resource dc000000-dc0fffff (f=200, d=0, p=0) PCI: Resource de000000-de3fffff (f=1208, d=1, p=1) PCI: Resource db800000-db80ffff (f=200, d=1, p=1) PCI: Resource 0000b000-0000b07f (f=101, d=1, p=1) PCI: Sorting device list... Disabling direct PCI/PCI transfers. isapnp: Scanning for Pnp cards... isapnp: No Plug & Play device found Linux NET4.0 for Linux 2.4 Based upon Swansea University Computer Society NET3.039 Initializing RT netlink socket apm: BIOS version 1.2 Flags 0x03 (Driver version 1.14) Starting kswapd v1.8 pty: 256 Unix98 ptys configured block: queued sectors max/low 41341kB/31006kB, 128 slots per queue Uniform Multi-Platform E-IDE driver Revision: 6.31 ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx SIS5513: IDE controller on PCI bus 00 dev 09 IRQ for 00:01.1:0 -> PIRQ 62, mask 1eb8, excl 0000 -> newirq=10 -> got IRQ 10 PCI: Found IRQ 10 for device 00:01.1 PCI: The same IRQ used for device 00:01.2 SIS5513: chipset revision 208 SIS5513: not 100% native mode: will probe irqs later SiS5597 ide0: BM-DMA at 0xd000-0xd007, BIOS settings: hda:DMA, hdb:DMA ide1: BM-DMA at 0xd008-0xd00f, BIOS settings: hdc:DMA, hdd:pio keyboard: Timeout - AT keyboard not present? keyboard: Timeout - AT keyboard not present? hda: ST5660A, ATA DISK drive hdb: IBM-DJAA-31700, ATA DISK drive hdc: Maxtor 72700 AP, ATA DISK drive ide0 at 0x1f0-0x1f7,0x3f6 on irq 14 ide1 at 0x170-0x177,0x376 on irq 15 hda: 1066184 sectors (546 MB) w/256KiB Cache, CHS=528/32/63, DMA hdb: 3334464 sectors (1707 MB) w/96KiB Cache, CHS=827/64/63, DMA hdc: 5290320 sectors (2709 MB) w/128KiB Cache, CHS=5248/16/63, DMA Partition check: /dev/ide/host0/bus0/target0/lun0: p1 p2 /dev/ide/host0/bus0/target1/lun0: p1 /dev/ide/host0/bus1/target0/lun0: [PTBL] [656/128/63] p1 Floppy drive(s): fd0 is 1.44M FDC 0 is a post-1991 82077 Serial driver version 5.02 (2000-08-09) with MANY_PORTS SHARE_IRQ DETECT_IRQ SERIAL_PCI ISAPNP enabled ttyS00 at 0x03f8 (irq = 4) is a 16550A ttyS01 at 0x02f8 (irq = 3) is a 16550A IRQ for 00:0a.0:0 -> PIRQ 43, mask 1eb8, excl 0000 -> newirq=5 -> got IRQ 11 IRQ routing conflict in pirq table! Try 'pci=autoirq' ttyS02 at port 0xb800 (irq = 5) is a 16550A Real Time Clock Driver v1.10d eepro100.c:v1.09j-t 9/29/99 Donald Becker http://cesdis.gsfc.nasa.gov/linux/drivers/eepro100.html eepro100.c: $Revision: 1.35 $ 2000/11/17 Modified by Andrey V. Savochkin <saw@saw.sw.com.sg> and others IRQ for 00:0c.0:0 -> PIRQ 41, mask 1eb8, excl 0000 -> newirq=10 -> assigning IRQ 10 ... OK PCI: Assigned IRQ 10 for device 00:0c.0 eth0: Intel Corporation 82557 [Ethernet Pro 100], 00:A0:C9:0D:A6:1F, IRQ 10. Board assembly 352509-003, Physical connectors present: RJ45 Primary interface chip DP83840 PHY #1. DP83840 specific setup, setting register 23 to 8462. General self-test: passed. Serial sub-system self-test: passed. Internal registers self-test: passed. ROM checksum self-test: passed (0x49caa8d6). Receiver lock-up workaround activated. PPP generic driver version 2.4.1 PPP Deflate Compression module registered PPP BSD Compression module registered NET4: Linux TCP/IP 1.0 for NET4.0 IP Protocols: ICMP, UDP, TCP, IGMP IP: routing cache hash table of 512 buckets, 4Kbytes TCP: Hash tables configured (established 4096 bind 4096) NET4: Unix domain sockets 1.0/SMP for Linux NET4.0. devfs: v0.102 (20000622) Richard Gooch (rgooch@atnf.csiro.au) devfs: boot_options: 0x0 reiserfs: checking transaction log (device 03:41) ... Using r5 hash to sort names ReiserFS version 3.6.25 VFS: Mounted root (reiserfs filesystem) readonly. Mounted devfs on /dev Freeing unused kernel memory: 188k freed Adding Swap: 18136k swap-space (priority -1) usb.c: registered new driver usbdevfs usb.c: registered new driver hub IRQ for 00:01.2:0 -> PIRQ 62, mask 1eb8, excl 0000 -> newirq=10 -> got IRQ 10 PCI: Found IRQ 10 for device 00:01.2 PCI: The same IRQ used for device 00:01.1 usb-ohci.c: USB OHCI at membase 0xc48c6000, IRQ 10 usb-ohci.c: usb-00:01.2, Silicon Integrated Systems [SiS] 7001 usb.c: new USB bus registered, assigned bus number 1 hub.c: USB hub found hub.c: 2 ports detected reiserfs: checking transaction log (device 03:01) ... Using r5 hash to sort names ReiserFS version 3.6.25 Adding Swap: 65528k swap-space (priority -2) Adding Swap: 131064k swap-space (priority -3) I also attached my dmesg from the original pre-modded SiS after this. Linux version 2.4.0-ac12 (root@lucretia.wmis.net) (gcc version 2.95.3 20010125 (prerelease)) #5 Mon Jan 29 01:59:59 EST 2001 BIOS-provided physical RAM map: BIOS-e820: 00000000000a0000 @ 0000000000000000 (usable) BIOS-e820: 0000000000010000 @ 00000000000f0000 (reserved) BIOS-e820: 0000000003efd000 @ 0000000000100000 (usable) BIOS-e820: 0000000000002000 @ 0000000003ffd000 (ACPI data) BIOS-e820: 0000000000001000 @ 0000000003fff000 (ACPI NVS) BIOS-e820: 0000000000010000 @ 00000000ffff0000 (reserved) Scan SMP from c0000000 for 1024 bytes. Scan SMP from c009fc00 for 1024 bytes. Scan SMP from c00f0000 for 65536 bytes. Scan SMP from c0000000 for 4096 bytes. On node 0 totalpages: 16381 zone(0): 4096 pages. zone(1): 12285 pages. zone(2): 0 pages. APIC turned off by hardware. mapped APIC to ffffe000 (01112000) Kernel command line: auto BOOT_IMAGE=lnew ro root=341 BOOT_FILE=/home/kernel/kernel/linux/arch/i386/boot/bzImage Initializing CPU#0 Detected 374.224 MHz processor. Console: colour VGA+ 80x25 Calibrating delay loop... 747.11 BogoMIPS Memory: 62368k/65524k available (940k kernel code, 2772k reserved, 327k data, 188k init, 0k highmem) Dentry-cache hash table entries: 8192 (order: 4, 65536 bytes) Buffer-cache hash table entries: 1024 (order: 0, 4096 bytes) Page-cache hash table entries: 16384 (order: 4, 65536 bytes) Inode-cache hash table entries: 4096 (order: 3, 32768 bytes) VFS: Diskquotas version dquot_6.5.0 initialized CPU: Before vendor init, caps: 008021bf 808029bf 00000000, vendor = 2 CPU: L1 I Cache: 32K (32 bytes/line), D cache 32K (32 bytes/line) CPU: After vendor init, caps: 008021bf 808029bf 00000000 00000002 CPU: After generic, caps: 008021bf 808029bf 00000000 00000002 CPU: Common caps: 008021bf 808029bf 00000000 00000002 CPU: AMD-K6(tm) 3D processor stepping 0c Checking 'hlt' instruction... OK. POSIX conformance testing by UNIFIX mtrr: v1.37 (20001109) Richard Gooch (rgooch@atnf.csiro.au) mtrr: detected mtrr type: AMD K6 PCI: BIOS32 Service Directory structure at 0xc00f9b50 PCI: BIOS32 Service Directory entry at 0xf04d0 PCI: BIOS probe returned s=00 hw=11 ver=02.10 l=00 PCI: PCI BIOS revision 2.10 entry at 0xf0500, last bus=0 PCI: Using configuration type 1 PCI: Probing PCI hardware PCI: Setting max latency to 32 PCI: IDE base address trash cleared for 00:01.1 PCI: IDE base address fixup for 00:01.1 PCI: Scanning for ghost devices on bus 0 PCI: IRQ init PCI: Interrupt Routing Table found at 0xc00f0af0 00:0c slot=01 0:41/1eb8 1:42/1eb8 2:43/1eb8 3:44/1eb8 00:0b slot=02 0:42/1eb8 1:43/1eb8 2:44/1eb8 3:41/1eb8 00:0a slot=03 0:43/1eb8 1:44/1eb8 2:41/1eb8 3:42/1eb8 00:09 slot=04 0:44/1eb8 1:41/1eb8 2:42/1eb8 3:43/1eb8 00:01 slot=00 0:62/1eb8 1:00/0000 2:00/0000 3:00/0000 00:13 slot=00 0:41/1eb8 1:42/1eb8 2:43/1eb8 3:44/1eb8 PCI: Using IRQ router SIS [1039/0008] at 00:01.0 PCI: IRQ fixup PCI: Allocating resources PCI: Resource 0000d000-0000d00f (f=101, d=0, p=0) PCI: Resource dd000000-dd000fff (f=200, d=0, p=0) PCI: Resource 0000b800-0000b807 (f=101, d=0, p=0) PCI: Resource dc800000-dc87ffff (f=200, d=0, p=0) PCI: Resource e0000000-e7ffffff (f=1208, d=0, p=0) PCI: Resource df000000-df000fff (f=1208, d=0, p=0) PCI: Resource 0000b400-0000b41f (f=101, d=0, p=0) PCI: Resource dc000000-dc0fffff (f=200, d=0, p=0) PCI: Resource de000000-de3fffff (f=1208, d=1, p=1) PCI: Resource db800000-db80ffff (f=200, d=1, p=1) PCI: Resource 0000b000-0000b07f (f=101, d=1, p=1) PCI: Sorting device list... Disabling direct PCI/PCI transfers. isapnp: Scanning for Pnp cards... isapnp: No Plug & Play device found Linux NET4.0 for Linux 2.4 Based upon Swansea University Computer Society NET3.039 Initializing RT netlink socket apm: BIOS version 1.2 Flags 0x03 (Driver version 1.14) Starting kswapd v1.8 pty: 256 Unix98 ptys configured block: queued sectors max/low 41341kB/31006kB, 128 slots per queue Uniform Multi-Platform E-IDE driver Revision: 6.31 ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx SIS5513: IDE controller on PCI bus 00 dev 09 IRQ for 00:01.1:0 -> PIRQ 62, mask 1eb8, excl 0000 -> newirq=10 -> got IRQ 7 IRQ routing conflict in pirq table! Try 'pci=autoirq' SIS5513: chipset revision 208 SIS5513: not 100% native mode: will probe irqs later SiS5597 ide0: BM-DMA at 0xd000-0xd007, BIOS settings: hda:DMA, hdb:DMA ide1: BM-DMA at 0xd008-0xd00f, BIOS settings: hdc:DMA, hdd:pio keyboard: Timeout - AT keyboard not present? keyboard: Timeout - AT keyboard not present? hda: ST5660A, ATA DISK drive hdb: IBM-DJAA-31700, ATA DISK drive hdc: Maxtor 72700 AP, ATA DISK drive ide0 at 0x1f0-0x1f7,0x3f6 on irq 14 ide1 at 0x170-0x177,0x376 on irq 15 hda: 1066184 sectors (546 MB) w/256KiB Cache, CHS=528/32/63, DMA hdb: 3334464 sectors (1707 MB) w/96KiB Cache, CHS=827/64/63, DMA hdc: 5290320 sectors (2709 MB) w/128KiB Cache, CHS=5248/16/63, DMA Partition check: /dev/ide/host0/bus0/target0/lun0: p1 p2 /dev/ide/host0/bus0/target1/lun0: p1 /dev/ide/host0/bus1/target0/lun0: [PTBL] [656/128/63] p1 Floppy drive(s): fd0 is 1.44M FDC 0 is a post-1991 82077 Serial driver version 5.02 (2000-08-09) with MANY_PORTS SHARE_IRQ DETECT_IRQ SERIAL_PCI ISAPNP enabled ttyS00 at 0x03f8 (irq = 4) is a 16550A ttyS01 at 0x02f8 (irq = 3) is a 16550A IRQ for 00:0a.0:0 -> PIRQ 43, mask 1eb8, excl 0000 -> newirq=5 -> got IRQ 5 PCI: Found IRQ 5 for device 00:0a.0 ttyS02 at port 0xb800 (irq = 5) is a 16550A Real Time Clock Driver v1.10d eepro100.c:v1.09j-t 9/29/99 Donald Becker http://cesdis.gsfc.nasa.gov/linux/drivers/eepro100.html eepro100.c: $Revision: 1.35 $ 2000/11/17 Modified by Andrey V. Savochkin <saw@saw.sw.com.sg> and others IRQ for 00:0c.0:0 -> PIRQ 41, mask 1eb8, excl 0000 -> newirq=10 -> got IRQ 10 PCI: Found IRQ 10 for device 00:0c.0 eth0: Intel Corporation 82557 [Ethernet Pro 100], 00:A0:C9:0D:A6:1F, IRQ 10. Board assembly 352509-003, Physical connectors present: RJ45 Primary interface chip DP83840 PHY #1. DP83840 specific setup, setting register 23 to 8462. General self-test: passed. Serial sub-system self-test: passed. Internal registers self-test: passed. ROM checksum self-test: passed (0x49caa8d6). Receiver lock-up workaround activated. PPP generic driver version 2.4.1 PPP Deflate Compression module registered PPP BSD Compression module registered NET4: Linux TCP/IP 1.0 for NET4.0 IP Protocols: ICMP, UDP, TCP, IGMP IP: routing cache hash table of 512 buckets, 4Kbytes TCP: Hash tables configured (established 4096 bind 4096) NET4: Unix domain sockets 1.0/SMP for Linux NET4.0. devfs: v0.102 (20000622) Richard Gooch (rgooch@atnf.csiro.au) devfs: boot_options: 0x0 reiserfs: checking transaction log (device 03:41) ... Warning, log replay starting on readonly filesystem Using r5 hash to sort names ReiserFS version 3.6.25 VFS: Mounted root (reiserfs filesystem) readonly. Mounted devfs on /dev Freeing unused kernel memory: 188k freed Adding Swap: 18136k swap-space (priority -1) usb.c: registered new driver usbdevfs usb.c: registered new driver hub IRQ for 00:01.2:0 -> PIRQ 62, mask 1eb8, excl 0000 -> newirq=7 -> got IRQ 7 PCI: Found IRQ 7 for device 00:01.2 PCI: The same IRQ used for device 00:01.1 usb-ohci.c: USB OHCI at membase 0xc48c6000, IRQ 7 usb-ohci.c: usb-00:01.2, Silicon Integrated Systems [SiS] 7001 usb.c: new USB bus registered, assigned bus number 1 hub.c: USB hub found hub.c: 2 ports detected reiserfs: checking transaction log (device 03:01) ... Using r5 hash to sort names ReiserFS version 3.6.25 Adding Swap: 65528k swap-space (priority -2) Adding Swap: 131064k swap-space (priority -3) ip_tables: (c)2000 Netfilter core team ip_conntrack (511 buckets, 4088 max) - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/ ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: PCI IRQ routing problem in 2.4.0 (SiS results part 2) 2001-01-29 7:10 ` PCI IRQ routing problem in 2.4.0 (SiS results part 2) Aaron Tiensivu @ 2001-01-29 7:21 ` Linus Torvalds 0 siblings, 0 replies; 17+ messages in thread From: Linus Torvalds @ 2001-01-29 7:21 UTC (permalink / raw) To: Aaron Tiensivu; +Cc: linux-kernel On Mon, 29 Jan 2001, Aaron Tiensivu wrote: > | Which one was it you got a PIRQ conflict for before? as it te device at > | 00:01.00 with the strange "0x62" entry? > > Yes. You've got the pirq setup from hell. Mind doing that "dump_pirq" thing, preferably run on an _unmodified_ 2.4.0 kernel (ie none of my test-hacks) or on a 2.2.x kernel (that doesn't even _try_ to do any routing at all - or you can get the same effect by just making "set_sis_pirq()" always just return 0 without doing anything)? I don't want to get quantum effects of the observer changing what is being observed.. > | How about you try adding the line > | pirq = (pirq-1) & 3; > | at the top of both pirq_sis_get() and pirq_sis_set() (with my "alternate" > | SiS routines). What happens then? > > Done. Not any better. The thing just moves around, it seems. I'll think about this, and try to find the SiS irq routing register spec somewhere.. Linus - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/ ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: PCI IRQ routing problem in 2.4.0 (SiS results part 2) 2001-01-29 5:50 ` Linus Torvalds 2001-01-29 7:10 ` PCI IRQ routing problem in 2.4.0 (SiS results part 2) Aaron Tiensivu @ 2001-01-29 7:11 ` Aaron Tiensivu 1 sibling, 0 replies; 17+ messages in thread From: Aaron Tiensivu @ 2001-01-29 7:11 UTC (permalink / raw) To: Linus Torvalds; +Cc: linux-kernel | Which one was it you got a PIRQ conflict for before? as it te device at | 00:01.00 with the strange "0x62" entry? Yes. | How about you try adding the line | pirq = (pirq-1) & 3; | at the top of both pirq_sis_get() and pirq_sis_set() (with my "alternate" | SiS routines). What happens then? Done. Linux version 2.4.0-ac12 (root@usr1-ip012-cs.wmis.net) (gcc version 2.95.3 20010125 (prerelease)) #4 Mon Jan 29 01:53:12 EST 2001 BIOS-provided physical RAM map: BIOS-e820: 00000000000a0000 @ 0000000000000000 (usable) BIOS-e820: 0000000000010000 @ 00000000000f0000 (reserved) BIOS-e820: 0000000003efd000 @ 0000000000100000 (usable) BIOS-e820: 0000000000002000 @ 0000000003ffd000 (ACPI data) BIOS-e820: 0000000000001000 @ 0000000003fff000 (ACPI NVS) BIOS-e820: 0000000000010000 @ 00000000ffff0000 (reserved) Scan SMP from c0000000 for 1024 bytes. Scan SMP from c009fc00 for 1024 bytes. Scan SMP from c00f0000 for 65536 bytes. Scan SMP from c0000000 for 4096 bytes. On node 0 totalpages: 16381 zone(0): 4096 pages. zone(1): 12285 pages. zone(2): 0 pages. APIC turned off by hardware. mapped APIC to ffffe000 (01112000) Kernel command line: auto BOOT_IMAGE=lnew ro root=341 BOOT_FILE=/home/kernel/kernel/linux/arch/i386/boot/bzImage Initializing CPU#0 Detected 374.227 MHz processor. Console: colour VGA+ 80x25 Calibrating delay loop... 747.11 BogoMIPS Memory: 62368k/65524k available (940k kernel code, 2772k reserved, 327k data, 188k init, 0k highmem) Dentry-cache hash table entries: 8192 (order: 4, 65536 bytes) Buffer-cache hash table entries: 1024 (order: 0, 4096 bytes) Page-cache hash table entries: 16384 (order: 4, 65536 bytes) Inode-cache hash table entries: 4096 (order: 3, 32768 bytes) VFS: Diskquotas version dquot_6.5.0 initialized CPU: Before vendor init, caps: 008021bf 808029bf 00000000, vendor = 2 CPU: L1 I Cache: 32K (32 bytes/line), D cache 32K (32 bytes/line) CPU: After vendor init, caps: 008021bf 808029bf 00000000 00000002 CPU: After generic, caps: 008021bf 808029bf 00000000 00000002 CPU: Common caps: 008021bf 808029bf 00000000 00000002 CPU: AMD-K6(tm) 3D processor stepping 0c Checking 'hlt' instruction... OK. POSIX conformance testing by UNIFIX mtrr: v1.37 (20001109) Richard Gooch (rgooch@atnf.csiro.au) mtrr: detected mtrr type: AMD K6 PCI: BIOS32 Service Directory structure at 0xc00f9b50 PCI: BIOS32 Service Directory entry at 0xf04d0 PCI: BIOS probe returned s=00 hw=11 ver=02.10 l=00 PCI: PCI BIOS revision 2.10 entry at 0xf0500, last bus=0 PCI: Using configuration type 1 PCI: Probing PCI hardware PCI: Setting max latency to 32 PCI: IDE base address trash cleared for 00:01.1 PCI: IDE base address fixup for 00:01.1 PCI: Scanning for ghost devices on bus 0 PCI: IRQ init PCI: Interrupt Routing Table found at 0xc00f0af0 00:0c slot=01 0:41/1eb8 1:42/1eb8 2:43/1eb8 3:44/1eb8 00:0b slot=02 0:42/1eb8 1:43/1eb8 2:44/1eb8 3:41/1eb8 00:0a slot=03 0:43/1eb8 1:44/1eb8 2:41/1eb8 3:42/1eb8 00:09 slot=04 0:44/1eb8 1:41/1eb8 2:42/1eb8 3:43/1eb8 00:01 slot=00 0:62/1eb8 1:00/0000 2:00/0000 3:00/0000 00:13 slot=00 0:41/1eb8 1:42/1eb8 2:43/1eb8 3:44/1eb8 PCI: Using IRQ router SIS [1039/0008] at 00:01.0 PCI: IRQ fixup PCI: Allocating resources PCI: Resource 0000d000-0000d00f (f=101, d=0, p=0) PCI: Resource dd000000-dd000fff (f=200, d=0, p=0) PCI: Resource 0000b800-0000b807 (f=101, d=0, p=0) PCI: Resource dc800000-dc87ffff (f=200, d=0, p=0) PCI: Resource e0000000-e7ffffff (f=1208, d=0, p=0) PCI: Resource df000000-df000fff (f=1208, d=0, p=0) PCI: Resource 0000b400-0000b41f (f=101, d=0, p=0) PCI: Resource dc000000-dc0fffff (f=200, d=0, p=0) PCI: Resource de000000-de3fffff (f=1208, d=1, p=1) PCI: Resource db800000-db80ffff (f=200, d=1, p=1) PCI: Resource 0000b000-0000b07f (f=101, d=1, p=1) PCI: Sorting device list... Disabling direct PCI/PCI transfers. isapnp: Scanning for Pnp cards... isapnp: No Plug & Play device found Linux NET4.0 for Linux 2.4 Based upon Swansea University Computer Society NET3.039 Initializing RT netlink socket apm: BIOS version 1.2 Flags 0x03 (Driver version 1.14) Starting kswapd v1.8 pty: 256 Unix98 ptys configured block: queued sectors max/low 41341kB/31006kB, 128 slots per queue Uniform Multi-Platform E-IDE driver Revision: 6.31 ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx SIS5513: IDE controller on PCI bus 00 dev 09 IRQ for 00:01.1:0 -> PIRQ 62, mask 1eb8, excl 0000 -> newirq=10 -> got IRQ 10 PCI: Found IRQ 10 for device 00:01.1 PCI: The same IRQ used for device 00:01.2 SIS5513: chipset revision 208 SIS5513: not 100% native mode: will probe irqs later SiS5597 ide0: BM-DMA at 0xd000-0xd007, BIOS settings: hda:DMA, hdb:DMA ide1: BM-DMA at 0xd008-0xd00f, BIOS settings: hdc:DMA, hdd:pio keyboard: Timeout - AT keyboard not present? keyboard: Timeout - AT keyboard not present? hda: ST5660A, ATA DISK drive hdb: IBM-DJAA-31700, ATA DISK drive hdc: Maxtor 72700 AP, ATA DISK drive ide0 at 0x1f0-0x1f7,0x3f6 on irq 14 ide1 at 0x170-0x177,0x376 on irq 15 hda: 1066184 sectors (546 MB) w/256KiB Cache, CHS=528/32/63, DMA hdb: 3334464 sectors (1707 MB) w/96KiB Cache, CHS=827/64/63, DMA hdc: 5290320 sectors (2709 MB) w/128KiB Cache, CHS=5248/16/63, DMA Partition check: /dev/ide/host0/bus0/target0/lun0: p1 p2 /dev/ide/host0/bus0/target1/lun0: p1 /dev/ide/host0/bus1/target0/lun0: [PTBL] [656/128/63] p1 Floppy drive(s): fd0 is 1.44M FDC 0 is a post-1991 82077 Serial driver version 5.02 (2000-08-09) with MANY_PORTS SHARE_IRQ DETECT_IRQ SERIAL_PCI ISAPNP enabled ttyS00 at 0x03f8 (irq = 4) is a 16550A ttyS01 at 0x02f8 (irq = 3) is a 16550A IRQ for 00:0a.0:0 -> PIRQ 43, mask 1eb8, excl 0000 -> newirq=5 -> got IRQ 11 IRQ routing conflict in pirq table! Try 'pci=autoirq' ttyS02 at port 0xb800 (irq = 5) is a 16550A Real Time Clock Driver v1.10d eepro100.c:v1.09j-t 9/29/99 Donald Becker http://cesdis.gsfc.nasa.gov/linux/drivers/eepro100.html eepro100.c: $Revision: 1.35 $ 2000/11/17 Modified by Andrey V. Savochkin <saw@saw.sw.com.sg> and others IRQ for 00:0c.0:0 -> PIRQ 41, mask 1eb8, excl 0000 -> newirq=10 -> assigning IRQ 10 ... OK PCI: Assigned IRQ 10 for device 00:0c.0 eth0: Intel Corporation 82557 [Ethernet Pro 100], 00:A0:C9:0D:A6:1F, IRQ 10. Board assembly 352509-003, Physical connectors present: RJ45 Primary interface chip DP83840 PHY #1. DP83840 specific setup, setting register 23 to 8462. General self-test: passed. Serial sub-system self-test: passed. Internal registers self-test: passed. ROM checksum self-test: passed (0x49caa8d6). Receiver lock-up workaround activated. PPP generic driver version 2.4.1 PPP Deflate Compression module registered PPP BSD Compression module registered NET4: Linux TCP/IP 1.0 for NET4.0 IP Protocols: ICMP, UDP, TCP, IGMP IP: routing cache hash table of 512 buckets, 4Kbytes TCP: Hash tables configured (established 4096 bind 4096) NET4: Unix domain sockets 1.0/SMP for Linux NET4.0. devfs: v0.102 (20000622) Richard Gooch (rgooch@atnf.csiro.au) devfs: boot_options: 0x0 reiserfs: checking transaction log (device 03:41) ... Using r5 hash to sort names ReiserFS version 3.6.25 VFS: Mounted root (reiserfs filesystem) readonly. Mounted devfs on /dev Freeing unused kernel memory: 188k freed Adding Swap: 18136k swap-space (priority -1) usb.c: registered new driver usbdevfs usb.c: registered new driver hub IRQ for 00:01.2:0 -> PIRQ 62, mask 1eb8, excl 0000 -> newirq=10 -> got IRQ 10 PCI: Found IRQ 10 for device 00:01.2 PCI: The same IRQ used for device 00:01.1 usb-ohci.c: USB OHCI at membase 0xc48c6000, IRQ 10 usb-ohci.c: usb-00:01.2, Silicon Integrated Systems [SiS] 7001 usb.c: new USB bus registered, assigned bus number 1 hub.c: USB hub found hub.c: 2 ports detected reiserfs: checking transaction log (device 03:01) ... Using r5 hash to sort names ReiserFS version 3.6.25 Adding Swap: 65528k swap-space (priority -2) Adding Swap: 131064k swap-space (priority -3) I also attached my dmesg from the original pre-modded SiS after this. Linux version 2.4.0-ac12 (root@lucretia.wmis.net) (gcc version 2.95.3 20010125 (prerelease)) #5 Mon Jan 29 01:59:59 EST 2001 BIOS-provided physical RAM map: BIOS-e820: 00000000000a0000 @ 0000000000000000 (usable) BIOS-e820: 0000000000010000 @ 00000000000f0000 (reserved) BIOS-e820: 0000000003efd000 @ 0000000000100000 (usable) BIOS-e820: 0000000000002000 @ 0000000003ffd000 (ACPI data) BIOS-e820: 0000000000001000 @ 0000000003fff000 (ACPI NVS) BIOS-e820: 0000000000010000 @ 00000000ffff0000 (reserved) Scan SMP from c0000000 for 1024 bytes. Scan SMP from c009fc00 for 1024 bytes. Scan SMP from c00f0000 for 65536 bytes. Scan SMP from c0000000 for 4096 bytes. On node 0 totalpages: 16381 zone(0): 4096 pages. zone(1): 12285 pages. zone(2): 0 pages. APIC turned off by hardware. mapped APIC to ffffe000 (01112000) Kernel command line: auto BOOT_IMAGE=lnew ro root=341 BOOT_FILE=/home/kernel/kernel/linux/arch/i386/boot/bzImage Initializing CPU#0 Detected 374.224 MHz processor. Console: colour VGA+ 80x25 Calibrating delay loop... 747.11 BogoMIPS Memory: 62368k/65524k available (940k kernel code, 2772k reserved, 327k data, 188k init, 0k highmem) Dentry-cache hash table entries: 8192 (order: 4, 65536 bytes) Buffer-cache hash table entries: 1024 (order: 0, 4096 bytes) Page-cache hash table entries: 16384 (order: 4, 65536 bytes) Inode-cache hash table entries: 4096 (order: 3, 32768 bytes) VFS: Diskquotas version dquot_6.5.0 initialized CPU: Before vendor init, caps: 008021bf 808029bf 00000000, vendor = 2 CPU: L1 I Cache: 32K (32 bytes/line), D cache 32K (32 bytes/line) CPU: After vendor init, caps: 008021bf 808029bf 00000000 00000002 CPU: After generic, caps: 008021bf 808029bf 00000000 00000002 CPU: Common caps: 008021bf 808029bf 00000000 00000002 CPU: AMD-K6(tm) 3D processor stepping 0c Checking 'hlt' instruction... OK. POSIX conformance testing by UNIFIX mtrr: v1.37 (20001109) Richard Gooch (rgooch@atnf.csiro.au) mtrr: detected mtrr type: AMD K6 PCI: BIOS32 Service Directory structure at 0xc00f9b50 PCI: BIOS32 Service Directory entry at 0xf04d0 PCI: BIOS probe returned s=00 hw=11 ver=02.10 l=00 PCI: PCI BIOS revision 2.10 entry at 0xf0500, last bus=0 PCI: Using configuration type 1 PCI: Probing PCI hardware PCI: Setting max latency to 32 PCI: IDE base address trash cleared for 00:01.1 PCI: IDE base address fixup for 00:01.1 PCI: Scanning for ghost devices on bus 0 PCI: IRQ init PCI: Interrupt Routing Table found at 0xc00f0af0 00:0c slot=01 0:41/1eb8 1:42/1eb8 2:43/1eb8 3:44/1eb8 00:0b slot=02 0:42/1eb8 1:43/1eb8 2:44/1eb8 3:41/1eb8 00:0a slot=03 0:43/1eb8 1:44/1eb8 2:41/1eb8 3:42/1eb8 00:09 slot=04 0:44/1eb8 1:41/1eb8 2:42/1eb8 3:43/1eb8 00:01 slot=00 0:62/1eb8 1:00/0000 2:00/0000 3:00/0000 00:13 slot=00 0:41/1eb8 1:42/1eb8 2:43/1eb8 3:44/1eb8 PCI: Using IRQ router SIS [1039/0008] at 00:01.0 PCI: IRQ fixup PCI: Allocating resources PCI: Resource 0000d000-0000d00f (f=101, d=0, p=0) PCI: Resource dd000000-dd000fff (f=200, d=0, p=0) PCI: Resource 0000b800-0000b807 (f=101, d=0, p=0) PCI: Resource dc800000-dc87ffff (f=200, d=0, p=0) PCI: Resource e0000000-e7ffffff (f=1208, d=0, p=0) PCI: Resource df000000-df000fff (f=1208, d=0, p=0) PCI: Resource 0000b400-0000b41f (f=101, d=0, p=0) PCI: Resource dc000000-dc0fffff (f=200, d=0, p=0) PCI: Resource de000000-de3fffff (f=1208, d=1, p=1) PCI: Resource db800000-db80ffff (f=200, d=1, p=1) PCI: Resource 0000b000-0000b07f (f=101, d=1, p=1) PCI: Sorting device list... Disabling direct PCI/PCI transfers. isapnp: Scanning for Pnp cards... isapnp: No Plug & Play device found Linux NET4.0 for Linux 2.4 Based upon Swansea University Computer Society NET3.039 Initializing RT netlink socket apm: BIOS version 1.2 Flags 0x03 (Driver version 1.14) Starting kswapd v1.8 pty: 256 Unix98 ptys configured block: queued sectors max/low 41341kB/31006kB, 128 slots per queue Uniform Multi-Platform E-IDE driver Revision: 6.31 ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx SIS5513: IDE controller on PCI bus 00 dev 09 IRQ for 00:01.1:0 -> PIRQ 62, mask 1eb8, excl 0000 -> newirq=10 -> got IRQ 7 IRQ routing conflict in pirq table! Try 'pci=autoirq' SIS5513: chipset revision 208 SIS5513: not 100% native mode: will probe irqs later SiS5597 ide0: BM-DMA at 0xd000-0xd007, BIOS settings: hda:DMA, hdb:DMA ide1: BM-DMA at 0xd008-0xd00f, BIOS settings: hdc:DMA, hdd:pio keyboard: Timeout - AT keyboard not present? keyboard: Timeout - AT keyboard not present? hda: ST5660A, ATA DISK drive hdb: IBM-DJAA-31700, ATA DISK drive hdc: Maxtor 72700 AP, ATA DISK drive ide0 at 0x1f0-0x1f7,0x3f6 on irq 14 ide1 at 0x170-0x177,0x376 on irq 15 hda: 1066184 sectors (546 MB) w/256KiB Cache, CHS=528/32/63, DMA hdb: 3334464 sectors (1707 MB) w/96KiB Cache, CHS=827/64/63, DMA hdc: 5290320 sectors (2709 MB) w/128KiB Cache, CHS=5248/16/63, DMA Partition check: /dev/ide/host0/bus0/target0/lun0: p1 p2 /dev/ide/host0/bus0/target1/lun0: p1 /dev/ide/host0/bus1/target0/lun0: [PTBL] [656/128/63] p1 Floppy drive(s): fd0 is 1.44M FDC 0 is a post-1991 82077 Serial driver version 5.02 (2000-08-09) with MANY_PORTS SHARE_IRQ DETECT_IRQ SERIAL_PCI ISAPNP enabled ttyS00 at 0x03f8 (irq = 4) is a 16550A ttyS01 at 0x02f8 (irq = 3) is a 16550A IRQ for 00:0a.0:0 -> PIRQ 43, mask 1eb8, excl 0000 -> newirq=5 -> got IRQ 5 PCI: Found IRQ 5 for device 00:0a.0 ttyS02 at port 0xb800 (irq = 5) is a 16550A Real Time Clock Driver v1.10d eepro100.c:v1.09j-t 9/29/99 Donald Becker http://cesdis.gsfc.nasa.gov/linux/drivers/eepro100.html eepro100.c: $Revision: 1.35 $ 2000/11/17 Modified by Andrey V. Savochkin <saw@saw.sw.com.sg> and others IRQ for 00:0c.0:0 -> PIRQ 41, mask 1eb8, excl 0000 -> newirq=10 -> got IRQ 10 PCI: Found IRQ 10 for device 00:0c.0 eth0: Intel Corporation 82557 [Ethernet Pro 100], 00:A0:C9:0D:A6:1F, IRQ 10. Board assembly 352509-003, Physical connectors present: RJ45 Primary interface chip DP83840 PHY #1. DP83840 specific setup, setting register 23 to 8462. General self-test: passed. Serial sub-system self-test: passed. Internal registers self-test: passed. ROM checksum self-test: passed (0x49caa8d6). Receiver lock-up workaround activated. PPP generic driver version 2.4.1 PPP Deflate Compression module registered PPP BSD Compression module registered NET4: Linux TCP/IP 1.0 for NET4.0 IP Protocols: ICMP, UDP, TCP, IGMP IP: routing cache hash table of 512 buckets, 4Kbytes TCP: Hash tables configured (established 4096 bind 4096) NET4: Unix domain sockets 1.0/SMP for Linux NET4.0. devfs: v0.102 (20000622) Richard Gooch (rgooch@atnf.csiro.au) devfs: boot_options: 0x0 reiserfs: checking transaction log (device 03:41) ... Warning, log replay starting on readonly filesystem Using r5 hash to sort names ReiserFS version 3.6.25 VFS: Mounted root (reiserfs filesystem) readonly. Mounted devfs on /dev Freeing unused kernel memory: 188k freed Adding Swap: 18136k swap-space (priority -1) usb.c: registered new driver usbdevfs usb.c: registered new driver hub IRQ for 00:01.2:0 -> PIRQ 62, mask 1eb8, excl 0000 -> newirq=7 -> got IRQ 7 PCI: Found IRQ 7 for device 00:01.2 PCI: The same IRQ used for device 00:01.1 usb-ohci.c: USB OHCI at membase 0xc48c6000, IRQ 7 usb-ohci.c: usb-00:01.2, Silicon Integrated Systems [SiS] 7001 usb.c: new USB bus registered, assigned bus number 1 hub.c: USB hub found hub.c: 2 ports detected reiserfs: checking transaction log (device 03:01) ... Using r5 hash to sort names ReiserFS version 3.6.25 Adding Swap: 65528k swap-space (priority -2) Adding Swap: 131064k swap-space (priority -3) ip_tables: (c)2000 Netfilter core team ip_conntrack (511 buckets, 4088 max) - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/ ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: PCI IRQ routing problem in 2.4.0 (SiS results) 2001-01-29 4:58 ` Linus Torvalds 2001-01-29 5:11 ` Tim Hockin 2001-01-29 5:29 ` PCI IRQ routing problem in 2.4.0 (SiS results) Aaron Tiensivu @ 2001-01-29 5:30 ` Aaron Tiensivu 2001-01-29 6:08 ` PCI IRQ routing problem in 2.4.0 Robert Siemer 3 siblings, 0 replies; 17+ messages in thread From: Aaron Tiensivu @ 2001-01-29 5:30 UTC (permalink / raw) To: Linus Torvalds, linux-kernel | Your "link" values are in the range 1-4. Which makes perfect sense, but | that's absolutely _not_ what the Linux SiS routing code expects (the code | seems to expect them to be ASCII 'A' - 'D'). | It looks very much like "pirq_sis_get()" and "pirq_sis_set()" in | arch/i386/kernel/pci-irq.c are broken for your setup. My ASUS SP97-V complains about PIRQ conflicts so I gave this a whirl (It is SiS 5598 based) | Anybody else with SiS chipsets that want to try the above? Please.. Here is my dmesg: Linux version 2.4.0-ac12 (root@usr1-ip031-cs.wmis.net) (gcc version 2.95.3 20010125 (prerelease)) #3 Mon Jan 29 00:16:07 EST 2001 BIOS-provided physical RAM map: BIOS-e820: 00000000000a0000 @ 0000000000000000 (usable) BIOS-e820: 0000000000010000 @ 00000000000f0000 (reserved) BIOS-e820: 0000000003efd000 @ 0000000000100000 (usable) BIOS-e820: 0000000000002000 @ 0000000003ffd000 (ACPI data) BIOS-e820: 0000000000001000 @ 0000000003fff000 (ACPI NVS) BIOS-e820: 0000000000010000 @ 00000000ffff0000 (reserved) Scan SMP from c0000000 for 1024 bytes. Scan SMP from c009fc00 for 1024 bytes. Scan SMP from c00f0000 for 65536 bytes. Scan SMP from c0000000 for 4096 bytes. On node 0 totalpages: 16381 zone(0): 4096 pages. zone(1): 12285 pages. zone(2): 0 pages. APIC turned off by hardware. mapped APIC to ffffe000 (01112000) Kernel command line: auto BOOT_IMAGE=lnew ro root=341 BOOT_FILE=/home/kernel/kernel/linux/arch/i386/boot/bzImage Initializing CPU#0 Detected 374.229 MHz processor. Console: colour VGA+ 80x25 Calibrating delay loop... 747.11 BogoMIPS Memory: 62368k/65524k available (940k kernel code, 2772k reserved, 327k data, 188k init, 0k highmem) Dentry-cache hash table entries: 8192 (order: 4, 65536 bytes) Buffer-cache hash table entries: 1024 (order: 0, 4096 bytes) Page-cache hash table entries: 16384 (order: 4, 65536 bytes) Inode-cache hash table entries: 4096 (order: 3, 32768 bytes) VFS: Diskquotas version dquot_6.5.0 initialized CPU: Before vendor init, caps: 008021bf 808029bf 00000000, vendor = 2 CPU: L1 I Cache: 32K (32 bytes/line), D cache 32K (32 bytes/line) CPU: After vendor init, caps: 008021bf 808029bf 00000000 00000002 CPU: After generic, caps: 008021bf 808029bf 00000000 00000002 CPU: Common caps: 008021bf 808029bf 00000000 00000002 CPU: AMD-K6(tm) 3D processor stepping 0c Checking 'hlt' instruction... OK. POSIX conformance testing by UNIFIX mtrr: v1.37 (20001109) Richard Gooch (rgooch@atnf.csiro.au) mtrr: detected mtrr type: AMD K6 PCI: BIOS32 Service Directory structure at 0xc00f9b50 PCI: BIOS32 Service Directory entry at 0xf04d0 PCI: BIOS probe returned s=00 hw=11 ver=02.10 l=00 PCI: PCI BIOS revision 2.10 entry at 0xf0500, last bus=0 PCI: Using configuration type 1 PCI: Probing PCI hardware PCI: Setting max latency to 32 PCI: IDE base address trash cleared for 00:01.1 PCI: IDE base address fixup for 00:01.1 PCI: Scanning for ghost devices on bus 0 PCI: IRQ init PCI: Interrupt Routing Table found at 0xc00f0af0 00:0c slot=01 0:41/1eb8 1:42/1eb8 2:43/1eb8 3:44/1eb8 00:0b slot=02 0:42/1eb8 1:43/1eb8 2:44/1eb8 3:41/1eb8 00:0a slot=03 0:43/1eb8 1:44/1eb8 2:41/1eb8 3:42/1eb8 00:09 slot=04 0:44/1eb8 1:41/1eb8 2:42/1eb8 3:43/1eb8 00:01 slot=00 0:62/1eb8 1:00/0000 2:00/0000 3:00/0000 00:13 slot=00 0:41/1eb8 1:42/1eb8 2:43/1eb8 3:44/1eb8 PCI: Using IRQ router SIS [1039/0008] at 00:01.0 PCI: IRQ fixup PCI: Allocating resources PCI: Resource 0000d000-0000d00f (f=101, d=0, p=0) PCI: Resource dd000000-dd000fff (f=200, d=0, p=0) PCI: Resource 0000b800-0000b807 (f=101, d=0, p=0) PCI: Resource dc800000-dc87ffff (f=200, d=0, p=0) PCI: Resource e0000000-e7ffffff (f=1208, d=0, p=0) PCI: Resource df000000-df000fff (f=1208, d=0, p=0) PCI: Resource 0000b400-0000b41f (f=101, d=0, p=0) PCI: Resource dc000000-dc0fffff (f=200, d=0, p=0) PCI: Resource de000000-de3fffff (f=1208, d=1, p=1) PCI: Resource db800000-db80ffff (f=200, d=1, p=1) PCI: Resource 0000b000-0000b07f (f=101, d=1, p=1) PCI: Sorting device list... Disabling direct PCI/PCI transfers. isapnp: Scanning for Pnp cards... isapnp: No Plug & Play device found Linux NET4.0 for Linux 2.4 Based upon Swansea University Computer Society NET3.039 Initializing RT netlink socket apm: BIOS version 1.2 Flags 0x03 (Driver version 1.14) Starting kswapd v1.8 pty: 256 Unix98 ptys configured block: queued sectors max/low 41341kB/31006kB, 128 slots per queue Uniform Multi-Platform E-IDE driver Revision: 6.31 ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx SIS5513: IDE controller on PCI bus 00 dev 09 IRQ for 00:01.1:0 -> PIRQ 62, mask 1eb8, excl 0000 -> newirq=10Unknown SiS pirq value 98 -> assigning IRQ 10Unknown SiS pirq value 98 ... failed SIS5513: chipset revision 208 SIS5513: not 100% native mode: will probe irqs later SiS5597 ide0: BM-DMA at 0xd000-0xd007, BIOS settings: hda:DMA, hdb:DMA ide1: BM-DMA at 0xd008-0xd00f, BIOS settings: hdc:DMA, hdd:pio keyboard: Timeout - AT keyboard not present? keyboard: Timeout - AT keyboard not present? hda: ST5660A, ATA DISK drive hdb: IBM-DJAA-31700, ATA DISK drive hdc: Maxtor 72700 AP, ATA DISK drive ide0 at 0x1f0-0x1f7,0x3f6 on irq 14 ide1 at 0x170-0x177,0x376 on irq 15 hda: 1066184 sectors (546 MB) w/256KiB Cache, CHS=528/32/63, DMA hdb: 3334464 sectors (1707 MB) w/96KiB Cache, CHS=827/64/63, DMA hdc: 5290320 sectors (2709 MB) w/128KiB Cache, CHS=5248/16/63, DMA Partition check: /dev/ide/host0/bus0/target0/lun0: p1 p2 /dev/ide/host0/bus0/target1/lun0: p1 /dev/ide/host0/bus1/target0/lun0: [PTBL] [656/128/63] p1 Floppy drive(s): fd0 is 1.44M FDC 0 is a post-1991 82077 Serial driver version 5.02 (2000-08-09) with MANY_PORTS SHARE_IRQ DETECT_IRQ SERIAL_PCI ISAPNP enabled ttyS00 at 0x03f8 (irq = 4) is a 16550A ttyS01 at 0x02f8 (irq = 3) is a 16550A IRQ for 00:0a.0:0 -> PIRQ 43, mask 1eb8, excl 0000 -> newirq=5Unknown SiS pirq value 67 -> assigning IRQ 5Unknown SiS pirq value 67 ... failed ttyS02 at port 0xb800 (irq = 5) is a 16550A Real Time Clock Driver v1.10d eepro100.c:v1.09j-t 9/29/99 Donald Becker http://cesdis.gsfc.nasa.gov/linux/drivers/eepro100.html eepro100.c: $Revision: 1.35 $ 2000/11/17 Modified by Andrey V. Savochkin <saw@saw.sw.com.sg> and others IRQ for 00:0c.0:0 -> PIRQ 41, mask 1eb8, excl 0000 -> newirq=10Unknown SiS pirq value 65 -> assigning IRQ 10Unknown SiS pirq value 65 ... failed eth0: Intel Corporation 82557 [Ethernet Pro 100], 00:A0:C9:0D:A6:1F, IRQ 10. Board assembly 352509-003, Physical connectors present: RJ45 Primary interface chip DP83840 PHY #1. DP83840 specific setup, setting register 23 to 8462. General self-test: passed. Serial sub-system self-test: passed. Internal registers self-test: passed. ROM checksum self-test: passed (0x49caa8d6). Receiver lock-up workaround activated. PPP generic driver version 2.4.1 PPP Deflate Compression module registered PPP BSD Compression module registered NET4: Linux TCP/IP 1.0 for NET4.0 IP Protocols: ICMP, UDP, TCP, IGMP IP: routing cache hash table of 512 buckets, 4Kbytes TCP: Hash tables configured (established 4096 bind 4096) NET4: Unix domain sockets 1.0/SMP for Linux NET4.0. devfs: v0.102 (20000622) Richard Gooch (rgooch@atnf.csiro.au) devfs: boot_options: 0x0 reiserfs: checking transaction log (device 03:41) ... Using r5 hash to sort names ReiserFS version 3.6.25 VFS: Mounted root (reiserfs filesystem) readonly. Mounted devfs on /dev Freeing unused kernel memory: 188k freed Adding Swap: 18136k swap-space (priority -1) usb.c: registered new driver usbdevfs usb.c: wow registered new driver hub IRQ for 00:01.2:0 -> PIRQ 62, mask 1eb8, excl 0000 -> newirq=7Unknown SiS pirq value 98 -> assigning IRQ 7Unknown SiS pirq value 98 ... failed usb-ohci.c: USB OHCI at membase 0xc48c6000, IRQ 7 usb-ohci.c: usb-00:01.2, Silicon Integrated Systems [SiS] 7001 usb.c: new USB bus registered, assigned bus number 1 hub.c: USB hub found hub.c: 2 ports detected reiserfs: checking transaction log (device 03:01) ... Using r5 hash to sort names ReiserFS version 3.6.25 Adding Swap: 65528k swap-space (priority -2) Adding Swap: 131064k swap-space (priority -3) - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/ ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: PCI IRQ routing problem in 2.4.0 2001-01-29 4:58 ` Linus Torvalds ` (2 preceding siblings ...) 2001-01-29 5:30 ` PCI IRQ routing problem in 2.4.0 (SiS results) Aaron Tiensivu @ 2001-01-29 6:08 ` Robert Siemer 2001-01-29 6:24 ` Linus Torvalds 3 siblings, 1 reply; 17+ messages in thread From: Robert Siemer @ 2001-01-29 6:08 UTC (permalink / raw) To: torvalds; +Cc: jgarzik, linux-kernel From: Linus Torvalds <torvalds@transmeta.com> > On Mon, 29 Jan 2001, Robert Siemer wrote: > (...) that's really interesting.. > > > Device 00:01.0 (slot 0): ISA bridge > > INTA: link 0x01, irq mask 0x1eb8 [3,4,5,7,9,10,11,12] > > INTB: link 0x02, irq mask 0x1eb8 [3,4,5,7,9,10,11,12] > > INTC: link 0x03, irq mask 0x1eb8 [3,4,5,7,9,10,11,12] > > INTD: link 0x04, irq mask 0x1eb8 [3,4,5,7,9,10,11,12] > > Your "link" values are in the range 1-4. Which makes perfect sense, but > that's absolutely _not_ what the Linux SiS routing code expects (the code > seems to expect them to be ASCII 'A' - 'D'). > > It looks very much like "pirq_sis_get()" and "pirq_sis_set()" in > arch/i386/kernel/pci-irq.c are broken for your setup. > > Can you replace them with the following: > > static int pirq_sis_get(struct pci_dev *router, struct pci_dev *dev, int pirq) > { > if (pirq <= 4) { > u8 x; > pci_read_config_byte(router, 0x40+pirq, &x); > return (x & 0x80) ? 0 : (x & 0xf); > } > printk("Unknown SiS pirq value %d\n", pirq); > return 0; > } > > and > > static int pirq_sis_set(struct pci_dev *router, struct pci_dev *dev, int pirq, int irq) > { > if (pirq <= 4) { > pci_write_config_byte(router, 0x40 + pirq, irq); > return 1; > } > printk("Unknown SiS pirq value %d\n", pirq); > return 0; > } > > and see if that changes the behaviour. It doesn't. A diff from the kernel output is following. Maybe it helps... Thanks, Robert --- dmesg.2.4.0.debug Sun Jan 28 21:09:46 2001 +++ dmesg.2.4.0 Mon Jan 29 06:25:53 2001 @@ -1,4 +1,4 @@ -Linux version 2.4.0 (root@panorama.hadiko.de) (gcc version egcs-2.91.66 19990314/Linux (egcs-1.1.2 release)) #4 Sun Jan 28 19:03:05 CET 2001 +Linux version 2.4.0 (root@panorama.hadiko.de) (gcc version egcs-2.91.66 19990314/Linux (egcs-1.1.2 release)) #5 Mon Jan 29 06:19:16 CET 2001 BIOS-provided physical RAM map: BIOS-e820: 000000000009fc00 @ 0000000000000000 (usable) BIOS-e820: 0000000000000400 @ 000000000009fc00 (reserved) @@ -231,8 +231,9 @@ bttv: using 2 buffers with 2080k (4160k total) for capture BT848 and your chipset may not work together. bttv: Bt8xx card found (0). -IRQ for 00:09.0:0 -> PIRQ 04, mask 1eb8, excl 0000 -> newirq=11 -> got IRQ 7 -IRQ routing conflict in pirq table! Try 'pci=autoirq' +IRQ for 00:09.0:0 -> PIRQ 04, mask 1eb8, excl 0000 -> newirq=11 -> got IRQ 11 +PCI: Found IRQ 11 for device 00:09.0 +PCI: The same IRQ used for device 00:09.1 bttv0: Bt878 (rev 2) at 00:09.0, irq: 11, latency: 32, memory: 0xe7800000 bttv0: subsystem: 0070:13eb => Hauppauge WinTV => card=10 bttv0: model: BT878(Hauppauge new (bt878)) [autodetected] @@ -278,8 +279,8 @@ ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx SIS5513: IDE controller on PCI bus 00 dev 09 PCI: Enabling device 00:01.1 (0000 -> 0001) -IRQ for 00:01.1:0 -> PIRQ 01, mask 1eb8, excl 0000 -> newirq=12 -> assigning IRQ 12 ... OK -PCI: Assigned IRQ 12 for device 00:01.1 +IRQ for 00:01.1:0 -> PIRQ 01, mask 1eb8, excl 0000 -> newirq=12 -> got IRQ 12 +PCI: Found IRQ 12 for device 00:01.1 PCI: The same IRQ used for device 00:01.2 PCI: The same IRQ used for device 00:0c.0 SIS5513: chipset revision 208 - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/ ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: PCI IRQ routing problem in 2.4.0 2001-01-29 6:08 ` PCI IRQ routing problem in 2.4.0 Robert Siemer @ 2001-01-29 6:24 ` Linus Torvalds 2001-01-29 7:11 ` Robert Siemer 0 siblings, 1 reply; 17+ messages in thread From: Linus Torvalds @ 2001-01-29 6:24 UTC (permalink / raw) To: Robert Siemer; +Cc: jgarzik, linux-kernel On Mon, 29 Jan 2001, Robert Siemer wrote: > > > > and see if that changes the behaviour. > > It doesn't. A diff from the kernel output is following. Maybe it > helps... Actually, this looks like it _did_ fix something - now the kernel no longer thinks there is a IRQ routing conflict, so it does seem to be happier. Also, while you're unhappy that it assigns irq 12 instead of 9, the pirq table actually says that it's ok, and again the code seems to say that this was actually what the system was set up for. Can you re-iterate what the failure mode is, again? Preferable with this kernel that definitely looks like it at least agrees with what the BIOS tells it. Oh, and please do a "lspci -vvvxxx" as root and send me that as well. Thanks, Linus - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/ ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: PCI IRQ routing problem in 2.4.0 2001-01-29 6:24 ` Linus Torvalds @ 2001-01-29 7:11 ` Robert Siemer 2001-01-29 7:41 ` Linus Torvalds 0 siblings, 1 reply; 17+ messages in thread From: Robert Siemer @ 2001-01-29 7:11 UTC (permalink / raw) To: torvalds; +Cc: jgarzik, linux-kernel From: Linus Torvalds <torvalds@transmeta.com> > On Mon, 29 Jan 2001, Robert Siemer wrote: > > > > > > and see if that changes the behaviour. > > > > It doesn't. A diff from the kernel output is following. Maybe it > > helps... > > Actually, this looks like it _did_ fix something - now the kernel no > longer thinks there is a IRQ routing conflict, so it does seem to be > happier. > > Also, while you're unhappy that it assigns irq 12 instead of 9, the pirq > table actually says that it's ok, and again the code seems to say that > this was actually what the system was set up for. I'm not just unhappy to be unable to control the IRQs with the bios anymore, sym53c8xx doesn't want to share IRQs with the usb subsystem in this case... (kernel panic (killing interrupt handler(?)) and reboot (rebooting in 60 seconds)) 2.4.0-test9 behaviour was different. It really used what the 'bios box' stated during bootup. - A way to set the IRQ distribution via kernel-params is okay for me, too. > Can you re-iterate what the failure mode is, again? Preferable with > this kernel that definitely looks like it at least agrees with what > the BIOS tells it. I'm native German - what is 'failure mode'? 2.4.0-test9 agrees with the bios. [Currently I gave my VGA card (the S3) an IRQ - without one in the bios 2.4.0-test9 was happy, but 2.4.0 gave it IRQ 8 on its own.] > Oh, and please do a "lspci -vvvxxx" as root and send me that as > well. Okay. For 2.4.0-test9 it's following immediately. After that a diff of "lspci -vvx" from 2.4.0-test9 to 2.4.0 is included. Full "lspci -vvx" are in my original post: http://boudicca.tux.org/hypermail/linux-kernel/latest/0130.html To mention it: I have also an ASUS SP97 like Aaron Tiensivu. But the XV version with (unused) onboard VGA. Further I always see '09' in the Configuration Space at Interrupt_Line (0x3c) for the 00:01.2 USB Controller. But 2.4.0 says: Interrupt: pin A routed to IRQ 12 while 2.4.0-test9 states: Interrupt: pin A routed to IRQ 9 Please tell me if it helps te see a "lspci -vvvxxx" from 2.4.0 and whether I should give some 2.4.0-test?? a try... I must go to bed now - otherwise my mother kills me when she reads linux-kernel tomorrow... (-: 00:00.0 Host bridge: Silicon Integrated Systems [SiS] 5597 [SiS5582] (rev 02) Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort+ >SERR- <PERR- Latency: 32 set 00: 39 10 97 55 07 00 00 22 02 00 00 06 00 20 00 00 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50: c0 ea c0 1e fc 04 43 01 60 00 00 00 00 00 00 00 60: e6 00 00 f9 00 ff 00 ff 00 ff 00 ff 80 02 00 00 70: cc 88 00 00 88 88 88 00 00 00 00 00 00 00 00 00 80: 7c c8 ce f7 40 00 10 40 00 00 00 00 00 00 00 00 90: 02 00 03 44 00 00 00 00 00 00 00 07 00 00 ff ff a0: ff ff 00 80 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00:01.0 ISA bridge: Silicon Integrated Systems [SiS] 85C503/5513 (rev 01) Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- Latency: 0 set 00: 39 10 08 00 07 00 00 02 01 00 01 06 00 00 80 00 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 40: fa 0c 0e 0a 0b 64 00 00 ff ff 10 0f 11 20 04 01 50: 11 28 02 01 60 0b 64 0b 9c 2e 12 00 a6 0b 00 00 60: ff 80 49 00 88 00 00 02 00 80 80 00 20 19 00 00 70: 1a 00 00 c1 00 c1 00 00 00 00 00 00 00 00 00 00 80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 90: 00 ec 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00:01.1 IDE interface: Silicon Integrated Systems [SiS] 5513 [IDE] (rev d0) (prog-if 8f [Master SecP SecO PriP PriO]) Control: I/O+ Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- Interrupt: pin A routed to IRQ 12 Region 0: I/O ports at <ignored> Region 1: I/O ports at <ignored> Region 2: I/O ports at <ignored> Region 3: I/O ports at <ignored> Region 4: I/O ports at d000 [size=16] 00: 39 10 13 55 01 00 00 00 d0 8f 01 01 00 20 80 00 10: 01 e4 00 00 01 e0 00 00 01 d8 00 00 01 d4 00 00 20: 01 d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 30: 00 00 00 00 00 00 00 00 00 00 00 00 0c 01 00 00 40: 00 00 00 00 00 00 00 00 00 07 e0 00 00 02 00 02 50: 00 01 07 00 00 00 00 00 00 00 00 00 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00:01.2 USB Controller: Silicon Integrated Systems [SiS] 7001 (rev 10) (prog-if 10 [OHCI]) Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- Latency: 32 set, cache line size 08 Interrupt: pin A routed to IRQ 9 Region 0: Memory at e5000000 (32-bit, non-prefetchable) [size=4K] 00: 39 10 01 70 17 00 80 02 10 10 03 0c 08 20 80 00 10: 00 00 00 e5 00 00 00 00 00 00 00 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 30: 00 00 00 00 00 00 00 00 00 00 00 00 09 01 00 00 40: 00 00 0f 00 00 00 00 00 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00:09.0 Multimedia video controller: Brooktree Corporation Bt878 (rev 02) Subsystem: Hauppage computer works Inc.: Unknown device 13eb Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- Latency: 16 min, 40 max, 32 set Interrupt: pin A routed to IRQ 11 Region 0: Memory at e7800000 (32-bit, prefetchable) [size=4K] 00: 9e 10 6e 03 06 00 80 02 02 00 00 04 00 20 80 00 10: 08 00 80 e7 00 00 00 00 00 00 00 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 70 00 eb 13 30: 00 00 00 00 00 00 00 00 00 00 00 00 0b 01 10 28 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00:09.1 Multimedia controller: Brooktree Corporation Bt878 (rev 02) Subsystem: Hauppage computer works Inc.: Unknown device 13eb Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- Latency: 4 min, 255 max, 32 set Interrupt: pin A routed to IRQ 11 Region 0: Memory at e7000000 (32-bit, prefetchable) [size=4K] 00: 9e 10 78 08 06 00 80 02 02 00 80 04 00 20 80 00 10: 08 00 00 e7 00 00 00 00 00 00 00 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 70 00 eb 13 30: 00 00 00 00 00 00 00 00 00 00 00 00 0b 01 04 ff 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00:0a.0 Ethernet controller: Winbond Electronics Corp W89C940 (rev 0b) Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- Interrupt: pin A routed to IRQ 10 Region 0: I/O ports at b800 [size=32] 00: 50 10 40 09 03 00 80 02 0b 00 00 02 00 00 00 00 10: 01 b8 00 00 00 00 00 00 00 00 00 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 30: 00 00 00 00 00 00 00 00 00 00 00 00 0a 01 00 00 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00:0b.0 VGA compatible controller: S3 Inc. 86c968 [Vision 968 VRAM] rev 0 (prog-if 00 [VGA]) Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping+ SERR- FastB2B- Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- Interrupt: pin A routed to IRQ 14 Region 0: Memory at 10000000 (32-bit, non-prefetchable) [size=64M] Expansion ROM at <unassigned> [disabled] [size=64K] 00: 33 53 f0 88 83 00 00 02 00 00 00 03 00 00 00 00 10: 00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 30: 00 00 00 00 00 00 00 00 00 00 00 00 0e 01 00 00 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00:0c.0 SCSI storage controller: Symbios Logic Inc. (formerly NCR) 53c875 (rev 03) Subsystem: Tekram Technology Co.,Ltd. DC390F Ultra Wide SCSI Controller Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr+ Stepping- SERR- FastB2B- Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- Latency: 17 min, 64 max, 32 set, cache line size 08 Interrupt: pin A routed to IRQ 12 Region 0: I/O ports at b400 [size=256] Region 1: Memory at e1800000 (32-bit, non-prefetchable) [size=256] Region 2: Memory at e1000000 (32-bit, non-prefetchable) [size=4K] Expansion ROM at <unassigned> [disabled] [size=64K] 00: 00 10 0f 00 57 00 00 02 03 00 00 01 08 20 00 00 10: 01 b4 00 00 00 00 80 e1 00 00 00 e1 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 e1 1d 04 39 30: 00 00 00 00 00 00 00 00 00 00 00 00 0c 01 11 40 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: da 00 00 9d 47 0f 09 07 04 00 89 00 80 00 0f 0a 90: ff 60 2a 01 00 ff ff ff 20 f0 35 30 98 03 00 e1 a0: 00 08 24 00 00 00 00 50 b8 03 00 e1 c0 03 00 e1 b0: 00 00 00 e1 b0 76 2a 01 46 6d 00 81 c0 03 00 e1 c0: 8f 05 00 00 75 00 70 0f 0c 00 80 00 76 0c 00 80 d0: 00 00 00 80 00 00 00 80 00 00 00 80 00 84 00 20 e0: 43 d1 e6 21 d0 18 28 00 f8 41 22 81 aa ff cf 53 f0: 12 0f 80 20 6f bf 02 81 8e 84 22 a8 d5 f3 45 73 00:13.0 VGA compatible controller: Silicon Integrated Systems [SiS] 5597/5598 VGA (rev 65) (prog-if 00 [VGA]) Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- Region 0: Memory at e6000000 (32-bit, prefetchable) [disabled] [size=4M] Region 1: Memory at e0800000 (32-bit, non-prefetchable) [disabled] [size=64K] Region 2: I/O ports at b000 [disabled] [size=128] Expansion ROM at e5ff0000 [disabled] [size=32K] 00: 39 10 00 02 00 00 00 02 65 00 00 03 00 00 00 00 10: 08 00 00 e6 00 00 80 e0 01 b0 00 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 30: 00 00 ff e5 00 00 00 00 00 00 00 00 00 00 00 00 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 80 e0 01 b0 00 00 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 90: 00 00 00 00 00 00 80 e0 01 b0 00 00 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 80 e0 01 b0 00 00 00 00 00 00 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 --- lspci-vvx.2.4.0-test9 Sun Jan 28 16:47:43 2001 +++ lspci-vvx.2.4.0 Mon Jan 29 06:25:53 2001 @@ -16,7 +16,7 @@ 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -00:01.1 IDE interface: Silicon Integrated Systems [SiS] 5513 [IDE] (rev d0) (prog-if 8f [Master SecP SecO PriP PriO]) +00:01.1 IDE interface: Silicon Integrated Systems [SiS] 5513 [IDE] (rev d0) (prog-if 8a [Master SecP PriP]) Control: I/O+ Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- Interrupt: pin A routed to IRQ 12 @@ -25,7 +25,7 @@ Region 2: I/O ports at <ignored> Region 3: I/O ports at <ignored> Region 4: I/O ports at d000 [size=16] -00: 39 10 13 55 01 00 00 00 d0 8f 01 01 00 20 80 00 +00: 39 10 13 55 01 00 00 00 d0 8a 01 01 00 20 80 00 10: 01 e4 00 00 01 e0 00 00 01 d8 00 00 01 d4 00 00 20: 01 d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 30: 00 00 00 00 00 00 00 00 00 00 00 00 0c 01 00 00 @@ -34,7 +34,7 @@ Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- Latency: 32 set, cache line size 08 - Interrupt: pin A routed to IRQ 9 + Interrupt: pin A routed to IRQ 12 Region 0: Memory at e5000000 (32-bit, non-prefetchable) [size=4K] 00: 39 10 01 70 17 00 80 02 10 10 03 0c 08 20 80 00 10: 00 00 00 e5 00 00 00 00 00 00 00 00 00 00 00 00 - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/ ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: PCI IRQ routing problem in 2.4.0 2001-01-29 7:11 ` Robert Siemer @ 2001-01-29 7:41 ` Linus Torvalds 2001-01-29 17:19 ` Robert Siemer 0 siblings, 1 reply; 17+ messages in thread From: Linus Torvalds @ 2001-01-29 7:41 UTC (permalink / raw) To: Robert Siemer; +Cc: jgarzik, linux-kernel On Mon, 29 Jan 2001, Robert Siemer wrote: > > Further I always see '09' in the Configuration Space at Interrupt_Line > (0x3c) for the 00:01.2 USB Controller. But 2.4.0 says: > Interrupt: pin A routed to IRQ 12 > while 2.4.0-test9 states: > Interrupt: pin A routed to IRQ 9 Ahhah! I bet it's the code that goes through all PCI devices, and tries to find devices that have the same "pirq" (aka "link") value in the tables. How about this patch? I bet that you'll get a message about pirq table conflicts. Does USB end up working afterwards? Linus ---- --- v2.4.0/linux/arch/i386/kernel/pci-irq.c Wed Jan 3 20:45:26 2001 +++ linux/arch/i386/kernel/pci-irq.c Sun Jan 28 23:36:48 2001 @@ -462,18 +462,9 @@ irq = pirq & 0xf; DBG(" -> hardcoded IRQ %d\n", irq); msg = "Hardcoded"; - if (dev->irq && dev->irq != irq) { - printk("IRQ routing conflict in pirq table! Try 'pci=autoirq'\n"); - return 0; - } } else if (r->get && (irq = r->get(pirq_router_dev, dev, pirq))) { DBG(" -> got IRQ %d\n", irq); msg = "Found"; - /* We refuse to override the dev->irq information. Give a warning! */ - if (dev->irq && dev->irq != irq) { - printk("IRQ routing conflict in pirq table! Try 'pci=autoirq'\n"); - return 0; - } } else if (newirq && r->set && (dev->class >> 8) != PCI_CLASS_DISPLAY_VGA) { DBG(" -> assigning IRQ %d", newirq); if (r->set(pirq_router_dev, dev, pirq, newirq)) { @@ -504,6 +495,11 @@ if (!info) continue; if (info->irq[pin].link == pirq) { + /* We refuse to override the dev->irq information. Give a warning! */ + if (dev2->irq && dev2->irq != irq) { + printk("IRQ routing conflict in pirq table for device %s\n", dev2->slot_name); + continue; + } dev2->irq = irq; pirq_penalty[irq]++; if (dev != dev2) - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/ ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: PCI IRQ routing problem in 2.4.0 2001-01-29 7:41 ` Linus Torvalds @ 2001-01-29 17:19 ` Robert Siemer 0 siblings, 0 replies; 17+ messages in thread From: Robert Siemer @ 2001-01-29 17:19 UTC (permalink / raw) To: torvalds; +Cc: jgarzik, linux-kernel From: Linus Torvalds <torvalds@transmeta.com> > On Mon, 29 Jan 2001, Robert Siemer wrote: > > > > Further I always see '09' in the Configuration Space at Interrupt_Line > > (0x3c) for the 00:01.2 USB Controller. But 2.4.0 says: > > Interrupt: pin A routed to IRQ 12 > > while 2.4.0-test9 states: > > Interrupt: pin A routed to IRQ 9 > > Ahhah! > > I bet it's the code that goes through all PCI devices, and tries to find > devices that have the same "pirq" (aka "link") value in the tables. > > How about this patch? I bet that you'll get a message about pirq table > conflicts. Does USB end up working afterwards? The patch is good! (: Currently I'm using 2.4.0 with both the patch and the alternate pirq-sis-functions. Here some lines from the kernel after loading usb-ohci: usb.c: registered new driver hub IRQ for 00:01.2:0 -> PIRQ 01, mask 1eb8, excl 0000 -> newirq=9 -> got IRQ 12 PCI: Found IRQ 12 for device 00:01.2 PCI: The same IRQ used for device 00:01.1 IRQ routing conflict in pirq table for device 00:01.2 PCI: The same IRQ used for device 00:0c.0 usb-ohci.c: USB OHCI at membase 0xc8901000, IRQ 9 I send two diffs: the first of "dmesg" from a nonworking 2.4.0 to my current (working) kernel, the second of "lspci -vvvxxx" from a working 2.4.0-test9 to the working 2.4.0 I use now. Many thanks, Linus! Robert ---- --- dmesg.2.4.0.alternate_sis_func Mon Jan 29 06:25:53 2001 +++ dmesg.2.4.0.alternate+traversepatch Mon Jan 29 17:16:57 2001 @@ -1,4 +1,4 @@ -Linux version 2.4.0 (root@panorama.hadiko.de) (gcc version egcs-2.91.66 19990314/Linux (egcs-1.1.2 release)) #5 Mon Jan 29 06:19:16 CET 2001 +Linux version 2.4.0 (root@panorama.hadiko.de) (gcc version egcs-2.91.66 19990314/Linux (egcs-1.1.2 release)) #7 Mon Jan 29 15:44:39 CET 2001 BIOS-provided physical RAM map: BIOS-e820: 000000000009fc00 @ 0000000000000000 (usable) BIOS-e820: 0000000000000400 @ 000000000009fc00 (reserved) @@ -231,9 +231,10 @@ bttv: using 2 buffers with 2080k (4160k total) for capture BT848 and your chipset may not work together. bttv: Bt8xx card found (0). -IRQ for 00:09.0:0 -> PIRQ 04, mask 1eb8, excl 0000 -> newirq=11 -> got IRQ 11 -PCI: Found IRQ 11 for device 00:09.0 -PCI: The same IRQ used for device 00:09.1 +IRQ for 00:09.0:0 -> PIRQ 04, mask 1eb8, excl 0000 -> newirq=11 -> got IRQ 10 +PCI: Found IRQ 10 for device 00:09.0 +IRQ routing conflict in pirq table for device 00:09.0 +IRQ routing conflict in pirq table for device 00:09.1 bttv0: Bt878 (rev 2) at 00:09.0, irq: 11, latency: 32, memory: 0xe7800000 bttv0: subsystem: 0070:13eb => Hauppauge WinTV => card=10 bttv0: model: BT878(Hauppauge new (bt878)) [autodetected] @@ -279,9 +280,9 @@ ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx SIS5513: IDE controller on PCI bus 00 dev 09 PCI: Enabling device 00:01.1 (0000 -> 0001) -IRQ for 00:01.1:0 -> PIRQ 01, mask 1eb8, excl 0000 -> newirq=12 -> got IRQ 12 -PCI: Found IRQ 12 for device 00:01.1 -PCI: The same IRQ used for device 00:01.2 +IRQ for 00:01.1:0 -> PIRQ 01, mask 1eb8, excl 0000 -> newirq=12 -> assigning IRQ 12 ... OK +PCI: Assigned IRQ 12 for device 00:01.1 +IRQ routing conflict in pirq table for device 00:01.2 PCI: The same IRQ used for device 00:0c.0 SIS5513: chipset revision 208 SIS5513: not 100% native mode: will probe irqs later --- lspci-vvvxxx.2.4.0-test9 Mon Jan 29 07:43:27 2001 +++ lspci-vvvxxx.2.4.0.alternate+traversepatch Mon Jan 29 17:19:18 2001 @@ -27,8 +27,8 @@ 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -40: fa 0c 0e 0a 0b 64 00 00 ff ff 10 0f 11 20 04 01 -50: 11 28 02 01 60 0b 64 0b 9c 2e 12 00 a6 0b 00 00 +40: 0c 0c 0e 0a 0b 64 00 00 ff ff 10 0f 11 20 04 01 +50: 11 28 02 01 62 0b 64 0b 9c 2e 12 00 36 06 00 00 60: ff 80 49 00 88 00 00 02 00 80 80 00 20 19 00 00 70: 1a 00 00 c1 00 c1 00 00 00 00 00 00 00 00 00 00 80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 @@ -40,7 +40,7 @@ e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -00:01.1 IDE interface: Silicon Integrated Systems [SiS] 5513 [IDE] (rev d0) (prog-if 8f [Master SecP SecO PriP PriO]) +00:01.1 IDE interface: Silicon Integrated Systems [SiS] 5513 [IDE] (rev d0) (prog-if 8a [Master SecP PriP]) Control: I/O+ Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- Interrupt: pin A routed to IRQ 12 @@ -49,7 +49,7 @@ Region 2: I/O ports at <ignored> Region 3: I/O ports at <ignored> Region 4: I/O ports at d000 [size=16] -00: 39 10 13 55 01 00 00 00 d0 8f 01 01 00 20 80 00 +00: 39 10 13 55 01 00 00 00 d0 8a 01 01 00 20 80 00 10: 01 e4 00 00 01 e0 00 00 01 d8 00 00 01 d4 00 00 20: 01 d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 30: 00 00 00 00 00 00 00 00 00 00 00 00 0c 01 00 00 @@ -200,14 +200,14 @@ 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -80: da 00 00 9d 47 0f 09 07 04 00 89 00 80 00 0f 0a -90: ff 60 2a 01 00 ff ff ff 20 f0 35 30 98 03 00 e1 +80: da 00 00 35 47 08 00 07 04 00 80 00 80 00 0f 02 +90: ff c0 2c 01 00 ff ff ff 20 f0 35 30 98 03 00 e1 a0: 00 08 24 00 00 00 00 50 b8 03 00 e1 c0 03 00 e1 -b0: 00 00 00 e1 b0 76 2a 01 46 6d 00 81 c0 03 00 e1 -c0: 8f 05 00 00 75 00 70 0f 0c 00 80 00 76 0c 00 80 -d0: 00 00 00 80 00 00 00 80 00 00 00 80 00 84 00 20 -e0: 43 d1 e6 21 d0 18 28 00 f8 41 22 81 aa ff cf 53 -f0: 12 0f 80 20 6f bf 02 81 8e 84 22 a8 d5 f3 45 73 +b0: 00 00 00 e1 d0 d5 2c 01 46 6d 00 81 c0 03 00 e1 +c0: 8f 05 00 00 93 00 70 0f 0c 00 80 00 76 0c 00 80 +d0: 00 00 00 80 00 00 00 80 00 00 00 80 00 84 00 08 +e0: ff c0 2c 01 ff c0 2c 01 d8 d5 2c 01 d8 d5 2c 01 +f0: 12 0f 80 20 12 0f 80 20 c4 00 00 a0 d5 f3 45 73 00:13.0 VGA compatible controller: Silicon Integrated Systems [SiS] 5597/5598 VGA (rev 65) (prog-if 00 [VGA]) Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/ ^ permalink raw reply [flat|nested] 17+ messages in thread
end of thread, other threads:[~2001-01-30 0:51 UTC | newest]
Thread overview: 17+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2001-01-28 20:58 PCI IRQ routing problem in 2.4.0 Robert Siemer
[not found] ` <200101290323.TAA05252@penguin.transmeta.com>
2001-01-29 4:29 ` Robert Siemer
2001-01-29 4:58 ` Linus Torvalds
2001-01-29 5:11 ` Tim Hockin
2001-01-29 6:03 ` Linus Torvalds
2001-01-30 0:50 ` Via PCI IRQ routing problem related? (was: PCI IRQ routing problem in 2.4.0) Pete Toscano
2001-01-29 5:29 ` PCI IRQ routing problem in 2.4.0 (SiS results) Aaron Tiensivu
2001-01-29 5:50 ` Linus Torvalds
2001-01-29 7:10 ` PCI IRQ routing problem in 2.4.0 (SiS results part 2) Aaron Tiensivu
2001-01-29 7:21 ` Linus Torvalds
2001-01-29 7:11 ` Aaron Tiensivu
2001-01-29 5:30 ` PCI IRQ routing problem in 2.4.0 (SiS results) Aaron Tiensivu
2001-01-29 6:08 ` PCI IRQ routing problem in 2.4.0 Robert Siemer
2001-01-29 6:24 ` Linus Torvalds
2001-01-29 7:11 ` Robert Siemer
2001-01-29 7:41 ` Linus Torvalds
2001-01-29 17:19 ` Robert Siemer
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox