Most cases which are being handled in the switch-case of
ks_wlan_set_mode function are just returning EINVAL. Avoid
the use of switch-case stament and just use a simple if
to handle those. This decrease LOC as well as improves
readability.

Signed-off-by: Sergio Paracuellos <sergio.paracuel...@gmail.com>
---
 drivers/staging/ks7010/ks_wlan_net.c | 23 ++++++-----------------
 1 file changed, 6 insertions(+), 17 deletions(-)

diff --git a/drivers/staging/ks7010/ks_wlan_net.c 
b/drivers/staging/ks7010/ks_wlan_net.c
index d4d00ba..d50a831 100644
--- a/drivers/staging/ks7010/ks_wlan_net.c
+++ b/drivers/staging/ks7010/ks_wlan_net.c
@@ -742,24 +742,13 @@ static int ks_wlan_set_mode(struct net_device *dev,
        if (priv->sleep_mode == SLP_SLEEP)
                return -EPERM;
 
-       /* for SLEEP MODE */
-       switch (uwrq->mode) {
-       case IW_MODE_ADHOC:
-               priv->reg.operation_mode = MODE_ADHOC;
-               priv->need_commit |= SME_MODE_SET;
-               break;
-       case IW_MODE_INFRA:
-               priv->reg.operation_mode = MODE_INFRASTRUCTURE;
-               priv->need_commit |= SME_MODE_SET;
-               break;
-       case IW_MODE_AUTO:
-       case IW_MODE_MASTER:
-       case IW_MODE_REPEAT:
-       case IW_MODE_SECOND:
-       case IW_MODE_MONITOR:
-       default:
+       if (uwrq->mode != IW_MODE_ADHOC &&
+           uwrq->mode != IW_MODE_INFRA)
                return -EINVAL;
-       }
+
+       priv->reg.operation_mode = (uwrq->mode == IW_MODE_ADHOC) ?
+                                   MODE_ADHOC : MODE_INFRASTRUCTURE;
+       priv->need_commit |= SME_MODE_SET;
 
        return -EINPROGRESS;    /* Call commit handler */
 }
-- 
2.7.4

_______________________________________________
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel

Reply via email to