From d5f1db31fb03072a11d8e5bb1e81c9b3982195b7 Mon Sep 17 00:00:00 2001 From: "Tobin C. Harding" Date: Mon, 27 Feb 2017 14:14:44 +1100 Subject: staging: ks7010: invert conditional, reduce indent Function _ks_wlan_hw_power_save has 5 levels of indentation. Reducing the amount of indentation may make code clearer to read. Also a number of other checkpatch warnings may be removed if we first reduce the level of indentation in this function. Invert conditional and return from function if new conditional evaluates to true. Repeat on subsequent conditional. Reduce indentation without changing the program logic. Signed-off-by: Tobin C. Harding Signed-off-by: Greg Kroah-Hartman --- drivers/staging/ks7010/ks7010_sdio.c | 122 ++++++++++++++++++----------------- 1 file changed, 62 insertions(+), 60 deletions(-) (limited to 'drivers/staging/ks7010') diff --git a/drivers/staging/ks7010/ks7010_sdio.c b/drivers/staging/ks7010/ks7010_sdio.c index 6f9f746..1cf8b12 100644 --- a/drivers/staging/ks7010/ks7010_sdio.c +++ b/drivers/staging/ks7010/ks7010_sdio.c @@ -176,70 +176,72 @@ static int _ks_wlan_hw_power_save(struct ks_wlan_private *priv) if (priv->reg.powermgt == POWMGT_ACTIVE_MODE) return 0; - if (priv->reg.operation_mode == MODE_INFRASTRUCTURE && - (priv->connect_status & CONNECT_STATUS_MASK) == CONNECT_STATUS) { - if (priv->dev_state == DEVICE_STATE_SLEEP) { - switch (atomic_read(&priv->psstatus.status)) { - case PS_SNOOZE: /* 4 */ + if (priv->reg.operation_mode != MODE_INFRASTRUCTURE || + (priv->connect_status & CONNECT_STATUS_MASK) != CONNECT_STATUS) + return 0; + + if (priv->dev_state != DEVICE_STATE_SLEEP) + return 0; + + switch (atomic_read(&priv->psstatus.status)) { + case PS_SNOOZE: /* 4 */ + break; + default: + DPRINTK(5, "\npsstatus.status=%d\npsstatus.confirm_wait=%d\npsstatus.snooze_guard=%d\ncnt_txqbody=%d\n", + atomic_read(&priv->psstatus.status), + atomic_read(&priv->psstatus.confirm_wait), + atomic_read(&priv->psstatus.snooze_guard), + cnt_txqbody(priv)); + + if (!atomic_read(&priv->psstatus.confirm_wait) + && !atomic_read(&priv->psstatus.snooze_guard) + && !cnt_txqbody(priv)) { + retval = + ks7010_sdio_read(priv, INT_PENDING, + &rw_data, + sizeof(rw_data)); + if (retval) { + DPRINTK(1, + " error : INT_PENDING=%02X\n", + rw_data); + queue_delayed_work(priv->ks_wlan_hw.ks7010sdio_wq, + &priv->ks_wlan_hw.rw_wq, 1); break; - default: - DPRINTK(5, "\npsstatus.status=%d\npsstatus.confirm_wait=%d\npsstatus.snooze_guard=%d\ncnt_txqbody=%d\n", - atomic_read(&priv->psstatus.status), - atomic_read(&priv->psstatus.confirm_wait), - atomic_read(&priv->psstatus.snooze_guard), - cnt_txqbody(priv)); - - if (!atomic_read(&priv->psstatus.confirm_wait) - && !atomic_read(&priv->psstatus.snooze_guard) - && !cnt_txqbody(priv)) { - retval = - ks7010_sdio_read(priv, INT_PENDING, - &rw_data, - sizeof(rw_data)); - if (retval) { - DPRINTK(1, - " error : INT_PENDING=%02X\n", - rw_data); - queue_delayed_work(priv->ks_wlan_hw.ks7010sdio_wq, - &priv->ks_wlan_hw.rw_wq, 1); - break; - } - if (!rw_data) { - rw_data = GCR_B_DOZE; - retval = - ks7010_sdio_write(priv, - GCR_B, - &rw_data, - sizeof(rw_data)); - if (retval) { - DPRINTK(1, - " error : GCR_B=%02X\n", - rw_data); - queue_delayed_work - (priv->ks_wlan_hw.ks7010sdio_wq, - &priv->ks_wlan_hw.rw_wq, 1); - break; - } - DPRINTK(4, - "PMG SET!! : GCR_B=%02X\n", - rw_data); - atomic_set(&priv->psstatus. - status, PS_SNOOZE); - DPRINTK(3, - "psstatus.status=PS_SNOOZE\n"); - } else { - queue_delayed_work(priv->ks_wlan_hw.ks7010sdio_wq, - &priv->ks_wlan_hw.rw_wq, 1); - } - } else { - queue_delayed_work(priv->ks_wlan_hw. - ks7010sdio_wq, - &priv->ks_wlan_hw.rw_wq, - 0); + } + if (!rw_data) { + rw_data = GCR_B_DOZE; + retval = + ks7010_sdio_write(priv, + GCR_B, + &rw_data, + sizeof(rw_data)); + if (retval) { + DPRINTK(1, + " error : GCR_B=%02X\n", + rw_data); + queue_delayed_work + (priv->ks_wlan_hw.ks7010sdio_wq, + &priv->ks_wlan_hw.rw_wq, 1); + break; } - break; + DPRINTK(4, + "PMG SET!! : GCR_B=%02X\n", + rw_data); + atomic_set(&priv->psstatus. + status, PS_SNOOZE); + DPRINTK(3, + "psstatus.status=PS_SNOOZE\n"); + } else { + queue_delayed_work(priv->ks_wlan_hw.ks7010sdio_wq, + &priv->ks_wlan_hw.rw_wq, 1); } + } else { + queue_delayed_work(priv->ks_wlan_hw. + ks7010sdio_wq, + &priv->ks_wlan_hw.rw_wq, + 0); } + break; } return 0; -- cgit v1.1