From 9b3bc20d98f10a9c4fe3542c6c75caae17f5ac49 Mon Sep 17 00:00:00 2001 From: =?utf8?q?J=C3=A9r=C3=B4me=20Pouiller?= Date: Tue, 12 May 2020 17:04:01 +0200 Subject: [PATCH] staging: wfx: fix wrong bytes order MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit The field wakeup_period_max from struct hif_mib_beacon_wake_up_period is a u8. So, assigning it a __le16 produces a nasty bug on big-endian architectures. Signed-off-by: Jérôme Pouiller Link: https://lore.kernel.org/r/20200512150414.267198-5-Jerome.Pouiller@silabs.com Signed-off-by: Greg Kroah-Hartman --- drivers/staging/wfx/hif_tx_mib.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/staging/wfx/hif_tx_mib.c b/drivers/staging/wfx/hif_tx_mib.c index 65381b2..567c61d 100644 --- a/drivers/staging/wfx/hif_tx_mib.c +++ b/drivers/staging/wfx/hif_tx_mib.c @@ -32,7 +32,7 @@ int hif_set_beacon_wakeup_period(struct wfx_vif *wvif, struct hif_mib_beacon_wake_up_period val = { .wakeup_period_min = dtim_interval, .receive_dtim = 0, - .wakeup_period_max = cpu_to_le16(listen_interval), + .wakeup_period_max = listen_interval, }; if (dtim_interval > 0xFF || listen_interval > 0xFFFF) -- 2.7.4