Skip to content

Commit

Permalink
iwlwifi: remove PA type configuration
Browse files Browse the repository at this point in the history
No need to have a special config variable
for the PA type, we can just use the
additional NIC config function to config
the hardware correctly.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
  • Loading branch information
Johannes Berg authored and John W. Linville committed Mar 7, 2012
1 parent ef0ef9c commit 55bba9e
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 20 deletions.
17 changes: 9 additions & 8 deletions drivers/net/wireless/iwlwifi/iwl-6000.c
Original file line number Diff line number Diff line change
Expand Up @@ -96,20 +96,21 @@ static void iwl6150_additional_nic_config(struct iwl_priv *priv)
CSR_GP_DRIVER_REG_BIT_6050_1x2);
}

static void iwl6000i_additional_nic_config(struct iwl_priv *priv)
{
/* 2x2 IPA phy type */
iwl_write32(trans(priv), CSR_GP_DRIVER_REG,
CSR_GP_DRIVER_REG_BIT_RADIO_SKU_2x2_IPA);
}

/* NIC configuration for 6000 series */
static void iwl6000_nic_config(struct iwl_priv *priv)
{
iwl_rf_config(priv);

/* no locking required for register write */
if (cfg(priv)->pa_type == IWL_PA_INTERNAL) {
/* 2x2 IPA phy type */
iwl_write32(trans(priv), CSR_GP_DRIVER_REG,
CSR_GP_DRIVER_REG_BIT_RADIO_SKU_2x2_IPA);
}
/* do additional nic configuration if needed */
if (cfg(priv)->additional_nic_config)
cfg(priv)->additional_nic_config(priv);
cfg(priv)->additional_nic_config(priv);
}

static struct iwl_sensitivity_ranges iwl6000_sensitivity = {
Expand Down Expand Up @@ -473,8 +474,8 @@ const struct iwl_cfg iwl130_bg_cfg = {
.eeprom_ver = EEPROM_6000_EEPROM_VERSION, \
.eeprom_calib_ver = EEPROM_6000_TX_POWER_VERSION, \
.lib = &iwl6000_lib, \
.additional_nic_config = iwl6000i_additional_nic_config,\
.base_params = &iwl6000_base_params, \
.pa_type = IWL_PA_INTERNAL, \
.led_mode = IWL_LED_BLINK

const struct iwl_cfg iwl6000i_2agn_cfg = {
Expand Down
12 changes: 0 additions & 12 deletions drivers/net/wireless/iwlwifi/iwl-shared.h
Original file line number Diff line number Diff line change
Expand Up @@ -211,16 +211,6 @@ enum iwl_ucode_type {
IWL_UCODE_WOWLAN,
};

/**
* enum iwl_pa_type - Power Amplifier type
* @IWL_PA_SYSTEM: based on uCode configuration
* @IWL_PA_INTERNAL: use Internal only
*/
enum iwl_pa_type {
IWL_PA_SYSTEM = 0,
IWL_PA_INTERNAL = 1,
};

/*
* LED mode
* IWL_LED_DEFAULT: use device default
Expand Down Expand Up @@ -301,7 +291,6 @@ struct iwl_base_params {
* @base_params: pointer to basic parameters
* @ht_params: point to ht patameters
* @bt_params: pointer to bt parameters
* @pa_type: used by 6000 series only to identify the type of Power Amplifier
* @need_temp_offset_calib: need to perform temperature offset calibration
* @no_xtal_calib: some devices do not need crystal calibration data,
* don't send it to those
Expand Down Expand Up @@ -341,7 +330,6 @@ struct iwl_cfg {
/* params likely to change within a device family */
const struct iwl_ht_params *ht_params;
const struct iwl_bt_params *bt_params;
enum iwl_pa_type pa_type; /* if used set to IWL_PA_SYSTEM */
const bool need_temp_offset_calib; /* if used set to true */
const bool no_xtal_calib;
u8 scan_rx_antennas[IEEE80211_NUM_BANDS];
Expand Down

0 comments on commit 55bba9e

Please sign in to comment.