Commit Graph

372 Commits

Author SHA1 Message Date
Manjunathappa Prakash
5bf1513217 qcacld-3.0: Override EAPOL BC Tx frame with AP mac addr
Take care to update the EAPOL Tx frame DA with AP mac addr if
DA is broadcast address as EAPOL BC doesnot make sense.

Change-Id: Id58b7b7971f5a7c11de0b46c6189a6e6ad1917ab
CRs-Fixed: 2745826
2020-08-14 12:34:39 -07:00
Alan Chen
38888ae732 qcacld-3.0: Add a sysfs replacement for dl_mode commands
As part of WEXT replacement, replace dl_loglevel, dl_mod_loglevel,
dl_modoff, dl_modon, dl_report, dl_type, dl_vapoff, dl_vapon with
a sysfs file.

file path: /sys/class/net/wlanxx/dl_loglevel
file path: /sys/class/net/wlanxx/dl_mod_loglevel
file path: /sys/class/net/wlanxx/dl_modoff
file path: /sys/class/net/wlanxx/dl_modon
file path: /sys/class/net/wlanxx/dl_report
file path: /sys/class/net/wlanxx/dl_type
file path: /sys/class/net/wlanxx/dl_vapoff
file path: /sys/class/net/wlanxx/dl_vapon
        wlanxx is adapter name

example: echo 1 > dl_loglevel
example: echo 1 > dl_mod_loglevel
example: echo 1 > dl_modoff
example: echo 1 > dl_modon
example: echo 1 > dl_report
example: echo 1 > dl_type
example: echo 1 > dl_vapoff
example: echo 1 > dl_vapon

Change-Id: Ic3d748738d0072e42b7ff07177f2ca711b333193
CRs-Fixed: 2715053
2020-08-13 06:13:20 -07:00
Amruta Kulkarni
1e49d2c36e qcacld-3.0: Prevent link down for SAP on DFS channel
For SAP on DFS channel, the PCIe link down should be prevented
so that HalPhy can access DDR memory to report Radar found event.

Change-Id: Ia256d5df4d59071830d09c3f4821d73196327128
CRs-Fixed: 2740443
2020-08-12 13:56:26 -07:00
Manjunathappa Prakash
dfed37f892 qcacld-3.0: Add config flag to deliver defrag frames
Add config flag to deliver defrag frames without REO reinjection.

Change-Id: If18adecc5b1f48c42ac116bc66dfa26eb73122ac
CRs-Fixed: 2745406
2020-08-10 20:29:39 -07:00
Yu Tian
636f42c23a qcacld-3.0: Allow drop pkts when pending is large
On some cases, dp_rx_thread can not handle nbufs in time,
then a large number of packets are pending in
rx_thread->nbuf_queue, which run out of system memory at
last and failed to malloc new buffers for refill buffer ring,
fw crash is encountered. To avoid this, drop RX packets when
the pending number becomes large.

Change-Id: Ie4e001dc584821cf68253aa3a15a5fd72394c736
CRs-Fixed: 2737181
2020-08-06 04:24:45 -07:00
Saket Jha
c2c66700ac qcacld-3.0: Add PM QoS CPU affinity support on 5.x kernel
Enable PM QoS support for 5.x kernel by adopting dev PM QoS APIs to
request device structures for CPUs and then requesting QoS on those CPU
devices.

Change-Id: I9c7565b44a72145e11178fe360f413ff578142cf
CRs-Fixed: 2734025
2020-08-05 04:23:58 -07:00
Sandeep Puligilla
9d562079d3 qcacld-3.0: Enable VDEV response wakelock
Enable VDEV response wakelock functionality

Change-Id: I16db54405912ff275d7b552c4d9b2faf5d011f4c
CRs-Fixed: 2743631
2020-08-05 00:03:48 -07:00
Utkarsh Bhatnagar
e2df5dee72 qcacld-3.0: Add config feature CONFIG_WAPI_BIG_ENDIAN
Add configuration feature CONFIG_WAPI_BIG_ENDIAN to
enable or disable BIG ENDIAN WAPI configuration based
on device type.

This was done as newer chipset firmware expects the
WAPI seq in big endian format and to maintain backward
compatibility with the older chipset firmware.

Change-Id: I972ca89e601b706e53408b0751c265d0aa311029
CRs-Fixed: 2746749
2020-08-03 22:51:23 -07:00
Karthik Kantamneni
4a7bc29161 qcacld-3.0: Enhance logging in RX path to check refill failures
Enable logging feature which helps to check rx ring refill failure.

Currently rx ring refill count is updated same time from multiple
places without protection, so use atomic variable for refill count.

CRS-Fixed: 2740225
Change-Id: Icd88d351cb15d0f18edf0b986e4de95dbe4e6989
2020-08-02 00:02:47 -07:00
Manikanta Pubbisetty
b5334b1bf6 qcacld-3.0: enable RX buffer pool for QCA6750
Enable RX buffer pool support for QCA6750. This will be utilized
during low memory conditions.

Change-Id: I8cee1e0996c81f3c4c408a22923d5107f4d014c3
CRs-Fixed: 2731507
2020-08-01 13:13:15 -07:00
Will Huang
67285c16d9 qcacld-3.0: Enable blacklist manager for Genoa AUTO
It is required to enable blacklist manager to pass some case like
OCE-5.6.1, RSSI-based Association Rejection.

Change-Id: Iffae667851b63b8c28f9eadb9519c9172270c244
CRs-Fixed: 2741521
2020-07-31 12:02:22 -07:00
Rakesh Pillai
d80422e788 qcacld-3.0: Featurize dynamic rx agggregation feature
Dynamic rx aggregation feature depends on the context
id which is obtained from the packet context block.
This context id is invalid when this feature is not
enabled, and hence can lead to out of array access/write
leading to memory corruption.

Fix this issue by not using the context id when the dynamic
rx aggregation feature is not enabled.

Change-Id: Ie551217409b0f5aa2f704f9c617949e0d42a74d0
CRs-Fixed: 2742653
2020-07-31 09:53:45 -07:00
Rakesh Pillai
9cde7595c4 qcacld-3.0: Enable rx descriptor nbuf sanity for perf build
Enable the sanity check for rx descriptor nbuf
even for the perf build.
Also enable the rx rings history.

Change-Id: Ib127029009d0657ea51d3592af6a42f3de210c16
CRs-Fixed: 2739120
2020-07-25 06:02:25 -07:00
Yu Tian
23d1479dd4 qcacld-3.0: enable bus statistics for 3rd party
enable feature WLAN_FEATURE_DP_BUS_BANDWIDTH non MSM
platform.

Change-Id: I968a73e669ff3e6536ee76fa8229dc0a7d9ced2d
CRs-Fixed: 2729947
2020-07-22 14:02:08 -07:00
Alok Kumar
e338900121 qcacld-3.0: Enable packet log by default for QCA6750
Enable packet log by default for QCA6750.

Change-Id: I36ff2741820f60f039364f89d468b1d3c04538e7
CRs-Fixed: 2732820
2020-07-18 18:13:46 -07:00
Huashan Qu
7277418aa5 qcacld-3.0: Move rso related process to connection manager [PART 1]
Add macro ROAM_OFFLOAD_V1 for new code and implement below functions
for connection manager roam part:

csr_handle_roam_state_change() roam offload state related handler.
Filling WMI_ROAM_SCAN_RSSI_THRESHOLD cmd parameters related process.

Change-Id: I0351155ca5a3d68ade6568c7527c5708582ccf1a
CRs-Fixed: 2730826
2020-07-18 18:13:31 -07:00
Chaoli Zhou
4d74e08860 qcacld-3.0: Change Genoa perf config to support cnss2 as dlkm
Add the cnss2 module config to the Genoa perf defconfig
to support cnss2 as dynamic loadable kernel module

Change-Id: I3410bf129edbe7d766a490e6fa104469a18f1187
2020-07-17 23:59:47 -07:00
Srinivas Girigowda
987834feb7 qcacld-3.0: Rename file name and function name for sysfs 'stats'
Rename file name and modify function names to keep it inline
with sysfs attribute name 'stats'

Change-Id: Iffc390d4865977f9eff72a6a4bcf708c014f482e
CRs-Fixed: 2731064
2020-07-17 23:59:38 -07:00
Srinivas Girigowda
d3255f634e qcacld-3.0: Rename file name and function name for sysfs 'range_ext'
Rename file name and modify function names to keep it inline
with sysfs attribute name 'range_ext'

Change-Id: Icf7ebbbcf1b8b219e64d1c9b98f1946069f91322
CRs-Fixed: 2731064
2020-07-17 23:59:34 -07:00
Srinivas Girigowda
d39a796a98 qcacld-3.0: Rename file name and function name for sysfs 'wlan_dbg'
Rename file name and modify function names to keep it inline
with sysfs attribute name 'wlan_dbg'

Change-Id: I7d0e7b67afa701abd64efb62012c218ee4ab158d
CRs-Fixed: 2731064
2020-07-17 23:59:30 -07:00
Srinivas Girigowda
64d1d78340 qcacld-3.0: Rename file name and function name for sysfs 'fw_mode_config'
Rename file name and modify function names to keep it inline
with sysfs attribute name 'fw_mode_config'

Change-Id: Ia389fa8807bbd0e58de58c503d9f3bbbef9ec707
CRs-Fixed: 2731064
2020-07-17 23:59:26 -07:00
Srinivas Girigowda
837ca7fad6 qcacld-3.0: Rename file name and function name for sysfs 'scan_config'
Rename file name and modify function names to keep it inline
with sysfs attribute name 'scan_config'

Change-Id: I6621cbe5571541d073072ef9e0348d771fd3bc4a
CRs-Fixed: 2731064
2020-07-17 23:59:22 -07:00
Srinivas Girigowda
36b00847fc qcacld-3.0: Rename file name and function name for sysfs 'radar'
Rename file name and modify function names to keep it inline
with sysfs attribute name 'radar'

Change-Id: If13effc45323f5a286d8aeb7a8e27848cb3e618b
CRs-Fixed: 2731064
2020-07-17 23:59:18 -07:00
Srinivas Girigowda
c9933da318 qcacld-3.0: Rename file name and function name for sysfs 'tx_stbc'
Rename file name and modify function names to keep it inline
with sysfs attribute name 'tx_stbc'

Change-Id: I274c1405fab7385202431b48d65603c38783222b
CRs-Fixed: 2731064
2020-07-17 23:59:14 -07:00
Srinivas Girigowda
fe1406f727 qcacld-3.0: Rename file name and function name for sysfs 'tdls_peers'
Rename file name and modify function names to keep it inline
with sysfs attribute name 'tdls_peers'

Change-Id: If6aa504dccd22ce0ccff11f3d73ffb1eedb5895c
CRs-Fixed: 2731064
2020-07-17 23:59:11 -07:00
Srinivas Girigowda
82f61cee0f qcacld-3.0: Rename file name and function name for sysfs 'sta_info'
Rename file name and modify function names to keep it inline
with sysfs attribute name 'sta_info'

Change-Id: Ibb13c1496ea1dd5bc3b024b99414ac8d72db3be6
CRs-Fixed: 2731064
2020-07-17 23:59:07 -07:00
Srinivas Girigowda
0770581b30 qcacld-3.0: Rename file name and function name for sysfs 'temperature'
Rename file name and modify function names to keep it inline
with sysfs attribute name 'temperature'

Change-Id: I8f31d59be9954d3ffe1ff7c11d16dd24b9e2644d
CRs-Fixed: 2731064
2020-07-17 23:59:03 -07:00
Srinivas Girigowda
57d6d48573 qcacld-3.0: Rename file name and function name for sysfs 'monitor_mode_channel'
Rename file name and modify function names to keep it inline
with sysfs attribute name 'monitor_mode_channel'

Change-Id: Ic207d6e29c14a0b33ed4982d533a78729d32a4ba
CRs-Fixed: 2731064
2020-07-17 23:59:00 -07:00
Srinivas Girigowda
5883ffbcba qcacld-3.0: Rename file name and function name for sysfs 'channel'
Rename file name and modify function names to keep it inline
with sysfs attribute name 'channel'

Change-Id: I9c73e572bdb80edc3431180448dffd9843d6a720
CRs-Fixed: 2731064
2020-07-17 23:58:56 -07:00
Surabhi Vishnoi
956471a2ec qcacld-3.0: Enable LL mode feature in default config for QCS40x
Enable support for LL mode feature on QCS40x platform in default
config. This feature also requires PM_QOS config to be set.

Change-Id: I49b74d905d2f84b9e15e7ba5d75d719124e818f5
CRs-Fixed: 2731679
2020-07-15 07:55:09 -07:00
Ashish Kumar Dhanotiya
7091a7a31e qcacld-3.0: Correctly disable the connection manager feature
Currently connection manager feature flag is disabled with the
comment line which is not the correct way to enable/disable the
feature.

Correctly disable the connection manager feature flag.

Change-Id: If39a945ea4d2c185d6231d0967688a8e243bd8fe
CRs-Fixed: 2731718
2020-07-15 07:55:05 -07:00
Sandeep Singh
0615ee270f qcacld-3.0: Enable both SNOC and IPCI PLD layer for ICNSS2
ICNSS2 platform driver is used for moselle and adrastea which uses
IPCI and SNOC PLD layer, respectively. Add support to enable both
for ICNSS2 based to target flag.

Change-Id: I06fbacade99b09c9ea7347aa28e10968eaeedaa8
2020-07-13 23:39:24 -07:00
Vevek Venkatesan
7d7f50849d qcacld-3.0: add Runtime PM support and its PLD callbacks
Add PLD functions for Runtime suspend and resume callbacks,
and enable Runtime PM support for Moselle.

Change-Id: Ie990334c0c60892ec0f0ad6fac3253b3d326a919
CRs-Fixed: 2720832
2020-07-06 14:13:55 -07:00
Mohammed Siddiq
335ba9e938 qcacld-3.0: Add code to support modularizing ICNSS ICNSS2 and CNSS2
Add code to support modularizing ICNSS, ICNSS2 and CNSS2.

Change-Id: I696715592f6000f2a64f8940f324b699acd5fcf1
CRs-fixed: 2685412
2020-06-29 07:38:04 -07:00
gaurank kathpalia
56993c8df9 qcacld-3.0: Add make file changes for connection manager
Add make file changes for connection manager.

Change-Id: Ifea0426e3ac4a2c43ce64967375cc5f99855394f
CRs-Fixed: 2713471
2020-06-27 06:18:14 -07:00
Alok Kumar
1571401e34 qcacld-3.0: Enable FISA feature for QCA6750 in Kbuild
Enable FISA feature in the host driver for QCA6750.

Change-Id: I1f025cf1336db81a327524e932adaa5401183613
CRs-Fixed: 2717541
2020-06-27 03:57:30 -07:00
Jingxiang Ge
610b6ef7e0 qcacld-3.0: Disable CONFIG_EXT_WOW feature
ext-wow feature never supported/tested on MCC, and there
is no known customer using this feature, so compile it out.

Change-Id: I3c79ebecd5b2a44cfa9339748bf8e94f596e71bd
CRs-Fixed: 2680331
2020-06-25 03:49:34 -07:00
Abhishek Ambure
ffc2837211 qcacld-3.0: Enable spectral scan for QCA6750
Kbuild change to enable spectral scan for QCA6750 target.

Change-Id: I78e3e1220e46f62c71e838fe15cad35f2e5dbf75
CRs-Fixed: 2702866
2020-06-18 03:43:53 -07:00
Nisha Menon
46b0fb5f0c qcacld-3.0: Add node to sysfs to print wlan mem usage
The wlan_mem_stats node will print the DMA, SKB and heap
memory allocated in the wlan host driver. This is applicable
to perf and defconfig builds.
File path to new node is:
/sys/kernel/wifi/wlan/wlan_mem_stats

Change-Id: Ic05423d362de1ef07a3ecbdd6408a7226e2a3c2f
CRs-Fixed: 2680360
2020-06-11 02:04:35 -07:00
Ashish Kumar Dhanotiya
0e86934fd2 qcacld-3.0: Add driver command to dump function call mapping
Add driver command support to dump all the function call
mapping which is cached in global buffer.

Change-Id: I03b2162ccda171005e6fa8a7bb09cbf9c4819421
CRs-Fixed: 2677976
2020-06-09 21:53:25 -07:00
Jianmin Zhu
fb397c30c4 qcacld-3.0: Enable flag to increase TX descs in AUTO QCA6390
Based on multi-clients test experiment, when AUTO SA8155+HST
works as SAP connected more than 8 Ref STA clients, it requires
increase in TX descriptors to burst traffic to each Rx device,
or flow control happens to stop host tx queue frequently for
missing TX descriptors, can't get high throughput.

Change-Id: Ie2adbdd3bfece323d51d5e96fef6001c4e39c3f4
CRs-Fixed: 2703765
2020-06-07 12:29:09 -07:00
Rajesh Chauhan
bc611919e0 Revert "qcacld-3.0: Use IS_ENABLED for the definition of kernel module"
This reverts Change-Id: Iaf86c9da2a9946aac09867b5c46dcc79f1b5c37e.
That change fails build for GKI variant.

Change-Id: I6cd7322870023d245fe9d20250ceb0b5d738d214
CRs-Fixed: 2701642
2020-06-06 19:06:09 -07:00
Vevek Venkatesan
dd91edd508 qcacld-3.0: Use IS_ENABLED for the definition of kernel module
Add support and use IS_ENABLED in code, if CONFIG_IPA3 config as
loadable kernel module.

Change-Id: Iaf86c9da2a9946aac09867b5c46dcc79f1b5c37e
CRs-Fixed: 2701642
2020-06-05 06:25:38 -07:00
Min Liu
bc1a807ec5 qcacld-3.0: Add a sysfs replacement for set_he_bss_clr
Add the sysfs entry for set_he_bss_clr.
Previously these commands would be queried via iwpriv
--> iwpriv wlan0 set_he_bss_clr [value]
it is now changed to support via sysfs:
--> echo [value] > /sys/class/net/wlanxx/he_bss_color

Change-Id: I4700414469be018de9758277c4e095e64cabb376
CRs-Fixed: 2692916
2020-06-01 16:28:02 -07:00
Surabhi Vishnoi
ff7585ee9d qcacld-3.0: Add support to optimize latency using pm_qos
For Voice and Music (V&M) products, extreme latency optimization is
needed while playing music and discovery, higher power consumption
in this mode could be accepted. With CONFIG_WLAN_LL_MODE enabled,
when latency_level is set to ultra low via cfg80211 vendor command,
update request pm qos type PM_QOS_CPU_DMA_LATENCY to level
DISABLE_KRAIT_IDLE_PS_VAL to speed up CPU efficiency and irq response.

Change-Id: Ifb5bc8169f1cd08500c4b4bc0dd65dd0b3667ab6
CRs-Fixed: 2685074
2020-05-29 14:50:46 -07:00
Alan Chen
36a60df68b qcacld-3.0: Fix dp_trace related compilation issues
As part of this change I2e7caec268776a79d7166020c64af93fee2f8aec,
the feature flag was not properly defined and there were some compilation
issues. Hence, this change is fixing these issues. Also, add unit test
ini check in fw unit test command.

Change-Id: Ia8dfedec19d4d97c8c100321a0a012ee1a1b6a00
CRs-Fixed: 2695208
2020-05-28 12:07:55 -07:00
Min Liu
efc4350044 qcacld-3.0: Add sysfs entry for dumpStats and clearStats
Add the sysfs entry for dumpStats and clearStats.
Previously these commands would be queried via iwpriv
--> iwpriv wlan0 dumpStats [stats_id]
--> iwpriv wlan0 clearStats [stats_id]
it is now changed to support via sysfs:
--> echo [stats_id] > /sys/class/net/wlanxx/dump_stats
--> cat /sys/class/net/wlanxx/dump_stats
--> echo [stats_id] > /sys/class/net/wlanxx/clear_stats

Change-Id: If8e4d997bc621df98732461802fdd9cea89bd1ce
CRs-Fixed: 2685995
2020-05-23 16:26:00 -07:00
Min Liu
e95713a94e qcacld-3.0: Add sysfs entry for dump_dp_trace
Add the sysfs entry for dumpStats and clearStats.
Previously these commands would be queried via iwpriv
enable / disable --> iwpriv wlan0 dump_dp_trace [1/3]
show --> iwpriv wlan0 dump_dp_trace 0
clear --> iwpriv wlan0 dump_dp_trace 2
it is now changed to support via sysfs:
enable / disable --> echo [1/0] > /sys/kernel/wifi/dump_dp_trace
show --> echo 2 [count] > /sys/kernel/wifi/dump_dp_trace
         cat /sys/kernel/wifi/dump_dp_trace
clear --> echo 1 > /sys/kernel/wifi/clear_dp_trace

Change-Id: I2e7caec268776a79d7166020c64af93fee2f8aec
CRs-Fixed: 2691705
2020-05-22 18:29:54 -07:00
Jia Ding
c215494e1b qcacld-3.0: Add config option for max clients allowed
Add a config option to set maximum number of clients allowed.
And set max clients allowed to 64 on SDXPRAIRIE platform.

Change-Id: I4f475abbf5fba8d01f4121e55a87324fdd2d5d70
CRs-Fixed: 2692639
2020-05-22 13:53:50 -07:00
Bapiraju Alla
8cce2a2f7f qcacld-3.0: Add a sysfs replacement for range_ext
As part of WEXT replacement, replace range_ext with a sysfs file.

This feature can be controlled using configuration flag
CONFIG_WLAN_SET_RANGE_EXT

file path: /sys/class/net/wlanxx/range_ext
	where wlanxx is adapter name

example command: echo 1 > /sys/class/net/wlan1/range_ext

Change-Id: I389da429e1a0cd3a2ed1efede6cb958628eb7e6e
CRs-Fixed: 2689879
2020-05-22 13:53:46 -07:00