With this change - I9f8b4186753ec9d446399be9e1cfc03a63a17391
code to fill flexible TWT feature info in twt_feature_set
was removed, as a result host fails to update flexible TWT
feature to fw as part of feature set query.
To address this issue, bring back the code to fill
flexible TWT feature info in to twt_feature_set.
Change-Id: Ia669992c92a02a909d5b64925b903bdef7fc1baa
CRs-Fixed: 3594895
If WLAN_SUPPORT_TWT or WLAN_TWT_CONV_SUPPORTED not defined, FEATURE_SET
is defined, function wlan_twt_get_feature_info() will be called by
wma_set_feature_set_info(). However wlan_twt_get_feature_info() is not
declaration.
Change-Id: I31b1e5c6520adf4dc495356d45fc89f481c9962e
CRs-Fixed: 3637229
Add support for INI twt_disable_info to disable FW initiated
information frame for TWT
Change-Id: I06fe9be364d9def0ccfffc196ae31dcc2ab9a500
CRs-Fixed: 3621241
If power save disable command commes, implicitly driver
teardown the existing TWT session by sending out
TWT_DEL_DIALOG command to fw. In firmware if
command fails due to firmware scan_in_progress or
chan_switch_in_progress then driver should retries
TWT_DEL_DIALOG implicitly.
In driver, add retries logic to the twt del dialog command in
case of power save disable.
CRs-Fixed: 3584286
Change-Id: I71299ea8239f33d194d2b55499f2d8e5946c42ba
Flush TWT commands when cfg80211 suspend is in progress
and schedule them for execution when cfg80211 resumes.
This prevents WMI from crashing due to concurrent
WMI_WOW_ENABLE_CMDID and twt requester enable commands
during suspend.
Change-Id: I505b789805d8a83564bf25d3f6c5c28d6d390966
CRs-Fixed: 3567817
In MLO STA case, even though twt_responder ini is disable but
still this bit is getting populated in he_cap for non assoc link.
Reason:
1. twt_res is getting set from populate_dot11f_twt_he_cap()
for assoc link. For non assoc link, it's getting set from
mac context.
2. populate_dot11f_twt_he_cap() api doesn't have the interseted
value of ini and firmware caps according to twt component api.
As part of fix,
1. twt_req and twt_res should have intersected value in
populate_dot11f_twt_he_cap()
2. Update twt_res from populate_dot11f_twt_he_cap() for non
assoc link also as it will update the intersection of ini and
fw caps
Change-Id: I6ef34723f879aead4517c28cf6cfad2fa11165fe
CRs-Fixed: 3524903
Need to add support for rTWT feature in host. Host needs to define rTWT
ini, and set rTWT bit in EHT Cap. rTWT ini will allow users to
enable/disable rTWT feature. We define rTWT ini and function to get ini
value. EHT Cap will advertise rTWT support to peer. To populate EHT Cap
we must validate rTWT is supported in driver. To do this, we check rTWT
and bTWT params.
Changes are as follows.
1) Define rTWT ini
2) Get rTWT ini value
3) Get rTWT support
4) Set rTWT bit in EHT Cap
Change-Id: Id5676c6b7c3d4f48a0010f2e9ae369d9dfa710e9
CRs-Fixed: 3446652
Obsolete TWT functions are still called in driver. As part of
removal, Remove these functions and use component function.
Change-Id: I9f8b4186753ec9d446399be9e1cfc03a63a17391
CRs-Fixed: 3294868
Handle twt renegotiation failure scenario when there is
error reported by firmware as part of
wmi_twt_ack_complete_event_id event.
Change-Id: I91e4bfd8f08ae81b474354c90ab8c770dcdfe19b
CRs-Fixed: 3297783
Disable "twt_responder" ini by default. TWT responder
configuration comes from hostapd.
Change-Id: Id094a72f70e71bac23295221dc6d12c2e7685803
CRs-Fixed: 3298565
TWT responder should be enabled based on the hostapd
configuration and self capability.
But when SAP is started, the TWT concurrency work is
scheduled and its enabling the TWT responder without
checking the hostapd configuration. This causes TWT
responder to be enabled even though the hostapd configuration
disables the responder.
Check the TWT responder configuration from TWT component before
sending enable command for TWT responder
Change-Id: Ia6755299421f00b2a1a69fc2e19fac3d39ab95f6
CRs-Fixed: 3291939
Based on the new requirement, add support to get requested
feature set info from different feature components.
Change-Id: I1bfc097c8ae8c4ab678d4dc07b7932cf3272d851
CRs-Fixed: 3262868
After WLAN_TWT_CONV_SUPPORTED enabled, TWT variables are moved from
COMP_MLME to COMP_TWT, APIs are updated too, hdd_update_tgt_twt_cap
just intersects enable_twt and twt_requestor of COMP_TWT instead of
COMP_MLME, legacy variable mlme_cfg->he_caps.dot11_he_cap.twt_request
isn't controlled by ini enable_twt now.
Change-Id: I71bb09704fd96591f37019ebbb77733cff04af25
CRs-Fixed: 3229121
Generally below process should happen in renegotiation failure
case.
1. TWT setup (successful)
2. TWT setup (renegotiation failure)
3. TWT teardown
4. TWT GET STATUS - 0(dialog ID) 0 0 0
5. TWT setup - successful
Since all WMI TWT events gets executed in WMI thread. So when
renegotiation failure case hits, driver sends TWT
teardown to firmware and waits for twt ack in worker thread.
In same worker thread TWT event needs to be processed.
TWT ack event will not process as it's waiting in same worker
thread and it will get timedout.
As part of fix, break the context in renegotiation and
send the teardown in the new worker context.
Change-Id: I13c8d44d6582e39d1cc2c2aa10a500fffbf150b1
CRs-Fixed: 3204750
Currently TWT works only in 11ax. Add enable_twt_in_11n
ini to support TWT in 11n mode.
False: DO not support TWT in 11n mode
True: Support TWT in 11n mode
Change-Id: If1011c9a24b9c285199d7b0e60e5614d6c1f8786
CRs-Fixed: 3185100
Add support for QCA_WLAN_TWT_SET_PARAM command to configure
QCA_WLAN_VENDOR_ATTR_TWT_SET_PARAM_AP_AC_VALUE attribute.
This attribute provides access category value for
WMI_PDEV_PARAM_TWT_AC_CONFIG. This is used by firmware to
configure access category for TWT HW queue in TWT Responder
mode(SAP).
Change-Id: I5131967ff2061bf6afad7bc5f091a7eb5ee01b8a
CRs-Fixed: 3168197
In TWT component, add support for TWT get_status command
i.e when host wants to query current status of TWT sessions.
Change-Id: Ib43009e5f6a90c589db25f78e1ca43563f2950fe
CRs-Fixed: 3085483
In TWT component, add support for TWT nudge command
i.e when host wants to suspend the TWT session.
Change-Id: I176fdaf0f2ccc2d0656f9108484fc80b409268ef
CRs-Fixed: 3085999
In TWT component, add support for TWT pause command
i.e when host wants to suspend the TWT session.
Change-Id: I8a60bb40fe9d37121d700f246b91e3211af66189
CRs-Fixed: 3085990