wifi: nl80211: send MLO links channel info in GET_INTERFACE

Currently, MLO link level channel information not sent to
userspace when NL80211_CMD_GET_INTERFACE requested on MLD.

Add support to send channel information for all valid links
for NL80211_CMD_GET_INTERFACE request.

Signed-off-by: Veerendranath Jakkam <quic_vjakkam@quicinc.com>
Link: https://lore.kernel.org/r/20220722131000.3437894-1-quic_vjakkam@quicinc.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
This commit is contained in:
Veerendranath Jakkam 2022-07-22 18:40:00 +05:30 committed by Johannes Berg
parent 6b75f133fe
commit 7a77cd47ec

View File

@ -3865,12 +3865,19 @@ static int nl80211_send_iface(struct sk_buff *msg, u32 portid, u32 seq, int flag
for_each_valid_link(wdev, link_id) {
struct nlattr *link = nla_nest_start(msg, link_id + 1);
struct cfg80211_chan_def chandef = {};
int ret;
if (nla_put_u8(msg, NL80211_ATTR_MLO_LINK_ID, link_id))
goto nla_put_failure;
if (nla_put(msg, NL80211_ATTR_MAC, ETH_ALEN,
wdev->links[link_id].addr))
goto nla_put_failure;
ret = rdev_get_channel(rdev, wdev, link_id, &chandef);
if (ret == 0 && nl80211_send_chandef(msg, &chandef))
goto nla_put_failure;
nla_nest_end(msg, link);
}