Re: [PATCH] staging: r8188eu: Fix some endian problems
From: Dan Carpenter
Date: Fri Jan 20 2023 - 00:18:41 EST
On Thu, Jan 19, 2023 at 01:12:19PM -0600, Larry Finger wrote:
> Sparse lists the following warnings:
>
> CHECK drivers/staging/r8188eu/core/rtw_mlme.c
> drivers/staging/r8188eu/core/rtw_mlme.c:1197:49: warning: incorrect type in
> argument 2 (different base types)
> drivers/staging/r8188eu/core/rtw_mlme.c:1197:49: expected restricted
> __le16 [usertype] mstatus_rpt
> drivers/staging/r8188eu/core/rtw_mlme.c:1197:49: got unsigned short
> [assigned] [usertype] media_status_rpt
> drivers/staging/r8188eu/core/rtw_mlme.c:1275:57: warning: incorrect type in
> argument 2 (different base types)
> drivers/staging/r8188eu/core/rtw_mlme.c:1275:57: expected restricted
> __le16 [usertype] mstatus_rpt
> drivers/staging/r8188eu/core/rtw_mlme.c:1275:57: got unsigned short
> [assigned] [usertype] media_status
> CHECK drivers/staging/r8188eu/core/rtw_mlme_ext.c
> drivers/staging/r8188eu/core/rtw_mlme_ext.c:6842:58: warning: incorrect type
> in argument 2 (different base types)
> drivers/staging/r8188eu/core/rtw_mlme_ext.c:6842:58: expected restricted
> __le16 [usertype] mstatus_rpt
> drivers/staging/r8188eu/core/rtw_mlme_ext.c:6842:58: got unsigned short
> [assigned] [usertype] media_status
>
> The second argument of rtl8188e_set_FwMediaStatus_cmd() needs to be in CPU
> order, not little-endian; however, when it uses that value to call
> FillH2CCmd_88E() the parameter must be in little-endian order as that
> value will be sent to the firmware. Note that the conversion from LE to CPU
> order was le16_to_cpu() rather than the correct cpu_to_le16.
>
> The definition of FillH2CCmd_88E() is revised, and the proper conversion
> routine is used.
>
> Note that the original code performed one byte swap on the secong argument
> of FillH2CCmd_88E(), and got the correct answer even though the semantics
> were very wrong.
>
> Signed-off-by: Larry Finger <Larry.Finger@xxxxxxxxxxxx>
> Reportewd-by: Gaurav Pathak <gauravpathak129@xxxxxxxxx>
^
Extra 'w'.
Reviewed-by: Dan Carpenter <error27@xxxxxxxxx>
regards,
dan carpenter