staging: r8188eu: remove padapter from struct led_priv
authorMartin Kaiser <martin@kaiser.cx>
Sat, 15 Oct 2022 15:11:13 +0000 (17:11 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 20 Oct 2022 15:41:42 +0000 (17:41 +0200)
The only struct led_priv that's used in the r8188eu driver in embedded in
the driver's global struct adapter. We can use container_of to access the
"outer" structure, there's no need to store a pointer to it.

Signed-off-by: Martin Kaiser <martin@kaiser.cx>
Tested-by: Philipp Hortmann <philipp.g.hortmann@gmail.com> # Edimax N150
Link: https://lore.kernel.org/r/20221015151115.232095-9-martin@kaiser.cx
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/r8188eu/core/rtw_led.c
drivers/staging/r8188eu/include/rtw_led.h

index 56f043d..2dbd7b5 100644 (file)
@@ -59,7 +59,7 @@ static void blink_work(struct work_struct *work)
 {
        struct delayed_work *dwork = to_delayed_work(work);
        struct led_priv *pLed = container_of(dwork, struct led_priv, blink_work);
-       struct adapter *padapter = pLed->padapter;
+       struct adapter *padapter = container_of(pLed, struct adapter, ledpriv);
        struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
 
        if (padapter->pwrctrlpriv.rf_pwrstate != rf_on) {
@@ -132,7 +132,6 @@ void rtl8188eu_InitSwLeds(struct adapter *padapter)
 {
        struct led_priv *pledpriv = &padapter->ledpriv;
 
-       pledpriv->padapter = padapter;
        ResetLedStatus(pledpriv);
        INIT_DELAYED_WORK(&pledpriv->blink_work, blink_work);
 }
index f57dcf6..ea5f5ed 100644 (file)
@@ -33,8 +33,6 @@ enum LED_STATE_871x {
 };
 
 struct led_priv {
-       struct adapter *padapter;
-
        bool bRegUseLed;
 
        enum LED_STATE_871x     CurrLedState; /*  Current LED state. */