qcacld-3.0: Add a wrapper for WIPHY_FLAG_SUPPORTS_SCHED_SCAN
WIPHY_FLAG_SUPPORTS_SCHED_SCAN is removed in Linux kernel versions 4.12+ in favor of proper multiple scheduled scan support. Add conditional compilation to set the appropriate wiphy state based on which kernel version is being compiled against. Change-Id: I5e688f085b1c13fec0b4f42c5da82411eae08c03 CRs-Fixed: 2093945
Этот коммит содержится в:

коммит произвёл
snandini

родитель
ff938a2f73
Коммит
52ba1ce2d1
@@ -11861,6 +11861,23 @@ const struct wiphy_vendor_command hdd_wiphy_vendor_commands[] = {
|
||||
},
|
||||
};
|
||||
|
||||
#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 12, 0)
|
||||
static inline void
|
||||
hdd_wiphy_set_max_sched_scans(struct wiphy *wiphy, uint8_t max_scans)
|
||||
{
|
||||
if (max_scans == 0)
|
||||
wiphy->flags &= ~WIPHY_FLAG_SUPPORTS_SCHED_SCAN;
|
||||
else
|
||||
wiphy->flags |= WIPHY_FLAG_SUPPORTS_SCHED_SCAN;
|
||||
}
|
||||
#else
|
||||
static inline void
|
||||
hdd_wiphy_set_max_sched_scans(struct wiphy *wiphy, uint8_t max_scans)
|
||||
{
|
||||
wiphy->max_sched_scan_reqs = max_scans;
|
||||
}
|
||||
#endif /* KERNEL_VERSION(4, 12, 0) */
|
||||
|
||||
#if ((LINUX_VERSION_CODE > KERNEL_VERSION(4, 4, 0)) || \
|
||||
defined(CFG80211_MULTI_SCAN_PLAN_BACKPORT)) && \
|
||||
defined(FEATURE_WLAN_SCAN_PNO)
|
||||
@@ -11875,7 +11892,7 @@ static void hdd_config_sched_scan_plans_to_wiphy(struct wiphy *wiphy,
|
||||
struct hdd_config *config)
|
||||
{
|
||||
if (config->configPNOScanSupport) {
|
||||
wiphy->flags |= WIPHY_FLAG_SUPPORTS_SCHED_SCAN;
|
||||
hdd_wiphy_set_max_sched_scans(wiphy, 1);
|
||||
wiphy->max_sched_scan_ssids = SCAN_PNO_MAX_SUPP_NETWORKS;
|
||||
wiphy->max_match_sets = SCAN_PNO_MAX_SUPP_NETWORKS;
|
||||
wiphy->max_sched_scan_ie_len = SIR_MAC_MAX_IE_LENGTH;
|
||||
@@ -12374,7 +12391,7 @@ void wlan_hdd_cfg80211_update_wiphy_caps(struct wiphy *wiphy)
|
||||
* have PNO support.
|
||||
*/
|
||||
if (!pCfg->PnoOffload) {
|
||||
wiphy->flags &= ~WIPHY_FLAG_SUPPORTS_SCHED_SCAN;
|
||||
hdd_wiphy_set_max_sched_scans(wiphy, 0);
|
||||
wiphy->max_sched_scan_ssids = 0;
|
||||
wiphy->max_match_sets = 0;
|
||||
wiphy->max_sched_scan_ie_len = 0;
|
||||
|
Ссылка в новой задаче
Block a user