ath10k: add debugfs file warm_hw_reset
Debugfs support to do hardware warm reset with WMI command WMI_PDEV_PARAM_PDEV_RESET for 10.4 and 10.2.4(if wmi service is enabled in the firmware for backward compatibility). This change is purely for debugging purpose when hardware hangs/mutes. This hardware reset won't affect the connectivity but there will be small pause in data traffic. Here we are doing BB/MAC level reset and hence whenever the BB/MAC watchdog is triggered, it does a hardware_chip_reset. So the target will be in the active state. Below command used to warm reset the hardware. echo 1 > /sys/kernel/debug/ieee80211/phyX/ath10k/warm_hw_reset Tested in QCA988X with firmware ver 10.2.4.70.45 Tested in QCA4019 with firmware ver 10.4-3.2.1.1-00011 Signed-off-by: Maharaja Kennadyrajan <mkenna@codeaurora.org> Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
This commit is contained in:

committed by
Kalle Valo

parent
e82f57c8b9
commit
db251d7df4
@@ -462,6 +462,7 @@ static inline char *wmi_service_name(int service_id)
|
||||
SVCSTR(WMI_SERVICE_HTT_MGMT_TX_COMP_VALID_FLAGS);
|
||||
SVCSTR(WMI_SERVICE_HOST_DFS_CHECK_SUPPORT);
|
||||
SVCSTR(WMI_SERVICE_TPC_STATS_FINAL);
|
||||
SVCSTR(WMI_SERVICE_RESET_CHIP);
|
||||
default:
|
||||
return NULL;
|
||||
}
|
||||
@@ -3934,7 +3935,11 @@ enum wmi_10x_pdev_param {
|
||||
WMI_10X_PDEV_PARAM_REMOVE_MCAST2UCAST_BUFFER,
|
||||
WMI_10X_PDEV_PARAM_PEER_STA_PS_STATECHG_ENABLE,
|
||||
WMI_10X_PDEV_PARAM_RTS_FIXED_RATE,
|
||||
WMI_10X_PDEV_PARAM_CAL_PERIOD
|
||||
WMI_10X_PDEV_PARAM_CAL_PERIOD,
|
||||
WMI_10X_PDEV_PARAM_ATF_STRICT_SCH,
|
||||
WMI_10X_PDEV_PARAM_ATF_SCHED_DURATION,
|
||||
WMI_10X_PDEV_PARAM_SET_PROMISC_MODE_CMDID,
|
||||
WMI_10X_PDEV_PARAM_PDEV_RESET
|
||||
};
|
||||
|
||||
enum wmi_10_4_pdev_param {
|
||||
@@ -6501,6 +6506,15 @@ struct wmi_force_fw_hang_cmd {
|
||||
__le32 delay_ms;
|
||||
} __packed;
|
||||
|
||||
enum wmi_pdev_reset_mode_type {
|
||||
WMI_RST_MODE_TX_FLUSH = 1,
|
||||
WMI_RST_MODE_WARM_RESET,
|
||||
WMI_RST_MODE_COLD_RESET,
|
||||
WMI_RST_MODE_WARM_RESET_RESTORE_CAL,
|
||||
WMI_RST_MODE_COLD_RESET_RESTORE_CAL,
|
||||
WMI_RST_MODE_MAX,
|
||||
};
|
||||
|
||||
enum ath10k_dbglog_level {
|
||||
ATH10K_DBGLOG_LEVEL_VERBOSE = 0,
|
||||
ATH10K_DBGLOG_LEVEL_INFO = 1,
|
||||
|
Reference in New Issue
Block a user