diff options
Diffstat (limited to 'drivers')
| -rw-r--r-- | drivers/scsi/hptiop.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/drivers/scsi/hptiop.c b/drivers/scsi/hptiop.c index 3eedfd4f8f57..251c084a6ff0 100644 --- a/drivers/scsi/hptiop.c +++ b/drivers/scsi/hptiop.c | |||
| @@ -1292,6 +1292,7 @@ static int hptiop_probe(struct pci_dev *pcidev, const struct pci_device_id *id) | |||
| 1292 | dma_addr_t start_phy; | 1292 | dma_addr_t start_phy; |
| 1293 | void *start_virt; | 1293 | void *start_virt; |
| 1294 | u32 offset, i, req_size; | 1294 | u32 offset, i, req_size; |
| 1295 | int rc; | ||
| 1295 | 1296 | ||
| 1296 | dprintk("hptiop_probe(%p)\n", pcidev); | 1297 | dprintk("hptiop_probe(%p)\n", pcidev); |
| 1297 | 1298 | ||
| @@ -1308,9 +1309,12 @@ static int hptiop_probe(struct pci_dev *pcidev, const struct pci_device_id *id) | |||
| 1308 | 1309 | ||
| 1309 | /* Enable 64bit DMA if possible */ | 1310 | /* Enable 64bit DMA if possible */ |
| 1310 | iop_ops = (struct hptiop_adapter_ops *)id->driver_data; | 1311 | iop_ops = (struct hptiop_adapter_ops *)id->driver_data; |
| 1311 | if (dma_set_mask(&pcidev->dev, | 1312 | rc = dma_set_mask(&pcidev->dev, |
| 1312 | DMA_BIT_MASK(iop_ops->hw_dma_bit_mask)) || | 1313 | DMA_BIT_MASK(iop_ops->hw_dma_bit_mask)); |
| 1313 | dma_set_mask(&pcidev->dev, DMA_BIT_MASK(32))) { | 1314 | if (rc) |
| 1315 | rc = dma_set_mask(&pcidev->dev, DMA_BIT_MASK(32)); | ||
| 1316 | |||
| 1317 | if (rc) { | ||
| 1314 | printk(KERN_ERR "hptiop: fail to set dma_mask\n"); | 1318 | printk(KERN_ERR "hptiop: fail to set dma_mask\n"); |
| 1315 | goto disable_pci_device; | 1319 | goto disable_pci_device; |
| 1316 | } | 1320 | } |
