diff options
author | PixelBot AutoMerger <android-nexus-securitybot@system.gserviceaccount.com> | 2023-03-12 18:41:39 -0700 |
---|---|---|
committer | SecurityBot <android-nexus-securitybot@system.gserviceaccount.com> | 2023-03-12 18:41:39 -0700 |
commit | 59911cd587ebce115850e3210e559e27739d5924 (patch) | |
tree | d6fe8f11f9fef4f9b7a2383affadeed9e453b1f6 | |
parent | 99d6381fb6d139529e69b079baf4ba1ffe556cb1 (diff) | |
parent | f099d4fa5c9c83f8146c7d1507754f4d72dd72da (diff) | |
download | bcm4389-59911cd587ebce115850e3210e559e27739d5924.tar.gz |
Merge android13-gs-pixel-5.10-tm-qpr3 into android13-gs-pixel-5.10-udcandroid-u-beta-2_r0.4android-u-beta-2_r0.3android-u-beta-2_r0.2android-u-beta-1_r0.5android-u-beta-1_r0.4android-u-beta-1_r0.3android-gs-raviole-5.10-u-beta1android-gs-pantah-5.10-u-beta1android-gs-bluejay-5.10-u-beta1
SBMerger: 478053055
Change-Id: If5f2ee6176e4f2291bdbf1cba5d3c83eccc8d1ed
Signed-off-by: SecurityBot <android-nexus-securitybot@system.gserviceaccount.com>
-rw-r--r-- | Kbuild | 9 | ||||
-rw-r--r-- | dhd_debug.c | 4 | ||||
-rw-r--r-- | wl_cfg80211.c | 6 | ||||
-rw-r--r-- | wl_cfgscan.c | 19 |
4 files changed, 26 insertions, 12 deletions
@@ -384,9 +384,9 @@ DHDCFLAGS += -DWL_P2P_RAND #Custom Mapping of DSCP to User Priority DHDCFLAGS += -DWL_CUSTOM_MAPPING_OF_DSCP # Enable below define for production -# ifneq ($(CONFIG_SOC_GOOGLE),) -# DHDCFLAGS += -DMACADDR_PROVISION_ENFORCED -# endif +ifneq ($(CONFIG_SOC_GOOGLE),) +DHDCFLAGS += -DMACADDR_PROVISION_ENFORCED +endif ifneq ($(CONFIG_BCMDHD_PCIE),) DHDCFLAGS += -DDHD_WAKE_STATUS endif @@ -947,6 +947,9 @@ else ifneq ($(CONFIG_ARCH_HISI),) # Allow wl event forwarding as network packet DHDCFLAGS += -DWL_EVENT_ENAB + # Enable memdump for logset beyond range only internal builds + DHDCFLAGS += -DDHD_LOGSET_BEYOND_MEMDUMP + ifneq ($(CONFIG_BCMDHD_PCIE),) # LB RXP Flow control to avoid OOM DHDCFLAGS += -DLB_RXP_STOP_THR=200 -DLB_RXP_STRT_THR=199 diff --git a/dhd_debug.c b/dhd_debug.c index a7f4933..72e9689 100644 --- a/dhd_debug.c +++ b/dhd_debug.c @@ -1129,6 +1129,7 @@ dhd_dbg_msgtrace_log_parser(dhd_pub_t *dhdp, void *event_data, if (logset >= event_log_max_sets) { DHD_ERROR(("%s logset: %d max: %d out of range queried: %d\n", __FUNCTION__, logset, event_log_max_sets, event_log_max_sets_queried)); +#ifdef DHD_LOGSET_BEYOND_MEMDUMP #ifdef DHD_FW_COREDUMP if (event_log_max_sets_queried && !dhd_memdump_is_scheduled(dhdp)) { DHD_ERROR(("%s: collect socram for DUMP_TYPE_LOGSET_BEYOND_RANGE\n", @@ -1137,6 +1138,9 @@ dhd_dbg_msgtrace_log_parser(dhd_pub_t *dhdp, void *event_data, dhd_bus_mem_dump(dhdp); } #endif /* DHD_FW_COREDUMP */ +#else + goto exit; +#endif /* DHD_LOGSET_BEYOND_MEMDUMP */ } block = ltoh16(*((uint16 *)(data + 2))); diff --git a/wl_cfg80211.c b/wl_cfg80211.c index c64d536..c26e437 100644 --- a/wl_cfg80211.c +++ b/wl_cfg80211.c @@ -6584,11 +6584,15 @@ wl_handle_assoc_hints(struct bcm_cfg80211 *cfg, struct net_device *dev, WL_DBG(("fw_ap_select:%d skip_hints:%d\n", fw_ap_select, skip_hints)); #endif /* WL_SKIP_CONNECT_HINTS */ + if (IS_P2P_GC(dev->ieee80211_ptr)) { + skip_hints = false; + } + /* Use bssid_hint if hints are allowed and if its unicast addr */ if (!skip_hints && sme->bssid_hint && !ETHER_ISBCAST(sme->bssid_hint)) { WL_INFORM_MEM(("bssid_hint "MACDBG" \n", MAC2STRDBG(sme->bssid_hint))); info->targeted_join = true; - if (cfg->join_iovar_ver) { + if (cfg->join_iovar_ver && IS_STA_IFACE(ndev_to_wdev(dev))) { /* Firmware supports bssid_hint feature */ info->bssid_hint = true; } diff --git a/wl_cfgscan.c b/wl_cfgscan.c index d665851..ec57136 100644 --- a/wl_cfgscan.c +++ b/wl_cfgscan.c @@ -6519,7 +6519,8 @@ bool wl_check_active_2g_chan(struct bcm_cfg80211 *cfg, drv_acs_params_t *paramet #ifdef WL_CELLULAR_CHAN_AVOID if (wl_cellavoid_mandatory_isset(cfg->cellavoid_info, NL80211_IFTYPE_AP) && !wl_cellavoid_is_safe(cfg->cellavoid_info, sta_chanspec)) { - WL_INFORM_MEM(("Not allow unsafe channel and mandatory chspec:0x%x\n", + WL_INFORM_MEM(( + "Not allow unsafe channel and mandatory chspec:0x%x\n", sta_chanspec)); goto exit; } @@ -7045,11 +7046,14 @@ wl_acs_check_scc(struct bcm_cfg80211 *cfg, drv_acs_params_t *parameter, */ if (scc == FALSE && CHSPEC_IS2G(sta_chanspec)) { #ifdef WL_CELLULAR_CHAN_AVOID - scc = wl_cellavoid_operation_allowed(cfg->cellavoid_info, - sta_chanspec, NL80211_IFTYPE_AP); - if (scc == FALSE) { - WL_INFORM_MEM(("Not allow unsafe channel and mandatory chspec:0x%x\n", - sta_chanspec)); + if (!wl_is_chanspec_restricted(cfg, sta_chanspec)) { + scc = wl_cellavoid_operation_allowed(cfg->cellavoid_info, + sta_chanspec, NL80211_IFTYPE_AP); + if (scc == FALSE) { + WL_INFORM_MEM(( + "Not allow unsafe channel and mandatory chspec:0x%x\n", + sta_chanspec)); + } } #endif /* WL_CELLULAR_CHAN_AVOID */ } @@ -7129,8 +7133,7 @@ wl_handle_acs_concurrency_cases(struct bcm_cfg80211 *cfg, drv_acs_params_t *para bool scc_case = false; u32 sta_band = CHSPEC_TO_WLC_BAND(chspec); if (sta_band == WLC_BAND_2G) { - if (wl_is_chanspec_restricted(cfg, chspec) || - (parameter->freq_bands & (WLC_BAND_5G | WLC_BAND_6G))) { + if (parameter->freq_bands & (WLC_BAND_5G | WLC_BAND_6G)) { /* Remove the 2g band from incoming ACS bands */ parameter->freq_bands &= ~WLC_BAND_2G; } else if (wl_acs_check_scc(cfg, parameter, chspec, qty, pList)) { |