From bedbef8ad3e75a304af6361af235302bcc61d06b Mon Sep 17 00:00:00 2001 From: hc <hc@nodka.com> Date: Tue, 14 May 2024 06:39:01 +0000 Subject: [PATCH] 修改内核路径 --- kernel/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/wldev_common.c | 28 +++++++++++++++++++++------- 1 files changed, 21 insertions(+), 7 deletions(-) diff --git a/kernel/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/wldev_common.c b/kernel/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/wldev_common.c old mode 100644 new mode 100755 index 801d332..9cf13d2 --- a/kernel/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/wldev_common.c +++ b/kernel/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/wldev_common.c @@ -508,16 +508,30 @@ int wldev_set_country( struct net_device *dev, char *country_code, bool notify, int revinfo) { - int error = 0; #if defined(BCMDONGLEHOST) - struct dhd_pub *dhd = dhd_get_pub(dev); + int error = -1; + wl_country_t cspec = {{0}, 0, {0}}; if (!country_code) - return -1; - error = dhd_conf_country(dhd, "country", country_code); - dhd_bus_country_set(dev, &dhd->dhd_cspec, notify); + return error; + + cspec.rev = revinfo; + strlcpy(cspec.country_abbrev, country_code, WL_CCODE_LEN + 1); + strlcpy(cspec.ccode, country_code, WL_CCODE_LEN + 1); + error = dhd_conf_map_country_list(dhd_get_pub(dev), &cspec); + if (error) + dhd_get_customized_country_code(dev, (char *)&cspec.country_abbrev, &cspec); + error = dhd_conf_set_country(dhd_get_pub(dev), &cspec); + if (error < 0) { + WLDEV_ERROR(("%s: set country for %s as %s rev %d failed\n", + __FUNCTION__, country_code, cspec.ccode, cspec.rev)); + return error; + } + dhd_conf_fix_country(dhd_get_pub(dev)); + dhd_conf_get_country(dhd_get_pub(dev), &cspec); + dhd_bus_country_set(dev, &cspec, notify); printf("%s: set country for %s as %s rev %d\n", - __FUNCTION__, country_code, dhd->dhd_cspec.ccode, dhd->dhd_cspec.rev); + __FUNCTION__, country_code, cspec.ccode, cspec.rev); #endif /* defined(BCMDONGLEHOST) */ - return error; + return 0; } -- Gitblit v1.6.2