Граф коммитов

18691 Коммитов

Автор SHA1 Сообщение Дата
Jeff Johnson
abbb3f3b9d qcacmn: Fix target_if/spectral documentation
The kernel-doc script identified documentation issues in the
target_if/spectral folder, so fix them.

Change-Id: I0bb7d3632fd602450713d8521861d246ea5f33df
CRs-Fixed: 3417470
2023-03-07 14:49:59 -08:00
nobelj
daa0ae6a5d qcacmn: Modify tx monitor mode change log level
Modified tx monitor mode change log level.

Change-Id: I97233c4c4c86c3af887ccb86b9de4f9174e469df
CRs-Fixed: 3409912
2023-03-07 14:49:50 -08:00
nobelj
85c8196528 qcacmn: Add support for tx monitor word mask compaction
Add support for tx monitor word mask compaction.
a. define word mask compaction structure
b. generalized function for compaction structure.

Change-Id: I508b6beca7e5da28377b31c754344c07a0abd438
CRs-Fixed: 3420593
2023-03-07 14:49:41 -08:00
Jeff Johnson
ad2ba39a28 qcacmn: Fix target_if documentation
The kernel-doc script identified multiple documentation issues in the
target_if folder. Some sub-folders which had a multitude of issues
were patched individually. Now fix the remaining issues.

Change-Id: Ia46f54eaec90762e61e590344760f3c3364088de
CRs-Fixed: 3417471
2023-03-07 09:33:26 -08:00
Karthik Kantamneni
29eb537def qcacmn: DP changes to add new RHINE arch specific files
This change introduces new RHINE architecture specific DP files.
RHINE is new SOFTUMAC based architecture, unlike LI/BE targets
all the HW UMAC functionality will be replaced with software base
UMAC functionality. So current RHINE arch specific implementation
is aligned to softumac based implementation.

Change-Id: I70baf11130afc07c5c85437d2343d0976ce0ea0a
CRs-Fixed: 3382880
2023-03-07 07:51:34 -08:00
Jeff Johnson
045d6e4e78 qcacmn: Fix target_if/init_deinit documentation
The kernel-doc script identified documentation issues in the
target_if/init_deinit folder, so fix them.

Change-Id: Ie2ddb73072629b0b1a110b8073443f312fa27a16
CRs-Fixed: 3417468
2023-03-07 03:20:27 -08:00
Jeff Johnson
bc5d273b9e qcacmn: Fix target_if/regulatory documentation
The kernel-doc script identified doucmentation issues in the
target_if/regulatory folder, so fix them.

Change-Id: I4c4cb774318153f672b9fddf651fa711e100f19a
CRs-Fixed: 3417469
2023-03-07 03:20:18 -08:00
Himanshu Batra
2c0ca85f39 qcacmn: Add API to fetch ml_peer_valid field from skb cb
Add API to fetch ml_peer_valid field from skb cb

Change-Id: Ic2bdc8dd2ae03dad6f0234920c1312f234bc4339
CRs-Fixed: 3423453
2023-03-06 23:32:57 -08:00
Hariharan Basuthkar
9af22d0f7b qcacmn: Send AFC power update event during AFC power event failure
When the target indicates a non-success status in the fw_status_code
as part of the AFC power event, the control is exited from
reg_process_afc_power_event without updating the super_chan_list,
and sending the AFC power update complete event.

Therefore, send AFC power update complete event during AFC power
event failure.

Change-Id: Iab3a73955cf6df8d999122f1ef36bf249e86d3bb
CRs-Fixed: 3298839
2023-03-06 23:32:47 -08:00
Srinivas Pitla
76dd8f5ce7 qcacmn: Fix issue in num PSOC counter
This change adds missing increment for num_psoc in
primary umac selection algorithm

Change-Id: If9b3870b6c3d3e05b12af1897a4e238fc2ef687f
CRs-Fixed: 3404121
2023-03-06 21:52:06 -08:00
Sreeramya Soratkal
0186178b04 qcacmn: Update number of links for MLO
To support MLO on 4 links, update the maximum number of links that
can participate in MLO to 4.

CRs-Fixed: 3412356
Change-Id: I4e5c74e856be1b4850cc62b9700b65d3311b9b7f
2023-03-06 21:51:56 -08:00
Namita Nair
cb79729a9b qcacmn: Fix spelling of ipa_ctxt
Fix spelling of ipa_ctx to ipa_ctxt.

Change-Id: I87b00c64039078e17744f90fd865b5d034755ea4
CRs-Fixed: 3423178
2023-03-06 20:22:06 -08:00
Shashikala Prabhu
3634b11018 qcacmn: Add H2T command to trigger MLO UMAC reset
Add H2T command to trigger MLO UMAC reset for the given SOCs.

Change-Id: Ic205c7eb5c401006a03628c1e591ef5833459516
CRs-Fixed: 3416804
2023-03-06 16:00:37 -08:00
Qun Zhang
2062f18a70 qcacmn: Extend throttle level to THROTTLE_LEVEL_5
Currently legacy thermal throttle level can support to
THROTTLE_LEVEL_3 at the most. Per new thermal mitigation
requirement, it's needed to add extra implementation
for TX off processing and target shutdown. So extend
throttle level to THROTTLE_LEVEL_5.

Change-Id: I87c583d2828572605ea91a6ac318a58f20054028
CRs-Fixed: 3413666
2023-03-06 11:42:31 -08:00
Harsh Kumar Bijlani
ef49de7005 qcacmn: Consider TID from skb mark even when tid_override is enabled
Consider TID from skb mark when tid_override is enabled along
with SAWF.

Change-Id: I2d1b55017f7c1de6fa3305aa903b8a97edca501c
CRs-Fixed: 3421733
2023-03-06 11:42:22 -08:00
Divyajyothi Goparaju
2aae10f314 qcacmn: Add wmi_vdev_param_set_sap_ps_with_twt
As part of 'SAP PS with TWT enabled' new
requirement add new vdev set param
wmi_vdev_param_set_sap_ps_with_twt to map host vdev
param with firmware interface new vdev set param
WMI_VDEV_PARAM_SET_SAP_PS_WITH_TWT.

Change-Id: Ia8b45ddb35657e0293cda5821b8ddc92bf68bccc
CRs-Fixed: 3421621
2023-03-06 11:42:13 -08:00
Divyajyothi Goparaju
54beaf787e qcacmn: Replace callers of reg_set_channel_params_for_freq
Replace all callers of reg_set_channel_params_for_freq
with new api reg_set_chan_params_for_pwrmode

Change-Id: Ifefb8e0a2e9dc2dde5360f90b6c129573dfaddc1
CRs-Fixed: 3144601
2023-03-06 00:19:30 -08:00
Shashikala Prabhu
4ed5695ef3 qcacmn: Add NULL check for MLO dev context
MLO dev context is accessed without NULL check.
Add NULL check before accessing the MLO dev context.

Change-Id: I51d672924dbbf70cbf4b7e4951a3a45d4fd551ec
CRs-Fixed: 3409901
2023-03-05 21:52:13 -08:00
Krunalsinh Padhar
6d5fea01f7 qcacmn: Selective peer discon during non-DFS to DFS
Disconnect only non ML peers in CSA from non-DFS channel to DFS channel,
while keeping all MLO peers connected.

Change-Id: I7e8347cf4692b16b84ffbce4b102dd2f23bb70f0
CRs-Fixed: 3394219
2023-03-05 11:23:00 -08:00
Priyadarshnee Srinivasan
62c9261e5f qcacmn: Coalesce the frequency ranges of AFC payload
To mark a 20 MHz standard power channel (chan X) as AFC done, we check
if X's range is a subset of a AFC frequency object payload (say Y).
If X is not a subset of Y, chan X is marked as "AFC not done" and is
disabled in the regulatory's AFC channel list.

However, it is possible that channel X's range is split across various
frequency objects of the AFC payload. The current algorithm does not
coalesce the adjacent frequency object payload so that X becomes a
subset. This change aims to coalesce the AFC payload as and when needed.

If the frequency ranges of the AFC payload are sliced and the
PSD power of a 20 MHz channel is split across multiple frequency ranges
in the AFC payload, coalesce the frequency ranges to form a single
range that can fit channel X so that the PSD power can be fetched.
The coalesced PSD power will be minimum PSD power of the frequency
ranges where coalescing is done.
If coalescing is not required, pick the PSD power from AFC payload
directly.

CRs-Fixed: 3387610
Change-Id: Ib358028a6842cb6644eaae2964738d391a5dd763
2023-03-05 04:52:27 -08:00
Jeff Johnson
6293eca555 qcacmn: Fix misspelling "ponirt"
Fix misspelling in wmi/src/wmi_unified_tlv.c:
"ponirt" => "pointer"

Change-Id: Ic9f552a98978a5af35b521f551491d874f03a401
CRs-Fixed: 3417374
2023-03-04 19:11:35 -08:00
Karthik Kantamneni
82a1c01b88 qcacmn: Refactor unused RX code for SOFTUMAC platforms
In RX and defrag path some of the code in common files will
not be used by new SOFTUMAC based platform. So placing all
the unused code under SOFTUMAC macro and for better readability
clubbing all the code at one place in source file.

Change-Id: I6ff3997a42872a25fb020898f7fb1879746fc8e6
CRs-Fixed: 3382899
2023-03-04 13:22:29 -08:00
Balaganapathy Palanisamy
39a0cd23ed qcacmn: Add a flag to identify MLO bridge peer
Add flag to identify MLO bridge peer.

Change-Id: I4d42312165df7904cafad83a5df0e8d2f7751028
CRs-Fixed: 3412299
2023-03-04 11:52:57 -08:00
Balaganapathy Palanisamy
98a8a833ab qcacmn: Add peer type for MLO Bridge
Add peer type for MLO bridge peer. This is a special peer
created on 4-link MLO AP to allow association of some 2-link
MLO STAs.

Change-Id: Id2073ea82582ae67cae03b813d8f7bf44fde9aff
CRs-Fixed: 3412299
2023-03-04 11:52:49 -08:00
Karthik Kantamneni
609cff4e50 qcacmn: Make static API's as global to be used in other files
Make static API's as global so that they can be used in external
architecture specific related files.

Change-Id: Ida906d5dba18cc7c87a3965addf882eecfe55e0e
CRs-Fixed: 3382927
2023-03-04 08:52:13 -08:00
Jeff Johnson
9c85a8e52b qcacmn: Rename wlan_crypto_reset_vdev_prarams()
The wlan_crypto_reset_vdev_params() stub function, used when the
CRYPTO_SET_KEY_CONVERGED feature is not enabled, is misnamed, so
correct the naming.

Change-Id: Iff7db65f61dbec15529832c9db4430f908442645
CRs-Fixed: 3421947
2023-03-04 05:51:07 -08:00
Jianmin Zhu
a2503411a6 qcacmn: Support mld self roam
Support mld self roam between DBS(2 GHz+5/6 GHz) and HBS(5 GHz+6 GHz).

Change-Id: Ifd580da304548eaaee335901a507804b006579c0
CRs-Fixed: 3416555
2023-03-04 03:54:36 -08:00
Sheenam Monga
77e1874af0 qcacmn: Add CHAN_5925_6425_6 reg rule
Currently, CHAN_5925_6425_6 is defined in
regulatory_rule_ext but enum value corrosponding
to CHAN_5925_6425_6 in reg_rules_6g is missing
which may cause compilation issues when COMPILE_REGDB_6G
is enabled.

To fix compilation issue declare CHAN_5925_6425_6
in reg_rules_6g.

Change-Id: Ifcf751ab543b13d4eb99cc64280ef116ac931b09
CRs-Fixed: 3418240
2023-03-03 19:53:35 -08:00
Abishek Ganapathy
ee1493dc9c qcacmn: Add HMWDS rem-addr support in Beryllium
Add HMWDS rem-addr support to delete AST WDS mac entries in
Beryllium chipsets.

Change-Id: I5623bac02b326d1d668ad5e1fdcfc3a9f8cbbb9c
CRs-Fixed: 3397961
2023-03-03 13:40:46 -08:00
Santosh Anbu
56559ee387 qcacmn: Add MLO peer AST on primary soc
In scenario where assoc peer soc id is different from
primary soc id, reset the soc to point to primary psoc.
Since unmap is received on primary soc, the map should
also add ast on primary soc.

Change-Id: I85c6ba72a217eb5350ccc072d56b36b111af4d58
CRs-Fixed: 3410916
2023-03-03 05:27:20 -08:00
Priyadarshnee Srinivasan
f6e871c2b4 qcacmn: Fix unknown symbol error
dfs_disable_radar_and_flush_pulses() is defined under
HOST_DFS_SPOOF_TEST compiler macro and this macro is disabled for
a few config profiles. Hence when dfs_disable_radar_and_flush_pulses()
is invoked from dfs_process_radar_ind_on_home_chan() API, it causes
unknown symbol error.

Define dfs_disable_radar_and_flush_pulses() API outside
HOST_DFS_SPOOF_TEST macro as it is independent of spoof test feature.

CRs-Fixed: 3411429
Change-Id: I939c0154bc79c63b878c23447fc370a924c52049
2023-03-03 05:27:10 -08:00
Venkateswara Naralasetty
a8c2c9d5e7 qcacmn: add RRI on DDR support for WCN6450
Add required changes for RRI on DDR support for wcn6450 as
it support SRRI/DRRI updates over DDR.

Change-Id: I734e177660069e1e21996f1c4489567b3527cabc
CRs-Fixed: 3383301
2023-03-03 05:27:01 -08:00
Venkateswara Naralasetty
fffd884d26 qcacmn: add shadow register config support for wcn6450
Add support to send shadow register configurations to target
for wcn6450. This support is enabled with the feature macros
CONFIG_SHADOW_V3 and CONFIG_ADRASTEA_SHADOW_REGISTERS.

Change-Id: Ib67993ec838195a5fe174d42cf54ddc0075c3bc3
CRs-Fixed: 3381139
2023-03-03 05:26:51 -08:00
Venkateswara Naralasetty
4728143e0e qcacmn: add MSI and timer/batch intr threshold config support
WCN6450 CE provides registers for configuring MSI and timer/batch
interrupt thresholds like Lithium SRNGs.

Configure MSI and timer/batch interrupt threshold registers
during CE ring setup.

Change-Id: Ifa4c5a4d14caa70ae644123409cccc6f56476d85
CRs-Fixed: 3381135
2023-03-03 05:26:41 -08:00
Surya Prakash Sivaraj
176d7758b2 qcacmn: Add macro to determine WPA3 AKM
Add a macro to determine if a particular AKM is WPA3-based
AKM.

Change-Id: I9b3f546e2e0f69281305ca9052dc109fb6812e21
CRs-Fixed: 3418837
2023-03-02 23:54:29 -08:00
Jeff Johnson
b46eae96f7 qcacmn: Fix IPA documentation
The kernel-doc script identified some documentation issues in the
top-level ipa folder, so fix them.

Change-Id: Ie128c65a495bab06c5207fff768a111de6bab958
CRs-Fixed: 3420684
2023-03-02 23:54:20 -08:00
Venkateswara Naralasetty
1067c35404 qcacmn: add ce src/dst desc changes for wcn6450
WCN6450 uses adrastea copy engines with the following changes
for data and control messages between host and target,
 * 40-bit addressing support
 * SRC/DST desc format changes

Add ce desc changes required for WCN6450 data path.

Change-Id: I71f60f8f23aa7eebb9fa3848d33a02d579e9ef7a
CRs-Fixed: 3381129
2023-03-02 23:54:09 -08:00
Narayan Subramhanyan
4c942e661a qcacmn: Add manual ulofdma trigger bit in rx ppdu user stats
Extract manual ulofdma trigger bit as part of rx ppdu stats per user
update process

Change-Id: I2a697f91e572f88a36f96085d15c90c679deaf0c
CRs-Fixed: 3418677
2023-03-02 23:53:59 -08:00
nobelj
20db7b641f qcacmn: Add initial support for word mask compaction
Add initial support for word mask compaction.

Change-Id: Ife05e355395fbc6c6804c34f62954a2b04a2cd03
CRs-Fixed: 3398292
2023-03-02 20:41:06 -08:00
Pavankumar Nandeshwar
3377c445f8 qcacmn: Do not process Umac reset in DS mode
Do not process Umac reset in DS mode as it is
currently not supported.

Change-Id: Ieaa850ee65d17605cb2b2d3e6d3eb222531c93ae
CRs-Fixed: 3418738
2023-03-02 20:40:56 -08:00
Debasis Das
747b42cc98 qcacmn: Add latency and throughput parameters for SAWF UL
Enhance the SAWF UL related API's and structure definitions
to configure min_tput and max_latency parameters.

CRs-Fixed: 3398855
Change-Id: Iffe82b765e90386a21aa47016db61f953ba9a5bc
2023-03-02 19:03:40 -08:00
Jeff Johnson
0eda2812d9 qcacmn: Add wlan_cfg80211_nla_put_u64_64bit()
OSIF currently defines function wlan_cfg80211_nla_put_u64() which
provides an interface to the Linux Kernel's nla_put_u64()
functionality. This wrapper handles the fact that the underlying API
has a different name and signature depending upon kernel version.
However, this function has a limitation, namely that if it has to pad
the skb, it will use a netlink pad attribute that may not be defined
in the same enum as the u64 attribute. This can lead to attribute
parsing issues by the recipient.

To avoid this problem, introduce wlan_cfg80211_nla_put_u64_64bit(),
which allows the caller to provide the pad attribute id. This will
ensure that the u64 attribute and the pad attribute are from the same
enum, and hence should prevent nla_parse() issues.

Change-Id: I9e4183fa088248abfdda435b9d5e159400521969
CRs-Fixed: 3414639
2023-03-02 16:28:52 -08:00
Edayilliam Jayadev
7f60898cfc qcacmn: Fill "blanking status" field of SAMP message
Extract the blanking status from Spectral reports and upload
it to user space via SAMP message.

CRs-Fixed: 3413925
Change-Id: Ib033b88190be6bca3dff903cf279a9883821fb10
2023-03-02 14:50:16 -08:00
Narayan Subramhanyan
52ee3a44b1 qcacmn: Add support for manual ulofdma trigger
1. Enable sending of SU/MU manual ulofdma trigger config to target
2. Enable processing of manual ulofdma trigger feedback event from target

Change-Id: Iba99137f87230222ad5896cd25df49ce8d2cf0de
CRs-Fixed: 3412905
2023-03-02 04:18:02 -08:00
Shivam Kumar
37066e5d01 qcacmn: Print last wmi command tx completion time
Seeing kernel panic when max limit is reached for
pending WMI cmds, self-recovery is triggered that
sends a WMI cmd to crash the FW. This will not go
through and call recovery again

Change-Id: I55d025ac4fbf8b18ac441a135d10d558b2ec4d1e
CRs-Fixed: 3397524
2023-03-01 13:12:48 -08:00
Qun Zhang
021943de3d qcacmn: Check wmi_service_thermal_mgmt for legacy wlan temperature
For legacy wlan chip, it uses wmi_service_thermal_mgmt to
announce its temperature capability.
Add wmi_service_thermal_mgmt checking to support legacy
wlan chip temperature as well.

Change-Id: I529e08780ba0c19a2953a36d821946958726ab7d
CRs-Fixed: 3413651
2023-03-01 10:29:57 -08:00
Vinod Kumar Myadam
9934d3513c qcacmn: Fix out-of-bounds of src_freq
When handling WMI_ROAM_SCAN_STATS_EVENTID,
the number of channels scanned for each roam trigger is fetched from
wmi_roam_scan_info TLV (wmi_roam_scan_info->roam_scan_channel_count),
The total number of channels for all the roam triggers is fetched from
param_buf->num_roam_scan_chan_info.

chan_idx is the index used to fetch the current channel info TLV to be
read. So if wmi_roam_scan_info->roam_scan_channel_count provided by
firmware exceeds the total param_buf->num_roam_scan_chan_info starting
from given chan_idx then OOB access of event buffer can happen.

To avoid this, validate the sum of the current chan_idx and
src_data->roam_scan_channel_count against
evt_buf->num_roam_scan_chan_info.

Change-Id: Ied94464d1f12690cf8832962b94595c2e00c33f8
CRs-Fixed: 3357714
2023-03-01 08:53:40 -08:00
Jeevan Kukkalli
7908154e77 qcacmn: Fix non-raw frag length issue
Subtract L2 header pad byte from frag length
while adding frag to skb

Change-Id: I6b3f710e8a7451de427640fdb92ac45ed97d8097
CRs-Fixed: 3414008
2023-03-01 05:45:12 -08:00
Krunalsinh Padhar
66e6f0c19c qcacmn: primary UMAC selection for 3 link MLO association
Add capabilities to select primary TQM in case of
3-link association in a four chip HW.
The idea is to find the link that is adjacent to both the
other links and use it as the primary UMAC

CRs-Fixed: 3417387
Change-Id: Ibf2f6040cbc6f355980cdfcb5491109998ad8919
2023-03-01 05:45:03 -08:00
Uraj Sasan
f48d910d04 qcacmn: APIs to set and get chip adjacencies in 4 link MLO
For 4 LINK MLO new API's for
1. Update chip info with the chip id and adjacent chip id's.
2. Given two psoc ID's return if two psoc are adjacent.

Sample topology

        chip0
      /      \
    chip1    chip2
      \      /
        chip3

Above, chip0 has chip1 and chip2 as adjacent chips.

Change-Id: I7eafde7779e957bc8161ef37baa6077278800e81
CRs-Fixed: 3381066
2023-03-01 05:44:54 -08:00