From 1c0b9fc911b5e3f8e64318bb71f3d02320089502 Mon Sep 17 00:00:00 2001 From: Zhu Yi Date: Tue, 21 Aug 2007 11:05:21 +0800 Subject: [PATCH 16/31] iwlwifi: fix iwl_grab_restricted_access return code The patch fixed the return code of iwl_grab_restricted_access. It returns 0 On success, other values indicate an error. Signed-off-by: Zhu Yi --- drivers/net/wireless/iwl-base.c | 2 +- drivers/net/wireless/iwl-io.h | 9 ++++----- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/drivers/net/wireless/iwl-base.c b/drivers/net/wireless/iwl-base.c index 11282d4..0d7ff59 100644 --- a/drivers/net/wireless/iwl-base.c +++ b/drivers/net/wireless/iwl-base.c @@ -580,7 +580,7 @@ static inline int iwl_is_init(struct iwl_priv *priv) static inline int iwl_is_rfkill(struct iwl_priv *priv) { - return test_bit(STATUS_RF_KILL_HW, &priv->status) | + return test_bit(STATUS_RF_KILL_HW, &priv->status) || test_bit(STATUS_RF_KILL_SW, &priv->status); } diff --git a/drivers/net/wireless/iwl-io.h b/drivers/net/wireless/iwl-io.h index 5df7e36..f293702 100644 --- a/drivers/net/wireless/iwl-io.h +++ b/drivers/net/wireless/iwl-io.h @@ -166,7 +166,7 @@ static inline int _iwl_grab_restricted_access(struct iwl_priv *priv) if (atomic_read(&priv->restrict_refcnt)) return 0; #endif - if (test_bit(STATUS_RF_KILL_HW, &priv->status) | + if (test_bit(STATUS_RF_KILL_HW, &priv->status) || test_bit(STATUS_RF_KILL_SW, &priv->status)) { IWL_WARNING("WARNING: Requesting MAC access during RFKILL " "wakes up NIC\n"); @@ -190,14 +190,13 @@ static inline int _iwl_grab_restricted_access(struct iwl_priv *priv) CSR_GP_CNTRL_REG_FLAG_GOING_TO_SLEEP), 50); if (rc < 0) { IWL_ERROR("MAC is in deep sleep!\n"); - rc = -EIO; - goto out; + return -EIO; } + #ifdef CONFIG_IWLWIFI_DEBUG atomic_inc(&priv->restrict_refcnt); #endif -out: - return rc; + return 0; } #ifdef CONFIG_IWLWIFI_DEBUG -- 1.5.2