Add modules and API's to issue command WMI_NDP_CMDID. This
command, for now, can request Firmware to terminate all NDP's
associated with the given vdev. Add module that extracts
event information from event WMI_NDP_EVENTID. This event acts
as a response to command WMI_NDP_CMDID, and carries NDP
related status information for the host. Extract mac_id from
the updated TLV of NDP confirm and schedule update events.
Add modules and API's to support new NDP command and event.
Change-Id: Ibf6312cb3669b5e62ada3f4ad852be87f14ae09f
CRs-Fixed: 2384535
Several qdf_*_outline() APIs exist which are straight aliases to their
regular qdf_*() counterparts. Remove them, and update any callers to use
the regular APIs instead.
Change-Id: Ibe6e9cced521b93061e89690ab817ceafe49a469
CRs-Fixed: 2408267
Fix the type for nan_serialized_cb and remove unnecessary
type casts from other callbacks.
Change-Id: Ie4e45f5a7e9fc17eb1c45fa18160e3bbd47151fe
CRs-Fixed: 2402989
Delay counters per TID have been implemented for following types:
1. Linux stack to hw enqueue delay
2. HW enqueue delay to tx completion delay
3. TX interframe delay
4. RX interframe delay
5. RX frame delay from ring reap to networking stack
Change-Id: I836596cbd878a43955c18b4981cb5b7b43d4df5e
Do not use MCL in the macro. Use feature name to define macro.
This is for CONFIG_MCL_REGDB cleanup.
Change-Id: I5a3f40da74e2c4476dbf2d4d4200502b9b9e9653
CRs-Fixed: 2411991
target_process_bang_radar_cmd should be defined with meaningful body only
when WLAN_DFS_FULL_OFFLOAD is defined.
This is for CONFIG_MCL cleanup
Change-Id: Id038231e6aa967c68674f40ef4247ac023313b71
CRs-Fixed: 2411981
In the current implementation, from qdf wake lock api, diag log api
invocation is controlled by macro CONFIG_MCL.
Aim is to clean CONFIG_MCL in qdf_lock.c
Change-Id: I16a1a46a2ebc255ed092a1fdd05f127c7e542a5e
CRs-Fixed: 2411636
In handling addba request, if we receive a request
for a tid that is in IN_PROGRESS state, we ignore
this new request.
Change-Id: I71e3f78cf43f25c184161669a359a4b703cab3cd
Crs-fixed: 2408140
Add members in the ops framework and the respective
function definitions for supporting 8021pcos to tid mapping.
Change-Id: Iaa15efbda0824cecb1b2db67ea8b6ee585a8d56c
Allow SSR during driver resume. Assume firmware goes down during driver
is in suspend state. Avoid get into bad state and wmi access during driver
resume.
Change-Id: Ie1689e0b080f940666fbbb19c9f0e3b0fecfe564
CRs-Fixed: 2390031
On low memory platform rx_pkt_header tlv is not subscribed to get a
savings of 128bytes in skb. This is required to reduce the skb size from
4K to 2K on 32-bit platforms. Use HTT_H2T_MSG_TYPE_RX_RING_SELECTION_CFG
message to unsubscribe rx_pkt_header tlv for rxdma ring.
Change-Id: Ie684f1ca1de9c824a869b4e13fd0ee1d068004e7
CRs-Fixed: 2408424
Do not process RX packet header TLV for low memory config profile.
Also, drop decapped frames in invalid peer processing function.
Change-Id: Ifc7721bb25d85c7e277bebf4b962d2f1bfea150c
CRs-Fixed: 2395508
Add change to send correct mac address
peer_flush_params->mac_id to flush tids
during the process of sending STOP cmd to FW.
Change-Id: I16dd0263a5d3d953da9c1d107136f5824c7736cd
CRs-Fixed: 2408175
wifi up/down will cause soc stop and soc
start which will allocate rx desc pool
array memory for each wifi up
This creates memory fragmentation issue
hence reuse Rx descriptor pool array
across wifi up/down and free only nbufs
CRs-Fixed: 2394666
Change-Id: Ic897c733dfba3d8829e2f2f51099cd615b8a7ea2
qdf_nbuf_cat API used to call skb_free
on src address but was later modified
so that the caller of qdf_nbuf_cat is
responsible for freeing the src memory
Due to this change in the API, the
freeing of src memory on caller side
was not taken care and will lead to
mem leak
Hence add qdf_nbuf_free after calling
qdf_nbuf_cat if it returns success.
If qdf_nbuf_cat returns failure, then
freeing is taken care as part of error
handling in parent function.
CRs-Fixed: 2411320
Change-Id: If50eb9279d0cf26a0cf57444cb69e56f11995720
In the case of WOW resume due to RA match event, driver will
update the protocol and destination type WOW stats after parsing
the data packet. The same stats are again incremented under RA
match case in TX op that is called in wma_inc_wow_stats. This is
causing counters to increment twice for each packet. Therefore
remove the increment of wow stats from TX op case.
Remove redundant counter increments under RA match event in
target_if_cp_stats_inc_wake_lock_stats.
Change-Id: I10486d083175772f976542a38364ba964c8e1a87
CRs-Fixed: 2406975
In wlan_cfg80211_scan(), when "DNBS check fails", mem free of scan req is
done. Mem free of scan req is done again at the label "err" which would
end up in a double free.
Change-Id: Ib757832c1bd54372fba45cbc5ee306d0d7b233b0
CRs-Fixed: 2408703
A service bit is used to indicate support for MBSS IE.
This is set as capability in host at psoc level.
In host, we also maintain a flag for user to configure
MBSS support at pdev level. It could be used in future.
Change-Id: I31a27a755fb027de93bfe6c9639fdbda9693bace
CRs-Fixed: 2403030
Check for completion status of the ppdu based on
HTT_PPDU_STATS_USR_COMMON_TLV and
HTT_PPDU_STATS_USR_COMPLTN_ACK_BA_STATUS_TLV.
Update the stats only when completion status is ok else
update retry and failed frames count.
Change-Id: Iac7730715f853746d77873488b7886e7beed467d
CRs-Fixed: 2390383
When user sets the vendor ie for probe request frame, it is not
included in the broadcast probe request sent by FW.
Add support to send vendor ie info in scan start command to FW. Therefore,
FW can include this vendor ie in the broadcast probe request frame.
Change-Id: Ie5fc0c074bd7543568a135d3ef4662bf09b274f6
CRs-Fixed: 2400265
Currently the driver returns EINVAL, instead of EBUSY if
the driver encounters a case of simlutaneuos scan, and
DBS scan is disabled for user space, and thus it may lead
to failure of OBSS scan, which can further lead to SAP
fail.
Fix is to return EBUSY intead of EINVAL, so that hostapd
can try to get the scan module perform a scan, which can
increase the probablity of SAP bringup.
Change-Id: I798e3d1ad0f62a5240603b4344963cb3ee637c13
CRs-Fixed: 2403499
Format the current SM history logging.
Add single header line and merge two
line outputs into one.
Print the SM history in the order the events
are updated in the events circulat buffer.
Change-Id: I2bb2076231cc3ea625938f9ff77d1c601f740b83
CRs-Fixed: 2408488
Add support for reset ast entry and table, also send
ast entry type to upper layers in delete callback
Change-Id: I6b420fba5bab50519e8954a1e796b04bc0768ef8
CRs-fixed: 2384550
If AP change its status from hidden to broadcasting SSID in its beacon
kernel drop the beacon entry as its confusing. Now during connection
driver try to update the entry in kernel and it fails and as kernel drop
the beacon the connection fails.
To fix this detect if AP changed its ssid type from hidden to
broadcasting and unlink the old bss from kernel in that case.
Change-Id: I10ec42749ebcd2ddea23f7f3a94d862124df156d
CRs-Fixed: 2410430
Add change to use different field in vdev_mlme_obj
to hold phy_mode as expected by WMI instead of using
des_chan->ch_phymode which is of type wlan_phymode
This also solve issue with starting preCAC timer
for VHT80 mode
Change-Id: I2fccd4716b455178b66587ef6992d4a98f3fa290
CRs-Fixed: 2409931
When IPA using GSI instead of UC different IPA TX and RX
clients needs to be configured. In this change when IPA
uses GSI configure appropriate TX and RX clients/pipes.
Change-Id: I0302323d91f0cc4256a1b08ddbb1345d0daa2939
CRs-Fixed: 2368003
Replenish buffers consumed during monitor packet processing
and map it to the rx_desc_pool associated with a pdev.
Change-Id: Ia844c92c6b61bbb22ae42d38796aad2f29756b5e
CRs-Fixed: 2407502
VOW stats is an extension of regular stats to capture
all drops per TID. Delay counters per TID are also
included.
Change-Id: If6087f37b32cf9ae4bb405190a358ad3c9750dd2
There are multiple issues with the Link Layer Stats Unified API:
- struct ll_stats_clear_params and struct ll_stats_get_params both
incorrectly use the identifier "sta_id" to refer to a vdev_id.
- struct ll_stats_set_params has an unused "sta_id" field.
- Functions wmi_unified_process_ll_stats_clear_cmd() and
wmi_unified_process_ll_stats_get_cmd() pass the MAC address as a
separate parameter rather than adhering to the commonly used
unified signature: func(handle, param).
- Not all of the functions and data structures are correctly protected
by the WLAN_FEATURE_LINK_LAYER_STATS feature flag.
Refine the Link Layer Stats Unified API to address these issues.
This is co-dependent with Ifd7c8de2358121dae4752525ff57021a32be85d3
("qcacld-3.0: Use the refined Link Layer Stats Unified API").
Change-Id: Ifdc1fada55a559f3b3d0837ec20cceb653c45c40
CRs-Fixed: 2409293
netbuf in send_packetdump is never checked for null before
dereferencing it for len netbuf->len.
Change-Id: I51aa0fb9c52e04c33291791ef47def703754222d
CRs-Fixed: 2404844
Some of the print messages in HAL module come very excessively.
Use hal_verbose_debug() API to print them.
CRs-fixed: 2405028
Change-Id: I4b4754af65c00edb571de898527026b6183ef15f
Some of the print messages in Data-path module come very excessively.
Use dp_verbose_debug() API to print them.
CRs-fixed: 2376998
Change-Id: Ibaec3751ce3cbe98492c531548e613c7d17db898
In datapath, some of the messages get printed everytime when packet
is received or sent. This situation ends up in excessive logging which
leads to stability issue.
In order to fix the situation, provide knob through INI to control
excessive logging and create new macro for logging the message which
comes under per packet path.
Change-Id: I2af5f9bf39540f952138aa8308401a387fe62bf1
CRs-Fixed: 2376998
Update the enum qca_wlan_vendor_attr_offloaded_packets
with the one present in the hostapd's qca-vendor.h
Change-Id: I510d91ab55705f6eed7e676fcda9c469e5c72aca
CRs-Fixed: 2404707
Consider a WDS Repeater(RE) connected to the Root on a DFS channel and
reverse CSA is enabled. When RE detects radar, it adds the radar infected
channel to its NOL list and it informs the Root of the radar detect. Let
the target channel chosen by the Root be a DFS channel.The RE on receiving
the RCSA, brings down the STA vap and begins to scan again.
The scan is initiated from the supplicant (wlan_cfg80211_scan) and it
provides all the supported channels including the NOL channels.
(supplicant is unaware of the radar detect and NOL channels).
As the scan channel list sent to the FW includes NOL channels, FW reports
DFS SCAN VIOLATION and all DFS channels are blocked in RE.
The supplicant keeps sending the same scan list but scan is never
successful and thus the RE does not connect back to the Root.
To fix the DFS violation, remove the NOL channel(s) from the scan channel
list before sending the list to the FW.
Change-Id: I62090e381c11fab78ab1ee920da77f3603f48eaf
CRs-Fixed: 2405532
It has been observed at that several issues have crept into mainline due
to qdf_mem_copy() gracefully returning when the source or destination
pointers are NULL. In order to prevent such regressions in the future,
change calls to qdf_mem_copy/move/set/zero/cmp() with NULL pointer
parameters so they panic in debug builds.
Change-Id: I6df4c42245ed1d0d8a85477f59552f8243488924
CRs-Fixed: 2408266
The below change:
qcacmn: Use wrappers for bus-oriented OS API's
missed to release the reset_control leading to
a memory leak.
Change-Id: Ifea18db27fc78f686934b096b513128b1a65da9e
Add change to use wmi_service_enabled for
wmi_service_sync_delete_cmds instead of using
chipset specific name in target_if
Change QDG_BUG to QDF_DEBUG_PANIC in target_if
vdev response expiry handler.
Change-Id: Ie0f3de2a043198e5aaf5a11add3b8e13b6a47812
CRs-Fixed: 2407877
Add new vendor attribute for preferred channels list with weight
value and a flag to indicate how the channels should
be used in p2p negotiation process.
Change-Id: I7b7926bf2aa714be51a8c28e619bbe426d9d2a4c
CRs-Fixed: 2405321
CFR needs to correlate data received from direct dma ring and WMI event
for tx completion. These two events can come in any order. To facilitate
correlation CFR module has to hold on to the buffer until both events
are received and then replenish buffer back to direct dma ring. To
facilitate this requirement direct rx buf module is modified to change
callback return to bool to indicate whether buffer can be replenished
immediatley or not. Also add API to indiciate buffer release/replenish
later.
Change-Id: I7f0bd7f41ee9362374a5aeb6f506d3f101ec4536
CRs-Fixed: 2403399