mirror of
https://github.com/torvalds/linux.git
synced 2024-11-08 05:01:48 +00:00
iwlagn: use iwl_eeprom_calib_hdr structure
For retrieve calibration hdr related information, instead of using structure in one place and #define in other place, unify the method to use data structure. Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
parent
c6f30347a7
commit
7d8f2d50b5
@ -96,11 +96,7 @@ void iwlagn_temperature(struct iwl_priv *priv)
|
||||
|
||||
u16 iwlagn_eeprom_calib_version(struct iwl_priv *priv)
|
||||
{
|
||||
struct iwl_eeprom_calib_hdr {
|
||||
u8 version;
|
||||
u8 pa_type;
|
||||
u16 voltage;
|
||||
} *hdr;
|
||||
struct iwl_eeprom_calib_hdr *hdr;
|
||||
|
||||
hdr = (struct iwl_eeprom_calib_hdr *)iwl_eeprom_query_addr(priv,
|
||||
EEPROM_CALIB_ALL);
|
||||
|
@ -185,11 +185,12 @@ static int iwlagn_set_temperature_offset_calib_v2(struct iwl_priv *priv)
|
||||
EEPROM_KELVIN_TEMPERATURE);
|
||||
__le16 *offset_calib_low =
|
||||
(__le16 *)iwl_eeprom_query_addr(priv, EEPROM_RAW_TEMPERATURE);
|
||||
__le16 *voltage_reading =
|
||||
(__le16 *)iwl_eeprom_query_addr(priv, EEPROM_VOLTAGE_READING);
|
||||
struct iwl_eeprom_calib_hdr *hdr;
|
||||
|
||||
memset(&cmd, 0, sizeof(cmd));
|
||||
iwl_set_calib_hdr(&cmd.hdr, IWL_PHY_CALIBRATE_TEMP_OFFSET_CMD);
|
||||
hdr = (struct iwl_eeprom_calib_hdr *)iwl_eeprom_query_addr(priv,
|
||||
EEPROM_CALIB_ALL);
|
||||
memcpy(&cmd.radio_sensor_offset_high, offset_calib_high,
|
||||
sizeof(offset_calib_high));
|
||||
memcpy(&cmd.radio_sensor_offset_low, offset_calib_low,
|
||||
@ -199,8 +200,8 @@ static int iwlagn_set_temperature_offset_calib_v2(struct iwl_priv *priv)
|
||||
cmd.radio_sensor_offset_low = DEFAULT_RADIO_SENSOR_OFFSET;
|
||||
cmd.radio_sensor_offset_high = DEFAULT_RADIO_SENSOR_OFFSET;
|
||||
}
|
||||
memcpy(&cmd.burntVoltageRef, voltage_reading,
|
||||
sizeof(voltage_reading));
|
||||
memcpy(&cmd.burntVoltageRef, &hdr->voltage,
|
||||
sizeof(hdr->voltage));
|
||||
|
||||
IWL_DEBUG_CALIB(priv, "Radio sensor offset high: %d\n",
|
||||
le16_to_cpu(cmd.radio_sensor_offset_high));
|
||||
|
@ -163,11 +163,16 @@ struct iwl_eeprom_enhanced_txpwr {
|
||||
} __packed;
|
||||
|
||||
/* calibration */
|
||||
struct iwl_eeprom_calib_hdr {
|
||||
u8 version;
|
||||
u8 pa_type;
|
||||
__le16 voltage;
|
||||
} __packed;
|
||||
|
||||
#define EEPROM_CALIB_ALL (INDIRECT_ADDRESS | INDIRECT_CALIBRATION)
|
||||
#define EEPROM_XTAL ((2*0x128) | EEPROM_CALIB_ALL)
|
||||
|
||||
/* temperature */
|
||||
#define EEPROM_VOLTAGE_READING ((2*0x1) | EEPROM_CALIB_ALL)
|
||||
#define EEPROM_KELVIN_TEMPERATURE ((2*0x12A) | EEPROM_CALIB_ALL)
|
||||
#define EEPROM_RAW_TEMPERATURE ((2*0x12B) | EEPROM_CALIB_ALL)
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user