Commit 19f63c53 authored by Golan Ben-Ami's avatar Golan Ben-Ami Committed by Luca Coelho

iwlwifi: mvm: support v2 of mfuart load notification

Add to the v1 of the mfuart loading notification, the size
of the mfuart image, and write it to dmesg once the notification
is received.
Signed-off-by: default avatarGolan Ben-Ami <golan.ben.ami@intel.com>
Signed-off-by: default avatarLuca Coelho <luciano.coelho@intel.com>
parent 1f370650
...@@ -1256,13 +1256,16 @@ struct iwl_missed_beacons_notif { ...@@ -1256,13 +1256,16 @@ struct iwl_missed_beacons_notif {
* @external_ver: external image version * @external_ver: external image version
* @status: MFUART loading status * @status: MFUART loading status
* @duration: MFUART loading time * @duration: MFUART loading time
* @image_size: MFUART image size in bytes
*/ */
struct iwl_mfuart_load_notif { struct iwl_mfuart_load_notif {
__le32 installed_ver; __le32 installed_ver;
__le32 external_ver; __le32 external_ver;
__le32 status; __le32 status;
__le32 duration; __le32 duration;
} __packed; /*MFU_LOADER_NTFY_API_S_VER_1*/ /* image size valid only in v2 of the command */
__le32 image_size;
} __packed; /*MFU_LOADER_NTFY_API_S_VER_2*/
/** /**
* struct iwl_set_calib_default_cmd - set default value for calibration. * struct iwl_set_calib_default_cmd - set default value for calibration.
......
...@@ -1407,10 +1407,19 @@ void iwl_mvm_rx_mfuart_notif(struct iwl_mvm *mvm, ...@@ -1407,10 +1407,19 @@ void iwl_mvm_rx_mfuart_notif(struct iwl_mvm *mvm,
struct iwl_rx_packet *pkt = rxb_addr(rxb); struct iwl_rx_packet *pkt = rxb_addr(rxb);
struct iwl_mfuart_load_notif *mfuart_notif = (void *)pkt->data; struct iwl_mfuart_load_notif *mfuart_notif = (void *)pkt->data;
IWL_DEBUG_INFO(mvm, if (iwl_rx_packet_payload_len(pkt) == sizeof(*mfuart_notif))
"MFUART: installed ver: 0x%08x, external ver: 0x%08x, status: 0x%08x, duration: 0x%08x\n", IWL_DEBUG_INFO(mvm,
le32_to_cpu(mfuart_notif->installed_ver), "MFUART: installed ver: 0x%08x, external ver: 0x%08x, status: 0x%08x, duration: 0x%08x, image size: 0x%08x\n",
le32_to_cpu(mfuart_notif->external_ver), le32_to_cpu(mfuart_notif->installed_ver),
le32_to_cpu(mfuart_notif->status), le32_to_cpu(mfuart_notif->external_ver),
le32_to_cpu(mfuart_notif->duration)); le32_to_cpu(mfuart_notif->status),
le32_to_cpu(mfuart_notif->duration),
le32_to_cpu(mfuart_notif->image_size));
else
IWL_DEBUG_INFO(mvm,
"MFUART: installed ver: 0x%08x, external ver: 0x%08x, status: 0x%08x, duration: 0x%08x\n",
le32_to_cpu(mfuart_notif->installed_ver),
le32_to_cpu(mfuart_notif->external_ver),
le32_to_cpu(mfuart_notif->status),
le32_to_cpu(mfuart_notif->duration));
} }
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment