Commit 3188bc09 authored by Tobin C. Harding's avatar Tobin C. Harding Committed by Greg Kroah-Hartman

staging: ks7010: remove switch statement

Switch statement uses one [trivial] case and a default case holding
bulk of code. We can swap the switch statement with an if/return
statement as replacement for the original switch. This can be done
without changing the program logic.

Remove switch statement. Use original switch parameter as conditional
and return if conditional evaluates to true. Reduce level of
indentation. Do not change the program logic.
Signed-off-by: default avatarTobin C. Harding <me@tobin.cc>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent cf57e659
...@@ -183,63 +183,60 @@ static int _ks_wlan_hw_power_save(struct ks_wlan_private *priv) ...@@ -183,63 +183,60 @@ static int _ks_wlan_hw_power_save(struct ks_wlan_private *priv)
if (priv->dev_state != DEVICE_STATE_SLEEP) if (priv->dev_state != DEVICE_STATE_SLEEP)
return 0; return 0;
switch (atomic_read(&priv->psstatus.status)) { if (atomic_read(&priv->psstatus.status) == PS_SNOOZE)
case PS_SNOOZE: /* 4 */ return 0;
break;
default: DPRINTK(5, "\npsstatus.status=%d\npsstatus.confirm_wait=%d\npsstatus.snooze_guard=%d\ncnt_txqbody=%d\n",
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.status), atomic_read(&priv->psstatus.confirm_wait),
atomic_read(&priv->psstatus.confirm_wait), atomic_read(&priv->psstatus.snooze_guard),
atomic_read(&priv->psstatus.snooze_guard), cnt_txqbody(priv));
cnt_txqbody(priv));
if (!atomic_read(&priv->psstatus.confirm_wait) &&
if (!atomic_read(&priv->psstatus.confirm_wait) && !atomic_read(&priv->psstatus.snooze_guard) &&
!atomic_read(&priv->psstatus.snooze_guard) && !cnt_txqbody(priv)) {
!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);
return 0;
}
if (!rw_data) {
rw_data = GCR_B_DOZE;
retval = retval =
ks7010_sdio_read(priv, INT_PENDING, ks7010_sdio_write(priv,
GCR_B,
&rw_data, &rw_data,
sizeof(rw_data)); sizeof(rw_data));
if (retval) { if (retval) {
DPRINTK(1, DPRINTK(1,
" error : INT_PENDING=%02X\n", " error : GCR_B=%02X\n",
rw_data); rw_data);
queue_delayed_work(priv->ks_wlan_hw.ks7010sdio_wq, queue_delayed_work
&priv->ks_wlan_hw.rw_wq, 1); (priv->ks_wlan_hw.ks7010sdio_wq,
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); &priv->ks_wlan_hw.rw_wq, 1);
return 0;
} }
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 { } else {
queue_delayed_work(priv->ks_wlan_hw.ks7010sdio_wq, queue_delayed_work(priv->ks_wlan_hw.ks7010sdio_wq,
&priv->ks_wlan_hw.rw_wq, &priv->ks_wlan_hw.rw_wq, 1);
0);
} }
break; } else {
queue_delayed_work(priv->ks_wlan_hw.ks7010sdio_wq,
&priv->ks_wlan_hw.rw_wq,
0);
} }
return 0; return 0;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment