*
* The attributes used with this subcommand are defined in
* enum qca_wlan_vendor_attr_tx_latency.
+ *
+ * @QCA_NL80211_VENDOR_SUBCMD_REGULATORY_TPC_INFO: Vendor command is used to
+ * query transmit power information on STA interface from the driver for a
+ * connected AP. The attributes included in response are defined in
+ * enum qca_wlan_vendor_attr_tpc_links. In case of MLO STA, multiple links
+ * TPC info may be returned. The information includes regulatory maximum
+ * transmit power limit, AP local power constraint advertised from AP's
+ * Beacon and Probe Response frames. For PSD power mode, the information
+ * includes PSD power levels for each subchannel of operating bandwidth.
+ * The information is driver calculated power limits based on the current
+ * regulatory domain, AP local power constraint, and other IEs. The
+ * information will be set to target. Target will decide the final TX power
+ * based on this and chip specific power conformance test limits (CTL), and
+ * SAR limits.
*/
enum qca_nl80211_vendor_subcmds {
QCA_NL80211_VENDOR_SUBCMD_UNSPEC = 0,
/* 234 - reserved for QCA */
QCA_NL80211_VENDOR_SUBCMD_SDWF_PHY_OPS = 235,
QCA_NL80211_VENDOR_SUBCMD_SDWF_DEV_OPS = 236,
+ QCA_NL80211_VENDOR_SUBCMD_REGULATORY_TPC_INFO = 237,
};
/* Compatibility defines for previously used subcmd names.
QCA_CHAN_WIDTH_UPDATE_TYPE_TX_RX_EXT = 2,
};
+/**
+ * enum qca_wlan_vendor_attr_tpc_pwr_level - Definition of attributes
+ * used inside nested attribute %QCA_WLAN_VENDOR_ATTR_TPC_PWR_LEVEL.
+ *
+ * @QCA_WLAN_VENDOR_ATTR_TPC_PWR_LEVEL_FREQUENCY: u32 channel center
+ * frequency (MHz): If PSD power, carries one 20 MHz sub-channel center
+ * frequency. If non PSD power, carries either 20 MHz bandwidth's center
+ * channel frequency or 40 MHz bandwidth's center channel frequency
+ * (or 80/160 MHz bandwidth's center channel frequency).
+ *
+ * @QCA_WLAN_VENDOR_ATTR_TPC_PWR_LEVEL_TX_POWER: s8 transmit power limit (dBm).
+ * If PSD power, carries PSD power value of the
+ * QCA_WLAN_VENDOR_ATTR_TPC_PWR_LEVEL_FREQUENCY mentioned sub-channel.
+ * If non PSD power, carries EIRP power value of bandwidth mentioned
+ * by QCA_WLAN_VENDOR_ATTR_TPC_PWR_LEVEL_FREQUENCY center frequency.
+ */
+enum qca_wlan_vendor_attr_tpc_pwr_level {
+ QCA_WLAN_VENDOR_ATTR_TPC_PWR_LEVEL_INVALID = 0,
+ QCA_WLAN_VENDOR_ATTR_TPC_PWR_LEVEL_FREQUENCY = 1,
+ QCA_WLAN_VENDOR_ATTR_TPC_PWR_LEVEL_TX_POWER = 2,
+
+ /* keep last */
+ QCA_WLAN_VENDOR_ATTR_TPC_PWR_LEVEL_AFTER_LAST,
+ QCA_WLAN_VENDOR_ATTR_TPC_PWR_LEVEL_MAX =
+ QCA_WLAN_VENDOR_ATTR_TPC_PWR_LEVEL_AFTER_LAST - 1,
+};
+
+/**
+ * enum qca_wlan_vendor_tpc - Definition of link attributes
+ * used inside nested attribute %QCA_WLAN_VENDOR_ATTR_TPC_LINKS.
+ *
+ * @QCA_WLAN_VENDOR_ATTR_TPC_BSSID: 6-bytes AP BSSID.
+ * For MLO STA, AP BSSID indicates the AP's link address.
+ *
+ * @QCA_WLAN_VENDOR_ATTR_TPC_PSD_POWER: PSD power flag
+ * Indicates using PSD power mode if this flag is present.
+ *
+ * @QCA_WLAN_VENDOR_ATTR_TPC_EIRP_POWER: s8 Regulatory EIRP power
+ * value in dBm
+ *
+ * @QCA_WLAN_VENDOR_ATTR_TPC_POWER_TYPE_6GHZ: u8 power type of 6 GHz
+ * AP, refer to Table E-12-Regulatory Info subfield encoding in
+ * IEEE P802.11-REVme/D4.0. Only present if link is connected to 6 GHz AP.
+ *
+ * @QCA_WLAN_VENDOR_ATTR_TPC_AP_CONSTRAINT_POWER: u8 Local Power Constraint
+ * (dBm) advertised by AP in Power Constraint element, refer to
+ * IEEE Std 802.11-2020, 9.4.2.13 Power Constraint element.
+ *
+ * @QCA_WLAN_VENDOR_ATTR_TPC_PWR_LEVEL: A nested attribute containing
+ * attributes defined by enum qca_wlan_vendor_attr_tpc_pwr_level.
+ * If PSD power, each power level describes each 20 MHz subchannel PSD
+ * power value. If non PSD power, each power level describes each supported
+ * bandwidth's EIRP power value (up to Max bandwidth of AP operating on),
+ * each level attribute contains corresponding bandwidth's center channel
+ * frequency and its EIRP power value.
+ */
+enum qca_wlan_vendor_attr_tpc {
+ QCA_WLAN_VENDOR_ATTR_TPC_INVALID = 0,
+ QCA_WLAN_VENDOR_ATTR_TPC_BSSID = 1,
+ QCA_WLAN_VENDOR_ATTR_TPC_PSD_POWER = 2,
+ QCA_WLAN_VENDOR_ATTR_TPC_EIRP_POWER = 3,
+ QCA_WLAN_VENDOR_ATTR_TPC_POWER_TYPE_6GHZ = 4,
+ QCA_WLAN_VENDOR_ATTR_TPC_AP_CONSTRAINT_POWER = 5,
+ QCA_WLAN_VENDOR_ATTR_TPC_PWR_LEVEL = 6,
+
+ /* keep last */
+ QCA_WLAN_VENDOR_ATTR_TPC_AFTER_LAST,
+ QCA_WLAN_VENDOR_ATTR_TPC_MAX =
+ QCA_WLAN_VENDOR_ATTR_TPC_AFTER_LAST - 1,
+};
+
+/**
+ * enum qca_wlan_vendor_attr_tpc_links - Definition of attributes
+ * for %QCA_NL80211_VENDOR_SUBCMD_REGULATORY_TPC_INFO subcommand
+ *
+ * @QCA_WLAN_VENDOR_ATTR_TPC_LINKS: A nested attribute containing
+ * per-link TPC information of all the active links of MLO STA.
+ * For non MLO STA, only one link TPC information will be returned
+ * for connected AP in this nested attribute.
+ * The attributes used inside this nested attributes are defined
+ * in enum qca_wlan_vendor_attr_tpc.
+ */
+enum qca_wlan_vendor_attr_tpc_links {
+ QCA_WLAN_VENDOR_ATTR_TPC_LINKS_INVALID = 0,
+ QCA_WLAN_VENDOR_ATTR_TPC_LINKS = 1,
+
+ /* keep last */
+ QCA_WLAN_VENDOR_ATTR_TPC_LINKS_AFTER_LAST,
+ QCA_WLAN_VENDOR_ATTR_TPC_LINKS_MAX =
+ QCA_WLAN_VENDOR_ATTR_TPC_AFTER_LAST - 1,
+};
+
#endif /* QCA_VENDOR_H */