Commit Graph

9471 Commits

Author SHA1 Message Date
Hariharan Basuthkar
9fed3d69fb qcacmn: Do not create a DFS object for a 6G only radio
Do not create a DFS object for a radio if the channel frequency range
advertised by the target is a 6G only range.

Change-Id: Ib672902ec3945d00b53ab6d4460584ca889ae387
CRs-Fixed: 2755652
2020-09-08 00:47:36 -07:00
Gerrit - the friendly Code Review server
4438848428 Merge changes into wlan-cmn.driver.lnx.2.0 2020-09-07 23:11:11 -07:00
Rakesh Pillai
97fb02b65a qcacmn: Fix the stale and invalid cookie logging
Currently the stale cookie and invalid cookie
counters are being logged inter-changeably.

Fix the logging for stale and invalid cookie counter.

Change-Id: I43346fe961ee750a3baa1bf8c2da2551fb06e973
CRs-Fixed: 2770877
2020-09-07 08:50:20 -07:00
gaurank kathpalia
0c92795c1c qcacmn: Rename the connection manager ext callback API
Rename the connection manager API to have proper names also
remove duplicate callbacks.

Change-Id: I8712487091c17f576927dd06bcf75bf45d06ba8b
CRs-Fixed: 2769296
2020-09-07 05:17:27 -07:00
Balaganapathy Palanisamy
55650d9c02 qcacmn: Add sequence number for WMI pipe
Add sequence number to each packet queued on wmi pipe and
match it against expected sequence number in wmi completion handler.
WMI packets are consumed internally, use the skb mark field to capture
the sequence number of the wmi packet.

Change-Id: I1421e3fcff0a2b326f6d899780c773950544ef26
CRs-Fixed: 2741465
2020-09-07 03:18:00 -07:00
Mainak Sen
60cdb2185c qcacmn: Hlos tid override support in dp vdev
1. Add flag to support hlos id override feature in dp vdev
2. Update tid from nbuf->priority in dp_tx_send
3. Update tid to nbuf->priority in dp_rx_process

Change-Id: I66e8d77733a667f3f60b77e0d7bb444f7c5ad93d
2020-09-07 01:03:42 -07:00
phadiman
6510531b81 qcacmn: Remove dp_tx_pdev_detach API
dp_tx_pdev_detach API takes care of flushing
tx descriptors and multicast enhancement mem
cleanup

dp_pdev_deinit takes care of cleaning up the
above actions and dp_tx_pdev_detach is simply
a redundant piece of code

Hence remove dp_tx_pdev_detach API and call
dp_tx_desc_flush directly from dp_pdev_deinit

CRs-Fixed: 2769303
Change-Id: Ic798793e81eefc7dc905ca7552fdca13e9fddd8c
2020-09-05 10:27:22 -07:00
Pragaspathi Thilagaraj
52173647db qcacmn: Add support for WMI_CHAN_LIST_CMD in connection mgr
Add support for WMI_CHAN_LIST_CMD in connection mgr

Change-Id: Ie28eba05da82bfdd928bbd7ef2bf3d21ec2ef782
CRs-Fixed: 2768969
2020-09-04 23:17:28 -07:00
Nandha Kishore Easwaran
72f98bced8 qcacmn: Send diag wmi command to FW
Donot block wmi command sending inside #if macro.
This change is needed because WIN uses only the FW log level
setting and not the complete feature. Only the feature
should be enclosed in #if macros and not the wmi command
sending part.

Change-Id: Ia28c0487d360c1b0a54374bb237811eba6b1af41
2020-09-04 05:28:39 -07:00
Jinwei Chen
b8a17e378b qcacmn: provide REO2SW1 ring as REO_DST option when IPA is enabled
Currently when IPA is enabled, all RX frames will be routed to IPA
ring REO2SW4 by default, there is no REO2HOST option. once IPA RX/TX
is slow, then likely will give RX back pressure to wlan RXDMA. per
FW feature request, when IPA RX is slow or stuck, route RX frames to
wlan host to mitigate issue, thus provide REO2SW1 ring as REO_DST
option into HWIO_REO_R0_DESTINATION_RING_CTRL_IX_0.
To make sure if without FW dynamic REO_DST ring switching change,
current host change should not give chance that RX frames
route to host when IPA is enabled, select CTRL_IX_0 index 2 to
set REO_DST option, the reason is: if RX hash is enabled, CTRL_IX_2
and CTRL_IX_3 index 16~31 is REO_DST option filled with REO2SW4,
if RX hash is disabled, then CTRL_IX_0 index 1 and 4 filled with
REO2SW4 is REO_DST option configured by
WMI_HOST_PEER_SET_DEFAULT_ROUTING, so CTRL_IX_0 index 2
is only used for FW dynamic ring switching.

Change-Id: I6af12e07472dbdd4ab6d97f24e9fd4082c4e7328
CRs-Fixed: 2767844
2020-09-04 03:23:49 -07:00
Neha Bisht
2b49081472 qcacmn: Remove Wno-format flag while compilation of driver
To show formating errors at compile time, removing Wno-format flag
while compilation of driver and also handling associated errors

Change-Id: If990cc9110fe3042dd486e31d9b44fce79861e77
2020-09-03 19:27:42 -07:00
Ankit Kumar
5eb6324b3e qcacmn: Modify frag restitch param for frag based handling
Dont pass las_msdu as a param to restitch func for frag
approach as it doesn't contain valid value and is not used
in the restitch api.

Change-Id: I974a8ae5e6ce4a9bf04985cbd37e103700f48301
2020-09-03 15:25:13 -07:00
Sachin Ahuja
d1f2d7a868 qcacmn: Search opclass from global opclass also
While querying for the channel width, the opclass is
extracted from the country opclass. If opclass is not
found then 20Mhz channel width is considered for connection.
This fails the cert test case when AP sends the global
opclass in ECSA

Change is done to search in the global opclass if the
opclass is not found in the country specific opclass.

CRs-Fixed: 2763702
Change-Id: If8c962e1e164cfccda13f19cbf925499c9cc0394
2020-09-03 15:25:10 -07:00
Edayilliam Jayadev
8afea1031d qcacmn: Stop finite Spectral scan internally in host
When user programs a non-zero scan count(say N), after receiving  N
samples Spectral scan is supposed to be stopped. This change keeps track
of number of Spectral reports received from target and stops the
Spectral scan when programmed number of samples arrives at host.

CRS-Fixed: 2764935
Change-Id: Ibea0eeece4577fd6e0da302716869b05c900f917
2020-09-03 05:58:03 -07:00
phadiman
dbb0787de4 qcacmn: Modify wlanstats context to RDK stats context
peer wlanstats context is used only for RDK Plume stats
but the name is misleading as wlan statistics

Hence rename peer's wlanstats_ctx to rdkstats_ctx and
the APIs the APIs around the same

CRs-Fixed: 2767192
Change-Id: I9e8955554b94fa29a3964fed729a95a4db67c8f6
2020-09-03 04:04:17 -07:00
Ashish Kumar Dhanotiya
c9b7b0f885 qcacmn: Add feature flag for line number logging
Currently line number is not useful in the logs and to print
the line number consumes lot of memory in driver text area size.
To reduce the driver size add feature flag to enable/disable
line number logging in the driver.

Change-Id: Ie715ff9238545a5041c0241b731dc14460050316
CRs-Fixed: 2766247
2020-09-03 04:04:14 -07:00
Sridhar Selvaraj
b257b236b0 qcacmn: Enable data path polling mode based on INI
Enable data path polling mode based on INI
dp_poll_mode_enable. Configure all data path
interfacing rings (UMAC/LMAC) and Monitor rings
in polling mode when NSS offload is disabled.
By default, poll mode is disabled.

Change-Id: I0e51207042811f517a423eb7276e3f33c5313450
2020-09-03 01:58:50 -07:00
Balaganapathy Palanisamy
e5b0acba4d qcacmn: Add config option for each WMI log buffer size
Make each WMI debug log buffer size configurable through
compile time config option. Now memory constraint platforms
can use these config options. Use default values if no
values are configured.

Change-Id: Ibc924e12a56ae7d529aea91e55bcc0bbce72ac7e
CRs-Fixed: 2741465
2020-09-03 01:58:47 -07:00
Min Liu
0e80359c3e qcacmn: Additional stats through QCA_NL80211_VENDOR_SUBCMD_GET_STA_INFO
This commit introduces additional stats to query through
QCA_NL80211_VENDOR_SUBCMD_UPDATE_STA_INFO.

Change-Id: Ibc713d1da81a5bf8fa267a205680aec5539630ce
CRs-Fixed: 2758484
2020-09-03 01:58:42 -07:00
Rakesh Pillai
6b95713d00 qcacmn: Skip history record if memory allocation fails
Skip the recording of rx error ring and rx reinject
history if the memory allocation for the history
fails during the attach.

Change-Id: Ifa74937d0c37e6013ccaec851dab7d9e53057ac2
CRs-Fixed: 2767579
2020-09-03 01:58:39 -07:00
suresh
a8d0770765 qcacmn: Remove direct attach reference in makefile
Remove direct attach directory references in Kbuild
of spectral source code.

Also, remove DA_SUPPORT macro specific code changes

Change-Id: I5a06e9bd3f40ee6d177951562836c4ea7647f98b
2020-09-03 01:58:36 -07:00
suresh
0ddf3353fd qcacmn: Remove DA source code dependency
Remove DA header file reference and other DA
dependent code changes.

Change-Id: I49804f753390b8952e45679b178162dd60bb43f6
2020-09-03 01:58:32 -07:00
gaurank kathpalia
a34d51b747 qcacmn: Add get API for assoc disallowed param
Add public API to get the value of assoc disallowed
param.

Change-Id: Id97219be71a54a2edc5fb266026710387dfee143
CRs-Fixed: 2767492
2020-09-02 23:52:00 -07:00
Linux Build Service Account
8f922f5286 Merge "qcacmn: Avoid peer free notification for self peer" 2020-09-02 16:36:34 -07:00
Linux Build Service Account
d1c20a8502 Merge "qcacmn: Map IPA tx buffers as part of IPA ready callback" 2020-09-02 16:36:34 -07:00
Linux Build Service Account
fe88e92fa2 Merge "qcacmn: Don't take peer ref by id on AST cleanup in unmap handling" 2020-09-02 16:36:33 -07:00
Vivek
7f45fb6521 qcacmn: Avoid peer free notification for self peer
The peer free notification is sent for all peers
including self peer. The primiary intent of using this notification
is to make sure all the connected peers are disconnected.

Also when the peer free notification is sent, the peer is already
freed and we cannot identify if the peer free is for self peer

The self peer free notification for STA is causing issues
where BSS peer delete is skipped as part of bringing down the VDEV SM.

CRs-Fixed: 2755824
Change-Id: I276177788a51dcdd948caeb734eaa896edf520dd
2020-09-02 15:47:35 -07:00
Nisha Menon
d95c9bb377 qcacmn: Map IPA tx buffers as part of IPA ready callback
Register IPA ready callback with IPA driver. The callback
sets ipa_is_ready flag in the host driver and kick starts
the ipa init sequence as part of which the Tx buffers are
mapped to IPA.
None of the IPA APIs are invoked until IPA ready registration
is complete.

Change-Id: I6570b2b347052164a274fbc22358ebf0719dcabf
CRs-Fixed: 2735107
2020-09-02 13:51:44 -07:00
Yeshwanth Sriram Guntuka
004e29eceb qcacmn: Don't take peer ref by id on AST cleanup in unmap handling
In the scanerio where peer teardown and peer map happen
in parallel, AST entries could get added to the peer AST
list after cleanup happens as part of peer teardown. AST
cleanup as part of peer unmap handling would not remove
the entry from the peer AST list. This is because
dp_peer_get_ref_by_id returns NULL as peer state is moved
to logically deleted state.

Fix is to not take peer ref by id and use the peer
argument passed in which already holds ref in the
peer unmap handling.

Change-Id: I844d3f07e9eec962d44bbfba851ad46f350e4f97
CRs-Fixed: 2766779
2020-09-02 13:51:40 -07:00
Linux Build Service Account
b6a978ce42 Merge "qcacmn: Define feature flag for broadcast TWT" 2020-09-02 12:07:15 -07:00
Linux Build Service Account
3b3644f6a2 Merge "qcacmn: populate vdev extension statistics" 2020-09-02 12:07:15 -07:00
Gerrit - the friendly Code Review server
4bc9d9a8d9 Merge changes into wlan-cmn.driver.lnx.2.0 2020-09-02 12:00:02 -07:00
Shashikala Prabhu
99d3131912 qcacmn: Define feature flag for broadcast TWT
Define feature flag for broadcast TWT.

Change-Id: I629aefb384773c875881eb5d1d78349e1574e409
CRs-Fixed: 2766013
2020-09-02 10:46:56 -07:00
nobelj
908218f1fa qcacmn: populate vdev extension statistics
populated fils discovery, unsolicited probe response from
vdev extension stats and populated to APSTATS.

Change-Id: I762d7f36fa45f9048cf591bde3550a415e23bdcb
2020-09-02 10:46:52 -07:00
Debasis Das
ec3e25bf03 qcacmn: Fix array index out of bounds
The 2nd argument passed to the function is_primaryseg_expected
is used to index the array spectral->rparams.fragmentation_160 which
is of size 2.If the value of the argument is greater than or equal
to 2, the indexing will lead to array-out-of-bounds access.
The fix is adding the relevant validation check.

Change-Id: Iccf98b06c0546ad11ec67e93e14183214100107f
2020-09-02 08:48:31 -07:00
Mainak Sen
14543e310a qcacmn: Add qdf and DP module id for MSCS
Add MSCS module id in QDF and DP
Change-Id: I1b5186828c2ef236bb1f05c8d54850ed37719926

Change-Id: I5049cd17e5e1ad73adc6a1d881e7882e3947796f
2020-09-02 08:48:28 -07:00
Srinivas Girigowda
67d43c98ee qcacmn: qdf: Remove QDF_MAC_ADDR_STR and QDF_MAC_ADDR_ARRAY
These two macros are obsolete and removed.
Use the below new macros
1. For logging MAC address in kernel or driver logs, use QDF_MAC_ADDR_FMT
   in combination with QDF_MAC_ADDR_REF
2. For other management interfaces like debugfs, sysfs, ioctl, wext,
   unit test code, non-production simulation SW use
   QDF_FULL_MAC_FMT and QDF_FULL_MAC_REF

Change-Id: I366ceddfbb86526ebf24366b18b9e847fc5e4cea
CRs-Fixed: 2767703
2020-09-02 06:52:53 -07:00
wadesong
173c0315d8 qcacmn: Fix some whunt build errors
In function __scm_handle_bcn_probe the two macros
QDF_MAC_ADDR_FMT and QDF_MAC_ADDR_REF should appear or
disappear together.

Change-Id: I8510de0b14903f788ec3183d6cc014d061715fcf
CRs-Fixed: 2767031
2020-09-02 06:52:49 -07:00
gaurank kathpalia
96fb5eb625 qcacmn: Take care of hw mode change in Connection mgr
Set hw mode before initiating connection request
and send vdev start to FW.

Change-Id: I658f0f03a68da923dbfa1213e278490bc1e874cf
CRs-Fixed: 2763364
2020-09-02 00:21:11 -07:00
Chaithanya Garrepalli
354d64f366 qcacmn: fix MCL WHUNT compilation error
Remove comma from dp_alert to avoid compilation issue

Change-Id: Iea6bf230855d0e931fc306284db4f7a368406ba8
2020-09-01 18:14:58 -07:00
Vinay Adella
87858900ba qcacmn: Add num freq, num nfdbr/dbm fields to WMI struct
wmi_host_pdev_nfcal_power_all_channels_event is updated to have
number of freq, nfdbr/nfdbm.
It is assumed that number of nfdbr & nfdbm are the same.

Change-Id: I23279bde55ee42744c50b23e199b04fbc070a87f
2020-09-01 05:37:37 -07:00
Abhishek Singh
78dc32e86c qcacmn: Fix the connection manager state machine init failure
The state machine infra require the states in sequence and addition
of if define in the wlan_sm_state_info will lead to state machine
init failure.

Fix this by removing the if define from the wlan_sm_state_info and
adding the dummy func for not define cases.

Change-Id: I5c5cb7837774954183a8ea1683c401441fb48bab
CRs-Fixed: 2764953
2020-09-01 05:37:34 -07:00
Hariharan Basuthkar
cad70ccae2 qcacmn: Add an API to get max TxPower for 6G TPE
Add an API wlan_reg_get_max_txpower_for_6g_tpe, to get the max tx-power
in PSD or EIRP format, based on the client type as follows:

 =======|===============================================
| S No. |      Default Client       | Subordinate Client|
|=======|===============================================|
| EIRP  | reg_get_channel_reg_power |       24 dBm      |
|       | _for_freq(pdev, freq)     |                   |
|-------------------------------------------------------|
| PSD   |          (-1) dBm         |        5 dBm      |
 =======================================================

Change-Id: Ic4946cd3e3f2e13469b0d5e2020e3fcda5040c2f
CRs-Fixed: 2765566
2020-09-01 05:37:31 -07:00
Ashish Kumar Dhanotiya
4fd0241eff qcacmn: Add os_if callbacks for connection manager
Add support for osif callbacks for connection manager.

Change-Id: Ibe86c94ac86e17f7ac42ad4c62426225f32c382e
CRs-Fixed: 2758023
2020-09-01 05:37:28 -07:00
Pavankumar Nandeshwar
857e8a7579 qcacmn: Reset the mask for rx err ring
Reset the mask for rx error ring when wlan nss
offload is enabled

Change-Id: Ieebcb9c1b6f47f255c8d193c8c0068b1cab9b22f
2020-09-01 01:50:07 -07:00
Pavankumar Nandeshwar
864714139c qcacmn: Use right register name
Use correct register name WFSS_CE_COMMON_REG_REG_BASE
for qcn9100

Change-Id: Ie7bc5bf66d9cda2b1a5603a5fc5b4a032efe29ce
2020-09-01 01:50:04 -07:00
Pavankumar Nandeshwar
a50e6800e9 qcacmn: Use correct headers for qcn9100
Use right headers files for qcn9100

Change-Id: I743b32e9fa1c7c3377462d55ca2b6d737af5f713
2020-09-01 01:50:01 -07:00
Pavankumar Nandeshwar
9e00273fe7 qcacmn: HIF layer changes for QCN9100 bringup
Initial changes made for bring up of
QCN9100 in HIF layer

Change-Id: I60c5f7e8d5456e6f2bfda8f99d873a30ca979ada
2020-09-01 01:49:57 -07:00
Pavankumar Nandeshwar
42c974a68d qcacmn: Target_if changes for QCN9100 bringup
Initial changes for bring up of QCN9100 in
target_if layer

Change-Id: I216cb52001b6e0c87a1c4b45990aad0ea83b4933
2020-09-01 01:49:54 -07:00
Pavankumar Nandeshwar
6756b1a5aa qcacmn: Data path changes for QCN9100 bringup
Initial changes made for bring up of
QCN9100 in data path and hal

Change-Id: I6cbe90428b552b6ff5733bc0f60bfb9f7933bc9a
2020-09-01 01:49:51 -07:00