Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 7728
b: refs/heads/master
c: 7524f9b
h: refs/heads/master
v: v3
  • Loading branch information
Andrew Vasquez authored and James Bottomley committed Sep 5, 2005
1 parent 5585c66 commit b9ec6e0
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 24 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: c6678e0cfb41b029c3600c54b5bb65954de1230a
refs/heads/master: 7524f9b9e72cd36f0a70defcd424eba81c180f42
33 changes: 10 additions & 23 deletions trunk/drivers/scsi/qla2xxx/qla_os.c
Original file line number Diff line number Diff line change
Expand Up @@ -1113,36 +1113,23 @@ qla2xxx_slave_destroy(struct scsi_device *sdev)
static void
qla2x00_config_dma_addressing(scsi_qla_host_t *ha)
{
/* Assume 32bit DMA address */
/* Assume a 32bit DMA mask. */
ha->flags.enable_64bit_addressing = 0;

/*
* Given the two variants pci_set_dma_mask(), allow the compiler to
* assist in setting the proper dma mask.
*/
if (sizeof(dma_addr_t) > 4) {
if (pci_set_dma_mask(ha->pdev, DMA_64BIT_MASK) == 0) {
if (!dma_set_mask(&ha->pdev->dev, DMA_64BIT_MASK)) {
/* Any upper-dword bits set? */
if (MSD(dma_get_required_mask(&ha->pdev->dev)) &&
!pci_set_consistent_dma_mask(ha->pdev, DMA_64BIT_MASK)) {
/* Ok, a 64bit DMA mask is applicable. */
ha->flags.enable_64bit_addressing = 1;
ha->isp_ops.calc_req_entries = qla2x00_calc_iocbs_64;
ha->isp_ops.build_iocbs = qla2x00_build_scsi_iocbs_64;

if (pci_set_consistent_dma_mask(ha->pdev,
DMA_64BIT_MASK)) {
qla_printk(KERN_DEBUG, ha,
"Failed to set 64 bit PCI consistent mask; "
"using 32 bit.\n");
pci_set_consistent_dma_mask(ha->pdev,
DMA_32BIT_MASK);
}
} else {
qla_printk(KERN_DEBUG, ha,
"Failed to set 64 bit PCI DMA mask, falling back "
"to 32 bit MASK.\n");
pci_set_dma_mask(ha->pdev, DMA_32BIT_MASK);
return;
}
} else {
pci_set_dma_mask(ha->pdev, DMA_32BIT_MASK);
}

dma_set_mask(&ha->pdev->dev, DMA_32BIT_MASK);
pci_set_consistent_dma_mask(ha->pdev, DMA_32BIT_MASK);
}

static int
Expand Down

0 comments on commit b9ec6e0

Please sign in to comment.