mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-02 15:43:35 -04:00
wifi: ath12k: indicate NON MBSSID vdev by default during vdev start
When any VDEV is started, MBSSID flags are passed to firmware to indicate if its a MBSSID/EMA AP vdev. If the interface is not an AP or if the AP doesn't support MBSSID, the vdev needs to be brought up as a non MBSSID vdev. Set these flags as a non MBSSID AP by default which can be updated as and when MBSSID support is added in ath12k. Tested-on: QCN9274 hw2.0 PCI WLAN.WBE.1.1.1-00188-QCAHKSWPL_SILICONZ-1 Tested-on: QCN9274 hw2.0 PCI WLAN.WBE.1.0.1-00029-QCAHKSWPL_SILICONZ-1 Tested-on: WCN7850 hw2.0 PCI WLAN.HMT.1.0.c5-00481-QCAHMTSWPL_V1.0_V2.0_SILICONZ-3 Signed-off-by: Sriram R <quic_srirrama@quicinc.com> Signed-off-by: Raj Kumar Bhagat <quic_rajkbhag@quicinc.com> Acked-by: Jeff Johnson <quic_jjohnson@quicinc.com> Signed-off-by: Kalle Valo <quic_kvalo@quicinc.com> Link: https://msgid.link/20240129065724.2310207-2-quic_rajkbhag@quicinc.com
This commit is contained in:
@@ -6153,6 +6153,11 @@ ath12k_mac_vdev_start_restart(struct ath12k_vif *arvif,
|
||||
arg.pref_tx_streams = ar->num_tx_chains;
|
||||
arg.pref_rx_streams = ar->num_rx_chains;
|
||||
|
||||
/* Fill the MBSSID flags to indicate AP is non MBSSID by default
|
||||
* Corresponding flags would be updated with MBSSID support.
|
||||
*/
|
||||
arg.mbssid_flags = WMI_VDEV_MBSSID_FLAGS_NON_MBSSID_AP;
|
||||
|
||||
if (arvif->vdev_type == WMI_VDEV_TYPE_AP) {
|
||||
arg.ssid = arvif->u.ap.ssid;
|
||||
arg.ssid_len = arvif->u.ap.ssid_len;
|
||||
|
||||
@@ -1024,6 +1024,7 @@ int ath12k_wmi_vdev_start(struct ath12k *ar, struct wmi_vdev_start_req_arg *arg,
|
||||
cmd->regdomain = cpu_to_le32(arg->regdomain);
|
||||
cmd->he_ops = cpu_to_le32(arg->he_ops);
|
||||
cmd->punct_bitmap = cpu_to_le32(arg->punct_bitmap);
|
||||
cmd->mbssid_flags = cpu_to_le32(arg->mbssid_flags);
|
||||
|
||||
if (!restart) {
|
||||
if (arg->ssid) {
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/* SPDX-License-Identifier: BSD-3-Clause-Clear */
|
||||
/*
|
||||
* Copyright (c) 2018-2021 The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2021-2023 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||
* Copyright (c) 2021-2024 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||
*/
|
||||
|
||||
#ifndef ATH12K_WMI_H
|
||||
@@ -2764,6 +2764,10 @@ struct ath12k_wmi_ssid_params {
|
||||
|
||||
#define ATH12K_VDEV_SETUP_TIMEOUT_HZ (5 * HZ)
|
||||
|
||||
enum wmi_vdev_mbssid_flags {
|
||||
WMI_VDEV_MBSSID_FLAGS_NON_MBSSID_AP = BIT(0),
|
||||
};
|
||||
|
||||
struct wmi_vdev_start_request_cmd {
|
||||
__le32 tlv_header;
|
||||
__le32 vdev_id;
|
||||
@@ -2782,7 +2786,7 @@ struct wmi_vdev_start_request_cmd {
|
||||
__le32 cac_duration_ms;
|
||||
__le32 regdomain;
|
||||
__le32 min_data_rate;
|
||||
__le32 mbssid_flags;
|
||||
__le32 mbssid_flags; /* uses enum wmi_vdev_mbssid_flags */
|
||||
__le32 mbssid_tx_vdev_id;
|
||||
__le32 eht_ops;
|
||||
__le32 punct_bitmap;
|
||||
|
||||
Reference in New Issue
Block a user