hpt366.c: wrong timings used since 2.6.8

From: Folke Ashberg
Date: Thu Aug 26 2004 - 17:49:41 EST


Hi there,

i have an HPT372A (rev 02) (PCI_DEVICE_ID_TTI_HPT372) and since 2.6.8
i've got an Ooooops.

I saw that hpt366.c got support for HPT372_N_ and its special timings, but
that timings have been used for my HPT372_A_ and caused the Oops.

I did the following and now it works:
-------------------------------------------
diff -pur linux-2.6.9rc1-orig/drivers/ide/pci/hpt366.c linux-2.6.9rc1/drivers/ide/pci/hpt366.c
--- linux-2.6.9rc1-orig/drivers/ide/pci/hpt366.c 2004-08-26 19:42:16.000000000 +0200
+++ linux-2.6.9rc1/drivers/ide/pci/hpt366.c 2004-08-26 23:22:56.000000000 +0200
@@ -881,7 +881,7 @@ static int __devinit init_hpt37x(struct
/* interrupt force enable */
pci_write_config_byte(dev, 0x5a, (reg5ah & ~0x10));

- if(dmabase)
+ if(dev->device == PCI_DEVICE_ID_TTI_HPT372N && dmabase)
{
did = inb(dmabase + 0x22);
rid = inb(dmabase + 0x28);
@@ -1132,7 +1132,7 @@ static void __devinit init_hwif_hpt366(i
unsigned long dmabase = hwif->dma_base;
int is_372n = 0;

- if(dmabase)
+ if(dev->device == PCI_DEVICE_ID_TTI_HPT372N && dmabase)
{
did = inb(dmabase + 0x22);
rid = inb(dmabase + 0x28);
-------------------------------------------

Not to also check dev->device for the N-Version at that two places
(which are used also for other versions) seems to be wrong.


Kind Regards

Folke Ashberg

--
Folke Ashberg
folke@xxxxxxxxxx
www.ashberg.de
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/