Add memory allocation statistics for perf builds where MEMORY_DEBUG is
not enabled. Part of this effort, re-structure some of the QDF memory
APIs. Memory stats shows real size allocated.
Change-Id: I1e8fe0f4080ea186b8bfa0ce0438b4a06dde5a66
CRs-Fixed: 2045476
In order to provide greater flexibility on emulation platforms, replace
the current hard-coded QDF_TIMER_MULTIPLIER with a pair of get/set
methods, configurable at runtime.
Change-Id: I0757da6c2129db08459411eaef75b6183f1aa557
CRs-Fixed: 2049309
1. Unmap tso common segment only after receiving
completions for all the tso segments for a given
skb.
2. Keep a track of num of free tso descriptors available
in the pool of tso descriptors.
Change-Id: I01bdbb9e40b7259f77dbcfeec22c6d8cd0c0a6dd
CRs-Fixed: 2042950
New iwpriv commands are implemented in WIN to support dynamic configuration
of verbose level for each of the module IDs.
Add following changes in trace module to support above requirement -
1. Make qdf_get_pidx and qdf_set_pidx common to WIN and MCL
2. Export g_qdf_category_name to be accessible in WIN driver
3. Add macros to derive upper and lower 16-bits from a 32-bit value
combining module and trace level information used for dynamic trace
level configuration per module
4. Address trace level NONE case during registration to set the correct
mask
Change-Id: I97be5f26b0d611e96409837fb0c03d55ce5f6e07
CRs-Fixed: 2041247
Add Spectral TxOps and RxOps interfaces in
psoc towards converging the Spectral feature.
CRs-Fixed: 2028657
Change-Id: If5b46fb9d71529060df6e5b242fcc8976fce82f8
Pass an array of values each of which contains a combination of
module-id and level. This way the levels can be set before all the
dependent KO modules are loaded
CRs-Fixed: 2042170, 2046694
Change-Id: If8c8260cc25e25bd821462f7d8860a13a5961148
Added sa_api_tx_ops, sa_api_rx_ops and their initialization. SA API component
id is also added along with sa_api objmanager calls.
Change-Id: I2e912106dcc900e5eba19090c0157827e08264f3
CRs-fixed: 2038298
1) Defined modularized public api for cdp module
to track inactivity and over load detection.
2) Initialization calls are added to attach and
detach SON specific api.
3) operating system specific calls are replaced with qdf calls.
Change-Id: I130d1e99208d6454f5d9888774534cc6d619ad83
Define API qdf_create_singlethread_workqueue to create a single
threaded dedicated work queue.
Change-Id: Iab70044888911c1e4adba63e8eee643d5693d716
CRs-Fixed: 2026443
Add TSO segment debug code, in a featurized way, so that
when disabled, it will tolerate redundant returns to the internal
pool and when enabled, it will check sanity on free, and record a
history of last 16 actions on the segment in the object.
Goes with the corresponding cld3 component counterpart.
Change-Id: Ifee2ceae940043031e4861d0e4f5d19a51262229
CRs-Fixed: 2036665
In monitor mode, while filling the radiotap header, rate and bw
info for HT and VHT frames was not filled correctly due to which
packets in tcpdump are showing incorrect rates and bw for HT/VHT
frames.
Fill rate and bw info for HT/VHT frames correctly in monitor mode.
Change-Id: I2dc9677e48fcf9fe19d61f84a253353e253b16da
CRs-Fixed: 2037501
In order to catch long running scheduler messages, start a watchdog
timer before processing each message, and stop the timer after each
message is processed. When the watchdog timer expires, immediately
crash the device in debug builds for easier debugging.
Change-Id: I4b43a9e12fc1f5b8a795fec790fe7548a100d9db
CRs-Fixed: 2037094
Create a type for struct net device so that lower
layers in WIN can have access to the device handle.
Change-Id: I5f5469ea3fc65c64c4382c2dfbcf455bd96294a8
Create a timestamp conversion helper that returns whole seconds and
remaining micro seconds, for easier consumption by logging methods.
Change-Id: I5bc40075566485f3dc9f7e5fd81a13ec462c5da0
CRs-Fixed: 2031564
Add support to add memory tracking in tx path in WLAN driver using
already present infrastructure for memory tracking.
Change-Id: I6a2c9890e0af1fd51c4e2dfcded68f0075a3a4ef
CRs-Fixed: 2025670
qdf_create_work is not returning any status hence modify it
to return proper QDF status to know proper status of work creation.
Change-Id: I8fc84933cc85ba628363638d7567b083ecbf4f34
CRs-Fixed: 2026441
Create output agnostic log print APIs for WMI and Credit History to
enhance the debugging experience.
Change-Id: Ie89a9cb3b54c373ac2610d62003e940da17696d8
CRs-Fixed: 2028762
This change is for supporting monitor mode VAP. All the monitor mode ring
is configured. The related monitor mode ring includes:
-monitor mode buffer ring
-monitor mode destination ring
-monitor mode status ring
-monitor mode link descriptor ring
The packet is not sent to monitor mode ring unless the monitor mode VAP is
configured. This release support Multiple VAP - AP/STA VAP plus Monitor
VAP configuration. The status ring is not used in this release. However,
the ring is tested and the ring is moving and there are TLV's in the ring.
Change-Id: I782ee0c3b998d8b3bbac79b5e7fdecdbff15fa93
CRs-Fixed: 2013049
At this point lot of Win code already uses QDF_TRACE macro. It will be
difficult to translate QDF_TRACE to qdf_trace_msg unless all the modules
(already using QDF_TRACE) make changes to use the qdf_print_ctrl
framework. Until that happens, we can have a shared object temporarily
so that wlan_log_to_user and hence user space logging of messages can be
in place
Change-Id: Ia149b86de8c2c36ed1c8508570b31db25f6bc41e
CRs-Fixed: 2018767
Refactor IPA private data stored in skb control block,
which size is reduced to 32 bits.
Owner id is changed to 1 bit, to flag if the owner is IPA.
Callback function pointer is removed by adding the callback into cdf.
Skb control block priv data is reduced to 16 bits by storing the index
to the Tx descriptor list added in HDD.
Change-Id: I0eec0636794da3b4729b8be825afe6a1275915a4
CRs-Fixed: 982728
Use normal allocation instead of alloc_consistent for REO descriptors to
allow freeing from interrupt context.
Also fixed an issue in ba_window_size setting in REO queues.
Change-Id: I91b06e04c0343eb7fe8580d8655c6bc5e33cfe06
Include NAN component ID in umac common files. These IDs
will be used by NAN component for trace, object ref counting
purpose etc.
Change-Id: Ia831b38627cc02ee8f61e19f389abba0158a1d40
CRs-Fixed: 2014795
Remove qdf print from QDF_TRACE
Change physical address type to qdf_dma_addr_t
Add qdf API to get min of two numbers
Change-Id: Ie4e0a98d603e56e1bdaf3b8b7c099c7dad5b1bac
CRs-Fixed: 2016072
Add command to set mapid for each VAP using:
iwpriv athX s_dscp_mapid N
Add command to change tid values in PDEV maps using:
iwpriv wifiX s_dscp_tid_map <MAP_ID> <TOS> <TID>
Change-Id: I510a40e71ecec5c453dd2dff1b13fd5ebedbe98a
CRs-Fixed: 1108452
Register the regulatory component with obj mgr. Regulatory
component only needs to listen to psoc level messages.
Change-Id: I3d060d66cb7bac2912afb1301ef1960f8bd9c0ef
CRs-Fixed: 2002892
When a packet is generated internally, host adds a debug
node entry to the table and deletes the entry once received
tx completion for that packet by calling qdf_nbuf_free.
But when a packet is coming from network stack, host doesn’t
add any debug entry to the table and on receiving tx completion,
it calls qdf_nbuf_tx_free which will simply free the skb.
In case of P2P GO mode where packets are forwarded internally,
host creates a private copy of skb and add debug node entry in
the table. But when receiving a tx completion for the same packet
host calls qdf_nbuf_tx_free which will free the skb but will not
remove this node entry from the table. Currently, this api is common
for all data tx completion packets.
Add an extra flag in control block to differentiate whether skb is
generated by driver or come from network stack. If flag is true,
that means generated internally and need to remove the entry from
debug node table.
Change-Id: I61a76fdfedf0429e1b972824dc4513065d53033f
CRs-Fixed: 2020947
This change includes:
- Adding the hooks to send LRO and hash configuration to the firmware
- Configuring the REO remap registers
Change-Id: I6d83e2a2365647f2c7a6440bd1d4b42fa7df7eff
CRs-Fixed: 1094775
API to handle pkts received on vdev which has RAW mode
enabled. Currently supports only MPDU with single MSDU.
Change-Id: Ife00699646bd97c5de0021fc32db434a544058f6
CRs-Fixed: 1111781
In case of IPA hw version less than 3.0, only 32 bit DMA
address can be handled as it is only 32 bit compliant.
Because of this, setting DMA coherent mask of 37 when
IPA hw version is less than 3.0, crash is happening.
Do IPA version based DMA coherent mask setting such that
when IPA hw version is less than 3.0, set DMA coherent mask
as 32 only.
Change-Id: I8dec7da47766985ab0590f885b29f345f153cd08
CRs-Fixed: 1114605
Defines main APIs and data structures. Initial basic frame work of
P2P component.
Change-Id: I08d2e2cec734ddc535d88996f7d5ece5ef3d270a
CRs-Fixed: 1099441
When nbuf is cloned or copied, memory tracking node is not being
created as of current implementation. While freeing the nbuf,
qdf_nbuf_free API is being called as many times as the number
of copies or clones of nbuf and as memory tracking node is being
created only once, warning print of double free is coming for all
the clones and copies of nbuf.
Allocate memory tracking node for nbuf clone and nbuf copy APIs as well.
Change-Id: I95fa6e7b2789dd97c0c500d0854210240feaac17
CRs-Fixed: 1114632
Currently there is no support to insert a node in between
the qdf list.
This change adds API to insert a new node before/after node
in qdf list.
Change-Id: I91ad5d57ffb5d15abdd5faa36387198608369b12
CRs-Fixed: 1117206
Propagation from qcacld-2.0 to qcacmn.
Add support to dump information for ICMPV6 RS and RA packets in
wow wakeup stats.
Change-Id: I1a2852189664fff31e29b487d7a8c66ee83931c5
CRs-Fixed: 1115364
Propagation from qcacld-2.0 to qcacmn.
Add support to dump few bytes of rx packets in DPTRACE by adding
QDF_DP_TRACE_HDD_RX_PACKET_RECORD in DPTRACE enum.
Change-Id: I950108b9d1c9094ce3d285493ee36bda4f9d7e41
CRs-Fixed: 1074551
Define folder and file structure for
Serialization UMAC convergence component.
Define the changes for initializing and de-initializing
the serialization component
Change-Id: I1074091a74bba8aa7426345f6fb1a5df127f1a59
CRs-Fixed: 2000032