|
@@ -645,6 +645,14 @@
|
|
* The attributes used with this event are defined in
|
|
* The attributes used with this event are defined in
|
|
* enum qca_wlan_vendor_attr_mlo_peer_prim_netdev_event.
|
|
* enum qca_wlan_vendor_attr_mlo_peer_prim_netdev_event.
|
|
*
|
|
*
|
|
|
|
+ * @QCA_NL80211_VENDOR_SUBCMD_AFC_EVENT: This vendor command is used by the
|
|
|
|
+ * driver to notify different AFC events to userspace. The attributes used
|
|
|
|
+ * with this command are defined in enum qca_wlan_vendor_attr_afc_event.
|
|
|
|
+ *
|
|
|
|
+ * @QCA_NL80211_VENDOR_SUBCMD_AFC_RESPONSE: This vendor command is used by
|
|
|
|
+ * userspace to deliver AFC response data to driver. The attributes used
|
|
|
|
+ * with this command are defined in enum qca_wlan_vendor_attr_afc_response.
|
|
|
|
+ *
|
|
* @QCA_NL80211_VENDOR_SUBCMD_DOZED_AP: Subcommand to configure AP interface to
|
|
* @QCA_NL80211_VENDOR_SUBCMD_DOZED_AP: Subcommand to configure AP interface to
|
|
* operate in doze mode.
|
|
* operate in doze mode.
|
|
*
|
|
*
|
|
@@ -905,6 +913,8 @@ enum qca_nl80211_vendor_subcmds {
|
|
QCA_NL80211_VENDOR_SUBCMD_GET_SAR_CAPABILITY = 219,
|
|
QCA_NL80211_VENDOR_SUBCMD_GET_SAR_CAPABILITY = 219,
|
|
QCA_NL80211_VENDOR_SUBCMD_SR = 220,
|
|
QCA_NL80211_VENDOR_SUBCMD_SR = 220,
|
|
QCA_NL80211_VENDOR_SUBCMD_MLO_PEER_PRIM_NETDEV_EVENT = 221,
|
|
QCA_NL80211_VENDOR_SUBCMD_MLO_PEER_PRIM_NETDEV_EVENT = 221,
|
|
|
|
+ QCA_NL80211_VENDOR_SUBCMD_AFC_EVENT = 222,
|
|
|
|
+ QCA_NL80211_VENDOR_SUBCMD_AFC_RESPONSE = 223,
|
|
QCA_NL80211_VENDOR_SUBCMD_DOZED_AP = 224,
|
|
QCA_NL80211_VENDOR_SUBCMD_DOZED_AP = 224,
|
|
};
|
|
};
|
|
|
|
|
|
@@ -14679,6 +14689,424 @@ enum qca_wlan_vendor_attr_mlo_peer_prim_netdev_event {
|
|
QCA_WLAN_VENDOR_ATTR_MLO_PEER_PRIM_NETDEV_EVENT_AFTER_LAST - 1,
|
|
QCA_WLAN_VENDOR_ATTR_MLO_PEER_PRIM_NETDEV_EVENT_AFTER_LAST - 1,
|
|
};
|
|
};
|
|
|
|
|
|
|
|
+/**
|
|
|
|
+ * enum qca_wlan_vendor_attr_afc_freq_psd_info: This enum is used with
|
|
|
|
+ * nested attributes QCA_WLAN_VENDOR_ATTR_AFC_RESP_FREQ_PSD_INFO and
|
|
|
|
+ * QCA_WLAN_VENDOR_ATTR_AFC_EVENT_FREQ_RANGE_LIST to update the frequency range
|
|
|
|
+ * and PSD information.
|
|
|
|
+ *
|
|
|
|
+ * @QCA_WLAN_VENDOR_ATTR_AFC_FREQ_PSD_INFO_RANGE_START: Required and type is
|
|
|
|
+ * u32. This attribute is used to indicate the start of the queried frequency
|
|
|
|
+ * range in MHz.
|
|
|
|
+ *
|
|
|
|
+ * @QCA_WLAN_VENDOR_ATTR_AFC_FREQ_PSD_INFO_RANGE_END: Required and type is u32.
|
|
|
|
+ * This attribute is used to indicate the end of the queried frequency range
|
|
|
|
+ * in MHz.
|
|
|
|
+ *
|
|
|
|
+ * @QCA_WLAN_VENDOR_ATTR_AFC_FREQ_PSD_INFO_PSD: Required and type is u32.
|
|
|
|
+ * This attribute will contain the PSD information for a single range as
|
|
|
|
+ * specified by the QCA_WLAN_VENDOR_ATTR_AFC_FREQ_PSD_INFO_RANGE_START and
|
|
|
|
+ * QCA_WLAN_VENDOR_ATTR_AFC_FREQ_PSD_INFO_RANGE_END attributes.
|
|
|
|
+ *
|
|
|
|
+ * The PSD power info (dBm/MHz) from user space should be multiplied
|
|
|
|
+ * by a factor of 100 when sending to the driver to preserve granularity
|
|
|
|
+ * up to 2 decimal places.
|
|
|
|
+ * Example:
|
|
|
|
+ * PSD power value: 10.21 dBm/MHz
|
|
|
|
+ * Value to be updated in QCA_WLAN_VENDOR_ATTR_AFC_PSD_INFO: 1021.
|
|
|
|
+ *
|
|
|
|
+ * Note: QCA_WLAN_VENDOR_ATTR_AFC_FREQ_PSD_INFO_PSD attribute will be used only
|
|
|
|
+ * with nested attribute QCA_WLAN_VENDOR_ATTR_AFC_RESP_FREQ_PSD_INFO and with
|
|
|
|
+ * QCA_WLAN_VENDOR_ATTR_AFC_EVENT_FREQ_RANGE_LIST when
|
|
|
|
+ * QCA_WLAN_VENDOR_ATTR_AFC_EVENT_TYPE is
|
|
|
|
+ * QCA_WLAN_VENDOR_AFC_EVENT_TYPE_POWER_UPDATE_COMPLETE.
|
|
|
|
+ *
|
|
|
|
+ * The following set of attributes will be used to exchange frequency and
|
|
|
|
+ * corresponding PSD information for AFC between the user space and the driver.
|
|
|
|
+ */
|
|
|
|
+enum qca_wlan_vendor_attr_afc_freq_psd_info {
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_FREQ_PSD_INFO_INVALID = 0,
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_FREQ_PSD_INFO_RANGE_START = 1,
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_FREQ_PSD_INFO_RANGE_END = 2,
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_FREQ_PSD_INFO_PSD = 3,
|
|
|
|
+
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_FREQ_PSD_INFO_AFTER_LAST,
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_FREQ_PSD_INFO_MAX =
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_FREQ_PSD_INFO_AFTER_LAST - 1,
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+/**
|
|
|
|
+ * enum qca_wlan_vendor_attr_afc_chan_eirp_info: This enum is used with
|
|
|
|
+ * nested attribute QCA_WLAN_VENDOR_ATTR_AFC_CHAN_LIST_INFO to update the
|
|
|
|
+ * channel list and corresponding EIRP information.
|
|
|
|
+ *
|
|
|
|
+ * @QCA_WLAN_VENDOR_ATTR_AFC_CHAN_EIRP_INFO_CHAN_NUM: Required and type is u8.
|
|
|
|
+ * This attribute is used to indicate queried channel from
|
|
|
|
+ * the operating class indicated in QCA_WLAN_VENDOR_ATTR_AFC_OPCLASS_INFO.
|
|
|
|
+ *
|
|
|
|
+ * @QCA_WLAN_VENDOR_ATTR_AFC_CHAN_EIRP_INFO_EIRP: Optional and type is u32.
|
|
|
|
+ * This attribute is used to configure the EIRP power info corresponding
|
|
|
|
+ * to the channel number indicated in QCA_WLAN_VENDOR_ATTR_AFC_CHAN_NUM.
|
|
|
|
+ * The EIRP power info(dBm) from user space should be multiplied
|
|
|
|
+ * by a factor of 100 when sending to Driver to preserve granularity up to
|
|
|
|
+ * 2 decimal places.
|
|
|
|
+ * Example:
|
|
|
|
+ * EIRP power value: 34.23 dBm
|
|
|
|
+ * Value to be updated in QCA_WLAN_VENDOR_ATTR_AFC_EIRP_INFO: 3423.
|
|
|
|
+ *
|
|
|
|
+ * Note: QCA_WLAN_VENDOR_ATTR_AFC_EIRP_INFO attribute will only be used with
|
|
|
|
+ * nested attribute QCA_WLAN_VENDOR_ATTR_AFC_RESP_OPCLASS_CHAN_EIRP_INFO and
|
|
|
|
+ * with QCA_WLAN_VENDOR_ATTR_AFC_EVENT_OPCLASS_CHAN_LIST when
|
|
|
|
+ * QCA_WLAN_VENDOR_ATTR_AFC_EVENT_TYPE is
|
|
|
|
+ * QCA_WLAN_VENDOR_AFC_EVENT_TYPE_POWER_UPDATE_COMPLETE:
|
|
|
|
+ *
|
|
|
|
+ * The following set of attributes will be used to exchange Channel and
|
|
|
|
+ * corresponding EIRP information for AFC between the user space and Driver.
|
|
|
|
+ */
|
|
|
|
+enum qca_wlan_vendor_attr_afc_chan_eirp_info {
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_CHAN_EIRP_INFO_INVALID = 0,
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_CHAN_EIRP_INFO_CHAN_NUM = 1,
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_CHAN_EIRP_INFO_EIRP = 2,
|
|
|
|
+
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_CHAN_EIRP_INFO_AFTER_LAST,
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_CHAN_EIRP_INFO_MAX =
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_CHAN_EIRP_INFO_AFTER_LAST - 1,
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+/**
|
|
|
|
+ * enum qca_wlan_vendor_attr_afc_opclass_info: This enum is used with nested
|
|
|
|
+ * attributes QCA_WLAN_VENDOR_ATTR_AFC_RESP_OPCLASS_CHAN_EIRP_INFO and
|
|
|
|
+ * QCA_WLAN_VENDOR_ATTR_AFC_REQ_OPCLASS_CHAN_INFO to update the operating class,
|
|
|
|
+ * channel, and EIRP related information.
|
|
|
|
+ *
|
|
|
|
+ * @QCA_WLAN_VENDOR_ATTR_AFC_OPCLASS_INFO_OPCLASS: Required and type is u8.
|
|
|
|
+ * This attribute is used to indicate the operating class, as listed under
|
|
|
|
+ * IEEE Std 802.11-2020 Annex E Table E-4, for the queried channel list.
|
|
|
|
+ *
|
|
|
|
+ * @QCA_WLAN_VENDOR_ATTR_AFC_OPCLASS_INFO_CHAN_LIST: Array of nested attributes
|
|
|
|
+ * for updating the channel number and EIRP power information.
|
|
|
|
+ * It uses the attributes defined in
|
|
|
|
+ * enum qca_wlan_vendor_attr_afc_chan_eirp_info.
|
|
|
|
+ *
|
|
|
|
+ * Operating class information packing format for
|
|
|
|
+ * QCA_WLAN_VENDOR_ATTR_AFC_EVENT_OPCLASS_CHAN_INFO when
|
|
|
|
+ * QCA_WLAN_VENDOR_ATTR_AFC_EVENT_TYPE is
|
|
|
|
+ * QCA_WLAN_VENDOR_ATTR_AFC_EVENT_TYPE_EXPIRY.
|
|
|
|
+ *
|
|
|
|
+ * m - Total number of operating classes.
|
|
|
|
+ * n, j - Number of queried channels for the corresponding operating class.
|
|
|
|
+ *
|
|
|
|
+ * QCA_WLAN_VENDOR_ATTR_AFC_OPCLASS_INFO_OPCLASS[0]
|
|
|
|
+ * QCA_WLAN_VENDOR_ATTR_AFC_OPCLASS_INFO_CHAN_LIST[0]
|
|
|
|
+ * QCA_WLAN_VENDOR_ATTR_AFC_CHAN_EIRP_INFO_CHAN_NUM[0]
|
|
|
|
+ * .....
|
|
|
|
+ * QCA_WLAN_VENDOR_ATTR_AFC_CHAN_EIRP_INFO_CHAN_NUM[n - 1]
|
|
|
|
+ * ....
|
|
|
|
+ * QCA_WLAN_VENDOR_ATTR_AFC_OPCLASS_INFO_OPCLASS[m]
|
|
|
|
+ * QCA_WLAN_VENDOR_ATTR_AFC_OPCLASS_INFO_CHAN_LIST[m]
|
|
|
|
+ * QCA_WLAN_VENDOR_ATTR_AFC_CHAN_EIRP_INFO_CHAN_NUM[0]
|
|
|
|
+ * ....
|
|
|
|
+ * QCA_WLAN_VENDOR_ATTR_AFC_CHAN_EIRP_INFO_CHAN_NUM[j - 1]
|
|
|
|
+ *
|
|
|
|
+ * Operating class information packing format for
|
|
|
|
+ * QCA_WLAN_VENDOR_ATTR_AFC_RESP_OPCLASS_CHAN_EIRP_INFO and
|
|
|
|
+ * QCA_WLAN_VENDOR_ATTR_AFC_EVENT_OPCLASS_CHAN_INFO when
|
|
|
|
+ * QCA_WLAN_VENDOR_ATTR_AFC_EVENT_TYPE is
|
|
|
|
+ * QCA_WLAN_VENDOR_AFC_EVENT_TYPE_POWER_UPDATE_COMPLETE.
|
|
|
|
+ *
|
|
|
|
+ * m - Total number of operating classes.
|
|
|
|
+ * n, j - Number of channels for the corresponding operating class.
|
|
|
|
+ *
|
|
|
|
+ * QCA_WLAN_VENDOR_ATTR_AFC_OPCLASS_INFO_OPCLASS[0]
|
|
|
|
+ * QCA_WLAN_VENDOR_ATTR_AFC_OPCLASS_INFO_CHAN_LIST[0]
|
|
|
|
+ * QCA_WLAN_VENDOR_ATTR_AFC_CHAN_EIRP_INFO_CHAN_NUM[0]
|
|
|
|
+ * QCA_WLAN_VENDOR_ATTR_AFC_CHAN_EIRP_INFO_EIRP[0]
|
|
|
|
+ * .....
|
|
|
|
+ * QCA_WLAN_VENDOR_ATTR_AFC_CHAN_EIRP_INFO_CHAN_NUM[n - 1]
|
|
|
|
+ * QCA_WLAN_VENDOR_ATTR_AFC_CHAN_EIRP_INFO_EIRP[n - 1]
|
|
|
|
+ * ....
|
|
|
|
+ * QCA_WLAN_VENDOR_ATTR_AFC_OPCLASS_INFO_OPCLASS[m]
|
|
|
|
+ * QCA_WLAN_VENDOR_ATTR_AFC_OPCLASS_INFO_CHAN_LIST[m]
|
|
|
|
+ * QCA_WLAN_VENDOR_ATTR_AFC_CHAN_EIRP_INFO_CHAN_NUM[0]
|
|
|
|
+ * QCA_WLAN_VENDOR_ATTR_AFC_CHAN_EIRP_INFO_EIRP[0]
|
|
|
|
+ * ....
|
|
|
|
+ * QCA_WLAN_VENDOR_ATTR_AFC_CHAN_EIRP_INFO_CHAN_NUM[j - 1]
|
|
|
|
+ * QCA_WLAN_VENDOR_ATTR_AFC_CHAN_EIRP_INFO_EIRP[j - 1]
|
|
|
|
+ *
|
|
|
|
+ * The following set of attributes will be used to exchange operating class
|
|
|
|
+ * information for AFC between the user space and the driver.
|
|
|
|
+ */
|
|
|
|
+enum qca_wlan_vendor_attr_afc_opclass_info {
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_OPCLASS_INFO_INVALID = 0,
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_OPCLASS_INFO_OPCLASS = 1,
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_OPCLASS_INFO_CHAN_LIST = 2,
|
|
|
|
+
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_OPCLASS_INFO_AFTER_LAST,
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_OPCLASS_INFO_MAX =
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_OPCLASS_INFO_AFTER_LAST - 1,
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+/**
|
|
|
|
+ * enum qca_wlan_vendor_afc_event_type: Defines values for AFC event type.
|
|
|
|
+ * Attribute used by QCA_WLAN_VENDOR_ATTR_AFC_EVENT_TYPE attribute.
|
|
|
|
+ *
|
|
|
|
+ * @QCA_WLAN_VENDOR_AFC_EVENT_TYPE_EXPIRY: AFC expiry event sent from the
|
|
|
|
+ * driver to userspace in order to query the new AFC power values.
|
|
|
|
+ *
|
|
|
|
+ * @QCA_WLAN_VENDOR_AFC_EVENT_TYPE_POWER_UPDATE_COMPLETE: Power update
|
|
|
|
+ * complete event will be sent from the driver to userspace to indicate
|
|
|
|
+ * processing of the AFC response.
|
|
|
|
+ *
|
|
|
|
+ * @QCA_WLAN_VENDOR_AFC_EVENT_TYPE_PAYLOAD_RESET: AFC payload reset event
|
|
|
|
+ * will be sent from the driver to userspace to indicate last received
|
|
|
|
+ * AFC response data has been cleared on the AP due to invalid data
|
|
|
|
+ * in the QCA_NL80211_VENDOR_SUBCMD_AFC_RESPONSE.
|
|
|
|
+ *
|
|
|
|
+ * The following enum defines the different event types that will be
|
|
|
|
+ * used by the driver to help trigger corresponding AFC functionality in user
|
|
|
|
+ * space.
|
|
|
|
+ */
|
|
|
|
+enum qca_wlan_vendor_afc_event_type {
|
|
|
|
+ QCA_WLAN_VENDOR_AFC_EVENT_TYPE_EXPIRY = 0,
|
|
|
|
+ QCA_WLAN_VENDOR_AFC_EVENT_TYPE_POWER_UPDATE_COMPLETE = 1,
|
|
|
|
+ QCA_WLAN_VENDOR_AFC_EVENT_TYPE_PAYLOAD_RESET = 2,
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+/**
|
|
|
|
+ * enum qca_wlan_vendor_afc_ap_deployment_type: Defines values for AP
|
|
|
|
+ * deployment type.
|
|
|
|
+ * Attribute used by QCA_WLAN_VENDOR_ATTR_AFC_EVENT_AP_DEPLOYMENT attribute.
|
|
|
|
+ *
|
|
|
|
+ * @QCA_WLAN_VENDOR_AFC_AP_DEPLOYMENT_TYPE_UNKNOWN: Unknown AP deployment.
|
|
|
|
+ *
|
|
|
|
+ * @QCA_WLAN_VENDOR_AFC_AP_DEPLOYMENT_TYPE_INDOOR: Indoor AP deployment.
|
|
|
|
+ *
|
|
|
|
+ * @QCA_WLAN_VENDOR_AFC_AP_DEPLOYMENT_TYPE_OUTDOOR: Outdoor AP deployment.
|
|
|
|
+ *
|
|
|
|
+ * The following enum defines different deployment modes that the AP might
|
|
|
|
+ * come up in. This information will be essential to retrieve deployment-type
|
|
|
|
+ * specific SP power values for AFC operation.
|
|
|
|
+ */
|
|
|
|
+enum qca_wlan_vendor_afc_ap_deployment_type {
|
|
|
|
+ QCA_WLAN_VENDOR_AFC_AP_DEPLOYMENT_TYPE_UNKNOWN = 0,
|
|
|
|
+ QCA_WLAN_VENDOR_AFC_AP_DEPLOYMENT_TYPE_INDOOR = 1,
|
|
|
|
+ QCA_WLAN_VENDOR_AFC_AP_DEPLOYMENT_TYPE_OUTDOOR = 2,
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+/**
|
|
|
|
+ * enum qca_wlan_vendor_afc_evt_status_code: Defines values AP will use to
|
|
|
|
+ * indicate AFC response status.
|
|
|
|
+ * Enum used by QCA_WLAN_VENDOR_ATTR_AFC_EVENT_STATUS_CODE attribute.
|
|
|
|
+ *
|
|
|
|
+ * @QCA_WLAN_VENDOR_AFC_EVT_STATUS_CODE_SUCCESS: Success
|
|
|
|
+ *
|
|
|
|
+ * @QCA_WLAN_VENDOR_AFC_EVT_STATUS_CODE_TIMEOUT: Indicates AFC indication
|
|
|
|
+ * command was not received within the expected time of the AFC expiry event
|
|
|
|
+ * being triggered.
|
|
|
|
+ *
|
|
|
|
+ * @QCA_WLAN_VENDOR_AFC_EVT_STATUS_CODE_PARSING_ERROR: Indicates AFC data
|
|
|
|
+ * parsing error by the driver.
|
|
|
|
+ *
|
|
|
|
+ * @QCA_WLAN_VENDOR_AFC_EVT_STATUS_CODE_LOCAL_ERROR: Indicates any other local
|
|
|
|
+ * error.
|
|
|
|
+ *
|
|
|
|
+ * The following enum defines the status codes that the driver will use to
|
|
|
|
+ * indicate whether the AFC data is valid or not.
|
|
|
|
+ */
|
|
|
|
+enum qca_wlan_vendor_afc_evt_status_code {
|
|
|
|
+ QCA_WLAN_VENDOR_AFC_EVT_STATUS_CODE_SUCCESS = 0,
|
|
|
|
+ QCA_WLAN_VENDOR_AFC_EVT_STATUS_CODE_TIMEOUT = 1,
|
|
|
|
+ QCA_WLAN_VENDOR_AFC_EVT_STATUS_CODE_PARSING_ERROR = 2,
|
|
|
|
+ QCA_WLAN_VENDOR_AFC_EVT_STATUS_CODE_LOCAL_ERROR = 3,
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+/**
|
|
|
|
+ * enum qca_wlan_vendor_attr_afc_event: Defines attributes to be used with
|
|
|
|
+ * vendor event QCA_NL80211_VENDOR_SUBCMD_AFC_EVENT. These attributes will
|
|
|
|
+ * support sending only a single request to the user space at a time.
|
|
|
|
+ *
|
|
|
|
+ * @QCA_WLAN_VENDOR_ATTR_AFC_EVENT_TYPE: Required u8 attribute.
|
|
|
|
+ * Used with event to notify the type of AFC event received.
|
|
|
|
+ * Valid values are defined in enum qca_wlan_vendor_afc_event_type.
|
|
|
|
+ *
|
|
|
|
+ * @QCA_WLAN_VENDOR_ATTR_AFC_EVENT_AP_DEPLOYMENT: u8 attribute. Required when
|
|
|
|
+ * QCA_WLAN_VENDOR_ATTR_AFC_EVENT_TYPE is QCA_WLAN_VENDOR_AFC_EVENT_TYPE_EXPIRY,
|
|
|
|
+ * otherwise unused.
|
|
|
|
+ *
|
|
|
|
+ * This attribute is used to indicate the AP deployment type in the AFC request.
|
|
|
|
+ * Valid values are defined in enum qca_wlan_vendor_afc_ap_deployment_type.
|
|
|
|
+ *
|
|
|
|
+ * @QCA_WLAN_VENDOR_ATTR_AFC_EVENT_REQ_ID: Required u32 attribute.
|
|
|
|
+ * Unique request identifier generated by the AFC client for every
|
|
|
|
+ * AFC expiry event trigger. See also QCA_WLAN_VENDOR_ATTR_AFC_RESP_REQ_ID.
|
|
|
|
+ * The user space application is responsible for ensuring no duplicate values
|
|
|
|
+ * are in-flight with the server, e.g., by delaying a request, should the same
|
|
|
|
+ * value be received from different radios in parallel.
|
|
|
|
+ *
|
|
|
|
+ * @QCA_WLAN_VENDOR_ATTR_AFC_EVENT_AFC_WFA_VERSION: u32 attribute. Optional.
|
|
|
|
+ * It is used when the QCA_WLAN_VENDOR_ATTR_AFC_EVENT_TYPE is
|
|
|
|
+ * QCA_WLAN_VENDOR_AFC_EVENT_TYPE_EXPIRY, otherwise unused.
|
|
|
|
+ *
|
|
|
|
+ * This attribute indicates the AFC spec version information. This will
|
|
|
|
+ * indicate the AFC version AFC client must use to query the AFC data.
|
|
|
|
+ * Bits 15:0 - Minor version
|
|
|
|
+ * Bits 31:16 - Major version
|
|
|
|
+ *
|
|
|
|
+ * @QCA_WLAN_VENDOR_ATTR_AFC_EVENT_MIN_DES_POWER: u16 attribute. Required when
|
|
|
|
+ * QCA_WLAN_VENDOR_ATTR_AFC_EVENT_TYPE is QCA_WLAN_VENDOR_AFC_EVENT_TYPE_EXPIRY,
|
|
|
|
+ * otherwise unused.
|
|
|
|
+ * This attribute indicates the minimum desired power (in dBm) for
|
|
|
|
+ * the queried spectrum.
|
|
|
|
+ *
|
|
|
|
+ * @QCA_WLAN_VENDOR_ATTR_AFC_EVENT_STATUS_CODE: u8 attribute. Required when
|
|
|
|
+ * QCA_WLAN_VENDOR_ATTR_AFC_EVENT_TYPE is
|
|
|
|
+ * QCA_WLAN_VENDOR_AFC_EVENT_TYPE_POWER_UPDATE_COMPLETE, otherwise unused.
|
|
|
|
+ *
|
|
|
|
+ * Valid values are defined in enum qca_wlan_vendor_afc_evt_status_code.
|
|
|
|
+ * This attribute is used to indicate if there were any errors parsing the
|
|
|
|
+ * AFC response.
|
|
|
|
+ *
|
|
|
|
+ * @QCA_WLAN_VENDOR_ATTR_AFC_EVENT_SERVER_RESP_CODE: s32 attribute. Required
|
|
|
|
+ * when QCA_WLAN_VENDOR_ATTR_AFC_EVENT_TYPE is
|
|
|
|
+ * QCA_WLAN_VENDOR_AFC_EVENT_TYPE_POWER_UPDATE_COMPLETE, otherwise unused.
|
|
|
|
+ *
|
|
|
|
+ * This attribute indicates the AFC response code. The AFC response codes are
|
|
|
|
+ * in the following categories:
|
|
|
|
+ * -1: General Failure.
|
|
|
|
+ * 0: Success.
|
|
|
|
+ * 100 - 199: General errors related to protocol.
|
|
|
|
+ * 300 - 399: Error events specific to message exchange
|
|
|
|
+ * for the Available Spectrum Inquiry.
|
|
|
|
+ *
|
|
|
|
+ * @QCA_WLAN_VENDOR_ATTR_AFC_EVENT_EXP_DATE: u32 attribute. Required when
|
|
|
|
+ * QCA_WLAN_VENDOR_ATTR_AFC_EVENT_TYPE is
|
|
|
|
+ * QCA_WLAN_VENDOR_AFC_EVENT_TYPE_POWER_UPDATE_COMPLETE, otherwise unused.
|
|
|
|
+ *
|
|
|
|
+ * This attribute indicates the date until which the current response is
|
|
|
|
+ * valid for in UTC format.
|
|
|
|
+ * Date format: bits 7:0 - DD (Day 1-31)
|
|
|
|
+ * bits 15:8 - MM (Month 1-12)
|
|
|
|
+ * bits 31:16 - YYYY (Year)
|
|
|
|
+ *
|
|
|
|
+ * @QCA_WLAN_VENDOR_ATTR_AFC_EVENT_EXP_TIME: u32 attribute. Required when
|
|
|
|
+ * QCA_WLAN_VENDOR_ATTR_AFC_EVENT_TYPE is
|
|
|
|
+ * QCA_WLAN_VENDOR_AFC_EVENT_TYPE_POWER_UPDATE_COMPLETE, otherwise unused.
|
|
|
|
+ *
|
|
|
|
+ * This attribute indicates the time until which the current response is
|
|
|
|
+ * valid for in UTC format.
|
|
|
|
+ * Time format: bits 7:0 - SS (Seconds 0-59)
|
|
|
|
+ * bits 15:8 - MM (Minutes 0-59)
|
|
|
|
+ * bits 23:16 - HH (Hours 0-23)
|
|
|
|
+ * bits 31:24 - Reserved
|
|
|
|
+ *
|
|
|
|
+ * @QCA_WLAN_VENDOR_ATTR_AFC_EVENT_FREQ_RANGE_LIST: Array of nested attributes
|
|
|
|
+ * for updating the list of frequency ranges to be queried.
|
|
|
|
+ * Required when QCA_WLAN_VENDOR_ATTR_AFC_EVENT_TYPE is
|
|
|
|
+ * QCA_WLAN_VENDOR_AFC_EVENT_TYPE_EXPIRY or
|
|
|
|
+ * QCA_WLAN_VENDOR_AFC_EVENT_TYPE_POWER_UPDATE_COMPLETE, otherwise unused.
|
|
|
|
+ * It uses the attributes defined in
|
|
|
|
+ * enum qca_wlan_vendor_attr_afc_freq_psd_info.
|
|
|
|
+ *
|
|
|
|
+ * @QCA_WLAN_VENDOR_ATTR_AFC_EVENT_OPCLASS_CHAN_LIST: Array of nested attributes
|
|
|
|
+ * for updating the list of operating classes and corresponding channels to be
|
|
|
|
+ * queried.
|
|
|
|
+ * Required when QCA_WLAN_VENDOR_ATTR_AFC_EVENT_TYPE is
|
|
|
|
+ * QCA_WLAN_VENDOR_AFC_EVENT_TYPE_EXPIRY or
|
|
|
|
+ * QCA_WLAN_VENDOR_AFC_EVENT_TYPE_POWER_UPDATE_COMPLETE, otherwise unused.
|
|
|
|
+ * It uses the attributes defined in enum qca_wlan_vendor_attr_afc_opclass_info.
|
|
|
|
+ */
|
|
|
|
+enum qca_wlan_vendor_attr_afc_event {
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_EVENT_INVALID = 0,
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_EVENT_TYPE = 1,
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_EVENT_AP_DEPLOYMENT = 2,
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_EVENT_REQ_ID = 3,
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_EVENT_AFC_WFA_VERSION = 4,
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_EVENT_MIN_DES_POWER = 5,
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_EVENT_STATUS_CODE = 6,
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_EVENT_SERVER_RESP_CODE = 7,
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_EVENT_EXP_DATE = 8,
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_EVENT_EXP_TIME = 9,
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_EVENT_FREQ_RANGE_LIST = 10,
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_EVENT_OPCLASS_CHAN_LIST = 11,
|
|
|
|
+
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_EVENT_AFTER_LAST,
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_EVENT_MAX =
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_EVENT_AFTER_LAST - 1,
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+/**
|
|
|
|
+ * enum qca_wlan_vendor_attr_afc_response: Defines attributes to be used
|
|
|
|
+ * with vendor command QCA_NL80211_VENDOR_SUBCMD_AFC_RESPONSE. These attributes
|
|
|
|
+ * will support sending only a single AFC response to the driver at a time.
|
|
|
|
+ *
|
|
|
|
+ * @QCA_WLAN_VENDOR_ATTR_AFC_RESP_DATA: Type is NLA_STRING. Required attribute.
|
|
|
|
+ * This attribute will be used to send a single Spectrum Inquiry response object
|
|
|
|
+ * from the 'availableSpectrumInquiryResponses' array object from the response
|
|
|
|
+ * JSON.
|
|
|
|
+ *
|
|
|
|
+ * @QCA_WLAN_VENDOR_ATTR_AFC_RESP_TIME_TO_LIVE: Required u32 attribute.
|
|
|
|
+ *
|
|
|
|
+ * This attribute indicates the period (in seconds) for which the response
|
|
|
|
+ * data received is valid for.
|
|
|
|
+ *
|
|
|
|
+ * @QCA_WLAN_VENDOR_ATTR_AFC_RESP_REQ_ID: Required u32 attribute.
|
|
|
|
+ *
|
|
|
|
+ * This attribute indicates the request ID for which the corresponding
|
|
|
|
+ * response is being sent for. See also QCA_WLAN_VENDOR_ATTR_AFC_EVENT_REQ_ID.
|
|
|
|
+ *
|
|
|
|
+ * @QCA_WLAN_VENDOR_ATTR_AFC_RESP_EXP_DATE: Required u32 attribute.
|
|
|
|
+ *
|
|
|
|
+ * This attribute indicates the date until which the current response is
|
|
|
|
+ * valid for in UTC format.
|
|
|
|
+ * Date format: bits 7:0 - DD (Day 1-31)
|
|
|
|
+ * bits 15:8 - MM (Month 1-12)
|
|
|
|
+ * bits 31:16 - YYYY (Year)
|
|
|
|
+ *
|
|
|
|
+ * @QCA_WLAN_VENDOR_ATTR_AFC_RESP_EXP_TIME: Required u32 attribute.
|
|
|
|
+ *
|
|
|
|
+ * This attribute indicates the time until which the current response is
|
|
|
|
+ * valid for in UTC format.
|
|
|
|
+ * Time format: bits 7:0 - SS (Seconds 0-59)
|
|
|
|
+ * bits 15:8 - MM (Minutes 0-59)
|
|
|
|
+ * bits 23:16 - HH (Hours 0-23)
|
|
|
|
+ * bits 31:24 - Reserved
|
|
|
|
+ *
|
|
|
|
+ * @QCA_WLAN_VENDOR_ATTR_AFC_RESP_AFC_SERVER_RESP_CODE: Required s32 attribute.
|
|
|
|
+ *
|
|
|
|
+ * This attribute indicates the AFC response code. The AFC response codes are
|
|
|
|
+ * in the following categories:
|
|
|
|
+ * -1: General Failure.
|
|
|
|
+ * 0: Success.
|
|
|
|
+ * 100 - 199: General errors related to protocol.
|
|
|
|
+ * 300 - 399: Error events specific to message exchange
|
|
|
|
+ * for the Available Spectrum Inquiry.
|
|
|
|
+ *
|
|
|
|
+ * @QCA_WLAN_VENDOR_ATTR_AFC_RESP_FREQ_PSD_INFO: Array of nested attributes
|
|
|
|
+ * for PSD info of all the queried frequency ranges. It uses the attributes
|
|
|
|
+ * defined in enum qca_wlan_vendor_attr_afc_freq_psd_info. Required attribute.
|
|
|
|
+ *
|
|
|
|
+ * @QCA_WLAN_VENDOR_ATTR_AFC_RESP_OPCLASS_CHAN_EIRP_INFO: Array of nested
|
|
|
|
+ * attributes for EIRP info of all queried operating class/channels. It uses
|
|
|
|
+ * the attributes defined in enum qca_wlan_vendor_attr_afc_opclass_info and
|
|
|
|
+ * enum qca_wlan_vendor_attr_afc_chan_eirp_info. Required attribute.
|
|
|
|
+ *
|
|
|
|
+ */
|
|
|
|
+enum qca_wlan_vendor_attr_afc_response {
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_RESP_INVALID = 0,
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_RESP_DATA = 1,
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_RESP_TIME_TO_LIVE = 2,
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_RESP_REQ_ID = 3,
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_RESP_EXP_DATE = 4,
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_RESP_EXP_TIME = 5,
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_RESP_AFC_SERVER_RESP_CODE = 6,
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_RESP_FREQ_PSD_INFO = 7,
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_RESP_OPCLASS_CHAN_EIRP_INFO = 8,
|
|
|
|
+
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_RESP_AFTER_LAST,
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_RESP_MAX =
|
|
|
|
+ QCA_WLAN_VENDOR_ATTR_AFC_RESP_AFTER_LAST - 1,
|
|
|
|
+};
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* enum qca_wlan_dozed_ap_state - Doze states for AP interface
|
|
* enum qca_wlan_dozed_ap_state - Doze states for AP interface
|
|
*
|
|
*
|