Commit Graph

587 Commits

Author SHA1 Message Date
Bing Sun
09b25d7556 qcacld-3.0: Define new_ch_width in csa_offload_params as phy_ch_width
Currently sme_switch_channel set new_ch_width as phy_ch_width, while
wma_csa_offload_handler set new_ch_width as raw bit in wide bandwidth
channel switch IE.
Clean up the code. Define new_ch_width in csa_offload_params as
phy_ch_width.

Change-Id: Iadecc7693bf4ffd9f9562405ef18ea9d25d45c9e
CRs-Fixed: 3324762
2022-11-08 16:49:10 -08:00
Rachit Kankane
f020a7bf78 qcacld-3.0: Remove PDEV based PD threshold command
Remove WMI_PDEV_PARAM_SET_CMD_OBSS_PD_THRESHOLD which is sent to
initialize the hardware registers. The initialization of hardware
registers is done as part of WMI_VDEV_PARAM_SET_CMD_OBSS_PD_THRESHOLD

Change-Id: I272fbd6723836efb9864cb78bdaf3e0eacf45554
CRs-Fixed: 3329913
2022-11-08 03:24:30 -08:00
Sheenam Monga
d7ce2c63fe qcacld-3.0: Add sr_enable_mode ini
Add sr_enable_mode ini to check SR(Spatial Reuse)
can be enabled for non-STA mode or not. If SR
can't be enabled for non-STA mode and concurrency
is not allowed then don't allow any SR operation.

Change-Id: I876882c48c54f216bc1d0efa4dccce63f2a2e63c
CRs-Fixed: 3311374
2022-11-04 16:27:05 -07:00
Vinod Kumar Myadam
eb9de6b459 qcacld-3.0: Update INI parameter default value
Update CFG_DISCONNECT_ROAM_TRIGGER_MIN_RSSI INI min, max
and default values under macro

Change-Id: I9973a032d16c5d8aedb4ad77833b9124de719e86
CRs-Fixed: 3314826
2022-11-02 01:47:30 -07:00
Liangwei Dong
be5cc24258 qcacld-3.0: Fix unsafe check failure for SAP
With MACRO FEATURE_WLAN_CH_AVOID_EXT enabled,
"restriction_mask" can only be checked if
coex_unsafe_chan_nb_user_prefer = 1. If the INI
coex_unsafe_chan_nb_user_prefer = 0, do not need to check
"restriction_mask". It will remain uninitialized 0.

Change-Id: If7bd1223ee3779b72fadb40e622f682db03f4ea5
CRs-Fixed: 3287634
2022-10-25 10:11:13 +08:00
Liangwei Dong
77d14af550 qcacld-3.0: Handle disable EHT flag in connect request
If user sets flag ASSOC_REQ_DISABLE_EHT in connect request, driver
will send action oui "ffffff 00 01" to host mlme and also firmware
for action id ACTION_OUI_11BE_OUI_ALLOW, so that all the AP will
be not matched with this OUI and 802.11be mode will not be allowed,
possibly downgrade to 11ax will happen.
If user doesn't set ASSOC_REQ_DISABLE_EHT, driver/firmware will
recover to default oui setting.

Change-Id: I9eab732f1bd29018d44b215c1d6c9bfac9dafe95
CRs-Fixed: 3314489
2022-10-21 15:23:38 -07:00
Jyoti Kumari
f0ddb3ec45 qcacld-3.0: Convert ap policy config vendor cmd to host enum
Userspace provide below vendor attribute for low latency sap
concurrency
a. QCA_WLAN_VENDOR_ATTR_CONCURRENT_POLICY_AP_CONFIG

This userspace uses the below value defined in enum
qca_wlan_concurrent_ap_policy_config to specify concurrency
policy
a. QCA_WLAN_CONCURRENT_AP_POLICY_UNSPECIFIED = 0,
b. QCA_WLAN_CONCURRENT_AP_POLICY_GAMING_AUDIO = 1,
c. QCA_WLAN_CONCURRENT_AP_POLICY_LOSSLESS_AUDIO_STREAMING = 2,

Convert this above enum value in host to use in concurrency
scenario.

Change-Id: Ibab06f528fd99d8c421376bd02e4c748e9556b70
CRs-Fixed: 3302418
2022-10-19 22:30:04 -07:00
abhinav kumar
59426b95be qcacld-3.0: Control Pre Punc and UL MU-MIMO feature via INI
Control Preamble Puncturing feature via INI "he_rx_pream_punc"
and UL MU-MIMO feature via INI "enable_ul_mimo".

Change-Id: Ib4d6fd10c9e4f46c1baa5070f94d8dddd4978757
CRs-Fixed: 3305742
2022-10-17 18:16:32 -07:00
Liangwei Dong
74aa28da73 qcacld-3.0: Add 802.11be allowed AP OUI INI support
Add INI g11be_oui_allow_list to config 802.11be AP oui which
is allowed to get connected in 802.11be mode.
If the INI is empty, all the ap are allowed to get connected
in 802.11be mode. If INI is set to "ffffff 00 01", then STA
is not allowed to connect to any AP in 802.11be mode.

Change-Id: I98e545ba909c1746237a20c365f8297f16fe666f
CRs-Fixed: 3304021
2022-10-17 12:57:45 -07:00
Rachit Kankane
6cdc4ce277 qcacld-3.0: Send PDEV Param command for SR
Send WMI_PDEV_PARAM_SET_CMD_OBSS_PD_THRESHOLD during PDEV
init with disabled PD-Threshold value to initialize SR related
registers in HW.

Change-Id: I49e73c76974e098b6dfbf647a898b53abf8ea2ba
CRs-Fixed: 3306179
2022-10-17 06:47:31 -07:00
Ashish Kumar Dhanotiya
013edc14e3 qcacld-3.0: Update vendor1 requirement1 version for feature set
With change update vendor1 requirement1 version to the latest
version 3.3.

Change-Id: I5079c47c65487a9dc97e3f0fe3b38f696a3753bc
CRs-Fixed: 3309523
2022-10-14 13:42:48 -07:00
Jeff Johnson
767fcd7bf2 qcacld-3.0: components: mlme: Fix misspellings
Fix misspellings in components/mlme/...

Change-Id: I98641d9bc2d61b8c5196e5c2803e95e2b2c33ebf
CRs-Fixed: 3303641
2022-10-08 12:15:52 -07:00
Aravind Kishore Sukla
3510a69ea6 qcacld-3.0: Adjust beacon miss timeout in awake and sleep modes
In beacon loss, roaming condition is triggered when client doesn't
receives beacon packets from connected AP for 3 to 5 Secs.
There is no significance of 6Secs and 10Secs timeout in wakeup
and sleep modes respectively, as STA will disconnect after
partial+full roam scan.

Trigger beacon loss roaming that is half of link loss timeout
in wakeup and sleep modes.

Change-Id: I12ef4201a0457ca716ad857caad6c1be334e17f0
CRs-Fixed: 3306658
2022-10-07 21:01:42 -07:00
Divyajyothi Goparaju
3498515802 qcacld-3.0: Replace wlan_reg_get_channel_state_for_freq
Replace all occurrences of
wlan_reg_get_channel_state_for_freq with
wlan_reg_get_channel_state_for_pwrmode and use extra
parameter as REG_CURRENT_PWR_MODE.

Change-Id: I7f7e4e700091918eeebc87ccbbc85ececdd9bf52
CRs-Fixed: 3145011
2022-10-06 13:01:14 -07:00
David Oladunjoye
5f21308490 qcacld-3.0: Update min/max bounds for RoamRSSI_Trigger
We need to update RoamRSSI_Trigger min/max to support new INI values.
Fix is to revert min/max and default back to original values.

Change-Id: I75f0b76ae920c885a1150d95ea011e5612ef62fd
CRs-Fixed: 3304654
2022-10-05 16:07:06 -07:00
Pragaspathi Thilagaraj
134dc39a2c qcacld-3.0: Change the default value of "twt_responder" ini
Disable "twt_responder" ini by default. TWT responder
configuration comes from hostapd.

Change-Id: Id094a72f70e71bac23295221dc6d12c2e7685803
CRs-Fixed: 3298565
2022-09-29 07:41:30 -07:00
Pragaspathi Thilagaraj
b70d93c705 qcacld-3.0: Add new ini to enable/disable R-STA 11az support
Add new ini "enable_responder_11az_support" to enable/disable
R-STA 11az support.

Change-Id: If99f19eb88a6db31364f010db0f257ece45e6527
CRs-Fixed: 3295310
2022-09-29 04:22:13 -07:00
Jayachandran Sreekumaran
97fefb1f62 qcacld-3.0: Disable Tx/Rx STBC in 1x1 mode
Tx/Rx STBC configs are getting updated with FW config.
Add check to verify whether the host config supports 2x2.
Disable Tx/Rx STBC in 1x1 mode.

Change-Id: I40ae78eec383d607615d035ca60a1561bbb49031
CRs-Fixed: 3270266
2022-09-29 04:22:07 -07:00
Aditya Kodukula
1472d9ad6d qcacld-3.0: Disable 11be when not supported by target
Disable 11be when not supported by target

Change-Id: Iecf9ab3eab5a9e69b01fb03b30b028b57019b10d
CRs-Fixed: 3291961
2022-09-22 06:09:24 -07:00
Pragaspathi Thilagaraj
95cd4fde59 qcacld-3.0: Add new ini for R-STA secure LTF support
Add new ini "enable_responder_secure_ltf_support" for R-STA
secure LTF support. Enable this ini for R-STA to advertise
secure LTF support in extended capabilities & RSNXE.

Change-Id: I474b06c52c47b5a54dc827031bf9ff7c0d2f7d05
CRs-Fixed: 3283083
2022-09-14 09:36:01 -07:00
abhinav kumar
b91c689b0a qcacld-3.0: Send roaming feature indication to FW
To enable the below 2 features in FW:
1. IDLE roam scan
2. Roam triggered due to high channel utilization
   in the currently connected channel

Currently, if "roam_triggers" bitmap is set for above
features, Host indicates FW that "IDLE roam scan"
and "roam trigger due to BSS load" features are
enabled irrespective of corresponding INI
'enable_idle_roam' and 'enable_bss_load_roam_trigger'
respectively.

Consider the value of corresponding INI also while
sending enable indication to FW.

Change-Id: I0d59e0a32df4aa95850f12a99bae439fea40acf5
CRs-Fixed: 3281952
2022-09-10 09:19:18 -07:00
abhinav kumar
298dabfecf qcacld-3.0: Update bound range for RoamRSSI_Trigger
Correct Min, Max and Default value for INI
RoamRSSI_Trigger to avoid Out of range error while
cfg ini item parsing in host.

RoamRSSI_Trigger_min 50
RoamRSSI_Trigger_max 100
RoamRSSI_Trigger_default 75

Change-Id: Ifd4f049987c797ca43a865cefbc2d2517560f105
CRs-Fixed: 3283130
2022-09-09 22:25:59 -07:00
Aravind Kishore Sukla
5d328ac791 qcacld-3.0: Disable legacy rates in 6 GHz frequency band
Disable 11a support on 6 GHz band and change default rate of 6 GHz
frequency band by using WMI_PDEV_PARAM_DEFAULT_6GHZ_RATE.

Change-Id: I2db2dd54c03cf71e1b697796fa3dc58d2646a8b5
CRs-Fixed: 3251997
2022-09-08 02:56:40 -07:00
Jeff Johnson
afc7383127 qcacld-3.0: Rename wlan_mlme_set_sta_mlo_simulataneous_links()
Rename wlan_mlme_set_sta_mlo_simulataneous_links() to correct
misspelling: simulataneous ==> simultaneous.

Change-Id: I5f483446a63221be7c689fb35bd5b5c0548f0473
CRs-Fixed: 3280095
2022-08-31 19:22:20 -07:00
Nagalakshmi
6340c5c044 qcacld-3.0: Give valid range of value for aliasing INI
There are two different name with different range of value for
aliasing INI's. So, it should pick the valid range of value wrt INI
name.

Change-Id: I36b578749567998980b300e5a8daf1acb201cddd
CRs-Fixed: 3269376
2022-08-31 16:04:00 -07:00
Nagalakshmi
87e7625ee9 qcacld-3.0: Give valid range of value for aliasing INI
There are two different name with different range of value for
aliasing INI's. So, it should pick the valid range of value wrt INI
name.

Change-Id: I89a275500f1e1ad42f2cae534e9f67e1b9e3a4eb
CRs-Fixed: 3268673
2022-08-31 12:50:42 -07:00
Jeff Johnson
c5b6befd72 qcacld-3.0: Fix misspellings of "capability" and "capabilities"
Fix misspellings of "capability" and "capabilities":
capabiities ==> capabilities
capabilites ==> capabilities
capabilties ==> capabilities
capabilty ==> capability
capablities ==> capabilities
capablity ==> capability

Change-Id: Ie4f14088fb86b63e3ee985c004f82d73d2c73963
CRs-Fixed: 3274606
2022-08-29 19:09:04 -07:00
Kiran Kumar Lokere
c38d5d534c qcacld-3.0: Config support for assoc link band and no.of links
Config support for assoc link band and max number of links.

Change-Id: I6b9999216691a191e3f02d3756166203055c6c96
CRs-Fixed: 3271628
2022-08-27 22:57:16 -07:00
Srinivas Dasari
8f06292a0b qcacld-3.0: Avoid CH_WIDTH_320MHZ dependency on 11BE define
CH_WIDTH_320MHZ definition is in 11BE define currently and it's
causing duplicate code in 11BE supported/unsupported cases.
Definition need not be in 11BE define as it doesn't cause any
impact on memory.

Change-Id: I9fa391474f513755000368cc2e41e004446353d0
CRs-Fixed: 3246578
2022-08-26 09:10:01 -07:00
Vinod Kumar Myadam
11b175dad0 qcacld-3.0: Fix for scan passive dwell time
Prensently for initial scan and roam passive scan dwell time,
the same ini CFG_PASSIVE_MAX_CHANNEL_TIME is used. This will
cause initial scan to have the roam passive scan value.

Decouple passive scan and roam passive scan ini parameter by
adding new ini param for roaming

Change-Id: I4b37c8faa26c971f173e8c8179e505ea4c69c27e
CRs-Fixed: 3268789
2022-08-23 15:16:53 -07:00
Kiran Kumar Lokere
b4a3d09a5e qcacld-3.0: Add support for testbed default EHT caps
Add support to set the EHT capabilities for testbed
default settings.

Change-Id: Ica67836e464d42adc43971456801103d088a0891
CRs-Fixed: 3256051
2022-08-23 05:39:54 -07:00
Abhinav Kumar
86b60fe23a qcacld-3.0: Update Min and Max range for neighbor lookup INI
Update the Min and Max value for gNeighborLookupThreshold
/RoamRSSI_Trigger INI as per customer requirement.

Change-Id: I5af4552cd805b57861121a32704f4fe1e98a7002
CRs-Fixed: 3245135
2022-08-18 18:05:25 -07:00
Jyoti Kumari
d0c89ad942 qcacld-3.0: Give valid range of value for aliasing INI
There are two different name with different range of value for
aliasing INI's. So, it should pick the valid range of value wrt INI
name.

Change-Id: Ia0ea4ebc6b1f96b38243c4e0693e47be99868953
CRs-Fixed: 3258760
2022-08-17 15:35:06 -07:00
Gururaj Pandurangi
3814ee407b qcacld-3.0: Populate ML assoc req with EMLSR padding delay
Add support to populate MLO assoc request with EMLSR
subfields like EMLSR padding delay, transition delay that
are extracted from FW during ext service ready event.

Change-Id: Id5def8da6bef92ff6bf2101a7b3e0d8fb0cf3050
CRs-Fixed: 3262939
2022-08-15 00:15:11 -07:00
Ashish Kumar Dhanotiya
2490a83a25 qcacld-3.0: Add support to get feature set info
Based on the new requirement, add support to get requested
feature set info from different feature components.

Change-Id: I1bfc097c8ae8c4ab678d4dc07b7932cf3272d851
CRs-Fixed: 3262868
2022-08-12 18:55:15 -07:00
Jianmin Zhu
5a9556bf4b qcacld-3.0: Update linkspeed state to F/W for roaming protocol part
To avoid unmeaningful roaming, when low RSSI trigger,
only roam when rx linkspeed is also bad.
Steps:
1. F/W indicates feature supported by:
	wmi_service_linkspeed_roam_trigger_support
2. App sets vdev rx link speed threshold by vendor cmd.
3. Bus_bw_work gets rx link speed from data path periodically.
4. If found rx link speed change from good to poor, or poor to good, send
	to F/W.
5. F/W low rssi roaming is triggered only when both RSSI and link speed are
	poor.

Change-Id: I56829e42b26e407dd8e989a870aee2b3ea406232
CRs-Fixed: 3261996
2022-08-12 08:24:53 -07:00
Wu Gao
fa00b99b19 qcacld-3.0: Align command "setMaxAssoc" to INI "cfg_assoc_sta_limit"
Align command "setMaxAssoc" to INI "cfg_assoc_sta_limit" since they are
for same configure of host side.

Change-Id: Iccf60f261beef7fb7cc776ee691992e06bc7fa76
CRs-Fixed: 3241183
2022-08-01 21:42:48 -07:00
Srinivas Dasari
780d285267 qcacld-3.0: Enable the ini param enable_pending_list_req by default
Firmware aborts the ongoing scan upon receiving new scan
channel list (through WMI_SCAN_CHAN_LIST_CMDID). Channel list
might get updated from userspace through commands like
country code change, power level change(SET_FCC_CHANNEL),...
It affects the features that are dependent on that scan,
e.g. ongoing connection, p2p find, etc.. Few frames might
be stuck in firmware as the scan is canceled.
It's recommended to defer the scan channel list update till
the current scan is done. This is already supported and
guarded through the ini param enable_pending_list_req
but disabled by default.

Enable the ini param to make sure above scenarios are not
affected due to channel list update.

Change-Id: I4176bb6a03657cf32f0c099b72254d61207ea6ca
CRs-Fixed: 3250137
2022-07-24 02:52:30 -07:00
Jianmin Zhu
897377cab3 qcacld-3.0: Add assoc link bit in mlo_support_link_band
Add assoc link bit in mlo_support_link_band to indicate supported band of
assoc link.
bit4: 2 GHz
bit5: 5 GHz
bit6: 6 GHz

Change-Id: I8fa156f43656ba91b8622ce12034ddad0bcf28a2
CRs-Fixed: 3250252
2022-07-23 19:14:34 -07:00
Nirav Shah
05edbb507f qcacld-3.0: Correct description of ratemask_set ini
Correct description of ratemask_set ini for VHT mode
to avoid wrong configuration.

Change-Id: I91b887d8268f8faa0d0c32f90da032d00eaa14f2
CRs-Fixed: 3198950
2022-07-21 11:01:54 -07:00
Srinivas Dasari
db79080a21 qcacld-3.0: Add support to update ch_width of peer to DP
When the STA connects to a peer, max supported ch_width is
calculated and configured to firmware. This is calculated from
self and peer capability in case of STA/SAP. Cache this in
peer object. Currently, data path module isn't aware of the final
ch_width configured.
Fetch the phymode and covert it to the DP expected ch_width
format. Update the ch_width to DP.
phymode of NDI peers is not maintained in host. So, get the NDI
self phymode and update to DP.

Change-Id: I25993053ae1f129c8fc9a352a05c788451060b2d
CRs-Fixed: 3227453
2022-06-28 15:37:19 -07:00
abhinav kumar
b2c27b3103 qcacld-3.0: Handle vendor control command and event
WMI_ROAM_GET_VENDOR_CONTROL_PARAM_CMDID: Add support
for a new roam command to get vendor control parameters
from FW. Host needs to send proper param ID in command
(from enum WMI_ROAM_GET_VENDOR_CONTROL_PARAM_ID)
to get corresponding INI value from FW.

WMI_ROAM_GET_VENDOR_CONTROL_PARAM_EVENTID:
Add support for a new roam event to get param value
from FW. FW sends this event upon receiving
WMI_ROAM_GET_VENDOR_CONTROL_PARAM_CMDID command.

Change-Id: I03679bcf359a0f425aab7b9ea1c3cb6d84fbb0ca
CRs-Fixed: 3225160
2022-06-25 01:08:39 -07:00
David Oladunjoye
bf4bd0e116 qcacld-3.0: mlme: Replace fallthrough comment with attribute
-Wimplicit-fallthrough is being enabled by default. Some compilers
such as clang require the attribute instead of just a fallthrough comment.

Change-Id: I498703190e452eb4d263ee44ff1745622577eda1
CRs-Fixed: 3217410
2022-06-24 09:26:06 -07:00
abhinav kumar
7e9e394af6 qcacld-3.0: Add a new INI RoamCU_6GRSSIRange
Add support to parse a new INI named
"bss_load_trigger_6g_rssi_threshold/RoamCU_6GRSSIRange"
and send its value to FW via WMI_ROAM_BSS_LOAD_CONFIG_CMDID.

Min, Max and default value of this INI:
Min: -120
Max: 0
Default: -70

Change-Id: I9aa99d887553de4022fc0a31dc0644601cd340d6
CRs-Fixed: 3225548
2022-06-24 07:45:49 -07:00
Aditya Kodukula
cdd4422a90 qcacld-3.0: Change default value of gSoftApMaxPeers
In the current driver implementation, the default ini value of
gSoftApMaxPeers is set to 32, but for mobile devices, FW can
only support 10 SAP peers at max. Hence, change the default
value of gSoftApMaxPeers to 10.

Change-Id: I8c5a2a8422f02bb464a11d823f8528ebb88bb34c
CRs-Fixed: 3227078
2022-06-24 03:50:35 -07:00
Deeksha Gupta
1d58140b54 qcacld-3.0: Avoid tacking CM lock after holding sme global lock
When STA receives a connect req (C1) and it requires hw mode
change. Now the hw mode change resp will take the SME global
lock and call connection manager API, which will try to
acquire CM lock.

But if before that one more connect req (C2) is received in
another thread which has acquired CM lock before C1 can
acquire it, and this connect req C2 will also flush the C1
from CM queue. Now if C2 also require hw mode change, which
also require to acquire SME global lock.

So both connect will wait for each other to complete, leading
to deadlock.

To fix this, from hw mode change response, break the context
(by posting to scheduler thread) so that sme global lock is
released and C2 is processed.

As C1 is already flushed by C2, on scheduler thread execution
once it get CM lock it will be dropped silently, and C2 will
proceed with connect.

Change-Id: I14efb0f21442edcae90a4abea20cb0b9e06a0758
CRs-Fixed: 3223786
2022-06-23 16:21:42 -07:00
Divyajyothi Goparaju
8515cfbc5a qcacld-3.0: Add bmiss timeout vdev set params
Currently host sends first, final bmiss count to fw

Add support for bmiss timeout(in seconds)
during wakeup as well as sleep state to fw.

Change-Id: Id748fabdff94f5fa3038bcea1b1cac733ac2dbe1
CRs-Fixed: 3224106
2022-06-23 12:57:59 -07:00
abhinav kumar
4a19256692 qcacld-3.0: Add vendor handoff service bit caps support
Add vendor handoff service bit capability support
WLAN_SOC_VENDOR_HANDOFF_CONTROL to check whether the FW
supports vendor handoff feature or not.

Change-Id: Ifdf541761716df9ca5b764c05714a8b501642354
CRs-Fixed: 3224573
2022-06-23 08:50:44 -07:00
Jyoti Kumari
9ba22e2bda qcacld-3.0: Add support for new ini param RoamScan_InactiveTimer
Add support for new ini param RoamScan_InactiveTimer. This param
is similar to the existing roam_scan_period_after_inactivity but
unit change

Change-Id: I0e803decaba30fa3f2dfcd95dc62dc71aa1cb3cd
CRs-Fixed: 3016893
2022-06-22 02:50:25 -07:00
Gururaj Pandurangi
55f3afd6bf qcacld-3.0: Add cfg item to enable eMLSR mode
Add cfg item to enable/disable eMLSR mode for ML STA
under 802.11be op mode. The cfg value 0 corresponds
to default MLMR mode, 1 corresponds to eMLSR mode.

Change-Id: Ib02516aac8ac44aee6b40a572a9f7469b10d0ac2
CRs-Fixed: 3184745
2022-06-21 22:55:29 -07:00