From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-lf1-f54.google.com (mail-lf1-f54.google.com [209.85.167.54]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 98D4C47DFAB for ; Wed, 15 Jul 2026 12:51:11 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.167.54 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784119875; cv=none; b=dKjW9SlO6iApnrElMHLPkOoan204NewIUXh3NxAhmXJ4VTKMMhiBRGhMB1rkyjUOf16rxm8xJoiv2rOzPDZfu+CkpQ7XoqAccpLg7nBgIsPY2XpvOtaoAotBt0zQrdl4+CD1VaUiOSpfPINOWAZxVCJDUG7PsuaarmyZpNwbN3k= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784119875; c=relaxed/simple; bh=nzV9Ce+SC2Jvi0Vo/pIxDenZi8/RhTAMn2nRayZff1A=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=U5WxD1trd6ddQwEW8JAaLv4FRcWL7hZxnrh0/CJ5yKhozAyKL3AcjNw4lt0sz3ccKgaNv/6kCicUtA/Pnkv3fPFnckgVcYX9BzEndzXv65FyQZ0oCxyzGucfZdjEhPkbOE3JsvlnsbRa6anSq3KXRu/YChkrXcoPHHzZjdK2QrI= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=V1DEh+hR; arc=none smtp.client-ip=209.85.167.54 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="V1DEh+hR" Received: by mail-lf1-f54.google.com with SMTP id 2adb3069b0e04-5b0f19bea2fso2003187e87.1 for ; Wed, 15 Jul 2026 05:51:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1784119865; x=1784724665; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=7Y8Q8h6hkHXG1Mppemncd0CjDI9ldk0KPs75Hl1V2N4=; b=V1DEh+hRTt9O1Iyq36A4c0lelDfgPCd7hdNAkGweJpAquW6M3xQ046RHcb+PUB4i3g EbiWJDBAQ1xQ+Hv/qb356e8I4ZVreSaBcmLbxtaxAgGU1Ic5kJAqEyoVeRLFPZRpqDJ7 0Y505oZTnW3GR3nTxxYk7noSo9pf4n03pcXmlpxBFLp2cpAdPmJkfAvMK+zusWdP1Jhd nq9NqhYezA4LhRQj33kG9ew/lOsevaXVYksLu9Gk3Qt2/U3BcxLL/CbgRef+ELlMD2DO t65glSZNAcMdM4L3SfEcBUeSnXIMKCLzzQG8MPiZtXutUYQdBAnN/xHsTr/nU5nJdfua Yfsg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1784119865; x=1784724665; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to:content-type; bh=7Y8Q8h6hkHXG1Mppemncd0CjDI9ldk0KPs75Hl1V2N4=; b=aOWeDi3+J7ScyUg90jGsvLaM7pR4Y39sbd7Y9JFhKDhbREXSDkxESJZBCLxOnk6roj oi1/j3KuxrlljQp19e0pZIwMSr/vqhDWJ2wZtq7yPhzLYSXuKKUC5B4zJfBAHMUaTMWs GQLcjLvj//grD2fj1BVGLNbAN7f4/lWcHOPN+YIBxxfZb6OJbVlf6jGwDjd3Rt+8eywV apYJArK+si09n+b0iWyRxPgUycxZIQPThPRIyQG3oqa1t8rrTUUtIfpnbmVsPRwkfE2x hNQIx7zmgAZgB909++u1AtWjubRtWYXpcB1noVxxOmK2OvSNBEEF+hw/Vsk9QqlMiL+u w0tw== X-Forwarded-Encrypted: i=1; AHgh+RptIMmDh8h4r9vZZ7pIykpzeGZqFC5kfV+azuK407PozEnSSE+M4RyuOGcRtL/ZHnBVuUx0PvkUUjG/Bb0=@vger.kernel.org X-Gm-Message-State: AOJu0Yze0OybJm9mSi28jyAw7CXwXGX7Hs42yxtBVdzIkPbFQkhxq89j n7FsyqVgUmEsRrsMfBkmKz76Wi3CnKHNp8zWvBaqDFUtw0p40c+QESKoplxLuI2U59E= X-Gm-Gg: AfdE7clpCIFuU3X6OIOUrwC4MZKoYOT/cPUh8iUSL9FV+/OxRzWzCLfLnrtLrpj1rqH dlELoLxyD8jI8N26iOHNvtGtufsK0JkaZ9zGkFPCJYofpCY3Qg0KCwFfbjKTh5paCD24RiVHyDz GB7nbXxPz5pC6LaQQuxxDQSeEDl9ESJknn67n+ZyZk+h79Ioeo+Gter3kFs4Gaz5M6hs73819ta /DVRI9j1+7FhUELfFlXsZQ49IECqB1smwIWoBNVzpI4qF0oDYLBPpT74XWwLCWfpmhZNa7aPVhg Lr78wrrt6iGI/MbPF4XyXg3swdBv3Ru6kUJ5UWucq7X1D6l351oyGHmG5iFo3wdGd1/fkRcgcrd 56r409V/7Joquueo2e3M5s6ZAbzYNURFCXlOauEeSDXGJRVhAdbzRO9gapqhTUrW36dwoxoeBzc FtHZGTKS3l95VyDbfdho3VMScb1qdfP5fDjIXag7vv1XQLw2261B239Itd0R2YjygDi551i9mrY hdCZdpi487zFw== X-Received: by 2002:a05:6512:2526:b0:5ae:b86b:71f0 with SMTP id 2adb3069b0e04-5b0236999c5mr4097798e87.37.1784119864525; Wed, 15 Jul 2026 05:51:04 -0700 (PDT) Received: from archlinux ([94.180.44.28]) by smtp.gmail.com with ESMTPSA id 2adb3069b0e04-5b022fac999sm3404042e87.55.2026.07.15.05.51.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 15 Jul 2026 05:51:04 -0700 (PDT) From: Arsenii Pashchenko To: Greg Kroah-Hartman Cc: linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, ulijg308@gmail.com Subject: [PATCH 58/61] staging: rtl8723bs: extend rtw_hal_mgnt_xmit functionality Date: Wed, 15 Jul 2026 19:48:26 +0700 Message-ID: <20260715124829.90290-59-ulijg308@gmail.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260715124829.90290-1-ulijg308@gmail.com> References: <20260715124829.90290-1-ulijg308@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Extend rtw_hal_mgnt_xmit to extract RA/TA MAC addresses from the 802.11 header before transmission. Signed-off-by: Arsenii Pashchenko --- drivers/staging/rtl8723bs/core/rtw_mlme_ext.c | 10 ---------- drivers/staging/rtl8723bs/hal/hal_intf.c | 11 ++++++----- drivers/staging/rtl8723bs/include/rtw_mlme_ext.h | 1 - drivers/staging/rtl8723bs/include/rtw_xmit.h | 1 + 4 files changed, 7 insertions(+), 16 deletions(-) diff --git a/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c b/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c index 1fab3e829..fcf33c956 100644 --- a/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c +++ b/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c @@ -1916,16 +1916,6 @@ void update_mgntframe_attrib(struct adapter *padapter, struct pkt_attrib *pattri pattrib->mbssid = 0; } -void update_mgntframe_attrib_addr(struct adapter *padapter, struct xmit_frame *pmgntframe) -{ - u8 *pframe; - struct pkt_attrib *pattrib = &pmgntframe->attrib; - - pframe = (u8 *)(pmgntframe->buf_addr) + TXDESC_OFFSET; - - memcpy(pattrib->ra, GetAddr1Ptr(pframe), ETH_ALEN); - memcpy(pattrib->ta, GetAddr2Ptr(pframe), ETH_ALEN); -} void dump_mgntframe(struct adapter *padapter, struct xmit_frame *pmgntframe) { diff --git a/drivers/staging/rtl8723bs/hal/hal_intf.c b/drivers/staging/rtl8723bs/hal/hal_intf.c index 9bb1fba5c..7cf5128e7 100644 --- a/drivers/staging/rtl8723bs/hal/hal_intf.c +++ b/drivers/staging/rtl8723bs/hal/hal_intf.c @@ -256,15 +256,16 @@ s32 rtw_hal_xmit(struct adapter *padapter, struct xmit_frame *pxmitframe) */ s32 rtw_hal_mgnt_xmit(struct adapter *padapter, struct xmit_frame *pmgntframe) { - update_mgntframe_attrib_addr(padapter, pmgntframe); - /* pframe = (u8 *)(pmgntframe->buf_addr) + TXDESC_OFFSET; */ - /* pwlanhdr = (struct rtw_ieee80211_hdr *)pframe; */ - /* memcpy(pmgntframe->attrib.ra, pwlanhdr->addr1, ETH_ALEN); */ + struct pkt_attrib *pattrib = &pmgntframe->attrib; + + u8 *pframe = (u8 *)(pmgntframe->buf_addr) + TXDESC_OFFSET; + + memcpy(pattrib->ra, GetAddr1Ptr(pframe), ETH_ALEN); + memcpy(pattrib->ta, GetAddr2Ptr(pframe), ETH_ALEN); if (padapter->securitypriv.binstallBIPkey) { if (is_multicast_ether_addr(pmgntframe->attrib.ra)) { pmgntframe->attrib.encrypt = _BIP_; - /* pmgntframe->attrib.bswenc = true; */ } else { pmgntframe->attrib.encrypt = _AES_; pmgntframe->attrib.bswenc = true; diff --git a/drivers/staging/rtl8723bs/include/rtw_mlme_ext.h b/drivers/staging/rtl8723bs/include/rtw_mlme_ext.h index 3d1126740..7a1c90c71 100644 --- a/drivers/staging/rtl8723bs/include/rtw_mlme_ext.h +++ b/drivers/staging/rtl8723bs/include/rtw_mlme_ext.h @@ -524,7 +524,6 @@ extern u8 set_tx_beacon_cmd(struct adapter *padapter); unsigned int setup_beacon_frame(struct adapter *padapter, unsigned char *beacon_frame); void update_mgnt_tx_rate(struct adapter *padapter, u8 rate); void update_mgntframe_attrib(struct adapter *padapter, struct pkt_attrib *pattrib); -void update_mgntframe_attrib_addr(struct adapter *padapter, struct xmit_frame *pmgntframe); void dump_mgntframe(struct adapter *padapter, struct xmit_frame *pmgntframe); s32 dump_mgntframe_and_wait(struct adapter *padapter, struct xmit_frame *pmgntframe, int timeout_ms); s32 dump_mgntframe_and_wait_ack(struct adapter *padapter, struct xmit_frame *pmgntframe); diff --git a/drivers/staging/rtl8723bs/include/rtw_xmit.h b/drivers/staging/rtl8723bs/include/rtw_xmit.h index f85a03efe..41a04e3b0 100644 --- a/drivers/staging/rtl8723bs/include/rtw_xmit.h +++ b/drivers/staging/rtl8723bs/include/rtw_xmit.h @@ -213,6 +213,7 @@ void rtw_sctx_init(struct submit_ctx *sctx, int timeout_ms); int rtw_sctx_wait(struct submit_ctx *sctx); void rtw_sctx_done_err(struct submit_ctx **sctx, int status); + struct xmit_buf { struct list_head list; -- 2.55.0