diff options
author | Johannes Berg <johannes.berg@intel.com> | 2013-01-24 17:12:07 +0400 |
---|---|---|
committer | Johannes Berg <johannes.berg@intel.com> | 2013-01-31 00:41:29 +0400 |
commit | aa2b17708380ca48946a9ad97907f54032cf48fc (patch) | |
tree | c172423388e6fa32340757d2ea7bbe1b7e8375bf /drivers/net/wireless/iwlwifi/iwl-drv.c | |
parent | 4a4ee1010dd1e96b6e9a0a5686f2f527385c468e (diff) | |
download | linux-aa2b17708380ca48946a9ad97907f54032cf48fc.tar.xz |
iwlwifi: fix calibration parser
The firmware TLV for calibration data isn't
really a u64, but two u32 values. Define a
struct for that and change the parser.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl-drv.c')
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-drv.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-drv.c b/drivers/net/wireless/iwlwifi/iwl-drv.c index a7fb5ba93802..c6751962b2d9 100644 --- a/drivers/net/wireless/iwlwifi/iwl-drv.c +++ b/drivers/net/wireless/iwlwifi/iwl-drv.c @@ -268,7 +268,7 @@ struct fw_sec_parsing { */ struct iwl_tlv_calib_data { __le32 ucode_type; - __le64 calib; + struct iwl_tlv_calib_ctrl calib; } __packed; struct iwl_firmware_pieces { @@ -358,7 +358,11 @@ static int iwl_set_default_calib(struct iwl_drv *drv, const u8 *data) ucode_type); return -EINVAL; } - drv->fw.default_calib[ucode_type] = le64_to_cpu(def_calib->calib); + drv->fw.default_calib[ucode_type].flow_trigger = + def_calib->calib.flow_trigger; + drv->fw.default_calib[ucode_type].event_trigger = + def_calib->calib.event_trigger; + return 0; } |