Merge "wlan: Use request manager for setPktFilter IOCTL" into wlan-driver.lnx.1.0
diff --git a/CORE/HDD/inc/wlan_hdd_cfg80211.h b/CORE/HDD/inc/wlan_hdd_cfg80211.h
index 369477b..43e9acb 100644
--- a/CORE/HDD/inc/wlan_hdd_cfg80211.h
+++ b/CORE/HDD/inc/wlan_hdd_cfg80211.h
@@ -100,6 +100,13 @@
 #endif
 #endif
 
+/*
+ * Max number of supported csa_counters in beacons
+ * and probe responses. Set to the same value as
+ * IEEE80211_MAX_CSA_COUNTERS_NUM
+ */
+#define WLAN_HDD_MAX_NUM_CSA_COUNTERS 2
+
 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 12, 0)) \
 	|| defined(BACKPORTED_CHANNEL_SWITCH_PRESENT)
 #define CHANNEL_SWITCH_SUPPORTED
diff --git a/CORE/HDD/src/wlan_hdd_cfg80211.c b/CORE/HDD/src/wlan_hdd_cfg80211.c
index 74ce9f5..7960191 100644
--- a/CORE/HDD/src/wlan_hdd_cfg80211.c
+++ b/CORE/HDD/src/wlan_hdd_cfg80211.c
@@ -8989,6 +8989,29 @@
     }
     return 0;
 }
+
+/**
+ * hdd_add_channel_switch_support()- Adds Channel Switch flag if supported
+ * @wiphy: Pointer to the wiphy.
+ *
+ * This Function adds Channel Switch support flag, if channel switch is
+ * supported by kernel.
+ * Return: void.
+ */
+#ifdef CHANNEL_SWITCH_SUPPORTED
+static inline
+void hdd_add_channel_switch_support(struct wiphy *wiphy)
+{
+   wiphy->flags |= WIPHY_FLAG_HAS_CHANNEL_SWITCH;
+   wiphy->max_num_csa_counters = WLAN_HDD_MAX_NUM_CSA_COUNTERS;
+}
+#else
+static inline
+void hdd_add_channel_switch_support(struct wiphy *wiphy)
+{
+}
+#endif
+
 /*
  * FUNCTION: wlan_hdd_cfg80211_init
  * This function is called by hdd_wlan_startup()
@@ -9220,6 +9243,7 @@
     wiphy->max_remain_on_channel_duration = 5000;
 #endif
 
+    hdd_add_channel_switch_support(wiphy);
     wiphy->n_vendor_commands = ARRAY_SIZE(hdd_wiphy_vendor_commands);
     wiphy->vendor_commands = hdd_wiphy_vendor_commands;
     wiphy->vendor_events = wlan_hdd_cfg80211_vendor_events;
diff --git a/riva/inc/wlan_hal_cfg.h b/riva/inc/wlan_hal_cfg.h
index 22367e4..4367e14 100644
--- a/riva/inc/wlan_hal_cfg.h
+++ b/riva/inc/wlan_hal_cfg.h
@@ -282,11 +282,15 @@
 #define QWLAN_HAL_CFG_DISABLE_SCAN_DURING_SCO                224
 #define QWLAN_HAL_CFG_TRIGGER_NULLFRAME_BEFORE_HB            225
 #define QWLAN_HAL_CFG_ENABLE_POWERSAVE_OFFLOAD               226
+#define QWLAN_HAL_CFG_BTC_2M_DYN_LONG_WLAN_LEN               227
+#define QWLAN_HAL_CFG_BTC_2M_DYN_LONG_BT_LEN                 228
+#define QWLAN_HAL_CFG_BTC_2M_DYN_LONG_BT_EXT_LEN             229
+#define QWLAN_HAL_CFG_BTC_2M_DYN_LONG_NUM_BT_EXT             230
 
-#define QWLAN_HAL_CFG_MAX_PARAMS                             227
+#define QWLAN_HAL_CFG_MAX_PARAMS                             231
 
 /* Total number of Integer CFGs. This is used while allocating the memory for TLV */
-#define QWLAN_HAL_CFG_INTEGER_PARAM                     227
+#define QWLAN_HAL_CFG_INTEGER_PARAM                          231
 
 /*-------------------------------------------------------------------------
   Configuration Parameter min, max, defaults
@@ -853,6 +857,26 @@
 #define QWLAN_HAL_CFG_BTC_DHCP_PROT_ON_SCO_MAX 1
 #define QWLAN_HAL_CFG_BTC_DHCP_PROT_ON_SCO_DEF 0
 
+/* QWLAN_HAL_CFG_BTC_2M_DYN_LONG_WLAN_LEN */
+#define QWLAN_HAL_CFG_BTC_2M_DYN_LONG_WLAN_LEN_MIN 15000
+#define QWLAN_HAL_CFG_BTC_2M_DYN_LONG_WLAN_LEN_MAX 55000
+#define QWLAN_HAL_CFG_BTC_2M_DYN_LONG_WLAN_LEN_DEF 35000
+
+/* QWLAN_HAL_CFG_BTC_2M_DYN_LONG_BT_LEN */
+#define QWLAN_HAL_CFG_BTC_2M_DYN_LONG_BT_LEN_MIN 15000
+#define QWLAN_HAL_CFG_BTC_2M_DYN_LONG_BT_LEN_MAX 25000
+#define QWLAN_HAL_CFG_BTC_2M_DYN_LONG_BT_LEN_DEF 25000
+
+/* QWLAN_HAL_CFG_BTC_2M_DYN_LONG_BT_EXT_LEN */
+#define QWLAN_HAL_CFG_BTC_2M_DYN_LONG_BT_EXT_LEN_MIN 5000
+#define QWLAN_HAL_CFG_BTC_2M_DYN_LONG_BT_EXT_LEN_MAX 15000
+#define QWLAN_HAL_CFG_BTC_2M_DYN_LONG_BT_EXT_LEN_DEF 15000
+
+/* QWLAN_HAL_CFG_BTC_2M_DYN_LONG_NUM_BT_EXT */
+#define QWLAN_HAL_CFG_BTC_2M_DYN_LONG_NUM_BT_EXT_MIN 5
+#define QWLAN_HAL_CFG_BTC_2M_DYN_LONG_NUM_BT_EXT_MAX 15
+#define QWLAN_HAL_CFG_BTC_2M_DYN_LONG_NUM_BT_EXT_DEF 15
+
 /* QWLAN_HAL_CFG_ENABLE_UNICAST_FILTER */
 #define QWLAN_HAL_CFG_ENABLE_UNICAST_FILTER_MIN  0
 #define QWLAN_HAL_CFG_ENABLE_UNICAST_FILTER_MAX  1