diff options
author | Benjamin Herrenschmidt <benh@kernel.crashing.org> | 2007-12-19 23:28:09 -0500 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2008-02-01 18:04:27 -0500 |
commit | 0948391641918b95d8d96c15089eb5ac156850b3 (patch) | |
tree | 8120c8b1eb2307ae13bddb62de1f4682c6c1cbc3 /drivers/scsi/qla2xxx/qla_os.c | |
parent | b718989da7cf1f77ed5665dba0d2c73bd9dfe2d7 (diff) |
PCI: Remove users of pci_enable_device_bars()
This patch converts users of pci_enable_device_bars() to the new
pci_enable_device_{io,mem} interface.
The new API fits nicely, except maybe for the QLA case where a bit of
code re-organization might be a good idea but I prefer sticking to the
simple patch as I don't have hardware to test on.
I'll also need some feedback on the cs5520 change.
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/scsi/qla2xxx/qla_os.c')
-rw-r--r-- | drivers/scsi/qla2xxx/qla_os.c | 21 |
1 files changed, 17 insertions, 4 deletions
diff --git a/drivers/scsi/qla2xxx/qla_os.c b/drivers/scsi/qla2xxx/qla_os.c index 3954ed2d7b51..8f69caf83272 100644 --- a/drivers/scsi/qla2xxx/qla_os.c +++ b/drivers/scsi/qla2xxx/qla_os.c | |||
@@ -1564,7 +1564,7 @@ qla2x00_probe_one(struct pci_dev *pdev, const struct pci_device_id *id) | |||
1564 | char pci_info[30]; | 1564 | char pci_info[30]; |
1565 | char fw_str[30]; | 1565 | char fw_str[30]; |
1566 | struct scsi_host_template *sht; | 1566 | struct scsi_host_template *sht; |
1567 | int bars; | 1567 | int bars, mem_only = 0; |
1568 | 1568 | ||
1569 | bars = pci_select_bars(pdev, IORESOURCE_MEM | IORESOURCE_IO); | 1569 | bars = pci_select_bars(pdev, IORESOURCE_MEM | IORESOURCE_IO); |
1570 | sht = &qla2x00_driver_template; | 1570 | sht = &qla2x00_driver_template; |
@@ -1575,10 +1575,16 @@ qla2x00_probe_one(struct pci_dev *pdev, const struct pci_device_id *id) | |||
1575 | pdev->device == PCI_DEVICE_ID_QLOGIC_ISP2532) { | 1575 | pdev->device == PCI_DEVICE_ID_QLOGIC_ISP2532) { |
1576 | bars = pci_select_bars(pdev, IORESOURCE_MEM); | 1576 | bars = pci_select_bars(pdev, IORESOURCE_MEM); |
1577 | sht = &qla24xx_driver_template; | 1577 | sht = &qla24xx_driver_template; |
1578 | mem_only = 1; | ||
1578 | } | 1579 | } |
1579 | 1580 | ||
1580 | if (pci_enable_device_bars(pdev, bars)) | 1581 | if (mem_only) { |
1581 | goto probe_out; | 1582 | if (pci_enable_device_mem(pdev)) |
1583 | goto probe_out; | ||
1584 | } else { | ||
1585 | if (pci_enable_device(pdev)) | ||
1586 | goto probe_out; | ||
1587 | } | ||
1582 | 1588 | ||
1583 | if (pci_find_aer_capability(pdev)) | 1589 | if (pci_find_aer_capability(pdev)) |
1584 | if (pci_enable_pcie_error_reporting(pdev)) | 1590 | if (pci_enable_pcie_error_reporting(pdev)) |
@@ -1601,6 +1607,7 @@ qla2x00_probe_one(struct pci_dev *pdev, const struct pci_device_id *id) | |||
1601 | sprintf(ha->host_str, "%s_%ld", QLA2XXX_DRIVER_NAME, ha->host_no); | 1607 | sprintf(ha->host_str, "%s_%ld", QLA2XXX_DRIVER_NAME, ha->host_no); |
1602 | ha->parent = NULL; | 1608 | ha->parent = NULL; |
1603 | ha->bars = bars; | 1609 | ha->bars = bars; |
1610 | ha->mem_only = mem_only; | ||
1604 | 1611 | ||
1605 | /* Set ISP-type information. */ | 1612 | /* Set ISP-type information. */ |
1606 | qla2x00_set_isp_flags(ha); | 1613 | qla2x00_set_isp_flags(ha); |
@@ -2875,8 +2882,14 @@ qla2xxx_pci_slot_reset(struct pci_dev *pdev) | |||
2875 | { | 2882 | { |
2876 | pci_ers_result_t ret = PCI_ERS_RESULT_DISCONNECT; | 2883 | pci_ers_result_t ret = PCI_ERS_RESULT_DISCONNECT; |
2877 | scsi_qla_host_t *ha = pci_get_drvdata(pdev); | 2884 | scsi_qla_host_t *ha = pci_get_drvdata(pdev); |
2885 | int rc; | ||
2886 | |||
2887 | if (ha->mem_only) | ||
2888 | rc = pci_enable_device_mem(pdev); | ||
2889 | else | ||
2890 | rc = pci_enable_device(pdev); | ||
2878 | 2891 | ||
2879 | if (pci_enable_device_bars(pdev, ha->bars)) { | 2892 | if (rc) { |
2880 | qla_printk(KERN_WARNING, ha, | 2893 | qla_printk(KERN_WARNING, ha, |
2881 | "Can't re-enable PCI device after reset.\n"); | 2894 | "Can't re-enable PCI device after reset.\n"); |
2882 | 2895 | ||