|
@@ -4970,6 +4970,16 @@ static int cciss_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
|
|
|
ctlr_info_t *h;
|
|
|
unsigned long flags;
|
|
|
|
|
|
+ /*
|
|
|
+ * By default the cciss driver is used for all older HP Smart Array
|
|
|
+ * controllers. There are module paramaters that allow a user to
|
|
|
+ * override this behavior and instead use the hpsa SCSI driver. If
|
|
|
+ * this is the case cciss may be loaded first from the kdump initrd
|
|
|
+ * image and cause a kernel panic. So if reset_devices is true and
|
|
|
+ * cciss_allow_hpsa is set just bail.
|
|
|
+ */
|
|
|
+ if ((reset_devices) && (cciss_allow_hpsa == 1))
|
|
|
+ return -ENODEV;
|
|
|
rc = cciss_init_reset_devices(pdev);
|
|
|
if (rc) {
|
|
|
if (rc != -ENOTSUPP)
|