Commit Graph

8064 Commits

Author SHA1 Message Date
Jeff Johnson
c4741f08f7 qcacld-3.0: Remove hdd_is_sta_authenticated()
All usage of hdd_is_sta_authenticated() was removed by the patch:
  qcacld-3.0: Code cleanup from HDD module
  Change-Id If5f1cf432b5c02848202debee7de696b2f20be9a

Since hdd_is_sta_authenticated() is unused, remove it.

Change-Id: I777b8bb1ecda596d71744aa62be4b14dba71fe0e
CRs-Fixed: 3428727
2023-03-12 07:28:37 -07:00
Jeff Johnson
3fac0e7be8 qcacld-3.0: Remove hdd_update_eht_cap_in_cfg() prototype
A prototype for hdd_update_eht_cap_in_cfg() was added as part of:
  qcacld-3.0: Add APIs to update 11be target capabilities
  Change-Id Ib3baa41ea3d8ef2ce49b88e4b48d8bc29556cd66

But no actual function was added, so remove the unused prototype.

Change-Id: Ie96c86f9028f39438e6a135c9733465aaf52c12b
CRs-Fixed: 3428468
2023-03-11 17:48:16 -08:00
Jeff Johnson
b731c3a5ed qcacld-3.0: Remove hdd_sme_open_session_callback() prototype
Function hdd_sme_open_session_callback() was removed by:
  qcacld-3.0: Send the vdev create to firmware in the caller thread
  Change-Id Iafb186b13d948e421d152c3142cb8614fdbbffa6

However, the prototype was not removed, so remove it now.

Change-Id: Iffa96f51b2e274ba3540dbeac3011819285f50a0
CRs-Fixed: 3428757
2023-03-11 00:04:43 -08:00
Jeff Johnson
f4c0c27af2 qcacld-3.0: Remove hdd_max_sta_vdev_count_reached() prototype
The function hdd_max_sta_vdev_count_reached() was removed by:
  qcacld-3.0: Check for max allowed STA vdevs in hdd_start_adapter()
  Change-Id I5b2dd09fb58aa3135743a029889e689729bd05a7

However, the prototype was not removed, so remove it now.

Change-Id: I3ca75963bb69f0d2fc5a27687566e70b11f02058
CRs-Fixed: 3428740
2023-03-11 00:04:37 -08:00
Liangwei Dong
0cff75eb71 qcacld-3.0: Handle vendor attribute MCC low latency mode
Handle Multi-Channel Concurrency low latency mode enable/disable.
The firmware will do optimization for low latency in Multi-Channel
concurrency state if enabled. And all existing user quota setting
will be overwritten by the target.

Change-Id: I99d909f0b76cfd3876254f9930644061ecd0ea0d
CRs-Fixed: 3411252
2023-03-10 16:11:13 -08:00
Liangwei Dong
373f804c45 qcacld-3.0: Check and update SAP BW before CSA
At present, driver move DFS SAP to STA's non DFS 5 GHz channel
before STA connects to 5 GHz AP. But need to make sure the
new SAP BW doesn't cover DFS sub channels and cause CAC.
Move the BW check and update logic to correct location to handle
such case.

Change-Id: I59cd1e8d92d978429f24963b9cb241d6f89f2307
CRs-Fixed: 3427862
2023-03-09 18:45:58 -08:00
Tiger Yu
321259b2fa qcacld-3.0: Fix potential pointer dereferenced for hdd_ctx & mac_handle
Add sanity checking to fix the potential pointer dereferenced after call
the __cds_get_context or hdd_adapter_get_mac_handle.

Change-Id: I53bdfa8434bdbbd6b70b0d98469e05c2e05ead28
CRs-Fixed: 3426731
2023-03-09 03:27:10 -08:00
Jeff Johnson
c8da625f45 qcacld-3.0: Remove legacy P2P debug tables
As part of P2P componentization, debug logic was moved from HDD to the
P2P component, see:
  qcacld-3.0: Activate debug functions in P2P component
  Change-Id I1ff627a553108c74be144232fd0a0406d88de395
and:
  qcacld-3.0: Remove legacy P2P codes in HDD
  Change-Id Idaaacac4fdaf1b964432c33c10b1c86f8a591c2d

However these changes left behind two action frame type "number to
string" tables which are also no longer used, so remove those as well.

Change-Id: I95c2b2b767007f852d9c7ce0acac92089dbf8f23
CRs-Fixed: 3426074
2023-03-08 23:01:14 -08:00
Jeff Johnson
23b2f70362 qcacld-3.0: Remove enum oem_capability_mask
The enum oem_capability_mask was introduced by:
  qcacld-3.0: Add support for get and set OEM capability
  Change-Id I8c4a8c19633845750ec9d2492632471c68ba410d

However, the enum wasn't actually used by that patch, and instead
struct sme_oem_capability represents that information, so remove the
enum.

Change-Id: Ie52fa8d69c95c1021bf94b052f373e3e75da6f80
CRs-Fixed: 3425038
2023-03-08 11:06:37 -08:00
Jeff Johnson
026e9c0830 qcacld-3.0: Remove wlan_hdd_send_igmp_offload_params() stub
The stub function wlan_hdd_send_igmp_offload_params() was added by the
following patch:
    qcacld-3.0: Add support to offload igmp feature to fw
    Change-Id I05fbf23dc2836f8f5dc6e2f45b35bf2d30c39790

However there isn't a corresponding "real" function, nor is there a
caller. Since this was added in error, remove it.

Change-Id: I738a2be81e613138e13544f7335ad2876436a73b
CRs-Fixed: 3426018
2023-03-08 11:06:32 -08:00
Liangwei Dong
9250cd8a0c qcacld-3.0: Fix channel width not match with driver
802.11be mode is non legacy phy mode, add 802.11be mode
handling in hdd_hostapd_chan_change.

Change-Id: I8c62614ea7830206b0a4fa8b9edfc25a5ca0855f
CRs-Fixed: 3418073
2023-03-08 09:28:57 -08:00
Jeff Johnson
726b2cba56 qcacld-3.0: Remove hdd_sysfs_*_adapter_root_obj() stubs
The functions hdd_sysfs_create_adapter_root_obj() and
hdd_sysfs_destroy_adapter_root_obj() were removed in the
following patch, replaced with mode-specific APIs:
  qcacld-3.0: Add a sysfs replacement for reassoc
  Change-Id Ib4f3582bb8c164dd4f3ab739367520b9aeb0f5b9

However the stubs for when WLAN_SYSFS is not defined were
not removed, so remove them now.

Change-Id: I8c82b410d2891cbf8f3d619fcb6c1c60a5a0a9ca
CRs-Fixed: 3425058
2023-03-08 07:41:32 -08:00
Jeff Johnson
af6cc9c688 qcacld-3.0: Remove obsolete hdd_context packet capture members
Usage of the enable_pkt_capture_support and val_pkt_capture_mode
members of struct hdd_context was removed by the following patch as
part of packet capture componentization:
  qcacld-3.0: Remove packet capture ini's in cds
  Change-Id Ice4765c7eb697743b1dccc8a70be1b7ce766e037

Since these are obsolete, remove them

Change-Id: I28ffd0fe209b1d663046e8dec96d18ef5e269755
CRs-Fixed: 3424981
2023-03-08 05:59:03 -08:00
Jeff Johnson
8206ca810e qcacld-3.0: Remove unused wlan_ptp_gettime() stack variable
There are two different implementations of wlan_ptp_gettime()
depending upon the version of the Linux Kernel. The implementation
for versions before Linux Kernel 4.1 has an unused stack variable,
tsf_reg_read_enabled. This can result in compiler warnings, so
remove it.

Change-Id: I1ed7e15ff0cf8867356e8cea39bff5f4ee362877
CRs-Fixed: 3426059
2023-03-08 05:58:57 -08:00
Jeff Johnson
dd5dca9ea3 qcacld-3.0: Remove struct hdd_roaming_info::defer_key_complete
The following patch removed all usage of the defer_key_complete member
in struct hdd_roaming_info:
    qcacld-3.0: Remove unused code for defer key
    Change-Id I8afcebf00b00bcf39ba7da999c55e5eacdf26aaa

Since it is obsolete, remove it.

Change-Id: I4ed0eeba29ed74ddc82bf2a6723d73b49a9b907f
CRs-Fixed: 3424957
2023-03-08 04:18:40 -08:00
Lin Bai
c4def7dc3a qcacld-3.0: Add log to show netif queue operation
Add log to show the vdev_id/action/reason of net_if queue operation.

Change-Id: I207121d19c78272b1d084b18fbfba4d1364670e6
CRs-Fixed: 3425474
2023-03-08 02:30:12 -08:00
Jeff Johnson
5df9dd37ec qcacld-3.0: Remove wlan_hdd_display_txrx_stats() prototype
The function wlan_hdd_display_txrx_stats() was removed as part of
datapath componentization in:
    qcacld-3.0: Code cleanup from HDD module
    Change-Id If5f1cf432b5c02848202debee7de696b2f20be9a

However the prototype was left behind, so remove it as well.

Change-Id: I9b41bceff4a149e3aaf2938713ad0ca4a6735aa6
CRs-Fixed: 3426033
2023-03-07 19:46:49 -08:00
Aditya Kodukula
37ad7204d2 qcacld-3.0: Update link peer mac address for mlo stats
Currently in the driver as part of ML unified_ll_get_sta stats,
the peer mac address for partner link is not being updated in
the callback function, causing driver to report incorrect
stats to upper layers.

To fix this issue, update peer mac address before invoking
vdev station stats callback function.

Change-Id: I39c460467a3572aad05e4c5fab136a844b753941
CRs-Fixed: 3421153
2023-03-07 19:46:39 -08:00
Jeff Johnson
29beb1eb3e qcacld-3.0: Remove struct hdd_config::enable_fisa_lru_deletion
The following patch added logic to HDD to read the value of the
CFG_DP_RX_FISA_LRU_DEL_ENABLE configuration item and store it in
struct hdd_config:
  qcacld-3.0: Add ini to enable FISA LRU eviction
  Change-Id I9930ec260bcab5ba8c8f1e594dbfde35965dff2e

However, the datapath maintains this configuration item on its own, and
the copy maintained by HDD is not used, so remove that logic.

Change-Id: I970195cf199c33802db5f84eeea4f622306703cd
CRs-Fixed: 3424797
2023-03-07 16:39:21 -08:00
Aditya Kodukula
fe2f35ad2e qcacld-3.0: Log ini config info to host_driver_log
In the driver, the debugfs replacement command for getConfig
WEXT command logs ini configuration into a separate file only
but doesn't log into the wlan host_driver_logs file.

So, fix this by logging ini configuration to wlan host_driver_logs.

Change-Id: I134847a7b498defbcdd58b575fb775b2d0ef3070
CRs-Fixed: 3424575
2023-03-07 16:39:15 -08:00
Jeff Johnson
f442688267 qcacld-3.0: Remove hdd_txrx_get_tx_ack_count()
The functionality that called hdd_txrx_get_tx_ack_count() was remove by:
  qcacld-3.0: Code cleanup from HDD module
  Change-Id If5f1cf432b5c02848202debee7de696b2f20be9a

Since datapath componentization made hdd_txrx_get_tx_ack_count()
obsolete, remove it.

Change-Id: I86cb82794f6ae324034d8a4fb76ac5084aced3aa
CRs-Fixed: 3424800
2023-03-07 16:39:10 -08:00
Prasanna JS
016c20c61d qcacld-3.0: Update ratemask command policy to NLA_NESTED
Update wlan_hdd_set_ratemask_param_policy nl policy from
QCA_WLAN_VENDOR_ATTR_RATEMASK_PARAMS_LIST to NLA_NESTED
in order to allow use array indices as nested attribute.

Change-Id: I68abd4c920dba625bea0b37f542ccb748b35db39
CRs-Fixed: 3419294
2023-03-07 12:08:58 -08:00
Jeff Johnson
9f728c40cb qcacld-3.0: Remove struct hdd_context::disconnect_for_sta_mon_conc
The logic that used struct hdd_context::disconnect_for_sta_mon_conc
was removed with:
  qcacld-3.0: Code cleanup for connection manager in HDD
  Change-Id I2934e4a867458561c50170b0e786e63f20f1af4a

This member is now only written and never read, hence it is obsolete,
so remove it.

Change-Id: Iff1b4a1e508bc193c9d40c11f31317f353874b52
CRs-Fixed: 3424792
2023-03-07 12:08:53 -08:00
Jeff Johnson
020a97dec1 qcacld-3.0: Remove dp_protect_entry_count atomic variable
The following patch removed the use of hdd_wait_for_dp_tx():
    qcacld-3.0: Update HDD to use DP component APIs
    Change-Id I377aecc4343e75dd17d279a2eb84fc49e737e784

Since the function is obsolete, remove it.

Note that this removes the only code that depends upon the
dp_protect_entry_count atomic variable, which means that is also
obsolete, as are the hdd_dp_ssr_protect() and hdd_dp_ssr_unprotect()
functions that increment and decrement it.

Change-Id: I02621dabf2e67a39259c4a51a604312f1927f72d
CRs-Fixed: 3424826
2023-03-07 07:51:07 -08:00
Divyajyothi Goparaju
4a59ae263c qcacld-3.0: Modify API wlan_reg_get_usable_channel
As part of modification
of reg_set_channel_params_for_freq API to
reg_set_channel_params_for_pwrmode to make it
compatible with new API need to modify
the wlan_reg_get_usable_channel with extra argument
of REG_CURRENT_PWR_MODE, to invoke
reg_set_channel_params_for_pwrmode which is having
extra parameter of type supported_6g_pwr_types.

Change-Id: I4589bc604ae6bbe25f24c4d0261bcf96347589a8
CRs-Fixed: 3311839
2023-03-06 00:19:04 -08:00
Jianmin Zhu
f473d77df9 qcacld-3.0: Fix vdev ref leakage
Vdev ref WLAN_OSIF_STATS_ID leaked in corner case, then vdev was failed to
delete, assert happened.

Change-Id: I20b102804d4c3e89be14d89d261996025750be93
CRs-Fixed: 3423850
2023-03-04 23:26:42 -08:00
Mohammed Ahmed
ed443436d6 qcacld-3.0: handle idle_timeout during SSR
Currently if host driver requests for idle shutdown and SSR is
in progress then platform driver waits for the SSR to complete and
then call the idle shutdown callback to the driver.
But as a part of SSR shutdown sequence, driver flush this idle shutdown
work and this leads to the deadlock.
To resolve this issue, below changes are required.
1) Platform driver rejects the idle shutdown request with -EBUSY
   if SSR is in progress.
2) Host driver runs this idle shutdown work after the reinit if all
   the interfaces are down.
3) Remove the work flush from shutdown sequence.

Change-Id: Icae043971715948280dbafc4023fd58bdc1cc564
CRs-Fixed: 3421819
2023-03-03 05:26:15 -08:00
Jeff Johnson
e987317234 qcacld-3.0: Remove enum hdd_auth_key_mgmt
The last usage of enum hdd_auth_key_mgmt was removed with the patch:
    Change-Id I2934e4a867458561c50170b0e786e63f20f1af4a
    qcacld-3.0: Code cleanup for connection manager in HDD

Since this is unused, remove it.

Change-Id: I96a2f82e229ca73061da3ed781518d43c940cfa7
CRs-Fixed: 3422049
2023-03-02 22:27:35 -08:00
Bing Sun
3eb742fe94 qcacld-3.0: Indicate backhaul station run time TX rate to EasyMesh
EasyMesh controller need backhaul station TX rate to calculate path
capacity in EasyMesh steering.
Run time TX rate is more suitable for EasyMesh controller to select
best path.

Backhaul station should indicate run time TX rate to EasyMesh

Change-Id: I2e72257327682235351bc04edf405f73b663a9f7
CRs-Fixed: 3420875
2023-03-02 14:49:50 -08:00
Jyoti Kumari
da3f3f0403 qcacld-3.0: Do not pass mode as arg in policy_mgr_is_vdev_ll_sap
Do not pass mode as an argument in policy_mgr_is_vdev_ll_sap().
Use vde_id to get the mode for further condition check.

Change-Id: Ie12c31d4cf536ba6c80f0e28524b4c99c23600d1
CRs-Fixed: 3414277
2023-03-01 10:29:27 -08:00
Deeksha Gupta
50b1c4941f qcacld-3.0: Update SA and DA addresses to the SAE auth frame
Currently, for SAE ML connection, in SAE auth frame
1. Userspace send source address as STA link address and
   destination address as AP link address.
2. Driver send STA and AP link addresses to userspace
   while receiving the SAE auth frame.

Now as a part of userspace changes,
1. Userspace shall send source address as STA MLD address and
   destination address as AP MLD address, those addresses
   driver can not send OTA.
2. Driver needs to send STA MLD and AP MLD address to userspace
   while receiving the SAE auth frame.

Fix is, driver updates the SA and DA as link or MLD address
internally and send OTA or to userspace in SAE auth frame.

Change-Id: Iabd73b7704b5f93cdebe29b920d3c797819f41c1
CRs-Fixed: 3367021
2023-03-01 05:44:10 -08:00
Vinod Kumar Myadam
b57c697e7f qcacld-3.0: Fix for twt responder after SSR
TWT responder will come from the OEM while start SAP, after SSR
this value is not present. TWT is not enabled after SSR, if this
value is set in the SAP start.

To solve this scenario, cache the twt responder value in
sap_config to use this after SSR.

Change-Id: Iba4c198d6f3d92584c2b6af27d2fbe688c781f7d
CRs-Fixed: 3408653
2023-03-01 00:53:12 -08:00
Rajeev Kumar
5aa5818dca qcacld-3.0: Fix runtime pm wow sysfs stats destroy sequence
Fix runtime pm wow sysfs stats destroy sequence and add kernel
doc for public APIs.

Change-Id: I81e03183d3d397b78906a66917aaac057b37d703
CRs-Fixed: 3417630
2023-02-28 22:16:13 -08:00
Surya Prakash Sivaraj
534c627cea qcacld-3.0: Support P2P GO on indoor channels
Add a new ini "p2p_go_in_indoor_chan" to enable support
for p2p go operation on indoor channels.

Do not allow standalone SAP on indoor channels if the
SAP indoor channel support is not enabled.

Change-Id: I2e6220ebcefe09b4ad5de496c36879ef048cb5b8
CRs-Fixed: 3405597
2023-02-28 20:00:35 -08:00
Arun Kumar Khandavalli
04460763ae qcacld-3.0: Don't take psoc lock while check for objmgr leaks
While forcefully releasing the reference leaks driver is taking a
psoc lock and forcefully releasing the object references, which
in turn try to acquire the same lock resulting in deadlock.

Don't take psoc lock while forcefully releasing the psoc lock.

Change-Id: I25d2c84f66927888220ecd61e7fa5c6137002069
CRs-Fixed: 3414339
2023-02-27 19:29:58 -08:00
Bing Sun
74bdded6d9 qcacld-3.0: Initialize variable before using it
In hdd_wmm_classify_pkt_cb, local variable user_pri and is_critical
should be initialized in hdd_wmm_classify_pkt_cb. we can't expect
hdd_wmm_classify_critical_pkt to do it.

Invalid user_pri is set to skb->priority because user_pri and
is_critical is not initialized.

Change-Id: I6d57251bcb8c7bc3d0f031f2d9b127e3e16d1b47
CRs-Fixed: 3408478
2023-02-26 21:30:01 -08:00
Mohammed Ahmed
69e6d64b64 qcacld-3.0: add rtpm stats sysfs functionality
Current code allows for viewing Runtime PM stats via debugfs only.
Fix this by adding sysfs viewing functionality.

Change-Id: I2b439f0bb608292dc1390a5529f9dc287b7262bc
CRs-Fixed: 3414306
2023-02-25 01:29:13 -08:00
Jeff Johnson
d7b990f057 qcacld-3.0: Fix misspelling "attrributes"
Fix misspelling of "attributes" in wlan_hdd_twt.c.

Change-Id: Ic9efbbc7b78f7e737be87712ed80978b7f42f13e
CRs-Fixed: 3414849
2023-02-24 13:50:50 -08:00
Paul Zhang
afd194fb4e qcacld-3.0: Correct logic for roam fails in NUD case
If roaming is triggered by source CM_ROAMING_NUD_FAILURE,
then per the INI gEnableNUDTracking to check whether
disconnect current connection or not.
gEnableNUDTracking=2, keeping the connection
gEnableNUDTracking=3, disconnect the connection

Change-Id: I0f321dcf5f3fc1bf7d0c93fa0d70bf4770ccaf35
CRs-Fixed: 3412213
2023-02-24 13:50:44 -08:00
Bing Sun
23dfd3c2f8 qcacld-3.0: Add API to get station TX rate for EasyMesh SAP
EasyMesh application will get current TX rate information of connected
station. Add API to support it.

Change-Id: I6778e1ae18f3efe89930a5423455ebf3f8084a95
CRs-Fixed: 3406509
2023-02-24 04:58:41 -08:00
Jyoti Kumari
d749270732 qcacld-3.0: Rename policy_mgr_is_ll_sap_present() properly
Rename policy_mgr_is_ll_sap_present() into
policy_mgr_is_vdev_ll_sap(). As this api mainly checks
whether the given vdev is ll sap or not

Change-Id: I7f87aceeb0ed6ac5bb7014db1fd6213e62e6305e
CRs-Fixed: 3413644
2023-02-24 04:58:36 -08:00
Jianmin Zhu
748f7555ed qcacld-3.0: Get roam stats by vendor cmd
Cache roam information in wlan driver, when qca vendor
cmd of QCA_NL80211_VENDOR_SUBCMD_ROAM_STATS get roam
information, driver send all the cached information to
user space.
Extend WMI_ROAM_STATS_EVENTID event information for
requirement of:
1.Roam trigger related information, include timestamp,
  trigger reason, trigger condition, abort reason,
  scan type, roam status and fail reason.
2.Roam scan related information, include scan channel
  number, dwell type, max dwell time of each channel
  and total scan time.
3.all types of roam related frame information, include
  timestamp and successful or failed status for Preauth,
  Reassoc, EAPOL-M1/M2/M3/M4.

Change-Id: I2a694b7c1df8f5da09505f65c9c797be2177b398
CRs-Fixed: 3391601
2023-02-23 22:06:34 -08:00
Namita Nair
2e7dcc8c8f qcacld-3.0: Fix use-after-free in IPA exception path
Currently when packets are routed from IPA to
HOST via the exception path, the system encounters
a use-after-free crash. This change eliminates
the access of nbuf pointer after being freed in the
hdd_ipa_send_nbuf_to_network().

Change-Id: Ib126ac9092562067cb8eeb2b1d6464941111796c
CRs-Fixed: 3410414
2023-02-23 00:56:50 -08:00
Bing Sun
63c4c052ea qcacld-3.0: Add new ACL command type to not deauth STA
When EasyMesh controller steers client from AP in EasyMesh controller
to AP in EasyMesh agent, EasyMesh controller will add this client to
blacklist ACL of its AP, then send BTM request to this client. When
client is added to ACL, deauth is not expected since EasyMesh controller
would like client to do roaming with BTM request.

Add new ACL command for EasyMesh. Do not deauth station when add station
to ACL or delete station from ACL.

Change-Id: I499c69108259799a9f0742d1371a666f2b3bbed1
CRs-Fixed: 3408175
2023-02-22 01:54:25 -08:00
Yu Wang
27b170d4e5 qcacld-3.0: add enter/exit logs for some functions
Add enter/exit logs for hdd_psoc_shutdown_notify() and
hdd_soc_recovery_cleanup().

Change-Id: Idf80f84d0bda8de57bc094556fb572b13cb6fc5e
CRs-Fixed: 3410104
2023-02-22 01:54:18 -08:00
Vinod Kumar Pirla
ede71596ed qcacld-3.0: Report best RSSI and SNR in the ML STA links
If wlan_hdd_get_sta_stats() is called with non-assoc link's
peer MAC address, it will fetch link adapter with that BSSID.
Link adapter doesn't have pointer to partner link's adapter
and wlan_hdd_mlo_update_stats_info() cannot return the best
RSSI and SNR among all the links.

In wlan_hdd_mlo_update_stats_info() API, if link adapter is
passed to get the best RSSI and SNR of all links, then first
fetch ML adapter to loop through all the link adapters.

Change-Id: I33090fecfa0a20221fc8c465ad9f36f3eb941e60
CRs-Fixed: 3399641
2023-02-21 14:30:43 -08:00
Vinod Kumar Pirla
3ec1adb554 qcacld-3.0: Fix bad channel in cfg80211 get channel for SAP
The cfg80211 callback for get channel is returning invalid
channel in case of SAP as the check for is vdev associated
will return false for SAP mode.

Keep this check only for STA mode only so SAP can return
the valid channel in get_channel callback.

Change-Id: I5a03626291f0e20c8e07ae8fde48cb9eacafb2e4
CRs-Fixed: 3410453
2023-02-20 14:16:10 -08:00
Abhinav Kumar
ffca2ee19e qcacld-3.0: Send proper RCL list to upper layer
Host receives channel list via an event
WMI_ROAM_SCAN_CHANNEL_LIST_EVENTID as
getroamscanchannels command response on disconnection.

Host sorts the channel list in descending order before
sending the list to the supplicant. As per current
logic, the host fills only the value of LSB for the
second channel onward. This results in host respond
the RCL list with an invalid format of frequencies
to the upper layer.

Fix is to make sure the host should respond RCL list
with the correct format of frequencies.

Change-Id: I1670ec4a99a7c9c7c438c430a9476802f8af83ce
CRs-Fixed: 3397397
2023-02-18 20:49:56 -08:00
Sheenam Monga
49a247ab1b qcacld-3.0: Consider Random 6 GHz channel if DCS triggers CSA
Currently, if Channel change is required via DCS then ACS
is triggered to select the best available channel . In case of
XR SAP optimization, SAP can not come on 2 GHz and frequencies
that can be shared by current SAP frequency on same MAC are
removed from scan list. As result of which frequencies
5/6 GHz in case of DBS and 5 GHz low/5 GHz high + 6 GHz based
on which 5 GHz range is shared with 2 GHz will be disacrded from scan
list. In short Scan can not be  triggered on freqeuncies of same MAC
on which SAP is up and can not come in MCC. So, if any other device
mode is up on 2 GHz on other MAC turning on SAP on other MAC can
cause MCC in case of SBS and DBS HW which is not preferred.

Fix is to start SAP on random 6 GHz channel when case CSA is required
due to DCS in case SAP can't come up on 2 GHz and scan can not be
triggered for same MAC on which SAP is enabled i.e ACS optimization
is enabled for XR SAP.

Change-Id: I0cb46a409e3ee04044f7a0b12addec464e87ef7d
CRs-Fixed: 3404097
2023-02-17 11:00:20 -08:00
Sheenam Monga
59c0c703fe qcacld-3.0: Send AP Profile to FW
Indicate AP profile to FW , so that FW can
keep HW mode as SBS mode if BIT 0 is set in
param of vdev command.

Change-Id: I9ba024d11380590a31836ab468715e0b52c83fe8
CRs-Fixed: 3401583
2023-02-17 11:00:14 -08:00