Skip to contentSkip to conversation

staging: r8188eu: remove HW_VAR_SLOT_TIME from SetHwReg8188EU()

PATCH In review Michael Straube 4 participants 6 messages Jun 6, 2022 – Jun 8, 2022 Staging

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 staging: r8188eu: remove HW_VAR_SLOT_TIME from SetHwReg8188EU()

In order to get rid of the function SetHwReg8188EU() remove the HW_VAR_SLOT_TIME case from that function and move the functionality into a static function in rtw_wlan_util.c.

---
 drivers/staging/r8188eu/core/rtw_wlan_util.c | 26 +++++++++++++++++++-
 drivers/staging/r8188eu/hal/usb_halinit.c    | 24 ------------------
 drivers/staging/r8188eu/include/hal_intf.h   |  1 -
 3 files changed, 25 insertions(+), 26 deletions(-)
drivers/staging/r8188eu/core/rtw_wlan_util.c +25 -1
index 392a65783f32..9f0a823b6e52 100644
@@ -1348,6 +1348,30 @@ static void set_ack_preamble(struct adapter *adapter, bool short_preamble)
 	rtw_write8(adapter, REG_RRSR + 2, val8);
 };
 
+static void set_slot_time(struct adapter *adapter, u8 slot_time)
+{
+	u8 u1bAIFS, aSifsTime;
+	struct mlme_ext_priv *pmlmeext = &adapter->mlmeextpriv;
+	struct mlme_ext_info *pmlmeinfo = &pmlmeext->mlmext_info;
+
+	rtw_write8(adapter, REG_SLOT, slot_time);
+
+	if (pmlmeinfo->WMM_enable == 0) {
+		if (pmlmeext->cur_wireless_mode == WIRELESS_11B)
+			aSifsTime = 10;
+		else
+			aSifsTime = 16;
+
+		u1bAIFS = aSifsTime + (2 * pmlmeinfo->slotTime);
+
+		/*  <Roger_EXP> Temporary removed, 2008.06.20. */
+		rtw_write8(adapter, REG_EDCA_VO_PARAM, u1bAIFS);
+		rtw_write8(adapter, REG_EDCA_VI_PARAM, u1bAIFS);
+		rtw_write8(adapter, REG_EDCA_BE_PARAM, u1bAIFS);
+		rtw_write8(adapter, REG_EDCA_BK_PARAM, u1bAIFS);
+	}
+}
+
 void update_capinfo(struct adapter *Adapter, u16 updateCap)
 {
 	struct mlme_ext_priv	*pmlmeext = &Adapter->mlmeextpriv;
@@ -1386,7 +1410,7 @@ void update_capinfo(struct adapter *Adapter, u16 updateCap)
 		}
 	}
 
-	SetHwReg8188EU(Adapter, HW_VAR_SLOT_TIME, &pmlmeinfo->slotTime);
+	set_slot_time(Adapter, pmlmeinfo->slotTime);
 }
 
 void update_wireless_mode(struct adapter *padapter)
drivers/staging/r8188eu/hal/usb_halinit.c +0 -24
index a217272a07f8..895619fea501 100644
@@ -1036,30 +1036,6 @@ void SetHwReg8188EU(struct adapter *Adapter, u8 variable, u8 *val)
 			rtw_write32(Adapter, REG_RCR, rtw_read32(Adapter, REG_RCR) | RCR_CBSSID_BCN);
 		}
 		break;
-	case HW_VAR_SLOT_TIME:
-		{
-			u8 u1bAIFS, aSifsTime;
-			struct mlme_ext_priv	*pmlmeext = &Adapter->mlmeextpriv;
-			struct mlme_ext_info	*pmlmeinfo = &pmlmeext->mlmext_info;
-
-			rtw_write8(Adapter, REG_SLOT, val[0]);
-
-			if (pmlmeinfo->WMM_enable == 0) {
-				if (pmlmeext->cur_wireless_mode == WIRELESS_11B)
-					aSifsTime = 10;
-				else
-					aSifsTime = 16;
-
-				u1bAIFS = aSifsTime + (2 * pmlmeinfo->slotTime);
-
-				/*  <Roger_EXP> Temporary removed, 2008.06.20. */
-				rtw_write8(Adapter, REG_EDCA_VO_PARAM, u1bAIFS);
-				rtw_write8(Adapter, REG_EDCA_VI_PARAM, u1bAIFS);
-				rtw_write8(Adapter, REG_EDCA_BE_PARAM, u1bAIFS);
-				rtw_write8(Adapter, REG_EDCA_BK_PARAM, u1bAIFS);
-			}
-		}
-		break;
 	case HW_VAR_DM_FLAG:
 		podmpriv->SupportAbility = *((u8 *)val);
 		break;
drivers/staging/r8188eu/include/hal_intf.h +0 -1
index a56f3d6ca399..0104ee463a10 100644
@@ -13,7 +13,6 @@ enum hw_variables {
 	HW_VAR_BASIC_RATE,
 	HW_VAR_CORRECT_TSF,
 	HW_VAR_MLME_SITESURVEY,
-	HW_VAR_SLOT_TIME,
 	HW_VAR_DM_FLAG,
 	HW_VAR_DM_FUNC_OP,
 	HW_VAR_DM_FUNC_RESET,
Signature · 1 line
2.36.1
#1 lore raw

[BUG] staging: r8188eu: driver stopped working with commit ("staging: r8188eu: add check for kzalloc")

Hi all,

The driver does not work anymore on my system. In dmesg there is:

"r8188eu 1-4:1.0: _rtw_init_xmit_priv failed"

I bisected it to commit f94b47c6bde ("staging: r8188eu: add check for kzalloc").

~/kernels/staging> git bisect bad f94b47c6bde624d6c07f43054087607c52054a95 is the first bad commit

At the moment I have no time to look further into it.

regards,
Michael

dmesg after plugging in the device:

[15075.514705] usb 1-4: new high-speed USB device number 4 using xhci_hcd
[15075.750717] usb 1-4: New USB device found, idVendor=0bda, idProduct=8179, bcdDevice= 0.00
[15075.750729] usb 1-4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[15075.750734] usb 1-4: Product: 802.11n NIC
[15075.750738] usb 1-4: Manufacturer: Realtek
[15075.750742] usb 1-4: SerialNumber: 200DB02CEF8F
[15075.767685] Chip Version Info: CHIP_8188E_Normal_Chip_TSMC_D_CUT_1T1R_RomVer(0)
[15076.121994] EEPROM ID = 0x8129
[15076.123218] r8188eu 1-4:1.0: _rtw_init_xmit_priv failed
[15076.321389] usb 1-4: reset high-speed USB device number 4 using xhci_hcd
#2 lore raw

Re: [BUG] staging: r8188eu: driver stopped working with commit ("staging: r8188eu: add check for kzalloc")

Hi Michael & Phil,

Thus wrote Michael Straube ([email protected]):

Quoted 11 lines

The driver does not work anymore on my system. In dmesg there is:

"r8188eu 1-4:1.0: _rtw_init_xmit_priv failed"

I bisected it to commit f94b47c6bde ("staging: r8188eu: add check for kzalloc").

~/kernels/staging> git bisect bad f94b47c6bde624d6c07f43054087607c52054a95 is the first bad commit

At the moment I have no time to look further into it.

See also

https://lore.kernel.org/linux-staging/[email protected]/T/#mb5e56a285b8eb1ebb0e798462fc388cb02b4a7cc

Phil said in

https://lore.kernel.org/linux-staging/[email protected]/T/#m7a21d460b2569f6b59965ecc3298a6337fa3458a

that he has submitted a patch to fix this issue for now until we get around to changing the _SUCCESS and _FAIL values.

Phil, did you really send this out? I don't see it. If you don't have anything ready, I can try a simple fix.

Thanks & best regards,

Martin

#3 lore raw

Re: [BUG] staging: r8188eu: driver stopped working with commit ("staging: r8188eu: add check for kzalloc")

Hi Martin,

Quoted 16 lines · Martin Kaiser

Hi Michael & Phil,

Thus wrote Michael Straube ([email protected]):

Quoted 11 lines

The driver does not work anymore on my system. In dmesg there is:

"r8188eu 1-4:1.0: _rtw_init_xmit_priv failed"

I bisected it to commit f94b47c6bde ("staging: r8188eu: add check for kzalloc").

~/kernels/staging> git bisect bad f94b47c6bde624d6c07f43054087607c52054a95 is the first bad commit

At the moment I have no time to look further into it.

Quoted 8 lines

See also

https://lore.kernel.org/linux-staging/[email protected]/T/#mb5e56a285b8eb1ebb0e798462fc388cb02b4a7cc

Phil said in

https://lore.kernel.org/linux-staging/[email protected]/T/#m7a21d460b2569f6b59965ecc3298a6337fa3458a

There is the posted patch [1]. I also have to apply it every time I want to test smth.

[1] https://lore.kernel.org/all/[email protected]/

With regards,
Pavel Skripkin

maintainer
#4 lore raw

Re: [BUG] staging: r8188eu: driver stopped working with commit ("staging: r8188eu: add check for kzalloc")

Quoted 25 lines · Pavel Skripkin

Hi Martin,

Quoted 22 lines · Martin Kaiser

Hi Michael & Phil,

Thus wrote Michael Straube ([email protected]):

Quoted 11 lines

The driver does not work anymore on my system. In dmesg there is:

"r8188eu 1-4:1.0: _rtw_init_xmit_priv failed"

I bisected it to commit f94b47c6bde ("staging: r8188eu: add check for kzalloc").

~/kernels/staging> git bisect bad f94b47c6bde624d6c07f43054087607c52054a95 is the first bad commit

At the moment I have no time to look further into it.

See also

https://lore.kernel.org/linux-staging/[email protected]/T/#mb5e56a285b8eb1ebb0e798462fc388cb02b4a7cc

Phil said in

Quoted 7 lines
Quoted 2 lines

https://lore.kernel.org/linux-staging/[email protected]/T/#m7a21d460b2569f6b59965ecc3298a6337fa3458a

There is the posted patch [1]. I also have to apply it every time I want to test smth.

[1] https://lore.kernel.org/all/[email protected]/

That patch is in linux-next and will be sent to Linus later this week.

thanks,

greg k-h

#5 lore raw

Re: [BUG] staging: r8188eu: driver stopped working with commit ("staging: r8188eu: add check for kzalloc")

Quoted 29 lines · Greg KH
Quoted 28 lines · Pavel Skripkin

Hi Martin,

Quoted 24 lines · Martin Kaiser

Hi Michael & Phil,

Thus wrote Michael Straube ([email protected]):

Quoted 11 lines

The driver does not work anymore on my system. In dmesg there is:

"r8188eu 1-4:1.0: _rtw_init_xmit_priv failed"

I bisected it to commit f94b47c6bde ("staging: r8188eu: add check for kzalloc").

~/kernels/staging> git bisect bad f94b47c6bde624d6c07f43054087607c52054a95 is the first bad commit

At the moment I have no time to look further into it.

See also

https://lore.kernel.org/linux-staging/[email protected]/T/#mb5e56a285b8eb1ebb0e798462fc388cb02b4a7cc

Phil said in

https://lore.kernel.org/linux-staging/[email protected]/T/#m7a21d460b2569f6b59965ecc3298a6337fa3458a

Quoted 7 lines
Quoted 4 lines

There is the posted patch [1]. I also have to apply it every time I want to test smth.

[1] https://lore.kernel.org/all/[email protected]/

That patch is in linux-next and will be sent to Linus later this week.

I obviously missed that patch. Thank you all.

Michael