[PATCH] staging: rtl8723bs: change custom comparing function to memcmp()

From: Bera Yüzlü

Date: Fri Feb 27 2026 - 15:08:07 EST


eqNByte() function is a redundant reimplementation of memcmp().
Remove eqNByte() and switch its usages to memcmp().
No functional change.

Signed-off-by: Bera Yüzlü <b9788213@xxxxxxxxx>
---
drivers/staging/rtl8723bs/hal/hal_com.c | 12 ------------
.../staging/rtl8723bs/hal/hal_com_phycfg.c | 19 ++++++++++---------
drivers/staging/rtl8723bs/include/hal_com.h | 2 --
3 files changed, 10 insertions(+), 23 deletions(-)

diff --git a/drivers/staging/rtl8723bs/hal/hal_com.c b/drivers/staging/rtl8723bs/hal/hal_com.c
index 31b3e880ae6a..a7720f821823 100644
--- a/drivers/staging/rtl8723bs/hal/hal_com.c
+++ b/drivers/staging/rtl8723bs/hal/hal_com.c
@@ -750,18 +750,6 @@ void SetHalODMVar(
}


-bool eqNByte(u8 *str1, u8 *str2, u32 num)
-{
- if (num == 0)
- return false;
- while (num > 0) {
- num--;
- if (str1[num] != str2[num])
- return false;
- }
- return true;
-}
-
bool GetU1ByteIntegerFromStringInDecimal(char *Str, u8 *pInt)
{
u16 i = 0;
diff --git a/drivers/staging/rtl8723bs/hal/hal_com_phycfg.c b/drivers/staging/rtl8723bs/hal/hal_com_phycfg.c
index dc2da49e6738..b5ba3eba597b 100644
--- a/drivers/staging/rtl8723bs/hal/hal_com_phycfg.c
+++ b/drivers/staging/rtl8723bs/hal/hal_com_phycfg.c
@@ -8,6 +8,7 @@
#include <drv_types.h>
#include <hal_data.h>
#include <linux/kernel.h>
+#include <linux/string.h>

u8 PHY_GetTxPowerByRateBase(struct adapter *Adapter, u8 RfPath,
enum rate_section RateSection)
@@ -819,27 +820,27 @@ void PHY_SetTxPowerLimit(

powerLimit = powerLimit > MAX_POWER_INDEX ? MAX_POWER_INDEX : powerLimit;

- if (eqNByte(Regulation, (u8 *)("FCC"), 3))
+ if (memcmp(Regulation, "FCC", 3) == 0)
regulation = 0;
- else if (eqNByte(Regulation, (u8 *)("MKK"), 3))
+ else if (memcmp(Regulation, "MKK", 3) == 0)
regulation = 1;
- else if (eqNByte(Regulation, (u8 *)("ETSI"), 4))
+ else if (memcmp(Regulation, "ETSI", 4) == 0)
regulation = 2;
- else if (eqNByte(Regulation, (u8 *)("WW13"), 4))
+ else if (memcmp(Regulation, "WW13", 4) == 0)
regulation = 3;

- if (eqNByte(RateSection, (u8 *)("CCK"), 3) && eqNByte(RfPath, (u8 *)("1T"), 2))
+ if (memcmp(RateSection, "CCK", 3) == 0 && memcmp(RfPath, "1T", 2) == 0)
rateSection = 0;
- else if (eqNByte(RateSection, (u8 *)("OFDM"), 4) && eqNByte(RfPath, (u8 *)("1T"), 2))
+ else if (memcmp(RateSection, "OFDM", 4) == 0 && memcmp(RfPath, "1T", 2) == 0)
rateSection = 1;
- else if (eqNByte(RateSection, (u8 *)("HT"), 2) && eqNByte(RfPath, (u8 *)("1T"), 2))
+ else if (memcmp(RateSection, "HT", 2) == 0 && memcmp(RfPath, "1T", 2) == 0)
rateSection = 2;
else
return;

- if (eqNByte(Bandwidth, (u8 *)("20M"), 3))
+ if (memcmp(Bandwidth, "20M", 3) == 0)
bandwidth = 0;
- else if (eqNByte(Bandwidth, (u8 *)("40M"), 3))
+ else if (memcmp(Bandwidth, "40M", 3) == 0)
bandwidth = 1;

channelIndex = phy_GetChannelIndexOfTxPowerLimit(channel);
diff --git a/drivers/staging/rtl8723bs/include/hal_com.h b/drivers/staging/rtl8723bs/include/hal_com.h
index 74d6c892c401..483f0390addc 100644
--- a/drivers/staging/rtl8723bs/include/hal_com.h
+++ b/drivers/staging/rtl8723bs/include/hal_com.h
@@ -141,8 +141,6 @@ void rtw_hal_check_rxfifo_full(struct adapter *adapter);
u8 GetHalDefVar(struct adapter *adapter, enum hal_def_variable variable,
void *value);

-bool eqNByte(u8 *str1, u8 *str2, u32 num);
-
bool GetU1ByteIntegerFromStringInDecimal(char *str, u8 *in);

#define HWSET_MAX_SIZE 512
--
2.43.0