diff options
author | Martin Kaiser <martin@kaiser.cx> | 2022-09-11 16:51:21 +0200 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2022-09-24 13:07:49 +0200 |
commit | 21cce84a7c3526ce6aa3186161ba574db7245ab6 (patch) | |
tree | 9a560dc1d2a8b5a49619ecd6fb45dcaaaaaa8c4d | |
parent | b1c17560de5446a68b047df38abd02987c045624 (diff) |
staging: r8188eu: cancel blink_work before link blinking
Cancel blink_work before we start link blinking. Another worker will be
scheduled after the state variables are updated.
Tested-by: Philipp Hortmann <philipp.g.hortmann@gmail.com> # Edimax N150
Signed-off-by: Martin Kaiser <martin@kaiser.cx>
Link: https://lore.kernel.org/r/20220911145122.15444-9-martin@kaiser.cx
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r-- | drivers/staging/r8188eu/core/rtw_led.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/drivers/staging/r8188eu/core/rtw_led.c b/drivers/staging/r8188eu/core/rtw_led.c index 7cd6ed5385bb..0881c81f4c74 100644 --- a/drivers/staging/r8188eu/core/rtw_led.c +++ b/drivers/staging/r8188eu/core/rtw_led.c @@ -242,14 +242,14 @@ void rtw_led_control(struct adapter *padapter, enum LED_CTL_MODE LedAction) if (pLed->CurrLedState == LED_BLINK_SCAN || IS_LED_WPS_BLINKING(pLed)) return; - if (pLed->bLedNoLinkBlinkInProgress) { - cancel_delayed_work(&pLed->blink_work); + + cancel_delayed_work(&pLed->blink_work); + if (pLed->bLedNoLinkBlinkInProgress) pLed->bLedNoLinkBlinkInProgress = false; - } - if (pLed->bLedBlinkInProgress) { - cancel_delayed_work(&pLed->blink_work); + + if (pLed->bLedBlinkInProgress) pLed->bLedBlinkInProgress = false; - } + pLed->bLedLinkBlinkInProgress = true; pLed->CurrLedState = LED_BLINK_NORMAL; if (pLed->bLedOn) |