From nobody Wed Apr 8 09:43:00 2026 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 7488CC28D13 for ; Mon, 22 Aug 2022 20:13:55 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233947AbiHVUNx (ORCPT ); Mon, 22 Aug 2022 16:13:53 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41072 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231202AbiHVUNr (ORCPT ); Mon, 22 Aug 2022 16:13:47 -0400 Received: from viti.kaiser.cx (viti.kaiser.cx [IPv6:2a01:238:43fe:e600:cd0c:bd4a:7a3:8e9f]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 4D8A9BC2D for ; Mon, 22 Aug 2022 13:13:46 -0700 (PDT) Received: from dslb-188-096-142-076.188.096.pools.vodafone-ip.de ([188.96.142.76] helo=martin-debian-2.paytec.ch) by viti.kaiser.cx with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.89) (envelope-from ) id 1oQDnq-0000pA-SZ; Mon, 22 Aug 2022 22:13:42 +0200 From: Martin Kaiser To: Greg Kroah-Hartman Cc: Larry Finger , Phillip Potter , Michael Straube , Pavel Skripkin , linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, Martin Kaiser Subject: [PATCH 1/3] staging: r8188eu: don't restart "no link" blinking unnecessarily Date: Mon, 22 Aug 2022 22:13:27 +0200 Message-Id: <20220822201329.95559-2-martin@kaiser.cx> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20220822201329.95559-1-martin@kaiser.cx> References: <20220822201329.95559-1-martin@kaiser.cx> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" Simplify one of the cases in rtw_led_control. If we're already blinking because we have no link, we don't have to restart this blinking when the caller requests it again. We can simply return and keep on blinking. Signed-off-by: Martin Kaiser --- drivers/staging/r8188eu/core/rtw_led.c | 37 +++++++++++++------------- 1 file changed, 19 insertions(+), 18 deletions(-) diff --git a/drivers/staging/r8188eu/core/rtw_led.c b/drivers/staging/r8188= eu/core/rtw_led.c index d5c6c5e29621..d3299fd1e39d 100644 --- a/drivers/staging/r8188eu/core/rtw_led.c +++ b/drivers/staging/r8188eu/core/rtw_led.c @@ -217,26 +217,27 @@ void rtw_led_control(struct adapter *padapter, enum L= ED_CTL_MODE LedAction) switch (LedAction) { case LED_CTL_START_TO_LINK: case LED_CTL_NO_LINK: - if (!pLed->bLedNoLinkBlinkInProgress) { - if (pLed->CurrLedState =3D=3D LED_BLINK_SCAN || IS_LED_WPS_BLINKING(pLe= d)) - return; - if (pLed->bLedLinkBlinkInProgress) { - cancel_delayed_work(&pLed->blink_work); - pLed->bLedLinkBlinkInProgress =3D false; - } - if (pLed->bLedBlinkInProgress) { - cancel_delayed_work(&pLed->blink_work); - pLed->bLedBlinkInProgress =3D false; - } + if (pLed->bLedNoLinkBlinkInProgress) + return; =20 - pLed->bLedNoLinkBlinkInProgress =3D true; - pLed->CurrLedState =3D LED_BLINK_SLOWLY; - if (pLed->bLedOn) - pLed->BlinkingLedState =3D RTW_LED_OFF; - else - pLed->BlinkingLedState =3D RTW_LED_ON; - schedule_delayed_work(&pLed->blink_work, LED_BLINK_NO_LINK_INTVL); + if (pLed->CurrLedState =3D=3D LED_BLINK_SCAN || IS_LED_WPS_BLINKING(pLed= )) + return; + if (pLed->bLedLinkBlinkInProgress) { + cancel_delayed_work(&pLed->blink_work); + pLed->bLedLinkBlinkInProgress =3D false; } + if (pLed->bLedBlinkInProgress) { + cancel_delayed_work(&pLed->blink_work); + pLed->bLedBlinkInProgress =3D false; + } + + pLed->bLedNoLinkBlinkInProgress =3D true; + pLed->CurrLedState =3D LED_BLINK_SLOWLY; + if (pLed->bLedOn) + pLed->BlinkingLedState =3D RTW_LED_OFF; + else + pLed->BlinkingLedState =3D RTW_LED_ON; + schedule_delayed_work(&pLed->blink_work, LED_BLINK_NO_LINK_INTVL); break; case LED_CTL_LINK: if (!pLed->bLedLinkBlinkInProgress) { --=20 2.30.2