qcacmn: Modify API to check peer address in global ML ctx

Modify the mlo_mgr_ml_peer_exist() API to accept
pointer to vdev_id of the peer and rename as
mlo_mgr_ml_peer_exist_on_diff_ml_ctx().

The API returns true if the peer address matches on
any vdev which is on different ML dev context, if
match is found on same ML dev context the API will
return false.
If the peer address match is found but the pointer
to peer vdev ID is NULL, the API will return true.

Change-Id: I8045325f31850782551c7468aa1eac7c5f77fd69
CRs-Fixed: 3377752
Dieser Commit ist enthalten in:
Vinod Kumar Pirla
2023-01-10 20:56:12 -08:00
committet von Madan Koyyalamudi
Ursprung 0aacfaccd9
Commit ba7c39769d
2 geänderte Dateien mit 58 neuen und 10 gelöschten Zeilen

Datei anzeigen

@@ -902,16 +902,22 @@ QDF_STATUS wlan_mlo_check_valid_config(struct wlan_mlo_dev_context *ml_dev,
enum QDF_OPMODE opmode);
/**
* mlo_mgr_ml_peer_exist() - Check if MAC address matches any MLD address
* mlo_mgr_ml_peer_exist_on_diff_ml_ctx() - Check if MAC address matches any
* MLD address
* @peer_addr: Address to search for a match
* @peer_vdev_id: vdev ID of peer
*
* The API iterates through all the ML dev ctx in the driver and checks
* if MAC address pointed by @peer_addr matches the MLD address of
* MLD dev or any of the ML peers in the ML dev ctx.
* The API iterates through all the ML dev ctx in the global MLO
* manager to check if MAC address pointed by @peer_addr matches
* the MLD address of any ML dev context or its ML peers.
* If @peer_vdev_id is a valid pointer address, then API returns
* true only if the matching MAC address is not part of the same
* ML dev context.
*
* Return: True if a matching entity is found else false.
*/
bool mlo_mgr_ml_peer_exist(uint8_t *peer_addr);
bool mlo_mgr_ml_peer_exist_on_diff_ml_ctx(uint8_t *peer_addr,
uint8_t *peer_vdev_id);
#else
static inline QDF_STATUS wlan_mlo_mgr_init(void)
{
@@ -931,7 +937,8 @@ wlan_mlo_mgr_update_mld_addr(struct qdf_mac_addr *old_mac,
}
static inline
bool mlo_mgr_ml_peer_exist(uint8_t *peer_addr)
bool mlo_mgr_ml_peer_exist_on_diff_ml_ctx(uint8_t *peer_addr,
uint8_t *peer_vdev_id)
{
return false;
}