Writing the output of cpu_to_le32 to an u32 or *(u32*) is an implicit
cast and results in an sparse warning.

Since param and mask won't be changed, the implicit cast can be avoided
by creating local variables.

Signed-off-by: Michel von Czettritz <michel.von.czettr...@gmail.com>
---
 drivers/staging/rtl8723au/hal/rtl8723a_cmd.c | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/drivers/staging/rtl8723au/hal/rtl8723a_cmd.c 
b/drivers/staging/rtl8723au/hal/rtl8723a_cmd.c
index 1003365..a5e6726 100644
--- a/drivers/staging/rtl8723au/hal/rtl8723a_cmd.c
+++ b/drivers/staging/rtl8723au/hal/rtl8723a_cmd.c
@@ -115,9 +115,10 @@ exit:
 
 int rtl8723a_set_rssi_cmd(struct rtw_adapter *padapter, u32 *param)
 {
-       *((u32 *)param) = cpu_to_le32(*(param));
+       __le32 param_le;
+       param_le = cpu_to_le32(*(param));
 
-       FillH2CCmd(padapter, RSSI_SETTING_EID, 3, (u8 *)param);
+       FillH2CCmd(padapter, RSSI_SETTING_EID, 3, (u8 *)&param_le);
 
        return _SUCCESS;
 }
@@ -125,10 +126,11 @@ int rtl8723a_set_rssi_cmd(struct rtw_adapter *padapter, 
u32 *param)
 int rtl8723a_set_raid_cmd(struct rtw_adapter *padapter, u32 mask, u8 arg)
 {
        u8 buf[5];
+       __le32 mask_le;
 
        memset(buf, 0, 5);
-       mask = cpu_to_le32(mask);
-       memcpy(buf, &mask, 4);
+       mask_le = cpu_to_le32(mask);
+       memcpy(buf, &mask_le, 4);
        buf[4]  = arg;
 
        FillH2CCmd(padapter, MACID_CONFIG_EID, 5, buf);
-- 
2.4.5

_______________________________________________
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel

Reply via email to