qcacmn: Changes for PER based roaming
DUT should be able to roam to a better access point if current
AP is having congestion/packet error.
This roam also devise a new selection logic for candidate
selection which considers channel congestion and AP capabilities.
Change-Id: I6cffbf0de059a218e971be32fbdc1a0092ceea9d
CRs-Fixed: 1090934
diff --git a/wmi_unified_param.h b/wmi_unified_param.h
index dc525be..1376c6f 100644
--- a/wmi_unified_param.h
+++ b/wmi_unified_param.h
@@ -6950,6 +6950,45 @@
};
/**
+ * struct wmi_per_roam_config - per based roaming parameters
+ * @enable: if PER based roaming is enabled/disabled
+ * @tx_high_rate_thresh: high rate threshold at which PER based
+ * roam will stop in tx path
+ * @rx_high_rate_thresh: high rate threshold at which PER based
+ * roam will stop in rx path
+ * @tx_low_rate_thresh: rate below which traffic will be considered
+ * for PER based roaming in Tx path
+ * @rx_low_rate_thresh: rate below which traffic will be considered
+ * for PER based roaming in Tx path
+ * @tx_rate_thresh_percnt: % above which when traffic is below low_rate_thresh
+ * will be considered for PER based scan in tx path
+ * @rx_rate_thresh_percnt: % above which when traffic is below low_rate_thresh
+ * will be considered for PER based scan in rx path
+ * @per_rest_time: time for which PER based roam will wait once it
+ * issues a roam scan.
+ */
+struct wmi_per_roam_config {
+ uint32_t enable;
+ uint32_t tx_high_rate_thresh;
+ uint32_t rx_high_rate_thresh;
+ uint32_t tx_low_rate_thresh;
+ uint32_t rx_low_rate_thresh;
+ uint32_t tx_rate_thresh_percnt;
+ uint32_t rx_rate_thresh_percnt;
+ uint32_t per_rest_time;
+};
+
+/**
+ * struct wmi_per_roam_config_req: PER based roaming config request
+ * @vdev_id: vdev id on which config needs to be set
+ * @per_config: PER config
+ */
+struct wmi_per_roam_config_req {
+ uint8_t vdev_id;
+ struct wmi_per_roam_config per_config;
+};
+
+/**
* struct wmi_fw_dump_seg_req - individual segment details
* @seg_id - segment id.
* @seg_start_addr_lo - lower address of the segment.