Commit Graph

16509 Commits

Author SHA1 Message Date
Jia Ding
d40b388d2f qcacmn: Mark first packet after wow wakeup
Add feature support to tag first packet that wakes up HOST from WoW.

rx_pkt_tlv.rx_msdu_end.reserved_1a field is used by TARGET to meet
such request.

Change-Id: I3d37e13e8cff49bc4f622d3070a19e4c4be56417
CRs-Fixed: 3137621
2022-03-03 07:22:05 -08:00
aloksing
7148dfedf8 qcacmn: Handle enhanced stats from Rx monitor path in Waikiki
Update enhanced stats from Rx monitor path in Waikiki.
Populate mpdu_retry_cnt, sw_peer_id, mpdu_ok_byte_cnt and
mdpu_err_byte_cnt from PPDU_END_USER_STATS TLV.
Fix KW issue.

Change-Id: I055ff84f6304ba71b09a9a75b8420183ab6e9d8a
CRs-Fixed: 3134900
2022-03-03 04:56:34 -08:00
Sai Rupesh Chevuru
9e4a8f0f21 qcacmn: Enabling TX FW metadata V2
As part of TX FW metadata V2 global sequence number based
and SVC ID based support added.

Change-Id: Iefee2c47ecbebf6edfec9a687ef67e0e270bbf06
CRs-Fixed: 3136931
2022-03-03 03:38:24 -08:00
Amir Patel
193246d3d3 qcacmn: Add core Rx monitor processing
Add core Rx monitor processing

CRs-Fixed: 3074352
Change-Id: I984fff721d671de6f62d6d9e6e13bd80c543ea8e
2022-03-03 03:38:18 -08:00
Amir Patel
f78b0ccc9c qcacmn: Add workqueue infrastructure for Rx monitor processing
Add workqueue infrastructure for Rx monitor processing

CRs-Fixed: 3074291
Change-Id: I9b898c0101bf3e294e06cd2d491a0eecb47ec765
2022-03-03 03:38:12 -08:00
Amir Patel
f17d789fa6 qcacmn: Add Waikiki monitor HAL processing
Add Waikiki monitor HAL processing

CRs-Fixed: 3073467
Change-Id: I2b1768b827f34785effed6c076a099628870e2a5
2022-03-03 03:38:05 -08:00
aloksing
482fba652b qcacmn: Increment pkt type for WKK
Define DOT11_BE as per Rx tlv
Increment pkt type for WKK

CRs-Fixed: 3121279
Change-Id: Id4bf93e5dcda08cc7fccfe3f8f06b00e5b29d4e3
2022-03-03 03:37:57 -08:00
Chaithanya Garrepalli
52352f5bda qcacmn: reset is_lro_hash_configured in pdev init
Reset pdev->is_lro_hash_configured flag to default
in dp_pdev_init.

Change-Id: If4064cbf5d8f76180eb9f6ba4d7fb278418dfc67
CRs-Fixed: 3141090
2022-03-03 02:11:24 -08:00
Bapiraju Alla
49a86029a8 qcacmn: Update VDEV connected links bitmap after STA link connect
Currently, VDEV connected links bitmap is not being updated properly
for link VDEVs. Because of this, during the disconnect assoc peer
is being deleted first instead of link VDEV peer.

To address this, update VDEV connected links bitmap after STA link
connection complete.

Change-Id: Id8465948fbb3af2f063e04ec9403cb4e3a6f98d8
CRs-Fixed: 3125636
2022-03-03 02:11:18 -08:00
Neha Bisht
229317b922 qcacmn: Avoid intrabss check in Tx NAWDS path
Intrabss check for NAWDS was added as a temporary fix to resolve the
issue of selfbridge enteries present in AST table. The actual reason
is loopback pkt received with one's own bridge mac. To avoid this, add
a check for not sending out any packet with an invalid peer id in the
ast table.

Change-Id: Ia4c520bcc8b7077f0b484a0bc40c4d26db77c3f4
CRs-Fixed: 3135142
2022-03-03 02:11:13 -08:00
Linux Build Service Account
55d7ee3310 Merge "qcacmn: Fix TWT rx frames capture in packet capture mode" 2022-03-02 20:11:08 -08:00
Vulupala Shashank Reddy
f31ce2f1c1 qcacmn: Fix TWT rx frames capture in packet capture mode
Currently the TWT rx frames are dropped in
tgt_mgmt_txrx_rx_frame_handler considering them as unspecified
packets as action category for TWT is not defined.

Define TWT action category so that the TWT frames will not be
considered as unspecified frames and dropped while processing.

Change-Id: I2d9c01e89029bcbb379a5a9c77a7d101de155d6a
CRs-Fixed: 3087275
2022-03-02 18:39:50 -08:00
Linux Build Service Account
99bbed9b55 Merge "qcacmn: Add reg API to check for enable channel state" 2022-03-02 16:42:02 -08:00
Deeksha Gupta
8944151a4b qcacmn: Add reg API to check for enable channel state
Add new reg API to check if frequency is active (non-passive) 
or not from the secondary channel list.
The API checks the channel state against CHANNEL_STATE_ENABLE.

Change-Id: If41850563e680659ea815f09207ec0b854a2f040
CRs-Fixed: 3136785
2022-03-02 16:15:22 -08:00
Linux Build Service Account
ac86f3c949 Merge "qcacmn: Update gEnableSNRMonitoring to true" 2022-03-02 13:47:29 -08:00
sheenam monga
00f035dcde qcacmn: Update gEnableSNRMonitoring to true
Currently in wma_chan_info_event_handler chan info
is updated based on gEnableSNRMonitoring. By default
gEnableSNRMonitoring is set to false, due to which
chan info is not updated.

Fix is to keep gEnableSNRMonitoring enbaled, so that
chan info can be updated.

Change-Id: I77a999d64fca093c8bc50e4532e659f37a3ac593
CRs-Fixed: 3109317
2022-03-02 11:06:13 -08:00
Linux Build Service Account
03423a5af1 Merge "qcacmn: Use msdu_done_copy bit for Waikiki" 2022-03-02 10:09:50 -08:00
Linux Build Service Account
f16969fa98 Merge "qcacmn: Extend ce_name to include 16 ces for wkk" 2022-03-02 10:09:49 -08:00
Gerrit - the friendly Code Review server
3514a1cff8 Merge changes into wlan-cmn.driver.lnx.2.0 2022-03-02 09:46:45 -08:00
Pavankumar Nandeshwar
5f9a27027d qcacmn: Use msdu_done_copy bit for Waikiki
Use msdu_done_copy bit for Waikiki instead of msdu_done
bit, as access to the latter involves reading of an entire
new word, of which no other parameters are accessed.

Change-Id: I09017e53faff73aef484241f1972fe8c75585eb0
CRs-Fixed: 3132624
2022-03-02 08:15:48 -08:00
Kiran Venkatappa
6d8cb5bed5 qcacmn: Extend ce_name to include 16 ces for wkk
16 CEs are available in WKK. Extend ce_names array to include 16 CEs to
fix out-of-bound access

Change-Id: I681aee58cb189b726af9d24f3d8fc2bab4ea6f1a
CRs-Fixed: 3136045
2022-03-02 06:56:04 -08:00
Himanshu Batra
8da6f58098 qcacmn: Fix static analysis issue in MLO disconnect API
Fix static analysis issue in MLO disconnect API

Change-Id: Ibf7b82e4805a81d2d32ea2bfa82a8e1f3756867c
CRs-Fixed: 3140790
2022-03-02 05:28:55 -08:00
aloksing
97c1a168a5 qcacmn: changes for pdev stats
aggregate newly added 11BE specific stats for pdev

Change-Id: I3f25a4510b0dd60a4105befb8311f10cd6ef2ab0
CRs-Fixed: 3120318
2022-03-02 04:19:34 -08:00
Subrat Mishra
bd3eefcabd qcacmn: Update missing TX RX DP stats for pdev
Update missing TX RX Data Path stats for pdev in pdev aggregation
function.

Change-Id: I6f6311f66b6eb9271015d0debb8d1d9ccce62881
CRs-Fixed: 3133098
2022-03-02 04:19:28 -08:00
Bapiraju Alla
b88a049cb7 qcacmn: Don't unlink the BSS for ML VDEV connect failure
Currently driver is doing unlink BSS when there is a connect failure.
This will cause an issue, for 2G+5G ML connection.
  1) Connect on 5G link failed due to Auth failure
  2) Connect on next candidate (2G) is success and FW is in SMM
  3) Partner link(5G) connect will fail due to 5G scan entry won't
     be found in SMM mode.

To avoid this, don't unlink the BSS for ML VDEV connect failure.

Change-Id: Icaa8c736d9038c971b5c3d459fd4af5a833bdc80
CRs-Fixed: 3129726
2022-03-02 04:19:22 -08:00
Jinwei Chen
a8fe61c936 qcacmn: Prevent runtime PM suspending during hif_force_wake_request
Currently if write non-shadow register and not in initial
phase, host will call hif_force_wake_request()-->
pld_force_wake_request_sync(), but this API can not guarantee
MHI/PCIe is in wake state if runtime PM suspending is ongoing
in parallel, later any register accessing through PCIe bus will hit
NOC error.

Add hif_pm_runtime_get_sync() in hif_force_wake_request() to prevent
runtime PM suspending.

Change-Id: Id60c6041a830d9ad27b0b4173a036c9c57fbf350
CRs-Fixed: 3120170
2022-03-02 03:09:12 -08:00
Varsha Mishra
0d2ec58510 qcacmn: Fill metadata for sawf feature
Fill metadata for transmission in lithium and berrylium
when sawf is enabled.

Change-Id: Icc76ca7b8310c21a98e7f01984d4901afba0526c
CRs-Fixed: 3138558
2022-03-02 01:28:33 -08:00
Alan Chen
51637c64bb qcacmn: Add new cfg80211 wrapper for registering net device
Add a new wrapper wlan_cfg80211_register_netdevice() that calls
cfg80211_register_netdevice for Kernel 5.12+.

Change-Id: I17655f1e3123d663d25b9dfc82e7c6f737486391
CRs-Fixed: 3133310
2022-03-02 01:28:27 -08:00
Vulupala Shashank Reddy
f4a25a4af0 qcacmn: Add support for tx flags for packet capture mode
Fill tx flags in radiotap header based on tx status for
tx packets capture in packet capture component.

Change-Id: I52da01a2c0677d32bfb05a1f3095a0e6df084fca
CRs-Fixed: 3132140
2022-03-02 01:28:21 -08:00
Arunpandi K
ec3bfd9dc9 qcacmn: Adding validation to check monitor rings
There is a possible race condition that target_start can be
called during load unload leading to htt_srng_setup being
called before monitor srngs are initialized. This check will
prevent the srng_setup_call from soc_start. The rings will
subsequently be initialized when monitor modle is loaded.

Change-Id: Ie697b45425e38e6d709b7466bb495a20bef4f820
CRs-Fixed: 3125255
2022-03-01 23:00:09 -08:00
Paul Zhang
07b873c1ee qcacmn: fetch profile_data from right position
Since structure wmi_wlan_profile_t includes tlv header, it has
to consider the tlv header in each iteration.

Change-Id: I2928f89a14646fceb93729f508b817c173eff1a2
CRs-Fixed: 3136679
2022-03-01 21:46:07 -08:00
Jianmin Zhu
5a0dd70fc9 qcacmn: Limit netlink log on console
WLAN registers with multicast group 1 which is used by some legacy
infrastructure, may receive some wlan irrelative events, don't need
print on console.

Change-Id: I48fca745a603fd9875e2161d48144b4283fd6493
CRs-Fixed: 3137354
2022-03-01 21:46:02 -08:00
Surya Prakash Sivaraj
6e77f9fcce qcacmn: Extract service id from wmi_ndp_indication_event_id
Extract the service id byte array coming from the FW as part
of the wmi_ndp_indication_event_id.

Change-Id: I0ade135f48a8848dee9c4b3fdddec86f1a20e990
CRs-Fixed: 3128871
2022-03-01 20:41:38 -08:00
Subrat Dash
b657bc4223 qcacmn: Bypass cds to create AST entry for WDS station
The qcacld driver does not register ol_if_ops callbacks
to handle wds AST request.

Call target if APIs directly to add, delete, and update
the AST entries for the WDS stations.

Change-Id: Ib4d5e1fdd6598e3390dbd2be0f24a72ccf01f202
CRs-Fixed: 3133839
2022-03-01 14:55:35 -08:00
Namita Nair
63b2260b64 qcacmn: Make calls to RX-TLV fns as static inline
Calls to Rx-tlv functions,in per packet path and called from arch
specific code,are made static inline instead of hal_soc->ops
function calls.This will improve speed by avoiding the function
call overhead.

Change-Id: I1fd4f0a416b71b4ed460852cb6da2f1d7434f2b4
CRs-Fixed: 3130314
2022-03-01 12:53:52 -08:00
Basamma Yakkanahalli
831a3ce7d5 qcacmn: Drop undecoded frames err mask not configured
1. Drop the received undecoded frame if error code
   abort reason not matched with configured error mask.
2. Reset phy error mask during undecoded capture mode reset.

Change-Id: I162ac1b60ceb5a4b5a87ff2d2186f2e67815f580
CRs-Fixed: 3134562
2022-03-01 07:07:38 -08:00
Basamma Yakkanahalli
70f4513196 qcacmn: Add support for undecoded frame error stats
Display phyrx aborted undecoded frame count and the aborted
reason statistics as part of pdev rx mon stats.

Change-Id: Ia86074e62af3179855734b47801715abd1899fe1
CRs-Fixed: 3123540
2022-03-01 07:07:33 -08:00
Himanshu Batra
7908fb906c qcacmn: Clear MLO cap on connect failure of assoc link
Clear MLO cap on connect failure of assoc link

Change-Id: I62edace42543d527ff6b65861d30f8762f3a6316
CRs-Fixed: 3137865
2022-03-01 05:39:43 -08:00
nobelj
f0064e8e52 qcacmn: Waikiki tx monitor packet construction
Added function to construct packet and send to stack
after parsing.

Change-Id: I4621eb24840253db261aea63079e27f744f92698
CRs-Fixed: 3115608
2022-03-01 05:39:37 -08:00
nobelj
dffdb7c215 qcacmn: Add support to send tx monitor packet to stack
Add support,
1. Deferred tx monitor processing
2. update radiotap headers and
3. skeleton flow for tx monitor to send each mpdu per user to
stack.

Change-Id: I0809a2fe06a9dc001f6da20a5c4a689244bf9a85
CRs-Fixed: 3115608
2022-03-01 05:39:31 -08:00
Jayachandran Sreekumaran
9aefacd777 qcacmn: Dynamic ratemask config support
Add dynamic ratemask config support.

CRs-Fixed: 3112486
Change-Id: If419d1672b92085eb3f27b1d6505b1facfa9c09d
2022-03-01 05:39:25 -08:00
Jayachandran Sreekumaran
d0232b9bc0 qcacmn: Vendor command to configure rate mask
Introduce a new vendor command QCA_NL80211_VENDOR_SUBCMD_RATEMASK_CONFIG.
This is used to set the rate mask config to be used in mcs rate selection
per PHY type.

Change-Id: I013a547be89dac187bc48531a674f3dde8a3f6e9
CRs-Fixed: 3137604
2022-03-01 05:39:19 -08:00
Surya Prakash Sivaraj
9ed0a7c970 qcacmn: Add vendor command attributes for NDP
Add support for the QCA_WLAN_VENDOR_ATTR_PEER_NDPE_SUPPORT
and QCA_WLAN_VENDOR_ATTR_NDP_SERVICE_ID vendor attributes
in the driver.

Change-Id: I8835f363f8327315c9ec91acfb3770cd3313f572
CRs-Fixed: 3128863
2022-03-01 05:39:14 -08:00
Chaithanya Garrepalli
6b19153bf0 qcacmn: Correct the print for mpdu_start
In hal_rx_dump_mpdu_start_tlv_9224 use right loglevel

Change-Id: I790c658d01a3fb0cbff1eb42842b45e6e35530a2
CRs-Fixed: 3137788
2022-03-01 03:45:36 -08:00
Pavankumar Nandeshwar
223693e614 qcacmn: Handle nawds case of intra-bss forwarding
Handle nawds case of intra-bss forwarding of
multicast packets on Beryllium.

Change-Id: I05ec4d937b4b97aa2c9fb325fb2b6a197968ea2a
CRs-Fixed: 3103402
2022-03-01 00:14:42 -08:00
Amit Mehta
8aa367acfa qcacmn: Print ring information in htt srng init and cfg
As part of debug enhancement Print ring information in
htt srng init and htt srng cfg

Change-Id: I59a7831b6ded1028b3a8f246656e982ae7de5b86
CRs-Fixed: 3133836
2022-02-28 17:44:15 -08:00
Harsh Kumar Bijlani
caf5400575 qcacmn: Changes to enable and disable enhanced stats for Waikiki
Changes to enable and disable enhanced stats for Waikiki

Change-Id: I6e3a747f31abda9cfcefec3156327295412088b5
CRs-Fixed: 3138098
2022-02-28 17:44:09 -08:00
Harsh Kumar Bijlani
c1b9ccd925 qcacmn: Update enhanced Tx stats from Tx HTT PPDU completion path
Update enhanced Tx stats from Tx HTT PPDU completion path in WKK.
Define and use function pointers for architecture specific
functionality.

Change-Id: I4ba443647dbd81c83e899c0f88c5d9a4cc695e14
CRs-Fixed: 3132255
2022-02-28 17:44:03 -08:00
Pavankumar Nandeshwar
e57b5cfe7b qcacmn: Remove tags from the tlvs and support NO_RX_PKT_HDR_TLV
Remove the tags from the tlvs and support NO_RX_PKT_HDR_TLV
for Beryllium

Change-Id: Ie759582b67a1ae78cddc0402916f9a39e0023009
CRs-Fixed: 3137156
2022-02-28 16:12:32 -08:00
Harsh Kumar Bijlani
bd7a797898 qcacmn: Add flag in dp_mon_soc_be to avoid double deinit
Add flag in dp_mon_soc_be to avoid double deinit

Change-Id: Ie3f5f9fe3880311b169504c8f4c9861efcf1c4d3
CRs-Fixed: 3138172
2022-02-28 16:12:27 -08:00