From 5e738bd346e737c11ee0ac4abd49768d0adfa86e Mon Sep 17 00:00:00 2001 From: shilei-hihope Date: Mon, 3 Apr 2023 12:00:42 +0800 Subject: [PATCH] p2p 15 addresses Signed-off-by: shilei-hihope --- linux-5.10/rk3568_patch/kernel.patch | 27 +++++++++++++++++++++++---- 1 file changed, 23 insertions(+), 4 deletions(-) diff --git a/linux-5.10/rk3568_patch/kernel.patch b/linux-5.10/rk3568_patch/kernel.patch index 8470452..7533444 100644 --- a/linux-5.10/rk3568_patch/kernel.patch +++ b/linux-5.10/rk3568_patch/kernel.patch @@ -1167857,10 +1167857,10 @@ index 000000000..ff10499ff + diff --git a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_cfg80211.c b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_cfg80211.c new file mode 100755 -index 000000000..10e2ebb2a +index 000000000000..1534f3919a3e --- /dev/null +++ b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_cfg80211.c -@@ -0,0 +1,25020 @@ +@@ -0,0 +1,25039 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * Linux cfg80211 driver @@ -1170619,11 +1170619,13 @@ index 000000000..10e2ebb2a + WL_DBG(("%s:Mac addr" MACDBG "\n", + __FUNCTION__, MAC2STRDBG(mac_addr))); + -+ if ((wl_iftype == WL_IF_TYPE_P2P_DISC) || (wl_iftype == WL_IF_TYPE_AP) || -+ (wl_iftype == WL_IF_TYPE_P2P_GO) || (wl_iftype == WL_IF_TYPE_P2P_GC)) { ++ if ((wl_iftype == WL_IF_TYPE_P2P_DISC) || (wl_iftype == WL_IF_TYPE_AP) ){//|| ++ // (wl_iftype == WL_IF_TYPE_P2P_GO) || (wl_iftype == WL_IF_TYPE_P2P_GC)) { + /* Avoid invoking release mac addr code for interfaces using + * fixed mac addr. + */ ++ WL_ERR(("%s: release Mac addr" MACDBG "\n", ++ __FUNCTION__, MAC2STRDBG(mac_addr))); + return BCME_OK; + } + @@ -1171051,6 +1171053,7 @@ index 000000000..10e2ebb2a + u16 wl_mode; + u16 wl_iftype; + struct net_info *netinfo; ++ u8 mac_addr[ETH_ALEN]; + dhd_pub_t *dhd; + BCM_REFERENCE(dhd); + @@ -1171076,8 +1171079,24 @@ index 000000000..10e2ebb2a + WL_INFORM_MEM(("del vif. wdev cfg_iftype:%d\n", wdev->iftype)); + + wiphy = wdev->wiphy; ++ ++ if ((netinfo = wl_get_netinfo_by_wdev(cfg, wdev)) == NULL) { ++ WL_ERR(("Find netinfo from wdev %p failed\n", wdev)); ++ ret = -ENODEV; ++ goto exit; ++ } ++ ++ if (!wdev->netdev) { ++ WL_ERR(("dead mac ndev null! \n")); ++ } else { ++ /* Disable tx before del */ ++ memcpy(mac_addr, wdev->netdev->dev_addr, ETH_ALEN); ++ } ++ wl_iftype = netinfo->iftype; ++ +#ifdef WL_CFG80211_P2P_DEV_IF + if (wdev->iftype == NL80211_IFTYPE_P2P_DEVICE) { ++ wl_release_vif_macaddr(cfg, mac_addr, wl_iftype); + /* p2p discovery would be de-initialized in stop p2p + * device context/from other virtual i/f creation context + * so netinfo list may not have any node corresponding to -- Gitee