Set HE capability support in scan channel list command to enable
HE IEs probe request frames.
Change-Id: Ia8836f033ee010ba21f82fdc21da5085e70bc0a4
CRs-Fixed: 2478069
Firmware will trigger WAKE MSI for both runtime PM and system
resume. There is no need to request runtime PM resume again if
it is a system resume. Check the flags to avoid doing so.
Change-Id: I70bdfadf1d7c0ffd4e2849458c6aee6931037cd3
CRs-fixed: 2479631
Add QDF API to set cpu mask - qdf_thread_set_cpus_allowed_ptr.
Linux version of this API is implemented using set_cpus_allowed_ptr
linux API.
Change-Id: I3122e2b30c6d3f02e9c874c19db610e5f09ec064
CRs-Fixed: 2474323
Pointer 'pPacket' returned from call to the function
'htc_packet_dequeue' may be NULL.
Add a NULL check for pPacket before dereferencing it.
Change-Id: I1ecb82cce0fc00877b3ec2de2676027dde261186
CRs-Fixed: 2478206
The old change I7e5a21601642e0d6afef73beeecf80a3e0475909
is missing when new scan mgr introduced, re-design the
change:
Traditionally full spectrum scan on STA/CLI is not
allowed when SAP/GO is already present on DFS channel.
With new generation of hardware, agile scan and
agile DFS scan features are supported which will
allow hardware to do full spectrum scan even if
SAP/GO is present on DFS channel.
Change-Id: I28e034627876b5460f85e74e66d6f4e7b2d5846c
CRs-Fixed: 2470935
CH_AVOID_RULE_DO_NOT_RESTART has existed, can be used to support
channel avoid event ignore feature by ini
restart_beaconing_on_chan_avoid_event.
In automobile special requirement, LTE co-ex event needs to be
ignored to avoid mcc.
Change-Id: If24c9132c0098f3c463d3eefc6e957335ddedef1
CRs-Fixed: 2476111
Under memory debug, qdf_mem_multi_pages_alloc function is getting
reported as the culprit of memory leaks when there is no associated
qdf_mem_multi_pages_free call. qdf_mem_multi_pages_alloc is
just an allocator function which uses qdf_mem_malloc internally to
serve the requested allocation and is not the actual source of the leak.
As there are multiple users of qdf_mem_multi_pages_alloc in the code base,
add memory debug versions of qdf_mem_multi_pages_alloc/free to track the
actual users of the allocations.
Change-Id: I8b2159de842a3c5d7f9cdb244ca148cf6df37d0d
CRs-Fixed: 2474749
hif_ext_group is not initialized if DP interrupt is not registed
like monitor mode, invalid access will happen in function
hif_hist_record_event.
if hif_num_extgroup is 0, stop access to hif_ext_group member.
Change-Id: Id4432577446caa8887ca6d1fb8b669dda8c9fdf3
CRs-Fixed: 2475506
Clean up CONFIG_MCL from qdf_lock.c file by replacing with
feature flag FEATURE_RUNTIME_PM for which included header
files are used.
Change-Id: I9afff730b1b96a75888ca48b33c0020667d651fc
CRs-Fixed: 2477462
The qdf nbuf cb has members defined as union
which would be used separately either for WIN or MCL.
There are separate header files defined for having
different accessor functions for WIN or MCL.
The inclusion of the header file is differentiated
based on CONFIG_WIN which should be removed.
Use a different macro instead of CONFIG_WIN.
Change-Id: I6709fde22a0458ec184b9a0cba832b848fd2a8fa
CRs-Fixed: 2472886
Packets from STAs that are not associated are sometimes indicated
as Decrypt error.
Process these packets by sending a unicast Deauth packet to them.
This is also required to trigger unicast Deauth, if the STA
ignores broadcast Deauth and later send packets to AP in Deauthed
state
Change-Id: I6ebf848d4b9409931ae1750b5ff0617839b04105
Currently the driver uses i both in outer and inner loop
which would corrupt the value of i and the loop would
never end.
Fix is to use another varibale j for the loop.
Change-Id: I6f64fb45d1007621b03fe93cd29da7d4c827a23f
CRs-Fixed: 2476402
When driver requests for stats to FW, FW sends response with
all the requested stats, in this case if the FW buffer gets
filled it sends the remaining stats in next event and FW keeps
sending the stats event until it sends all the requested stats.
FW sets is_last_event field in the response event if the event
is the last event for the requested stats.
Currently driver is parsing only first event and completing the
request from all these events and not checking the last event
bit when it requests for peer stats because of which some of the
stats are getting dropped.
To avoid above issue, add a logic to check the last event bit set
by FW and complete the request only if FW sets the last event bit
in the response event.
Change-Id: Ia3a2f2b4960579ac67bbf1354755af9c2098975a
CRs-Fixed: 2470910
For newly created AST entry do not send AST update until
we get the MAP event for create
Change-Id: I840ef62825d4537439a4020a8a5a5547b575a664
CRs-fixed: 2468833
Currently the drivers blocks every simultaneous scan
that comes to the driver, and returns BUSY.
here if the STA SCAN which is low priority after connection
comes, and at the same time ACS has completed and the hostapd
tries to do a HT scan, it would get error as BUSY, and it
will try to scan again and again until successful or the timeout
happens. This will in turn delay the hotspot bringup as start
ap does not come until the hostapd does a OBSS scan.
Fix is to skip the check of simultaneous scan for SAP, and make
the priority of scan request high for SAP scan.
Change-Id: I163dbb2fdca1245742cca049de47478117197412
CRs-Fixed: 2471897
1. Record hp/tp for ce dst and status ring to keep
a track of the last reaped and posted buffers.
2. Add union ce_srng_desc to record ce srng descriptor
information.
Change-Id: I6f4728893d629c60f676826bf806b725326fb83d
CRs-Fixed: 2465492
In current design, Host driver copies kck and kek from pmo_gtk_req
to kck and kek of WMI_GTK_OFFLOAD_CMD_fixed_param. Host tries
to copy PMO_KCK_LEN i.e 32 bytes to an array of length 16 bytes
which can lead to OOB.
Fix is to copy only 16 bytes of kck and kek. Copy the bytes
from pmo_gtk_req same as the size of cmd->kck and cmd->kek i.e
destination array size to avoid OOB.
Change-Id: I999add18e18bedc9cfa1a0cfa5c0dad781e8e13f
CRs-Fixed: 2470368
In case of SDIO/USB TX bundling if there is hif_send_head failure
packets are not added back to Endpoint tx queue and resulting in
packet drop.
Add packet back to tx queue if hif_send_head send failure
for bundled packet.
Change-Id: Id613a414f0caa71a33c79186ae726550cb710c4a
CRs-Fixed: 2468882
Add support for target_if timer restart when
vdev mgmt ops request is queued though the intended
response corresponding to request is not yet received.
Change-Id: I08e474ac66a0c399a93ffbc4a24aab78084072d2
CRs-Fixed: 2463180
Release mon_lock in dp_reset_monitor_mode function before returning
if status is not successful.
Change-Id: I321cd55225ed3cc5e5b4a752fb10604d05fb9a56
CRs-Fixed: 2462725
The driver uses a timer to check if there is a potential ref leak by
inducing assert if a given module does not release ref even when the
object is in L-state. But in case there is SSR/PDR, it might take more
time to clean up/release the refs. In this case, no assert should be
triggered.
Add a check in wlan_objmgr_iterate_log_del_obj_handler before calling
the assert API.
Change-Id: Ifb7568e11bff2b9fc610633af730461e33dc5539
CRs-Fixed: 2468301
Add enum for baseline radio level channel width. This is required for
some low level use cases which need the original width configured into
the radio when channel is configured, rather than per-VDEV protocol
level width which might vary.
Change-Id: I8215003774bc46403a038011e7581517d25b94f9
CRs-Fixed: 2474794
In dp_ipa_setup function, the function qdf_mem_zero is called
and should receive a pointer instead of address to a pointer for tx
and rx when they are called. These pointers are also initialized to
NULL when declared locally.
Change-Id: Iec9c76c63cc2ec00bdfb54497cca2f22fabff045
CRs-Fixed: 2469428
In dp_rx_process function, check if peer pointer is NULL
before using as argument when calling dp_rx_deliver_to_stack.
Change-Id: I6584c79047a809f28e65faad47d1c7220e7057bb
CRs-Fixed: 2470345
Currently qdf_print, qdf_alert, qdf_err, qdf_warn,
qdf_info, qdf_debug, qdf_nofl_print, qdf_nofl_alert,
qdf_nofl_err, qdf_nofl_warn, qdf_nofl_info, qdf_nofl_debug
macros are defined under CONFIG_MCL feature flag since
these trace prints are supposed to be used only for QDF
module with module ID as QDF_MODULE_ID_QDF, WIN is using
these definitions with module ID as QDF_MODULE_ID_ANY and
these are separated with feature flag CONFIG_MCL.
As a part of cleanup activity of CONFIG_MCL feature flag
move these WIN specific trace definitions under WIN
specific feature flag QDF_TRACE_PRINT_ENABLE.
Change-Id: I838f76f2e3f4c2dd28f0463fa6c9d981304b136e
CRs-Fixed: 2472021
Currently NBUFF related parameters are declared under CONFIG_MCL
feature flag and are getting used under
FEATURE_NBUFF_REPLENISH_TIMER feature flag.
As part of CONFIG_MCL cleanup, move NBUFF related parameters
under correct feature flag FEATURE_NBUFF_REPLENISH_TIMER.
Change-Id: I438f7dbc0c67343c94ad78ea4df4cfb1fd2f051b
CRs-Fixed: 2472011
Add feature flags DP_FLOW_CTL for DP flowctl ops,
DP_PEER_SUPPORT_OPS to support peer handling in DP,
DP_POWER_SAVE for power saving ops in DP, DP_CON_MON DP_MOB_DEFS
DP_INVALID_PEER_ASSERT DP_PRINT_NO_CONSOLE and DP_INTR_POLL_BOTH.
Change-Id: I01dafadf6578c0b5f36ab3ef56624912fb66b100
CRs-Fixed: 2467170
Change Spectral report processing logic to handle
Agile Spectral reports. 160 MHz state machine is not
affected by Agile Spectral reports.
CRs-Fixed: 2458359
Change-Id: Iead6427f57edddd61f7d64a961cc6d936d54ab9e
Reduce log level in tgt_mc_cp_stats_process_stats_event,
tgt_mc_cp_stats_update_peer_adv_stats &
tgt_mc_cp_stats_extract_peer_stats from error to debug because
a stats event can be received unsolicited.
Change-Id: I5ad216034eefd8197f80c2a50e8ae0833b149d06
CRs-Fixed: 2471465
1. Add config table to accommodate per ring type
configuration to have a finer control over the
ring.
2. Provide struct wlan_srng_cfg interface to add
more parameters to control the ring.
3. Add interrupt threshold configuration parameters
to wlan_srng_cfg structure.
4. Add WLAN_CFG_INT_TIMER_THRESHOLD_WBM_RELEASE_RING
and WLAN_CFG_INT_TIMER_THRESHOLD_REO_RING to have
different timer values for REO and WBM ring.
Change-Id: Ied50e3241ab2cc181ca4ed7f126959cd5d9d2de5
CRs-Fixed: 2455297
In send_roam_scan_offload_mode_cmd_tlv, psk_msk from incoming
roam request buffer is copied to destination roam_offload_11i->pmk.
The psk_msk is of size 48 bytes, while destination pmk is of 32
bytes. This could result in OOB.
Copy only 32 bytes for 11i pmk as 802.1x doesn't have PMK size
greater than 32. In future, if Suite-B roaming support is
required, interface changes are need to add new parameter to
copy the remaining 16 bytes.
Change-Id: I303fc15fc0f0169a049d0542674bd7add3cbb1a1
CRs-Fixed: 2470353
Currently the driver checks that DBS for connection
is allowed or not, and on that basis rejects the scan,
but it may happen that FW supports DBS, and DBS for
scan is enabled in the ini, but the DBS for connection
is disabled.
In that case the diver opts for non-dbs scan.
Fix is to allow DBS scan in case of DBS scan enabled in ini.
Change-Id: I080ba4e581a7f77e84a4364237621429bcf91710
CRs-Fixed: 2474580
Featurize PKTLOG cmd handle under feature flag FEATURE_PKTLOG
as part of CONFIG_MCL cleanup.
Change-Id: Iae8c7e7caad001d7d37a8e17c1eb892f96009066
CRs-Fixed: 2467198
Currently driver is using vmalloc to allocate the memory
inside dbglog_block_read api and this buffer is copied to
userspace buffer which may lead to use of uninitialized
buffer.
To avoid above issue use vzalloc to allocated the buffer
which initializes the memory to zero.
Change-Id: Iebc530b000c908231ef8718e79054801d294dd8f
CRs-Fixed: 2470385
The channel number is always 0 from HAL RX PPDU TLV, then monitor
mode frames radiotap channel frequency is always 2407, get the
correct channel number that we saved when set monitor channel.
Change-Id: Ib927fe9aca3a4c1f98845fe37c9b1d37d1d6cf5a
CRs-Fixed: 2471161
There are multiple definitions of __qdf_nbuf_free api based
on CONFIG_MCL feature flag.
As a part of cleanup activity remove multiple definitions
of __qdf_nbuf_free api.
Change-Id: Ib7fce54353561a45a4662c05d56d3af187a269e1
CRs-Fixed: 2472016
Use same stop_th and start_th as QCA_LL_TX_FLOW_CONTROL_V2 for
QCA_LL_PDEV_TX_FLOW_CONTROL which allows pausing/unpausing
netif queues to avoid frame drop in driver.
Change-Id: Ifa649e31a41d1bf89eadc8cc7e9520f0e27b9fe4
CRs-Fixed: 2466999