Add Objmgr ID and related definitions to support the newly
defined DISA component in CLD.
Change-Id: Ibbe5db39c01dae94cad5af5f4dccd2611c5b06d4
CRs-Fixed: 2159599
Refactor NAN target_if to make it wmi-type agnostic. Specifically
do not access wmi structures in NAN target_if. All the access to
wmi structures should happen in tlv and non-tlv specific wmi files.
Change-Id: I944b678fc501723d7cd26c9b21c4cc6ddb7fda4e
CRs-Fixed: 2159876
Reduced the number of scheduler message buffers for WIN to
2k from 4k since WIN is only using 2 scheduler queues.
Changed the order of two members of scheduler messgae structure
to avoid additional padding on 64bit platform.
Change-Id: Ic74d60878867c45413bc4fbd5c56feb4dd421699
CRs-Fixed: 2157621
Add bss_scoring_required in scan filter to enable/disable
scan results filtering based on scoring
Change-Id: I6c2c08a1cd959f1586e3e5bb7b63665f04c3a856
CRs-Fixed: 2165465
TX descriptors should be unmapped and freed when VDEV is detached.
Or else it will cause memory leak in qdf_mem.
CRs-Fixed: 2163178
Change-Id: I59da73787786f78c1f057e4daad7b4d53e7fbe4c
The kernel panic is seen because wrong variable was used , and this
variable was getting de-referenced without initialization.
Fix this by using the correct variable
Change-Id: I1f03c724f3ecba44a8ce0bc94242f2acafa5649d
CRs-Fixed: 2166423
Mgmt tx rx descriptors are now used instead of WMI descriptors
for management Tx/Rx.
Since WMI descriptors were per radio to support probe response throttling
the mgmt descriptors should also be moved from per psoc to per pdev.
The reason for this is probe response throttling should happen per radio
and not per psoc since if the mgmt frames peding counter is
maintained per psoc, it could affect other radios of the same psoc also.
The maximum number of mgmt descriptors per psoc was 50.
This is also changed to 512 mgmt descriptors per pdev which is the
same as WMI descriptors per radio as used earlier to support
probe response throttling.
Change-Id: Ibb46082e0acf340800418a7e9689a29cd688bdab
CRs-Fixed: 2146177
vdev stats are getting reset to zero when a peer disassoc
with the AP. the fix is basically update peer stats to
bss_peer just before we delete the peer.
Change-Id: Ibada4ab82fbb68f32df89bdbae8b172bc8973fe7
Add locks to prevent concurrent access of DFS NOL list
from different contexts.
Change-Id: Ib94bb08bcf3e0cac80b2f8e6be7ab4fd54c53a68
CRs-Fixed: 2156892
Send control packets as mcast even though snoop entry is not found
instead of dropping the frame. These control frames include IGMP/MLD
frames that is required to add the snoop entry.
Change-Id: If905b54e2ae9eaa3943428b36b1b894bcd528785
CRs-Fixed: 2133270
When a data packet is sent via HTC, it is mapped before being inserted
into the TX queue. However, for control packets, the mapping is done
after being inserted into the queue. This leads to a situation where the
TX queue flush can unmap a pending control packet that was never mapped.
Make sure the TX flush function only unmaps packets that have previously
been mapped.
Change-Id: I48572fb34ae940923012d495625a33a00f74b9ed
CRs-Fixed: 2157006
For control messages, a path in HTC was performing double dmamaps
and this was, in time, causing dmamap failures on SMMU.
Change-Id: I19f7e13a0a19404fe1161127b10f52225b6a4248
CRs-Fixed: 2151773
Added dp path function pointers for inact
timers and set params used in WifiSON
Load Balancing Daemon
Change-Id: Ic23d7b562b476c0fb92c8734b029a4e1632599a5
Avoid possible null pointer dereferece and out of bound access
in NAN component.
Change-Id: I40ba4e340e34e8975c782c0a6329322e3c151326
CRs-Fixed: 2160751
Avoid leaking pointers to freed stack memory by not enqueing packets
onto a stack local queue in htc_send_pkt
In particular, the packet was not being removed from the stack queue
when a dma map error occurs.
Change-Id: I4519a302b3d6cc19f52e8cefa71dbd750ede0a0b
CRs-Fixed: 2119792
Size in consistent_memory_free should be same as size used in
consistent_memory_alloc. Fix the value sent in consistent free for CE
rings.
Change-Id: Iba6295cead21d357e266e753ca406732021ddfb4
CRs-Fixed: 2165385
In htc_issue_packet takecare to enqueue back the dequeued packet.
Otherwise we will be leaking the packet.
Also takecare to unmap the mapped netbuf if we fail to send.
Change-Id: I48dbe537ae5b0fe89785f4309325c7089b2ace56
CRs-Fixed: 2151122
Avoid leaking pointers to freed stack memory by not enqueing packets
onto a stack local queue in recv_packet_completion
Change-Id: Ic417f6b008fdc769227c7a23bc8e01a2064ce928
CRs-Fixed: 2119792
Add changes to MGMT TxRx service to allow GAS public action frames to
be forwarded to LIM for further processing.
Change-Id: Ie48e501a028c1b64b68debfc44757e2656048dcf
CRs-Fixed: 2161789
Stop the opportunistic timer & take action to keep HW mode in sync
when hdd stop happens.
Change-Id: Id34adb579987605831d2c7c4e22c2d76fe7d25dd
CRs-Fixed: 2165109
fwhdr_abstrct: Use Host based TARGET_TYPE instead of firmware
defined TARGET_TYPE. It will abstract dependency on bmi_msg.h.
Change-Id: I76d744db27df730a3a91a243adfc07fc17d77487
CRs-Fixed: 2140921
When memory debugging is enabled, qdf_mem_malloc and qdf_mem_free do a
number of memory corruption checks. Extract these checks into their own
functions to allow other memory allocation/free logic to leverage the
same logic.
Change-Id: I07802093119c90b3d8c40a50d5b4bb152cb8243f
CRs-Fixed: 2136659
Check return of function target_if_wifi_pos_get_txops against
NULL before using to avoid null pointer dereference.
Change-Id: Icbd58e4495a6bd31a9fe5c74eb51b67bb8157acf
CRs-Fixed: 2160763
Problem:
When a STA vap in repeater AP starts scan it checks for
is_cac_in_progress variable. If this variable is set true, then
STA does not scan. is_cac_in_progress is set true/false when dfs
is not NULL. Since DFS is NULL for 2G radio, is_cac_in_progress
has some random number and hence scan is cancelled by the HOST.
Solution:
Initialize is_cac_in_progress to false in
dfs_scan_serialization_comp_info_cb(). Set this variable to true
if dfs is not NULL and AP is performing CAC.
Change-Id: I3e04bfaf05001f7f76f67605fb2c6d35c3113683
CRs-Fixed: 2166300
Invalid memory accessed in WMI_REQUEST_STATS_CMD, and it
causes kernel panic in the system.
Fix the invalid memory access in WMI request
stats function.
Change-Id: Id838569fd5667b118aecc03f7af5e5f9f146b2a6
CRs-Fixed: 2162279
If hal_srng_setup() fails, memory allocated for srng
is not freed resulting in a leak. Free the memory in
that case. In future, return error to caller and
assert when invalid ring ID is used during setup.
Change-Id: I6f3a7494a5c5e861652f3a38d18c220cd9a6eef2
In mon_rx_status structure mcs,bw and nss values
not populated properly. To resolve this issue, update
mon_rx_status structure fields when embedding values to
respective flags
Change-Id: I33c19c209fcdb7252af4a7ed6cbdbf3682fd4236
When number of connections is more than 2 then the pcl length will be
garbage value. Initialize the pcl length with 0 to avoid wrong channel
list initialization.
Change-Id: If08dc2670ff5ff296220d6ad68766becb252fab7
CRs-Fixed: 2164773
In dp_rx_null_q_desc_handle, if peer is invaild and no need to
deliver to the upper layer, the nbuf must be freed before recycle
the rx descriptor.
CRs-Fixed: 2153932
Change-Id: I1b373d1b5b50da42b896f0b2fd7bbd13b0e2466d
For big endian based offload radios, the key installed using
WMI_VDEV_INSTALL_KEY_CMDID requires to be code swapped as the
copy engine for big endian platform does byte swap operation
on the received key before sending it down to FW.
The big endian conversion is carried out
in ol_if_vap.c for big endian platform specific radios.
However, it is observed that an additional copy
is carried out in the WMI layer that is overwriting
the converted key with old key, in the non-swapped form.
Hence move the big endian operation to the WMI layer to
ensure uniform functioning of the API
Change-Id: I9ee16572d08045b0f55b0de190efba5c6806031c
CRs-Fixed: 2161682
Add aes_ctr, aes_siv and FILS AEAD crypto module.
This includes FILS AEAD encrypt and decrypt functions.
Change-Id: Ibbeb28ea53c91ad473247015335b593bc8038485
CRs-Fixed: 2093478
Only need to udpate per peer statistics in RX. What's more, this
statistics should be protected by flag of process_rx_status.
CRs-Fixed: 2160448
Change-Id: Iff3f5e1e6d00ef777cd6b62d6903c710c9430960
Adding the target_if interface to get the wmi_handle from pdev,
the condidional flag is added due to different implemention of treating
the tgt_if_handle.
CRs-fixed: 2161374
Change-Id: Ia5206199afd5d41774928793d78e6648f03c181b
Both process_tx_status and process_rx_status is disabled for the
default setting. Enable those flags by default for MCL
CRs-Fixed: 2146734
Change-Id: I8c5a636badcfe9327fce7f3332abd93946f003bd
Check if memory is allocated successfully for the peer
before adding the peer to the deleted peer table.
Change-Id: Iea623075f85787039d67733dc8071e0c093073ed
CRs-Fixed: 2160767
Added a check in RX path to detect multicast loopback packets in
qwrap mode. In qwrap mode, there are multiple station vaps and
multicast loopback packet from one station vap should not come into
the other station vap. Added a check for this by iterating through
the vap list and checking if any of the vdev mac address matches
with the source address of the packet.
Also added a new vdev parameter to check if qwrap isolation mode is
enabled. In qwrap isolation mode, loopback packets should not be
dropped.
Change-Id: I7d35bf657a87337871156e4caec9038432e23a87
CRs-fixed: 2149190
Add host support to enable setting MSDUQ depth parameters per
TID per peer.
Parameters include MAC Address, TID number, update mask and
Q depth threshold value.
CRs-Fixed: 2162460
Change-Id: Ie947fd599278a04e13d6aa6c89f840187dbf17fa
Fragment count will be larger than the upper limit of
cvg_nbuf_cb->extra_flag.num which would lead to an overread
of fragment length. Upper limit check for fragment count
is added in this change
Change-Id: Ib4ba4047f5eea89c09a92f89cf72e1976e0c9f3c