qdf_walt_get_cpus_taken under WALT_GET_CPU_TAKEN_SUPPORT feature
flag to avoid compilation failure on branch where changes is not
present.
Change-Id: Iddcc777a476e41cd20fa0ff40ad2dd80af0748ef
CRs-Fixed: 3559247
It adds a set of frag way allocation APIs explicitly.
IPA Tx nbufs change to frag way allocation API, which saves memory.
Current __qdf_nbuf_alloc changes to non-frag way allocation by
default if SKB RECYLCER not defined.
Change-Id: I5f87ffac54c49f9af920775c13b6dfdd147476dd
CRs-Fixed: 3534452
Add missing nbuf_count updates in qdf APIs which are used
for keeping track of nbufs in debug mode.
Change-Id: If031ec8860513dddb1704a75e4761ce14aa26f21
CRs-Fixed: 4728458
-Moved the get macro from qdf to cdp layer.
-Removed the set macro from qdf and replaced its usage
in be rx layer with an existing HTT ml_peer_Valid mask.
Change-Id: I4a87b4b560f983c5aa6d026481a88d28e2ff09fd
CRs-Fixed: 3488425
Add support for filling fast_xmit in SKB for platform
which support skb_recycler feature.
Add a QDF abstraction to update fast_xmit in skb, when it is supported.
Change-Id: Ibc562023ddeb0bf5c2709bbb60b596676c932b5a
CRs-Fixed: 3522028
The TX_NBUF_CNT never decreases, which is an incorrect debug info.
We should decrease dp_tx_skb_count when nbuf unmap.
Change-Id: I3be63047f47305c5d24c5c40696e1c6db69ec4d6
CRs-Fixed: 3508530
Currently, opt_wifi_dp filter reserve and release
notification to IPA, is sent in a tasklet
context. As QMI calls tend to acquire mutexes, this
will cause an assert as we cannot sleep in a tasklet
context. To resolve this, WLAN will schedule the
notification call in a workqueue before calling
into IPA. This change ensures IPA calls from WLAN are
not made in an interrupt context.
Change-Id: Ic716e14340651db76d7dd7dc216c595c01732ee8
CRs-Fixed: 3492465
Currently connectivity logging is done for all opmode
but logging should be done only for STA mode.
So to fix the issue add check for opmode and skip
connectivity logging if opmode is not STA
Change-Id: Ie6175a02c8167f5ebfd81553837206640431f701
CRs-Fixed: 3515365
qdf_get_log_timestamp_lightweight function is defined only when
ENHANCED_OS_ABSTRACTION is not enabled, defining it when
ENHANCED_OS_ABSTRACTION is enabled as well.
Change-Id: Ia146feed5536a7b99653d7690f3204e6cbaf3f4c
CRs-Fixed: 3471529
qdf_usecs_to_log_timestamp() was returning the remainder value
of do_div operation instead of the quotient. Now fix has been
made to return the correct value.
Change-Id: I6c7041b4a837b311f63616aff23bf2a20dbe7adb
CRs-Fixed: 3471529
Move prealloc DP descriptor types to QDF so that
the macros can be used in HIF layer.
Change-Id: I3de60876735e5aa37d80e9e698a86503b18574c1
CRs-Fixed: 3502615
Add new QDF API qdf_walt_get_cpus_taken to check if
walt_get_cpus_taken API is supported.
Change-Id: I8ed8e5608c35c45b5e630ee39a497bca31b3502d
CRs-Fixed: 3508584
Currently radiotap header is malformed due to incorrect
tx flags update.
This change is update tx flags properly to prepare radiotap
header.
Change-Id: I0d3205b215c9fc363a71c4e7a6b54e40fb10a966
CRs-Fixed: 3442934
In WBM2SW Rx Error path for BE
specific functionality
1) HAL API's/Function pointers are replaced
with specific function calls.
2) Efficient read/write of WBM Error Info
from HAL Rx desc.
3) Minimize reading data from Nbuf TLV.
4) Peer_id fix for MLO clients with security
Change-Id: I1c9e6e767bbf6565567d998ae8e1357398de5803
CRs-Fixed: 3486304
The number of perf CPU clusters can vary across
different targets. Currently only the second CPU
cluster is considered as the perf cluster, whereas
there can be more than 1 perf clusters.
Fix this perf cluster derivation for interrupt
affinity.
Change-Id: Ie4407064ac5124fc050715fd75400ca516c9c6b8
CRs-Fixed: 3498024
On some third-party platforms, we observe the memory physical
address below 0x2000 is allocated will cause HW/FW NOC error,
so this region memory should not use by host.
This change will hold the memory if the allocated memory physical
address below 0x2000 until driver unload.
Change-Id: I37b6abc98033230dc4f572dafb849101497f6e93
CRs-Fixed: 3419648
Kernel 6.0 and above has deprecated the use of
topology_physical_package_id() and instead of this
API topology_cluster_id() needs to be used to get
the cluster ID of a given CPU.
Add QDF abstraction API for topology_cluster_id().
Change-Id: I4ca555c016730afc6cac2a4bf55d9f48c6f4cae0
CRs-Fixed: 3488031
Diag logging is used for logging datapath event such
as EAPOL and DHCP events
Remove legacy logging mechanism for datapath events
Change-Id: I8a987c1a4ab9954c7662e2f76e7904b02619f661
CRs-Fixed: 3470476
PMAC is giving fatal when mgmt packet is getting queued
with non-zero version in frame control
Adding a check for version before queueing mgmt packets.
Change-Id: I606513b6ce027f1126e9cd40a9909886441de240
CRs-Fixed: 3422973
-Support to route IGMP packet to correct netdev coming from
legacy and mld sta.
-Support to detect mld model based on ini setting
Change-Id: I10ea5af9a4315642b262c8404d7bebd88ee06ab1
CRs-Fixed: 3467808
qdf assert always, assert without debug information.
Added support to dump needed information before assert.
Change-Id: I19898ec11c1bade4340cf1737a760d9507012f12
CRs-Fixed: 3480596
Add new QDF APIs to handle gpio, irqf and timer related
handling in TSF feature.
Change-Id: Iff6f85c6debe351c5533906559400b4a51333d4d
CRs-Fixed: 3469020
Fix the following 2 memory leaks in Rx monitor path:
1. When MPDU queue is empty and MON_BUF_ADDR_TLV is received,
then free page fragment memory.
2. In case of small size packets, 1 MPDU can have more than
2*QDF_NBUF_MAX_FRAGS fragments wherein each nbuf can have maximum of
QDF_NBUF_MAX_FRAGS frags. In this case, add the frags to nbuf in the
following way.
parent_nbuf (QDF_NBUF_MAX_FRAGS frags attached)
|
| (fraglist)
|
----> tmp_nbuf1 (QDF_NBUF_MAX_FRAGS frags attached) ----> tmp_nbuf2
(next)
Change-Id: I54e8162bf0b9da8629a3c80d123421fbeaf8df11
CRs-Fixed: 3453676
In WBM2SW Rx Error path for BE
specific functionality
1) HAL API's/Function pointers are replaced
with specific function calls.
2) Efficient read/write of WBM Error Info
from HAL Rx desc.
3) Minimize reading data from Nbuf TLV.
4) Peer_id fix for MLO clients with security
Change-Id: I760694073a06c1829f28e7e92cd1657560d8eb06
CRs-Fixed: 3472220
Add an API qdf_file_read_bytes to read a file from within the driver
and return the contents of it along with its size.
Change-Id: If777e1b9c610e8cc7dd35be42fa9ced2bb1c6560
CRs-Fixed: 3456115
qdf assert always, assert without debug information.
Added support to dump needed information before assert.
Change-Id: I2b53b7fa6a600b2a1aafdbc608b95b75feb2133d
CRs-Fixed: 3464724
As part of TX Mon 2.0, WIN has IEEE80211 specific macros only in WIN side
header file, but now Tx Mon 2.0 is required to be supported on MCC side
and these macros are not available. Hence extend by adding the required
type/subtype macros in qdf common header file.
Change-Id: I76cf0a0c226664c34c9c8bd10e280a500b3c61a9
CRs-Fixed: 3415715
On some third-party platforms, we observe the memory physical
address below 0x2000 is allocated will cause HW/FW NOC error,
so this region memory should not use by host.
This change will hold the memory if the allocated memory physical
address below 0x2000 until driver unload.
Change-Id: I9d5df20cbdf23c230d7c910cce9b9489dd9dd614
CRs-Fixed: 3419648
Some IOT APs only allow to connect if last 3 bytes of
BSSID and self MAC is same. They create a new bssid on
receiving unicast probe/auth req from STA and allow STA to
connect to this matching BSSID only. So boost the matching BSSID
to try to connect to this BSSID.
And add logic to refresh the candidate list before next
candidate try when the last candidate connect fail.
Change-Id: I482e122c8c9febbab42f64013fbb78c266f49655
CRs-Fixed: 3432618
This reverts Change-Id: I2c19b72b82092d553d474a50385ed3095a0fab39
since it results in increased memory allocation due to 8 bytes of
headroom at the beginning of buffer, particularly for data path modules
when size is at the edge of the page boundary.
Change-Id: I72fd7e63b93f2646812acc09e817e3be531f27d8
CRs-Fixed: 3458603