aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEmmanuel Grumbach <emmanuel.grumbach@intel.com>2012-03-28 05:00:58 -0400
committerWey-Yi Guy <wey-yi.w.guy@intel.com>2012-04-23 17:18:52 -0400
commit8d425517f1f08f01a6171d22e05be62ef6ad93fc (patch)
treeb5b44f96614c71a808a10522b114d696d85933b5
parent0586a11b5cc51413240e6688936e2edac9c2918e (diff)
iwlwifi: make a static inline to read the RF kill register
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com> Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-trans-pcie-int.h6
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-trans-pcie-rx.c3
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-trans-pcie.c9
3 files changed, 10 insertions, 8 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-trans-pcie-int.h b/drivers/net/wireless/iwlwifi/iwl-trans-pcie-int.h
index c7f8f407bc99..8a175e01f483 100644
--- a/drivers/net/wireless/iwlwifi/iwl-trans-pcie-int.h
+++ b/drivers/net/wireless/iwlwifi/iwl-trans-pcie-int.h
@@ -430,4 +430,10 @@ trans_pcie_get_cmd_string(struct iwl_trans_pcie *trans_pcie, u8 cmd)
430 return trans_pcie->command_names[cmd]; 430 return trans_pcie->command_names[cmd];
431} 431}
432 432
433static inline bool iwl_is_rfkill_set(struct iwl_trans *trans)
434{
435 return !(iwl_read32(trans, CSR_GP_CNTRL) &
436 CSR_GP_CNTRL_REG_FLAG_HW_RF_KILL_SW);
437}
438
433#endif /* __iwl_trans_int_pcie_h__ */ 439#endif /* __iwl_trans_int_pcie_h__ */
diff --git a/drivers/net/wireless/iwlwifi/iwl-trans-pcie-rx.c b/drivers/net/wireless/iwlwifi/iwl-trans-pcie-rx.c
index 47c1f0a572a9..d2239aad7f11 100644
--- a/drivers/net/wireless/iwlwifi/iwl-trans-pcie-rx.c
+++ b/drivers/net/wireless/iwlwifi/iwl-trans-pcie-rx.c
@@ -648,8 +648,7 @@ void iwl_irq_tasklet(struct iwl_trans *trans)
648 if (inta & CSR_INT_BIT_RF_KILL) { 648 if (inta & CSR_INT_BIT_RF_KILL) {
649 bool hw_rfkill; 649 bool hw_rfkill;
650 650
651 hw_rfkill = !(iwl_read32(trans, CSR_GP_CNTRL) & 651 hw_rfkill = iwl_is_rfkill_set(trans);
652 CSR_GP_CNTRL_REG_FLAG_HW_RF_KILL_SW);
653 IWL_WARN(trans, "RF_KILL bit toggled to %s.\n", 652 IWL_WARN(trans, "RF_KILL bit toggled to %s.\n",
654 hw_rfkill ? "disable radio" : "enable radio"); 653 hw_rfkill ? "disable radio" : "enable radio");
655 654
diff --git a/drivers/net/wireless/iwlwifi/iwl-trans-pcie.c b/drivers/net/wireless/iwlwifi/iwl-trans-pcie.c
index e6401e8a8d4c..1d9724d45ae9 100644
--- a/drivers/net/wireless/iwlwifi/iwl-trans-pcie.c
+++ b/drivers/net/wireless/iwlwifi/iwl-trans-pcie.c
@@ -981,8 +981,7 @@ static int iwl_trans_pcie_start_fw(struct iwl_trans *trans,
981 } 981 }
982 982
983 /* If platform's RF_KILL switch is NOT set to KILL */ 983 /* If platform's RF_KILL switch is NOT set to KILL */
984 hw_rfkill = !(iwl_read32(trans, CSR_GP_CNTRL) & 984 hw_rfkill = iwl_is_rfkill_set(trans);
985 CSR_GP_CNTRL_REG_FLAG_HW_RF_KILL_SW);
986 iwl_op_mode_hw_rf_kill(trans->op_mode, hw_rfkill); 985 iwl_op_mode_hw_rf_kill(trans->op_mode, hw_rfkill);
987 986
988 if (hw_rfkill) { 987 if (hw_rfkill) {
@@ -1422,8 +1421,7 @@ static int iwl_trans_pcie_start_hw(struct iwl_trans *trans)
1422 1421
1423 iwl_apm_init(trans); 1422 iwl_apm_init(trans);
1424 1423
1425 hw_rfkill = !(iwl_read32(trans, CSR_GP_CNTRL) & 1424 hw_rfkill = iwl_is_rfkill_set(trans);
1426 CSR_GP_CNTRL_REG_FLAG_HW_RF_KILL_SW);
1427 iwl_op_mode_hw_rf_kill(trans->op_mode, hw_rfkill); 1425 iwl_op_mode_hw_rf_kill(trans->op_mode, hw_rfkill);
1428 1426
1429 return err; 1427 return err;
@@ -1562,8 +1560,7 @@ static int iwl_trans_pcie_resume(struct iwl_trans *trans)
1562{ 1560{
1563 bool hw_rfkill; 1561 bool hw_rfkill;
1564 1562
1565 hw_rfkill = !(iwl_read32(trans, CSR_GP_CNTRL) & 1563 hw_rfkill = iwl_is_rfkill_set(trans);
1566 CSR_GP_CNTRL_REG_FLAG_HW_RF_KILL_SW);
1567 1564
1568 if (hw_rfkill) 1565 if (hw_rfkill)
1569 iwl_enable_rfkill_int(trans); 1566 iwl_enable_rfkill_int(trans);