|
@@ -2512,8 +2512,208 @@ enum hdd_dot11_mode {
|
|
|
#define CFG_IBSS_PS_1RX_CHAIN_IN_ATIM_WINDOW_MAX (1)
|
|
|
#define CFG_IBSS_PS_1RX_CHAIN_IN_ATIM_WINDOW_DEFAULT (0)
|
|
|
|
|
|
+/*
|
|
|
+ * <ini>
|
|
|
+ * wlm_latency_enable - WLM latency Enable
|
|
|
+ *
|
|
|
+ * @min: 0
|
|
|
+ * @max: 1
|
|
|
+ * @default: 0
|
|
|
+ *
|
|
|
+ * 0 - disable
|
|
|
+ * 1 - enable
|
|
|
+ *
|
|
|
+ * </ini>
|
|
|
+ */
|
|
|
+#define CFG_LATENCY_ENABLE_NAME "wlm_latency_enable"
|
|
|
+#define CFG_LATENCY_ENABLE_MIN (0)
|
|
|
+#define CFG_LATENCY_ENABLE_MAX (1)
|
|
|
+#define CFG_LATENCY_ENABLE_DEFAULT (0)
|
|
|
|
|
|
+/*
|
|
|
+ * <ini>
|
|
|
+ * wlm_latency_level - WLM latency level
|
|
|
+ * Define 4 latency level to gain latency
|
|
|
+ *
|
|
|
+ * @min: 0
|
|
|
+ * @max: 3
|
|
|
+ * @defalut: 0
|
|
|
+ *
|
|
|
+ * 0 - normal
|
|
|
+ * 1 - moderate
|
|
|
+ * 2 - low
|
|
|
+ * 3 - ultralow
|
|
|
+ *
|
|
|
+ * </ini>
|
|
|
+ */
|
|
|
+#define CFG_LATENCY_LEVEL_NAME "wlm_latency_level"
|
|
|
+#define CFG_LATENCY_LEVEL_MIN (0)
|
|
|
+#define CFG_LATENCY_LEVEL_MAX (3)
|
|
|
+#define CFG_LATENCY_LEVEL_DEFAULT (0)
|
|
|
|
|
|
+/*
|
|
|
+ * <ini>
|
|
|
+ * wlm_latency_flags_normal - WLM flags setting for normal level
|
|
|
+ *
|
|
|
+ * @min: 0x0
|
|
|
+ * @max: 0xffffffff
|
|
|
+ * @defalut: 0x0
|
|
|
+ *
|
|
|
+ * |31 12| 11 | 10 |9 8|7 6|5 4|3 2| 1 | 0 |
|
|
|
+ * +------+------+------+------+------+------+------+-----+-----+
|
|
|
+ * | RSVD | SSLP | CSLP | RSVD | Roam | RSVD | DWLT | DFS | SUP |
|
|
|
+ * +------+-------------+-------------+-------------------------+
|
|
|
+ * | WAL | PS | Roam | Scan |
|
|
|
+ *
|
|
|
+ * bit 0: Avoid scan request from HLOS if setting
|
|
|
+ * bit 1: Skip DFS channel SCAN if setting
|
|
|
+ * bit 2-3: Define policy of dwell time/duration for each foreign channel
|
|
|
+ * (b2 b3)
|
|
|
+ * (0 0 ): Default scan dwell time
|
|
|
+ * (0 1 ): Reserve
|
|
|
+ * (1 0 ): Shrink off channel dwell time
|
|
|
+ * (1 1 ): Reserve
|
|
|
+ * bit 4-5: Reserve for scan
|
|
|
+ * bit 6-7: Define roaming policy
|
|
|
+ * (b6 b7)
|
|
|
+ * (0 0 ): Default roaming behavior, allow roaming in all scenarios
|
|
|
+ * (0 1 ): Disallow all roaming
|
|
|
+ * (1 0 ): Allow roaming when final bmissed
|
|
|
+ * (1 1 ): Reserve
|
|
|
+ * bit 8-9: Reserve for roaming
|
|
|
+ * bit 10: Disable css power collapse if setting
|
|
|
+ * bit 11: Disable sys sleep if setting
|
|
|
+ * bit 12-31: Reserve for future useage
|
|
|
+ *
|
|
|
+ * </ini>
|
|
|
+ */
|
|
|
+#define CFG_LATENCY_FLAGS_NORMAL_NAME "wlm_latency_flags_normal"
|
|
|
+#define CFG_LATENCY_FLAGS_NORMAL_MIN (0x0)
|
|
|
+#define CFG_LATENCY_FLAGS_NORMAL_MAX (0xffffffff)
|
|
|
+#define CFG_LATENCY_FLAGS_NORMAL_DEFAULT (0x0)
|
|
|
+
|
|
|
+/*
|
|
|
+ * <ini>
|
|
|
+ * wlm_latency_flags_moderate - WLM flags setting for moderate level
|
|
|
+ *
|
|
|
+ * @min: 0x0
|
|
|
+ * @max: 0xffffffff
|
|
|
+ * @defalut: 0x8
|
|
|
+ *
|
|
|
+ * |31 12| 11 | 10 |9 8|7 6|5 4|3 2| 1 | 0 |
|
|
|
+ * +------+------+------+------+------+------+------+-----+-----+
|
|
|
+ * | RSVD | SSLP | CSLP | RSVD | Roam | RSVD | DWLT | DFS | SUP |
|
|
|
+ * +------+-------------+-------------+-------------------------+
|
|
|
+ * | WAL | PS | Roam | Scan |
|
|
|
+ *
|
|
|
+ * bit 0: Avoid scan request from HLOS if setting
|
|
|
+ * bit 1: Skip DFS channel SCAN if setting
|
|
|
+ * bit 2-3: Define policy of dwell time/duration for each foreign channel
|
|
|
+ * (b2 b3)
|
|
|
+ * (0 0 ): Default scan dwell time
|
|
|
+ * (0 1 ): Reserve
|
|
|
+ * (1 0 ): Shrink off channel dwell time
|
|
|
+ * (1 1 ): Reserve
|
|
|
+ * bit 4-5: Reserve for scan
|
|
|
+ * bit 6-7: Define roaming policy
|
|
|
+ * (b6 b7)
|
|
|
+ * (0 0 ): Default roaming behavior, allow roaming in all scenarios
|
|
|
+ * (0 1 ): Disallow all roaming
|
|
|
+ * (1 0 ): Allow roaming when final bmissed
|
|
|
+ * (1 1 ): Reserve
|
|
|
+ * bit 8-9: Reserve for roaming
|
|
|
+ * bit 10: Disable css power collapse if setting
|
|
|
+ * bit 11: Disable sys sleep if setting
|
|
|
+ * bit 12-31: Reserve for future useage
|
|
|
+ *
|
|
|
+ * </ini>
|
|
|
+ */
|
|
|
+#define CFG_LATENCY_FLAGS_MODERATE_NAME "wlm_latency_flags_moderate"
|
|
|
+#define CFG_LATENCY_FLAGS_MODERATE_MIN (0x0)
|
|
|
+#define CFG_LATENCY_FLAGS_MODERATE_MAX (0xffffffff)
|
|
|
+#define CFG_LATENCY_FLAGS_MODERATE_DEFAULT (0x8)
|
|
|
+
|
|
|
+/*
|
|
|
+ * <ini>
|
|
|
+ * wlm_latency_flags_low - WLM flags setting for low level
|
|
|
+ *
|
|
|
+ * @min: 0x0
|
|
|
+ * @max: 0xffffffff
|
|
|
+ * @defalut: 0xa
|
|
|
+ *
|
|
|
+ * |31 12| 11 | 10 |9 8|7 6|5 4|3 2| 1 | 0 |
|
|
|
+ * +------+------+------+------+------+------+------+-----+-----+
|
|
|
+ * | RSVD | SSLP | CSLP | RSVD | Roam | RSVD | DWLT | DFS | SUP |
|
|
|
+ * +------+-------------+-------------+-------------------------+
|
|
|
+ * | WAL | PS | Roam | Scan |
|
|
|
+ *
|
|
|
+ * bit 0: Avoid scan request from HLOS if setting
|
|
|
+ * bit 1: Skip DFS channel SCAN if setting
|
|
|
+ * bit 2-3: Define policy of dwell time/duration for each foreign channel
|
|
|
+ * (b2 b3)
|
|
|
+ * (0 0 ): Default scan dwell time
|
|
|
+ * (0 1 ): Reserve
|
|
|
+ * (1 0 ): Shrink off channel dwell time
|
|
|
+ * (1 1 ): Reserve
|
|
|
+ * bit 4-5: Reserve for scan
|
|
|
+ * bit 6-7: Define roaming policy
|
|
|
+ * (b6 b7)
|
|
|
+ * (0 0 ): Default roaming behavior, allow roaming in all scenarios
|
|
|
+ * (0 1 ): Disallow all roaming
|
|
|
+ * (1 0 ): Allow roaming when final bmissed
|
|
|
+ * (1 1 ): Reserve
|
|
|
+ * bit 8-9: Reserve for roaming
|
|
|
+ * bit 10: Disable css power collapse if setting
|
|
|
+ * bit 11: Disable sys sleep if setting
|
|
|
+ * bit 12-31: Reserve for future useage
|
|
|
+ *
|
|
|
+ * </ini>
|
|
|
+ */
|
|
|
+#define CFG_LATENCY_FLAGS_LOW_NAME "wlm_latency_flags_low"
|
|
|
+#define CFG_LATENCY_FLAGS_LOW_MIN (0x0)
|
|
|
+#define CFG_LATENCY_FLAGS_LOW_MAX (0xffffffff)
|
|
|
+#define CFG_LATENCY_FLAGS_LOW_DEFAULT (0xa)
|
|
|
+
|
|
|
+/*
|
|
|
+ * <ini>
|
|
|
+ * wlm_latency_flags_ultralow - WLM flags setting for ultralow level
|
|
|
+ *
|
|
|
+ * @min: 0x0
|
|
|
+ * @max: 0xffffffff
|
|
|
+ * @defalut: 0xc8a
|
|
|
+ *
|
|
|
+ * |31 12| 11 | 10 |9 8|7 6|5 4|3 2| 1 | 0 |
|
|
|
+ * +------+------+------+------+------+------+------+-----+-----+
|
|
|
+ * | RSVD | SSLP | CSLP | RSVD | Roam | RSVD | DWLT | DFS | SUP |
|
|
|
+ * +------+-------------+-------------+-------------------------+
|
|
|
+ * | WAL | PS | Roam | Scan |
|
|
|
+ *
|
|
|
+ * bit 0: Avoid scan request from HLOS if setting
|
|
|
+ * bit 1: Skip DFS channel SCAN if setting
|
|
|
+ * bit 2-3: Define policy of dwell time/duration for each foreign channel
|
|
|
+ * (b2 b3)
|
|
|
+ * (0 0 ): Default scan dwell time
|
|
|
+ * (0 1 ): Reserve
|
|
|
+ * (1 0 ): Shrink off channel dwell time
|
|
|
+ * (1 1 ): Reserve
|
|
|
+ * bit 4-5: Reserve for scan
|
|
|
+ * bit 6-7: Define roaming policy
|
|
|
+ * (b6 b7)
|
|
|
+ * (0 0 ): Default roaming behavior, allow roaming in all scenarios
|
|
|
+ * (0 1 ): Disallow all roaming
|
|
|
+ * (1 0 ): Allow roaming when final bmissed
|
|
|
+ * (1 1 ): Reserve
|
|
|
+ * bit 8-9: Reserve for roaming
|
|
|
+ * bit 10: Disable css power collapse if setting
|
|
|
+ * bit 11: Disable sys sleep if setting
|
|
|
+ * bit 12-31: Reserve for future useage
|
|
|
+ *
|
|
|
+ * </ini>
|
|
|
+ */
|
|
|
+#define CFG_LATENCY_FLAGS_ULTRALOW_NAME "wlm_latency_flags_ultralow"
|
|
|
+#define CFG_LATENCY_FLAGS_ULTRALOW_MIN (0x0)
|
|
|
+#define CFG_LATENCY_FLAGS_ULTRALOW_MAX (0xffffffff)
|
|
|
+#define CFG_LATENCY_FLAGS_ULTRALOW_DEFAULT (0xc8a)
|
|
|
|
|
|
#define CFG_INTF0_MAC_ADDR_NAME "Intf0MacAddress"
|
|
|
#define CFG_INTF0_MAC_ADDR_MIN "000000000000"
|
|
@@ -14445,6 +14645,12 @@ struct hdd_config {
|
|
|
uint32_t oce_wan_score_slots15_to_12;
|
|
|
bool enable_scoring_for_roam;
|
|
|
bool is_fils_enabled;
|
|
|
+ uint16_t wlm_latency_enable;
|
|
|
+ uint16_t wlm_latency_level;
|
|
|
+ uint32_t wlm_latency_flags_normal;
|
|
|
+ uint32_t wlm_latency_flags_moderate;
|
|
|
+ uint32_t wlm_latency_flags_low;
|
|
|
+ uint32_t wlm_latency_flags_ultralow;
|
|
|
/* mbo related thresholds */
|
|
|
int8_t mbo_candidate_rssi_thres;
|
|
|
int8_t mbo_current_rssi_thres;
|