diff options
author | ching Huang <ching2048@areca.com.tw> | 2023-03-23 01:13:20 +0800 |
---|---|---|
committer | Martin K. Petersen <martin.petersen@oracle.com> | 2023-03-24 17:52:49 -0400 |
commit | c3e9b937fb817ca36610dc10677cb1442aa07e72 (patch) | |
tree | 2253af3faa1c8e12d8b38670573f1f1e4383c1d7 /drivers/scsi/arcmsr/arcmsr_hba.c | |
parent | 959c014ffcb4ee6f971e7c28bd7529d1361a66ff (diff) |
scsi: arcmsr: Fix ADAPTER_TYPE_B 64-bit DMA compatibility issue
Fix ADAPTER_TYPE_B 64-bit DMA compatibility issue on some motherboards.
Signed-off-by: ching Huang <ching2048@areca.com.tw>
Link: https://lore.kernel.org/r/81c1f98819dfdfa18ae4d3b854b7733af9d34ea5.camel@areca.com.tw
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Diffstat (limited to 'drivers/scsi/arcmsr/arcmsr_hba.c')
-rw-r--r-- | drivers/scsi/arcmsr/arcmsr_hba.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/scsi/arcmsr/arcmsr_hba.c b/drivers/scsi/arcmsr/arcmsr_hba.c index 603860959c5f..ce92d4281da6 100644 --- a/drivers/scsi/arcmsr/arcmsr_hba.c +++ b/drivers/scsi/arcmsr/arcmsr_hba.c @@ -997,6 +997,8 @@ static int arcmsr_set_dma_mask(struct AdapterControlBlock *acb) if (((acb->adapter_type == ACB_ADAPTER_TYPE_A) && !dma_mask_64) || dma_set_mask(&pcidev->dev, DMA_BIT_MASK(64))) goto dma32; + if (acb->adapter_type <= ACB_ADAPTER_TYPE_B) + return 0; if (dma_set_coherent_mask(&pcidev->dev, DMA_BIT_MASK(64)) || dma_set_mask_and_coherent(&pcidev->dev, DMA_BIT_MASK(64))) { printk("arcmsr: set DMA 64 mask failed\n"); |