mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH] fix for Toshiba ohci1394 quirk
@ 2005-11-09  4:13 Jesse Barnes
  2005-11-09 22:30 ` Jesse Barnes
  0 siblings, 1 reply; 3+ messages in thread
From: Jesse Barnes @ 2005-11-09  4:13 UTC (permalink / raw)
  To: Stefan Richter, linux-kernel, linux-pci, Greg KH

[-- Attachment #1: Type: text/plain, Size: 976 bytes --]

After much testing and agony, I've discovered that my previous ohci1394 
quirk for Toshiba laptops is not 100% reliable.  It apparently fails to 
do the interrupt line change either correctly or in time, since in 
about 2 out of 5 boots, the kernel's irqdebug code will *still* disable 
irq 11 when the ohci1394 driver is loaded (at pci_enable_device time I 
think).

This patch switches things around a little in the workaround.  First, it 
removes the mdelay.  I didn't see a need for it and my testing has 
shown that it's not necessary for the quirk to work.

Secondly, instead of trying to change the interrupt line to what ACPI 
tells us it should be, this patch makes the quirk use the value in the 
PCI_INTERRUPT_LINE register.  On this laptop at least, that seems to be 
the right thing to do, though additional testing on other laptops 
and/or with actual firewire devices would be appreciated.

Thanks,
Jesse

Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>

[-- Attachment #2: toshiba-ohci1394-fixup-fix.patch --]
[-- Type: text/x-diff, Size: 736 bytes --]

diff --git a/arch/i386/pci/fixup.c b/arch/i386/pci/fixup.c
index 3984226..eeb1b1f 100644
--- a/arch/i386/pci/fixup.c
+++ b/arch/i386/pci/fixup.c
@@ -433,9 +433,8 @@ static void __devinit pci_post_fixup_tos
 		return; /* only applies to certain Toshibas (so far) */
 
 	/* Restore config space on Toshiba laptops */
-	mdelay(10);
 	pci_write_config_word(dev, PCI_CACHE_LINE_SIZE, toshiba_line_size);
-	pci_write_config_word(dev, PCI_INTERRUPT_LINE, dev->irq);
+	pci_read_config_byte(dev, PCI_INTERRUPT_LINE, (u8 *)&dev->irq);
 	pci_write_config_dword(dev, PCI_BASE_ADDRESS_0,
 			       pci_resource_start(dev, 0));
 	pci_write_config_dword(dev, PCI_BASE_ADDRESS_1,
diff --git a/drivers/ieee1394/ohci1394.c b/drivers/ieee1394/ohci1394.c

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

* Re: [PATCH] fix for Toshiba ohci1394 quirk
  2005-11-09  4:13 [PATCH] fix for Toshiba ohci1394 quirk Jesse Barnes
@ 2005-11-09 22:30 ` Jesse Barnes
  2005-11-09 22:34   ` Greg KH
  0 siblings, 1 reply; 3+ messages in thread
From: Jesse Barnes @ 2005-11-09 22:30 UTC (permalink / raw)
  To: Stefan Richter; +Cc: linux-kernel, linux-pci, Greg KH

Greg, can you be sure this fix makes it upstream for 2.6.15?

With this patch applied, this laptop (a Toshiba Satellite M45 class box) 
and Linux get along pretty well.  All the hardware, save the TI SD chip, 
is supported by Linux drivers (i9xx for graphics, ipw2200 wireless, sky2 
ethernet, etc.).  I'm pretty happy with it.

Thanks,
Jesse

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

* Re: [PATCH] fix for Toshiba ohci1394 quirk
  2005-11-09 22:30 ` Jesse Barnes
@ 2005-11-09 22:34   ` Greg KH
  0 siblings, 0 replies; 3+ messages in thread
From: Greg KH @ 2005-11-09 22:34 UTC (permalink / raw)
  To: Jesse Barnes; +Cc: Stefan Richter, linux-kernel, linux-pci

On Wed, Nov 09, 2005 at 02:30:20PM -0800, Jesse Barnes wrote:
> Greg, can you be sure this fix makes it upstream for 2.6.15?

It's in my todo queue to make it there.

thanks,

greg k-h

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

end of thread, other threads:[~2005-11-09 22:35 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-11-09  4:13 [PATCH] fix for Toshiba ohci1394 quirk Jesse Barnes
2005-11-09 22:30 ` Jesse Barnes
2005-11-09 22:34   ` Greg KH

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®