staging: rtl8723bs: clean up efuse related code
cover staging: rtl8723bs: clean up efuse related code
This series removes the boolean parameter bPseudoTest from efuse stuff related functions. As this parameter is always set to false in the driver, we can safely remove it. Besides improved readability and decreased code complexity, removing the bPseudoTest parameter allowed for getting rid of a lot of dead code. In total, this series reduced the object file size by more than 1100 bytes on my system.
The patches have been compile-tested only due to lack of hardware.
Michael Straube (14):
staging: rtl8723bs: remove bPseudoTest from EFUSE_ShadowMapUpdate
staging: rtl8723bs: make Efuse_ReadAllMap static
staging: rtl8723bs: remove bPseudoTest from Efuse_ReadAllMap
staging: rtl8723bs: remove wrapper efuse_ReadEFuse
staging: rtl8723bs: remove bPseudoTest from Hal_ReadEFuse
staging: rtl8723bs: remove bPseudoTest from hal_ReadEFuse_WiFi
staging: rtl8723bs: remove bPseudoTest from hal_ReadEFuse_BT
staging: rtl8723bs: remove wrapper EFUSE_GetEfuseDefinition
staging: rtl8723bs: remove bPseudoTest from Hal_GetEfuseDefinition
staging: rtl8723bs: remove Hal_EfuseGetCurrentSize
staging: rtl8723bs: remove bPseudoTest from hal_EfuseSwitchToBank
staging: rtl8723bs: clean up variable initializations
staging: rtl8723bs: remove bPseudoTest from efuse_OneByteRead
staging: rtl8723bs: remove efuse_OneByteWrite
drivers/staging/rtl8723bs/core/rtw_efuse.c | 138 +------- .../staging/rtl8723bs/hal/rtl8723b_hal_init.c | 326 +++--------------- drivers/staging/rtl8723bs/include/hal_intf.h | 5 +- drivers/staging/rtl8723bs/include/rtw_efuse.h | 6 +- 4 files changed, 62 insertions(+), 413 deletions(-)
Signature · 1 line
2.51.0
PATCH 1/14 staging: rtl8723bs: remove bPseudoTest from EFUSE_ShadowMapUpdate
The function EFUSE_ShadowMapUpdate is always called with bPseudoTest set to false. Remove the pPseudoTest parameter and replace its usage in the function with false to reduce code complexity.
--- drivers/staging/rtl8723bs/core/rtw_efuse.c | 6 +++--- drivers/staging/rtl8723bs/hal/rtl8723b_hal_init.c | 4 ++-- drivers/staging/rtl8723bs/include/rtw_efuse.h | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-)
drivers/staging/rtl8723bs/core/rtw_efuse.c +3 -3
@@ -386,17 +386,17 @@ static void efuse_ShadowRead4Byte(struct adapter *padapter, u16 Offset, u32 *Val* 11/13/2008 MHC Create Version 0. * */ -void EFUSE_ShadowMapUpdate (struct adapter *padapter,u8 efuseType,bool bPseudoTest) +void EFUSE_ShadowMapUpdate (struct adapter *padapter,u8 efuseType) {struct eeprom_priv *pEEPROM =GET_EEPROM_EFUSE_PRIV (padapter);u16 mapLen =0 ; -EFUSE_GetEfuseDefinition (padapter, efuseType,TYPE_EFUSE_MAP_LEN , (void *)&mapLen, bPseudoTest); +EFUSE_GetEfuseDefinition (padapter, efuseType,TYPE_EFUSE_MAP_LEN , (void *)&mapLen, false);if (pEEPROM->bautoload_fail_flag)memset (pEEPROM->efuse_eeprom_data,0xFF , mapLen);else -Efuse_ReadAllMap (padapter, efuseType, pEEPROM->efuse_eeprom_data, bPseudoTest); +Efuse_ReadAllMap (padapter, efuseType, pEEPROM->efuse_eeprom_data, false);/* PlatformMoveMemory((void *)&pHalData->EfuseMap[EFUSE_MODIFY_MAP][0], */ /* void *)&pHalData->EfuseMap[EFUSE_INIT_MAP][0], mapLen); */
drivers/staging/rtl8723bs/hal/rtl8723b_hal_init.c +2 -2
@@ -1438,12 +1438,12 @@ void Hal_InitPGData(struct adapter *padapter, u8 *PROMContent)if (!pEEPROM->bautoload_fail_flag) {/* autoload OK. */ if (!pEEPROM->EepromOrEfuse) {/* Read EFUSE real map to shadow. */ -EFUSE_ShadowMapUpdate (padapter,EFUSE_WIFI , false); +EFUSE_ShadowMapUpdate (padapter,EFUSE_WIFI );memcpy ((void *)PROMContent, (void *)pEEPROM->efuse_eeprom_data,HWSET_MAX_SIZE_8723B ); } }else {/* autoload fail */ if (!pEEPROM->EepromOrEfuse) -EFUSE_ShadowMapUpdate (padapter,EFUSE_WIFI , false); +EFUSE_ShadowMapUpdate (padapter,EFUSE_WIFI );memcpy ((void *)PROMContent, (void *)pEEPROM->efuse_eeprom_data,HWSET_MAX_SIZE_8723B ); } }
drivers/staging/rtl8723bs/include/rtw_efuse.h +1 -1
@@ -98,7 +98,7 @@ u8 efuse_OneByteWrite(struct adapter *padapter, u16 addr, u8 data, bool bPseudovoid Efuse_PowerSwitch (struct adapter *padapter,u8 bWrite,u8 PwrState);u8 EFUSE_Read1Byte (struct adapter *padapter,u16 Address); -void EFUSE_ShadowMapUpdate (struct adapter *padapter,u8 efuseType,bool bPseudoTest); +void EFUSE_ShadowMapUpdate (struct adapter *padapter,u8 efuseType);void EFUSE_ShadowRead (struct adapter *padapter,u8 Type,u16 Offset,u32 *Value);void Rtw_Hal_ReadMACAddrFromFile (struct adapter *padapter);u32 Rtw_Hal_readPGDataFromConfigFile (struct adapter *padapter);
Signature · 1 line
2.51.0
PATCH 2/14 staging: rtl8723bs: make Efuse_ReadAllMap static
In reply to Michael StraubeMake the function Efuse_ReadAllMap static and remove its unnecessary forawrd declaration.
--- drivers/staging/rtl8723bs/core/rtw_efuse.c | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-)
drivers/staging/rtl8723bs/core/rtw_efuse.c +1 -7
@@ -303,13 +303,7 @@ u8 efuse_OneByteWrite(struct adapter *padapter, u16 addr, u8 data, bool bPseudoT* 11/11/2008 MHC Create Version 0. * */ -void -Efuse_ReadAllMap ( -struct adapter *padapter, -u8 efuseType, -u8 *Efuse, -bool bPseudoTest); -void Efuse_ReadAllMap (struct adapter *padapter,u8 efuseType,u8 *Efuse,bool bPseudoTest) +static void Efuse_ReadAllMap (struct adapter *padapter,u8 efuseType,u8 *Efuse,bool bPseudoTest) {u16 mapLen =0 ;
Signature · 1 line
2.51.0
PATCH 3/14 staging: rtl8723bs: remove bPseudoTest from Efuse_ReadAllMap
In reply to Michael StraubeThe function Efuse_ReadAllMap is always called with bPseudoTest set to false. Remove the pPseudoTest parameter and replace its usage in the function with false to reduce code complexity.
--- drivers/staging/rtl8723bs/core/rtw_efuse.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)
drivers/staging/rtl8723bs/core/rtw_efuse.c +4 -4
@@ -303,15 +303,15 @@ u8 efuse_OneByteWrite(struct adapter *padapter, u16 addr, u8 data, bool bPseudoT* 11/11/2008 MHC Create Version 0. * */ -static void Efuse_ReadAllMap (struct adapter *padapter,u8 efuseType,u8 *Efuse,bool bPseudoTest) +static void Efuse_ReadAllMap (struct adapter *padapter,u8 efuseType,u8 *Efuse) {u16 mapLen =0 ;Efuse_PowerSwitch (padapter, false, true); -EFUSE_GetEfuseDefinition (padapter, efuseType,TYPE_EFUSE_MAP_LEN , (void *)&mapLen, bPseudoTest); +EFUSE_GetEfuseDefinition (padapter, efuseType,TYPE_EFUSE_MAP_LEN , (void *)&mapLen, false); -efuse_ReadEFuse (padapter, efuseType,0 , mapLen, Efuse, bPseudoTest); +efuse_ReadEFuse (padapter, efuseType,0 , mapLen, Efuse, false);Efuse_PowerSwitch (padapter, false, false); }
@@ -390,7 +390,7 @@ void EFUSE_ShadowMapUpdate(struct adapter *padapter, u8 efuseType)if (pEEPROM->bautoload_fail_flag)memset (pEEPROM->efuse_eeprom_data,0xFF , mapLen);else -Efuse_ReadAllMap (padapter, efuseType, pEEPROM->efuse_eeprom_data, false); +Efuse_ReadAllMap (padapter, efuseType, pEEPROM->efuse_eeprom_data);/* PlatformMoveMemory((void *)&pHalData->EfuseMap[EFUSE_MODIFY_MAP][0], */ /* void *)&pHalData->EfuseMap[EFUSE_INIT_MAP][0], mapLen); */
Signature · 1 line
2.51.0
PATCH 4/14 staging: rtl8723bs: remove wrapper efuse_ReadEFuse
In reply to Michael StraubeThe function efuse_ReadEFuse is just a wrapper around Hal_ReadEFuse. Remove the wrapper and use Hal_ReadEFuse directly.
--- drivers/staging/rtl8723bs/core/rtw_efuse.c | 42 +--------------------- 1 file changed, 1 insertion(+), 41 deletions(-)
drivers/staging/rtl8723bs/core/rtw_efuse.c +1 -41
@@ -97,46 +97,6 @@ Efuse_CalculateWordCnts(u8 word_en)return word_cnts; } -/* */ -/* Description: */ -/* 1. Execute E-Fuse read byte operation according as map offset and */ -/* save to E-Fuse table. */ -/* 2. Referred from SD1 Richard. */ -/* */ -/* Assumption: */ -/* 1. Boot from E-Fuse and successfully auto-load. */ -/* 2. PASSIVE_LEVEL (USB interface) */ -/* */ -/* Created by Roger, 2008.10.21. */ -/* */ -/* 2008/12/12 MH 1. Reorganize code flow and reserve bytes. and add description. */ -/* 2. Add efuse utilization collect. */ -/* 2008/12/22 MH Read Efuse must check if we write section 1 data again!!! Sec1 */ -/* write addr must be after sec5. */ -/* */ - -void -efuse_ReadEFuse ( -struct adapter *Adapter, -u8 efuseType, -u16 _offset, -u16 _size_byte, -u8 *pbuf, -bool bPseudoTest - ); -void -efuse_ReadEFuse ( -struct adapter *Adapter, -u8 efuseType, -u16 _offset, -u16 _size_byte, -u8 *pbuf, -bool bPseudoTest - ) -{ -Hal_ReadEFuse (Adapter, efuseType, _offset, _size_byte, pbuf, bPseudoTest); -} - void EFUSE_GetEfuseDefinition( struct adapter *padapter,
@@ -311,7 +271,7 @@ static void Efuse_ReadAllMap(struct adapter *padapter, u8 efuseType, u8 *Efuse)EFUSE_GetEfuseDefinition (padapter, efuseType,TYPE_EFUSE_MAP_LEN , (void *)&mapLen, false); -efuse_ReadEFuse (padapter, efuseType,0 , mapLen, Efuse, false); +Hal_ReadEFuse (padapter, efuseType,0 , mapLen, Efuse, false);Efuse_PowerSwitch (padapter, false, false); }
Signature · 1 line
2.51.0
PATCH 5/14 staging: rtl8723bs: remove bPseudoTest from Hal_ReadEFuse
In reply to Michael StraubeThe function Hal_ReadEFuse is always called with bPseudoTest set to false. Remove the pPseudoTest parameter and replace its usage in the function with false to reduce code complexity.
--- drivers/staging/rtl8723bs/core/rtw_efuse.c | 2 +- drivers/staging/rtl8723bs/hal/rtl8723b_hal_init.c | 7 +++---- drivers/staging/rtl8723bs/include/hal_intf.h | 2 +- 3 files changed, 5 insertions(+), 6 deletions(-)
drivers/staging/rtl8723bs/core/rtw_efuse.c +1 -1
@@ -271,7 +271,7 @@ static void Efuse_ReadAllMap(struct adapter *padapter, u8 efuseType, u8 *Efuse)EFUSE_GetEfuseDefinition (padapter, efuseType,TYPE_EFUSE_MAP_LEN , (void *)&mapLen, false); -Hal_ReadEFuse (padapter, efuseType,0 , mapLen, Efuse, false); +Hal_ReadEFuse (padapter, efuseType,0 , mapLen, Efuse);Efuse_PowerSwitch (padapter, false, false); }
drivers/staging/rtl8723bs/hal/rtl8723b_hal_init.c +3 -4
@@ -883,14 +883,13 @@ void Hal_ReadEFuse(u8 efuseType, u16 _offset, u16 _size_byte, - u8 *pbuf, - bool bPseudoTest + u8 *pbuf ) { if (efuseType == EFUSE_WIFI) - hal_ReadEFuse_WiFi(padapter, _offset, _size_byte, pbuf, bPseudoTest); + hal_ReadEFuse_WiFi(padapter, _offset, _size_byte, pbuf, false); else -hal_ReadEFuse_BT (padapter ,_offset ,_size_byte ,pbuf ,bPseudoTest ); +hal_ReadEFuse_BT (padapter ,_offset ,_size_byte ,pbuf ,false ); } static u16 hal_EfuseGetCurrentSize_WiFi(
drivers/staging/rtl8723bs/include/hal_intf.h +1 -1
@@ -267,7 +267,7 @@ void UpdateHalRAMask8723B(struct adapter *padapter, u32 mac_id, u8 rssi_level);void rtl8723b_SetBeaconRelatedRegisters (struct adapter *padapter);void Hal_EfusePowerSwitch (struct adapter *padapter,u8 bWrite,u8 PwrState);void Hal_ReadEFuse (struct adapter *padapter,u8 efuseType,u16 _offset, -u16 _size_byte,u8 *pbuf,bool bPseudoTest); +u16 _size_byte,u8 *pbuf);void Hal_GetEfuseDefinition (struct adapter *padapter,u8 efuseType,u8 type,void *pOut,bool bPseudoTest);u16 Hal_EfuseGetCurrentSize (struct adapter *padapter,u8 efuseType,bool bPseudoTest);
Signature · 1 line
2.51.0
PATCH 6/14 staging: rtl8723bs: remove bPseudoTest from hal_ReadEFuse_WiFi
In reply to Michael StraubeThe function hal_ReadEFuse_WiFi is always called with bPseudoTest set to false. Remove the pPseudoTest parameter, replace its usage in the function with false, and reomve resulting dead code to reduce code complexity.
--- .../staging/rtl8723bs/hal/rtl8723b_hal_init.c | 34 ++++++------------- 1 file changed, 11 insertions(+), 23 deletions(-)
drivers/staging/rtl8723bs/hal/rtl8723b_hal_init.c +11 -23
@@ -669,14 +669,9 @@ static void hal_ReadEFuse_WiFi(struct adapter *padapter, u16 _offset, u16 _size_byte, - u8 *pbuf, - bool bPseudoTest + u8 *pbuf ) { -#ifdef HAL_EFUSE_MEMORY - struct hal_com_data *pHalData = GET_HAL_DATA(padapter); -struct efuse_hal *pEfuseHal = &pHalData->EfuseHal; -#endif u8 *efuseTbl = NULL;u16 eFuse_Addr =0 ;u8 offset, wden;
@@ -698,10 +693,10 @@ static void hal_ReadEFuse_WiFi(memset (efuseTbl,0xFF ,EFUSE_MAX_MAP_LEN );/* switch bank back to bank 0 for later BT and wifi use. */ -hal_EfuseSwitchToBank (padapter,0 , bPseudoTest); +hal_EfuseSwitchToBank (padapter,0 , false);while (AVAILABLE_EFUSE_ADDR (eFuse_Addr)) { -efuse_OneByteRead (padapter, eFuse_Addr++, &efuseHeader, bPseudoTest); +efuse_OneByteRead (padapter, eFuse_Addr++, &efuseHeader, false);if (efuseHeader ==0xFF )break ;
@@ -709,7 +704,7 @@ static void hal_ReadEFuse_WiFi(if (EXT_HEADER (efuseHeader)) {/* extended header */ offset =GET_HDR_OFFSET_2_0 (efuseHeader); -efuse_OneByteRead (padapter, eFuse_Addr++, &efuseExtHdr, bPseudoTest); +efuse_OneByteRead (padapter, eFuse_Addr++, &efuseExtHdr, false);if (ALL_WORDS_DISABLED (efuseExtHdr))continue ;
@@ -728,10 +723,10 @@ static void hal_ReadEFuse_WiFi(for (i =0 ; i <EFUSE_MAX_WORD_UNIT ; i++) {/* Check word enable condition in the section */ if (!(wden & (0x01 <<i))) { -efuse_OneByteRead (padapter, eFuse_Addr++, &efuseData, bPseudoTest); +efuse_OneByteRead (padapter, eFuse_Addr++, &efuseData, false); efuseTbl[addr] = efuseData; -efuse_OneByteRead (padapter, eFuse_Addr++, &efuseData, bPseudoTest); +efuse_OneByteRead (padapter, eFuse_Addr++, &efuseData, false); efuseTbl[addr+1 ] = efuseData; } addr +=2 ;
@@ -746,19 +741,12 @@ static void hal_ReadEFuse_WiFi( pbuf[i] = efuseTbl[_offset+i];/* Calculate Efuse utilization */ -EFUSE_GetEfuseDefinition (padapter,EFUSE_WIFI ,TYPE_AVAILABLE_EFUSE_BYTES_TOTAL , &total, bPseudoTest); +EFUSE_GetEfuseDefinition (padapter,EFUSE_WIFI ,TYPE_AVAILABLE_EFUSE_BYTES_TOTAL , &total, false); used = eFuse_Addr -1 ; efuse_usage = (u8)((used*100 )/total); -if (bPseudoTest) { -#ifdef HAL_EFUSE_MEMORY - pEfuseHal->fakeEfuseUsedBytes = used; -#else - fakeEfuseUsedBytes = used; -#endif - }else { -rtw_hal_set_hwreg (padapter,HW_VAR_EFUSE_BYTES , (u8 *)&used); -rtw_hal_set_hwreg (padapter,HW_VAR_EFUSE_USAGE , (u8 *)&efuse_usage); - } + +rtw_hal_set_hwreg (padapter,HW_VAR_EFUSE_BYTES , (u8 *)&used); +rtw_hal_set_hwreg (padapter,HW_VAR_EFUSE_USAGE , (u8 *)&efuse_usage);kfree (efuseTbl); }
@@ -887,7 +875,7 @@ void Hal_ReadEFuse( ) {if (efuseType ==EFUSE_WIFI ) -hal_ReadEFuse_WiFi (padapter, _offset, _size_byte, pbuf, false); +hal_ReadEFuse_WiFi (padapter, _offset, _size_byte, pbuf);else hal_ReadEFuse_BT (padapter, _offset, _size_byte, pbuf, false); }
Signature · 1 line
2.51.0
PATCH 7/14 staging: rtl8723bs: remove bPseudoTest from hal_ReadEFuse_BT
In reply to Michael StraubeThe function hal_ReadEFuse_BT is always called with bPseudoTest set to false. Remove the pPseudoTest parameter, replace its usage in the function with false, and reomve resulting dead code to reduce code complexity.
--- .../staging/rtl8723bs/hal/rtl8723b_hal_init.c | 38 +++++++------------ 1 file changed, 13 insertions(+), 25 deletions(-)
drivers/staging/rtl8723bs/hal/rtl8723b_hal_init.c +13 -25
@@ -755,14 +755,9 @@ static void hal_ReadEFuse_BT(struct adapter *padapter, u16 _offset, u16 _size_byte, - u8 *pbuf, - bool bPseudoTest + u8 *pbuf ) { -#ifdef HAL_EFUSE_MEMORY - struct hal_com_data *pHalData = GET_HAL_DATA(padapter); -struct efuse_hal *pEfuseHal = &pHalData->EfuseHal; -#endif u8 *efuseTbl;u8 bank;u16 eFuse_Addr;
@@ -785,16 +780,16 @@ static void hal_ReadEFuse_BT(/* 0xff will be efuse default value instead of 0x00. */ memset (efuseTbl,0xFF ,EFUSE_BT_MAP_LEN ); -EFUSE_GetEfuseDefinition (padapter,EFUSE_BT ,TYPE_AVAILABLE_EFUSE_BYTES_BANK , &total, bPseudoTest); +EFUSE_GetEfuseDefinition (padapter,EFUSE_BT ,TYPE_AVAILABLE_EFUSE_BYTES_BANK , &total, false);for (bank =1 ; bank <3 ; bank++) {/* 8723b Max bake 0~2 */ -if (hal_EfuseSwitchToBank (padapter, bank, bPseudoTest) == false) +if (hal_EfuseSwitchToBank (padapter, bank, false) == false) goto exit; eFuse_Addr =0 ;while (AVAILABLE_EFUSE_ADDR (eFuse_Addr)) { -efuse_OneByteRead (padapter, eFuse_Addr++, &efuseHeader, bPseudoTest); +efuse_OneByteRead (padapter, eFuse_Addr++, &efuseHeader, false);if (efuseHeader ==0xFF )break ;
@@ -802,7 +797,7 @@ static void hal_ReadEFuse_BT(if (EXT_HEADER (efuseHeader)) {/* extended header */ offset =GET_HDR_OFFSET_2_0 (efuseHeader); -efuse_OneByteRead (padapter, eFuse_Addr++, &efuseExtHdr, bPseudoTest); +efuse_OneByteRead (padapter, eFuse_Addr++, &efuseExtHdr, false);if (ALL_WORDS_DISABLED (efuseExtHdr))continue ;
@@ -820,10 +815,10 @@ static void hal_ReadEFuse_BT(for (i =0 ; i <EFUSE_MAX_WORD_UNIT ; i++) {/* Check word enable condition in the section */ if (!(wden & (0x01 <<i))) { -efuse_OneByteRead (padapter, eFuse_Addr++, &efuseData, bPseudoTest); +efuse_OneByteRead (padapter, eFuse_Addr++, &efuseData, false); efuseTbl[addr] = efuseData; -efuse_OneByteRead (padapter, eFuse_Addr++, &efuseData, bPseudoTest); +efuse_OneByteRead (padapter, eFuse_Addr++, &efuseData, false); efuseTbl[addr+1 ] = efuseData; } addr +=2 ;
@@ -839,7 +834,7 @@ static void hal_ReadEFuse_BT( }/* switch bank back to bank 0 for later BT and wifi use. */ -hal_EfuseSwitchToBank (padapter,0 , bPseudoTest); +hal_EfuseSwitchToBank (padapter,0 , false);/* Copy from Efuse map to output pointer memory!!! */ for (i =0 ; i < _size_byte; i++)
@@ -848,19 +843,12 @@ static void hal_ReadEFuse_BT(/* */ /* Calculate Efuse utilization. */ /* */ -EFUSE_GetEfuseDefinition (padapter,EFUSE_BT ,TYPE_AVAILABLE_EFUSE_BYTES_TOTAL , &total, bPseudoTest); +EFUSE_GetEfuseDefinition (padapter,EFUSE_BT ,TYPE_AVAILABLE_EFUSE_BYTES_TOTAL , &total, false); used = (EFUSE_BT_REAL_BANK_CONTENT_LEN *(bank-1 )) + eFuse_Addr -1 ; efuse_usage = (u8)((used*100 )/total); -if (bPseudoTest) { -#ifdef HAL_EFUSE_MEMORY - pEfuseHal->fakeBTEfuseUsedBytes = used; -#else - fakeBTEfuseUsedBytes = used; -#endif - }else { -rtw_hal_set_hwreg (padapter,HW_VAR_EFUSE_BT_BYTES , (u8 *)&used); -rtw_hal_set_hwreg (padapter,HW_VAR_EFUSE_BT_USAGE , (u8 *)&efuse_usage); - } + +rtw_hal_set_hwreg (padapter,HW_VAR_EFUSE_BT_BYTES , (u8 *)&used); +rtw_hal_set_hwreg (padapter,HW_VAR_EFUSE_BT_USAGE , (u8 *)&efuse_usage); exit:kfree (efuseTbl);
@@ -877,7 +865,7 @@ void Hal_ReadEFuse(if (efuseType ==EFUSE_WIFI )hal_ReadEFuse_WiFi (padapter, _offset, _size_byte, pbuf);else -hal_ReadEFuse_BT (padapter, _offset, _size_byte, pbuf, false); +hal_ReadEFuse_BT (padapter, _offset, _size_byte, pbuf); } static u16 hal_EfuseGetCurrentSize_WiFi(
Signature · 1 line
2.51.0
PATCH 8/14 staging: rtl8723bs: remove wrapper EFUSE_GetEfuseDefinition
In reply to Michael StraubeThe function EFUSE_GetEfuseDefinition is just a wrapper around Hal_GetEfuseDefinition. Remove the wrapper and use Hal_GetEfuseDefinition directly.
--- drivers/staging/rtl8723bs/core/rtw_efuse.c | 18 +++--------------- .../staging/rtl8723bs/hal/rtl8723b_hal_init.c | 10 +++++----- drivers/staging/rtl8723bs/include/rtw_efuse.h | 1 - 3 files changed, 8 insertions(+), 21 deletions(-)
drivers/staging/rtl8723bs/core/rtw_efuse.c +3 -15
@@ -97,18 +97,6 @@ Efuse_CalculateWordCnts(u8 word_en)return word_cnts; } -void -EFUSE_GetEfuseDefinition ( -struct adapter *padapter, -u8 efuseType, -u8 type, -void *pOut, -bool bPseudoTest - ) -{ -Hal_GetEfuseDefinition (padapter, efuseType, type, pOut, bPseudoTest); -} -/*----------------------------------------------------------------------------- * Function: EFUSE_Read1Byte *
@@ -135,7 +123,7 @@ u16 Address)u32 k =0 ;u16 contentLen =0 ; -EFUSE_GetEfuseDefinition (Adapter,EFUSE_WIFI ,TYPE_EFUSE_REAL_CONTENT_LEN , (void *)&contentLen, false); +Hal_GetEfuseDefinition (Adapter,EFUSE_WIFI ,TYPE_EFUSE_REAL_CONTENT_LEN , (void *)&contentLen, false);if (Address < contentLen) {/* E-fuse 512Byte */ /* Write E-fuse Register address bit0~7 */
@@ -269,7 +257,7 @@ static void Efuse_ReadAllMap(struct adapter *padapter, u8 efuseType, u8 *Efuse)Efuse_PowerSwitch (padapter, false, true); -EFUSE_GetEfuseDefinition (padapter, efuseType,TYPE_EFUSE_MAP_LEN , (void *)&mapLen, false); +Hal_GetEfuseDefinition (padapter, efuseType,TYPE_EFUSE_MAP_LEN , (void *)&mapLen, false);Hal_ReadEFuse (padapter, efuseType,0 , mapLen, Efuse);
@@ -345,7 +333,7 @@ void EFUSE_ShadowMapUpdate(struct adapter *padapter, u8 efuseType)struct eeprom_priv *pEEPROM =GET_EEPROM_EFUSE_PRIV (padapter);u16 mapLen =0 ; -EFUSE_GetEfuseDefinition (padapter, efuseType,TYPE_EFUSE_MAP_LEN , (void *)&mapLen, false); +Hal_GetEfuseDefinition (padapter, efuseType,TYPE_EFUSE_MAP_LEN , (void *)&mapLen, false);if (pEEPROM->bautoload_fail_flag)memset (pEEPROM->efuse_eeprom_data,0xFF , mapLen);
drivers/staging/rtl8723bs/hal/rtl8723b_hal_init.c +5 -5
@@ -741,7 +741,7 @@ static void hal_ReadEFuse_WiFi( pbuf[i] = efuseTbl[_offset+i];/* Calculate Efuse utilization */ -EFUSE_GetEfuseDefinition (padapter,EFUSE_WIFI ,TYPE_AVAILABLE_EFUSE_BYTES_TOTAL , &total, false); +Hal_GetEfuseDefinition (padapter,EFUSE_WIFI ,TYPE_AVAILABLE_EFUSE_BYTES_TOTAL , &total, false); used = eFuse_Addr -1 ; efuse_usage = (u8)((used*100 )/total);
@@ -780,7 +780,7 @@ static void hal_ReadEFuse_BT(/* 0xff will be efuse default value instead of 0x00. */ memset (efuseTbl,0xFF ,EFUSE_BT_MAP_LEN ); -EFUSE_GetEfuseDefinition (padapter,EFUSE_BT ,TYPE_AVAILABLE_EFUSE_BYTES_BANK , &total, false); +Hal_GetEfuseDefinition (padapter,EFUSE_BT ,TYPE_AVAILABLE_EFUSE_BYTES_BANK , &total, false);for (bank =1 ; bank <3 ; bank++) {/* 8723b Max bake 0~2 */ if (hal_EfuseSwitchToBank (padapter, bank, false) == false)
@@ -843,7 +843,7 @@ static void hal_ReadEFuse_BT(/* */ /* Calculate Efuse utilization. */ /* */ -EFUSE_GetEfuseDefinition (padapter,EFUSE_BT ,TYPE_AVAILABLE_EFUSE_BYTES_TOTAL , &total, false); +Hal_GetEfuseDefinition (padapter,EFUSE_BT ,TYPE_AVAILABLE_EFUSE_BYTES_TOTAL , &total, false); used = (EFUSE_BT_REAL_BANK_CONTENT_LEN *(bank-1 )) + eFuse_Addr -1 ; efuse_usage = (u8)((used*100 )/total);
@@ -952,7 +952,7 @@ static u16 hal_EfuseGetCurrentSize_WiFi( error:/* report max size to prevent write efuse */ -EFUSE_GetEfuseDefinition (padapter,EFUSE_WIFI ,TYPE_AVAILABLE_EFUSE_BYTES_TOTAL , &efuse_addr, bPseudoTest); +Hal_GetEfuseDefinition (padapter,EFUSE_WIFI ,TYPE_AVAILABLE_EFUSE_BYTES_TOTAL , &efuse_addr, bPseudoTest); exit:
@@ -984,7 +984,7 @@ static u16 hal_EfuseGetCurrentSize_BT(struct adapter *padapter, u8 bPseudoTest) efuse_addr = (u16)((btusedbytes%EFUSE_BT_REAL_BANK_CONTENT_LEN )); startBank = (u8)(1 +(btusedbytes/EFUSE_BT_REAL_BANK_CONTENT_LEN )); -EFUSE_GetEfuseDefinition (padapter,EFUSE_BT ,TYPE_AVAILABLE_EFUSE_BYTES_BANK , &retU2, bPseudoTest); +Hal_GetEfuseDefinition (padapter,EFUSE_BT ,TYPE_AVAILABLE_EFUSE_BYTES_BANK , &retU2, bPseudoTest);for (bank = startBank; bank <3 ; bank++) {if (hal_EfuseSwitchToBank (padapter, bank, bPseudoTest) == false)
drivers/staging/rtl8723bs/include/rtw_efuse.h +0 -1
@@ -91,7 +91,6 @@ extern u8 fakeBTEfuseModifiedMap[];/*------------------------Export global variable----------------------------*/ u8 Efuse_CalculateWordCnts (u8 word_en); -void EFUSE_GetEfuseDefinition (struct adapter *padapter,u8 efuseType,u8 type,void *pOut,bool bPseudoTest);u8 efuse_OneByteRead (struct adapter *padapter,u16 addr,u8 *data,bool bPseudoTest);u8 efuse_OneByteWrite (struct adapter *padapter,u16 addr,u8 data,bool bPseudoTest);
Signature · 1 line
2.51.0
PATCH 9/14 staging: rtl8723bs: remove bPseudoTest from Hal_GetEfuseDefinition
In reply to Michael StraubeThe bPseudoTEst parameter is not used in Hal_GetEfuseDefinition. Remove the unused parameter and adjust the function calls.
--- drivers/staging/rtl8723bs/core/rtw_efuse.c | 6 +++--- drivers/staging/rtl8723bs/hal/rtl8723b_hal_init.c | 13 ++++++------- drivers/staging/rtl8723bs/include/hal_intf.h | 2 +- 3 files changed, 10 insertions(+), 11 deletions(-)
drivers/staging/rtl8723bs/core/rtw_efuse.c +3 -3
@@ -123,7 +123,7 @@ u16 Address)u32 k =0 ;u16 contentLen =0 ; -Hal_GetEfuseDefinition (Adapter,EFUSE_WIFI ,TYPE_EFUSE_REAL_CONTENT_LEN , (void *)&contentLen, false); +Hal_GetEfuseDefinition (Adapter,EFUSE_WIFI ,TYPE_EFUSE_REAL_CONTENT_LEN , (void *)&contentLen);if (Address < contentLen) {/* E-fuse 512Byte */ /* Write E-fuse Register address bit0~7 */
@@ -257,7 +257,7 @@ static void Efuse_ReadAllMap(struct adapter *padapter, u8 efuseType, u8 *Efuse)Efuse_PowerSwitch (padapter, false, true); -Hal_GetEfuseDefinition (padapter, efuseType,TYPE_EFUSE_MAP_LEN , (void *)&mapLen, false); +Hal_GetEfuseDefinition (padapter, efuseType,TYPE_EFUSE_MAP_LEN , (void *)&mapLen);Hal_ReadEFuse (padapter, efuseType,0 , mapLen, Efuse);
@@ -333,7 +333,7 @@ void EFUSE_ShadowMapUpdate(struct adapter *padapter, u8 efuseType)struct eeprom_priv *pEEPROM =GET_EEPROM_EFUSE_PRIV (padapter);u16 mapLen =0 ; -Hal_GetEfuseDefinition (padapter, efuseType,TYPE_EFUSE_MAP_LEN , (void *)&mapLen, false); +Hal_GetEfuseDefinition (padapter, efuseType,TYPE_EFUSE_MAP_LEN , (void *)&mapLen);if (pEEPROM->bautoload_fail_flag)memset (pEEPROM->efuse_eeprom_data,0xFF , mapLen);
drivers/staging/rtl8723bs/hal/rtl8723b_hal_init.c +6 -7
@@ -494,8 +494,7 @@ void Hal_GetEfuseDefinition( struct adapter *padapter, u8 efuseType, u8 type, - void *pOut, - bool bPseudoTest + void *pOut ) { switch (type) {
@@ -741,7 +740,7 @@ static void hal_ReadEFuse_WiFi( pbuf[i] = efuseTbl[_offset+i];/* Calculate Efuse utilization */ -Hal_GetEfuseDefinition (padapter,EFUSE_WIFI ,TYPE_AVAILABLE_EFUSE_BYTES_TOTAL , &total, false); +Hal_GetEfuseDefinition (padapter,EFUSE_WIFI ,TYPE_AVAILABLE_EFUSE_BYTES_TOTAL , &total); used = eFuse_Addr -1 ; efuse_usage = (u8)((used*100 )/total);
@@ -780,7 +779,7 @@ static void hal_ReadEFuse_BT(/* 0xff will be efuse default value instead of 0x00. */ memset (efuseTbl,0xFF ,EFUSE_BT_MAP_LEN ); -Hal_GetEfuseDefinition (padapter,EFUSE_BT ,TYPE_AVAILABLE_EFUSE_BYTES_BANK , &total, false); +Hal_GetEfuseDefinition (padapter,EFUSE_BT ,TYPE_AVAILABLE_EFUSE_BYTES_BANK , &total);for (bank =1 ; bank <3 ; bank++) {/* 8723b Max bake 0~2 */ if (hal_EfuseSwitchToBank (padapter, bank, false) == false)
@@ -843,7 +842,7 @@ static void hal_ReadEFuse_BT(/* */ /* Calculate Efuse utilization. */ /* */ -Hal_GetEfuseDefinition (padapter,EFUSE_BT ,TYPE_AVAILABLE_EFUSE_BYTES_TOTAL , &total, false); +Hal_GetEfuseDefinition (padapter,EFUSE_BT ,TYPE_AVAILABLE_EFUSE_BYTES_TOTAL , &total); used = (EFUSE_BT_REAL_BANK_CONTENT_LEN *(bank-1 )) + eFuse_Addr -1 ; efuse_usage = (u8)((used*100 )/total);
@@ -952,7 +951,7 @@ static u16 hal_EfuseGetCurrentSize_WiFi( error:/* report max size to prevent write efuse */ -Hal_GetEfuseDefinition (padapter,EFUSE_WIFI ,TYPE_AVAILABLE_EFUSE_BYTES_TOTAL , &efuse_addr, bPseudoTest); +Hal_GetEfuseDefinition (padapter,EFUSE_WIFI ,TYPE_AVAILABLE_EFUSE_BYTES_TOTAL , &efuse_addr); exit:
@@ -984,7 +983,7 @@ static u16 hal_EfuseGetCurrentSize_BT(struct adapter *padapter, u8 bPseudoTest) efuse_addr = (u16)((btusedbytes%EFUSE_BT_REAL_BANK_CONTENT_LEN )); startBank = (u8)(1 +(btusedbytes/EFUSE_BT_REAL_BANK_CONTENT_LEN )); -Hal_GetEfuseDefinition (padapter,EFUSE_BT ,TYPE_AVAILABLE_EFUSE_BYTES_BANK , &retU2, bPseudoTest); +Hal_GetEfuseDefinition (padapter,EFUSE_BT ,TYPE_AVAILABLE_EFUSE_BYTES_BANK , &retU2);for (bank = startBank; bank <3 ; bank++) {if (hal_EfuseSwitchToBank (padapter, bank, bPseudoTest) == false)
drivers/staging/rtl8723bs/include/hal_intf.h +1 -1
@@ -269,7 +269,7 @@ void Hal_EfusePowerSwitch(struct adapter *padapter, u8 bWrite, u8 PwrState);void Hal_ReadEFuse (struct adapter *padapter,u8 efuseType,u16 _offset,u16 _size_byte,u8 *pbuf);void Hal_GetEfuseDefinition (struct adapter *padapter,u8 efuseType,u8 type, -void *pOut,bool bPseudoTest); +void *pOut);u16 Hal_EfuseGetCurrentSize (struct adapter *padapter,u8 efuseType,bool bPseudoTest);void hal_notch_filter_8723b (struct adapter *adapter,bool enable);#endif /* __HAL_INTF_H__ */
Signature · 1 line
2.51.0
PATCH 10/14 staging: rtl8723bs: remove Hal_EfuseGetCurrentSize
In reply to Michael StraubeThe function Hal_EfuseGetCurrentSize is not used in the driver code, remove it to get rid of dead code. As Hal_EfuseGetCurrentSize is the only caller of hal_EfuseGetCurrentSize_WiFi and hal_EfuseGetCurrentSize_BT we can remove these two functions as well.
--- .../staging/rtl8723bs/hal/rtl8723b_hal_init.c | 184 ------------------ drivers/staging/rtl8723bs/include/hal_intf.h | 1 - 2 files changed, 185 deletions(-)
drivers/staging/rtl8723bs/hal/rtl8723b_hal_init.c +0 -184
@@ -867,190 +867,6 @@ void Hal_ReadEFuse(hal_ReadEFuse_BT (padapter, _offset, _size_byte, pbuf); } -static u16 hal_EfuseGetCurrentSize_WiFi ( -struct adapter *padapter,bool bPseudoTest -) -{ -#ifdef HAL_EFUSE_MEMORY -struct hal_com_data *pHalData =GET_HAL_DATA (padapter); -struct efuse_hal *pEfuseHal = &pHalData->EfuseHal; -#endif -u16 efuse_addr =0 ; -u16 start_addr =0 ;/* for debug */ -u8 hworden =0 ; -u8 efuse_data, word_cnts =0 ; -u32 count =0 ;/* for debug */ - - -if (bPseudoTest) { -#ifdef HAL_EFUSE_MEMORY - efuse_addr = (u16 )pEfuseHal->fakeEfuseUsedBytes; -#else - efuse_addr = (u16 )fakeEfuseUsedBytes; -#endif - }else -rtw_hal_get_hwreg (padapter,HW_VAR_EFUSE_BYTES , (u8 *)&efuse_addr); - - start_addr = efuse_addr; - -/* switch bank back to bank 0 for later BT and wifi use. */ -hal_EfuseSwitchToBank (padapter,0 , bPseudoTest); - - count =0 ; -while (AVAILABLE_EFUSE_ADDR (efuse_addr)) { -if (efuse_OneByteRead (padapter, efuse_addr, &efuse_data, bPseudoTest) == false) - goto error; - -if (efuse_data ==0xFF ) -break ; - -if ((start_addr !=0 ) && (efuse_addr == start_addr)) { - count++; - - efuse_data =0xFF ; -if (count <4 ) { -/* try again! */ - -if (count >2 ) { -/* try again form address 0 */ - efuse_addr =0 ; - start_addr =0 ; - } - -continue ; - } - - goto error; - } - -if (EXT_HEADER (efuse_data)) { - efuse_addr++; -efuse_OneByteRead (padapter, efuse_addr, &efuse_data, bPseudoTest); -if (ALL_WORDS_DISABLED (efuse_data)) -continue ; - - hworden = efuse_data &0x0F ; - }else { - hworden = efuse_data &0x0F ; - } - - word_cnts =Efuse_CalculateWordCnts (hworden); - efuse_addr += (word_cnts*2 )+1 ; - } - -if (bPseudoTest) { -#ifdef HAL_EFUSE_MEMORY - pEfuseHal->fakeEfuseUsedBytes = efuse_addr; -#else - fakeEfuseUsedBytes = efuse_addr; -#endif - }else -rtw_hal_set_hwreg (padapter,HW_VAR_EFUSE_BYTES , (u8 *)&efuse_addr); - - goto exit; - -error: -/* report max size to prevent write efuse */ -Hal_GetEfuseDefinition (padapter,EFUSE_WIFI ,TYPE_AVAILABLE_EFUSE_BYTES_TOTAL , &efuse_addr); - -exit: - -return efuse_addr; -} - -static u16 hal_EfuseGetCurrentSize_BT (struct adapter *padapter,u8 bPseudoTest) -{ -#ifdef HAL_EFUSE_MEMORY -struct hal_com_data *pHalData =GET_HAL_DATA (padapter); -struct efuse_hal *pEfuseHal = &pHalData->EfuseHal; -#endif -u16 btusedbytes; -u16 efuse_addr; -u8 bank, startBank; -u8 hworden =0 ; -u8 efuse_data, word_cnts =0 ; -u16 retU2 =0 ; - -if (bPseudoTest) { -#ifdef HAL_EFUSE_MEMORY - btusedbytes = pEfuseHal->fakeBTEfuseUsedBytes; -#else - btusedbytes = fakeBTEfuseUsedBytes; -#endif - }else -rtw_hal_get_hwreg (padapter,HW_VAR_EFUSE_BT_BYTES , (u8 *)&btusedbytes); - - efuse_addr = (u16)((btusedbytes%EFUSE_BT_REAL_BANK_CONTENT_LEN )); - startBank = (u8)(1 +(btusedbytes/EFUSE_BT_REAL_BANK_CONTENT_LEN )); - -Hal_GetEfuseDefinition (padapter,EFUSE_BT ,TYPE_AVAILABLE_EFUSE_BYTES_BANK , &retU2); - -for (bank = startBank; bank <3 ; bank++) { -if (hal_EfuseSwitchToBank (padapter, bank, bPseudoTest) == false) -/* bank = EFUSE_MAX_BANK; */ -break ; - -/* only when bank is switched we have to reset the efuse_addr. */ -if (bank != startBank) - efuse_addr =0 ; - -while (AVAILABLE_EFUSE_ADDR (efuse_addr)) { -if (efuse_OneByteRead (padapter, efuse_addr, - &efuse_data, bPseudoTest) == false) -/* bank = EFUSE_MAX_BANK; */ -break ; - -if (efuse_data ==0xFF ) -break ; - -if (EXT_HEADER (efuse_data)) { - efuse_addr++; -efuse_OneByteRead (padapter, efuse_addr, &efuse_data, bPseudoTest); - -if (ALL_WORDS_DISABLED (efuse_data)) { - efuse_addr++; -continue ; - } - - hworden = efuse_data &0x0F ; - }else { - hworden = efuse_data &0x0F ; - } - - word_cnts =Efuse_CalculateWordCnts (hworden); -/* read next header */ - efuse_addr += (word_cnts*2 )+1 ; - } - -/* Check if we need to check next bank efuse */ -if (efuse_addr < retU2) -break ;/* don't need to check next bank. */ - } - - retU2 = ((bank-1 )*EFUSE_BT_REAL_BANK_CONTENT_LEN )+efuse_addr; -if (bPseudoTest) { - pEfuseHal->fakeBTEfuseUsedBytes = retU2; - }else { - pEfuseHal->BTEfuseUsedBytes = retU2; - } - -return retU2; -} - -u16 Hal_EfuseGetCurrentSize ( -struct adapter *padapter,u8 efuseType,bool bPseudoTest -) -{ -u16 ret =0 ; - -if (efuseType ==EFUSE_WIFI ) - ret =hal_EfuseGetCurrentSize_WiFi (padapter, bPseudoTest); -else - ret =hal_EfuseGetCurrentSize_BT (padapter, bPseudoTest); - -return ret; -} -static struct hal_version ReadChipVersion8723B (struct adapter *padapter) {u32 value32;
drivers/staging/rtl8723bs/include/hal_intf.h +0 -1
@@ -270,6 +270,5 @@ void Hal_ReadEFuse(struct adapter *padapter, u8 efuseType, u16 _offset, u16 _size_byte, u8 *pbuf);void Hal_GetEfuseDefinition (struct adapter *padapter,u8 efuseType,u8 type,void *pOut); -u16 Hal_EfuseGetCurrentSize (struct adapter *padapter,u8 efuseType,bool bPseudoTest);void hal_notch_filter_8723b (struct adapter *adapter,bool enable);#endif /* __HAL_INTF_H__ */
Signature · 1 line
2.51.0
PATCH 11/14 staging: rtl8723bs: remove bPseudoTest from hal_EfuseSwitchToBank
In reply to Michael StraubeThe function hal_EfuseSwitchToBank is always called with bPseudoTest set to false. Remove the pPseudoTest parameter and reomve resulting dead code to reduce code complexity.
--- .../staging/rtl8723bs/hal/rtl8723b_hal_init.c | 62 +++++++------------ 1 file changed, 24 insertions(+), 38 deletions(-)
drivers/staging/rtl8723bs/hal/rtl8723b_hal_init.c +24 -38
@@ -445,47 +445,33 @@ void rtl8723b_InitializeFirmwareVars(struct adapter *padapter)/* Efuse related code */ /* */ static u8 hal_EfuseSwitchToBank ( -struct adapter *padapter,u8 bank,bool bPseudoTest +struct adapter *padapter,u8 bank ) {u8 bRet = false;u32 value32 =0 ; -#ifdef HAL_EFUSE_MEMORY -struct hal_com_data *pHalData =GET_HAL_DATA (padapter); -struct efuse_hal *pEfuseHal = &pHalData->EfuseHal; -#endif - -if (bPseudoTest) { -#ifdef HAL_EFUSE_MEMORY - pEfuseHal->fakeEfuseBank = bank; -#else - fakeEfuseBank = bank; -#endif - bRet = true; - }else { - value32 =rtw_read32 (padapter,EFUSE_TEST ); - bRet = true; -switch (bank) { -case 0 : - value32 = (value32 & ~EFUSE_SEL_MASK ) |EFUSE_SEL (EFUSE_WIFI_SEL_0 ); -break ; -case 1 : - value32 = (value32 & ~EFUSE_SEL_MASK ) |EFUSE_SEL (EFUSE_BT_SEL_0 ); -break ; -case 2 : - value32 = (value32 & ~EFUSE_SEL_MASK ) |EFUSE_SEL (EFUSE_BT_SEL_1 ); -break ; -case 3 : - value32 = (value32 & ~EFUSE_SEL_MASK ) |EFUSE_SEL (EFUSE_BT_SEL_2 ); -break ; -default : - value32 = (value32 & ~EFUSE_SEL_MASK ) |EFUSE_SEL (EFUSE_WIFI_SEL_0 ); - bRet = false; -break ; - } -rtw_write32 (padapter,EFUSE_TEST , value32); + value32 =rtw_read32 (padapter,EFUSE_TEST ); + bRet = true; +switch (bank) { +case 0 : + value32 = (value32 & ~EFUSE_SEL_MASK ) |EFUSE_SEL (EFUSE_WIFI_SEL_0 ); +break ; +case 1 : + value32 = (value32 & ~EFUSE_SEL_MASK ) |EFUSE_SEL (EFUSE_BT_SEL_0 ); +break ; +case 2 : + value32 = (value32 & ~EFUSE_SEL_MASK ) |EFUSE_SEL (EFUSE_BT_SEL_1 ); +break ; +case 3 : + value32 = (value32 & ~EFUSE_SEL_MASK ) |EFUSE_SEL (EFUSE_BT_SEL_2 ); +break ; +default : + value32 = (value32 & ~EFUSE_SEL_MASK ) |EFUSE_SEL (EFUSE_WIFI_SEL_0 ); + bRet = false; +break ; } +rtw_write32 (padapter,EFUSE_TEST , value32);return bRet; }
@@ -692,7 +678,7 @@ static void hal_ReadEFuse_WiFi(memset (efuseTbl,0xFF ,EFUSE_MAX_MAP_LEN );/* switch bank back to bank 0 for later BT and wifi use. */ -hal_EfuseSwitchToBank (padapter,0 , false); +hal_EfuseSwitchToBank (padapter,0 );while (AVAILABLE_EFUSE_ADDR (eFuse_Addr)) {efuse_OneByteRead (padapter, eFuse_Addr++, &efuseHeader, false);
@@ -782,7 +768,7 @@ static void hal_ReadEFuse_BT(Hal_GetEfuseDefinition (padapter,EFUSE_BT ,TYPE_AVAILABLE_EFUSE_BYTES_BANK , &total);for (bank =1 ; bank <3 ; bank++) {/* 8723b Max bake 0~2 */ -if (hal_EfuseSwitchToBank (padapter, bank, false) == false) +if (hal_EfuseSwitchToBank (padapter, bank) == false) goto exit; eFuse_Addr =0 ;
@@ -833,7 +819,7 @@ static void hal_ReadEFuse_BT( }/* switch bank back to bank 0 for later BT and wifi use. */ -hal_EfuseSwitchToBank (padapter,0 , false); +hal_EfuseSwitchToBank (padapter,0 );/* Copy from Efuse map to output pointer memory!!! */ for (i =0 ; i < _size_byte; i++)
Signature · 1 line
2.51.0
PATCH 12/14 staging: rtl8723bs: clean up variable initializations
In reply to Michael StraubeAfter previous cleanup patches the variable initializations in hal_EfuseSwitchToBank are messed up a little, but were left as-is to make reviewing easier. For example bRet is initialized to false and immediately set to true. This patch cleans up the variable initializations.
--- drivers/staging/rtl8723bs/hal/rtl8723b_hal_init.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-)
drivers/staging/rtl8723bs/hal/rtl8723b_hal_init.c +2 -4
@@ -448,11 +448,9 @@ static u8 hal_EfuseSwitchToBank( struct adapter *padapter, u8 bank ) { -u8 bRet = false; -u32 value32 =0 ; +u8 bRet = true; +u32 value32 =rtw_read32 (padapter,EFUSE_TEST ); - value32 =rtw_read32 (padapter,EFUSE_TEST ); - bRet = true;switch (bank) {case 0 : value32 = (value32 & ~EFUSE_SEL_MASK ) |EFUSE_SEL (EFUSE_WIFI_SEL_0 );
Signature · 1 line
2.51.0
PATCH 13/14 staging: rtl8723bs: remove bPseudoTest from efuse_OneByteRead
In reply to Michael StraubeThe function efuse_OneByteRead is always called with bPseudoTest set to false. Remove the pPseudoTest parameter and reomve resulting dead code to reduce code complexity.
--- drivers/staging/rtl8723bs/core/rtw_efuse.c | 18 +----------------- .../staging/rtl8723bs/hal/rtl8723b_hal_init.c | 18 +++++++++--------- drivers/staging/rtl8723bs/include/rtw_efuse.h | 2 +- 3 files changed, 11 insertions(+), 27 deletions(-)
drivers/staging/rtl8723bs/core/rtw_efuse.c +1 -17
@@ -29,18 +29,6 @@ u8 fakeBTEfuseModifiedMap[EFUSE_BT_MAX_MAP_LEN] = {0};#define REG_EFUSE_CTRL 0x0030#define EFUSE_CTRL REG_EFUSE_CTRL/* E-Fuse Control. */ -static bool -Efuse_Read1ByteFromFakeContent (u16 Offset,u8 *Value) -{ -if (Offset >=EFUSE_MAX_HW_SIZE ) -return false; -if (fakeEfuseBank ==0 ) - *Value = fakeEfuseContent[Offset]; -else - *Value = fakeBTEfuseContent[fakeEfuseBank -1 ][Offset]; -return true; -} -static bool Efuse_Write1ByteToFakeContent (u16 Offset,u8 Value) {
@@ -158,16 +146,12 @@ u8efuse_OneByteRead ( struct adapter *padapter, u16 addr, -u8 *data, -bool bPseudoTest) +u8 *data) { u32 tmpidx = 0;u8 bResult;u8 readbyte; -if (bPseudoTest) -return Efuse_Read1ByteFromFakeContent (addr, data); -/* <20130121, Kordan> For SMIC EFUSE specificatoin. */ /* 0x34[11]: SW force PGMEN input of efuse to high. (for the bank selected by 0x34[9:8]) */ /* PHY_SetMacReg(padapter, 0x34, BIT11, 0); */
drivers/staging/rtl8723bs/hal/rtl8723b_hal_init.c +9 -9
@@ -679,7 +679,7 @@ static void hal_ReadEFuse_WiFi(hal_EfuseSwitchToBank (padapter,0 );while (AVAILABLE_EFUSE_ADDR (eFuse_Addr)) { -efuse_OneByteRead (padapter, eFuse_Addr++, &efuseHeader, false); +efuse_OneByteRead (padapter, eFuse_Addr++, &efuseHeader);if (efuseHeader ==0xFF )break ;
@@ -687,7 +687,7 @@ static void hal_ReadEFuse_WiFi(if (EXT_HEADER (efuseHeader)) {/* extended header */ offset =GET_HDR_OFFSET_2_0 (efuseHeader); -efuse_OneByteRead (padapter, eFuse_Addr++, &efuseExtHdr, false); +efuse_OneByteRead (padapter, eFuse_Addr++, &efuseExtHdr);if (ALL_WORDS_DISABLED (efuseExtHdr))continue ;
@@ -706,10 +706,10 @@ static void hal_ReadEFuse_WiFi(for (i =0 ; i <EFUSE_MAX_WORD_UNIT ; i++) {/* Check word enable condition in the section */ if (!(wden & (0x01 <<i))) { -efuse_OneByteRead (padapter, eFuse_Addr++, &efuseData, false); +efuse_OneByteRead (padapter, eFuse_Addr++, &efuseData); efuseTbl[addr] = efuseData; -efuse_OneByteRead (padapter, eFuse_Addr++, &efuseData, false); +efuse_OneByteRead (padapter, eFuse_Addr++, &efuseData); efuseTbl[addr+1 ] = efuseData; } addr +=2 ;
@@ -772,7 +772,7 @@ static void hal_ReadEFuse_BT( eFuse_Addr =0 ;while (AVAILABLE_EFUSE_ADDR (eFuse_Addr)) { -efuse_OneByteRead (padapter, eFuse_Addr++, &efuseHeader, false); +efuse_OneByteRead (padapter, eFuse_Addr++, &efuseHeader);if (efuseHeader ==0xFF )break ;
@@ -780,7 +780,7 @@ static void hal_ReadEFuse_BT(if (EXT_HEADER (efuseHeader)) {/* extended header */ offset =GET_HDR_OFFSET_2_0 (efuseHeader); -efuse_OneByteRead (padapter, eFuse_Addr++, &efuseExtHdr, false); +efuse_OneByteRead (padapter, eFuse_Addr++, &efuseExtHdr);if (ALL_WORDS_DISABLED (efuseExtHdr))continue ;
@@ -798,10 +798,10 @@ static void hal_ReadEFuse_BT(for (i =0 ; i <EFUSE_MAX_WORD_UNIT ; i++) {/* Check word enable condition in the section */ if (!(wden & (0x01 <<i))) { -efuse_OneByteRead (padapter, eFuse_Addr++, &efuseData, false); +efuse_OneByteRead (padapter, eFuse_Addr++, &efuseData); efuseTbl[addr] = efuseData; -efuse_OneByteRead (padapter, eFuse_Addr++, &efuseData, false); +efuse_OneByteRead (padapter, eFuse_Addr++, &efuseData); efuseTbl[addr+1 ] = efuseData; } addr +=2 ;
@@ -1475,7 +1475,7 @@ void Hal_EfuseParsePackageType_8723B(u8 efuseContent;Efuse_PowerSwitch (padapter, false, true); -efuse_OneByteRead (padapter,0x1FB , &efuseContent, false); +efuse_OneByteRead (padapter,0x1FB , &efuseContent);Efuse_PowerSwitch (padapter, false, false); package = efuseContent &0x7 ;
drivers/staging/rtl8723bs/include/rtw_efuse.h +1 -1
@@ -91,7 +91,7 @@ extern u8 fakeBTEfuseModifiedMap[];/*------------------------Export global variable----------------------------*/ u8 Efuse_CalculateWordCnts (u8 word_en); -u8 efuse_OneByteRead (struct adapter *padapter,u16 addr,u8 *data,bool bPseudoTest); +u8 efuse_OneByteRead (struct adapter *padapter,u16 addr,u8 *data);u8 efuse_OneByteWrite (struct adapter *padapter,u16 addr,u8 data,bool bPseudoTest);void Efuse_PowerSwitch (struct adapter *padapter,u8 bWrite,u8 PwrState);
Signature · 1 line
2.51.0
PATCH 14/14 staging: rtl8723bs: remove efuse_OneByteWrite
In reply to Michael StraubeThe function efuse_OneByteWrite is not used. Remove it and remove related dead code, namely the function Efuse_Write1ByteToFakeContent.
--- drivers/staging/rtl8723bs/core/rtw_efuse.c | 48 ------------------- drivers/staging/rtl8723bs/include/rtw_efuse.h | 1 - 2 files changed, 49 deletions(-)
drivers/staging/rtl8723bs/core/rtw_efuse.c +0 -48
@@ -29,18 +29,6 @@ u8 fakeBTEfuseModifiedMap[EFUSE_BT_MAX_MAP_LEN] = {0};#define REG_EFUSE_CTRL 0x0030#define EFUSE_CTRL REG_EFUSE_CTRL/* E-Fuse Control. */ -static bool -Efuse_Write1ByteToFakeContent (u16 Offset,u8 Value) -{ -if (Offset >=EFUSE_MAX_HW_SIZE ) -return false; -if (fakeEfuseBank ==0 ) - fakeEfuseContent[Offset] = Value; -else - fakeBTEfuseContent[fakeEfuseBank -1 ][Offset] = Value; -return true; -} -/*----------------------------------------------------------------------------- * Function: Efuse_PowerSwitch *
@@ -183,42 +171,6 @@ u8 *data)return bResult; } -/* 11/16/2008 MH Write one byte to reald Efuse. */ -u8 efuse_OneByteWrite (struct adapter *padapter,u16 addr,u8 data,bool bPseudoTest) -{ -u8 tmpidx =0 ; -u8 bResult = false; - -if (bPseudoTest) -return Efuse_Write1ByteToFakeContent (addr, data); - -/* -----------------e-fuse reg ctrl --------------------------------- */ -/* address */ - -/* <20130227, Kordan> 8192E MP chip A-cut had better not set 0x34[11] until B-Cut. */ - -/* <20130121, Kordan> For SMIC EFUSE specificatoin. */ -/* 0x34[11]: SW force PGMEN input of efuse to high. (for the bank selected by 0x34[9:8]) */ -/* PHY_SetMacReg(padapter, 0x34, BIT11, 1); */ -rtw_write16 (padapter,0x34 ,rtw_read16 (padapter,0x34 ) | (BIT11 )); -rtw_write32 (padapter,EFUSE_CTRL ,0x90600000 | ((addr <<8 | data))); - -while ((0x80 &rtw_read8 (padapter,EFUSE_CTRL +3 )) && (tmpidx <100 )) { -mdelay (1 ); - tmpidx++; - } - -if (tmpidx <100 ) - bResult = true; -else - bResult = false; - -/* disable Efuse program enable */ -PHY_SetMacReg (padapter,EFUSE_TEST ,BIT (11 ),0 ); - -return bResult; -} -/*----------------------------------------------------------------------------- * Function: Efuse_ReadAllMap *
drivers/staging/rtl8723bs/include/rtw_efuse.h +0 -1
@@ -92,7 +92,6 @@ extern u8 fakeBTEfuseModifiedMap[];u8 Efuse_CalculateWordCnts (u8 word_en);u8 efuse_OneByteRead (struct adapter *padapter,u16 addr,u8 *data); -u8 efuse_OneByteWrite (struct adapter *padapter,u16 addr,u8 data,bool bPseudoTest);void Efuse_PowerSwitch (struct adapter *padapter,u8 bWrite,u8 PwrState);
Signature · 1 line
2.51.0