mirror of
https://github.com/torvalds/linux.git
synced 2024-12-04 01:51:34 +00:00
[SCSI] hpsa: do not skip disabled devices
There was code to skip "disabled" devices which was intended to skip devices disabled in the BIOS, but it really just checks to see if the device can write to host memory, which this is disabled by pci_disable_device on driver unload, so this check has the effect of preventing subsequent load of the driver. And devices disabled in the BIOS don't show up at all anyway, so this check never made any sense to begin with, and should be removed. Signed-off-by: Stephen M. Cameron <scameron@beardog.cce.hp.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
This commit is contained in:
parent
f0bd0b6822
commit
e754b42424
@ -3705,14 +3705,6 @@ static int __devinit hpsa_lookup_board_id(struct pci_dev *pdev, u32 *board_id)
|
||||
return ARRAY_SIZE(products) - 1; /* generic unknown smart array */
|
||||
}
|
||||
|
||||
static inline bool hpsa_board_disabled(struct pci_dev *pdev)
|
||||
{
|
||||
u16 command;
|
||||
|
||||
(void) pci_read_config_word(pdev, PCI_COMMAND, &command);
|
||||
return ((command & PCI_COMMAND_MEMORY) == 0);
|
||||
}
|
||||
|
||||
static int __devinit hpsa_pci_find_memory_BAR(struct pci_dev *pdev,
|
||||
unsigned long *memory_bar)
|
||||
{
|
||||
@ -3929,11 +3921,6 @@ static int __devinit hpsa_pci_init(struct ctlr_info *h)
|
||||
h->product_name = products[prod_index].product_name;
|
||||
h->access = *(products[prod_index].access);
|
||||
|
||||
if (hpsa_board_disabled(h->pdev)) {
|
||||
dev_warn(&h->pdev->dev, "controller appears to be disabled\n");
|
||||
return -ENODEV;
|
||||
}
|
||||
|
||||
pci_disable_link_state(h->pdev, PCIE_LINK_STATE_L0S |
|
||||
PCIE_LINK_STATE_L1 | PCIE_LINK_STATE_CLKPM);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user