mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH 2.4] fix IRQ routing on Acer TravelMate 360
@ 2004-04-12 18:30 Daniel Ritz
  0 siblings, 0 replies; 3+ messages in thread
From: Daniel Ritz @ 2004-04-12 18:30 UTC (permalink / raw)
  To: Marcelo Tosatti; +Cc: linux-kernel

hi marcelo

the same thing as been included in 2.6.5-mm4. here's the 2.4 version.

rgds
-daniel


---snip---

acer travelmate 360 has a broken interrupt routing. there's an interrupt storm
on irq 10 w/o this patch  as soon as yenta_socket is loaded. the problem
has been seen on different machines (reported on l-k and on pcmcia-cs
list). there's also an USB controller on the same interrupt line as the CB
which also works fine after the patch. and routing via ACPI fails too.



--- 1.43/arch/i386/kernel/dmi_scan.c	Sun Mar 21 05:49:42 2004
+++ edited/arch/i386/kernel/dmi_scan.c	Sat Apr 10 21:59:56 2004
@@ -459,6 +459,23 @@
 }
 
 /*
+ * Work around broken Acer TravelMate 360 Notebooks which assign Cardbus to
+ * IRQ 11 even though it is actually wired to IRQ 10
+ */
+static __init int fix_acer_tm360_irqrouting(struct dmi_blacklist *d)
+{
+#ifdef CONFIG_PCI
+	extern int acer_tm360_irqrouting;
+	if (acer_tm360_irqrouting == 0)
+	{
+		acer_tm360_irqrouting = 1;
+		printk(KERN_INFO "%s detected - fixing broken IRQ routing\n", d->ident);
+	}
+#endif
+	return 0;
+}
+
+/*
  *	Exploding PnPBIOS. Don't yet know if its the BIOS or us for
  *	some entries
  */
@@ -820,6 +837,12 @@
 			MATCH(DMI_BOARD_VERSION, "OmniBook N32N-736")
 			} },
 
+	{ fix_acer_tm360_irqrouting, "Acer TravelMate 36x Laptop", {
+			MATCH(DMI_SYS_VENDOR, "Acer"),
+			MATCH(DMI_PRODUCT_NAME, "TravelMate 360"),
+			NO_MATCH, NO_MATCH
+			} },
+ 
 	/*
 	 *	Generic per vendor APM settings
 	 */
@@ -935,6 +958,13 @@
 			/* newer BIOS, Revision 1011, does work */
 			MATCH(DMI_BIOS_VERSION, "ASUS A7V ACPI BIOS Revision 1007"),
 			NO_MATCH }},
+
+	{ disable_acpi_pci, "Acer TravelMate 36x Laptop", {
+			MATCH(DMI_SYS_VENDOR, "Acer"),
+			MATCH(DMI_PRODUCT_NAME, "TravelMate 360"),
+			NO_MATCH, NO_MATCH
+			} },
+ 
 #endif	/* CONFIG_ACPI_PCI */
 
 	{ NULL, }
--- 1.26/arch/i386/kernel/pci-irq.c	Fri Feb 27 06:47:27 2004
+++ edited/arch/i386/kernel/pci-irq.c	Sat Apr 10 21:53:03 2004
@@ -23,6 +23,7 @@
 #define PIRQ_VERSION 0x0100
 
 int broken_hp_bios_irq9;
+int acer_tm360_irqrouting;
 
 static struct irq_routing_table *pirq_table;
 
@@ -892,6 +893,13 @@
 		dev->irq = 11;
 		pci_write_config_byte(dev, PCI_INTERRUPT_LINE, 11);
 		r->set(pirq_router_dev, dev, pirq, 11);
+	}
+
+	/* same for Acer Travelmate 360, but with CB and irq 11 -> 10 */
+	if (acer_tm360_irqrouting && pirq == 0x63 && dev->irq == 11) {
+		dev->irq = 10;
+		pci_write_config_byte(dev, PCI_INTERRUPT_LINE, 10);
+		r->set(pirq_router_dev, dev, pirq, 10);
 	}
 
 	/*


^ permalink raw reply	[flat|nested] 3+ messages in thread
* [PATCH 2.4] fix IRQ routing on Acer TravelMate 360
@ 2004-04-13 15:52 Jin Suh
  0 siblings, 0 replies; 3+ messages in thread
From: Jin Suh @ 2004-04-13 15:52 UTC (permalink / raw)
  To: daniel.ritz, linux-kernel

Hi Daniel,

Could you take a look at my pcmcia problems?
I have a very similar problem enabling a pcmcia firewire card on my Gateway
600YG2 laptop. I am using a Gateway 600YG2 laptop (Intel P4-M, PCMCIA TI
PCI1520 controller)
on 2.4.25. I have 3 different pcmcia firewire cards. When I insert module
yenta_socket with any of those cards, I get "Yenta ISA IRQ mask 0x0a98, PCI irq
0" and "PCI: No IRQ for interrupt pin A of device 03:00.0 please try using
pci=biosirq". After this error, when I run the modprobe ieee1394 and ohci1394,
I get "ohci1394: failed to allocate shared interrupt 10". The same pcmcia
firewire cards work on old Gateway 9300, 9500 laptop and IBM T22 laptop. 
BTW, my Netgear pcmcia 10/100mb ethernet card works on the Gateway 600YG2
laptop. Also my USB pen drives are not working too. The bootparameter
pci=biosirq doesn't seem to work. 
It worked fine with 2.4.20 without any problems. Could someone help me to fix
this problem on 2.4.25? I have buillt both of 2.4.20 and 2.4.25 without ACPI.

Thanks,
Jin

DMESG output
-------------------------------------------------------------------------
ACPI: RSDP (v000 PTLTD                                     ) @ 0x000f6620
ACPI: RSDT (v001 GATEWA 602      0x20021104  LTP 0x00000000) @ 0x1fef8313
ACPI: FADT (v001 GATEWA 602      0x20021104 PTL  0x0000001e) @ 0x1fefef64
ACPI: BOOT (v001 GATEWA 602      0x20021104  LTP 0x00000001) @ 0x1fefefd8
ACPI: DSDT (v001 GATEWA 602      0x20021104 MSFT 0x0100000e) @ 0x00000000
Kernel command line: initrd=ramdisk.img root=/dev/ram0 bickrootfs=tmpfs vga=791
BOOT_IMAGE=linux 
No local APIC present or hardware disabled
.........
Linux Kernel Card Services 3.1.22
  options:  [pci] [cardbus] [pm]
PCI: Found IRQ 10 for device 02:02.0
PCI: Sharing IRQ 10 with 00:1f.1
PCI: Sharing IRQ 10 with 02:02.1
PCI: Found IRQ 10 for device 02:02.1
PCI: Sharing IRQ 10 with 00:1f.1
PCI: Sharing IRQ 10 with 02:02.0
Yenta ISA IRQ mask 0x0a98, PCI irq 0
Socket status: 30000011
Yenta ISA IRQ mask 0x0a98, PCI irq 0
Socket status: 30000020
cs: cb_alloc(bus 7): vendor 0x104c, device 0x8024
PCI: Enabling device 07:00.0 (0000 -> 0002)
PCI: No IRQ known for interrupt pin A of device 07:00.0. Please try using
pci=biosirq.
ohci1394: $Rev: 1045 $ Ben Collins <bcollins@debian.org>
PCI: Found IRQ 10 for device 02:05.0
PCI: Sharing IRQ 10 with 00:1f.3
PCI: Sharing IRQ 10 with 00:1f.6
ohci1394: Failed to allocate shared interrupt 10
PCI: No IRQ known for interrupt pin A of device 07:00.0. Please try using
pci=biosirq.
ohci1394: Failed to allocate shared interrupt 0
sbp2: $Rev: 1074 $ Ben Collins <bcollins@debian.org>

==============================================================

hi marcelo

the same thing as been included in 2.6.5-mm4. here's the 2.4 version.

rgds
-daniel


---snip---

acer travelmate 360 has a broken interrupt routing. there's an interrupt storm
on irq 10 w/o this patch  as soon as yenta_socket is loaded. the problem
has been seen on different machines (reported on l-k and on pcmcia-cs
list). there's also an USB controller on the same interrupt line as the CB
which also works fine after the patch. and routing via ACPI fails too.





	
		
__________________________________
Do you Yahoo!?
Yahoo! Small Business $15K Web Design Giveaway 
http://promotions.yahoo.com/design_giveaway/

^ permalink raw reply	[flat|nested] 3+ messages in thread
* [PATCH 2.4] fix IRQ routing on Acer TravelMate 360
@ 2004-04-13 15:53 Jin Suh
  0 siblings, 0 replies; 3+ messages in thread
From: Jin Suh @ 2004-04-13 15:53 UTC (permalink / raw)
  To: daniel.ritz, linux-kernel

Hi Daniel,

Could you take a look at my pcmcia problems?
I have a very similar problem enabling a pcmcia firewire card on my Gateway
600YG2 laptop. I am using a Gateway 600YG2 laptop (Intel P4-M, PCMCIA TI
PCI1520 controller)
on 2.4.25. I have 3 different pcmcia firewire cards. When I insert module
yenta_socket with any of those cards, I get "Yenta ISA IRQ mask 0x0a98, PCI irq
0" and "PCI: No IRQ for interrupt pin A of device 03:00.0 please try using
pci=biosirq". After this error, when I run the modprobe ieee1394 and ohci1394,
I get "ohci1394: failed to allocate shared interrupt 10". The same pcmcia
firewire cards work on old Gateway 9300, 9500 laptop and IBM T22 laptop. 
BTW, my Netgear pcmcia 10/100mb ethernet card works on the Gateway 600YG2
laptop. Also my USB pen drives are not working too. The bootparameter
pci=biosirq doesn't seem to work. 
It worked fine with 2.4.20 without any problems. Could someone help me to fix
this problem on 2.4.25? I have buillt both of 2.4.20 and 2.4.25 without ACPI.

Thanks,
Jin

DMESG output
-------------------------------------------------------------------------
ACPI: RSDP (v000 PTLTD                                     ) @ 0x000f6620
ACPI: RSDT (v001 GATEWA 602      0x20021104  LTP 0x00000000) @ 0x1fef8313
ACPI: FADT (v001 GATEWA 602      0x20021104 PTL  0x0000001e) @ 0x1fefef64
ACPI: BOOT (v001 GATEWA 602      0x20021104  LTP 0x00000001) @ 0x1fefefd8
ACPI: DSDT (v001 GATEWA 602      0x20021104 MSFT 0x0100000e) @ 0x00000000
Kernel command line: initrd=ramdisk.img root=/dev/ram0 bickrootfs=tmpfs vga=791
BOOT_IMAGE=linux 
No local APIC present or hardware disabled
.........
Linux Kernel Card Services 3.1.22
  options:  [pci] [cardbus] [pm]
PCI: Found IRQ 10 for device 02:02.0
PCI: Sharing IRQ 10 with 00:1f.1
PCI: Sharing IRQ 10 with 02:02.1
PCI: Found IRQ 10 for device 02:02.1
PCI: Sharing IRQ 10 with 00:1f.1
PCI: Sharing IRQ 10 with 02:02.0
Yenta ISA IRQ mask 0x0a98, PCI irq 0
Socket status: 30000011
Yenta ISA IRQ mask 0x0a98, PCI irq 0
Socket status: 30000020
cs: cb_alloc(bus 7): vendor 0x104c, device 0x8024
PCI: Enabling device 07:00.0 (0000 -> 0002)
PCI: No IRQ known for interrupt pin A of device 07:00.0. Please try using
pci=biosirq.
ohci1394: $Rev: 1045 $ Ben Collins <bcollins@debian.org>
PCI: Found IRQ 10 for device 02:05.0
PCI: Sharing IRQ 10 with 00:1f.3
PCI: Sharing IRQ 10 with 00:1f.6
ohci1394: Failed to allocate shared interrupt 10
PCI: No IRQ known for interrupt pin A of device 07:00.0. Please try using
pci=biosirq.
ohci1394: Failed to allocate shared interrupt 0
sbp2: $Rev: 1074 $ Ben Collins <bcollins@debian.org>

==============================================================

hi marcelo

the same thing as been included in 2.6.5-mm4. here's the 2.4 version.

rgds
-daniel


---snip---

acer travelmate 360 has a broken interrupt routing. there's an interrupt storm
on irq 10 w/o this patch  as soon as yenta_socket is loaded. the problem
has been seen on different machines (reported on l-k and on pcmcia-cs
list). there's also an USB controller on the same interrupt line as the CB
which also works fine after the patch. and routing via ACPI fails too.





	
		
__________________________________
Do you Yahoo!?
Yahoo! Small Business $15K Web Design Giveaway 
http://promotions.yahoo.com/design_giveaway/

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2004-04-13 15:54 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-04-12 18:30 [PATCH 2.4] fix IRQ routing on Acer TravelMate 360 Daniel Ritz
2004-04-13 15:52 Jin Suh
2004-04-13 15:53 Jin Suh

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®