Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit dc59ef2a authored by Tobin C. Harding's avatar Tobin C. Harding Committed by Greg Kroah-Hartman
Browse files

staging: ks7010: fix multi-way decision



Multi-way decision contains two anomalies.

Firstly, a local variable is defined to be the inverse truth variable
of a struct member. This local variable is used as the conditional to
the multi-way decision. This is unnecessary, the same logic can be
expressed using the struct member directly.

Secondly, there are four branches in the multi-way decision, two of
which can never be executed. This is dead code.

Remove unnecessary local variable. Remove two branches of multi-way
decision statement that can never be executed.

Signed-off-by: default avatarTobin C. Harding <me@tobin.cc>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 2ab6fd59
Loading
Loading
Loading
Loading
+2 −12
Original line number Diff line number Diff line
@@ -1199,27 +1199,17 @@ static int ks_wlan_set_power(struct net_device *dev,
{
	struct ks_wlan_private *priv =
	    (struct ks_wlan_private *)netdev_priv(dev);
	short enabled;

	if (priv->sleep_mode == SLP_SLEEP)
		return -EPERM;

	/* for SLEEP MODE */
	enabled = vwrq->disabled ? 0 : 1;
	if (enabled == 0) {	/* 0 */
	if (vwrq->disabled) {
		priv->reg.powermgt = POWMGT_ACTIVE_MODE;
	} else if (enabled) {	/* 1 */
	} else {
		if (priv->reg.operation_mode == MODE_INFRASTRUCTURE)
			priv->reg.powermgt = POWMGT_SAVE1_MODE;
		else
			return -EINVAL;
	} else if (enabled) {	/* 2 */
		if (priv->reg.operation_mode == MODE_INFRASTRUCTURE)
			priv->reg.powermgt = POWMGT_SAVE2_MODE;
		else
			return -EINVAL;
	} else {
		return -EINVAL;
	}

	hostif_sme_enqueue(priv, SME_POW_MNGMT_REQUEST);