|
@@ -6685,5 +6685,156 @@ struct encrypt_decrypt_req_params {
|
|
|
uint8_t *data;
|
|
|
};
|
|
|
|
|
|
+/**
|
|
|
+ * struct wmi_host_ppe_threshold -PPE threshold
|
|
|
+ * @numss_m1: NSS - 1
|
|
|
+ * @ru_count: Max RU count
|
|
|
+ * @ppet16_ppet8_ru3_ru0: ppet8 and ppet16 for max num ss
|
|
|
+ */
|
|
|
+#define WMI_HOST_MAX_NUM_SS 8
|
|
|
+struct wmi_host_ppe_threshold {
|
|
|
+ uint32_t numss_m1;
|
|
|
+ uint32_t ru_count;
|
|
|
+ uint32_t ppet16_ppet8_ru3_ru0[WMI_HOST_MAX_NUM_SS];
|
|
|
+};
|
|
|
+
|
|
|
+/**
|
|
|
+ * struct wmi_host_service_ext_param - EXT service base params in event
|
|
|
+ * @default_conc_scan_config_bits: Default concurrenct scan config
|
|
|
+ * @default_fw_config_bits: Default HW config bits
|
|
|
+ * @wmi_host_ppe_threshold ppet: Host PPE threshold struct
|
|
|
+ * @he_cap_info: HE capabality info
|
|
|
+ * @mpdu_density: units are microseconds
|
|
|
+ * @max_bssid_rx_filters: Maximum no of BSSID based RX filters host can program
|
|
|
+ * Value 0 means FW hasn't given any limit to host.
|
|
|
+ * @num_hw_modes: Number of HW modes in event
|
|
|
+ * @num_phy: Number of Phy mode.
|
|
|
+ */
|
|
|
+struct wmi_host_service_ext_param {
|
|
|
+ uint32_t default_conc_scan_config_bits;
|
|
|
+ uint32_t default_fw_config_bits;
|
|
|
+ struct wmi_host_ppe_threshold ppet;
|
|
|
+ uint32_t he_cap_info;
|
|
|
+ uint32_t mpdu_density;
|
|
|
+ uint32_t max_bssid_rx_filters;
|
|
|
+ uint32_t num_hw_modes;
|
|
|
+ uint32_t num_phy;
|
|
|
+};
|
|
|
+
|
|
|
+/**
|
|
|
+ * struct wmi_host_hw_mode_caps - HW mode capabilities in EXT event
|
|
|
+ * @hw_mode_id: identify a particular set of HW characteristics,
|
|
|
+ * as specified by the subsequent fields
|
|
|
+ * @phy_id_map: BIT0 represents phy_id 0, BIT1 represent phy_id 1 and so on
|
|
|
+ */
|
|
|
+struct wmi_host_hw_mode_caps {
|
|
|
+ uint32_t hw_mode_id;
|
|
|
+ uint32_t phy_id_map;
|
|
|
+};
|
|
|
+
|
|
|
+/**
|
|
|
+ * struct wmi_host_mac_phy_caps - Phy caps recvd in EXT service
|
|
|
+ * @hw_mode_id: identify a particular set of HW characteristics,
|
|
|
+ * as specified by the subsequent fields. WMI_MAC_PHY_CAPABILITIES
|
|
|
+ * element must be mapped to its parent WMI_HW_MODE_CAPABILITIES
|
|
|
+ * element using hw_mode_id. No particular ordering of
|
|
|
+ * WMI_MAC_PHY_CAPABILITIES elements should be
|
|
|
+ * assumed, though in practice the elements may always be ordered
|
|
|
+ * by hw_mode_id.
|
|
|
+ * @pdev_id: pdev_id starts with 1. pdev_id 1 => phy_id 0, pdev_id 2 => phy_id 1
|
|
|
+ * @phy_id: Starts with 0
|
|
|
+ * @union of supported modulations
|
|
|
+ * @supported_bands: supported bands, enum WLAN_BAND_CAPABILITY
|
|
|
+ * @ampdu_density: ampdu density 0 for no restriction, 1 for 1/4 us,
|
|
|
+ * 2 for 1/2 us, 3 for 1 us,4 for 2 us, 5 for 4 us,
|
|
|
+ * 6 for 8 us,7 for 16 us
|
|
|
+ * @max_bw_supported_2G: max bw supported 2G, enum wmi_channel_width
|
|
|
+ * @ht_cap_info_2G: WMI HT Capability, WMI_HT_CAP defines
|
|
|
+ * @vht_cap_info_2G: VHT capability info field of 802.11ac, WMI_VHT_CAP defines
|
|
|
+ * @vht_supp_mcs_2G: VHT Supported MCS Set field Rx/Tx same
|
|
|
+ * The max VHT-MCS for n SS subfield (where n = 1,...,8) is encoded as
|
|
|
+ * follows
|
|
|
+ * - 0 indicates support for VHT-MCS 0-7 for n spatial streams
|
|
|
+ * - 1 indicates support for VHT-MCS 0-8 for n spatial streams
|
|
|
+ * - 2 indicates support for VHT-MCS 0-9 for n spatial streams
|
|
|
+ * - 3 indicates that n spatial streams is not supported
|
|
|
+ * @he_cap_info_2G: HE capability info field of 802.11ax, WMI_HE_CAP defines
|
|
|
+ * @he_supp_mcs_2G: HE Supported MCS Set field Rx/Tx same
|
|
|
+ * @tx_chain_mask_2G: Valid Transmit chain mask
|
|
|
+ * @rx_chain_mask_2G: Valid Receive chain mask
|
|
|
+ * @max_bw_supported_5G: max bw supported 5G, enum wmi_channel_width
|
|
|
+ * @ht_cap_info_5G: WMI HT Capability, WMI_HT_CAP defines
|
|
|
+ * @vht_cap_info_5G: VHT capability info field of 802.11ac, WMI_VHT_CAP defines
|
|
|
+ * @vht_supp_mcs_5G: VHT Supported MCS Set field Rx/Tx same
|
|
|
+ * The max VHT-MCS for n SS subfield (where n = 1,...,8) is encoded as
|
|
|
+ * follows
|
|
|
+ * - 0 indicates support for VHT-MCS 0-7 for n spatial streams
|
|
|
+ * - 1 indicates support for VHT-MCS 0-8 for n spatial streams
|
|
|
+ * - 2 indicates support for VHT-MCS 0-9 for n spatial streams
|
|
|
+ * - 3 indicates that n spatial streams is not supported
|
|
|
+ * @he_cap_info_5G: HE capability info field of 802.11ax, WMI_HE_CAP defines
|
|
|
+ * @he_supp_mcs_5G: HE Supported MCS Set field Rx/Tx same
|
|
|
+ * @tx_chain_mask_5G: Valid Transmit chain mask
|
|
|
+ * @rx_chain_mask_5G: Valid Receive chain mask
|
|
|
+ */
|
|
|
+struct wmi_host_mac_phy_caps {
|
|
|
+ uint32_t hw_mode_id;
|
|
|
+ uint32_t pdev_id;
|
|
|
+ uint32_t phy_id;
|
|
|
+ union {
|
|
|
+ uint32_t supports_11b:1,
|
|
|
+ supports_11g:1,
|
|
|
+ supports_11a:1,
|
|
|
+ supports_11n:1,
|
|
|
+ supports_11ac:1,
|
|
|
+ supports_11ax:1;
|
|
|
+ uint32_t supported_flags;
|
|
|
+ };
|
|
|
+ uint32_t supported_bands;
|
|
|
+ uint32_t ampdu_density;
|
|
|
+ uint32_t max_bw_supported_2G;
|
|
|
+ uint32_t ht_cap_info_2G;
|
|
|
+ uint32_t vht_cap_info_2G;
|
|
|
+ uint32_t vht_supp_mcs_2G;
|
|
|
+ uint32_t he_cap_info_2G;
|
|
|
+ uint32_t he_supp_mcs_2G;
|
|
|
+ uint32_t tx_chain_mask_2G;
|
|
|
+ uint32_t rx_chain_mask_2G;
|
|
|
+ uint32_t max_bw_supported_5G;
|
|
|
+ uint32_t ht_cap_info_5G;
|
|
|
+ uint32_t vht_cap_info_5G;
|
|
|
+ uint32_t vht_supp_mcs_5G;
|
|
|
+ uint32_t he_cap_info_5G;
|
|
|
+ uint32_t he_supp_mcs_5G;
|
|
|
+ uint32_t tx_chain_mask_5G;
|
|
|
+ uint32_t rx_chain_mask_5G;
|
|
|
+};
|
|
|
+
|
|
|
+/**
|
|
|
+ * struct WMI_HOST_HAL_REG_CAPABILITIES_EXT: Below are Reg caps per PHY.
|
|
|
+ * Please note PHY ID starts with 0.
|
|
|
+ * @phy_id: phy id starts with 0.
|
|
|
+ * @eeprom_reg_domain: regdomain value specified in EEPROM
|
|
|
+ * @eeprom_reg_domain_ext: regdomain
|
|
|
+ * @regcap1: CAP1 capabilities bit map, see REGDMN_CAP1_ defines
|
|
|
+ * @regcap2: REGDMN EEPROM CAP, see REGDMN_EEPROM_EEREGCAP_ defines
|
|
|
+ * @wireless_modes: REGDMN MODE, see REGDMN_MODE_ enum
|
|
|
+ * @low_2ghz_chan: 2G channel low
|
|
|
+ * @high_2ghz_chan: 2G channel High
|
|
|
+ * @low_5ghz_chan: 5G channel low
|
|
|
+ * @high_5ghz_chan: 5G channel High
|
|
|
+ */
|
|
|
+struct WMI_HOST_HAL_REG_CAPABILITIES_EXT {
|
|
|
+ uint32_t phy_id;
|
|
|
+ uint32_t eeprom_reg_domain;
|
|
|
+ uint32_t eeprom_reg_domain_ext;
|
|
|
+ uint32_t regcap1;
|
|
|
+ uint32_t regcap2;
|
|
|
+ uint32_t wireless_modes;
|
|
|
+ uint32_t low_2ghz_chan;
|
|
|
+ uint32_t high_2ghz_chan;
|
|
|
+ uint32_t low_5ghz_chan;
|
|
|
+ uint32_t high_5ghz_chan;
|
|
|
+};
|
|
|
#endif /* _WMI_UNIFIED_PARAM_H_ */
|
|
|
|