obj_mgr_alert() function is currently used in
wlan_objmgr_iterate_log_del_obj_handle() to print and is causing
spinlock to be held too long and timing out. Thus, increase the
periodicity of LOG_DEL_OBJ_TIMEOUT_VALUE_MSEC to 10 seconds.
Change-Id: I00fb3a468d6035856efe07c08299c471f72ba863
CRs-Fixed: 2928906
Driver does not update bonded_chan_ptr correctly in
reg_get_320_bonded_chan_array api which may lead to undefined
behavior.
To address above issue, fill bonded_chan_ptr correctly.
Change-Id: I13ffe96ad855dbf97b72f32e982c73322a29626f
CRs-Fixed: 2929853
The firmware rejects the TWT setup request when scan is in
progress. Extend enum qca_wlan_vendor_twt_status to represent new
reason code for it.
Change-Id: I8576d8cce2fac62d9e3cf020a3dadee06ec14d5c
CRs-Fixed: 2923272
Sometimes firmware sends spectral events repeatedly with
wrong vdev. This causes continuous error logs are
written to kmsg.
Replace info prints in target_if_consume_spectral_report_gen3()
with debug level prints.
Change-Id: I2ca4be7d0d13e841a6dbd4efbc02ecd2b12893f8
CRs-Fixed: 2926759
The dp_tx_da_search_override API wrongly returns DA based
address lookup instead of SA based for station mode when
FEATURE_WDS build flag is enabled.
Fix dp_tx_da_search_override API to return SA based
address lookup for station mode.
CRs-Fixed: 2924299
Change-Id: Ibb0c2a6df5f73fd5a361900036316375fc29dbbd
In some platform the timer is not precise. NOL timer may take more
than expected. During this time When print nol is called, NOL left
time is negative.
Set NOL left time as 0 in print nol if it is negative.
Change-Id: Ic6aec5f7ee080625adb39ae75785a271ad782f6c
CRs-Fixed: 2926548
Agile scans (preCAC/RCAC) use the Agile Engine which is also needed
for the Agile spectral scan. Hence, both cannot run at the same time.
Currently, if Agile preCAC is enabled, Agile spectral scan is not
started. Do not start the spectral scan if either RCAC is enabled or
preCAC is enabled.
Change-Id: I242c28c2c3f8872ceab6314dde80361c283d3ac1
CRs-Fixed: 2922250
Introduce a QCA vendor command to configure the concurrent connection
policies when multiple STA interfaces are (getting) active.
Change-Id: I574880e526e4aa8e179b417fbcba6d7e9e9fcfb1
CRs-Fixed: 2915545
Access wlan_crypto_cipher structure if the key and cipher_table's
are valid. Also, added changes to avoid dangling pointer accessing
after deleting key.
Change-Id: Ia9a5942c9597f03eb1707d149797f33760eeac21
Replace below APIs used under CONFIG_CHAN_NUM_API
in DFS module with corresponding channel frequency
APIs as part of regulatory cleanup effort,
dfs_get_bonding_channels
dfs_is_en302_502_applicable
dfs_nol_timer_cleanup
dfs_remove_spoof_channel_from_nol
dfs_tlv_calc_freq_info
dfs_print_radar_found_freq
dfs_compute_radar_found_cfreq
Change-Id: I962449264fa76783ea83b271ca2e5fa67dfe478c
CRs-Fixed: 2916463
To avoid excessive logging, we whould not logs RTPM lock init and
deinit to the console. Thus, change the log level to debug.
Change-Id: Ib11045fe50f729b0580284fa913da48d3a59b323
CRs-Fixed: 2927959
If multiple MBSSID beacons fail during scan entry generation,
it can lead to flooding of the console.
Rate limit this print to avoid scheduler timeouts.
CRs-Fixed: 2918649
Change-Id: I71ed2dafcedc7da4be130569776870a2bbb6b28f
Currently a set of IPA2TCL and WBM2IPA rings is used for
IPA TX data path. Issue is when wlan is configured as
SAP-SAP DBS mode, slow 2G traffic will consume much more
TX resources and thus 5G traffic will have starvation,
which leads to severe degradation of DBS KPI.
Therefore separate IPA2TCL (SW2TCL2) and WBM2IPA (WBM2SW4)
rings are added to support alternative IPA TX pipe for 2G
traffic.
Change-Id: I4b648d0bcacbcde0b9b0a824516c1f06e3b0c7ad
CRs-Fixed: 2750079
The hw_index reading from the DDR by the RRI feature might be not
updated in time which might cause the excessive logging in the dmesg.
Change-Id: Ic9c3648b032ba59a6b7f92d8c27b63cb6a650381
CRs-Fixed: 2919867
Runtime PM for HTC layer has multiple cases of GET/PUT operations.
Adding runtime PM stats for HTC layer, this helps in debugging
RTPM GET/PUT out of sync issues.
Change-Id: Ib27efd73dce0bb5bd3ff030bd7ae1bc833f29610
CRs-Fixed: 2923250
In the issue reported, the clear stats request from the
user space is timing out because event id from firmware is not received.
From the logs it is not clear whether host driver received it or dropped
it in the error path.
Add debug logs, to make sure cp_stats event id is received in the host
driver and also in error cases.
Change-Id: I634714281db4a82826791725ec38fd589334cde8
CRs-Fixed: 2926978
Fix the compilation errors observed in the Host regdb when the macro
WLAN_FEATURE_DSRC is enabled.
Change-Id: I2db0aee021db0233cad1c094df9095c25804871d
CRs-Fixed: 2894344
Define the new TWT attributes for configuring the broadcast TWT
parameters in enum qca_wlan_vendor_attr_twt_setup.
Change-Id: Ia7b0e1565cef3bfe5d213b783390c7231a1a8446
CRs-Fixed: 2924690
Resolve compilation issue seen when the IEEE 802.11be MLO feature flag
WLAN_FEATURE_11BE_MLO is enabled. For this, comment out a call to
mlo_handle_link_up(). This will be added back in a separate change
once it is ready.
Change-Id: I486899a79f44cccb3617498e29533f9589ef3fb7
CRs-Fixed: 2925804
Currently the PMKSA entries are deleted only if the BSSID matches
and will delete all the matching PMK cache entries even though
the new PMK is same as the existing PMK for the matched BSSID.
This results in unnecessary deletion/updation of PMKSA entries.
This change allows to check PMK as well along with BSSID. And if
the PMK doesn't match with existing matched BSSID entry then only
we delete the PMKSA entries.
This change fixes the below OKC scenario and avoids Full EAP:
Connect to AP1 -> Roam to AP2 -> Disconnect and Reconnect AP2 ->
Disconnect and Reconnect AP1.
Change-Id: Ic41c2044e70f8d375130ef9e0af9fe4b83027c26
CRs-Fixed: 2913686
The firmware sends new reason codes for roaming and
channel switch in progress. Update the enum
qca_wlan_vendor_twt_status to represent new reason code.
Change-Id: I4446ebf2e096873ab641029447f8fba9153216aa
CRs-Fixed: 2908446
Rename 'get_next_lower_bw' API with 'get_next_lower_bandwidth'
to resolve compilation error with WLAN_FEATURE_11BE macro enabled.
CRs-Fixed: 2924071
Change-Id: Idd2db24794ea2ab3766043d94708b3c214c1b262
Currently before suspending the device, we are draining
out the TX/RX SRNGs. The HP/TP updates which are done as
part of this will be posted writes(there won't be any link
levelccompletions for write transactions), there are chances
that we might end up updating HP/TP after the device enters
low power mode leading to system crashes.
In order to avoid this scenario, do a dummy read before
device is suspended; this will ensure all pendings writes are
flushed before read returns.
CRs-Fixed: 2919459
Change-Id: I5ab77f91fe14c506444bdea1587acfb34224fc69
a call to osif_proxy_arp need to be invoked inside UMAC_SUPPORT_PROXY_ARP
as it was protected under build macro UMAC_SUPPORT_PROXY_ARP.
Change-Id: I6e165a328ac65fb659cb9fbc3a0ce39fcbb6744b
When nbuf map-unmap debug is enabled and monitor vap is created on
Pine, then double nbuf unmap error is reported.
This is because in case of Pine, first monitor destination ring is
processed, then first buffer from monitor status ring is processed
to check for ppdu_id difference and then finally monitor status ring
is processed where the same buffer is unmapped again and thus resulting
in the issue.
Add fix to resolve the same.
Change-Id: Ic20b2ead8ef345c4ff568242544d5f69e83fcfdf
When agile spectral frequency is 0 and user tries to start agile spectral
scan, 'A parameter is not initialized' message is thrown from user space
but that message is not enough to identify that agile spectral frequency
is not initialized. To address this, print an error message from driver
when Agile spectral frequency is 0.
CRs-Fixed: 2921000
Change-Id: Ibbb144a57774ad274b31015c7a04aa6097daf09f
Use wlan_reg_chan_has_dfs_attribute_for_freq API to check DFS
attribute flag instead of unused wlan_reg_chan_has_dfs_attribute
API as part of regulatory cleanup effort.
Change-Id: I201e88f346da0ed84d330985783d93a95f608546
CRs-Fixed: 2908161
Check the return status of the IPA api that creates or
releases the smmu mappings of the tx/rx buffers. If the
api returns a failure then assert.
Change-Id: I755765c7c35c901341279eefbc8087d0dce0494c
CRs-Fixed: 2898353
Currently dp_lro_hash_setup is being done in dp_vdev_attach_wifi3 when
pdev->vdev_count==1. However, this counter is not getting decremented and
may overflow on repeated VDEV attach/detach calls. This may result in
LRO keys being programmed again.
Use a PDEV flag to determine whether to configure LRO or not. Fix
pdev->vdev_count by decrementing it during VDEV detach.
Change-Id: I03cba0d95c30831fbe8047828f7bb2cf4a869213
CRs-Fixed: 2906871
Add iwpriv option 34 to dump the reo rx h/w descs
in DDR for debugging. This cmd will first send cache
flush cmd to REO for all rx tids and invalidate the h/w
cache. Henceforth ensuring that the reo status tlvs and
the DDR values are in sync.
iwpriv wlan0 txrx_stats 34 0
Add fix to ensure bar frame with 2k jump err code is
processed correctly using the REO error code instead of the
REO push reason.
Change-Id: Ia05be668343f3a5d4b3262b8d6a367a50875add5
CRs-Fixed: 2895965
As part of FR68217, wlan_get_chaninfo fetches information from the
regulatory channel list. In regulatory channel list, if radar is
detected the entire channel is marked as disabled channels.
After radar detection, when cfg80211 request for channel info,
"QCA_NL80211_VENDOR_SUBCMD_LIST_CHAN" returns center channel number
as 0. SON application uses the center channel number for channel
preference update.
The center channel number value should be a valid channel number
instead of 0. Therefore instead of marking the NOL channel as
disable, update the channel state as CHANNEL_STATE_DFS. This
helps in updating the center channel number.
CRs-Fixed: 2919437
Change-Id: I1722e23e1a68adec4870ad13b2b9a5e41005921c
New Opclass for 11BE mode is introduced. The new opclass for 11BE is
included in global opclass according to 802.11_2016-SPEC.
Another change is modify the type of chan_spacing variable in
struct reg_dmn_op_class_map_t from uint8_t to uint16_t. The places
where the chan_spacing variable used is also modified with the updated
data type.
CRs-Fixed: 2897863
Change-Id: I11f0fc03a8e1bbd188968b7f0cfc4a3b4a3784be
As part of WiFi ini clean-up FR, the ini gReorderOffloadSupported,
is identified as an obsolete parameter. Hence it is deprecated.
Change-Id: I7d5ef3b77eb90ccbad1f84ec7d3cce1df761af15
CRs-Fixed: 2896016
Build regulatory channel list for 802.11BE wireless mode and for the
new channel width 240/320 MHZ. Following is the summary of the changes:
1. Add a new channel width CH_WIDTH_320MHZ.
2. Enumerate a list of 320 bonded channel frequencies.
3. Increase the maximum supported bandwidth to 320/240 in the channel map
4. Introduce reg_channel_list structure which holds an array of
channel params and also a bitmap to indicate the regulatory
puncturing pattern.
4. Build 320 and 240MHZ (punctured 320) regulatory channel list.
CRs-Fixed: 2901260
Change-Id: Ide6a070e0121fbdabf77820a552ca743ca38732a