http://bugzilla.kernel.org/show_bug.cgi?id=5044
[EMAIL PROTECTED] changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |[EMAIL PROTECTED] Status|ASSIGNED |NEEDINFO Component|Config-Interrupts |BIOS Regression|0 |1 Summary|440BX/ZX/DX: PCI automatic |PCI card in slot 0:d[A]: no |routing on Dell Optiplex |interrupt unless | |pci=routeirq - 440BX/ZX/DX: | |Dell Optiplex ------- Comment #16 from [EMAIL PROTECTED] 2007-08-18 22:05 ------- > Len, are you sure I should do the test with pnpacpi=off? > That seems to imply pci=routeirq since the warning > disappears and the slot works fine. Do you still > want /proc/interrupts from that run or should I get it without pnpacpi=off? Assuming the failure still exists with a recent kernel... Yes, please test with pnpacpi=off. If that fixes the problem please attach the dmesg and /proc/interrupts for both the pnpacpi=off and on cases. No, I don't expect pnpacpi=off to help, but I if it did I'd sure want to know about it. > Your DSDT has four _PRTs (RISA, RISM, RIST, and RISL), and one > is selected based on \CHAS RISA == RIST RISM changes 0:d[a] to LNKD from LNKB, and adds support for device 0:f. RISA and RISL differ in that they exchange LNKA and LNKB for devices 0:d[A] and 0:d[B] *** RISA 2007-08-18 23:59:06.000000000 -0400 --- RISL 2007-08-18 23:58:19.000000000 -0400 *************** *** 1,4 **** ! Name (RISA, Package (0x0E) { Package (0x04) { --- 1,4 ---- ! Name (RISL, Package (0x0E) { Package (0x04) { *************** *** 84,90 **** { 0x000DFFFF, 0x00, ! LNKB, 0x00 }, --- 84,90 ---- { 0x000DFFFF, 0x00, ! LNKA, 0x00 }, *************** *** 92,98 **** { 0x000DFFFF, 0x01, ! LNKA, 0x00 }, --- 92,98 ---- { 0x000DFFFF, 0x01, ! LNKB, 0x00 }, < ACPI: PCI Interrupt Link [LNKB] enabled at IRQ 10 < ACPI: PCI interrupt 0000:00:0d.0[A] -> GSI 10 (level, low) -> IRQ 10 Based on the experiment above, yes, it looks like we are using RISA (or RIST) when perhaps we wish we were using RISL. Method (_PRT, 0, NotSerialized) { Store (\CHAS, Local1) If (LEqual (Local1, 0x00)) { Store (RISL, Local0) } If (LEqual (Local1, 0x01)) { Store (RIST, Local0) } If (LEqual (Local1, 0x02)) { Store (RISM, Local0) } If (LEqual (Local1, 0x03)) { Store (RISA, Local0) } Return (Local0) } So we want CHAS to be 0, but it is 1 or 3. OperationRegion (PXY0, SystemIO, 0x0831, 0x01) Field (PXY0, ByteAcc, NoLock, Preserve) { , 6, CHAS, 2 } So at IO(0x831) there is a 1 byte register, and the top two bits are either 1 or 3, but we want 0. The next operation region is used by SST to blink an LED: OperationRegion (GPOZ, SystemIO, 0x0834, 0x02) Field (GPOZ, ByteAcc, NoLock, Preserve) { BLNK, 1, GPO, 15 } So I'm going to go out on a limb here and guess that CHAS reflects a jumper or switch on the motherboard. Only Dell knows. Perhaps you have a manual for the motherboard? It might be fun from the cmdline to use inb(1) and out(1) to see if you can scribble on address 0x831 and have it stick. Note that AML never writes here, but does specify that if it did, that it would preserve the bottom 6 bits. -- Configure bugmail: http://bugzilla.kernel.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is. ------------------------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/ _______________________________________________ acpi-bugzilla mailing list acpi-bugzilla@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/acpi-bugzilla