Wykres commitów

3388 Commity

Autor SHA1 Wiadomość Data
Venkateswara Swamy Bandaru
fb890d204b qcacmn: Add D1.5 missing mac caps in vdev
Add D1.5 missing mac caps in dev

Change-Id: I96ba90e0ae43559ec8a2690f6f4270335cf120ea
CRs-Fixed: 3219280
2022-06-22 01:01:11 -07:00
Priyadarshnee Srinivasan
15ba95b476 qcacmn: Add reg API to convert eirp to PSD power
Add reg API to convert eirp to PSD power based on the
formula: psd = eirp - ten_log10(channel bw)

CRs-Fixed: 3210379
Change-Id: I93506f8262f3fd752e22326e0604d6c8ec5383c9
2022-06-16 18:49:56 -07:00
Shwetha G K
2dc127f74b qcacmn: Periodicity check for waikiki
Add periodicity check for waikiki target.

CRs-Fixed: 3217706
Change-Id: I572d484f9767acfe86c204ee33eac53245f79bf0
2022-06-16 11:52:57 -07:00
Priyadarshnee Srinivasan
63af575866 qcacmn: Add AFC changes for 320 MHz
Fetch sub-channels of 320 MHz in reg_get_subchannels_for_opclass
API.
Change MAX_AFC_BW to 320 and REG_MAX_20M_SUB_CH to 16 in case of
11BE.
Add cen320 as an input to reg_get_best_pwr_mode to fetch the eirp
afc power for the corresponding cen320 from the afc response.
Add dispatcher API for reg_get_chan_state_for_320.
Add band_center_320 as an argument to reg_get_chan_state_for_320
to fetch the channel state for the input 320 MHz band center.
Add logic in reg_find_eirp_in_afc_eirp_obj to fetch the eirp power
for the given center freq.

CRs-Fixed: 3211744
Change-Id: Ic37bfe6790385836f81a156dd6ccc071245ea1bb
2022-06-16 09:15:40 -07:00
Shreedhar Parande
7c2d02ecf3 qcacmn: Update definitions for MLD capability subfield
Update definition for MLD capabilities subfield present in
the Common Info field of Basic Multi-Link element as per
IEEE802.11be D1.5.

Store parsed MLD capability in node to send these to Target.
Add endianness handling for MLD Capability.

Add a check if the value in the common info length tallies
with the length as determined from the presence bitmap for
MLD capabilities.

CRs-Fixed: 3206837
Change-Id: I3d03afbd60171b2cf5e81c9a8dbb51d7673c9163
2022-06-16 09:15:33 -07:00
Ashish Kumar Dhanotiya
dfce3ace10 qcacmn: Update best power mode only for client power types
Currently regulatory maintains 2 separate channel lists
for client and AP. For client type, host driver is using super
channel list and for ap type host driver is using secondary
channel list.
Currently when regulatory fills the best power mode, it only
considers highest power to decide best power mode but it does
not consider if the power is for AP power mode or for client
power mode. Since power values for AP power modes is always
higher as compared to power values of client power modes, so
best power mode is always gets updated with the AP power type.
Since host driver uses super channel list for only client power
type and with above method tx power for AP power mode is getting
used which is incorrect.

To address above issue, update the best power mode for only client
power types.

Change-Id: Iba44ce919b719a59944e431cd1b4d58749122e8b
CRs-Fixed: 3159215
2022-06-16 09:15:26 -07:00
Amruta Kulkarni
83e349e4ae qcacmn: Generate link specific probe response
Changes made to link generation api to handle probe response.

Change-Id: I5b86599a9704e3c41bbb0d0127078d586e4d1d8c
CRs-Fixed: 3158769
2022-06-15 11:09:00 -07:00
Abhishek Singh
5753fed431 qcacmn: Move roam SM under host roam OR roam offloaded macros
Move roaming related SM handling under WLAN_FEATURE_HOST_ROAM and
WLAN_FEATURE_ROAM_OFFLOAD macros.
So that if neither of them is enabled connection manager
SM don't move SM to roaming specific states.

With this if roaming macro WLAN_FEATURE_HOST_ROAM and
WLAN_FEATURE_ROAM_OFFLOAD both are disabled OR
WLAN_FEATURE_ROAM_OFFLOAD is enabled but INI gRoamOffloadEnabled
is disabled, driver will not try to roam, instead, it
will do a internal disconnect followed by connect to new BSSID

Change-Id: Ic61d3badd451f426db8b9925e2b4dd0b2f9ff307
CRs-Fixed: 3216546
2022-06-14 09:31:42 -07:00
Surya Prakash Sivaraj
ebf04a339e qcacmn: Mark 6 GHz indoor only channels as NO_IR
As part of the sta_sap_scc_on_indoor support, a concurrent SAP
without indoor channel support can be started on an indoor
channel, therefore NO_IR flag is not set for the indoor
channels in the master channel list.

However, in countries where VLP is not supported, the concurrent
SAP is not allowed on these non-VLP channels. Therefore, restrict
the SCC indoor support only for INDOOR_ONLY 5 GHz frequencies.

Change-Id: I29f7bc4bed5fe5d06d535126eb8958425b5ad313
CRs-Fixed: 3208199
2022-06-14 04:14:43 -07:00
Krishna Rao
ef094153e4 qcacmn: MLO D1.5 - Add definition for RNR 'All Updates Included'
As part of a transition of basic MLO functionality to IEEE802.11be
D1.5, add definition for 'All Updates Included' in MLD Parameters
subfield in TBTT Information field present as part of TBTT Information
Set in Neighbor AP Information field of Reduced Neighbor Report
element.

Change-Id: I2e8b08e5d23ac51168455116d1772d484682815d
CRs-Fixed: 3197190
2022-06-13 10:51:45 -07:00
Krishna Rao
4ce7d8f466 qcacmn: MLO D1.5 - Process BSS param change count presence in STA Info
As part of a transition of basic MLO functionality to IEEE802.11be
D1.5, add definitions and receive processing for the signaling of the
presence of BSS Parameters Change Count subfield in STA Info field in
Per-STA Profile subelement in Basic Multi-Link element Link Info
field. This presence is signaled by a new bit in the STA Control
field of the corresponding Per-STA Profile subelement. Rename the
definition for BSS Parameters Change Count (sub)field size to make it
generic since it may occur in various protocol signaling areas
related to MLO.

Change-Id: Ieb17f65547b7106442369b51cd6bc303046a224a
CRs-Fixed: 3197012
2022-06-13 10:51:39 -07:00
Vignesh U
fdcdd57600 qcacmn: Update RegDB with revision 39
1) Change the following country mapping for WIN
i) Change 5GHz regdomain of Aland Islands to ETSI13.
ii) Change the mapping of Christmas Island to APL25_ETSIC.
iii) Change 2GHz regdomain of Colombia to FCCA.
iv) Change the mapping of Cook Islands to APL26_ETSIC.
v) Change the mapping of Heard Island and McDonald Islands to APL25_ETSIC.
vi) Change the mapping of Niue to APL26_ETSIC.
vii) Change the mapping of Norfolk Island to APL25_ETSIC.
viii) Change 5GHz regdomain of Sri Lanka to ETSI15.
ix) Change 5GHz regdomain of Svalbard and Jan Mayen to ETSI1.

2) Change the following country mapping for Linux Android
i) Change 5GHz regdomain of Aland Islands to ETSI13.
ii) Change the mapping of Christmas Island to APL25_ETSIC.
iii) Change 2GHz regdomain of Colombia to FCCA.
iv) Change the mapping of Cook Islands to APL26_ETSIC.
v) Change the mapping of Heard Island and McDonald Islands to APL25_ETSIC.
vi) Change the mapping of Niue to APL26_ETSIC.
vii) Change the mapping of Norfolk Island to APL25_ETSIC.
viii) Change 5GHz regdomain of Reunion to ETSI13.
ix) Change 5GHz regdomain of Sri Lanka to ETSI15.
x) Change 5GHz regdomain of Svalbard and Jan Mayen to ETSI1.

3) Change the following country mapping for DSRC
i) Change the mapping of Christmas Island to APL25_ETSIC.
ii) Change the mapping of Cook Islands to APL26_ETSIC.
iii) Change the mapping of Heard Island and McDonald Islands to
APL25_ETSIC.
iv) Change the mapping of Norfolk Island to APL25_ETSIC.
v) Change 5GHz regdomain of Svalbard and Jan Mayen to ETSI1.

4) Change the maximum bandwidth of the following 5GHz regdomains to 320MHz
i) FCC3
ii) FCC8
iii) FCC13
iv) FCC14
v) FCC17
vi) FCC18
vii) ETSI12
viii) ETSI13
ix) ETSI14
x) ETSI15
xi) APL19
xii) APL20
xiii) APL26
xiv) APL27

5) Add the following 6GHz regdomains
i) APL6_CLIENT_LPI_6G
ii) APL6_AP_LPI_6G
iii) MKK1_AP_LPI_6G
iv) MKK1_CLI_LPI_6G
v) MKK1_AP_VLP_6G
vi) MKK1_CLI_VLP_6G

6) Add the 5GHz_2GHz regdomain pair ETSI15_ETSIC.

7) Add the 6GHz super domains APL6_6G_0A and MKK1_6G_0B.

8) Set the 6GHz regdomain as ETSI1_6G_02 for the countries Aland Islands,
Andorra, Curacao, Cyprus, Czech, Denmark, Falkland Islands, Faroe Islands,
Finland, France, French Guiana, French Polynesia, French Southern
Territories, Guadeloupe, Guernsey, Ireland, Isle_of_Man, Jersey,
Liechtenstein, Lithuania, Malaysia, Malta, Martinique, Mayotte, Montserrat,
Morocco, Netherlands, Netherlands Antilles, New Caledonia, Portugal,
Reunion, Saint Helena Ascension and Tristan Da Cunha, Saint Pierre and
Miquelon, Sint Maarten, Spain, Svalbard and Jan Mayen, Sweden, Switzerland,
Virgin Islands British.

9) Set the GHz regdomain as APL6_6G_0A for the country Saudi Arabia.

Change-Id: Ib9cb9f2983e3302d138d831bce15e87451cebd68
CRs-Fixed: 3200990
2022-06-13 01:19:50 -07:00
Amith A
443a1971d7 qcacmn: Add enum for AFC Stop Tx event and its handler
Add enum REG_AFC_EXPIRY_EVENT_STOP_TX, which is mapped to
WMI_AFC_EXPIRY_EVENT_STOP_TX, to reg_afc_expiry_event_subtype and handle
the event in the exact way as REG_AFC_EXPIRY_EVENT_SWITCH_TO_LPI event is
handled.

Change-Id: I5289ea1b51e0c2d7573e60a23ded69295252f8d6
CRs-Fixed: 3209048
2022-06-12 06:13:41 -07:00
Abhishek Singh
65894b10a8 qcacmn: Avoid timeout, in case active cmd fails to find valid req
If a new disconnect/connect req tries flush the pending
disconnect/connect request and while doing so, it
remove the CM pending request, but before it tried to
remove pending command from serialization, the command
becomes active in another thread.

This active command will try to fetch the CM request
which is removed and thus return without any handling.

This lead to active command timeout for the request.

To fix it remove the command from serialization active
queue, if disconnect/connect request was not found in
CM request list after the command become active.

Change-Id: I81d147060fb21d17e4aa82e99c073d1bd0c5db68
CRs-Fixed: 3212746
2022-06-11 06:56:53 -07:00
Srinivas Pitla
18e9ba976b qcacmn: Reject MLO association on same STA MLD MAC address
This change rejects association if MLD MAC address of Station
is same as AP MLD MAC address.

Change-Id: Ie8cafcf8bf0033dc63efbcd0047ddcabf996942b
CRs-Fixed: 3212459
2022-06-11 06:56:41 -07:00
Ananya Barat
089b42bd52 qcacmn: Add an API to check if STA VAP connection is allowed
Add API reg_is_sta_connect_allowed and it's wrapper function
wlan_reg_is_sta_connect_allowed to check if STA VAP connection is
allowed.

Change-Id: I7316545cf199deb6ceb64aa2bb30287fc9b8a34a
CRs-Fixed: 3195189
2022-06-11 03:31:02 -07:00
Chaoli Zhou
6cd686dc0e qcacmn: Support setting wapi crypto for SAP mode
Support setting crypto prarameters from WAPI IE.

Change-Id: Iee0e42e692dd2d9c2c6d645defd858c3c29eb322
CRs-Fixed: 3213432
2022-06-10 18:58:35 -07:00
Jyoti Kumari
4afef82b70 qcacmn: Handle TWT renegotiation failure case
Generally below process should happen in renegotiation failure
case.
1. TWT setup (successful)
2. TWT setup (renegotiation failure)
3. TWT teardown
4. TWT GET STATUS - 0(dialog ID) 0 0 0
5. TWT setup - successful

Since all WMI TWT events gets executed in WMI thread. So when
renegotiation failure case hits, driver sends TWT
teardown to firmware and waits for twt ack in worker thread.
In same worker thread TWT event needs to be processed.
TWT ack event will not process as it's waiting in same worker
thread and it will get timedout.

As part of fix, break the context in renegotiation and
send the teardown in the new worker context.

Change-Id: Id12cb906b780d3013562c1772e276639a056c8f7
CRs-Fixed: 3207537
2022-06-10 18:58:29 -07:00
Deeksha Gupta
f666bb4d71 qcacmn: Update EHT op/caps as per draft 1.5
Update EHT Operation and Capabilities as per 11be draft 1.5
specification.

Change-Id: I6feb644c09db2c7f0578665733c29957be049408
CRs-Fixed: 3197384
2022-06-09 11:43:23 -07:00
Ananya Barat
66f86adec8 qcacmn: Return true from wlan_reg_is_afc_done if AFC/6GHz is not supported
When either of the macros CONFIG_AFC_SUPPORT or CONFIG_BAND_6GHZ are not
defined, the function wlan_reg_is_afc_done returned false by default.
As a result, the upper layer set all the 6GHz channels to NO_IR and the
vap was unable to come up.

Fix this by returning true from wlan_reg_is_afc_done when either of those
macros are not defined.

Change-Id: I4acb564023d2a2b318ba1497fd858a02987c117a
CRs-Fixed: 3214096
2022-06-08 17:10:22 -07:00
Bing Sun
96ad1f2828 qcacmn: Add API to extract puncture bitmap based on new bandwidth
Puncture bitmap is binding with channel bandwidth. If the STA can't
support bandwidth as AP broadcasts, STA need extract puncture bitmap
based on the negotiated bandwidth.
Add API to extract puncture bitmap based on new bandwidth.

Change-Id: I089d010c6b327ba20e21aec0b8110323108cbda3
CRs-Fixed: 3207683
2022-06-08 11:48:05 -07:00
Jianmin Zhu
bc885ff52a qcacmn: Validate puncture when select candidate
If puncture of primary 20M channel of beacon or probe rsp is not 0, the bss
is invalid and filtered out when DUT STA select candidate AP to connect.

Change-Id: Ic27c75ab07ec91a80164a12b0928c98bc8911f99
CRs-Fixed: 3208103
2022-06-08 11:47:59 -07:00
Jianmin Zhu
3061409081 qcacmn: Add band bitmap filter for mlo ap candidate
Get mlo partner link freq from RNR IE.

Use band bitmap to filter mlo AP by band.
Force link on 2 GHz: mlo_support_link_band=1
Force link on 5 GHz: mlo_support_link_band=2
Force link on 6 GHz: mlo_support_link_band=4

Change-Id: Ib11dee117bef6121bbc455b62a2803138881a72a
CRs-Fixed: 3211974
2022-06-08 11:47:53 -07:00
Kiran Venkatappa
1c9f11fa8a qcacmn: AID changes for T2LM clients
Aid pool is divided into three pools. pool0 and pool2 is for legacy and
MLO clients. pool1 is for T2LM enabled clients. This is done to ensure
that T2LM enabled clients are starting from particular index so that
multi-link traffic element can be updated optimally.

Change-Id: I2d5fe50a6ba339e89f4b65febc7b1b1bbb200477
CRs-Fixed: 3205993
2022-06-08 11:47:47 -07:00
Paul Zhang
96b039f9f8 qcacmn: Correct the kernel-doc format
Correct kernel-doc format for the functions in file utils_mlo.h.

Change-Id: I5a91675867885d8fdf262c7ea7f98a09f9e2e539
CRs-Fixed: 3203893
2022-06-07 08:18:52 -07:00
Nandha Kishore Easwaran
422bbf322b qcacmn: Add tx peer filtering WMI command
Add WMI command for tx peer filtering. This command is needed to send
the mac address to FW for which tx monitor peer filtering is needed
to be done.

Change-Id: Ia141fba81ba240b7f4ca015eb9251e3485294bb6
CRs-Fixed: 3199493
2022-06-06 04:26:55 -07:00
Deeksha Gupta
45c39ea4b3 qcacmn: Update RNR IE as per D1.5
Update RNR IE as per 11be draft 1.5 specification.

Change-Id: I7b3e3d2017c2d7eedbba82d6591cdf93fd755b95
CRs-Fixed: 3210818
2022-06-06 04:26:48 -07:00
Jithender Miryala
059313a9cb qcacmn: Create a workqueue to process the NOL timeout
The HR timer runs in hardIRQ context and tries to acquire a bh_spinlock
held by a SoftIRQ context, which leads to deadlock.

To fix this, create a workque and let the workque execute the timer
callback function.

CRs-Fixed: 3200600
Change-Id: I6e702acade6d4e1d75470339ead0e591e7b8e4d8
2022-06-06 01:59:28 -07:00
Srinivas Pitla
e89b339b23 qcacmn: Select assoc peer's psoc as primary UMAC
select assoc peer as primary umac,
1) if all links are from single PSOC
2) single link MLO connection

Change-Id: Ia38e6809ef7d0201a2267051b8b4bcec7b36547f
CRs-Fixed: 3203804
2022-06-05 23:54:06 -07:00
Srinivas Pitla
34c16f4118 qcacmn: AID manager fixes for MBSSID vaps
1) Do not free Tx VAP's AID manager, if AID manager of
   non-Tx vap and Tx vap doesn't match
2) Do not allocate AID manager for MLD vaps, if AID
   manager is already allocated

Change-Id: I08b19397540f364503eaa1c269c6d0679a9a9fc0
CRs-Fixed: 3212368
2022-06-05 12:38:13 -07:00
sandhu
b3da23a1a9 qcacmn: Remove forward declaration of util_scan_get_he_6g_params
Remove forward declaration of util_scan_get_he_6g_params. This
declaration is not required and is resulting in compilation
issues.

Change-Id: I43ac0839fa2a17d6e91811643d3ceb72c925e92f
CRs-Fixed: 3210127
2022-06-03 23:39:20 -07:00
Shreedhar Parande
5f96fd74c9 qcacmn: Parse EML capability subfield in Common info for non-AP MLD
Parse EML capability sub field present in Common Info field of Basic
Multi-Link element from Association request send by non-AP MLD.

Add new API to get EML capabilities from the ML IE.
Update definitions for EML as per IEEE802.11be D1.5.
Store parsed EML capability in node to send these to Target.

CRs-Fixed: 3203322
Change-Id: Ib208ba2d8e86df7360656c1c844e4835a93cedc4
2022-06-03 11:39:20 -07:00
Adwait Nayak
3ebb459d03 qcacmn: Add length check for newly generated frame
Add boundary check for the newly generated frame per subelement.
It should not go beyond the original beacon frame length.

Change-Id: I6de5519052a47119ec0a294941244c1b277233fc
CRs-Fixed: 3194793
2022-06-03 07:58:13 -07:00
Aditya Sathish
0d8615a6ff qcacmn: Update ML per-STA profile IE search offset
Start searching for IEs in the multi-link per-STA
profile from the STA Profile field instead of the
STA Control field to avoid invalid checks that may
arise due to other fields in-between.

CRs-Fixed: 3199541
Change-Id: I0a0f5b6c83135974820d2870e00f6dcf9eab61fe
2022-06-02 09:44:04 -07:00
Vikram Kandukuri
8969fe6019 qcacmn: Adding telemery agent component
Adding telemery agent component.
CRs-Fixed: 3211061
Change-Id: I48efdf8a612162e02512819f8e0d242dfac7da3c
2022-06-02 05:22:12 -07:00
Amith A
6e9e767a8b qcacmn: Correct the kernel-doc of reg_set_ap_pwr_type
Append a '*' to the first line of kernel-doc of reg_set_ap_pwr_type.

Change-Id: I86bbd8bc6c9ce83d53c27e06b26aa54b3fd285dc
CRs-Fixed: 3208791
2022-06-02 01:31:00 -07:00
Divya R
33e3e1d6a8 qcacmn: Initialize the chan_params structure
chan_params structure is uninitialized, due to which variables
inside the chan_params structure have garbage values.
To avoid this, initialize the chan_params structure.

Change-Id: Ic09c0a2d24c2a1eac8f076c7bbd4d25d147370fd
CRs-Fixed: 3205502
2022-06-01 01:45:37 -07:00
Aakanksha Doda
f420dce004 qcacmn: Add wmi changes to extract addba window size from mgmt tlv
Add wmi changes to extract addba window size from mgmt tlv

CRs-Fixed: 3156291
Change-Id: I09891ef15942d3a7d594dfa839b758a9d4a5ba78
2022-05-30 06:45:12 -07:00
Paul Zhang
aeacfe3922 qcacmn: Add new API to fetch ML IE info
In order to provide the info about common info len and BSS
param change count, add API util_get_mlie_common_info_len()
and util_get_bvmlie_bssparamchangecnt().

Change-Id: I0f5fea2265cbb8f1df265542af7009d624a0129b
CRs-Fixed: 3202491
2022-05-27 19:37:23 -07:00
Sheenam Monga
2a969228b4 qcacmn: Don't allow power mode VLP for indoor AP
Currently if AP and STA supports VLP, power mode
is set to VLP without any check of AP indoor or
not. Example when STA is in GB country code and
AP is in KR Country code and AP is indoor AP,
Power mode should be set LPI, but as per current
implementation power type will be set to VLP irrespective
to AP indoor or not beacuse both countries support VLP.

Change-Id: Ib2be4c0076a7e94f9870bd8fc320cfcc170754f9
CRs-Fixed: 3203504
2022-05-27 12:16:28 -07:00
Sheenam Monga
8ce62d6104 qcacmn: Don't set power mode to VLP for all countries
Set LPI power mode for countries & domain that don't support
VLP.

Change-Id: I799a0d5beb23a4f0f613269d981ce61c86bcb5c1
CRs-Fixed: 3200465
2022-05-27 12:16:21 -07:00
Venkateswara Swamy Bandaru
3ff07fe59d qcacmn: Add 11be D1.5 support
Update EHT Operating IE as per 11be D1.5 draft.

Change-Id: I3c0e0af765f4a05729b505b83508cee2149ed2f2
CRs-Fixed: 3187001
2022-05-27 10:56:25 -07:00
Arun Kumar Khandavalli
b0fafa0130 qcacmn: Disconnect the ml connection incase of link assoc failure
Currently even when the partner link assoc failure driver is maintining
the assoc link this is resulting in several side effects w.r.t
memory corruptions etc.

Disconnect the ml connection incase of link assoc failure.

Change-Id: I4bbdcf4099f3042f5065067ca5d817f986ffb30a
CRs-Fixed: 3204310
2022-05-27 05:08:37 -07:00
Vignesh U
6179a3a558 qcacmn: Calculate frequency offsets instead of hardcoding
The radar found frequency offsets to find various 20MHz sub-channel
frequencies is hardcoded for different channel widths. These frequency
offsets can be calculated reducing repeatitive code.

Calculate frequency offsets from channel widths and center frequencies
to determine the radar found frequencies.

Change-Id: I146fa6dd06473ff90cad4bb5dd8ba4ce13ab7c7c
CRs-Fixed: 3182067
2022-05-27 01:20:43 -07:00
divraj
4514b2ae95 qcacmn: Add function definition when CONFIG_BAND_6GHZ not defined
Functions (reg_get_min_max_bw_on_given_pwr_mode/
reg_get_chan_state_on_given_pwr_mode) were defined under macro
CONFIG_BAND_6GHZ. Add definition for above functions when
CONFIG_BAND_6GHZ not defined. When CONFIG_BAND_6GHZ is not defined
a channel search is only for 5GHz or 2.4GHz channel. Therefore,
the search is restricted to only the current channel.

Change-Id: Iaae6f362dd81a74c8d92756d507dd16b0dc4c3af
CRs-Fixed: 3205342
2022-05-27 01:20:37 -07:00
Aditya Kodukula
42b53b5b2c qcacmn: Move reg_set_ap_pwr_type function under CONFIG_BAND_6GHZ
To avoid possible compilation issues, move reg_set_ap_pwr_type
definition under CONFIG_BAND_6GHZ macro.

CRs-Fixed: 3207006
Change-Id: I7c2da42767c37356414a34757245772cd405f3b0
2022-05-26 23:04:40 -07:00
abhinav kumar
be6648764a qcacmn: Check first unused bit for multi client feature support
Currently host check 3rd bit of the extended feature flag to
know whether FW supports below two features:
1. Roam Frame info stats - per candidate frames support
2. multi-client feature flags support

The host should check different bits for different features.

Fix is to allow the host to check the first unused bit
(here 4th bit) of extended feature, flag to check whether FW
supports multi-client feature flags support.

Change-Id: I485aeab6a90e900a52e88cd013645203457c1adb
CRs-Fixed: 3184410
2022-05-26 09:32:57 -07:00
Priyadarshnee Srinivasan
a485ae2901 qcacmn: Set the num of subchans for 240MHZ as 12
In 5 GHz band, a 320 MHz band channel cannot be formed without
puncturing. Hence the contiguous available BW is 240MHZ which has
twelve 20MHZ channels from 5500 - 5720. Send CAC start/CAC
complete/radar detect information only for the channels which are
not punctured.

CRs-Fixed: 3200931
Change-Id: I5c2bc3314df6d1d61500e7fb24eef4a096ba4bb5
2022-05-26 03:53:12 -07:00
Ananya Barat
5e6a3b7993 qcacmn: Add API to check if AFC is complete
Add API reg_is_afc_done and it's wrapper wlan_reg_is_afc_done to check
if AFC response enables a given frequency.

Change-Id: I953139762fd5c06ce19edc1d807edf41126f6f2b
CRs-Fixed: 3195189
2022-05-26 00:03:08 -07:00
Ananya Barat
e6b17c58f1 qcacmn: Mark AFC not done for SP channels not supported by AFC
To support AFC outdoor device deployment, initially enable the entire SP
channel list with channel flag as REGULATORY_CHAN_AFC_NOT_DONE and channel
state as CHANNEL_STATE_ENABLE when the device deployment is outdoor and
AFC power event is not received. Once the power event is receive,
intersect the AFC channel list with existent SP channel list and for
channels which are enabled by AFC, unset the flag
REGULATORY_CHAN_AFC_NOT_DONE and keep channel state as
CHANNEL_STATE_ENABLE. When the SWITCH_TO_LPI event is received, keep the
SP channels as enabled with REGULATORY_CHAN_AFC_NOT_DONE flag set.

Change-Id: Ibbeb336a84db4a27aa22a4fc083f961a8a47aa9d
CRs-Fixed: 3195189
2022-05-26 00:03:01 -07:00