From bd379a21488bbe694984ba5d1bd7d4cd4a17d416 Mon Sep 17 00:00:00 2001 From: Martin Kaiser Date: Sun, 17 Apr 2022 12:22:17 +0200 Subject: [PATCH] staging: r8188eu: replace the GetFrameSubType call The driver's local GetFrameSubType macro returns both frame type and subtype. Use the ieee80211 framework to extract the two fields. This shows more clearly that both type and subtype are read. Convert everything to host endianness before we use bit operations. Signed-off-by: Martin Kaiser Link: https://lore.kernel.org/r/20220417102221.466524-3-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman --- drivers/staging/r8188eu/core/rtw_mlme_ext.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/drivers/staging/r8188eu/core/rtw_mlme_ext.c b/drivers/staging/r8188eu/core/rtw_mlme_ext.c index ebcdc4cf10f38..d45245da5266f 100644 --- a/drivers/staging/r8188eu/core/rtw_mlme_ext.c +++ b/drivers/staging/r8188eu/core/rtw_mlme_ext.c @@ -395,7 +395,6 @@ void mgt_dispatcher(struct adapter *padapter, struct recv_frame *precv_frame) int index; struct mlme_handler *ptable; struct mlme_priv *pmlmepriv = &padapter->mlmepriv; - u8 *pframe = precv_frame->rx_data; struct ieee80211_hdr *hdr = (struct ieee80211_hdr *)precv_frame->rx_data; struct sta_info *psta = rtw_get_stainfo(&padapter->stapriv, hdr->addr2); @@ -409,8 +408,8 @@ void mgt_dispatcher(struct adapter *padapter, struct recv_frame *precv_frame) ptable = mlme_sta_tbl; - index = GetFrameSubType(pframe) >> 4; - + index = (le16_to_cpu(hdr->frame_control) & + (IEEE80211_FCTL_STYPE | IEEE80211_FCTL_FTYPE)) >> 4; if (index > 13) return; ptable += index; -- 2.30.2