diff options
author | John Garry <john.garry@huawei.com> | 2015-12-21 14:35:09 +0300 |
---|---|---|
committer | Martin K. Petersen <martin.petersen@oracle.com> | 2016-01-08 20:50:54 +0300 |
commit | 4e09bff3301ac570cb5d68277e755f1759edfeb2 (patch) | |
tree | 5caa32b52bb245e3645cb2788ca6c3914e0eb220 /drivers/scsi/hisi_sas | |
parent | 8fb88201b4303159638976c2c4c4769fc89d64d1 (diff) | |
download | linux-4e09bff3301ac570cb5d68277e755f1759edfeb2.tar.xz |
hisi_sas: Use u64 for qw0 in free_device_v1_hw()
By reading in itct.qw0 into a 32b variable the top 32 bits were being
lost. In practice this was OK as they were zeroes.
Fixes: 27a3f229 ("hisi_sas: Add cq interrupt")
Signed-off-by: John Garry <john.garry@huawei.com>
Reviewed-by: Matthew R. Ochs <mrochs@linux.vnet.ibm.com>
Reviewed-by: Shane Seymour <shane.seymour@hpe.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Diffstat (limited to 'drivers/scsi/hisi_sas')
-rw-r--r-- | drivers/scsi/hisi_sas/hisi_sas_v1_hw.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/scsi/hisi_sas/hisi_sas_v1_hw.c b/drivers/scsi/hisi_sas/hisi_sas_v1_hw.c index 38ff575775f1..057fdeb720ac 100644 --- a/drivers/scsi/hisi_sas/hisi_sas_v1_hw.c +++ b/drivers/scsi/hisi_sas/hisi_sas_v1_hw.c @@ -539,7 +539,8 @@ static void free_device_v1_hw(struct hisi_hba *hisi_hba, { u64 dev_id = sas_dev->device_id; struct hisi_sas_itct *itct = &hisi_hba->itct[dev_id]; - u32 qw0, reg_val = hisi_sas_read32(hisi_hba, CFG_AGING_TIME); + u64 qw0; + u32 reg_val = hisi_sas_read32(hisi_hba, CFG_AGING_TIME); reg_val |= CFG_AGING_TIME_ITCT_REL_MSK; hisi_sas_write32(hisi_hba, CFG_AGING_TIME, reg_val); |