Re: [PATCH] interrupt problem with MPS 1.4 / not with MPS 1.1 ?

2001-06-02 Thread thunder7

On Sat, Jun 02, 2001 at 03:41:08AM -0400, Jeff Garzik wrote:
> > No, I'm afraid it doesn't :-(
> > 
> Thanks for testing.
> 
> Ok, how about this one?  This is a more simple version of the logic
> presented, which should give you the value that Manfred asked you plug
> in manually.
> 
No go, I'm afraid. I wonder why I do see the

PCI: Disabling Via external APIC routing

messages, but none of the 

PCI: Via IRQ fixup ...

messages that I assume should have been printed

Greetings,
Jurriaan

Total of 2 processors activated (2808.21 BogoMIPS).
ENABLING IO-APIC IRQs
...changing IO-APIC physical APIC ID to 2 ... ok.
init IO_APIC IRQs
 IO-APIC (apicid-pin) 2-0, 2-5, 2-10, 2-11, 2-15, 2-20, 2-21, 2-22, 2-23 not connected.
..TIMER: vector=49 pin1=2 pin2=0
number of MP IRQ sources: 22.
number of IO-APIC #2 registers: 24.
testing the IO APIC...

IO APIC #2..
 register #00: 0200
...: physical APIC id: 02
 register #01: 00178011
... : max redirection entries: 0017
... : IO APIC version: 0011
 WARNING: unexpected IO-APIC, please mail
  to [EMAIL PROTECTED]
 register #02: 
... : arbitration: 00
 IRQ redirection table:
 NR Log Phy Mask Trig IRR Pol Stat Dest Deli Vect:   
 00 000 00  100   0   00000
 01 003 03  000   0   01139
 02 003 03  000   0   01131
 03 003 03  000   0   01141
 04 003 03  000   0   01149
 05 000 00  100   0   00000
 06 003 03  000   0   01151
 07 003 03  000   0   01159
 08 003 03  000   0   01161
 09 003 03  000   0   01169
 0a 000 00  100   0   00000
 0b 000 00  100   0   00000
 0c 003 03  000   0   01171
 0d 003 03  000   0   01179
 0e 003 03  000   0   01181
 0f 000 00  100   0   00000
 10 003 03  110   1   01189
 11 003 03  110   1   01191
 12 003 03  110   1   01199
 13 003 03  110   1   011A1
 14 000 00  100   0   00000
 15 000 00  100   0   00000
 16 000 00  100   0   00000
 17 000 00  100   0   00000
IRQ to pin mappings:
IRQ0 -> 0:2
IRQ1 -> 0:1
IRQ3 -> 0:3
IRQ4 -> 0:4
IRQ6 -> 0:6
IRQ7 -> 0:7
IRQ8 -> 0:8
IRQ9 -> 0:9
IRQ12 -> 0:12
IRQ13 -> 0:13
IRQ14 -> 0:14
IRQ16 -> 0:16
IRQ17 -> 0:17
IRQ18 -> 0:18
IRQ19 -> 0:19
 done.
Using local APIC timer interrupts.
calibrating APIC timer ...
. CPU clock speed is 703.1867 MHz.
. host bus clock speed is 100.4552 MHz.
cpu: 0, clocks: 1004552, slice: 334850
PCI: Probing PCI hardware
Unknown bridge resource 0: assuming transparent
Unknown bridge resource 2: assuming transparent
PCI: Using IRQ router VIA [1106/0686] at 00:07.0
PCI->APIC IRQ transform: (B0,I7,P3) -> 19
PCI->APIC IRQ transform: (B0,I7,P3) -> 19
PCI->APIC IRQ transform: (B0,I10,P0) -> 17
PCI->APIC IRQ transform: (B0,I11,P0) -> 17
PCI->APIC IRQ transform: (B0,I14,P0) -> 18
PCI->APIC IRQ transform: (B1,I0,P0) -> 16
PCI->APIC IRQ transform: (B2,I0,P0) -> 16
PCI->APIC IRQ transform: (B2,I1,P0) -> 17
PCI->APIC IRQ transform: (B2,I2,P0) -> 18
PCI: Disabling Via external APIC routing
Linux NET4.0 for Linux 2.4
i2c-core.o: adapter MAVEN:fb0 on i2c-matroxfb registered as adapter 2.
usb.c: registered new driver hub
uhci.c: USB UHCI at I/O 0xa000, IRQ 19
usb.c: new USB bus registered, assigned bus number 1
hub.c: USB hub found
hub.c: 2 ports detected
uhci.c: USB UHCI at I/O 0xa400, IRQ 19
usb.c: new USB bus registered, assigned bus number 2
hub.c: USB hub found
hub.c: 2 ports detected
uhci.c:  Linus Torvalds, Johannes Erdfelt, Randy Dunlap, Georg Acher, Deti Fliegl, 
Thomas Sailer, Roman Weissgaerber
uhci.c: USB Universal Host Controller Interface driver
Initializing USB Mass Storage driver...
usb.c: registered new driver usb-storage
USB Mass Storage support registered.
NET4: Linux TCP/IP 1.0 for NET4.0
hub.c: USB new device connect on bus1/1, assigned device number 2
usb_control/bulk_msg: timeout
usb.c: USB device not accepting new address=2 (error=-110)
hub.c: USB new device connect on bus1/1, assigned device number 3
reiserfs: checking transaction log (device 03:0a) ...
Using r5 hash to sort names
ReiserFS version 3.6.25
reiserfs: checking transaction log (device 21:04) ...
Using r5 hash to sort names
ReiserFS version 3.6.25
usb_control/bulk_msg: timeout
usb.c: USB device not accepting new address=3 (error=-110)
reiserfs: checking transaction log (device 22:03) ...
Using r5 hash to sort names

   CPU0   CPU1   
  0:   4964   8776IO-APIC-edge  timer
  1: 33 34IO-APIC-edge  keyboard
  2:  0  0  XT-PIC  cascade
  8:  

[PATCH] interrupt problem with MPS 1.4 / not with MPS 1.1 ?

2001-06-02 Thread Jeff Garzik

> On Fri, Jun 01, 2001 at 04:42:40PM -0400, Jeff Garzik wrote:
> > Does this patch fix things for you, such that MPS 1.1 and MPS 1.4 both
> > work?
> 
> No, I'm afraid it doesn't :-(
> 
> Here are the dmesg (with some info cut out for brevity), the
> /proc/interrupts and the lspci -vvvxxx from a 2.4.5-ac6 kernel with this
> patch. I see in the dmesg the patch is active, but still I get:


Thanks for testing.

Ok, how about this one?  This is a more simple version of the logic
presented, which should give you the value that Manfred asked you plug
in manually.

-- 
Jeff Garzik  | Disbelief, that's why you fail.
Building 1024|
MandrakeSoft |

diff -urN linux-2.4.5/drivers/pci/quirks.c linux.viairq/drivers/pci/quirks.c
--- linux-2.4.5/drivers/pci/quirks.cSat May 19 20:43:06 2001
+++ linux.viairq/drivers/pci/quirks.c   Sat Jun  2 03:38:48 2001
@@ -17,6 +17,7 @@
 #include 
 #include 
 #include 
+#include 
 
 #undef DEBUG
 
@@ -267,6 +268,8 @@
 /*
  * VIA 686A/B: If an IO-APIC is active, we need to route all on-chip
  * devices to the external APIC.
+ *
+ * TODO: this should be done at IRQ assign time (pci_enable_device call)
  */
 static void __init quirk_via_ioapic(struct pci_dev *dev)
 {
@@ -277,6 +280,9 @@
else
tmp = 0x1f; /* all known bits (4-0) routed to external APIC */

+   printk(KERN_INFO "PCI: %sbling Via external APIC routing\n",
+  tmp ? "Disa" : "Ena");
+
/* Offset 0x58: External APIC IRQ output control */
pci_write_config_byte (dev, 0x58, tmp);
 }
@@ -285,6 +291,34 @@
 
 
 /*
+ * Via 686A/B:  The PCI_INTERRUPT_LINE register for the on-chip
+ * devices, USB0/1, AC97, MC97, and ACPI, has an unusual feature:
+ * when written, it makes an internal connection to the PIC.
+ * For these devices, this register is defined to be 4 bits wide.
+ * Normally this is fine.  However for IO-APIC motherboards, or
+ * non-x86 architectures (yes Via exists on PPC among other places),
+ * we must mask the PCI_INTERRUPT_LINE value versus 0xf to get
+ * interrupts delivered properly.
+ *
+ * TODO: this should be done at IRQ assign time (pci_enable_device call)
+ */
+static void __init quirk_via_irqpic(struct pci_dev *dev)
+{
+   u8 irq, new_irq;
+
+   pci_read_config_byte(dev, PCI_INTERRUPT_LINE, );
+   new_irq = irq & 0xf;
+   if (new_irq != irq) {
+   printk(KERN_INFO "PCI: Via IRQ fixup for %s, from %d to %d\n",
+  dev->slot_name, irq, new_irq);
+
+   udelay(15);
+   pci_write_config_byte(dev, PCI_INTERRUPT_LINE, new_irq);
+   }
+}
+
+
+/*
  * PIIX3 USB: We have to disable USB interrupts that are
  * hardwired to PIRQD# and may be shared with an
  * external device.
@@ -372,6 +406,11 @@
 #ifdef CONFIG_X86_IO_APIC 
{ PCI_FIXUP_FINAL,  PCI_VENDOR_ID_VIA,  PCI_DEVICE_ID_VIA_82C686,  
 quirk_via_ioapic },
 #endif
+
+   { PCI_FIXUP_FINAL,  PCI_VENDOR_ID_VIA,  PCI_DEVICE_ID_VIA_82C586_2,
+ quirk_via_irqpic },
+   { PCI_FIXUP_FINAL,  PCI_VENDOR_ID_VIA,  PCI_DEVICE_ID_VIA_82C686_4,
+ quirk_via_irqpic },
+   { PCI_FIXUP_FINAL,  PCI_VENDOR_ID_VIA,  PCI_DEVICE_ID_VIA_82C686_5,
+ quirk_via_irqpic },
+   { PCI_FIXUP_FINAL,  PCI_VENDOR_ID_VIA,  PCI_DEVICE_ID_VIA_82C686_6,
+ quirk_via_irqpic },
 
{ 0 }
 };
diff -urN linux-2.4.5/drivers/sound/via82cxxx_audio.c 
linux.viairq/drivers/sound/via82cxxx_audio.c
--- linux-2.4.5/drivers/sound/via82cxxx_audio.c Tue May  1 19:05:00 2001
+++ linux.viairq/drivers/sound/via82cxxx_audio.cFri Jun  1 16:32:25 2001
@@ -3012,7 +3012,6 @@
 {
int rc;
struct via_info *card;
-   u8 tmp;
static int printed_version = 0;
 
DPRINTK ("ENTER\n");
@@ -3107,19 +3106,6 @@
if (rc) {
printk (KERN_ERR PFX "interrupt init failed, aborting\n");
goto err_out_have_proc;
-   }
-
-   pci_read_config_byte (pdev, 0x3C, );
-   if ((tmp & 0x0F) != pdev->irq) {
-   printk (KERN_WARNING PFX "IRQ fixup, 0x3C==0x%02X\n", tmp);
-   udelay (15);
-   tmp &= 0xF0;
-   tmp |= pdev->irq;
-   pci_write_config_byte (pdev, 0x3C, tmp);
-   DPRINTK ("new 0x3c==0x%02x\n", tmp);
-   } else {
-   DPRINTK ("IRQ reg 0x3c==0x%02x, irq==%d\n",
-   tmp, tmp & 0x0F);
}
 
printk (KERN_INFO PFX "board #%d at 0x%04lX, IRQ %d\n",



Re: [PATCH] interrupt problem with MPS 1.4 / not with MPS 1.1 ?

2001-06-02 Thread thunder7

On Fri, Jun 01, 2001 at 04:42:40PM -0400, Jeff Garzik wrote:
> Does this patch fix things for you, such that MPS 1.1 and MPS 1.4 both
> work?

No, I'm afraid it doesn't :-(

Here are the dmesg (with some info cut out for brevity), the
/proc/interrupts and the lspci -vvvxxx from a 2.4.5-ac6 kernel with this
patch. I see in the dmesg the patch is active, but still I get:

usb.c: registered new driver hub
usb.c: new USB bus registered, assigned bus number 1
usb.c: new USB bus registered, assigned bus number 2
usb.c: registered new driver usb-storage
usb_control/bulk_msg: timeout
usb.c: USB device not accepting new address=2 (error=-110)
usb_control/bulk_msg: timeout
usb.c: USB device not accepting new address=3 (error=-110)

Good luck,
Jurriaan


D APIC at: 0xFEE0
Processor #0 Pentium(tm) Pro APIC version 17
Processor #1 Pentium(tm) Pro APIC version 17
I/O APIC #2 Version 17 at 0xFEC0.
Processors: 2
Kernel command line: auto BOOT_IMAGE=SuSE-2.4.5ac6 ro root=2101 
BOOT_FILE=/boot/prod/vmlinuz-245ac6 video=matrox:vesa:0x11E,fv:80,sgram
Initializing CPU#0
Detected 703.169 MHz processor.
Console: colour VGA+ 80x25
Calibrating delay loop... 1402.47 BogoMIPS

Total of 2 processors activated (2808.21 BogoMIPS).
ENABLING IO-APIC IRQs
...changing IO-APIC physical APIC ID to 2 ... ok.
init IO_APIC IRQs
 IO-APIC (apicid-pin) 2-0, 2-5, 2-10, 2-11, 2-15, 2-20, 2-21, 2-22, 2-23 not connected.
..TIMER: vector=49 pin1=2 pin2=0
number of MP IRQ sources: 22.
number of IO-APIC #2 registers: 24.
testing the IO APIC...

IO APIC #2..
 register #00: 0200
...: physical APIC id: 02
 register #01: 00178011
... : max redirection entries: 0017
... : IO APIC version: 0011
 WARNING: unexpected IO-APIC, please mail
  to [EMAIL PROTECTED]
 register #02: 
... : arbitration: 00
 IRQ redirection table:
 NR Log Phy Mask Trig IRR Pol Stat Dest Deli Vect:   
 00 000 00  100   0   00000
 01 003 03  000   0   01139
 02 003 03  000   0   01131
 03 003 03  000   0   01141
 04 003 03  000   0   01149
 05 000 00  100   0   00000
 06 003 03  000   0   01151
 07 003 03  000   0   01159
 08 003 03  000   0   01161
 09 003 03  000   0   01169
 0a 000 00  100   0   00000
 0b 000 00  100   0   00000
 0c 003 03  000   0   01171
 0d 003 03  000   0   01179
 0e 003 03  000   0   01181
 0f 000 00  100   0   00000
 10 003 03  110   1   01189
 11 003 03  110   1   01191
 12 003 03  110   1   01199
 13 003 03  110   1   011A1
 14 000 00  100   0   00000
 15 000 00  100   0   00000
 16 000 00  100   0   00000
 17 000 00  100   0   00000
IRQ to pin mappings:
IRQ0 -> 0:2
IRQ1 -> 0:1
IRQ3 -> 0:3
IRQ4 -> 0:4
IRQ6 -> 0:6
IRQ7 -> 0:7
IRQ8 -> 0:8
IRQ9 -> 0:9
IRQ12 -> 0:12
IRQ13 -> 0:13
IRQ14 -> 0:14
IRQ16 -> 0:16
IRQ17 -> 0:17
IRQ18 -> 0:18
IRQ19 -> 0:19
 done.
Using local APIC timer interrupts.
calibrating APIC timer ...
. CPU clock speed is 703.0694 MHz.
. host bus clock speed is 100.4384 MHz.
cpu: 0, clocks: 1004384, slice: 334794
CPU0
cpu: 1, clocks: 1004384, slice: 334794
CPU1
checking TSC synchronization across CPUs: passed.
mtrr: your CPUs had inconsistent fixed MTRR settings
mtrr: your CPUs had inconsistent variable MTRR settings
mtrr: probably your BIOS does not setup all CPUs
PCI: PCI BIOS revision 2.10 entry at 0xfb3a0, last bus=2
PCI: Using configuration type 1
PCI: Probing PCI hardware
Unknown bridge resource 0: assuming transparent
Unknown bridge resource 2: assuming transparent
PCI: Using IRQ router VIA [1106/0686] at 00:07.0
PCI->APIC IRQ transform: (B0,I7,P3) -> 19
PCI->APIC IRQ transform: (B0,I7,P3) -> 19
PCI->APIC IRQ transform: (B0,I10,P0) -> 17
PCI->APIC IRQ transform: (B0,I11,P0) -> 17
PCI->APIC IRQ transform: (B0,I14,P0) -> 18
PCI->APIC IRQ transform: (B1,I0,P0) -> 16
PCI->APIC IRQ transform: (B2,I0,P0) -> 16
PCI->APIC IRQ transform: (B2,I1,P0) -> 17
PCI->APIC IRQ transform: (B2,I2,P0) -> 18
PCI: Setting Via APIC control
PCI: Via IRQ fixup for 00:07.2, from 5 to 19
PCI: Via IRQ fixup for 00:07.3, from 5 to 19
PCI: Via IRQ fixup for 00:07.4, from 0 to 3
Linux NET4.0 for Linux 2.4

i2c-core.o: adapter MAVEN:fb0 on i2c-matroxfb registered as adapter 2.
usb.c: registered new driver hub
uhci.c: USB UHCI at I/O 0xa000, IRQ 19
usb.c: new USB bus registered, assigned bus number 1
hub.c: USB hub found
hub.c: 2 ports detected
uhci.c: USB UHCI at I/O 0xa400, IRQ 19
usb.c: new USB bus registered, assigned bus number 2
hub.c: USB hub found

Re: [PATCH] interrupt problem with MPS 1.4 / not with MPS 1.1 ?

2001-06-02 Thread thunder7

On Fri, Jun 01, 2001 at 04:42:40PM -0400, Jeff Garzik wrote:
 Does this patch fix things for you, such that MPS 1.1 and MPS 1.4 both
 work?

No, I'm afraid it doesn't :-(

Here are the dmesg (with some info cut out for brevity), the
/proc/interrupts and the lspci -vvvxxx from a 2.4.5-ac6 kernel with this
patch. I see in the dmesg the patch is active, but still I get:

usb.c: registered new driver hub
usb.c: new USB bus registered, assigned bus number 1
usb.c: new USB bus registered, assigned bus number 2
usb.c: registered new driver usb-storage
usb_control/bulk_msg: timeout
usb.c: USB device not accepting new address=2 (error=-110)
usb_control/bulk_msg: timeout
usb.c: USB device not accepting new address=3 (error=-110)

Good luck,
Jurriaan


D APIC at: 0xFEE0
Processor #0 Pentium(tm) Pro APIC version 17
Processor #1 Pentium(tm) Pro APIC version 17
I/O APIC #2 Version 17 at 0xFEC0.
Processors: 2
Kernel command line: auto BOOT_IMAGE=SuSE-2.4.5ac6 ro root=2101 
BOOT_FILE=/boot/prod/vmlinuz-245ac6 video=matrox:vesa:0x11E,fv:80,sgram
Initializing CPU#0
Detected 703.169 MHz processor.
Console: colour VGA+ 80x25
Calibrating delay loop... 1402.47 BogoMIPS
snip
Total of 2 processors activated (2808.21 BogoMIPS).
ENABLING IO-APIC IRQs
...changing IO-APIC physical APIC ID to 2 ... ok.
init IO_APIC IRQs
 IO-APIC (apicid-pin) 2-0, 2-5, 2-10, 2-11, 2-15, 2-20, 2-21, 2-22, 2-23 not connected.
..TIMER: vector=49 pin1=2 pin2=0
number of MP IRQ sources: 22.
number of IO-APIC #2 registers: 24.
testing the IO APIC...

IO APIC #2..
 register #00: 0200
...: physical APIC id: 02
 register #01: 00178011
... : max redirection entries: 0017
... : IO APIC version: 0011
 WARNING: unexpected IO-APIC, please mail
  to [EMAIL PROTECTED]
 register #02: 
... : arbitration: 00
 IRQ redirection table:
 NR Log Phy Mask Trig IRR Pol Stat Dest Deli Vect:   
 00 000 00  100   0   00000
 01 003 03  000   0   01139
 02 003 03  000   0   01131
 03 003 03  000   0   01141
 04 003 03  000   0   01149
 05 000 00  100   0   00000
 06 003 03  000   0   01151
 07 003 03  000   0   01159
 08 003 03  000   0   01161
 09 003 03  000   0   01169
 0a 000 00  100   0   00000
 0b 000 00  100   0   00000
 0c 003 03  000   0   01171
 0d 003 03  000   0   01179
 0e 003 03  000   0   01181
 0f 000 00  100   0   00000
 10 003 03  110   1   01189
 11 003 03  110   1   01191
 12 003 03  110   1   01199
 13 003 03  110   1   011A1
 14 000 00  100   0   00000
 15 000 00  100   0   00000
 16 000 00  100   0   00000
 17 000 00  100   0   00000
IRQ to pin mappings:
IRQ0 - 0:2
IRQ1 - 0:1
IRQ3 - 0:3
IRQ4 - 0:4
IRQ6 - 0:6
IRQ7 - 0:7
IRQ8 - 0:8
IRQ9 - 0:9
IRQ12 - 0:12
IRQ13 - 0:13
IRQ14 - 0:14
IRQ16 - 0:16
IRQ17 - 0:17
IRQ18 - 0:18
IRQ19 - 0:19
 done.
Using local APIC timer interrupts.
calibrating APIC timer ...
. CPU clock speed is 703.0694 MHz.
. host bus clock speed is 100.4384 MHz.
cpu: 0, clocks: 1004384, slice: 334794
CPU0T0:1004384,T1:669584,D:6,S:334794,C:1004384
cpu: 1, clocks: 1004384, slice: 334794
CPU1T0:1004384,T1:334784,D:12,S:334794,C:1004384
checking TSC synchronization across CPUs: passed.
mtrr: your CPUs had inconsistent fixed MTRR settings
mtrr: your CPUs had inconsistent variable MTRR settings
mtrr: probably your BIOS does not setup all CPUs
PCI: PCI BIOS revision 2.10 entry at 0xfb3a0, last bus=2
PCI: Using configuration type 1
PCI: Probing PCI hardware
Unknown bridge resource 0: assuming transparent
Unknown bridge resource 2: assuming transparent
PCI: Using IRQ router VIA [1106/0686] at 00:07.0
PCI-APIC IRQ transform: (B0,I7,P3) - 19
PCI-APIC IRQ transform: (B0,I7,P3) - 19
PCI-APIC IRQ transform: (B0,I10,P0) - 17
PCI-APIC IRQ transform: (B0,I11,P0) - 17
PCI-APIC IRQ transform: (B0,I14,P0) - 18
PCI-APIC IRQ transform: (B1,I0,P0) - 16
PCI-APIC IRQ transform: (B2,I0,P0) - 16
PCI-APIC IRQ transform: (B2,I1,P0) - 17
PCI-APIC IRQ transform: (B2,I2,P0) - 18
PCI: Setting Via APIC control
PCI: Via IRQ fixup for 00:07.2, from 5 to 19
PCI: Via IRQ fixup for 00:07.3, from 5 to 19
PCI: Via IRQ fixup for 00:07.4, from 0 to 3
Linux NET4.0 for Linux 2.4
snip
i2c-core.o: adapter MAVEN:fb0 on i2c-matroxfb registered as adapter 2.
usb.c: registered new driver hub
uhci.c: USB UHCI at I/O 0xa000, IRQ 19
usb.c: new USB bus registered, assigned bus number 1
hub.c: USB hub found
hub.c: 2 ports detected
uhci.c: USB UHCI at I/O 0xa400, IRQ 19
usb.c: new USB 

[PATCH] interrupt problem with MPS 1.4 / not with MPS 1.1 ?

2001-06-02 Thread Jeff Garzik

 On Fri, Jun 01, 2001 at 04:42:40PM -0400, Jeff Garzik wrote:
  Does this patch fix things for you, such that MPS 1.1 and MPS 1.4 both
  work?
 
 No, I'm afraid it doesn't :-(
 
 Here are the dmesg (with some info cut out for brevity), the
 /proc/interrupts and the lspci -vvvxxx from a 2.4.5-ac6 kernel with this
 patch. I see in the dmesg the patch is active, but still I get:


Thanks for testing.

Ok, how about this one?  This is a more simple version of the logic
presented, which should give you the value that Manfred asked you plug
in manually.

-- 
Jeff Garzik  | Disbelief, that's why you fail.
Building 1024|
MandrakeSoft |

diff -urN linux-2.4.5/drivers/pci/quirks.c linux.viairq/drivers/pci/quirks.c
--- linux-2.4.5/drivers/pci/quirks.cSat May 19 20:43:06 2001
+++ linux.viairq/drivers/pci/quirks.c   Sat Jun  2 03:38:48 2001
@@ -17,6 +17,7 @@
 #include linux/kernel.h
 #include linux/pci.h
 #include linux/init.h
+#include linux/delay.h
 
 #undef DEBUG
 
@@ -267,6 +268,8 @@
 /*
  * VIA 686A/B: If an IO-APIC is active, we need to route all on-chip
  * devices to the external APIC.
+ *
+ * TODO: this should be done at IRQ assign time (pci_enable_device call)
  */
 static void __init quirk_via_ioapic(struct pci_dev *dev)
 {
@@ -277,6 +280,9 @@
else
tmp = 0x1f; /* all known bits (4-0) routed to external APIC */

+   printk(KERN_INFO PCI: %sbling Via external APIC routing\n,
+  tmp ? Disa : Ena);
+
/* Offset 0x58: External APIC IRQ output control */
pci_write_config_byte (dev, 0x58, tmp);
 }
@@ -285,6 +291,34 @@
 
 
 /*
+ * Via 686A/B:  The PCI_INTERRUPT_LINE register for the on-chip
+ * devices, USB0/1, AC97, MC97, and ACPI, has an unusual feature:
+ * when written, it makes an internal connection to the PIC.
+ * For these devices, this register is defined to be 4 bits wide.
+ * Normally this is fine.  However for IO-APIC motherboards, or
+ * non-x86 architectures (yes Via exists on PPC among other places),
+ * we must mask the PCI_INTERRUPT_LINE value versus 0xf to get
+ * interrupts delivered properly.
+ *
+ * TODO: this should be done at IRQ assign time (pci_enable_device call)
+ */
+static void __init quirk_via_irqpic(struct pci_dev *dev)
+{
+   u8 irq, new_irq;
+
+   pci_read_config_byte(dev, PCI_INTERRUPT_LINE, irq);
+   new_irq = irq  0xf;
+   if (new_irq != irq) {
+   printk(KERN_INFO PCI: Via IRQ fixup for %s, from %d to %d\n,
+  dev-slot_name, irq, new_irq);
+
+   udelay(15);
+   pci_write_config_byte(dev, PCI_INTERRUPT_LINE, new_irq);
+   }
+}
+
+
+/*
  * PIIX3 USB: We have to disable USB interrupts that are
  * hardwired to PIRQD# and may be shared with an
  * external device.
@@ -372,6 +406,11 @@
 #ifdef CONFIG_X86_IO_APIC 
{ PCI_FIXUP_FINAL,  PCI_VENDOR_ID_VIA,  PCI_DEVICE_ID_VIA_82C686,  
 quirk_via_ioapic },
 #endif
+
+   { PCI_FIXUP_FINAL,  PCI_VENDOR_ID_VIA,  PCI_DEVICE_ID_VIA_82C586_2,
+ quirk_via_irqpic },
+   { PCI_FIXUP_FINAL,  PCI_VENDOR_ID_VIA,  PCI_DEVICE_ID_VIA_82C686_4,
+ quirk_via_irqpic },
+   { PCI_FIXUP_FINAL,  PCI_VENDOR_ID_VIA,  PCI_DEVICE_ID_VIA_82C686_5,
+ quirk_via_irqpic },
+   { PCI_FIXUP_FINAL,  PCI_VENDOR_ID_VIA,  PCI_DEVICE_ID_VIA_82C686_6,
+ quirk_via_irqpic },
 
{ 0 }
 };
diff -urN linux-2.4.5/drivers/sound/via82cxxx_audio.c 
linux.viairq/drivers/sound/via82cxxx_audio.c
--- linux-2.4.5/drivers/sound/via82cxxx_audio.c Tue May  1 19:05:00 2001
+++ linux.viairq/drivers/sound/via82cxxx_audio.cFri Jun  1 16:32:25 2001
@@ -3012,7 +3012,6 @@
 {
int rc;
struct via_info *card;
-   u8 tmp;
static int printed_version = 0;
 
DPRINTK (ENTER\n);
@@ -3107,19 +3106,6 @@
if (rc) {
printk (KERN_ERR PFX interrupt init failed, aborting\n);
goto err_out_have_proc;
-   }
-
-   pci_read_config_byte (pdev, 0x3C, tmp);
-   if ((tmp  0x0F) != pdev-irq) {
-   printk (KERN_WARNING PFX IRQ fixup, 0x3C==0x%02X\n, tmp);
-   udelay (15);
-   tmp = 0xF0;
-   tmp |= pdev-irq;
-   pci_write_config_byte (pdev, 0x3C, tmp);
-   DPRINTK (new 0x3c==0x%02x\n, tmp);
-   } else {
-   DPRINTK (IRQ reg 0x3c==0x%02x, irq==%d\n,
-   tmp, tmp  0x0F);
}
 
printk (KERN_INFO PFX board #%d at 0x%04lX, IRQ %d\n,



Re: [PATCH] interrupt problem with MPS 1.4 / not with MPS 1.1 ?

2001-06-02 Thread thunder7

On Sat, Jun 02, 2001 at 03:41:08AM -0400, Jeff Garzik wrote:
  No, I'm afraid it doesn't :-(
  
 Thanks for testing.
 
 Ok, how about this one?  This is a more simple version of the logic
 presented, which should give you the value that Manfred asked you plug
 in manually.
 
No go, I'm afraid. I wonder why I do see the

PCI: Disabling Via external APIC routing

messages, but none of the 

PCI: Via IRQ fixup ...

messages that I assume should have been printed

Greetings,
Jurriaan

Total of 2 processors activated (2808.21 BogoMIPS).
ENABLING IO-APIC IRQs
...changing IO-APIC physical APIC ID to 2 ... ok.
init IO_APIC IRQs
 IO-APIC (apicid-pin) 2-0, 2-5, 2-10, 2-11, 2-15, 2-20, 2-21, 2-22, 2-23 not connected.
..TIMER: vector=49 pin1=2 pin2=0
number of MP IRQ sources: 22.
number of IO-APIC #2 registers: 24.
testing the IO APIC...

IO APIC #2..
 register #00: 0200
...: physical APIC id: 02
 register #01: 00178011
... : max redirection entries: 0017
... : IO APIC version: 0011
 WARNING: unexpected IO-APIC, please mail
  to [EMAIL PROTECTED]
 register #02: 
... : arbitration: 00
 IRQ redirection table:
 NR Log Phy Mask Trig IRR Pol Stat Dest Deli Vect:   
 00 000 00  100   0   00000
 01 003 03  000   0   01139
 02 003 03  000   0   01131
 03 003 03  000   0   01141
 04 003 03  000   0   01149
 05 000 00  100   0   00000
 06 003 03  000   0   01151
 07 003 03  000   0   01159
 08 003 03  000   0   01161
 09 003 03  000   0   01169
 0a 000 00  100   0   00000
 0b 000 00  100   0   00000
 0c 003 03  000   0   01171
 0d 003 03  000   0   01179
 0e 003 03  000   0   01181
 0f 000 00  100   0   00000
 10 003 03  110   1   01189
 11 003 03  110   1   01191
 12 003 03  110   1   01199
 13 003 03  110   1   011A1
 14 000 00  100   0   00000
 15 000 00  100   0   00000
 16 000 00  100   0   00000
 17 000 00  100   0   00000
IRQ to pin mappings:
IRQ0 - 0:2
IRQ1 - 0:1
IRQ3 - 0:3
IRQ4 - 0:4
IRQ6 - 0:6
IRQ7 - 0:7
IRQ8 - 0:8
IRQ9 - 0:9
IRQ12 - 0:12
IRQ13 - 0:13
IRQ14 - 0:14
IRQ16 - 0:16
IRQ17 - 0:17
IRQ18 - 0:18
IRQ19 - 0:19
 done.
Using local APIC timer interrupts.
calibrating APIC timer ...
. CPU clock speed is 703.1867 MHz.
. host bus clock speed is 100.4552 MHz.
cpu: 0, clocks: 1004552, slice: 334850
PCI: Probing PCI hardware
Unknown bridge resource 0: assuming transparent
Unknown bridge resource 2: assuming transparent
PCI: Using IRQ router VIA [1106/0686] at 00:07.0
PCI-APIC IRQ transform: (B0,I7,P3) - 19
PCI-APIC IRQ transform: (B0,I7,P3) - 19
PCI-APIC IRQ transform: (B0,I10,P0) - 17
PCI-APIC IRQ transform: (B0,I11,P0) - 17
PCI-APIC IRQ transform: (B0,I14,P0) - 18
PCI-APIC IRQ transform: (B1,I0,P0) - 16
PCI-APIC IRQ transform: (B2,I0,P0) - 16
PCI-APIC IRQ transform: (B2,I1,P0) - 17
PCI-APIC IRQ transform: (B2,I2,P0) - 18
PCI: Disabling Via external APIC routing
Linux NET4.0 for Linux 2.4
i2c-core.o: adapter MAVEN:fb0 on i2c-matroxfb registered as adapter 2.
usb.c: registered new driver hub
uhci.c: USB UHCI at I/O 0xa000, IRQ 19
usb.c: new USB bus registered, assigned bus number 1
hub.c: USB hub found
hub.c: 2 ports detected
uhci.c: USB UHCI at I/O 0xa400, IRQ 19
usb.c: new USB bus registered, assigned bus number 2
hub.c: USB hub found
hub.c: 2 ports detected
uhci.c:  Linus Torvalds, Johannes Erdfelt, Randy Dunlap, Georg Acher, Deti Fliegl, 
Thomas Sailer, Roman Weissgaerber
uhci.c: USB Universal Host Controller Interface driver
Initializing USB Mass Storage driver...
usb.c: registered new driver usb-storage
USB Mass Storage support registered.
NET4: Linux TCP/IP 1.0 for NET4.0
hub.c: USB new device connect on bus1/1, assigned device number 2
usb_control/bulk_msg: timeout
usb.c: USB device not accepting new address=2 (error=-110)
hub.c: USB new device connect on bus1/1, assigned device number 3
reiserfs: checking transaction log (device 03:0a) ...
Using r5 hash to sort names
ReiserFS version 3.6.25
reiserfs: checking transaction log (device 21:04) ...
Using r5 hash to sort names
ReiserFS version 3.6.25
usb_control/bulk_msg: timeout
usb.c: USB device not accepting new address=3 (error=-110)
reiserfs: checking transaction log (device 22:03) ...
Using r5 hash to sort names

   CPU0   CPU1   
  0:   4964   8776IO-APIC-edge  timer
  1: 33 34IO-APIC-edge  keyboard
  2:  0  0  XT-PIC  cascade
  8:  2  0IO-APIC-edge  rtc
 14: 

[PATCH] Re: interrupt problem with MPS 1.4 / not with MPS 1.1 ?

2001-06-01 Thread Jeff Garzik

Does this patch fix things for you, such that MPS 1.1 and MPS 1.4 both
work?
-- 
Jeff Garzik  | Disbelief, that's why you fail.
Building 1024|
MandrakeSoft |

diff -urN linux-2.4.5/drivers/pci/quirks.c linux.viairq/drivers/pci/quirks.c
--- linux-2.4.5/drivers/pci/quirks.cSat May 19 20:43:06 2001
+++ linux.viairq/drivers/pci/quirks.c   Fri Jun  1 16:33:21 2001
@@ -17,6 +17,7 @@
 #include 
 #include 
 #include 
+#include 
 
 #undef DEBUG
 
@@ -267,6 +268,8 @@
 /*
  * VIA 686A/B: If an IO-APIC is active, we need to route all on-chip
  * devices to the external APIC.
+ *
+ * TODO: this should be done at IRQ assign time (pci_enable_device call)
  */
 static void __init quirk_via_ioapic(struct pci_dev *dev)
 {
@@ -277,6 +280,8 @@
else
tmp = 0x1f; /* all known bits (4-0) routed to external APIC */

+   printk(KERN_INFO "PCI: Setting Via APIC control\n");
+
/* Offset 0x58: External APIC IRQ output control */
pci_write_config_byte (dev, 0x58, tmp);
 }
@@ -285,6 +290,35 @@
 
 
 /*
+ * Via 686A/B:  The PCI_INTERRUPT_LINE register for the on-chip
+ * devices, USB0/1, AC97, MC97, and ACPI, has an unusual feature:
+ * when written, it makes an internal connection to the PIC.
+ * For these devices, this register is defined to be 4 bits wide.
+ * Normally this is fine.  However for IO-APIC motherboards, or
+ * non-x86 architectures (yes Via exists on PPC among other places),
+ * we must mask the PCI_INTERRUPT_LINE value versus 0xf to get
+ * interrupts delivered properly.
+ *
+ * TODO: this should be done at IRQ assign time (pci_enable_device call)
+ */
+static void __init quirk_via_irqpic(struct pci_dev *dev)
+{
+   u8 tmp;
+
+   pci_read_config_byte(dev, PCI_INTERRUPT_LINE, );
+if ((tmp & 0x0F) != dev->irq) {
+   printk(KERN_INFO "PCI: Via IRQ fixup for %s, from %d to %d\n",
+  dev->slot_name, tmp, (tmp & 0xF0) | dev->irq);
+udelay (15);
+
+tmp &= 0xF0;
+tmp |= dev->irq;
+   pci_write_config_byte(dev, PCI_INTERRUPT_LINE, tmp);
+   }
+}
+
+
+/*
  * PIIX3 USB: We have to disable USB interrupts that are
  * hardwired to PIRQD# and may be shared with an
  * external device.
@@ -372,6 +406,11 @@
 #ifdef CONFIG_X86_IO_APIC 
{ PCI_FIXUP_FINAL,  PCI_VENDOR_ID_VIA,  PCI_DEVICE_ID_VIA_82C686,  
 quirk_via_ioapic },
 #endif
+
+   { PCI_FIXUP_FINAL,  PCI_VENDOR_ID_VIA,  PCI_DEVICE_ID_VIA_82C586_2,
+ quirk_via_irqpic },
+   { PCI_FIXUP_FINAL,  PCI_VENDOR_ID_VIA,  PCI_DEVICE_ID_VIA_82C686_4,
+ quirk_via_irqpic },
+   { PCI_FIXUP_FINAL,  PCI_VENDOR_ID_VIA,  PCI_DEVICE_ID_VIA_82C686_5,
+ quirk_via_irqpic },
+   { PCI_FIXUP_FINAL,  PCI_VENDOR_ID_VIA,  PCI_DEVICE_ID_VIA_82C686_6,
+ quirk_via_irqpic },
 
{ 0 }
 };
diff -urN linux-2.4.5/drivers/sound/via82cxxx_audio.c 
linux.viairq/drivers/sound/via82cxxx_audio.c
--- linux-2.4.5/drivers/sound/via82cxxx_audio.c Tue May  1 19:05:00 2001
+++ linux.viairq/drivers/sound/via82cxxx_audio.cFri Jun  1 16:32:25 2001
@@ -3012,7 +3012,6 @@
 {
int rc;
struct via_info *card;
-   u8 tmp;
static int printed_version = 0;
 
DPRINTK ("ENTER\n");
@@ -3107,19 +3106,6 @@
if (rc) {
printk (KERN_ERR PFX "interrupt init failed, aborting\n");
goto err_out_have_proc;
-   }
-
-   pci_read_config_byte (pdev, 0x3C, );
-   if ((tmp & 0x0F) != pdev->irq) {
-   printk (KERN_WARNING PFX "IRQ fixup, 0x3C==0x%02X\n", tmp);
-   udelay (15);
-   tmp &= 0xF0;
-   tmp |= pdev->irq;
-   pci_write_config_byte (pdev, 0x3C, tmp);
-   DPRINTK ("new 0x3c==0x%02x\n", tmp);
-   } else {
-   DPRINTK ("IRQ reg 0x3c==0x%02x, irq==%d\n",
-   tmp, tmp & 0x0F);
}
 
printk (KERN_INFO PFX "board #%d at 0x%04lX, IRQ %d\n",



Re: interrupt problem with MPS 1.4 / not with MPS 1.1 ?

2001-06-01 Thread thunder7

On Fri, Jun 01, 2001 at 07:28:33PM +0200, Manfred Spraul wrote:
> [EMAIL PROTECTED] wrote:
> > 
> > :setpci -s 00:07.2 INTERRUPT_LINE=15
> > :lspci -vx -s 00:07.2
> > 00:07.2 USB Controller: VIA Technologies, Inc. UHCI USB (rev 16) (prog-if 00 
>[UHCI])
> > Subsystem: Unknown device 0925:1234
> > Flags: bus master, medium devsel, latency 32, IRQ 19
> > I/O ports at a000 [size=32]
> > Capabilities: [80] Power Management version 2
> > 30: 00 00 00 00 80 00 00 00 00 00 00 00 15 04 00 
> > :setpci -s 00:07.2 INTERRUPT_LINE=19
> > :lspci -vx -s 00:07.2
> > 00:07.2 USB Controller: VIA Technologies, Inc. UHCI USB (rev 16) (prog-if 00 
>[UHCI])
> > Subsystem: Unknown device 0925:1234
> > Flags: bus master, medium devsel, latency 32, IRQ 19
> > I/O ports at a000 [size=32]
> > Capabilities: [80] Power Management version 2
> > 30: 00 00 00 00 80 00 00 00 00 00 00 00 19 04 00 00
> > 
> > So that is correct. I'll attach all the information from the MPS 1.4
> > reboot, in which 00:07.2 happily points at 05, while everything else
> > thinks it's at 19.
> >
> 
> Could you compile uhci as a module, set the configuration to MPS1.4 and
> find out with which interrupt line setting it works.
> I'd try both
> 
> setpci -s 00:07.2 INTERRUPT_LINE=13
no change, still this in /var/log/messages:

Jun  1 20:57:48 middle kernel: uhci.c: USB Universal Host Controller Interface driver
Jun  1 20:57:48 middle kernel: hub.c: USB new device connect on bus1/1, assigned 
device number 2
Jun  1 20:57:51 middle kernel: usb_control/bulk_msg: timeout
Jun  1 20:57:51 middle kernel: usb.c: USB device not accepting new address=2 
(error=-110)
Jun  1 20:57:51 middle kernel: hub.c: USB new device connect on bus1/1, assigned 
device number 3
Jun  1 20:57:54 middle kernel: usb_control/bulk_msg: timeout
Jun  1 20:57:54 middle kernel: usb.c: USB device not accepting new address=3 
(error=-110)

> setpci -s 00:07.2 INTERRUPT_LINE=3
> [even if 13 works, please try 03 as well. 13 is hexadecimal==19]

Bingo!!

Jun  1 20:59:34 middle kernel:   Type:   Direct-Access  ANSI SCSI 
revision: 02
Jun  1 20:59:34 middle kernel: Attached scsi removable disk sda at scsi3, channel 0, 
id 0, lun 0
Jun  1 20:59:34 middle kernel: sda : READ CAPACITY failed.
Jun  1 20:59:34 middle kernel: sda : status = 1, message = 00, host = 0, driver = 08 
Jun  1 20:59:34 middle kernel: sda : extended sense code = 2 
Jun  1 20:59:34 middle kernel: sda : block size assumed to be 512 bytes, disk size 
1GB.  
Jun  1 20:59:34 middle kernel:  sda: I/O error: dev 08:00, sector 0
Jun  1 20:59:34 middle kernel:  unable to read partition table
Jun  1 20:59:34 middle kernel: WARNING: USB Mass Storage data integrity not assured
Jun  1 20:59:34 middle kernel: USB Mass Storage device found at 2

> 
> The via ac97 sound driver contains an irq fixup for this problem. Either
> a similar fixup is necessary in the uhci driver, or the fixup from the
> ac97 driver could be moved to the pci-quirks and applied to all devices
> in the southbridge.
> 
Just to be sure, the lspci -vvvxxx reading of 07.2 after this setpci -s
00:07.2 INTERRUPT_LINE=3 with MPS=1.4 in the bios:

00:07.2 USB Controller: VIA Technologies, Inc. UHCI USB (rev 16) (prog-if 00 [UHCI])
Subsystem: Unknown device 0925:1234
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- 
SERR- FastB2B-
Status: Cap+ 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- SERR- http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



Re: interrupt problem with MPS 1.4 / not with MPS 1.1 ?

2001-06-01 Thread Jeff Garzik

Manfred Spraul wrote:
> Could you compile uhci as a module, set the configuration to MPS1.4 and
> find out with which interrupt line setting it works.
> I'd try both
> 
> setpci -s 00:07.2 INTERRUPT_LINE=13
> setpci -s 00:07.2 INTERRUPT_LINE=3
> [even if 13 works, please try 03 as well. 13 is hexadecimal==19]
> 
> The via ac97 sound driver contains an irq fixup for this problem. Either

I am not sure this fixup is necessary, though IIRC it did solve some
problems.  Since this latest round of Via fixups, I would like to remove
that little change in via audio, and see it anyone complains.

The 686A and 686B docs list no irq after 14.  Adrian Cox has said that
setting the PCI intr line value actually makes a connection on the PIC,
instead of just being a scratchpad register like it is normally.  Adrian
said the same thing about the USB IRQ, and I presume the other internal
irqs (like ACPI) listed for register 0x58 apply as well.

-- 
Jeff Garzik  | Disbelief, that's why you fail.
Building 1024|
MandrakeSoft |
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



Re: interrupt problem with MPS 1.4 / not with MPS 1.1 ?

2001-06-01 Thread Manfred Spraul

[EMAIL PROTECTED] wrote:
> 
> :setpci -s 00:07.2 INTERRUPT_LINE=15
> :lspci -vx -s 00:07.2
> 00:07.2 USB Controller: VIA Technologies, Inc. UHCI USB (rev 16) (prog-if 00 [UHCI])
> Subsystem: Unknown device 0925:1234
> Flags: bus master, medium devsel, latency 32, IRQ 19
> I/O ports at a000 [size=32]
> Capabilities: [80] Power Management version 2
> 30: 00 00 00 00 80 00 00 00 00 00 00 00 15 04 00 
> :setpci -s 00:07.2 INTERRUPT_LINE=19
> :lspci -vx -s 00:07.2
> 00:07.2 USB Controller: VIA Technologies, Inc. UHCI USB (rev 16) (prog-if 00 [UHCI])
> Subsystem: Unknown device 0925:1234
> Flags: bus master, medium devsel, latency 32, IRQ 19
> I/O ports at a000 [size=32]
> Capabilities: [80] Power Management version 2
> 30: 00 00 00 00 80 00 00 00 00 00 00 00 19 04 00 00
> 
> So that is correct. I'll attach all the information from the MPS 1.4
> reboot, in which 00:07.2 happily points at 05, while everything else
> thinks it's at 19.
>

Could you compile uhci as a module, set the configuration to MPS1.4 and
find out with which interrupt line setting it works.
I'd try both

setpci -s 00:07.2 INTERRUPT_LINE=13
setpci -s 00:07.2 INTERRUPT_LINE=3
[even if 13 works, please try 03 as well. 13 is hexadecimal==19]

The via ac97 sound driver contains an irq fixup for this problem. Either
a similar fixup is necessary in the uhci driver, or the fixup from the
ac97 driver could be moved to the pci-quirks and applied to all devices
in the southbridge.

--
Manfred
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



Re: interrupt problem with MPS 1.4 / not with MPS 1.1 ?

2001-06-01 Thread thunder7

On Thu, May 31, 2001 at 11:56:44AM -0700, Greg KH wrote:
> Is the BIOS set to "Plug and Play supported OS" somewhere?  If not, try
> enabling it.
> 
It wasn't set, but with it set there is no difference.

Greetings,
Jurriaan
-- 
IF MICROSOFT BUILT CARS..
New seats would force everyone to have the same size butt.
GNU/Linux 2.4.5-ac5 SMP/ReiserFS 2x1402 bogomips load av: 0.87 0.42 0.16
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



Re: interrupt problem with MPS 1.4 / not with MPS 1.1 ?

2001-06-01 Thread thunder7

On Fri, Jun 01, 2001 at 01:20:23AM -0400, Jeff Garzik wrote:
> Looking at the diff of "lspci -vvvxxx" between MPS1.1 and MPS1.4 (on the
> same system) may be quite useful...  maybe I missed the earlier "lspci
> -vvvxxx", but I only see one here...

Yep, I didn't want to keep sending long messages. Here goes:

diff pci_11 pci_14:

-- 
4c4
<   Status: Cap+ 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- SERR-Status: Cap+ 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- SERR- TAbort- SERR- 
Capabilities: [c0] Power Management version 2
Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA 
PME(D0-,D1-,D2-,D3hot-,D3cold-)
Status: D0 PME-Enable- DSel=0 DScale=0 PME-
00: 06 11 91 06 06 00 10 a2 c4 00 00 06 00 08 00 00
10: 08 00 00 d0 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 7b 14 04 a2
30: 00 00 00 00 a0 00 00 00 00 00 00 00 00 00 00 00

00:01.0 PCI bridge: VIA Technologies, Inc. VT82C598/694x [Apollo MVP3/Pro133x AGP] 
(prog-if 00 [Normal decode])
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- 
SERR- FastB2B-
Status: Cap+ 66Mhz+ UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- SERR- Reset- FastB2B-
Capabilities: [80] Power Management version 2
Flags: PMEClk- DSI- D1+ D2- AuxCurrent=0mA 
PME(D0-,D1-,D2-,D3hot-,D3cold-)
Status: D0 PME-Enable- DSel=0 DScale=0 PME-
00: 06 11 98 85 07 00 30 22 00 00 04 06 00 00 01 00
10: 00 00 00 00 00 00 00 00 00 01 01 00 f0 00 00 00
20: 00 d6 f0 d8 00 d4 f0 d5 00 00 00 00 00 00 00 00
30: 00 00 00 00 80 00 00 00 00 00 00 00 00 00 0c 00

00:07.0 ISA bridge: VIA Technologies, Inc. VT82C686 [Apollo Super South] (rev 40)
Subsystem: ABIT Computer Corp.: Unknown device 
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping+ 
SERR- FastB2B-
Status: Cap+ 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- SERR- TAbort- SERR- TAbort- SERR- TAbort- SERR- TAbort- SERR- TAbort- SERR- Reset- FastB2B-
00: 11 10 24 00 07 01 80 02 02 00 04 06 08 20 01 00
10: 00 00 00 00 00 00 00 00 00 02 02 20 91 91 80 22
20: 00 d9 f0 da f1 ff 01 00 00 00 00 00 00 00 00 00
30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 06 00

00:0a.0 SCSI storage controller: Symbios Logic Inc. (formerly NCR) 53c860 (rev 13)
Subsystem: Symbios Logic Inc. (formerly NCR): Unknown device 1000
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr+ Stepping- 
SERR- FastB2B-
Status: Cap+ 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- SERR- TAbort- SERR- TAbort- SERR- TAbort- SERR-  [disabled] [size=128K]
Capabilities: [60] Power Management version 2
Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA 
PME(D0-,D1-,D2-,D3hot-,D3cold-)
Status: D0 PME-Enable- DSel=0 DScale=0 PME-
00: 03 11 04 00 05 00 30 02 03 00 80 01 08 78 00 00
10: 01 b8 00 00 01 bc 00 00 01 c0 00 00 01 c4 00 00
20: 01 c8 00 00 00 00 00 00 00 00 00 00 03 11 01 00
30: 00 00 00 00 60 00 00 00 00 00 00 00 0a 01 08 08

01:00.0 VGA compatible controller: Matrox Graphics, Inc. MGA G400 AGP (rev 03) 
(prog-if 00 [VGA])
Subsystem: Matrox Graphics, Inc. Millennium G400 32Mb SGRAM
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- 
SERR- FastB2B-
Status: Cap+ 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- SERR-  [disabled] [size=64K]
Capabilities: [dc] Power Management version 2
Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA 
PME(D0-,D1-,D2-,D3hot-,D3cold-)
Status: D0 PME-Enable- DSel=0 DScale=0 PME-
Capabilities: [f0] AGP version 2.0
Status: RQ=31 SBA+ 64bit- FW- Rate=x1,x2
Command: RQ=31 SBA+ AGP+ 64bit- FW- Rate=x1
00: 2b 10 25 05 07 00 90 02 03 00 00 03 08 20 00 00
10: 08 00 00 d4 00 00 00 d6 00 00 00 d7 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 2b 10 f8 19
30: 00 00 00 00 dc 00 00 00 00 00 00 00 0f 01 10 20

02:00.0 SCSI storage controller: Symbios Logic Inc. (formerly NCR) 53c875 (rev 04)
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr+ Stepping- 
SERR- FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- SERR-  [disabled] [size=64K]
00: 00 10 0f 00 47 00 00 02 04 00 00 01 08 48 00 00
10: 01 90 00 00 00 10 00 da 00 00 00 da 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 0f 01 11 40

02:01.0 SCSI storage controller: Symbios Logic Inc. (formerly NCR) 53c875 (rev 04)
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr+ Stepping- 
SERR- FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- SERR-  [disabled] [size=64K]
00: 00 10 0f 00 47 00 00 02 04 00 00 01 08 48 00 00
10: 01 94 00 00 00 20 00 da 00 30 00 da 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 

Re: interrupt problem with MPS 1.4 / not with MPS 1.1 ?

2001-06-01 Thread thunder7

On Fri, Jun 01, 2001 at 01:20:23AM -0400, Jeff Garzik wrote:
 Looking at the diff of lspci -vvvxxx between MPS1.1 and MPS1.4 (on the
 same system) may be quite useful...  maybe I missed the earlier lspci
 -vvvxxx, but I only see one here...

Yep, I didn't want to keep sending long messages. Here goes:

diff pci_11 pci_14:

-- 
4c4
   Status: Cap+ 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium TAbort- TAbort- 
MAbort+ SERR- PERR+
---
   Status: Cap+ 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium TAbort- TAbort- 
MAbort+ SERR- PERR-

I see, this isn't going to work.

I'll insert the complete dump from mps 1.1 here, followed by the same
from 1.4:


00:00.0 Host bridge: VIA Technologies, Inc. VT82C693A/694x [Apollo PRO133x] (rev c4)
Subsystem: ABIT Computer Corp.: Unknown device a204
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: 8
Region 0: Memory at d000 (32-bit, prefetchable) [size=64M]
Capabilities: [a0] AGP version 2.0
Status: RQ=31 SBA+ 64bit- FW- Rate=x1,x2
Command: RQ=0 SBA- AGP- 64bit- FW- Rate=none
Capabilities: [c0] Power Management version 2
Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA 
PME(D0-,D1-,D2-,D3hot-,D3cold-)
Status: D0 PME-Enable- DSel=0 DScale=0 PME-
00: 06 11 91 06 06 00 10 a2 c4 00 00 06 00 08 00 00
10: 08 00 00 d0 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 7b 14 04 a2
30: 00 00 00 00 a0 00 00 00 00 00 00 00 00 00 00 00

00:01.0 PCI bridge: VIA Technologies, Inc. VT82C598/694x [Apollo MVP3/Pro133x AGP] 
(prog-if 00 [Normal decode])
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
Bus: primary=00, secondary=01, subordinate=01, sec-latency=0
I/O behind bridge: f000-0fff
Memory behind bridge: d600-d8ff
Prefetchable memory behind bridge: d400-d5ff
BridgeCtl: Parity- SERR- NoISA+ VGA+ MAbort- Reset- FastB2B-
Capabilities: [80] Power Management version 2
Flags: PMEClk- DSI- D1+ D2- AuxCurrent=0mA 
PME(D0-,D1-,D2-,D3hot-,D3cold-)
Status: D0 PME-Enable- DSel=0 DScale=0 PME-
00: 06 11 98 85 07 00 30 22 00 00 04 06 00 00 01 00
10: 00 00 00 00 00 00 00 00 00 01 01 00 f0 00 00 00
20: 00 d6 f0 d8 00 d4 f0 d5 00 00 00 00 00 00 00 00
30: 00 00 00 00 80 00 00 00 00 00 00 00 00 00 0c 00

00:07.0 ISA bridge: VIA Technologies, Inc. VT82C686 [Apollo Super South] (rev 40)
Subsystem: ABIT Computer Corp.: Unknown device 
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
Capabilities: [c0] Power Management version 2
Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA 
PME(D0-,D1-,D2-,D3hot-,D3cold-)
Status: D0 PME-Enable- DSel=0 DScale=0 PME-
00: 06 11 86 06 87 00 10 02 40 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 7b 14 00 00
30: 00 00 00 00 c0 00 00 00 00 00 00 00 00 00 00 00

00:07.1 IDE interface: VIA Technologies, Inc. Bus Master IDE (rev 06) (prog-if 8a 
[Master SecP PriP])
Subsystem: VIA Technologies, Inc. Bus Master IDE
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
Region 4: I/O ports at a800 [size=16]
Capabilities: [c0] Power Management version 2
Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA 
PME(D0-,D1-,D2-,D3hot-,D3cold-)
Status: D0 PME-Enable- DSel=0 DScale=0 PME-
00: 06 11 71 05 07 00 90 02 06 8a 01 01 00 20 00 00
10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
20: 01 a8 00 00 00 00 00 00 00 00 00 00 06 11 71 05
30: 00 00 00 00 c0 00 00 00 00 00 00 00 ff 00 00 00

00:07.2 USB Controller: VIA Technologies, Inc. UHCI USB (rev 16) (prog-if 00 [UHCI])
Subsystem: Unknown device 0925:1234
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, cache line size 08
Interrupt: pin D routed to IRQ 5
Region 4: I/O ports at a000 [size=32]
Capabilities: [80] Power Management version 2
Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA 
PME(D0-,D1-,D2-,D3hot-,D3cold-)
Status: D0 PME-Enable- DSel=0 DScale=0 PME-

Re: interrupt problem with MPS 1.4 / not with MPS 1.1 ?

2001-06-01 Thread thunder7

On Thu, May 31, 2001 at 11:56:44AM -0700, Greg KH wrote:
 Is the BIOS set to Plug and Play supported OS somewhere?  If not, try
 enabling it.
 
It wasn't set, but with it set there is no difference.

Greetings,
Jurriaan
-- 
IF MICROSOFT BUILT CARS..
New seats would force everyone to have the same size butt.
GNU/Linux 2.4.5-ac5 SMP/ReiserFS 2x1402 bogomips load av: 0.87 0.42 0.16
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



Re: interrupt problem with MPS 1.4 / not with MPS 1.1 ?

2001-06-01 Thread Manfred Spraul

[EMAIL PROTECTED] wrote:
 
 :setpci -s 00:07.2 INTERRUPT_LINE=15
 :lspci -vx -s 00:07.2
 00:07.2 USB Controller: VIA Technologies, Inc. UHCI USB (rev 16) (prog-if 00 [UHCI])
 Subsystem: Unknown device 0925:1234
 Flags: bus master, medium devsel, latency 32, IRQ 19
 I/O ports at a000 [size=32]
 Capabilities: [80] Power Management version 2
 30: 00 00 00 00 80 00 00 00 00 00 00 00 15 04 00 
 :setpci -s 00:07.2 INTERRUPT_LINE=19
 :lspci -vx -s 00:07.2
 00:07.2 USB Controller: VIA Technologies, Inc. UHCI USB (rev 16) (prog-if 00 [UHCI])
 Subsystem: Unknown device 0925:1234
 Flags: bus master, medium devsel, latency 32, IRQ 19
 I/O ports at a000 [size=32]
 Capabilities: [80] Power Management version 2
 30: 00 00 00 00 80 00 00 00 00 00 00 00 19 04 00 00
 
 So that is correct. I'll attach all the information from the MPS 1.4
 reboot, in which 00:07.2 happily points at 05, while everything else
 thinks it's at 19.


Could you compile uhci as a module, set the configuration to MPS1.4 and
find out with which interrupt line setting it works.
I'd try both

setpci -s 00:07.2 INTERRUPT_LINE=13
setpci -s 00:07.2 INTERRUPT_LINE=3
[even if 13 works, please try 03 as well. 13 is hexadecimal==19]

The via ac97 sound driver contains an irq fixup for this problem. Either
a similar fixup is necessary in the uhci driver, or the fixup from the
ac97 driver could be moved to the pci-quirks and applied to all devices
in the southbridge.

--
Manfred
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



Re: interrupt problem with MPS 1.4 / not with MPS 1.1 ?

2001-06-01 Thread Jeff Garzik

Manfred Spraul wrote:
 Could you compile uhci as a module, set the configuration to MPS1.4 and
 find out with which interrupt line setting it works.
 I'd try both
 
 setpci -s 00:07.2 INTERRUPT_LINE=13
 setpci -s 00:07.2 INTERRUPT_LINE=3
 [even if 13 works, please try 03 as well. 13 is hexadecimal==19]
 
 The via ac97 sound driver contains an irq fixup for this problem. Either

I am not sure this fixup is necessary, though IIRC it did solve some
problems.  Since this latest round of Via fixups, I would like to remove
that little change in via audio, and see it anyone complains.

The 686A and 686B docs list no irq after 14.  Adrian Cox has said that
setting the PCI intr line value actually makes a connection on the PIC,
instead of just being a scratchpad register like it is normally.  Adrian
said the same thing about the USB IRQ, and I presume the other internal
irqs (like ACPI) listed for register 0x58 apply as well.

-- 
Jeff Garzik  | Disbelief, that's why you fail.
Building 1024|
MandrakeSoft |
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



Re: interrupt problem with MPS 1.4 / not with MPS 1.1 ?

2001-06-01 Thread thunder7

On Fri, Jun 01, 2001 at 07:28:33PM +0200, Manfred Spraul wrote:
 [EMAIL PROTECTED] wrote:
  
  :setpci -s 00:07.2 INTERRUPT_LINE=15
  :lspci -vx -s 00:07.2
  00:07.2 USB Controller: VIA Technologies, Inc. UHCI USB (rev 16) (prog-if 00 
[UHCI])
  Subsystem: Unknown device 0925:1234
  Flags: bus master, medium devsel, latency 32, IRQ 19
  I/O ports at a000 [size=32]
  Capabilities: [80] Power Management version 2
  30: 00 00 00 00 80 00 00 00 00 00 00 00 15 04 00 
  :setpci -s 00:07.2 INTERRUPT_LINE=19
  :lspci -vx -s 00:07.2
  00:07.2 USB Controller: VIA Technologies, Inc. UHCI USB (rev 16) (prog-if 00 
[UHCI])
  Subsystem: Unknown device 0925:1234
  Flags: bus master, medium devsel, latency 32, IRQ 19
  I/O ports at a000 [size=32]
  Capabilities: [80] Power Management version 2
  30: 00 00 00 00 80 00 00 00 00 00 00 00 19 04 00 00
  
  So that is correct. I'll attach all the information from the MPS 1.4
  reboot, in which 00:07.2 happily points at 05, while everything else
  thinks it's at 19.
 
 
 Could you compile uhci as a module, set the configuration to MPS1.4 and
 find out with which interrupt line setting it works.
 I'd try both
 
 setpci -s 00:07.2 INTERRUPT_LINE=13
no change, still this in /var/log/messages:

Jun  1 20:57:48 middle kernel: uhci.c: USB Universal Host Controller Interface driver
Jun  1 20:57:48 middle kernel: hub.c: USB new device connect on bus1/1, assigned 
device number 2
Jun  1 20:57:51 middle kernel: usb_control/bulk_msg: timeout
Jun  1 20:57:51 middle kernel: usb.c: USB device not accepting new address=2 
(error=-110)
Jun  1 20:57:51 middle kernel: hub.c: USB new device connect on bus1/1, assigned 
device number 3
Jun  1 20:57:54 middle kernel: usb_control/bulk_msg: timeout
Jun  1 20:57:54 middle kernel: usb.c: USB device not accepting new address=3 
(error=-110)

 setpci -s 00:07.2 INTERRUPT_LINE=3
 [even if 13 works, please try 03 as well. 13 is hexadecimal==19]

Bingo!!

Jun  1 20:59:34 middle kernel:   Type:   Direct-Access  ANSI SCSI 
revision: 02
Jun  1 20:59:34 middle kernel: Attached scsi removable disk sda at scsi3, channel 0, 
id 0, lun 0
Jun  1 20:59:34 middle kernel: sda : READ CAPACITY failed.
Jun  1 20:59:34 middle kernel: sda : status = 1, message = 00, host = 0, driver = 08 
Jun  1 20:59:34 middle kernel: sda : extended sense code = 2 
Jun  1 20:59:34 middle kernel: sda : block size assumed to be 512 bytes, disk size 
1GB.  
Jun  1 20:59:34 middle kernel:  sda: I/O error: dev 08:00, sector 0
Jun  1 20:59:34 middle kernel:  unable to read partition table
Jun  1 20:59:34 middle kernel: WARNING: USB Mass Storage data integrity not assured
Jun  1 20:59:34 middle kernel: USB Mass Storage device found at 2

 
 The via ac97 sound driver contains an irq fixup for this problem. Either
 a similar fixup is necessary in the uhci driver, or the fixup from the
 ac97 driver could be moved to the pci-quirks and applied to all devices
 in the southbridge.
 
Just to be sure, the lspci -vvvxxx reading of 07.2 after this setpci -s
00:07.2 INTERRUPT_LINE=3 with MPS=1.4 in the bios:

00:07.2 USB Controller: VIA Technologies, Inc. UHCI USB (rev 16) (prog-if 00 [UHCI])
Subsystem: Unknown device 0925:1234
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, cache line size 08
Interrupt: pin D routed to IRQ 19
Region 4: I/O ports at a000 [size=32]
Capabilities: [80] Power Management version 2
Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA 
PME(D0-,D1-,D2-,D3hot-,D3cold-)
Status: D0 PME-Enable- DSel=0 DScale=0 PME-
00: 06 11 38 30 07 00 10 02 16 00 03 0c 08 20 00 00
10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
20: 01 a0 00 00 00 00 00 00 00 00 00 00 25 09 34 12
30: 00 00 00 00 80 00 00 00 00 00 00 00 03 04 00 00
40: 00 10 03 00 02 00 32 e0 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: 10 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: 01 00 02 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 20 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

/proc/interrupts:

   CPU0   CPU1   
  0:  22004  24207IO-APIC-edge  timer
  1:   2073   2617IO-APIC-edge  keyboard
  2:  0  0  XT-PIC  cascade
  8:  2  0IO-APIC-edge  rtc
 14:240241IO-APIC-edge  ide0
 16:53420075342450   IO-APIC-level 

[PATCH] Re: interrupt problem with MPS 1.4 / not with MPS 1.1 ?

2001-06-01 Thread Jeff Garzik

Does this patch fix things for you, such that MPS 1.1 and MPS 1.4 both
work?
-- 
Jeff Garzik  | Disbelief, that's why you fail.
Building 1024|
MandrakeSoft |

diff -urN linux-2.4.5/drivers/pci/quirks.c linux.viairq/drivers/pci/quirks.c
--- linux-2.4.5/drivers/pci/quirks.cSat May 19 20:43:06 2001
+++ linux.viairq/drivers/pci/quirks.c   Fri Jun  1 16:33:21 2001
@@ -17,6 +17,7 @@
 #include linux/kernel.h
 #include linux/pci.h
 #include linux/init.h
+#include linux/delay.h
 
 #undef DEBUG
 
@@ -267,6 +268,8 @@
 /*
  * VIA 686A/B: If an IO-APIC is active, we need to route all on-chip
  * devices to the external APIC.
+ *
+ * TODO: this should be done at IRQ assign time (pci_enable_device call)
  */
 static void __init quirk_via_ioapic(struct pci_dev *dev)
 {
@@ -277,6 +280,8 @@
else
tmp = 0x1f; /* all known bits (4-0) routed to external APIC */

+   printk(KERN_INFO PCI: Setting Via APIC control\n);
+
/* Offset 0x58: External APIC IRQ output control */
pci_write_config_byte (dev, 0x58, tmp);
 }
@@ -285,6 +290,35 @@
 
 
 /*
+ * Via 686A/B:  The PCI_INTERRUPT_LINE register for the on-chip
+ * devices, USB0/1, AC97, MC97, and ACPI, has an unusual feature:
+ * when written, it makes an internal connection to the PIC.
+ * For these devices, this register is defined to be 4 bits wide.
+ * Normally this is fine.  However for IO-APIC motherboards, or
+ * non-x86 architectures (yes Via exists on PPC among other places),
+ * we must mask the PCI_INTERRUPT_LINE value versus 0xf to get
+ * interrupts delivered properly.
+ *
+ * TODO: this should be done at IRQ assign time (pci_enable_device call)
+ */
+static void __init quirk_via_irqpic(struct pci_dev *dev)
+{
+   u8 tmp;
+
+   pci_read_config_byte(dev, PCI_INTERRUPT_LINE, tmp);
+if ((tmp  0x0F) != dev-irq) {
+   printk(KERN_INFO PCI: Via IRQ fixup for %s, from %d to %d\n,
+  dev-slot_name, tmp, (tmp  0xF0) | dev-irq);
+udelay (15);
+
+tmp = 0xF0;
+tmp |= dev-irq;
+   pci_write_config_byte(dev, PCI_INTERRUPT_LINE, tmp);
+   }
+}
+
+
+/*
  * PIIX3 USB: We have to disable USB interrupts that are
  * hardwired to PIRQD# and may be shared with an
  * external device.
@@ -372,6 +406,11 @@
 #ifdef CONFIG_X86_IO_APIC 
{ PCI_FIXUP_FINAL,  PCI_VENDOR_ID_VIA,  PCI_DEVICE_ID_VIA_82C686,  
 quirk_via_ioapic },
 #endif
+
+   { PCI_FIXUP_FINAL,  PCI_VENDOR_ID_VIA,  PCI_DEVICE_ID_VIA_82C586_2,
+ quirk_via_irqpic },
+   { PCI_FIXUP_FINAL,  PCI_VENDOR_ID_VIA,  PCI_DEVICE_ID_VIA_82C686_4,
+ quirk_via_irqpic },
+   { PCI_FIXUP_FINAL,  PCI_VENDOR_ID_VIA,  PCI_DEVICE_ID_VIA_82C686_5,
+ quirk_via_irqpic },
+   { PCI_FIXUP_FINAL,  PCI_VENDOR_ID_VIA,  PCI_DEVICE_ID_VIA_82C686_6,
+ quirk_via_irqpic },
 
{ 0 }
 };
diff -urN linux-2.4.5/drivers/sound/via82cxxx_audio.c 
linux.viairq/drivers/sound/via82cxxx_audio.c
--- linux-2.4.5/drivers/sound/via82cxxx_audio.c Tue May  1 19:05:00 2001
+++ linux.viairq/drivers/sound/via82cxxx_audio.cFri Jun  1 16:32:25 2001
@@ -3012,7 +3012,6 @@
 {
int rc;
struct via_info *card;
-   u8 tmp;
static int printed_version = 0;
 
DPRINTK (ENTER\n);
@@ -3107,19 +3106,6 @@
if (rc) {
printk (KERN_ERR PFX interrupt init failed, aborting\n);
goto err_out_have_proc;
-   }
-
-   pci_read_config_byte (pdev, 0x3C, tmp);
-   if ((tmp  0x0F) != pdev-irq) {
-   printk (KERN_WARNING PFX IRQ fixup, 0x3C==0x%02X\n, tmp);
-   udelay (15);
-   tmp = 0xF0;
-   tmp |= pdev-irq;
-   pci_write_config_byte (pdev, 0x3C, tmp);
-   DPRINTK (new 0x3c==0x%02x\n, tmp);
-   } else {
-   DPRINTK (IRQ reg 0x3c==0x%02x, irq==%d\n,
-   tmp, tmp  0x0F);
}
 
printk (KERN_INFO PFX board #%d at 0x%04lX, IRQ %d\n,



Re: interrupt problem with MPS 1.4 / not with MPS 1.1 ?

2001-05-31 Thread Jeff Garzik

Looking at the diff of "lspci -vvvxxx" between MPS1.1 and MPS1.4 (on the
same system) may be quite useful...  maybe I missed the earlier "lspci
-vvvxxx", but I only see one here...
-- 
Jeff Garzik  | Disbelief, that's why you fail.
Building 1024|
MandrakeSoft |
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



Re: interrupt problem with MPS 1.4 / not with MPS 1.1 ?

2001-05-31 Thread thunder7

On Thu, May 31, 2001 at 10:45:17PM +0200, Manfred Spraul wrote:
> [EMAIL PROTECTED] wrote:
> > 
> > 00:07.2 USB Controller: VIA Technologies, Inc. UHCI USB (rev 16) (prog-if 00 
>[UHCI])
> > Subsystem: Unknown device 0925:1234
> > Flags: bus master, medium devsel, latency 32, IRQ 5
> > I/O ports at a000 [size=32]
> > Capabilities: [80] Power Management version 2
> > 30: 00 00 00 00 80 00 00 00 00 00 00 00 05 04 00 00
> > 
> > 0x3X is at 5, not at 3.
> >
> You still run with MPS 1.1.
> It should be 3 or 19 after you reboot with MPS 1.4.
> 
> Could you please try the following commands as root, but just before
> rebooting. It'll kill the USB controller.
> 
> #setpci -s 00:07.2 INTERRUPT_LINE=15
> #lspci -vx -s 00:07.2
> <<< 0x3C should be 15
> #setpci -s 00:07.2 INTERRUPT_LINE=19
> #lspci -vx -s 00:07.2
> <<< 0x3C is now either 19 or 3
> 
:setpci -s 00:07.2 INTERRUPT_LINE=15
:lspci -vx -s 00:07.2
00:07.2 USB Controller: VIA Technologies, Inc. UHCI USB (rev 16) (prog-if 00 [UHCI])
Subsystem: Unknown device 0925:1234
Flags: bus master, medium devsel, latency 32, IRQ 19
I/O ports at a000 [size=32]
Capabilities: [80] Power Management version 2
30: 00 00 00 00 80 00 00 00 00 00 00 00 15 04 00 00
:setpci -s 00:07.2 INTERRUPT_LINE=19
:lspci -vx -s 00:07.2
00:07.2 USB Controller: VIA Technologies, Inc. UHCI USB (rev 16) (prog-if 00 [UHCI])
Subsystem: Unknown device 0925:1234
Flags: bus master, medium devsel, latency 32, IRQ 19
I/O ports at a000 [size=32]
Capabilities: [80] Power Management version 2
30: 00 00 00 00 80 00 00 00 00 00 00 00 19 04 00 00

So that is correct. I'll attach all the information from the MPS 1.4
reboot, in which 00:07.2 happily points at 05, while everything else
thinks it's at 19.


0: 000f - 0010 (reserved)
 BIOS-e820: 0010 - 1fff (usable)
 BIOS-e820: 1fff - 1fff3000 (ACPI NVS)
 BIOS-e820: 1fff3000 - 2000 (ACPI data)
 BIOS-e820: fec0 - fec01000 (reserved)
 BIOS-e820: fee0 - fee01000 (reserved)
 BIOS-e820:  - 0001 (reserved)
found SMP MP-table at 000f5770
hm, page 000f5000 reserved twice.
hm, page 000f6000 reserved twice.
hm, page 000f1000 reserved twice.
hm, page 000f2000 reserved twice.
On node 0 totalpages: 131056
zone(0): 4096 pages.
zone(1): 126960 pages.
zone(2): 0 pages.
Intel MultiProcessor Specification v1.4
Virtual Wire compatibility mode.
OEM ID: OEM0 Product ID: PROD APIC at: 0xFEE0
Processor #0 Pentium(tm) Pro APIC version 17
Processor #1 Pentium(tm) Pro APIC version 17
I/O APIC #2 Version 17 at 0xFEC0.
Processors: 2
Kernel command line: auto BOOT_IMAGE=SuSE-2.4.5ac5 ro root=2101 
BOOT_FILE=/boot/prod/vmlinuz-245ac5 video=matrox:vesa:0x11E,fv:80,sgram
Total of 2 processors activated (2808.21 BogoMIPS).
ENABLING IO-APIC IRQs
...changing IO-APIC physical APIC ID to 2 ... ok.
init IO_APIC IRQs
 IO-APIC (apicid-pin) 2-0, 2-5, 2-10, 2-11, 2-15, 2-20, 2-21, 2-22, 2-23 not connected.
..TIMER: vector=49 pin1=2 pin2=0
number of MP IRQ sources: 22.
number of IO-APIC #2 registers: 24.
testing the IO APIC...

IO APIC #2..
 register #00: 0200
...: physical APIC id: 02
 register #01: 00178011
... : max redirection entries: 0017
... : IO APIC version: 0011
 WARNING: unexpected IO-APIC, please mail
  to [EMAIL PROTECTED]
 register #02: 
... : arbitration: 00
 IRQ redirection table:
 NR Log Phy Mask Trig IRR Pol Stat Dest Deli Vect:   
 00 000 00  100   0   00000
 01 003 03  000   0   01139
 02 003 03  000   0   01131
 03 003 03  000   0   01141
 04 003 03  000   0   01149
 05 000 00  100   0   00000
 06 003 03  000   0   01151
 07 003 03  000   0   01159
 08 003 03  000   0   01161
 09 003 03  000   0   01169
 0a 000 00  100   0   00000
 0b 000 00  100   0   00000
 0c 003 03  000   0   01171
 0d 003 03  000   0   01179
 0e 003 03  000   0   01181
 0f 000 00  100   0   00000
 10 003 03  110   1   01189
 11 003 03  110   1   01191
 12 003 03  110   1   01199
 13 003 03  110   1   011A1
 14 000 00  100   0   00000
 15 000 00  100   0   00000
 16 000 00  100   0   00000
 17 000 00  100   0   00000
IRQ to pin mappings:
IRQ0 -> 0:2
IRQ1 -> 0:1
IRQ3 -> 0:3
IRQ4 -> 0:4
IRQ6 -> 0:6
IRQ7 -> 0:7
IRQ8 -> 0:8
IRQ9 -> 0:9
IRQ12 -> 0:12
IRQ13 -> 0:13
IRQ14 -> 0:14
IRQ16 

Re: [lkml]Re: interrupt problem with MPS 1.4 / not with MPS 1.1 ?

2001-05-31 Thread Jeff Garzik

Manfred Spraul wrote:
> 
> >
> > I know that with MPS 1.4, the USB controller finds itself at an
> > unshared interrupt 19. I can't reboot at the moment to check.
> >
> lspci -vxxx -s 00:07.0
> 
> the APIC sits in the southbridge.
> the low 2 bits of offset 0x58 must be set [route USB IRQ to APIC], and
> 
> lspci -vx -s 00:07.2
> 
> offset 0x3C must be set to 3 [19 & 15]
> 
> There was some discussion about the same problem with the sound part of
> the southbridge.

If an IO-APIC is present, 2.4.5 automatically routes all Via IRQs to
external APIC.

See quirk_via_ioapic in drivers/pci/quirks.c.

I have received reports that MPS1.1 works on SMP Via boards, while
MPS1.4 kills it.

-- 
Jeff Garzik  | Disbelief, that's why you fail.
Building 1024|
MandrakeSoft |
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



Re: [lkml]Re: [lkml]Re: interrupt problem with MPS 1.4 / not with MPS 1.1 ?

2001-05-31 Thread Manfred Spraul

[EMAIL PROTECTED] wrote:
> 
> 00:07.2 USB Controller: VIA Technologies, Inc. UHCI USB (rev 16) (prog-if 00 [UHCI])
> Subsystem: Unknown device 0925:1234
> Flags: bus master, medium devsel, latency 32, IRQ 5
> I/O ports at a000 [size=32]
> Capabilities: [80] Power Management version 2
> 30: 00 00 00 00 80 00 00 00 00 00 00 00 05 04 00 00
> 
> 0x3X is at 5, not at 3.
>
You still run with MPS 1.1.
It should be 3 or 19 after you reboot with MPS 1.4.

Could you please try the following commands as root, but just before
rebooting. It'll kill the USB controller.

#setpci -s 00:07.2 INTERRUPT_LINE=15
#lspci -vx -s 00:07.2
<<< 0x3C should be 15
#setpci -s 00:07.2 INTERRUPT_LINE=19
#lspci -vx -s 00:07.2
<<< 0x3C is now either 19 or 3

--
Manfred
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



Re: [lkml]Re: [lkml]Re: interrupt problem with MPS 1.4 / not with MPS 1.1 ?

2001-05-31 Thread thunder7

On Thu, May 31, 2001 at 10:21:55PM +0200, Manfred Spraul wrote:
> > 
> > I know that with MPS 1.4, the USB controller finds itself at an 
> > unshared interrupt 19. I can't reboot at the moment to check. 
> >
> lspci -vxxx -s 00:07.0
> 
> the APIC sits in the southbridge.
> the low 2 bits of offset 0x58 must be set [route USB IRQ to APIC], and 
> 
> lspci -vx -s 00:07.2
> 
> offset 0x3C must be set to 3 [19 & 15]
> 
> There was some discussion about the same problem with the sound part of
> the southbridge.
> 
> What are the current values of these registers?
> 
current, as in MPS 1.1:


00:07.0 ISA bridge: VIA Technologies, Inc. VT82C686 [Apollo Super South] (rev 40)
Subsystem: ABIT Computer Corp.: Unknown device 
Flags: bus master, stepping, medium devsel, latency 0
Capabilities: [c0] Power Management version 2
50: 02 76 04 00 00 f0 ab 50 1f 06 ff 08 00 00 00 00

I'd say the lower 2 bits at 0x58 are set.

00:07.2 USB Controller: VIA Technologies, Inc. UHCI USB (rev 16) (prog-if 00 [UHCI])
Subsystem: Unknown device 0925:1234
Flags: bus master, medium devsel, latency 32, IRQ 5
I/O ports at a000 [size=32]
Capabilities: [80] Power Management version 2
30: 00 00 00 00 80 00 00 00 00 00 00 00 05 04 00 00

0x3X is at 5, not at 3.

Greetings,
Jurriaan
-- 
Endora is where we are, and you need to know that describing this place is
like dancing to no music.
Peter Hedges - What's eating Gilbert Grape
GNU/Linux 2.4.5-ac4 SMP/ReiserFS 2x1402 bogomips load av: 0.02 0.01 0.00
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



Re: [lkml]Re: interrupt problem with MPS 1.4 / not with MPS 1.1 ?

2001-05-31 Thread Manfred Spraul

> 
> I know that with MPS 1.4, the USB controller finds itself at an 
> unshared interrupt 19. I can't reboot at the moment to check. 
>
lspci -vxxx -s 00:07.0

the APIC sits in the southbridge.
the low 2 bits of offset 0x58 must be set [route USB IRQ to APIC], and 

lspci -vx -s 00:07.2

offset 0x3C must be set to 3 [19 & 15]

There was some discussion about the same problem with the sound part of
the southbridge.

What are the current values of these registers?

--
Manfred
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



Re: interrupt problem with MPS 1.4 / not with MPS 1.1 ?

2001-05-31 Thread Greg KH

On Thu, May 31, 2001 at 09:48:35PM +0200, [EMAIL PROTECTED] wrote:
> On Thu, May 31, 2001 at 11:06:42AM -0700, Greg KH wrote:
> > On Thu, May 31, 2001 at 08:39:08PM +0200, [EMAIL PROTECTED] wrote:
> > > What information would be necessary to debug this?
> > 
> > Which kernel version?
> > 
> > greg k-h
> > 
> 2.4.5-ac4, but I rebooted in 2.4.4 and it did the same.

Is the BIOS set to "Plug and Play supported OS" somewhere?  If not, try
enabling it.

Also the MPS 1.4 boot messages would be helpful :)

thanks,

greg k-h
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



Re: [lkml]Re: interrupt problem with MPS 1.4 / not with MPS 1.1 ?

2001-05-31 Thread thunder7

On Thu, May 31, 2001 at 11:06:42AM -0700, Greg KH wrote:
> On Thu, May 31, 2001 at 08:39:08PM +0200, [EMAIL PROTECTED] wrote:
> > What information would be necessary to debug this?
> 
> Which kernel version?
> 
> greg k-h
> 
2.4.5-ac4, but I rebooted in 2.4.4 and it did the same.

I'll try and add some info here (from the bios= MPS 1.1 case!)

I have the following expansion cards:

Matrox G400 agp video-card
ITI 4280 dual-UW scsi + fast ethernet card
NCR860 ultra-scsi card
Soundblaster Live! 5.1 card

from dmesg:
Total of 2 processors activated (2808.21 BogoMIPS).
ENABLING IO-APIC IRQs
...changing IO-APIC physical APIC ID to 2 ... ok.
init IO_APIC IRQs
 IO-APIC (apicid-pin) 2-0, 2-16, 2-17, 2-18, 2-19, 2-20, 2-21, 2-22, 2-23 not 
connected.
..TIMER: vector=49 pin1=2 pin2=0
number of MP IRQ sources: 16.
number of IO-APIC #2 registers: 24.
testing the IO APIC...

IO APIC #2..
 register #00: 0200
...: physical APIC id: 02
 register #01: 00178011
... : max redirection entries: 0017
... : IO APIC version: 0011
 WARNING: unexpected IO-APIC, please mail
  to [EMAIL PROTECTED]
 register #02: 
... : arbitration: 00
 IRQ redirection table:
 NR Log Phy Mask Trig IRR Pol Stat Dest Deli Vect:   
 00 000 00  100   0   00000
 01 003 03  000   0   01139
 02 003 03  000   0   01131
 03 003 03  000   0   01141
 04 003 03  000   0   01149
 05 003 03  110   1   01151
 06 003 03  000   0   01159
 07 003 03  000   0   01161
 08 003 03  000   0   01169
 09 003 03  000   0   01171
 0a 003 03  110   1   01179
 0b 003 03  110   1   01181
 0c 003 03  000   0   01189
 0d 003 03  000   0   01191
 0e 003 03  000   0   01199
 0f 003 03  110   1   011A1
 10 000 00  100   0   00000
 11 000 00  100   0   00000
 12 000 00  100   0   00000
 13 000 00  100   0   00000
 14 000 00  100   0   00000
 15 000 00  100   0   00000
 16 000 00  100   0   00000
 17 000 00  100   0   00000
IRQ to pin mappings:
IRQ0 -> 0:2
IRQ1 -> 0:1
IRQ3 -> 0:3
IRQ4 -> 0:4
IRQ5 -> 0:5
IRQ6 -> 0:6
IRQ7 -> 0:7
IRQ8 -> 0:8
IRQ9 -> 0:9
IRQ10 -> 0:10
IRQ11 -> 0:11
IRQ12 -> 0:12
IRQ13 -> 0:13
IRQ14 -> 0:14
IRQ15 -> 0:15
 done.
Using local APIC timer interrupts.
calibrating APIC timer ...
. CPU clock speed is 703.1338 MHz.
. host bus clock speed is 100.4475 MHz.
cpu: 0, clocks: 1004475, slice: 334825
CPU0
cpu: 1, clocks: 1004475, slice: 334825
CPU1
checking TSC synchronization across CPUs: passed.
mtrr: your CPUs had inconsistent variable MTRR settings
mtrr: probably your BIOS does not setup all CPUs
PCI: PCI BIOS revision 2.10 entry at 0xfb3a0, last bus=2
PCI: Using configuration type 1
PCI: Probing PCI hardware
Unknown bridge resource 0: assuming transparent
Unknown bridge resource 2: assuming transparent
PCI: Using IRQ router VIA [1106/0686] at 00:07.0
Linux NET4.0 for Linux 2.4
usb.c: registered new driver hub
uhci.c: USB UHCI at I/O 0xa000, IRQ 5
usb.c: new USB bus registered, assigned bus number 1
hub.c: USB hub found
hub.c: 2 ports detected
uhci.c: USB UHCI at I/O 0xa400, IRQ 5
usb.c: new USB bus registered, assigned bus number 2
hub.c: USB hub found
hub.c: 2 ports detected
uhci.c:  Linus Torvalds, Johannes Erdfelt, Randy Dunlap, Georg Acher, Deti Fliegl, 
Thomas Sailer, Roman Weissgaerber
uhci.c: USB Universal Host Controller Interface driver
Initializing USB Mass Storage driver...
usb.c: registered new driver usb-storage
USB Mass Storage support registered.
NET4: Linux TCP/IP 1.0 for NET4.0
Freeing unused kernel memory: 248k freed
hub.c: USB new device connect on bus1/1, assigned device number 2
scsi3 : SCSI emulation for USB Mass Storage devices
  Vendor: IOMEGAModel: ZIP 250   Rev: 61.T
  Type:   Direct-Access  ANSI SCSI revision: 02
Attached scsi removable disk sda at scsi3, channel 0, id 0, lun 0
sda : READ CAPACITY failed.
sda : status = 1, message = 00, host = 0, driver = 08 
sda : extended sense code = 2 
sda : block size assumed to be 512 bytes, disk size 1GB.  
 sda: I/O error: dev 08:00, sector 0
 unable to read partition table
WARNING: USB Mass Storage data integrity not assured
USB Mass Storage device found at 2
Adding Swap: 1047776k swap-space (priority -1)

from lspci:

00:00.0 Host bridge: VIA Technologies, Inc. VT82C693A/694x [Apollo PRO133x] (rev c4)
Subsystem: ABIT Computer Corp.: Unknown device a204
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- 
SERR- FastB2B-
 

Re: interrupt problem with MPS 1.4 / not with MPS 1.1 ?

2001-05-31 Thread Greg KH

On Thu, May 31, 2001 at 08:39:08PM +0200, [EMAIL PROTECTED] wrote:
> What information would be necessary to debug this?

Which kernel version?

greg k-h
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



interrupt problem with MPS 1.4 / not with MPS 1.1 ?

2001-05-31 Thread thunder7

Hardware:

Abit VP6 (Via 694x) x86/SMP motherboard
with USB controller

If I set the bios for MPS 1.1, USB runs fine. If I set the bios
for MPS 1.4, I get this:

May 31 13:08:06 middle kernel: hub.c: USB new device connect on bus1/1, assigned 
device number 4
May 31 13:08:09 middle kernel: usb_control/bulk_msg: timeout
May 31 13:08:09 middle kernel: usb.c: USB device not accepting new address=4 
(error=-110)
May 31 13:08:09 middle kernel: hub.c: USB new device connect on bus1/1, assigned 
device number 5
May 31 13:08:12 middle kernel: usb_control/bulk_msg: timeout
May 31 13:08:12 middle kernel: usb.c: USB device not accepting new address=5 
(error=-110)
May 31 13:08:12 middle kernel: hub.c: USB new device connect on bus1/1, assigned 
device number 6
May 31 13:08:15 middle kernel: usb_control/bulk_msg: timeout
May 31 13:08:15 middle kernel: usb.c: USB device not accepting new address=6 
(error=-110)
May 31 13:08:16 middle kernel: hub.c: USB new device connect on bus1/1, assigned 
device number 7
May 31 13:08:19 middle kernel: usb_control/bulk_msg: timeout
May 31 13:08:19 middle kernel: usb.c: USB device not accepting new address=7 
(error=-110)
May 31 13:08:19 middle kernel: hub.c: USB new device connect on bus1/1, assigned 
device number 8
May 31 13:08:22 middle kernel: usb_control/bulk_msg: timeout
May 31 13:08:22 middle kernel: usb.c: USB device not accepting new address=8 
(error=-110)
May 31 13:08:22 middle kernel: hub.c: USB new device connect on bus1/1, assigned 
device number 9

Now I understand this mail doesn't have all the necessary info, but my
question is:

What information would be necessary to debug this?

dmesg
/var/log/messages
lspci -vv (or -x?)

or more?

Jurriaan
-- 
BOFH excuse #57:

Groundskeepers stole the root password
GNU/Linux 2.4.5-ac4 SMP/ReiserFS 2x1402 bogomips load av: 0.41 0.11 0.03
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



interrupt problem with MPS 1.4 / not with MPS 1.1 ?

2001-05-31 Thread thunder7

Hardware:

Abit VP6 (Via 694x) x86/SMP motherboard
with USB controller

If I set the bios for MPS 1.1, USB runs fine. If I set the bios
for MPS 1.4, I get this:

May 31 13:08:06 middle kernel: hub.c: USB new device connect on bus1/1, assigned 
device number 4
May 31 13:08:09 middle kernel: usb_control/bulk_msg: timeout
May 31 13:08:09 middle kernel: usb.c: USB device not accepting new address=4 
(error=-110)
May 31 13:08:09 middle kernel: hub.c: USB new device connect on bus1/1, assigned 
device number 5
May 31 13:08:12 middle kernel: usb_control/bulk_msg: timeout
May 31 13:08:12 middle kernel: usb.c: USB device not accepting new address=5 
(error=-110)
May 31 13:08:12 middle kernel: hub.c: USB new device connect on bus1/1, assigned 
device number 6
May 31 13:08:15 middle kernel: usb_control/bulk_msg: timeout
May 31 13:08:15 middle kernel: usb.c: USB device not accepting new address=6 
(error=-110)
May 31 13:08:16 middle kernel: hub.c: USB new device connect on bus1/1, assigned 
device number 7
May 31 13:08:19 middle kernel: usb_control/bulk_msg: timeout
May 31 13:08:19 middle kernel: usb.c: USB device not accepting new address=7 
(error=-110)
May 31 13:08:19 middle kernel: hub.c: USB new device connect on bus1/1, assigned 
device number 8
May 31 13:08:22 middle kernel: usb_control/bulk_msg: timeout
May 31 13:08:22 middle kernel: usb.c: USB device not accepting new address=8 
(error=-110)
May 31 13:08:22 middle kernel: hub.c: USB new device connect on bus1/1, assigned 
device number 9

Now I understand this mail doesn't have all the necessary info, but my
question is:

What information would be necessary to debug this?

dmesg
/var/log/messages
lspci -vv (or -x?)

or more?

Jurriaan
-- 
BOFH excuse #57:

Groundskeepers stole the root password
GNU/Linux 2.4.5-ac4 SMP/ReiserFS 2x1402 bogomips load av: 0.41 0.11 0.03
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



Re: interrupt problem with MPS 1.4 / not with MPS 1.1 ?

2001-05-31 Thread Greg KH

On Thu, May 31, 2001 at 08:39:08PM +0200, [EMAIL PROTECTED] wrote:
 What information would be necessary to debug this?

Which kernel version?

greg k-h
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



Re: [lkml]Re: interrupt problem with MPS 1.4 / not with MPS 1.1 ?

2001-05-31 Thread thunder7

On Thu, May 31, 2001 at 11:06:42AM -0700, Greg KH wrote:
 On Thu, May 31, 2001 at 08:39:08PM +0200, [EMAIL PROTECTED] wrote:
  What information would be necessary to debug this?
 
 Which kernel version?
 
 greg k-h
 
2.4.5-ac4, but I rebooted in 2.4.4 and it did the same.

I'll try and add some info here (from the bios= MPS 1.1 case!)

I have the following expansion cards:

Matrox G400 agp video-card
ITI 4280 dual-UW scsi + fast ethernet card
NCR860 ultra-scsi card
Soundblaster Live! 5.1 card

from dmesg:
Total of 2 processors activated (2808.21 BogoMIPS).
ENABLING IO-APIC IRQs
...changing IO-APIC physical APIC ID to 2 ... ok.
init IO_APIC IRQs
 IO-APIC (apicid-pin) 2-0, 2-16, 2-17, 2-18, 2-19, 2-20, 2-21, 2-22, 2-23 not 
connected.
..TIMER: vector=49 pin1=2 pin2=0
number of MP IRQ sources: 16.
number of IO-APIC #2 registers: 24.
testing the IO APIC...

IO APIC #2..
 register #00: 0200
...: physical APIC id: 02
 register #01: 00178011
... : max redirection entries: 0017
... : IO APIC version: 0011
 WARNING: unexpected IO-APIC, please mail
  to [EMAIL PROTECTED]
 register #02: 
... : arbitration: 00
 IRQ redirection table:
 NR Log Phy Mask Trig IRR Pol Stat Dest Deli Vect:   
 00 000 00  100   0   00000
 01 003 03  000   0   01139
 02 003 03  000   0   01131
 03 003 03  000   0   01141
 04 003 03  000   0   01149
 05 003 03  110   1   01151
 06 003 03  000   0   01159
 07 003 03  000   0   01161
 08 003 03  000   0   01169
 09 003 03  000   0   01171
 0a 003 03  110   1   01179
 0b 003 03  110   1   01181
 0c 003 03  000   0   01189
 0d 003 03  000   0   01191
 0e 003 03  000   0   01199
 0f 003 03  110   1   011A1
 10 000 00  100   0   00000
 11 000 00  100   0   00000
 12 000 00  100   0   00000
 13 000 00  100   0   00000
 14 000 00  100   0   00000
 15 000 00  100   0   00000
 16 000 00  100   0   00000
 17 000 00  100   0   00000
IRQ to pin mappings:
IRQ0 - 0:2
IRQ1 - 0:1
IRQ3 - 0:3
IRQ4 - 0:4
IRQ5 - 0:5
IRQ6 - 0:6
IRQ7 - 0:7
IRQ8 - 0:8
IRQ9 - 0:9
IRQ10 - 0:10
IRQ11 - 0:11
IRQ12 - 0:12
IRQ13 - 0:13
IRQ14 - 0:14
IRQ15 - 0:15
 done.
Using local APIC timer interrupts.
calibrating APIC timer ...
. CPU clock speed is 703.1338 MHz.
. host bus clock speed is 100.4475 MHz.
cpu: 0, clocks: 1004475, slice: 334825
CPU0T0:1004464,T1:669632,D:7,S:334825,C:1004475
cpu: 1, clocks: 1004475, slice: 334825
CPU1T0:1004464,T1:334800,D:14,S:334825,C:1004475
checking TSC synchronization across CPUs: passed.
mtrr: your CPUs had inconsistent variable MTRR settings
mtrr: probably your BIOS does not setup all CPUs
PCI: PCI BIOS revision 2.10 entry at 0xfb3a0, last bus=2
PCI: Using configuration type 1
PCI: Probing PCI hardware
Unknown bridge resource 0: assuming transparent
Unknown bridge resource 2: assuming transparent
PCI: Using IRQ router VIA [1106/0686] at 00:07.0
Linux NET4.0 for Linux 2.4
usb.c: registered new driver hub
uhci.c: USB UHCI at I/O 0xa000, IRQ 5
usb.c: new USB bus registered, assigned bus number 1
hub.c: USB hub found
hub.c: 2 ports detected
uhci.c: USB UHCI at I/O 0xa400, IRQ 5
usb.c: new USB bus registered, assigned bus number 2
hub.c: USB hub found
hub.c: 2 ports detected
uhci.c:  Linus Torvalds, Johannes Erdfelt, Randy Dunlap, Georg Acher, Deti Fliegl, 
Thomas Sailer, Roman Weissgaerber
uhci.c: USB Universal Host Controller Interface driver
Initializing USB Mass Storage driver...
usb.c: registered new driver usb-storage
USB Mass Storage support registered.
NET4: Linux TCP/IP 1.0 for NET4.0
Freeing unused kernel memory: 248k freed
hub.c: USB new device connect on bus1/1, assigned device number 2
scsi3 : SCSI emulation for USB Mass Storage devices
  Vendor: IOMEGAModel: ZIP 250   Rev: 61.T
  Type:   Direct-Access  ANSI SCSI revision: 02
Attached scsi removable disk sda at scsi3, channel 0, id 0, lun 0
sda : READ CAPACITY failed.
sda : status = 1, message = 00, host = 0, driver = 08 
sda : extended sense code = 2 
sda : block size assumed to be 512 bytes, disk size 1GB.  
 sda: I/O error: dev 08:00, sector 0
 unable to read partition table
WARNING: USB Mass Storage data integrity not assured
USB Mass Storage device found at 2
Adding Swap: 1047776k swap-space (priority -1)

from lspci:

00:00.0 Host bridge: VIA Technologies, Inc. VT82C693A/694x [Apollo PRO133x] (rev c4)
Subsystem: ABIT Computer Corp.: Unknown device a204
Control: I/O- Mem+ BusMaster+ 

Re: interrupt problem with MPS 1.4 / not with MPS 1.1 ?

2001-05-31 Thread Greg KH

On Thu, May 31, 2001 at 09:48:35PM +0200, [EMAIL PROTECTED] wrote:
 On Thu, May 31, 2001 at 11:06:42AM -0700, Greg KH wrote:
  On Thu, May 31, 2001 at 08:39:08PM +0200, [EMAIL PROTECTED] wrote:
   What information would be necessary to debug this?
  
  Which kernel version?
  
  greg k-h
  
 2.4.5-ac4, but I rebooted in 2.4.4 and it did the same.

Is the BIOS set to Plug and Play supported OS somewhere?  If not, try
enabling it.

Also the MPS 1.4 boot messages would be helpful :)

thanks,

greg k-h
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



Re: [lkml]Re: interrupt problem with MPS 1.4 / not with MPS 1.1 ?

2001-05-31 Thread Manfred Spraul

 
 I know that with MPS 1.4, the USB controller finds itself at an 
 unshared interrupt 19. I can't reboot at the moment to check. 

lspci -vxxx -s 00:07.0

the APIC sits in the southbridge.
the low 2 bits of offset 0x58 must be set [route USB IRQ to APIC], and 

lspci -vx -s 00:07.2

offset 0x3C must be set to 3 [19  15]

There was some discussion about the same problem with the sound part of
the southbridge.

What are the current values of these registers?

--
Manfred
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



Re: [lkml]Re: [lkml]Re: interrupt problem with MPS 1.4 / not with MPS 1.1 ?

2001-05-31 Thread thunder7

On Thu, May 31, 2001 at 10:21:55PM +0200, Manfred Spraul wrote:
  
  I know that with MPS 1.4, the USB controller finds itself at an 
  unshared interrupt 19. I can't reboot at the moment to check. 
 
 lspci -vxxx -s 00:07.0
 
 the APIC sits in the southbridge.
 the low 2 bits of offset 0x58 must be set [route USB IRQ to APIC], and 
 
 lspci -vx -s 00:07.2
 
 offset 0x3C must be set to 3 [19  15]
 
 There was some discussion about the same problem with the sound part of
 the southbridge.
 
 What are the current values of these registers?
 
current, as in MPS 1.1:


00:07.0 ISA bridge: VIA Technologies, Inc. VT82C686 [Apollo Super South] (rev 40)
Subsystem: ABIT Computer Corp.: Unknown device 
Flags: bus master, stepping, medium devsel, latency 0
Capabilities: [c0] Power Management version 2
50: 02 76 04 00 00 f0 ab 50 1f 06 ff 08 00 00 00 00

I'd say the lower 2 bits at 0x58 are set.

00:07.2 USB Controller: VIA Technologies, Inc. UHCI USB (rev 16) (prog-if 00 [UHCI])
Subsystem: Unknown device 0925:1234
Flags: bus master, medium devsel, latency 32, IRQ 5
I/O ports at a000 [size=32]
Capabilities: [80] Power Management version 2
30: 00 00 00 00 80 00 00 00 00 00 00 00 05 04 00 00

0x3X is at 5, not at 3.

Greetings,
Jurriaan
-- 
Endora is where we are, and you need to know that describing this place is
like dancing to no music.
Peter Hedges - What's eating Gilbert Grape
GNU/Linux 2.4.5-ac4 SMP/ReiserFS 2x1402 bogomips load av: 0.02 0.01 0.00
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



Re: [lkml]Re: [lkml]Re: interrupt problem with MPS 1.4 / not with MPS 1.1 ?

2001-05-31 Thread Manfred Spraul

[EMAIL PROTECTED] wrote:
 
 00:07.2 USB Controller: VIA Technologies, Inc. UHCI USB (rev 16) (prog-if 00 [UHCI])
 Subsystem: Unknown device 0925:1234
 Flags: bus master, medium devsel, latency 32, IRQ 5
 I/O ports at a000 [size=32]
 Capabilities: [80] Power Management version 2
 30: 00 00 00 00 80 00 00 00 00 00 00 00 05 04 00 00
 
 0x3X is at 5, not at 3.

You still run with MPS 1.1.
It should be 3 or 19 after you reboot with MPS 1.4.

Could you please try the following commands as root, but just before
rebooting. It'll kill the USB controller.

#setpci -s 00:07.2 INTERRUPT_LINE=15
#lspci -vx -s 00:07.2
 0x3C should be 15
#setpci -s 00:07.2 INTERRUPT_LINE=19
#lspci -vx -s 00:07.2
 0x3C is now either 19 or 3

--
Manfred
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



Re: [lkml]Re: interrupt problem with MPS 1.4 / not with MPS 1.1 ?

2001-05-31 Thread Jeff Garzik

Manfred Spraul wrote:
 
 
  I know that with MPS 1.4, the USB controller finds itself at an
  unshared interrupt 19. I can't reboot at the moment to check.
 
 lspci -vxxx -s 00:07.0
 
 the APIC sits in the southbridge.
 the low 2 bits of offset 0x58 must be set [route USB IRQ to APIC], and
 
 lspci -vx -s 00:07.2
 
 offset 0x3C must be set to 3 [19  15]
 
 There was some discussion about the same problem with the sound part of
 the southbridge.

If an IO-APIC is present, 2.4.5 automatically routes all Via IRQs to
external APIC.

See quirk_via_ioapic in drivers/pci/quirks.c.

I have received reports that MPS1.1 works on SMP Via boards, while
MPS1.4 kills it.

-- 
Jeff Garzik  | Disbelief, that's why you fail.
Building 1024|
MandrakeSoft |
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



Re: interrupt problem with MPS 1.4 / not with MPS 1.1 ?

2001-05-31 Thread thunder7

On Thu, May 31, 2001 at 10:45:17PM +0200, Manfred Spraul wrote:
 [EMAIL PROTECTED] wrote:
  
  00:07.2 USB Controller: VIA Technologies, Inc. UHCI USB (rev 16) (prog-if 00 
[UHCI])
  Subsystem: Unknown device 0925:1234
  Flags: bus master, medium devsel, latency 32, IRQ 5
  I/O ports at a000 [size=32]
  Capabilities: [80] Power Management version 2
  30: 00 00 00 00 80 00 00 00 00 00 00 00 05 04 00 00
  
  0x3X is at 5, not at 3.
 
 You still run with MPS 1.1.
 It should be 3 or 19 after you reboot with MPS 1.4.
 
 Could you please try the following commands as root, but just before
 rebooting. It'll kill the USB controller.
 
 #setpci -s 00:07.2 INTERRUPT_LINE=15
 #lspci -vx -s 00:07.2
  0x3C should be 15
 #setpci -s 00:07.2 INTERRUPT_LINE=19
 #lspci -vx -s 00:07.2
  0x3C is now either 19 or 3
 
:setpci -s 00:07.2 INTERRUPT_LINE=15
:lspci -vx -s 00:07.2
00:07.2 USB Controller: VIA Technologies, Inc. UHCI USB (rev 16) (prog-if 00 [UHCI])
Subsystem: Unknown device 0925:1234
Flags: bus master, medium devsel, latency 32, IRQ 19
I/O ports at a000 [size=32]
Capabilities: [80] Power Management version 2
30: 00 00 00 00 80 00 00 00 00 00 00 00 15 04 00 00
:setpci -s 00:07.2 INTERRUPT_LINE=19
:lspci -vx -s 00:07.2
00:07.2 USB Controller: VIA Technologies, Inc. UHCI USB (rev 16) (prog-if 00 [UHCI])
Subsystem: Unknown device 0925:1234
Flags: bus master, medium devsel, latency 32, IRQ 19
I/O ports at a000 [size=32]
Capabilities: [80] Power Management version 2
30: 00 00 00 00 80 00 00 00 00 00 00 00 19 04 00 00

So that is correct. I'll attach all the information from the MPS 1.4
reboot, in which 00:07.2 happily points at 05, while everything else
thinks it's at 19.


0: 000f - 0010 (reserved)
 BIOS-e820: 0010 - 1fff (usable)
 BIOS-e820: 1fff - 1fff3000 (ACPI NVS)
 BIOS-e820: 1fff3000 - 2000 (ACPI data)
 BIOS-e820: fec0 - fec01000 (reserved)
 BIOS-e820: fee0 - fee01000 (reserved)
 BIOS-e820:  - 0001 (reserved)
found SMP MP-table at 000f5770
hm, page 000f5000 reserved twice.
hm, page 000f6000 reserved twice.
hm, page 000f1000 reserved twice.
hm, page 000f2000 reserved twice.
On node 0 totalpages: 131056
zone(0): 4096 pages.
zone(1): 126960 pages.
zone(2): 0 pages.
Intel MultiProcessor Specification v1.4
Virtual Wire compatibility mode.
OEM ID: OEM0 Product ID: PROD APIC at: 0xFEE0
Processor #0 Pentium(tm) Pro APIC version 17
Processor #1 Pentium(tm) Pro APIC version 17
I/O APIC #2 Version 17 at 0xFEC0.
Processors: 2
Kernel command line: auto BOOT_IMAGE=SuSE-2.4.5ac5 ro root=2101 
BOOT_FILE=/boot/prod/vmlinuz-245ac5 video=matrox:vesa:0x11E,fv:80,sgram
Total of 2 processors activated (2808.21 BogoMIPS).
ENABLING IO-APIC IRQs
...changing IO-APIC physical APIC ID to 2 ... ok.
init IO_APIC IRQs
 IO-APIC (apicid-pin) 2-0, 2-5, 2-10, 2-11, 2-15, 2-20, 2-21, 2-22, 2-23 not connected.
..TIMER: vector=49 pin1=2 pin2=0
number of MP IRQ sources: 22.
number of IO-APIC #2 registers: 24.
testing the IO APIC...

IO APIC #2..
 register #00: 0200
...: physical APIC id: 02
 register #01: 00178011
... : max redirection entries: 0017
... : IO APIC version: 0011
 WARNING: unexpected IO-APIC, please mail
  to [EMAIL PROTECTED]
 register #02: 
... : arbitration: 00
 IRQ redirection table:
 NR Log Phy Mask Trig IRR Pol Stat Dest Deli Vect:   
 00 000 00  100   0   00000
 01 003 03  000   0   01139
 02 003 03  000   0   01131
 03 003 03  000   0   01141
 04 003 03  000   0   01149
 05 000 00  100   0   00000
 06 003 03  000   0   01151
 07 003 03  000   0   01159
 08 003 03  000   0   01161
 09 003 03  000   0   01169
 0a 000 00  100   0   00000
 0b 000 00  100   0   00000
 0c 003 03  000   0   01171
 0d 003 03  000   0   01179
 0e 003 03  000   0   01181
 0f 000 00  100   0   00000
 10 003 03  110   1   01189
 11 003 03  110   1   01191
 12 003 03  110   1   01199
 13 003 03  110   1   011A1
 14 000 00  100   0   00000
 15 000 00  100   0   00000
 16 000 00  100   0   00000
 17 000 00  100   0   00000
IRQ to pin mappings:
IRQ0 - 0:2
IRQ1 - 0:1
IRQ3 - 0:3
IRQ4 - 0:4
IRQ6 - 0:6
IRQ7 - 0:7
IRQ8 - 0:8
IRQ9 - 0:9
IRQ12 - 0:12
IRQ13 - 0:13
IRQ14 - 0:14
IRQ16 - 0:16
IRQ17 - 0:17
IRQ18 - 0:18
IRQ19 - 0:19

Re: interrupt problem with MPS 1.4 / not with MPS 1.1 ?

2001-05-31 Thread Jeff Garzik

Looking at the diff of lspci -vvvxxx between MPS1.1 and MPS1.4 (on the
same system) may be quite useful...  maybe I missed the earlier lspci
-vvvxxx, but I only see one here...
-- 
Jeff Garzik  | Disbelief, that's why you fail.
Building 1024|
MandrakeSoft |
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/