From a42e0ba279d4e4538325ac7381ee8822607d43ec Mon Sep 17 00:00:00 2001 From: Deeksha Gupta Date: Thu, 25 Mar 2021 17:18:27 +0530 Subject: [PATCH] qcacld-3.0: Handle new reason code for TWT session Firmware rejects TWT setup request due to roaming in progress and channel switch with reason code WMI_ADD_TWT_STATUS_ROAM_IN_PROGRESS, WMI_ADD_TWT_STATUS_CHAN_SW_IN_PROGRESS. Add support to handle TWT setup with new reason code. Change-Id: I07dffc4a9ef10886c202f7c15300458018a7b7b6 CRs-Fixed: 2908380 --- core/hdd/src/wlan_hdd_twt.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/core/hdd/src/wlan_hdd_twt.c b/core/hdd/src/wlan_hdd_twt.c index 80bffd1b5802..0f35b48917a9 100644 --- a/core/hdd/src/wlan_hdd_twt.c +++ b/core/hdd/src/wlan_hdd_twt.c @@ -889,6 +889,8 @@ wmi_twt_resume_status_to_vendor_twt_status(enum WMI_HOST_RESUME_TWT_STATUS statu return QCA_WLAN_VENDOR_TWT_STATUS_NO_ACK; case WMI_HOST_RESUME_TWT_STATUS_UNKNOWN_ERROR: return QCA_WLAN_VENDOR_TWT_STATUS_UNKNOWN_ERROR; + case WMI_HOST_RESUME_TWT_STATUS_CHAN_SW_IN_PROGRESS: + return QCA_WLAN_VENDOR_TWT_STATUS_CHANNEL_SWITCH_IN_PROGRESS; default: return QCA_WLAN_VENDOR_TWT_STATUS_UNKNOWN_ERROR; } @@ -922,6 +924,8 @@ wmi_twt_pause_status_to_vendor_twt_status(enum WMI_HOST_PAUSE_TWT_STATUS status) return QCA_WLAN_VENDOR_TWT_STATUS_NO_ACK; case WMI_HOST_PAUSE_TWT_STATUS_UNKNOWN_ERROR: return QCA_WLAN_VENDOR_TWT_STATUS_UNKNOWN_ERROR; + case WMI_HOST_PAUSE_TWT_STATUS_CHAN_SW_IN_PROGRESS: + return QCA_WLAN_VENDOR_TWT_STATUS_CHANNEL_SWITCH_IN_PROGRESS; default: return QCA_WLAN_VENDOR_TWT_STATUS_UNKNOWN_ERROR; } @@ -953,6 +957,8 @@ wmi_twt_nudge_status_to_vendor_twt_status(enum WMI_HOST_NUDGE_TWT_STATUS status) return QCA_WLAN_VENDOR_TWT_STATUS_NO_ACK; case WMI_HOST_NUDGE_TWT_STATUS_UNKNOWN_ERROR: return QCA_WLAN_VENDOR_TWT_STATUS_UNKNOWN_ERROR; + case WMI_HOST_NUDGE_TWT_STATUS_CHAN_SW_IN_PROGRESS: + return QCA_WLAN_VENDOR_TWT_STATUS_CHANNEL_SWITCH_IN_PROGRESS; default: return QCA_WLAN_VENDOR_TWT_STATUS_UNKNOWN_ERROR; } @@ -1015,6 +1021,8 @@ int wmi_twt_del_status_to_vendor_twt_status(enum WMI_HOST_DEL_TWT_STATUS status) return QCA_WLAN_VENDOR_TWT_STATUS_ROAM_INITIATED_TERMINATE; case WMI_HOST_DEL_TWT_STATUS_CONCURRENCY: return QCA_WLAN_VENDOR_TWT_STATUS_SCC_MCC_CONCURRENCY_TERMINATE; + case WMI_HOST_DEL_TWT_STATUS_CHAN_SW_IN_PROGRESS: + return QCA_WLAN_VENDOR_TWT_STATUS_CHANNEL_SWITCH_IN_PROGRESS; default: return QCA_WLAN_VENDOR_TWT_STATUS_UNKNOWN_ERROR; } @@ -1056,6 +1064,10 @@ wmi_twt_add_status_to_vendor_twt_status(enum WMI_HOST_ADD_TWT_STATUS status) return QCA_WLAN_VENDOR_TWT_STATUS_PARAMS_NOT_IN_RANGE; case WMI_HOST_ADD_TWT_STATUS_AP_IE_VALIDATION_FAILED: return QCA_WLAN_VENDOR_TWT_STATUS_IE_INVALID; + case WMI_HOST_ADD_TWT_STATUS_ROAM_IN_PROGRESS: + return QCA_WLAN_VENDOR_TWT_STATUS_ROAMING_IN_PROGRESS; + case WMI_HOST_ADD_TWT_STATUS_CHAN_SW_IN_PROGRESS: + return QCA_WLAN_VENDOR_TWT_STATUS_CHANNEL_SWITCH_IN_PROGRESS; default: return QCA_WLAN_VENDOR_TWT_STATUS_UNKNOWN_ERROR; }