From nobody Sun Jun 14 18:58:01 2026 Received: from mail-pf1-f169.google.com (mail-pf1-f169.google.com [209.85.210.169]) (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 0ADFC4C6C for ; Sun, 5 Apr 2026 11:43:44 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.169 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775389426; cv=none; b=rY/YfOO1wFbcaJ9/UXy9G/J6+Fq6PJCeRRCmn4lkXcviFdVMWecSTcHNctmuEWq516kpSCeDRlE6W+T/TQXzCO73ckEV/xkHjXBrrLWsJnXZpUU/YqAF4psJxT7wzwAuFwlEpR3n53KVE4uO1434sM2bwbj3h+6shoJHvUQ84Zc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775389426; c=relaxed/simple; bh=K65IF01Pfy3lzRZKOtbMTAnIQFJBUCdSDjkspyRS/Go=; h=From:To:Cc:Subject:Date:Message-Id:MIME-Version; b=RBAsb6elxjBfk3iZxZNxgQ6QLIG8uhBKz7C7ramN+nbo4VxzougdR4E9pNqjqMht61EgXxLLdeA7i8A8XYefFNcl5XpXvtiUrsNdBsnEQ65SVM5NixC90Xfoj06ZBuzkO95dlavKAdoIXDDw9KwUxlwVD7XpqyfsJP0Xm8QJaAk= 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=rbuRrYqn; arc=none smtp.client-ip=209.85.210.169 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="rbuRrYqn" Received: by mail-pf1-f169.google.com with SMTP id d2e1a72fcca58-82cf976ecacso1248819b3a.1 for ; Sun, 05 Apr 2026 04:43:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1775389424; x=1775994224; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=VG/hUF4vpXeatP942r9BydyjzysF7Iqe+vxk1kg8Zrg=; b=rbuRrYqnGvhKa36Cb03DmEmCevpLjYBx3MOxDArMx+jlYwko018YKmlEvv6uZ1Sjv9 poji11GO816dacLbKr0OPByPf6WBJ31trskK4RG/sEWfrAftdug9gxVnA2p2ytXaB4hv seUV1flkgpzAHuVWud0uAt/W1ch0SaVtMZdBjOqURpUu+P5mGKoTPa3tcNjgFUa4Nsv5 Be1ZpvT6tKKPLtVq6zt7eO5Z+6xoE4J/x79WQrIz0IYzJYeok46vNg5gi3lAuOXK/wuU +r+uhKH7hB0IZ1FcrfAFuSEsw5LJ8m5GXWb0lzp9oHPDWfvhd8jck6EQnvbRjLGBSm2f uWsw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775389424; x=1775994224; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=VG/hUF4vpXeatP942r9BydyjzysF7Iqe+vxk1kg8Zrg=; b=XZw2Aptn/WvFgI/Kdvn9qX/mUTYdtOmnuuHEKXdbwAOFILyvO5eXro4PEP/zQ0Qtmi KaLWRAynsWf+gUOP8oDdoqMhL0grFxA58RARsre3piJUtHa8QjB/qcxjytalii49XuKf LxKe/MQwnOI4rXacw9IL466CBOeJlBBmnAirFvXwV2NbrIAFUH/QgmjrcRnXhILUE3gv 3R4fhyiVKmyDt6vH6ZI0Q7fl1Qk5hwX/JHoKZffF0uL4L9I9eUwf+I2yg8jlM6exoOnx p1FkbNIkFtIFbkJYXHZmcyfuarynqP5LzO/STdSAY+l0/Jm+8Vnp9jY8k2rO/R4IPneO ZbDQ== X-Forwarded-Encrypted: i=1; AJvYcCXkab3VD2UmGqqnHti9MML9zfQrJBdbwYvQxVdyzW0L91vU/75Gf8+Ux0xekh+0RCKKIjkUY9utcTCROMQ=@vger.kernel.org X-Gm-Message-State: AOJu0YzU30eL7RSOyhsgX5yYHT7nKIvzSdqfs2lUcMoihI1dn35oRHBq wI6tyGaAqCfslN/1TcsLgfwfQgco3HA+YiA1cvnUE7LwxrLz7J9r2tA9 X-Gm-Gg: AeBDietM1b1SUmXwfmfB0VGuQ+jrp4fj/txKZcAmQM+wFjK3ZXnvc18zy+2ifY9EqLw xDzWq6DKzW4CdZn8VpdOlXUro00R7VvrUg12Z5ydSOcuuOm/K210zvLn8PBGE1kKTM0AJ3DQNVI sYexnnCBfMh44TSjVKARGrPjvWVMPuoIl3OuuyyosPTpuMoTihKLZ9VaRItPKrnokXWkpcDHOu8 vViJnXtTW4Ts8QXOu2yVPuVWNmolNcg9UehPB/92UuqOwJzmAyRwLvxCHOKRP8U8YxhDqMo1naj 4/ockU+gBE8xg0g01VHLms/pyKDWKsA5pBbvZhF0vEu2xLV2L2384kJmROXhoCyELmyzsC6PspM 4/NO+8h043aShNKNdijUktVDoTxnS05Qdz2ub9waEEsMVGyblEujqdg4Thd9kgDO5VpJJakfzGz DnGCJS6gPOvZV/7fNF7EdxvDovPWmvCDa4HQi/EJY= X-Received: by 2002:a05:6a00:4397:b0:829:862d:6b46 with SMTP id d2e1a72fcca58-82d0da2f24bmr8822877b3a.6.1775389424340; Sun, 05 Apr 2026 04:43:44 -0700 (PDT) Received: from localhost.localdomain ([111.125.237.11]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-82cf9b3ccc8sm13938205b3a.19.2026.04.05.04.43.34 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 05 Apr 2026 04:43:42 -0700 (PDT) From: Prithvi Tambewagh To: gregkh@linuxfoundation.org, abrahamadekunle50@gmail.com, b9788213@gmail.com, straube.linux@gmail.com, ethantidmore06@gmail.com, andriy.shevchenko@linux.intel.com, dan.carpenter@linaro.org, weibu@redadmin.org, knavaneeth786@gmail.com, ignacio.pena87@gmail.com, dharanitharan725@gmail.com, samasth.norway.ananda@oracle.com, lukagejak5@gmail.com, karanja99erick@gmail.com, s9430939@naver.com, suunj1331@gmail.com, ysinghcin@gmail.com Cc: linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, linux-kernel-mentees@lists.linux.dev, skhan@linuxfoundation.org, david.hunter.linux@gmail.com, khalid@kernel.org, Prithvi Tambewagh Subject: [RFT PATCH v3 0/5] staging: rtl8723bs: Code cleanup in drivers/staging/rtl8723bs Date: Sun, 5 Apr 2026 17:11:27 +0530 Message-Id: <20260405114132.310774-1-activprithvi@gmail.com> X-Mailer: git-send-email 2.34.1 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" This patch series focuses on code cleanup in drivers/staging/rtl8723bs, majorly focusing on fixing checkpatch warnings of constant being on right side of test in comparisons, deletion of empty if block ,use of=20 read_poll_timeout_atomic(), and other code simplifications. v2 link: https://lore.kernel.org/linux-staging/20260403094647.fmgop6xh2cjpi= t3s@inspiron/T/#m3d08fd012119772e> v1 link: https://lore.kernel.org/linux-staging/20260323145214.ubhshy2gwp52j= 5zh@inspiron/T/#mc3b693b37c49fbdd> Note: 1. I found that for this change in v2: - if ( - (false =3D=3D pHalData->bDisableSWChannelPlan) && - rtw_is_channel_plan_valid(sw_channel_plan) - ) + if (!pHalData->bDisableSWChannelPlan && + rtw_is_channel_plan_valid(sw_channel_plan)) for this code, checkpatch gave the check: CHECK: Using comparison to false is error prone #126: FILE: drivers/staging/rtl8723bs/hal/hal_com.c:126: + (false =3D=3D pHalData->bDisableSWChannelPlan) && which is a different logical change than the ones covered in this patch ser= ies. Hence, to keep the patch series to a reasonable length and since this is RFT path series, I did not consider this change right now. 2. This change in v2: if (BandWidth =3D=3D CHANNEL_WIDTH_20) { /* BW20-1S, BW20-2S */ - if (MGN_MCS0 <=3D Rate && Rate <=3D MGN_MCS7) + if (Rate >=3D MGN_MCS0 && Rate <=3D MGN_MCS7) txPower +=3D pHalData->BW20_24G_Diff[RFPath][TX_1S]; } else if (BandWidth =3D=3D CHANNEL_WIDTH_40) { /* BW40-1S, BW40-2= S */ - if (MGN_MCS0 <=3D Rate && Rate <=3D MGN_MCS7) + if (Rate >=3D MGN_MCS0 && Rate <=3D MGN_MCS7) txPower +=3D pHalData->BW40_24G_Diff[RFPath][TX_1S]; } can be reformatted as: diff --git a/drivers/staging/rtl8723bs/hal/hal_com_phycfg.c b/drivers/stagi= ng/rtl8723bs/hal/hal_com_phycfg.c index 9e523491a008..efd1c76f2953 100644 --- a/drivers/staging/rtl8723bs/hal/hal_com_phycfg.c +++ b/drivers/staging/rtl8723bs/hal/hal_com_phycfg.c @@ -469,11 +469,10 @@ u8 PHY_GetTxPowerIndexBase( if ((Rate >=3D MGN_6M && Rate <=3D MGN_54M) && !IS_CCK_RATE(Rate)) txPower +=3D pHalData->OFDM_24G_Diff[RFPath][TX_1S]; =20 - if (BandWidth =3D=3D CHANNEL_WIDTH_20) { /* BW20-1S, BW20-2S */ - if (MGN_MCS0 <=3D Rate && Rate <=3D MGN_MCS7) + if (Rate >=3D MGN_MCS0 && Rate <=3D MGN_MCS7) { + if (BandWidth =3D=3D CHANNEL_WIDTH_20) /* BW20-1S, BW20-2S= */ txPower +=3D pHalData->BW20_24G_Diff[RFPath][TX_1S]; - } else if (BandWidth =3D=3D CHANNEL_WIDTH_40) { /* BW40-1S, BW40-2= S */ - if (MGN_MCS0 <=3D Rate && Rate <=3D MGN_MCS7) + else if (BandWidth =3D=3D CHANNEL_WIDTH_40) /* BW40-1S, BW= 40-2S */ txPower +=3D pHalData->BW40_24G_Diff[RFPath][TX_1S]; for which it is sent as a separate patch - patch 5 in this series. 3. I found, in drivers/staging/rtl8723bs/hal/odm.h: struct odm_rate_adaptive { u8 Type; /* DM_Type_ByFW/DM_Type_By= Driver */ u8 LdpcThres; /* if RSSI > LdpcThres =3D> switch= from LPDC to BCC */ bool bUseLdpc; bool bLowerRtsRate; u8 HighRSSIThresh; /* if RSSI > HighRSSIThresh =3D= > RATRState is DM_RATR_STA_HIGH */ u8 LowRSSIThresh; /* if RSSI <=3D LowRSSIThresh = =3D> RATRState is DM_RATR_STA_LOW */ u8 RATRState; /* Current RSSI level, DM_RATR_STA= _HIGH/DM_RATR_STA_MIDDLE/DM_RATR_> }; and based on the explanation of parameters HighRSSIThresh & LowRSSIThresh=20 I thought this change: diff --git a/drivers/staging/rtl8723bs/hal/odm.c b/drivers/staging/rtl8723b= s/hal/odm.c index 639b6da2302b..ca4495f101fd 100644 --- a/drivers/staging/rtl8723bs/hal/odm.c +++ b/drivers/staging/rtl8723bs/hal/odm.c @@ -343,9 +343,9 @@ bool ODM_RAStateCheck( } =20 /* Decide RATRState by RSSI. */ - if (RSSI > HighRSSIThreshForRA) + if (HighRSSIThreshForRA < RSSI) RATRState =3D DM_RATR_STA_HIGH; - else if (RSSI > LowRSSIThreshForRA) + else if (LowRSSIThreshForRA < RSSI)=20 RATRState =3D DM_RATR_STA_MIDDLE; else RATRState =3D DM_RATR_STA_LOW; doesn't seem to be right, thats why I dropped this change as well. 4. This patch series is compile tested using the following commands, which include setting the necessary configurations: 1. make defconfig 2. scripts/config --enable CONFIG_STAGING 3. scripts/config --module CONFIG_MMC 4. scripts/config --module CONFIG_RTL8723BS 5. make olddefconfig 6. make -j$(nproc) 7. git rebase -i --exec "make -j$(nproc) M=3Ddrivers/staging/rtl872= 3bs" HEAD~5=20 The final rebase --exec gave a successful output: Executing: make -j12 M=3Ddrivers/staging/rtl8723bs make[1]: Entering directory '/home/prithvi/linux/drivers/staging/rtl8723bs' CC [M] core/rtw_ap.o CC [M] core/rtw_btcoex.o CC [M] core/rtw_cmd.o CC [M] core/rtw_efuse.o CC [M] core/rtw_io.o CC [M] core/rtw_ioctl_set.o CC [M] core/rtw_ieee80211.o CC [M] core/rtw_mlme.o CC [M] core/rtw_mlme_ext.o CC [M] core/rtw_pwrctrl.o CC [M] core/rtw_recv.o CC [M] core/rtw_security.o CC [M] core/rtw_sta_mgt.o CC [M] core/rtw_wlan_util.o CC [M] core/rtw_xmit.o CC [M] hal/hal_intf.o CC [M] hal/hal_com.o CC [M] hal/hal_com_phycfg.o CC [M] hal/hal_btcoex.o CC [M] hal/hal_sdio.o CC [M] hal/hal_pwr_seq.o CC [M] hal/HalPhyRf.o CC [M] hal/HalPwrSeqCmd.o CC [M] hal/odm_CfoTracking.o CC [M] hal/odm.o CC [M] hal/odm_DIG.o CC [M] hal/odm_DynamicBBPowerSaving.o CC [M] hal/odm_DynamicTxPower.o CC [M] hal/odm_EdcaTurboCheck.o CC [M] hal/odm_HWConfig.o CC [M] hal/odm_RegConfig8723B.o CC [M] hal/rtl8723b_cmd.o CC [M] hal/rtl8723b_dm.o CC [M] hal/rtl8723b_hal_init.o CC [M] hal/rtl8723b_phycfg.o CC [M] hal/rtl8723b_rf6052.o CC [M] hal/rtl8723b_rxdesc.o CC [M] hal/rtl8723bs_recv.o CC [M] hal/rtl8723bs_xmit.o CC [M] hal/sdio_halinit.o CC [M] hal/sdio_ops.o CC [M] hal/HalBtc8723b1Ant.o CC [M] hal/HalBtc8723b2Ant.o CC [M] hal/HalHWImg8723B_BB.o CC [M] hal/HalHWImg8723B_MAC.o CC [M] hal/HalHWImg8723B_RF.o CC [M] hal/HalPhyRf_8723B.o CC [M] os_dep/ioctl_cfg80211.o CC [M] os_dep/osdep_service.o CC [M] os_dep/os_intfs.o CC [M] os_dep/sdio_intf.o CC [M] os_dep/sdio_ops_linux.o CC [M] os_dep/wifi_regd.o CC [M] os_dep/xmit_linux.o LD [M] r8723bs.o MODPOST Module.symvers CC [M] r8723bs.mod.o CC [M] .module-common.o LD [M] r8723bs.ko make[1]: Leaving directory '/home/prithvi/linux/drivers/staging/rtl8723bs' Executing: make -j12 M=3Ddrivers/staging/rtl8723bs make[1]: Entering directory '/home/prithvi/linux/drivers/staging/rtl8723bs' CC [M] hal/HalPhyRf_8723B.o LD [M] r8723bs.o MODPOST Module.symvers CC [M] r8723bs.mod.o LD [M] r8723bs.ko make[1]: Leaving directory '/home/prithvi/linux/drivers/staging/rtl8723bs' Executing: make -j12 M=3Ddrivers/staging/rtl8723bs make[1]: Entering directory '/home/prithvi/linux/drivers/staging/rtl8723bs' CC [M] core/rtw_ap.o CC [M] core/rtw_btcoex.o CC [M] core/rtw_cmd.o CC [M] core/rtw_efuse.o CC [M] core/rtw_io.o CC [M] core/rtw_ioctl_set.o CC [M] core/rtw_ieee80211.o CC [M] core/rtw_mlme.o CC [M] core/rtw_mlme_ext.o CC [M] core/rtw_pwrctrl.o CC [M] core/rtw_recv.o CC [M] core/rtw_security.o CC [M] core/rtw_sta_mgt.o CC [M] core/rtw_wlan_util.o CC [M] core/rtw_xmit.o CC [M] hal/hal_intf.o CC [M] hal/hal_com.o CC [M] hal/hal_com_phycfg.o CC [M] hal/hal_btcoex.o CC [M] hal/hal_sdio.o CC [M] hal/hal_pwr_seq.o CC [M] hal/HalPhyRf.o CC [M] hal/HalPwrSeqCmd.o CC [M] hal/odm.o CC [M] hal/odm_CfoTracking.o CC [M] hal/odm_DIG.o CC [M] hal/odm_DynamicBBPowerSaving.o CC [M] hal/odm_DynamicTxPower.o CC [M] hal/odm_EdcaTurboCheck.o CC [M] hal/odm_HWConfig.o CC [M] hal/odm_RegConfig8723B.o CC [M] hal/rtl8723b_cmd.o CC [M] hal/rtl8723b_dm.o CC [M] hal/rtl8723b_hal_init.o CC [M] hal/rtl8723b_phycfg.o CC [M] hal/rtl8723b_rf6052.o CC [M] hal/rtl8723b_rxdesc.o CC [M] hal/rtl8723bs_recv.o CC [M] hal/rtl8723bs_xmit.o CC [M] hal/sdio_halinit.o CC [M] hal/sdio_ops.o CC [M] hal/HalBtc8723b1Ant.o CC [M] hal/HalBtc8723b2Ant.o CC [M] hal/HalHWImg8723B_BB.o CC [M] hal/HalHWImg8723B_MAC.o CC [M] hal/HalHWImg8723B_RF.o CC [M] hal/HalPhyRf_8723B.o CC [M] os_dep/ioctl_cfg80211.o CC [M] os_dep/osdep_service.o CC [M] os_dep/os_intfs.o CC [M] os_dep/sdio_intf.o CC [M] os_dep/sdio_ops_linux.o CC [M] os_dep/wifi_regd.o CC [M] os_dep/xmit_linux.o LD [M] r8723bs.o MODPOST Module.symvers LD [M] r8723bs.ko make[1]: Leaving directory '/home/prithvi/linux/drivers/staging/rtl8723bs' Executing: make -j12 M=3Ddrivers/staging/rtl8723bs make[1]: Entering directory '/home/prithvi/linux/drivers/staging/rtl8723bs' CC [M] hal/rtl8723b_cmd.o LD [M] r8723bs.o MODPOST Module.symvers CC [M] r8723bs.mod.o LD [M] r8723bs.ko make[1]: Leaving directory '/home/prithvi/linux/drivers/staging/rtl8723bs' Executing: make -j12 M=3Ddrivers/staging/rtl8723bs make[1]: Entering directory '/home/prithvi/linux/drivers/staging/rtl8723bs' CC [M] hal/hal_com_phycfg.o LD [M] r8723bs.o MODPOST Module.symvers CC [M] r8723bs.mod.o LD [M] r8723bs.ko make[1]: Leaving directory '/home/prithvi/linux/drivers/staging/rtl8723bs' Successfully rebased and updated refs/heads/staging-realtek-patch-series. However, since I currently don't have rtl8723bs hardware I am unfortunately unable to do runtime testing for this patch series. Prithvi Tambewagh (5): staging: rtl8723bs: move constant to right side of test in comparison staging: rtl8723bs: remove empty if statement block staging: rtl8723bs: simplify boolean return in IsFrameTypeCtrl() staging: rtl8723bs: use read_poll_timeout_atomic in _is_fw_read_cmd_down staging: rtl8723bs: remove duplicate rate checks in PHY_GetTxPowerIndexBase() .../staging/rtl8723bs/hal/HalBtc8723b2Ant.c | 4 ++-- drivers/staging/rtl8723bs/hal/HalPhyRf_8723B.c | 5 +---- drivers/staging/rtl8723bs/hal/hal_com.c | 2 +- drivers/staging/rtl8723bs/hal/hal_com_phycfg.c | 11 +++++------ drivers/staging/rtl8723bs/hal/rtl8723b_cmd.c | 18 +++++++----------- .../staging/rtl8723bs/hal/rtl8723b_hal_init.c | 18 +++++++++--------- drivers/staging/rtl8723bs/hal/rtl8723bs_xmit.c | 2 +- drivers/staging/rtl8723bs/include/ieee80211.h | 4 ++-- drivers/staging/rtl8723bs/include/wifi.h | 5 +---- 9 files changed, 29 insertions(+), 40 deletions(-) --=20 2.34.1