diff options
author | Sergio Paracuellos <sergio.paracuellos@gmail.com> | 2018-05-04 06:16:38 +0200 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2018-05-06 18:58:40 -0700 |
commit | d87e9626c000b95c80bda3afe705303f17bbec84 (patch) | |
tree | aaf166bd5ba7770463d2f15b66b1f30f505d9fc2 | |
parent | 0d8be3067f7f43de2eb5efb6edea467640226022 (diff) | |
download | op-kernel-dev-d87e9626c000b95c80bda3afe705303f17bbec84.zip op-kernel-dev-d87e9626c000b95c80bda3afe705303f17bbec84.tar.gz |
staging: ks7010: refactor hostif_sme_power_mgmt_set function
This commit refactor hostif_sme_power_mgmt_set avoiding to
use switch-case statement and simplifying data paths. This
improves readability.
Signed-off-by: Sergio Paracuellos <sergio.paracuellos@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r-- | drivers/staging/ks7010/ks_hostif.c | 33 |
1 files changed, 10 insertions, 23 deletions
diff --git a/drivers/staging/ks7010/ks_hostif.c b/drivers/staging/ks7010/ks_hostif.c index 3a6385c..359187e 100644 --- a/drivers/staging/ks7010/ks_hostif.c +++ b/drivers/staging/ks7010/ks_hostif.c @@ -1880,36 +1880,23 @@ spin_unlock: spin_unlock(&priv->multicast_spin); } -static -void hostif_sme_power_mgmt_set(struct ks_wlan_private *priv) +static void hostif_sme_power_mgmt_set(struct ks_wlan_private *priv) { u32 mode, wake_up, receive_dtims; - switch (priv->reg.power_mgmt) { - case POWER_MGMT_SAVE1: - mode = (priv->reg.operation_mode == MODE_INFRASTRUCTURE) ? - POWER_SAVE : POWER_ACTIVE; - wake_up = 0; - receive_dtims = 0; - break; - case POWER_MGMT_SAVE2: - if (priv->reg.operation_mode == MODE_INFRASTRUCTURE) { - mode = POWER_SAVE; - wake_up = 0; - receive_dtims = 1; - } else { - mode = POWER_ACTIVE; - wake_up = 0; - receive_dtims = 0; - } - break; - case POWER_MGMT_ACTIVE: - default: + if (priv->reg.power_mgmt != POWER_MGMT_SAVE1 && + priv->reg.power_mgmt != POWER_MGMT_SAVE2) { mode = POWER_ACTIVE; wake_up = 0; receive_dtims = 0; - break; + } else { + mode = (priv->reg.operation_mode == MODE_INFRASTRUCTURE) ? + POWER_SAVE : POWER_ACTIVE; + wake_up = 0; + receive_dtims = (priv->reg.operation_mode == MODE_INFRASTRUCTURE && + priv->reg.power_mgmt == POWER_MGMT_SAVE2); } + hostif_power_mgmt_request(priv, mode, wake_up, receive_dtims); } |