Remove 11d and LTE feature specific code from target_if_reg,c file.
Removed code is present in target_if_reg_11d.c and target_if_reg_lte.c
files.
target_if_reg.c file has the common code used by both WIN and MCL.
Change-Id: I976efbfadc6b01289cb258be4856b81d4783456a
CRs-Fixed: 2349173
When calling registered mgmt rx handlers,
we iterate through all handlers,
and for each handler, clone the nbuf and if cloned successfully,
we call the corresponding handler.
In case of clone failure, we would simply continue, and not move to the
next rx handler, and would possibly attempt cloning for large number
of iterations. Instead, when clone fails,
we should move to the next rx handler
Change-Id: Ia752a2e7699f6fd92fe2a363a6ae19ca2e0cc5fe
CRs-Fixed: 2379751
There is an instance where the cmd_in_use flag is not
reset when cmd_list is not returned to the free pool
Need to reset the cmd_in_use every time the cmd_list is
returned to the free pool
Change-Id: I1fae24dc691779c6c372936d2963f11f98898750
CRs-Fixed: 2379448
Acquire wakelock to handle the case where APP's send
scan to connect. If suspend is received during scan, scan will be
aborted and APP will not get scan result and will not connect.
eg if PNO is implemented in framework.
Fix is to avoid the system suspend by taking the wake-lock
during scan. Added INI wake_lock_in_user_scan to control this.
The INI is disabled by default.
Change-Id: I62fdbbcbc6f049cb4e36e774d5a417600a2dfa86
CRs-Fixed: 2381622
The original implementation of the "get link status" feature contains
some design and implementation details that are not ideal, so fix the
following deficiencies:
- The link_status_params struct contains three fields that are unused.
- The only link_status_params field that is used, session_id, uses
legacy terminology instead of converged terminology
- The wmi_unified_link_status_req_cmd() implementation uses a void
pointer instead of the correct underlying type for the WMI handle.
Note that change I508ec083298caa45d4cbb1ba28b21e47e379a804
("qcacld-3.0: Align with revised "get link status" Unified WMI") is
interdependent with this change.
Change-Id: I057ca0aff4a627c7fcdb9f90a5da46473813f60a
CRs-Fixed: 2381364
hdd_napi_serialize(0) will call hif_napi_event() with
NAPI_EVT_USR_NORMAL mode. But in this mode, blacklist_pending
is not set as BLACKLIST_OFF_PENDING, so the function
hif_napi_core_ctl_set_boost(false) is not called.
Then core_ctl can not resume to normal status, which
will result in performance and power issues.
Change-Id: Ia2084d9febab0ff4aadb0951bd3347f608a1d101
CRs-Fixed: 2381895
Add mlme message queue handler as the call back for non scan commands
getting activated in the scheduler context.
Add cmd already exists enum to be returned if the command already exists
in the serialization queue.
Change-Id: I24fe453ffddbd4341459874458f11688adebc740
CRs-Fixed: 2377219
There is race when unamp_timer_work and peer is deleted. Hold the
reference to peer while handling the peer_unmap_timer_work.
Add new peer debug_ID for unmap_timer_work.
Change-Id: Ibfd5de602883d3219d1e634ef74ff04e7914efb4
CRs-Fixed: 2383778
In wlan_cfg80211_sched_scan_start() in the case where
wlan_cfg80211_is_chan_ok_for_dnbs() returns failure,
"req" is freed both at the point where the test occurs
as well as at label "error". Since label error provides
centralized cleanup for all of the error cases,
remove the free at the point where the test occurs.
Change-Id: Ibde90c58d76d1db48ee3f12c251be5eaa2b68c7b
CRs-Fixed: 2372789
Change the name of utils_fill_dfs_chan_info to dfs_fill_chan_info since it
is not used by any components other than DFS.
Change-Id: I91e8d2326a830303fbad4564aa13655e50caa4c4
CRs-Fixed: 2375672
The network buffer (nbuf) history records the usual nbuf allocations
and frees, but does not record allocations due to copies or clones.
Record these allocations in the nbuf history as well to aid in
debugging.
Change-Id: If5bed9a41d301d43a1e610df4366d0bcf2c3efc4
CRs-Fixed: 2379866
1. Account for total Tx completions received on wbm2sw release ring.
2. Avoid multiple updates to invalid peer counter on
wbm error path handling.
Change-Id: I904208e1bd83e98598870a1f05c4b17c3fb20e2d
CRs-Fixed: 2366790
MLME commands need to be queued back to back in few scnearios,
added lock to avoid interleaving between commands queueing.
Change-Id: If34aee5849938cbd76183af971ea058ce63505ee
CRs-Fixed: 2384147
Callback signature in wmi_process_fw_event_default_ctx
is different for WIN and MCL. Make it same.
Change-Id: I28ad8e6068742095bdb9bc265e46dead8bfb217d
CRs-Fixed: 2372980
Fix the assert in HTT PPDU TLV processing to account for
member additions at the end of htt_ppdu_stats structures by FW
This ensures Host-FW compatibility without placing hard constraints
on timelines for fwcmn header files to be synchronized with host.
Change-Id: I9f730e5896bec916c8e4e3f0eaa06b183c62f393
OOB read can occur while handling WMI_SERVICE_READY_EXT_EVENTID event
when large invalid num_phy received in that event, as this value is used
as index to array.
Change-Id: I0e80d04d19160e219028b07599a8b9953a798fb2
CRs-Fixed: 2374726
The CE11 in target CE config array is used, but not allocated.
Fix this by allocating memory for CE11 in the global structure.
Change-Id: I85088f5a832aec037a1e46eed4b72ac4228fde44
CRs-Fixed: 2365435
Remove dependency of qwrap on VAP layer and radio(ic) layer data
structure. Added flags to detect qwrap specific features in vdev
structure.
Change-Id: I5bb951ce8c813928b9ab189a77bf4da2ac6258d6
Some compilers allow functions to be annotated such that a warning will
be emitted if the return value of that function is not used. Allow the
WLAN driver to leverage these annotations by introducing a wrapper in
QDF, qdf_must_check.
Change-Id: I9c1328ae904857717703aae3748b207967a8dd3d
CRs-Fixed: 2382837
Make sure the objmgr_peer is not deleted before
dp peer is deleted, which will avoid the access
of already freed objmgr_peer for connected sta peers.
Change-Id: Ib931dcd0c5650fea5284e9dd53dae9e41f662c56
CRs-Fixed: 2359645
hal_srng_cleanup was called from dp_srng_cleanup after the
hal_soc was freed.
Move the call to dp_srng_deinit where the memory is still
valid.
Change-Id: Ida25ee48e527b5139fc05cd85c5634e70965ccd0
CRs-Fixed: 2367332
Currently we have same function name/different implementation when set
wmi scan channel list for WIN and MCL, the implementation for WIN side
send_scan_chan_list_cmd_tlv looks more intuitive which will remain with
minor change.
Remove definition of struct scan_chan_list_params and wmi_channel_param
which is no longer needed. Change HT flag set independent on VHT flag.
Add WMI DFS flag set if channel_param.dfs_set set.
Change-Id: I131ca09c12687bda5eb3eb03b7bcca1d62ac7aa9
CRs-Fixed: 2363675
As a hot fix before h\w part change, just limit maxinum nss number
to 2 for MCL platform.
CRs-Fixed: 2377796
Change-Id: Iad205804be90b6803ff2f1afa79076dde9b77013
Added support for pmksa handling in crypto to
support add_pmksa, del_pmksa and
flush_pmksa function calls from cfg80211.
Added support for adding pmkid in rsnie.
Change-Id: Ic8add9635c2e7fd73da21b1305467e6500f6d73c
CRs-Fixed: 2363632
To align with the converged nomenclature replace the identifier
session_id with vdev_id in qdf_trace APIs.
Change-Id: Ic97a2df848e2b687edbd29c419193f4285125f81
CRs-Fixed: 2381424
Currently host does not process the country code if CC
is not found in the firmware. Firmware supposedly set world
mode if CC is not found. Set the world mode in such a case.
Change-Id: I87dde58c70ce12358583c704d1959e0467f9b186
CRs-Fixed: 2368293
Create target_if_reg_11d.c and target_if_reg_lte.c files.
Move 11d and LTE feature specific code from target_if_reg.c file to
these files.
These files has only MCL specific code.
Change-Id: I016c6e6c8b6d54670496367e08ac5d83ad94bebd
CRs-Fixed: 2349173
Change Ie6c4a9847f2daa9ba2aebd17f386d584201b86d6 ("qcacld-3.0: Remove
obsolete set/reset ssid hotlist") in the qcacld-3.0 project removed
the only client of the WMI SSID hotlist infrastructure. Since this
infrastructure is obsolete, remove it.
Change-Id: I4a1de39c982947bbf4958d976426f95e3217f1a3
CRs-Fixed: 2381277
once in a while the HW is sending a descriptor which
is already processed by host. This can be a potential HW
issue, as a WAR we are not processing such duplicate descriptors
instead increment a counter and continue with next descriptor.
Change-Id: I6c9bc6a9fb4705b42284171a32855411aa5dd73f
CRs-Fixed: 2338543
Refactor the prints for rx management frames. Do not print beacon,
probe resp and probe req frames in txrx module.
Also remove the beacon print from wlan_cfg80211_inform_bss_frame.
Change-Id: I1dbfcec1614b9465d97c010fa4c386f3a1612f5f
CRs-Fixed: 2381796
Currently the logic present for disabling the indoor channels during SAP
start is not complete. The way of using the two ini deviates the driver
from the expected behavior.
Mark the indoor channels correctly during SAP start and SAP stop as per
the expected behavior.
Change-Id: Ia136dcbc4f20ad72812f096531863aeb5fbe66fb
CRs-Fixed: 2368218
Change the CDP abstraction APIs for ast entry find, add and delete
to avoid external references for ast entry in upper layers
Process the HTT v2 peer map messages which will be enabled for
nexthop ast entries and use these messages instead of WMI event
for HKv1 WAR where we have to wait for delete confirmation from
target event which is processed in control path
Change-Id: Ifa91a259c0762344deb8ab89e868fc5554d75543
CRs-fixed: 2354951
In extract_mac_phy_cap_service_ready_ext() the num_hw_modes
is used as loop bounds and may be attacked.
hw_mode_caps is a pointer defined by firmware. The exact
array length cannot be got since hw_mode_caps pointing array
length is variable. So use max number to check
num_hw_modes before loop.
The max number of hw modes is 24 including 11ax.
Change-Id: I72f30ba819bca89915bb09f271e3dbe7c0f157a6
CRs-Fixed: 2369233
Add command support to enable/disbale 'Spatial Reuse Value15
Allowed' parameter in the Spatial Reuse IE.
Change-Id: I755a15da7758704f2e833ddc61805d45654f0957
CRs-fixed:2345770
Current Spectral WMI logs on TLV systems are
difficult to interpret, correct it.
Also, set their log level to QDF_TRACE_LEVLE_DEBUG.
Change-Id: I6f19143df230d82edc2fb8dd86b18addbb327d6b
CRs-Fixed: 2369960
The pointer to chain masks capabilities is increased, and the number
of chainmask capabilities isn't check if valid. Which will cause oob
read list of chain mask capabilities.
Change-Id: I1f11fb49d545a4f88fe4d0734968dbe17c3f1a7e
CRs-Fixed: 2347661
QCA8074 platform supports DBS(two radio) and DBS_SBS(three radio)
modes. In these cases, same WMI event ring is shared for all the
radios. Increase the WMI event ring size two absorb host delays
due to lower clock platforms. This increase is required even to
support three radios.
Change-Id: I1aa08b8fa879f6ec54c838541a0e4c4e5871b60a
CRs-Fixed: 2378193