Lee Duncan 4cedc8
From: Damien Le Moal <damien.lemoal@opensource.wdc.com>
Lee Duncan 4cedc8
Date: Sun, 20 Feb 2022 12:17:46 +0900
Lee Duncan 4cedc8
Subject: scsi: pm8001: Fix payload initialization in
Lee Duncan 4cedc8
 pm80xx_set_thermal_config()
Lee Duncan 4cedc8
Git-commit: bb225b12dbcc82d53d637d10b8d70b64494f8c16
Lee Duncan 4cedc8
Patch-mainline: v5.18-rc1
Lee Duncan 4cedc8
References: git-fixes
Lee Duncan 4cedc8
Lee Duncan 4cedc8
The fields of the set_ctrl_cfg_req structure have the __le32 type, so use
Lee Duncan 4cedc8
cpu_to_le32() to assign them. This removes the sparse warnings:
Lee Duncan 4cedc8
Lee Duncan 4cedc8
warning: incorrect type in assignment (different base types)
Lee Duncan 4cedc8
    expected restricted __le32
Lee Duncan 4cedc8
    got unsigned int
Lee Duncan 4cedc8
Lee Duncan 4cedc8
[lduncan: refreshed to apply]
Lee Duncan 4cedc8
Lee Duncan 4cedc8
Link: https://lore.kernel.org/r/20220220031810.738362-8-damien.lemoal@opensource.wdc.com
Lee Duncan 4cedc8
Fixes: 842784e0d15b ("pm80xx: Update For Thermal Page Code")
Lee Duncan 4cedc8
Fixes: f5860992db55 ("[SCSI] pm80xx: Added SPCv/ve specific hardware functionalities and relevant changes in common files")
Lee Duncan 4cedc8
Reviewed-by: John Garry <john.garry@huawei.com>
Lee Duncan 4cedc8
Reviewed-by: Jack Wang <jinpu.wang@ionos.com>
Lee Duncan 4cedc8
Signed-off-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
Lee Duncan 4cedc8
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Lee Duncan 4cedc8
Acked-by: Lee Duncan <lduncan@suse.com>
Lee Duncan 4cedc8
---
Lee Duncan 4cedc8
 drivers/scsi/pm8001/pm80xx_hwi.c |    8 +++++---
Lee Duncan 4cedc8
 1 file changed, 5 insertions(+), 3 deletions(-)
Lee Duncan 4cedc8
Lee Duncan 4cedc8
--- a/drivers/scsi/pm8001/pm80xx_hwi.c
Lee Duncan 4cedc8
+++ b/drivers/scsi/pm8001/pm80xx_hwi.c
Lee Duncan 4cedc8
@@ -1219,9 +1219,11 @@ pm80xx_set_thermal_config(struct pm8001_
Lee Duncan 4cedc8
 	else
Lee Duncan 4cedc8
 		page_code = THERMAL_PAGE_CODE_8H;
Lee Duncan 4cedc8
 
Lee Duncan 4cedc8
-	payload.cfg_pg[0] = (THERMAL_LOG_ENABLE << 9) |
Lee Duncan 4cedc8
-				(THERMAL_ENABLE << 8) | page_code;
Lee Duncan 4cedc8
-	payload.cfg_pg[1] = (LTEMPHIL << 24) | (RTEMPHIL << 8);
Lee Duncan 4cedc8
+	payload.cfg_pg[0] =
Lee Duncan 4cedc8
+		cpu_to_le32((THERMAL_LOG_ENABLE << 9) |
Lee Duncan 4cedc8
+			    (THERMAL_ENABLE << 8) | page_code);
Lee Duncan 4cedc8
+	payload.cfg_pg[1] =
Lee Duncan 4cedc8
+		cpu_to_le32((LTEMPHIL << 24) | (RTEMPHIL << 8));
Lee Duncan 4cedc8
 
Lee Duncan 4cedc8
 	PM8001_DEV_DBG(pm8001_ha, pm8001_printk(
Lee Duncan 4cedc8
 		"Setting up thermal config. cfg_pg 0 0x%x cfg_pg 1 0x%x\n",