The current calculation of head/tail pointer for
srng gives an index in the array by skipping
entry_size dwords.
The head/tail pointers are preffered to be the
index values like in the srng registers, which
brings them in alignment with the other usage of
head/tail pointers.
Fix the calculation of head/tail pointers for srng
by avoiding the division by srng entry size.
CRs-Fixed: 2469332
Change-Id: If9a167f3fac3cb39ebe59618e9ad2224d9e54bcc
Currently the driver checks whether the DFS channel is
in the range of acs channel list given, i.e the start
and end channel, which is not always correct as the channel
range does not imply that all channels in that range are present.
Fix is to explicitly check for the number of channels, and
compare each channel in the acs channel list with the DFS
channel.
Change-Id: Ib17c5e549a2c62652a6333d5d13ca8ff5a7b1674
CRs-Fixed: 2466228
Target assert seen due to host was not reaping the buffers. Therefore,
increase the CE2 entries from 32 to 512 for regular profile build.
Change-Id: I6160ecb070bb98dba0d858f2bef3522ad0b60aa3
CRs-Fixed: 2462117
This reverts commit Change-Id: Icb25be0f4ce60112ef6293f39f9dcc57ebc0288c.
CE2 pipe source ring size is configured as 1700 bytes in LM build where
2048 bytes in regular build. WMI msg size is always hard coded in FW to
2048 bytes in both build. WMI/QMI Pipe configuration is not matching.
Revert CE2 pipe configuration to 2k in the LM build temporarily till FW
updates wmi msg size based ring size configuration.
Change-Id: I2b66097ff9aa23c49fa77fa78b865828f244d108
CRs-Fixed: 2457381
Add API to fetch the vdev queue status and avoid enqueueing command
to serialization queue if the vdev queue is found to be disabled
Change-Id: If615b07dceaeb3113592f24355f254c8e70ca8a2
CRs-Fixed: 2470208
Currently when parsing interop VHT vendor IE, it will have OOB
read when only VHT cap IE is present.
Try to read VHT op IE only when it is present.
Change-Id: Id1919a0ed1df56ecef54d6cb663c10cbcae5065f
CRs-Fixed: 2453071
Propagation from qcacld2.0 to qcacld3.0.
The WMI CMD and EVENT of "get antenna isolation" are already defined,
but not used before in qcacld3.0.
Now, The host driver uses vendor command to get this information
instead of iwpriv command in qcacld-2.0.
The attribution of this feature is already defined in file
"qca_vendor.h". The name is "QCA_WLAN_VENDOR_ATTR_ANTENNA_ISOLATION".
So host driver will use vendor command
"QCA_NL80211_VENDOR_SUBCMD_GET_HW_CAPABILITY" to get the information
from lower layer.
Change-Id: I915768f622ddc9a70a95ce4fe952f19917a8f901
CRs-Fixed: 2447363
DTIM related commands do not have to be sent with WOW sequence as
they are able to be sent from other paths during runtime PM suspend
or resume, hence remove their runtime PM tagging. Besides, also tag
HPLB WMI_HB_SET_ENABLE_CMDID command for runtime PM.
Change-Id: Ib6cc8a9b8296dbba4d9e9017cfa75856cc9a29c9
CRs-fixed: 2469489
Free the Rx descriptors pool if there is a failure
in allocating memory for nbuf during
dp_pdev_rx_buffers_attach()
Change-Id: If4fcfcfdc2fe70c8c4753518ca020a7d8b0bd2b5
CRs-Fixed: 2464596
Previous commit Ia767643b51ffc780258e1d2fd0cd6a8a9e222ae2 wrongly
updated LF copyright years to 2019, keep the LF copyright years
as 2018-2019.
Change-Id: I214555e7deeea2fa3ab3a55af4c868538d5dd72f
CRs-Fixed: 2464759
Add the following vendor attributes under the enum
qca_wlan_vendor_attr_spectral_scan to support the configuration of
Spectral DMA debug.
1. QCA_WLAN_VENDOR_ATTR_SPECTRAL_SCAN_CONFIG_DMA_RING_DEBUG
Enable/disable debug of the Spectral DMA ring
2. QCA_WLAN_VENDOR_ATTR_SPECTRAL_SCAN_CONFIG_DMA_BUFFER_DEBUG
Enable/disable debug of the Spectral DMA buffers
CRs-Fixed: 2466432
Change-Id: If61ecb085534cbde5410c5a2b91aa1922579d902
Add change to release vdev reference only on successful removal
of active cmd from serialization active queue.
Change-Id: I2e14f7f53dc38388cdd05f029edc9329f9dd86a7
CRs-Fixed: 2463724
write module specific macros inside module/config and
use these inc files inside the kbuild of the module using those
macros.
Change-Id: Ide18770973f35d0e5c45e2474b24256107f40d8c
Add debug log in dp_tx_delete_flow_pool() to know if
all available tx descriptors have been released to the
pool or not
Change-Id: Id0684effd5c5c0b531bb2d4b3f08d929aaa85b5c
CRs-Fixed: 2463632
Read rssi_chain per nss per bw and from rx status TLVs
and update to host data structures.
CRs-Fixed: 2445933
Change-Id: I275e9e502a0a724410fc189ac293cadc8f2981e0
Add per module logging macros without function/line info
to avoid adding function/line info where it is not required.
Change-Id: I7621603b925e0762ef474c92e7b5cce641ceeefe
CRs-Fixed: 2468439
Use highprio system workqueue instead of normal work queue for
USB io_complete_work.
This is to avoid latency for receive and TX complete processing.
Change-Id: I34859a748b607d633b4905b3f06e3345029d4cba
CRs-Fixed: 2456887
Reduce log level from error to debug because a stats event can be
received unsolicited.
Change-Id: I11f3800594c6d623e72a214d832caa29666565a8
CRs-Fixed: 2466944
Add 165MHz support to wmi_host_channel_width to keep in accordance
with the wmi_channel_width structure in wmi_unified.h
Change-Id: Ib8aea0bc725a1c43b8fb7510cf86da4633143f69
CRs-Fixed: 2463171
Currently AC stats are getting updated for data tid as
well as non-data tid. Add check to update stats only for
data tids
CRs-Fixed: 2455781
Change-Id: I69d7a11f0101a5c3c6c7e5b0df3e190437990188
Clean up of CONFIG_MCL and optimise memory of peer_assoc_param
structure by use of bit fields instead of bool type
Change-Id: I4b06af69b7fd9af981a250c881d163ddb1f68fa7
CRs-Fixed: 2450763
If client is having non-zero tx/rx packets in last one second,
reset inactive time to zero, else increment inactive time.
Change-Id: Ie25fb43adec252e93ebc1bb1a7aa0fa207e7af1e
SMMU fault is seen in REO reinject path since skb buffer
is not mapped to IPA SMMU domain. Thus map skb buffer
to IPA domain in REO reinject path.
Change-Id: I293353bfce961324af6c6372611e8a57cc13f347
CRs-Fixed: 2463376
If any non authed clients send data packets then
AP should send Deauth Frames to STA. In Current code
we are finding VAP from pdev. And if MAC address are
same for VAPs on both radios then pdev will be wrong.
Because of that VDEV id was coming for non active VAP
and deauth frames were not going out of AP.
Change-Id: Ia28ea4143cec9c876313211962ab98b0e4028ee8
In the normal execution osif priv is freed when the object manager
is freed. Whenever there is a error w.r.t to creation of vdev,
osifpriv is deleted as part of vdev destroy. When this error
propagated to caller. Caller tries to again free the osif_priv
in the error path.
Hence set osif priv to NULL in error case to prevent any double
free by caller.
Change-Id: Iaa074ad39aa473e99ab2fd7b14194422f19c168d
CRs-Fixed: 2467327
qca6018 and qca8072v2 uses the same WCSS block and the source
files of qca8074v2 shall be used for qca6018 as well
This will also ensure all fixes for qca8074v2 gets auto
propagated to qca6018 as well.
Change-Id: I2ead316c7ed16b6ee315bda05ce82d268ba04bbb
Add a new request structure for Specteral control path.
This structure packages all the commands and their
required inputs. Response to the commands are filled
in this structure by the command handlers in lower
layers.
CRs-Fixed: 2446466
Change-Id: I3113e8721382d284b4e03e0f8fdab1e68d5cfaa1
Add support for iommu domain instead of mapping in
struct __qdf_device to support use of API
pld_smmu_get_domain in place of pld_smmu_get_mapping,
which is to be deprecated.
Change-Id: I89e9eea8ec7095a79493c0adca15c8034c21f79a
CRs-Fixed: 2464861
WAKE MSI needs to be always enabled when system enters suspend so
that firmware can use it to wake up host for PCIe link up cases.
Hence use IRQF_NO_SUSPEND when request IRQ for WAKE MSI.
Change-Id: Ife6171b68319d963e32170c7ef73aef42643ccec
CRs-fixed: 2466873
Add enum pdev configuration param to
- Set PD threshold value
- Set enable/disable PD transmission
Change-Id: I76209a316552b63f72df9a812a5491517b7f1277
CRs-Fixed: 2429269
Add QCA vendor attributes to spectral scan related vendor commands to
support agile spectral scan.
CRs-Fixed: 2466336
Change-Id: I855389a1839d70478a55ff7bd386e196fa3988dd
Do not try to allocate the memory again when qdf_nbuf_alloc fails in
dp_rx_buffers_replenish().
Change-Id: Iafbe10021bf9f53d93a20d4c8e9543ca6f8aff8a
CRs-Fixed: 2463258
rp_check_delta_peak and rp_sidx_spread fields of struct dfs_pulse
were missing for dfs_china_radars. Fill them with zeros and ignore
the value for China Radar Table alone.
In future, after thorough experimentation the missing fields will
be filled.
Change-Id: I7dfc3756c48269666fee3c474c9ee9a64745d0c0
CRs-Fixed: 2433582
The passing parameter length isn't used in FTM processing APIs,
It's preferred to define as local variable insteading of passing
parameter.
Change-Id: Ia767643b51ffc780258e1d2fd0cd6a8a9e222ae2
CRs-fixed: 2464759
Non raw traffic gets enqueued to VAP in raw mode
and incorrect fc.type causes HW fault.
Lets proceed only if raw frame is of type data.
Change-Id: I9f0d608cd1b319feb9af642969b258aab813645f
CRs-Fixed: 2434391
Add WMI commands:
1) WMI_PDEV_PARAM_SET_MGMT_TTL
Enable/Disable/Set MGMT_TTL in milliseconds.
2) WMI_PDEV_PARAM_SET_PROBE_RESP_TTL
Enable/Disable/Set PROBE_RESP_TTL in milliseconds.
3) WMI_PDEV_PARAM_SET_MU_PPDU_DURATION
Set global MU PPDU duration for DL (usec units)
4) WMI_PDEV_PARAM_SET_TBTT_CTRL.
Set TBTT CTRL value BITS 0 - 2
(refer to WMI_TBTT_CTRL_CFG enum)
Change-Id: Iedda500fdb7bdedcc11fef31f0b29ad3f1812a43
CRs-Fixed: 2415745