mirror of https://gitee.com/openkylin/linux.git
iwlwifi: add WOWLAN uCode loading support by testmode
Create new tm command for WOWLAN uCode loading to support further debugging function in userspace. - IWL_TM_CMD_APP2DEV_LOAD_WOWLAN_FW Signed-off-by: Kenny Hsu <kenny.hsu@intel.com> Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
This commit is contained in:
parent
9a0dd89547
commit
d4af19fe6b
|
@ -463,6 +463,21 @@ static int iwl_testmode_driver(struct ieee80211_hw *hw, struct nlattr **tb)
|
||||||
"Error starting the device: %d\n", status);
|
"Error starting the device: %d\n", status);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case IWL_TM_CMD_APP2DEV_LOAD_WOWLAN_FW:
|
||||||
|
iwl_scan_cancel_timeout(priv, 200);
|
||||||
|
iwl_trans_stop_device(trans(priv));
|
||||||
|
status = iwlagn_load_ucode_wait_alive(priv, IWL_UCODE_WOWLAN);
|
||||||
|
if (status) {
|
||||||
|
IWL_DEBUG_INFO(priv,
|
||||||
|
"Error loading WOWLAN ucode: %d\n", status);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
status = iwl_alive_start(priv);
|
||||||
|
if (status)
|
||||||
|
IWL_DEBUG_INFO(priv,
|
||||||
|
"Error starting the device: %d\n", status);
|
||||||
|
break;
|
||||||
|
|
||||||
case IWL_TM_CMD_APP2DEV_GET_EEPROM:
|
case IWL_TM_CMD_APP2DEV_GET_EEPROM:
|
||||||
if (priv->eeprom) {
|
if (priv->eeprom) {
|
||||||
skb = cfg80211_testmode_alloc_reply_skb(hw->wiphy,
|
skb = cfg80211_testmode_alloc_reply_skb(hw->wiphy,
|
||||||
|
@ -826,6 +841,7 @@ int iwlagn_mac_testmode_cmd(struct ieee80211_hw *hw, void *data, int len)
|
||||||
case IWL_TM_CMD_APP2DEV_LOAD_RUNTIME_FW:
|
case IWL_TM_CMD_APP2DEV_LOAD_RUNTIME_FW:
|
||||||
case IWL_TM_CMD_APP2DEV_GET_EEPROM:
|
case IWL_TM_CMD_APP2DEV_GET_EEPROM:
|
||||||
case IWL_TM_CMD_APP2DEV_FIXRATE_REQ:
|
case IWL_TM_CMD_APP2DEV_FIXRATE_REQ:
|
||||||
|
case IWL_TM_CMD_APP2DEV_LOAD_WOWLAN_FW:
|
||||||
IWL_DEBUG_INFO(priv, "testmode cmd to driver\n");
|
IWL_DEBUG_INFO(priv, "testmode cmd to driver\n");
|
||||||
result = iwl_testmode_driver(hw, tb);
|
result = iwl_testmode_driver(hw, tb);
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -117,6 +117,8 @@
|
||||||
* @IWL_TM_CMD_APP2DEV_DUMP_SRAM:
|
* @IWL_TM_CMD_APP2DEV_DUMP_SRAM:
|
||||||
* commands from user applicaiton to read data in sram
|
* commands from user applicaiton to read data in sram
|
||||||
*
|
*
|
||||||
|
* @IWL_TM_CMD_APP2DEV_LOAD_WOWLAN_FW: load Weak On Wireless LAN uCode image
|
||||||
|
*
|
||||||
*/
|
*/
|
||||||
enum iwl_tm_cmd_t {
|
enum iwl_tm_cmd_t {
|
||||||
IWL_TM_CMD_APP2DEV_UCODE = 1,
|
IWL_TM_CMD_APP2DEV_UCODE = 1,
|
||||||
|
@ -140,7 +142,8 @@ enum iwl_tm_cmd_t {
|
||||||
IWL_TM_CMD_APP2DEV_INDIRECT_REG_WRITE32 = 19,
|
IWL_TM_CMD_APP2DEV_INDIRECT_REG_WRITE32 = 19,
|
||||||
IWL_TM_CMD_APP2DEV_READ_SRAM = 20,
|
IWL_TM_CMD_APP2DEV_READ_SRAM = 20,
|
||||||
IWL_TM_CMD_APP2DEV_DUMP_SRAM = 21,
|
IWL_TM_CMD_APP2DEV_DUMP_SRAM = 21,
|
||||||
IWL_TM_CMD_MAX = 22,
|
IWL_TM_CMD_APP2DEV_LOAD_WOWLAN_FW = 22,
|
||||||
|
IWL_TM_CMD_MAX = 23,
|
||||||
};
|
};
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
Loading…
Reference in New Issue