For all Power/WOW operations in HDD layer, use WLAN_OSIF_POWER_ID
reference count dbg id for vdev reference count acquire/release.
Change-Id: Iec49ba5f2dfc1d809f64767d17eb00e4ba25739a
CRs-Fixed: 2819394
Enhance qdf tx rx to hw tx completion status mapping.
Add inline function to convert hw status to qdf
status. Add dummy argument to qdf_dp_trace_ptr function.
Change-Id: If225bf385a3ce12f354f761594bf3d51ff710a13
CRs-Fixed: 2810592
Currently, FW diag logs, management frames and stats responses are
processed in worker context. Because of this, there is a possible
out of memory scenario when there are huge number of diag events
waiting in work queue.
To address this, process diag events in a separate worker thread and
set the limit for the number of diag events that can be queued in
work queue.
Change-Id: Ib9f7b8042479e8b2f4d67c9a4250932b018f29a4
CRs-Fixed: 2821534
When set ini gEnableConcurrentSTA to wlan1, two adapters with STA
type will be opened in initialization, in STA+P2P_CLI test case,
it will be failed for checking maximum allowed STA vdevs in change
interface APIs from QDF_P2P_DEVICE_MODE to QDF_P2P_CLIENT_MODE. If
just open adapter with STA type and don't start adapter, it won't
create vdev in firmware.
When do interface up action, hdd_start_adapter() will create vdev in
firmware really, so add interface up status check when checking for
max allowed STA vdevs and check max allowed STA vdevs in
hdd_start_adapter().
Change-Id: I5b2dd09fb58aa3135743a029889e689729bd05a7
CRs-Fixed: 2815174
cds_get_context() function already takes care of logging the
caller function name in case of any error.
Hence there is no need to add the error log again.
Getting rid of these unnecessary logs reduces driver memory footprint.
Change-Id: I44e2998effe642932d83376bf92083be8d52073d
CRs-Fixed: 2822110
Check the factors as below to decide whether the channel is
allowed or not:
* If the channel is in LTE coex channel avoidance list;
* If it's STA+SAP SCC;
* If STA+SAP SCC on LTE coex channel is allowed.
Replace policy_mgr_is_safe_channel() with this new function
for sap channel selection and acs channel filtering, to allow
unsafe channels when it's STA+SAP SCC and STA+SAP SCC on LTE
coex channel is allowed.
CRs-Fixed: 2743042
Change-Id: Ic5a84b2628200fe9decf6972f00706f190f04722
Add logic to
- Check if connect req freq is 6Ghz and security
is not allowed for 6Ghz, reject connect.
- Ignore 6Ghz APs if connect req security is invalid
for 6Ghz
Also added user config key_mgmt_mask_6ghz mask
to allow specific AKMs, by default all are allowed.
Add added user config check_6Ghz_security to enable
security checks as per spec.
Change-Id: Iada7bb685b272e26cff7e89cf64d181ed6eb48a4
CRs-Fixed: 2820358
When firmware sends wma_csa_offload_handler() event, peer should
switch to new channel and update network type. But only frequency
is getting updated, network type is old.
Add check to update network type based on channel frequency
Change-Id: Icd70823f98cfd528863cfb9ec1c2bf5e78e9912b
CRs-Fixed: 2813847
Current logic in wlansap_get_chan_band_restrict will skip channel
switch for 2G channel which is disabled due to CC update by mistake.
Update the condiction logic to make it work properly.
Change-Id: Ib4c07447f14a47c2934c63ebdc09821eb8e5a3d1
CRs-Fixed: 2818651
Change HDD layer to use WLAN_OSIF_NAN_ID reference count
dbg id for vdev reference count acquire/release when process
NAN request.
Change-Id: I5630bedb742a9a31199b3c4f4b1853bf60b029ed
CRs-Fixed: 2819557
cds_get_context() function already takes care of logging the
caller function name in case of any error.
Hence there is no need to add the error log again.
Getting rid of these unnecessary logs reduces driver memory footprint.
Change-Id: I5bf676c79e9e12a797dc6792ee8014fb30b0dff3
CRs-Fixed: 2821005
Currently in driver when value is set as QCA_SETBAND_AUTO for
QCA_WLAN_VENDOR_ATTR_SETBAND_MASK attr in QCA_NL80211_VENDOR_SUBCMD_SETBAND
command, it return invalid argument error instead of enabling all supported
bands.
To resolve the above issue add a check for the value QCA_SETBAND_AUTO and
if it is true enable all the supported bands.
Change-Id: I0f4f03b8e2e049cc253822582436fd1fabf65133
CRs-Fixed: 2819677
The SHO feature is used to offload beacon/probe response to HW.
So a new vdev param is required to enable/disable this feature.
Change-Id: I83d71d63485dee8d3433bf967a7feb56c1039f93
CRs-Fixed: 2815270
Problem scenario:
1) Host gets Firmware down indication and stops all timers.
2) While processing association completion, host sends disassoc if
user changed reg domain during association and new channel falls
out of current reg domain.
3) Host fails to send disassoc to fw as WMI is in stop state due to SSR
4) Host doesn't check wmi status for disassoc tx and on failure depends
on disassoc ack timer to complete disassoc cnf.
5) As host stops timers on firmware down indication, disassoc ack timer
doesn't trigger and host fails to complete disassoc cnf action. Which
lead to stuck the vdev state machine at suspend down and peer refs
remains undeleted.
To fix this issue check the status of sending the disassoc, and if the
disassoc failed to send then perform the follow-up actions that are
normally performed upon receipt of the disassoc confirmation.
Change-Id: Ic2b88cfcbcb755a869ee281be4e1e8a9cec8299b
CRs-Fixed: 2816503
Change HDD layer to use WLAN_OSIF_SCAN_ID reference count
dbg id for vdev reference count acquire/release when process
scan request.
Change-Id: I4c181cd8213c5f03ca6416306f9468f9643eac99
CRs-Fixed: 2813929
If IPA RX hit back pressure, FW will reroute RX frames to host
by REO2SW1 ring(reo_destination_indication 2), this might introduce
FISA RX ring mismatch issue.
Bypass FISA if IPA RX packet rerouted to host by
reo_destination_indication 2.
CRs-Fixed: 2820235
Change-Id: Ife8f2168e1942204cfc66a2a135cb93c9a1e9910
Change HDD layer to use WLAN_OSIF_STATS_ID reference count
dbg id for vdev reference count acquire/release when process
statistics request.
Change-Id: I9ede0575d0f83c69ab08e05fae12f4c4b9862807
CRs-Fixed: 2805047
Currently when driver receives CSA, it uses channel number based
api to fill the channel params which does not work for the 6GHz
channels and may give incorrect results, which may result in
unexpected behavior.
To address above issue use frequency based api to set channel
params which gives correct results for all the bands.
Change-Id: I1e94a9fdac8dfae471ec83e9304d33cf154e49e1
CRs-Fixed: 2812548
Currently, the logs in SAP data Tx path are not rate limited.
If there are any error scenarios in throughput tests, this may endup in
continuous logging of the error messages.
To avoid this rate limit the error logs in SAP data Tx path.
Change-Id: I062b52c90e1e7ed85e74cc774f7817159f98eee6
CRs-Fixed: 2811093
Currently WLAN_PROFILE is overridden to default in all cases.
In many targets, defconfig other than default_defconfig needs
to be picked, so set WLAN_PROFILE to default only if it is not
set before.
Change-Id: Ia9a5ad7c9eedd56be59418371867107258e65ea0
CRs-Fixed: 2818090
Set the global device mode which can help in the memory optimization
based on the device mode.
Change-Id: I32d7c2f5be9cf8972ef9ef87ae698655629344b2
CRs-Fixed: 2809941
If data stall happens, both LFR3 roaming and NUD may happen,
if LFR3 happens first, updated connected bssid, NUD handler will
add new bssid to blacklist and trigger roaming again by mistake.
Fix: Once roaming succeed, reset NUD status to NUD_NONE to finish
current NUD cycle, but don't zero gw mac addr since roaming does't
update gateway.
Change-Id: I03685ca21348444d929e042f12dc3a837ca51940
CRs-Fixed: 2818785
For all tdls operations in HDD layer, use WLAN_OSIF_TDLS_ID
reference count dbg id for vdev reference count
acquire/release.
Change-Id: Ic5ab93eb865e016d485f09a9af062062d1f97526
CRs-Fixed: 2805028
Change HDD layer to use WLAN_OSIF_P2P_ID reference count
dbg id for vdev reference count acquire/release when process
p2p request.
Change-Id: I485ca13d37d3440b8aee75ced7fba75ff24efbd1
CRs-Fixed: 2813935
Change HDD layer to use WLAN_OSIF_OCB_ID reference count
dbg id for vdev reference count acquire/release when process
OCB request.
Change-Id: Ia6aabc3c3f41fa0f52cf626c99143f3b9682d35e
CRs-Fixed: 2813939
Add new hdd_objmgr_get/put_vdev_by_user to include user id(reference
count dbg id) to help identify the ownership of the ref count.
The old hdd_objmgr_get_vdev api is deprecated. And it will be removed
once all of the reference to it replaced by new API.
Change-Id: Ibd6528083d725a5930cece96ed3268b27e5263b9
CRs-Fixed: 2804993
Add check in function 'policy_mgr_get_sbs_channels' to restrict the
array index out of bounds.
Change-Id: I387b666095107faf284e35f073dfe856d38323d3
CRs-Fixed: 2776966