From: Alan Cox <alan@redhat.com>
To: linux-kernel@vger.kernel.org, linux-megaraid-devel@dell.com,
akpm@osdl.org
Subject: PATCH: Stop megaraid trashing other i960 based devices
Date: Sat, 22 May 2004 11:46:59 -0400 [thread overview]
Message-ID: <20040522154659.GA17320@devserv.devel.redhat.com> (raw)
In 2.4 the megaraid driver was careful to avoid stepping on wrong devices.
Specifically the megaraid3 series devices used an intel pci ID (8086:1960)
which is the generic i960 identifier not their own.
The code to do this in 2.4 worked for almost all cases, but even that
code has mysteriously vanished in 2.6 meaning the megaraid driver trashes
stuff like promise i2o cards and compaq management cards.
The following patch puts back the 2.4 stuff + one additional check so that
the driver isn't quite as rude as it was before.
--- drivers/scsi/megaraid.c~ 2004-05-22 16:34:01.976198176 +0100
+++ drivers/scsi/megaraid.c 2004-05-22 16:38:58.176168936 +0100
@@ -4609,6 +4609,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
next reply other threads:[~2004-05-22 15:47 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-05-22 15:46 Alan Cox [this message]
2004-05-22 16:02 ` PATCH: Stop megaraid trashing other i960 based devices hch
2004-05-22 16:03 ` Alan Cox
2004-05-22 16:07 ` hch
2004-05-22 17:07 ` Matt Domsch
2004-05-22 17:11 ` Alan Cox
2004-05-22 17:11 ` hch
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20040522154659.GA17320@devserv.devel.redhat.com \
--to=alan@redhat.com \
--cc=akpm@osdl.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-megaraid-devel@dell.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox