lkml.org 
[lkml]   [2004]   [Jun]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
SubjectPATCH: 2.6.7 still hangs on boot with many i960 based boards
This is a resend of a patch from before. Without it the megaraid driver
crashes compaq management cards, Symbios FC920 fibre channel cards, Promise
Supertrak 100 IDE and the list continues.

This replaces essential code from the 2.4 tree that went walkies breaking
everyone elses hardware.


diff -u --new-file --recursive --exclude-from /usr/src/exclude linux-2.6.7/drivers/scsi/megaraid.c 2.6.7-ac/drivers/scsi/megaraid.c
--- linux-2.6.7/drivers/scsi/megaraid.c 2004-06-16 21:11:36.456369864 +0100
+++ 2.6.7-ac/drivers/scsi/megaraid.c 2004-06-16 21:28:01.434630408 +0100
@@ -4610,6 +4610,21 @@

pci_bus = pdev->bus->number;
pci_dev_func = pdev->devfn;
+
+ if(pdev->vendor == PCI_VENDOR_ID_INTEL) /* The megaraid3 stuff reports the id of the intel
+ part which is not remotely specific to the megaraid */
+ {
+ u16 magic;
+ /* Don't fall over the Compaq management cards using the same PCI identifier */
+ if(pdev->subsystem_vendor == PCI_VENDOR_ID_COMPAQ &&
+ pdev->subsystem_device == 0xC000)
+ return -ENODEV;
+ /* Now check the magic signature byte */
+ pci_read_config_word(pdev, PCI_CONF_AMISIG, &magic);
+ if(magic != HBA_SIGNATURE_471 && magic != HBA_SIGNATURE)
+ return -ENODEV;
+ /* Ok it is probably a megaraid */
+ }

/*
* For these vendor and device ids, signature offsets are not
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
\
 
 \ /
  Last update: 2005-03-22 14:03    [W:0.038 / U:0.240 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site