Using a u16 pointer typecast for a result from htons() results in the following 
warning from sparse:

drivers/staging/rtl8723au/core/rtw_xmit.c:1279:36: warning: incorrect type in 
assignment (different base types)
drivers/staging/rtl8723au/core/rtw_xmit.c:1279:36:    expected unsigned short 
[unsigned] [short] [usertype] <noident>
drivers/staging/rtl8723au/core/rtw_xmit.c:1279:36:    got restricted __be16 
[usertype] <noident>

This patch fixes the issue by using an endian-specific typecast
that will always match the type returned by htons().

Signed-off-by: Chris Ruffin <cmruf...@gmail.com>
---
 drivers/staging/rtl8723au/core/rtw_xmit.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/staging/rtl8723au/core/rtw_xmit.c 
b/drivers/staging/rtl8723au/core/rtw_xmit.c
index a0f7e27..44ef55c 100644
--- a/drivers/staging/rtl8723au/core/rtw_xmit.c
+++ b/drivers/staging/rtl8723au/core/rtw_xmit.c
@@ -1276,7 +1276,7 @@ s32 rtw_put_snap23a(u8 *data, u16 h_proto)
        snap->oui[0] = oui[0];
        snap->oui[1] = oui[1];
        snap->oui[2] = oui[2];
-       *(u16 *)(data + SNAP_SIZE) = htons(h_proto);
+       *(__be16 *)(data + SNAP_SIZE) = htons(h_proto);
        return SNAP_SIZE + sizeof(u16);
 }
 
-- 
1.7.10.4

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to