qcacmn: Add API to update peer channel width and puncture parameter
Add API to send peer param WMI_PEER_CHWIDTH_PUNCTURE_20MHZ_BITMAP Change-Id: Id05629b12059ff2258e196b3e9aa78f5fb52bda4 CRs-Fixed: 3269745
This commit is contained in:

committed by
Madan Koyyalamudi

szülő
15e2647ec7
commit
cb2c6707f6
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Copyright (c) 2019, 2021 The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2021 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||
* Copyright (c) 2021-2022 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for
|
||||
* any purpose with or without fee is hereby granted, provided that the
|
||||
@@ -346,4 +346,18 @@ QDF_STATUS tgt_vdev_mgr_cdp_vdev_attach(struct vdev_mlme_obj *mlme_obj);
|
||||
*/
|
||||
QDF_STATUS tgt_vdev_mgr_cdp_vdev_detach(struct vdev_mlme_obj *mlme_obj);
|
||||
#endif
|
||||
|
||||
/**
|
||||
* tgt_vdev_peer_set_param_send() - API to send peer param
|
||||
* @vdev: Pointer to object manager VDEV
|
||||
* @peer_mac_addr: pointer to peer mac address
|
||||
* @param_id: peer param id
|
||||
* @param_value: peer param value
|
||||
*
|
||||
* Return: QDF_STATUS
|
||||
*/
|
||||
QDF_STATUS tgt_vdev_peer_set_param_send(struct wlan_objmgr_vdev *vdev,
|
||||
uint8_t *peer_mac_addr,
|
||||
uint32_t param_id,
|
||||
uint32_t param_value);
|
||||
#endif /* __WLAN_VDEV_MGR_TX_OPS_API_H__ */
|
||||
|
@@ -183,4 +183,18 @@ QDF_STATUS wlan_util_vdev_mgr_quiet_offload(
|
||||
struct wlan_objmgr_psoc *psoc,
|
||||
struct vdev_sta_quiet_event *quiet_event);
|
||||
#endif /* WLAN_FEATURE_11BE_MLO */
|
||||
|
||||
/**
|
||||
* wlan_util_vdev_peer_set_param_send() - send peer param
|
||||
* @vdev: Pointer to vdev object.
|
||||
* @peer_mac_addr: peer mac address
|
||||
* @param_id: peer param id
|
||||
* @param_value: peer param value
|
||||
*
|
||||
* Return: QDF_STATUS
|
||||
*/
|
||||
QDF_STATUS wlan_util_vdev_peer_set_param_send(struct wlan_objmgr_vdev *vdev,
|
||||
uint8_t *peer_mac_addr,
|
||||
uint32_t param_id,
|
||||
uint32_t param_value);
|
||||
#endif /* __WLAN_VDEV_MGR_UTILS_API_H__ */
|
||||
|
@@ -23,6 +23,16 @@
|
||||
#define _WLAN_VDEV_MLME_API_H_
|
||||
|
||||
#include <wlan_ext_mlme_obj_types.h>
|
||||
|
||||
/**
|
||||
* wlan_mlme_peer_param_id - peer param id in mlme layer
|
||||
* @WLAN_MLME_PEER_BW_PUNCTURE: update puncture 20 MHz bitmap
|
||||
*/
|
||||
enum wlan_mlme_peer_param_id {
|
||||
WLAN_MLME_PEER_BW_PUNCTURE,
|
||||
WLAN_MLME_PEER_MAX
|
||||
};
|
||||
|
||||
/**
|
||||
* wlan_vdev_mlme_get_cmpt_obj - Retrieves MLME component object
|
||||
* from VDEV object
|
||||
|
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Copyright (c) 2019-2021 The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2021 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||
* Copyright (c) 2021-2022 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for
|
||||
* any purpose with or without fee is hereby granted, provided that the
|
||||
@@ -792,3 +792,29 @@ QDF_STATUS tgt_vdev_mgr_send_set_mac_addr(struct qdf_mac_addr mac_addr,
|
||||
return status;
|
||||
}
|
||||
#endif
|
||||
|
||||
QDF_STATUS tgt_vdev_peer_set_param_send(struct wlan_objmgr_vdev *vdev,
|
||||
uint8_t *peer_mac_addr,
|
||||
uint32_t param_id,
|
||||
uint32_t param_value)
|
||||
{
|
||||
struct wlan_lmac_if_mlme_tx_ops *txops;
|
||||
uint8_t vdev_id;
|
||||
QDF_STATUS status;
|
||||
|
||||
vdev_id = wlan_vdev_get_id(vdev);
|
||||
txops = wlan_vdev_mlme_get_lmac_txops(vdev);
|
||||
if (!txops || !txops->vdev_peer_set_param_send) {
|
||||
mlme_err("VDEV_%d: No Tx Ops", vdev_id);
|
||||
return QDF_STATUS_E_INVAL;
|
||||
}
|
||||
|
||||
status = txops->vdev_peer_set_param_send(vdev, peer_mac_addr,
|
||||
param_id, param_value);
|
||||
if (QDF_IS_STATUS_ERROR(status))
|
||||
mlme_err("VDEV_%d: peer " QDF_MAC_ADDR_FMT " param_id %d param_value %d Error %d",
|
||||
vdev_id, QDF_MAC_ADDR_REF(peer_mac_addr), param_id,
|
||||
param_value, status);
|
||||
|
||||
return status;
|
||||
}
|
||||
|
@@ -892,3 +892,12 @@ QDF_STATUS wlan_util_vdev_mgr_quiet_offload(
|
||||
return QDF_STATUS_SUCCESS;
|
||||
}
|
||||
#endif /* WLAN_FEATURE_11BE_MLO */
|
||||
|
||||
QDF_STATUS wlan_util_vdev_peer_set_param_send(struct wlan_objmgr_vdev *vdev,
|
||||
uint8_t *peer_mac_addr,
|
||||
uint32_t param_id,
|
||||
uint32_t param_value)
|
||||
{
|
||||
return tgt_vdev_peer_set_param_send(vdev, peer_mac_addr,
|
||||
param_id, param_value);
|
||||
}
|
||||
|
Reference in New Issue
Block a user