There is a race between regulatory callback from restart SAP and
user space deleting the SAP dev, which can result into access of a
free adapter.
To avoid the above issue the SAP dev should be held before it gets
delete and release after the operation on SAP dev gets complete.
Change-Id: Idf7fc2adeb74ac62d2a63d8bc3ae0b1a0568693c
CRs-Fixed: 2789448
Add cdp ops for IPA Tx buf SMMU-S1 unmapping and
call unmap from ipa_uc_ol_deinit if IPA uc_loaded,
also assert if mapping/unmapping failed.
Change-Id: I79f293fcf5d6f02e3a01d6c8ff829f4ca87e76e8
CRs-Fixed: 2788811
With kernel commit "2552d35 - PM: QoS: Rename things related to
the CPU latency QoS", the PM_QOS_CPU_DMA_LAT_DEFAULT_VALUE is
renamed to PM_QOS_CPU_LATENCY_DEFAULT_VALUE.
Update the same in the driver to resolve compilition issues due
to above kernel commit.
Change-Id: I522ebd2802397f6644fecb064971a6480dd9733b
CRs-Fixed: 2788971
Serialize psoc interface inactivity idle shutdown and restart via PLD
such that platform driver can serialize psoc idle shutdown and restart
to driver unload and SSR events to avoid any race conditions.
Change-Id: I177a60eaf83b1c81f08cab2dc8a6bc1497484809
CRs-Fixed: 2776866
In the FISA UDP aggregation path, flush may be initiated while trying to
add nbuf to end of the list. When flush happens, both head_skb and
last_skb will be set to NULL so make sure last_skb is valid before
adding nbuf to end of the list.
Change-Id: I473540a205c56f2fea3ffb82909cfec31c58a518
CRs-Fixed: 2783758
Currently request for pm_qos is defined under
WLAN_FEATURE_LL_MODE. Remove dependency between
two functionality.
Change-Id: I5aac06f28d3546ddfbb521ae20073bf8e05e550e
CRs-Fixed: 2789135
Use uint32 variable to populate he_mcs_12_13_supp from ini
he_mcs_12_13_support.
Previously, uint16 variable was used which was populating
he_mcs_12_13_supp_2g correctly but was disabling
he_mcs_12_13_supp_5g.
Change-Id: I28cd2060799a9f46f79860bdf9a3ede1574c9112
CRs-Fixed: 2789303
Add vdev id in RSO stop commands to make sure that command is sent
for proper vdev. Also add vdev id in all RSO commands logs
Change-Id: Iefa1e8ba177a64e141726ebaef15b250446a0af2
CRs-Fixed: 2789615
Correct the Wrong command structure used for cmd_params in
sme_add_dialog_cmd and sme_del_dialog_cmd.
CRs-Fixed: 2785748
Change-Id: Ief2344c61e40ab9b180ceafd02f97ad974f798e1
If 5G band disabled, all channels of 5G should be disabled, before SAP
switch to 2G channels, we need save original 5G channel, or when 5G
re-enable, can't restore back to original 5G channel.
Regression of change-Id: I679ce6f72228b431530953a631c8c8afa4597187.
Change-Id: Iabb932102c37cc7b9d4d97a2e22e781958ed906f
CRs-Fixed: 2789341
Use the new enum wlan_status_code for wlan status code and
remove enum mac_status_code.
Change-Id: If42cfdcf99d34ffa77be53382d02288ab8637c10
CRs-Fixed: 2789000
Enable more TX descriptors flag for QCA6750 target.
This helps to increase TX and completion descriptors size.
Change-Id: I038d5e376aec68741b172d963c9f96925b71d68a
CRs-Fixed: 2769769
Steps to reproduce:
1. AP_AP mode setup, AP1 occupy channel 1, AP2 occupy channel 44.
2. Set channel1~channel11 as unsafe channel, which cause AP1 try to
switch to 5G band.
Observed Results:
AP1 select channel 36, and channel switch fail.
Expected Results:
AP1 select channel 44 same as AP2, and channel switch pass.
Root cause: in Dual AP concurrency case, when get PCL for one AP, need
find the AP from connection list by vdev id and remove it temporarily,
can't just remove 1st vdev from connection list.
Change-Id: I763bbc89bacdad4389084588ee68c3a1e2f17b7b
CRs-Fixed: 2774570
Compiling with gcc 9.3 will cause many implicit-fallthrough
compile errors.
Fix is to add keyword fallthrough to resolve such compile error.
Change-Id: I3fdc48b1a9ab2345a47ae644e3217b4d29238364
CRs-Fixed: 2785172
In order to apply modulated DTIM only on system suspend display off use
case, in RTPM wow mode, for display on and display off, FW will stick to
DTIM 1.
Change-Id: Id282c11c39d38e8a5d55574783d280b092dbb485
CRs-Fixed: 2784872
Add a new ini item enable_mod_dtim_system_suspend to control the
modulated DTIM on system suspend feature.
This ini is used to set modulated DTIM configuration:
Current values of enable_mod_dtim_on_system_suspend:
0 -> Modulated DTIM will be enabled for every wow entry
(RTPM wow + System suspend wow)
1 -> Enable modulated DTIM only for System suspend wow.
For RTPM wow, the device will stay in DTIM 1 (non-modulated DTIM)
Change-Id: Ia3a9d259d8ba1e483ea3e8e7f99f60bbc27c67af
CRs-Fixed: 2787108
Call regulatory API to get current channel list. Populate
sub-band triplets from there. Also clean-up 11d related
cfg item enable_11d.
Change-Id: Ica6dba0dee05e7d16572ec0f0c62aa6f79aa6d4f
CRs-Fixed: 2769848
Enable CE descriptor ring history in non slub_debug_on build.
This is required to debug CE ring slow reaping issue in non
slub_debug builds
Change-Id: Id2955eb79f4759784b68cbb0270a7794484bb73c
CRs-Fixed: 2786647
IOVA address returned as part of pld_smmu_map for IPA
rx ready doorbell register exceeds the IOVA range
configured in FW by Host. This is because smmu unmap
support is not enabled and due to IOVA range validation
issue in cnss SMMU map API.
Fix is to enable SMMU S1 unmap config flag to enable
SMMU unmap as part of IPA cleanup.
Change-Id: I588f3536c2eb2a9fc77bbe69c9b6a6eb02a39842
CRs-Fixed: 2784174
After sending disable request to FW, it needs some time to
communicate the frame to all NDP connected peers. Increase
the wait time from 1 second to 4 seconds.
Change-Id: Iae36fe007704600a9f29ac7b943ef22fba91b651
CRs-fixed: 2787069
Use the TLV type for QCN IE attributes to fix the duplicate IE
detection and update QCN IE with new attributes.
Change-Id: Ia1be2d1754a3ed82ad3f01b68e719c504f624309
CRs-Fixed: 2760822
Currently ll_stats and get_station requests are sent back to back
from user space. The firmware time difference between these two commands
results in extra sleep and wakeup for Q6.
To avoid this extra Q6 sleep and wake, send both requests in a single
command from the driver if the firmware supports that operation. Cache
the get_station results in the driver until user space request reach
to the driver.
Change-Id: Ic7c6232558b9411106bf3fb88ec8d9b0b28b045d
CRs-Fixed: 2778476
At present, WAPI security mode STA is not allowed to run in
concurerncy with any other vdev.
So, whenever a new vdev is created, policy_mgr_check_privacy_for_new_conn
is called to check the security concurrency of new connection by checking
security of exisitng vdevs and if a STA vdev with WAPI security exists
then the concurrency is not allowed and the api will return false.
In case, while performing this check, the adaptor associated with
the existing vdev is destroyed, there might be a crash as
hdd_wapi_security_sta_exist is still trying to access the security
of that vdev.
To solve this, use wlan_objmgr_pdev_iterate_obj_list with crypto info
to iterate across all the existing vdev and check the security. If
Wapi security STA exists, it will return an argument with value as true
which will be used in policy_mgr_check_privacy_for_new_conn and it will
return false as concurrency is not allowed
Change-Id: Iff811d2406f1c74cec26d457a2a682dd992710b8
CRs-Fixed: 2784406