summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristoph Hellwig <hch@lst.de>2018-10-18 15:03:34 +0200
committerMartin K. Petersen <martin.petersen@oracle.com>2018-11-06 21:31:28 -0500
commit88693b3c9681a0c10b8fe73a0be9bfa0ea63de1f (patch)
treee7a2c36cdc87b2af4629877adc719093c7b611c4
parent6f6eb3ccc6ff46137b1d2951ef3a0a163a0aa601 (diff)
downloadlwn-88693b3c9681a0c10b8fe73a0be9bfa0ea63de1f.tar.gz
lwn-88693b3c9681a0c10b8fe73a0be9bfa0ea63de1f.zip
scsi: ips: properly handle 64-bit DMA
CONFIG_HIGHMEM64 is only one (and these days unusual) way to indicate that > 32-bit dma address are possible. Replace it with a check of the dma_addr_t size. Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
-rw-r--r--drivers/scsi/ips.c2
-rw-r--r--drivers/scsi/ips.h6
2 files changed, 1 insertions, 7 deletions
diff --git a/drivers/scsi/ips.c b/drivers/scsi/ips.c
index 679321e96a86..70a776dc0a02 100644
--- a/drivers/scsi/ips.c
+++ b/drivers/scsi/ips.c
@@ -6926,7 +6926,7 @@ ips_init_phase1(struct pci_dev *pci_dev, int *indexPtr)
* it! Also, don't use 64bit addressing if dma addresses
* are guaranteed to be < 4G.
*/
- if (IPS_ENABLE_DMA64 && IPS_HAS_ENH_SGLIST(ha) &&
+ if (sizeof(dma_addr_t) > 4 && IPS_HAS_ENH_SGLIST(ha) &&
!dma_set_mask(&ha->pcidev->dev, DMA_BIT_MASK(64))) {
(ha)->flags |= IPS_HA_ENH_SG;
} else {
diff --git a/drivers/scsi/ips.h b/drivers/scsi/ips.h
index 42c180e3938b..6c0678fb9a67 100644
--- a/drivers/scsi/ips.h
+++ b/drivers/scsi/ips.h
@@ -96,12 +96,6 @@
#define __iomem
#endif
- #if (BITS_PER_LONG > 32) || defined(CONFIG_HIGHMEM64G)
- #define IPS_ENABLE_DMA64 (1)
- #else
- #define IPS_ENABLE_DMA64 (0)
- #endif
-
/*
* Adapter address map equates
*/