Commit Graph

12957 Commits

Author SHA1 Message Date
nobelj
25acb759bf qcacmn: Fixes to enable LI & BE in a build
Changes to build Lithium and Beryllium together.
This is needed for WIN

Change-Id: I74c86803ea99fb17d1f73e8b9c4e7cf59751a707
2021-06-07 01:51:15 -07:00
Mohit Khanna
89270803f3 qcacmn: Refactor fisa packet history for BE
Refactor FISA packet history to not access "struct rx_pkt_tlvs". This is
because this structure may be different for Li and BE chips and should
not be accessed directly and only via hal_soc->ops in common code.

CRs-Fixed: 2888556
Change-Id: I0d9f2785a81c130a2dc506020a02ee5581c0bbd3
2021-06-07 01:51:15 -07:00
Mohit Khanna
fa29d164f6 qcacmn: HAL changes to print 7850 RX TLVs
Add HAL APIs to print RX TLVs for 7850 platform.

Change-Id: I8321890a415b9ace49449bebd8b076e08a43c341
CRs-Fixed: 2891049
2021-06-07 01:51:15 -07:00
Mohit Khanna
f3e19b41d3 qcacmn: HAL Changes for RX packet capture
Add HAL apis for populate RX packet capture params.

CRs-Fixed: 2891049
Change-Id: I0befd3001a40fd286704699f4ec682f7c390fbda
2021-06-07 01:51:15 -07:00
Manjunathappa Prakash
477928661c qcacmn: Core DP RX path changes for WCN7850
Implement core DP rx processing to functions in to corresponding
architecture specific be/li rx files. Keep common utility functions
in DP common files.

Change-Id: I40083e10772fd2b6ce2f1fa9e197f2ad92d0522a
CRs-Fixed: 2891021
2021-06-07 01:51:15 -07:00
Rakesh Pillai
27d6b43bfb qcacmn: HAL RX-TLV changes for beryllium
Add HAL rx tlv changes for WCN7850

Change-Id: Ie76c608ed57c6a4f8adac97e1efc7888d2036f52
CRs-Fixed: 2891049
2021-06-07 01:51:15 -07:00
Mohit Khanna
e135b3e106 qcacmn: DP changes to create li/be TX files
Move DP TX target specific functionality to dp/wifi3.0/be
and dp/wifi3.0/li folders. DP Functionality common to both lithium and
beryllium targets stays in dp/wifi3.0.

Change-Id: I3497284153e2ea30a9cb1faf05bd41422329b804
CRs-Fixed: 2891038
2021-06-07 01:51:15 -07:00
Rakesh Pillai
ca2db4bfa8 qcacmn: Datapath RX-Monitor API changes
Add changes in datapath rx monitor mode APIs
to handle modification in HAL APIs for WCN7850.

Change-Id: Iec7fbf9389033dfa86e71b1081e6a64607125ecc
CRs-Fixed: 2888556
2021-06-07 01:51:14 -07:00
Rakesh Pillai
a42ab6f94e qcacmn: Add IPA api changes
Add changes in IPA APIs due to hal API
modifications for WCN7850.

Change-Id: I13e3acc154cb22538eca0adcd312cb7f9bc1124c
CRs-Fixed: 2888556
2021-06-07 01:51:14 -07:00
Rakesh Pillai
872da9462b qcacmn: Datapath RX error handler for WCN7850
Add DP rx error handler changes for WCN7850.

Change-Id: I401f1b69eb107818e7aceb0a51279dab7f558b96
CRs-Fixed: 2891021
2021-06-05 15:10:50 -07:00
Manjunathappa Prakash
14794ee689 qcacmn: CFG INI changes for beryllium targets
Beryllium targets have more number of HW rings.
Add INI changes to allow increase in number of rings.

Change-Id: I73d779334601d3a1c2aefcade1dcf9dd0f2ef761
CRs-Fixed: 2891021
2021-06-05 15:10:50 -07:00
Rakesh Pillai
59ea466ca4 qcacmn: Add HAL APIs for Lithium targets
Add hal soc API handlers for existing Lithium targets.

Change-Id: I2ca25c94702759eb8329eb24048c9f5732caa3cc
CRs-Fixed: 2891049
2021-06-05 15:10:50 -07:00
Rakesh Pillai
acd7abc01b qcacmn: Add WCN7850 target files
Add WCN7850 target files.

Change-Id: I8cb152116362b778de4d3b9a2b9b5180ca2a103e
CRs-Fixed: 2891049
2021-06-05 15:10:50 -07:00
Rakesh Pillai
b2548a90cd qcacmn: HAL srng API changes for beryllium
Add HAL srng API changes for WCN7850

Change-Id: I4b78dbe6a88b24c9ef7662c2091123fa7f86ba18
CRs-Fixed: 2891049
2021-06-05 15:10:50 -07:00
Rakesh Pillai
30d963b68e qcacmn: HAL internal API changes for beryllium
Add HAL internal symbol changes for WCN7850.

Change-Id: Ibf04113f58b76976b2233ace24d7f9e7ca284245
CRs-Fixed: 2891049
2021-06-05 15:10:50 -07:00
Rakesh Pillai
1190bfe856 qcacmn: HAL RX flow API changes for beryllium
Add HAL RX flow API changes for WCN7850.

Change-Id: Id5085bffb7a98543e38d9e3b989346b07ae124f0
CRs-Fixed: 2891049
2021-06-05 15:10:50 -07:00
Rakesh Pillai
9bf522cc45 qcacmn: HAL hardware header files changes for beryllium
Add HAL hw header inclusion changes for WCN7850

Change-Id: I2d56cf6ddfa2bc60c6440c20f1798f5b876d2143
CRs-Fixed: 2891049
2021-06-05 15:10:50 -07:00
Rakesh Pillai
2847b9761a qcacmn: HAL changes for REO config for Beryllium
Add changes to HAL APIs for REO config for WCN7850

Change-Id: I91191a47c4782672fa19d45099cde05ee4cd04b1
CRs-Fixed: 2891049
2021-06-05 15:10:50 -07:00
Rakesh Pillai
052dc539e3 qcacmn: HAL API changes for beryllium
Add HAL API changes for WCN7850

Change-Id: I1b5cedfee609d539ed03f103bbbc4394efddb0dc
CRs-Fixed: 2891049
2021-06-05 15:10:50 -07:00
Rakesh Pillai
e2f53365f8 qcacmn: HAL generic API changes for Beryllium
Add the changes to the generic HAL APIs.
The APIs generic across lithium and beryllium
architecture are kept in common HAL code.
The APIs which are generic across lithium
chipsets are moved to lithium specific files.
The APIs which are generic across beryllium
chipsets are kept in beryllium specific files.

Change-Id: Ie5e28aca5de02aa42f63b4a13fcb1cb32ffa8a28
CRs-Fixed: 2891049
2021-06-05 15:10:50 -07:00
Rakesh Pillai
5d289aea93 qcacmn: HAL RX API changes for Beryllium
Add HAL RX API changes for WCN7850.

Change-Id: Ia370b712253b4bb62c7ca3a23633ce262213cb13
CRs-Fixed: 2891049
2021-06-05 15:10:50 -07:00
Rakesh Pillai
0e23220e33 qcacmn: HAL TX API changes for beryllium
Add changes to HAL TX APIs for WCN7850

Change-Id: I65f6417c66449fcd57df30ddb4194dc7a34c4722
CRs-Fixed: 2891049
2021-06-05 15:10:50 -07:00
Rakesh Pillai
34b6af18a4 qcacmn: Init-Deinit changes for WCN7850
Add Init-Deinit changes for WCN7850 support
in datapath

Change-Id: I7f9850ee41f4638c6a28b5313549c67876c5f810
CRs-Fixed: 2888556
2021-06-05 15:10:50 -07:00
Mohit Khanna
4e6a7cf1bf qcacmn: Use function to attach HAL TX/RX ops
Assign th HAL TX/RX ops in a function instead of assining a structure
directly. This can be later extended to have default ops for a family of
chips and then override that with chip specific ops.

This also helps the case where a new hal_soc->ops needs to be added.
The new 'op' will need to be added to only a default ops initializer
(with assumption that it applies to all chips).

Change-Id: Iefa23d14110fa5252444fad89737a3b2b2fbab6f
CRs-Fixed: 2891049
2021-06-05 15:10:50 -07:00
Abhishek Ambure
606c708af6 qcacmn: Add support for nl callback for cfr data
Host add support to send cfr data via nl events to userspace
applications. Host registers callback when user send vendor
command to set transport mode.

Change-Id: Ieed3b6e09d871639af58336074313120d51762e2
CRs-Fixed: 2952096
2021-06-04 00:28:44 -07:00
Gururaj Pandurangi
5ca913646e qcacmn: Exclude 6GHz APs in VLP from scan list for US
If STA country code is US and 6G AP country IE is other than
US, STA would use VLP mode. Since US VLP is not determined
we don't allow connection to go through. Additionally, don't
include such AP to scan result.

Change-Id: I41b0c7dbea681b2ef1bea7c0a572ee1d7248fa6e
CRs-Fixed: 2953248
2021-06-04 00:28:40 -07:00
Abhishek Ambure
7f1cabbe4d qcacmn: Add support for cfr data transport mode
User sets CFR data transport mode using vendor command
QCA_NL80211_VENDOR_SUBCMD_PEER_CFR_CAPTURE_CFG. By default
CFR data transport mode is relayfs, user uses vendor command
attr QCA_WLAN_VENDOR_ATTR_PEER_CFR_DATA_TRANSPORT_MODE to set
transport mode QCA_WLAN_VENDOR_CFR_DATA_RELAY_FS or
QCA_WLAN_VENDOR_CFR_DATA_NETLINK_EVENTS.
If user sets QCA_WLAN_VENDOR_ATTR_PEER_CFR_DATA_RECEIVER_PID
attr in QCA_NL80211_VENDOR_SUBCMD_PEER_CFR_CAPTURE_CFG vendor
command then hosts uses RECEIVER_PID to send unicast NL events
for CFR data.

Change-Id: I40e896fad8af24e761fcbedeba761f4a3815f0b8
CRs-Fixed: 2952095
2021-06-03 22:16:41 -07:00
Ananya Gupta
02e119acc0 qcacmn: Correcting pointer variable input
Currently, wrong address is given to insert session_id in
meta_data.
To fix this, Passing pointer variable instead of address
to the pointer so that meta_data is filled correctly.

Change-Id: I019d73dc728fb214fd7c06a5027f0507ab4822a1
CRs-Fixed: 2959923
2021-06-03 20:11:32 -07:00
Kiran Kumar Lokere
21ef8b1970 qcacmn: QCA vendor attributes to configure keep alive data type
Add a QCA vendor attribute to configure the driver to use Data or
Management frames for keep alive data. This attribute is used for
testing purpose.

Change-Id: I03b133f3d61c4d34b79e41ad72cfc24334380658
CRs-Fixed: 2960804
2021-06-03 17:06:23 -07:00
Kiran Kumar Lokere
d0b1a8a303 qcacmn: QCA vendor attribute to configure ER SU PPDU type
Add QCA vendor attribute to configure the driver to transmit the
Data frames with ER SU PPDU type format. This attribute is used
for testing purpose.

Change-Id: If11523ea3e6316c47181342c3acc8425da85ee1b
CRs-Fixed: 2960794
2021-06-03 17:06:19 -07:00
Abhishek Singh
84138c387f qcacmn: Check AP support OCV before enable it
Add missing change I4ab3c956c3169b50a69c05d9ed1c36e055aeb586
in connection manager to disable OCV in STA RSN capability
if AP doesnt support it.

Change-Id: I84b666a489b8f2e410a4901b908f57edae86b5d4
CRs-Fixed: 2960828
2021-06-03 14:53:10 -07:00
Mainak Sen
162fb50fec qcacmn: Add dest mac addr in MSCS lookup API
Add dest mac address MSCS prioroty lookup API

Change-Id: If7f65af1821d6e7c37441521dc46789c9b4f9069
2021-06-03 03:44:47 -07:00
sheenam monga
9738504384 qcacmn: populate bw value from chan_params
Currently, host sends bw value to upper layer in response
of GET_USABLE_CHAN command. but upper layer requires bw
value in form of nl80211_chan_width enum and considering
bw value as invalid and resulting into 0 bw.

Fix is to populate bw value from ch_params.ch_width instead
of populating from curr channel list and then convert to
nl80211_chan_width from phy_ch_width in hdd.

Change-Id: I1937ac2b3282224861a200a5d956a6e92109328e
CRs-Fixed: 2957055
2021-06-03 03:44:41 -07:00
Yu Tian
c459923dd6 qcacmn: use correct rx pool id for refill buffer
When handling RXDMA error marked frames that from MAC1,
wrong rx descriptor pool is referenced, so allocated
buffer length is incorrect and lead to skb crash. Make
changes to always uses mac0 rx descriptor pool for MCL
platform.

Change-Id: Ica01c3967d6248a23ea745da63149dae9cd56677
CRs-Fixed: 2945573
2021-06-03 01:37:27 -07:00
Kiran Kumar Lokere
5ab085a1c8 qcacmn: Configure MBSSID info for Tx AP connection
Configure the MBSSID info to FW for Tx AP connection to enable
MBSSID functionality in FW.

Change-Id: Ida415a5c8f1dcb66e8890595b5f3038a611d62a5
CRs-Fixed: 2959158
2021-06-02 20:48:18 -07:00
Hariharan Basuthkar
319773094b qcacmn: Rectify errors in the 6G host regulatory database
Make the following code changes in the 6G host regulatory database:

1) Fix the multiple compilation errors that are seen when the flag
COMPILE_REGDB_6G is enabled.

2) Change the order of 6G AP type in the structure
sixghz_super_to_subdomains g_6g_reg_dmn_9_tuples and
enum sixghz_super_to_subdomains, from SP-LPI-VLP to LPI-SP-VLP, to keep
it in line with  enum reg_6g_ap_type.

3)Rename the members under reg_super_domain_6g to contain the hexcode
in the member names.

Change-Id: Ia28c214b217ae3fb21420d058872cff17e11a5b6
CRs-Fixed: 2857865
2021-06-02 15:54:30 -07:00
Karthik Kantamneni
0a7f7fb6a8 qcacmn: Optimize refill buffer pool feature code
Optimize refill buffer pool feature code to be
light weight on CPU, so that refill thread will
consume less CPU resources and also replenishing
RX buffers will be done faster.

Change-Id: I849ca60558c6197003d95e7d54fdb5f837cdc217
CRs-Fixed: 2950166
2021-06-02 13:48:27 -07:00
Harsh Kumar Bijlani
a496f14ebe qcacmn: Add forward declaration of structures to fix warnings
Add forward declaration of structures wlan_objmgr_pdev and
wlan_objmgr_vdev in file wlan_spectral_public_structs.h in
order to fix compiler warnings.

Change-Id: Ida73f3d3d808977ba1e813de3dd85e329fc13cd4
CRs-Fixed: 2907580
2021-06-02 06:58:26 -07:00
Wu Gao
e52b8c8067 qcacmn: Set MAX_RESET_CFG_ENTRY to 0xF for QCA6490 and QCA6750
Host sets num_grp_tlvs based on modified_in_curr_session, which uses
default value - MAX_RESET_CFG_ENTRY. MAX ta ra entries changed from 16
to 4 for QCA6490 and QCA6750, so change MAX_RESET_CFG_ENTRY from
0xFFFF to 0xF here.

Change-Id: Ie057b8763c0126bd0cacab4fd21da9df0d5e71f2
CRs-Fixed: 2957324
2021-06-01 21:48:55 -07:00
Karthik Kantamneni
b1a539c931 qcacmn: Set EP vote only if feature is supported
Skip setting EP vote if EP voting feature is not supported

Change-Id: I1f21b13f14ec6e65fec5fdbdc952df05ee0f1c6e
CRs-Fixed: 2953425
2021-06-01 01:42:05 -07:00
Yeshwanth Sriram Guntuka
548c146aa0 qcacmn: Add support for GCMP in rx de-fragmentation
GCMP header and MIC are not removed for received
fragments which will result in incorrect ethertype
and presence of LLC hdr in the data when the frames
are sent to network stack.

Fix is to add support for GCMP in rx de-fragmentation
path.

Change-Id: I83ed29a766e40e32f4b712342ebd40d08a2c65e0
CRs-Fixed: 2941879
2021-05-31 07:47:38 -07:00
sheenam monga
ef4a346a73 qcacmn: Add support to get usable channels for NAN
Fetch usable channels for NAN iface mode from policy manager
or reg current channel list based on filter mask and
Update res msg channel list.

Change-Id: Ifa4ad4c7c8479f4a0ecc7dbe101f6507ff1525dc
CRs-Fixed: 2949340
2021-05-31 05:36:38 -07:00
sheenam monga
09bb1c3ad0 qcacmn: Fetch usable channels for particular band and dev mode
Add support to get usable channels for particular band and
dev mode.

Change-Id: I891e041d777ba37686fbc35b3c14cc964e5db159
CRs-Fixed: 2947182
2021-05-31 05:36:32 -07:00
Shwetha G K
6f88e8eede qcacmn: Fix build error post CFR movement to cmndev
Fix the compilation error post movement of CFR files to
cmndev and rename cfr init deinit APIs to be chip
independent. Also port fixes from component_dev.

CRs-Fixed: 2938886
Change-Id: I2f5637f5717ce5154e3b642c3ade646794e99602
2021-05-31 03:25:07 -07:00
Shwetha G K
550f97cf8a qcacmn: Move CFR to common project
Move CFR to common project and rename the files as it will
be shared with other targets as well. Fix checkpatch errors
too.

Change-Id: I66481848036212aedab74c9c18848070ac1a3511
2021-05-31 03:25:03 -07:00
Pragaspathi Thilagaraj
3c632fd1e3 qcacmn: Add QCA interface to configure band specific rssi thresholds for roaming
Add QCA interface to specify the RSSI thresholds separately for candidate
APs from different bands.

Change-Id: I51d2e7c4490fde3901a4e4e8ad31d9c18823637c
CRs-Fixed: 2951242
2021-05-30 23:52:10 -07:00
Karthik Kantamneni
bd49a69019 qcacmn: Introduce intermediate EP voting access state
Introduce intermediate EP voting state during this transition state
access the votes only if direct writes are not possible.

Change-Id: Ib4522aef2209b4797100ca84e4e230a00e14b654
CRs-Fixed: 2954903
2021-05-28 18:30:53 -07:00
Deeksha Gupta
7b438a5835 qcacmn: Add support for QCA_WLAN_VENDOR_ATTR_TWT_SETUP_MAC_ADDR
As a part of this change, in SAP TWT mode this mac_addr
attribute is required in response for TWT setup, get_status,
pause, response and teardown. And is required in request
for TWT get_status and teardown.

Change-Id: I230047ac46181a6bfca054c610b96c054f5c303d
CRs-Fixed: 2952331
2021-05-28 05:51:32 -07:00
Nandha Kishore Easwaran
df35f813fd qcacmn: Use pld api to get pci slot
Use pld api to get pci slot instead of getting pci slot from
domain.

Change-Id: I0a2024eba89ee98c645f613ea4aa56dbb2089537
2021-05-28 03:47:12 -07:00
Prateek Patil
f1cd24767e qcacmn: Compilation error fix
Include Header file for fixing compilation error in HSP mode in WHUNT

Change-Id: I2d1c4d6a5b089b9e0e5176fc7fa257748b90143e
2021-05-28 01:47:13 -07:00