aboutsummaryrefslogtreecommitdiffstats
path: root/src/common/qca-vendor.h
Commit message (Collapse)AuthorAgeFilesLines
* Define a new QCA vendor attribute for Optimized Power ManagementAlan Chen2020-06-171-0/+4
| | | | | | Define a new attribute configuring Optimized Power Management. Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
* Update DFS terminology in attribute value documentationJouni Malinen2020-06-111-2/+2
| | | | | | | Use "client device" as the term for the device that operates under a guidance of the device responsible for enforcing DFS rules. Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
* QCA vendor attribute for dynamic bandwidth adjustmentMin Liu2020-06-061-0/+8
| | | | | | | Define QCA vendor attribute in SET(GET)_WIFI_CONFIGURATION to dynamically configure capabilities for dynamic bandwidth adjustment. Signed-off-by: Min Liu <minliu@codeaurora.org>
* QCA vendor attributes for setting channel widthMin Liu2020-06-061-0/+14
| | | | | | | Define QCA vendor attribute in SET(GET)_WIFI_CONFIGURATION to dynamically configure capabilities for channel width. Signed-off-by: Min Liu <minliu@codeaurora.org>
* Add vendor attributes to configure testing functionality for FT/OCV/SAEVeerendranath Jakkam2020-06-061-0/+71
| | | | | | | | Add new QCA vendor attributes to configure RSNXE Used (FTE), ignore CSA, and OCI frequency override with QCA vendor command QCA_NL80211_VENDOR_SUBCMD_WIFI_TEST_CONFIGURATION for STA testbed role. Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
* Fix a typo vendor attribute documentationMin Liu2020-06-061-1/+1
| | | | | | Fix a typo in comment of enum qca_wlan_tspec_ack_policy. Signed-off-by: Min Liu <minliu@codeaurora.org>
* QCA vendor attribute to configure NSSSunil Dutt2020-06-061-0/+12
| | | | | | | Defines the attribute in SET(GET)_WIFI_CONFIGURATION to dynamically configure NSS. Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
* Add a vendor attribute to get OEM dataSachin Ahuja2020-05-251-4/+13
| | | | | | | Add an attribute QCA_WLAN_VENDOR_ATTR_OEM_DATA_RESPONSE_EXPECTED to get the response for the queried data. Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
* Vendor attributes for configuring LDPC, TX STBC, RX STBCSunil Dutt2020-05-251-0/+36
| | | | | | | Defines the attributes in SET(GET)_WIFI_CONFIGURATION to dynamically configure capabilities: LDPC, TX STBC, RX STBC. Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
* Vendor attributes for ssetting TX A-MSDU and RX A-MSDU parametersMin Liu2020-05-201-0/+12
| | | | | | | Define QCA vendor attributes for SET(GET)_WIFI_CONFIGURATION to dynamically configure capabilities for TX A-MSDU and RX A-MSDU. Signed-off-by: Min Liu <minliu@codeaurora.org>
* QCA vendor command for adding and deleting TSPECMin Liu2020-05-201-0/+175
| | | | | | | | | Add a QCA vendor subcommand QCA_NL80211_VENDOR_SUBCMD_CONFIG_TSPEC to add and delete TSPEC in STA mode. The attributes defined in enum qca_wlan_vendor_attr_config_tspec are used to encapsulate required information. Signed-off-by: Min Liu <minliu@codeaurora.org>
* Vendor attributes to configure PMF protection and disassoc Tx for testingKiran Kumar Lokere2020-05-201-0/+12
| | | | | | | | | Add new QCA vendor attributes to configure misbehavior for PMF protection for Management frames and to inject Disassociation frames. These attributes are used for testing purposes. Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
* Add QCA vendor interface support to configure PHY modesVamsi Krishna2020-05-201-0/+74
| | | | | | | | Add an attribute that can be used with QCA_NL80211_VENDOR_SUBCMD_SET_WIFI_CONFIGURATION vendor command to configure different PHY modes to the driver/firmware. Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
* Add vendor attributes indicating number of spectral detectorsEdayilliam Jayadev2020-04-071-0/+20
| | | | | | | Add per bandwidth capability attributes which indicate the number of spectral detectors used. Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
* Add an attribute for secondary 80 MHz span of agile spectral scanEdayilliam Jayadev2020-04-071-2/+20
| | | | | | | Add an attribute QCA_WLAN_VENDOR_ATTR_SPECTRAL_SCAN_CONFIG_FREQUENCY_2 for describing the secondary 80 MHz span of agile spectral scan. Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
* Add addition CFR capture type to filter all NDPA NDP framesWu Gao2020-03-251-0/+2
| | | | | | | | Add QCA_WLAN_VENDOR_CFR_NDPA_NDP_ALL in enum qca_wlan_vendor_cfr_capture_type. This capture type requests all NDPA NDP frames to be filtered. Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
* Change CFR attributes from required to optionalWu Gao2020-03-251-9/+9
| | | | | | | Some CFR attributes are used frequently with conditions, so change them from required to optional. Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
* Extend vendor attributes to support enhanced CFR captureWu Gao2020-03-231-30/+193
| | | | | | | | | | Enhanced channel frequency response supports capturing of channel status information based on RX. Define previous CFR as version 1 and enhanced CFR as version 2. If target supports both versions, two versions can't be enabled at same time. Extend attributes for enhanced CFR capture in enum qca_wlan_vendor_peer_cfr_capture_attr. Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
* Add QCA vendor attributes for ACS over EDMG (IEEE 802.11ay)Noam Shaked2020-03-231-0/+11
| | | | | | | QCA_WLAN_VENDOR_ATTR_ACS_EDMG_ENABLED, conduct ACS for EDMG. QCA_WLAN_VENDOR_ATTR_ACS_EDMG_CHANNEL, return the EDMG channel. Signed-off-by: Noam Shaked <nshaked@codeaurora.org>
* More details to the vendor specific driver internal failure reportingSourav Mohapatra2020-03-211-0/+39
| | | | | | | | | | Add more hang reason codes for the hang reason in the QCA_NL80211_VENDOR_SUBCMD_HANG events. This also introduces the attribute QCA_WLAN_VENDOR_ATTR_HANG_REASON_DATA to carry the required data for the respective hang reason. This data is expected to contain the required dump to analyze the reason for the hang. Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
* Add attribute for dwell time in QCA vendor scanKrishna Rao2020-02-261-0/+4
| | | | | | | | Add an attribute QCA_WLAN_VENDOR_ATTR_SCAN_DWELL_TIME for specifying dwell time in the QCA vendor scan command. This is a common value which applies across all frequencies requested in the scan. Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
* Introduce QCA_WLAN_VENDOR_ATTR_CONFIG_ROAM_REASONSunil Dutt2020-02-241-0/+7
| | | | | | | | This attribute enables/disables the host driver to send roam reason information in the Reassociation Request frame to the AP in the same ESS. Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
* Fix enum qca_wlan_vendor_attr_config value prefixSunil Dutt2020-02-241-2/+10
| | | | | | | | | Couple of the attributes were defined with inconsistent prefix in the name (missing "CONFIG_"). Fix these to use the common prefix for all enum qca_wlan_vendor_attr_config values. Add defined values for the incorrect names to avoid issues with existing users. Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
* Additional get_sta_info attrs for Beacon/Probe Response/disconnect reasonsSunil Dutt2020-02-131-0/+19
| | | | | | | | | | | | This commit adds new attributes for getting the Probe Response frame IEs, Beacon frame IEs and the disconnection reason codes through get_sta_info vendor command. The host driver shall give this driver specific reason code through the disconnection reason code attribute QCA_WLAN_VENDOR_ATTR_GET_STA_DRIVER_DISCONNECT_REASON. Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
* Introduce QCA_NL80211_VENDOR_SUBCMD_DRIVER_DISCONNECT_REASONSachin Ahuja2020-02-131-0/+112
| | | | | | | | | | | | | This acts as an event from the host driver to the user space to notify the driver specific reason for a disconnection. The host driver initiates the disconnection for various scenarios (beacon miss, Tx Failures, gateway unreachability, etc.) and the reason codes from cfg80211_disconnected() do not carry these driver specific reason codes. Host drivers should trigger this event immediately prior to triggering cfg80211_disconnected() to allow the user space to correlate the driver specific reason code with the disconnect indication. Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
* Introduce QCA_NL80211_VENDOR_SUBCMD_UPDATE_STA_INFOSunil Dutt2020-02-131-0/+29
| | | | | | | | | | This acts as a vendor event and is used to update the information of a station from the driver to userspace. Add an attribute for the driver to update the channels scanned in the last connect/roam attempt. Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
* Introduce QCA_WLAN_VENDOR_ATTR_BEACON_REPORT_FAILSunil Dutt2020-02-121-0/+7
| | | | | | | | This attribute aims to configure the STA to send the Beacon Report Response with failure reason for the scenarios where the Beacon Report Request cannot be handled. Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
* Define macro BIT() in qca_vendor.hVamsi Krishna2020-02-111-0/+4
| | | | | | | | As qca_vendor.h alone can be included by other applications, define macro BIT() in qca_vendor.h itself if not yet defined, e.g., by including utils/common.h before qca_vendor.h. Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
* Additional stats through QCA_NL80211_VENDOR_SUBCMD_GET_STA_INFOSunil Dutt2020-01-311-6/+172
| | | | | | | This commit introduces additional stats to query through QCA_NL80211_VENDOR_SUBCMD_UPDATE_STA_INFO. Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
* Add a vendor attribute for RTPL instance primary frequencyKrishna Rao2020-01-281-1/+11
| | | | | | | | | | | | | | | | | Add an attribute QCA_WLAN_VENDOR_ATTR_RTPLINST_PRIMARY_FREQUENCY for primary channel center frequency in the definition for Representative Tx Power List (RTPL) list entry instance. This is required for 6 GHz support, since the 6 GHz channel numbers overlap with existing 2.4 GHz and 5 GHz channel numbers thus requiring frequency values to uniquely identify channels. Mark QCA_WLAN_VENDOR_ATTR_RTPLINST_PRIMARY as deprecated if both the driver and user space application support 6 GHz. For backward compatibility, QCA_WLAN_VENDOR_ATTR_RTPLINST_PRIMARY is still used if either the driver or user space application or both do not support the 6 GHz band. Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
* Add vendor interface QCA_NL80211_VENDOR_SUBCMD_REQUEST_SAR_LIMITS_EVENTAshish Kumar Dhanotiya2020-01-241-0/+9
| | | | | | | | | This commit introduces the vendor event QCA_NL80211_VENDOR_SUBCMD_REQUEST_SAR_LIMITS_EVENT. Host drivers can request user space application to set SAR power limits with this event. Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
* Add new QCA vendor attribute to set thermal levelVamsi Krishna2020-01-241-0/+47
| | | | | | | | | | Add a new QCA vendor attribute to set thermal level to the driver from userspace. The driver/firmware takes actions requested by userspace to mitigate high temperature such as throttling TX etc. The driver may choose the level of throttling and other actions for various thermal levels set by userspace. Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
* ACS: Update documentation of external ACS results event parametersVamsi Krishna2020-01-091-2/+7
| | | | | | | | | | | | | | Update the documentation with values to be sent for seg0 and seg1 fields in external ACS result event for 20 MHz, 40 MHz, 80 MHz, 160 MHz, and 80+80 MHz channels. These values match the changes done to definitions of seg0 and seg1 fields in the IEEE 802.11 standard. This vendor command had not previously been documented in this level of detail and had not actually been used for the only case that could have two different interpretation (160 MHz) based on which version of IEEE 802.11 standard is used. Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
* QCA vendor command for getting STA informationMin Liu2019-12-201-0/+115
| | | | | | | | | | | | Add a QCA vendor subcommand QCA_NL80211_VENDOR_SUBCMD_GET_STA_INFO with attributes defined in enum qca_wlan_vendor_attr_get_sta to get information for a BSS in STA mode or for a peer STA in AP mode. This vendor sub command can be used to get STA information from the driver to userspace. The attributes defined in enum qca_wlan_vendor_attr_get_sta_info are used to encapsulate required information. Signed-off-by: Min Liu <minliu@codeaurora.org>
* Add QCA vendor cmd for setting BT coex chain modeYu Wang2019-10-251-0/+43
| | | | | | | | | | | | | To config BT coex chain mode, add a new QCA sub command QCA_NL80211_VENDOR_SUBCMD_BTC_CHAIN_MODE. This new command has two attributes: 1. QCA_VENDOR_ATTR_COEX_BTC_CHAIN_MODE: u32 attribute. Indicates the BT coex chain mode, are 32-bit values from enum qca_btc_chain_mode. 2. QCA_VENDOR_ATTR_COEX_BTC_CHAIN_MODE_RESTART: flag attribute. If set, vdev should be restarted once BT coex chain mode is updated. Signed-off-by: Yu Wang <yyuwang@codeaurora.org>
* Extend QCA OEM data vendor subcmd to allow use as an eventAshish Kumar Dhanotiya2019-10-251-8/+11
| | | | | | | | | | The QCA_NL80211_VENDOR_SUBCMD_OEM_DATA command was previously defined only to pass data blobs from user space to kernel (application to firmware) but there was no mechanism to send the data blobs from firmware to application. Extend this to define use of the same subcommand and attributes as vendor events. Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
* QCA vendor command for adding a STA nodeShiva Sankar Gajula2019-10-151-0/+24
| | | | | | | | | | | | Add a QCA vendor subcommand QCA_NL80211_VENDOR_SUBCMD_ADD_STA_NODE with attributes qca_wlan_vendor_attr_add_sta_node_params to add STA peer entries in AP mode. This vendor sub command is used in FT roaming scenario to send STA node information from application/service to driver/firmware. The attributes defined in enum qca_wlan_vendor_attr_add_sta_node_params are used to deliver the parameters. Signed-off-by: Shiva Sankar Gajula <sgajula@codeaurora.org>
* Add a new QCA vendor attribute to carry device info for OEM dataSubrat Dash2019-10-151-1/+24
| | | | | | | | | | The OEM data binary blobs from application/service will be routed to the appropriate device based on this attribute value. This optional attribute is used to specify whether the device type is virtual or physical. This attribute can be omitted when the command is for a virtual device. Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
* QCA vendor attributes to indicate BW-based agile spectral capabilityEdayilliam Jayadev2019-10-151-1/+11
| | | | | | | | Some chipsets don't have the capability to run agile spectral scan with 160/80+80 MHz modes. Add separate agile spectral scanning capability flags for 160, 80+80, and non-160 MHz modes to cover such cases. Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
* Correct the type/usage of QCA_ATTR_ROAM_CONTROL_SCAN_FREQ_LISTSrinivas Dasari2019-09-081-1/+1
| | | | | | | | | Update the documentation of QCA_ATTR_ROAM_CONTROL_SCAN_FREQ_LIST to make it a nested attribute to carry frequencies of type u32. This is to be in sync with the nl80211 attribute NL80211_ATTR_SCAN_FREQUENCIES. Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
* Add nl80211 vendor ACS trigger reasons related to interferenceKrishna Rao2019-08-301-0/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | Add the following ACS trigger reasons to enum qca_wlan_vendor_acs_select_reason: 1) QCA_WLAN_VENDOR_ACS_SELECT_REASON_GENERIC_INTERFERENCE Generic, uncategorized interference found 2) QCA_WLAN_VENDOR_ACS_SELECT_REASON_80211_INTERFERENCE Excessive 802.11 interference found 3) QCA_WLAN_VENDOR_ACS_SELECT_REASON_CW_INTERFERENCE Continuous Wave (CW) interference found 4) QCA_WLAN_VENDOR_ACS_SELECT_REASON_MWO_INTERFERENCE Microwave Oven (MWO) interference found 5) QCA_WLAN_VENDOR_ACS_SELECT_REASON_FHSS_INTERFERENCE Frequency-Hopping Spread Spectrum (FHSS) interference found 6) QCA_WLAN_VENDOR_ACS_SELECT_REASON_NON_80211_FHSS_INTERFERENCE Non-802.11 Frequency-Hopping Spread Spectrum (FHSS) interference found 7) QCA_WLAN_VENDOR_ACS_SELECT_REASON_WB_INTERFERENCE Wideband (WB) interference found 8) QCA_WLAN_VENDOR_ACS_SELECT_REASON_NON_80211_WB_INTERFERENCE Non-802.11 Wideband (WB) interference found 9) QCA_WLAN_VENDOR_ACS_SELECT_REASON_JAMMER_INTERFERENCE Jammer interference found Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
* Add QCA vendor command for avoid frequency featureRajeev Kumar Sirasanagandla2019-08-091-0/+35
| | | | | | | | | | | | Add vendor command QCA_NL80211_VENDOR_SUBCMD_AVOID_FREQUENCY_EXT and attribute qca_wlan_vendor_attr_avoid_frequency_ext to send structured avoid frequency data. This new command is alternative to existing command QCA_NL80211_VENDOR_SUBCMD_AVOID_FREQUENCY since existing command is using stream of bytes instead of structured data using vendor attributes. Signed-off-by: Rajeev Kumar Sirasanagandla <rsirasan@codeaurora.org>
* Update QCA vendor attributes for 6 GHz band supportRajeev Kumar Sirasanagandla2019-08-091-13/+306
| | | | | | | | | | | | | | | | | | | | | | | As a part of P802.11ax amendment, 6 GHz band operation is added. Since the 6 GHz channel numbers are overlapping with existing 2.4 GHz and 5 GHz channel numbers, use frequency to identify unique channel operation instead of channel number. Channel frequency is unique across bands. In the existing QCA vendor interface, wherever missing, add frequency attributes to identify unique channel operation. In addition, add comments to document some of the previously missed attributes/values. Note: If both channel and frequency attributes are present in vendor command/event and (a) If both the driver and user-space application supports 6 GHz band then channel related attributes are deprecated and use frequency attributes. (b) If either driver or user-space application or both doesn't support 6 GHz band then use channel attributes. Signed-off-by: Rajeev Kumar Sirasanagandla <rsirasan@codeaurora.org>
* Add QCA vendor channel attribute to restart APRajeev Kumar Sirasanagandla2019-08-091-1/+5
| | | | | | | | | | Add QCA_WLAN_VENDOR_ATTR_SAP_CONFIG_CHANNEL attribute in enum qca_wlan_vendor_attr_sap_config to use with vendor command QCA_NL80211_VENDOR_SUBCMD_SET_SAP_CONFIG. This new attribute is used to restart AP on given channel. Signed-off-by: Rajeev Kumar Sirasanagandla <rsirasan@codeaurora.org>
* Add QCA vendor command to configure ACS policyRajeev Kumar Sirasanagandla2019-08-091-1/+44
| | | | | | | | Add a QCA vendor sub command QCA_NL80211_VENDOR_SUBCMD_ACS_POLICY with attributes enum qca_wlan_vendor_attr_acs_config and enum qca_acs_dfs_mode to configure ACS policy. Signed-off-by: Rajeev Kumar Sirasanagandla <rsirasan@codeaurora.org>
* Add QCA vendor attributes to enhance roaming configurationSrinivas Dasari2019-08-081-0/+271
| | | | | | | | | | | | This enhances the existing vendor command QCA_NL80211_VENDOR_SUBCMD_ROAM with the following configurations: 1. Set/get/clear roam control 2. Set/get the channels on which the roaming has to be triggered. 3. Set/get the roam scan period. 4. Configure the triggers for roaming. 5. Configure the candidate selection criteria. Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
* Rename qca_wlan_vendor_attr_roam_subcmd to represent subcmdsSunil Dutt2019-08-081-23/+18
| | | | | | | | | | qca_wlan_vendor_attr_roam_subcmd is an enum associated with the attribute QCA_WLAN_VENDOR_ATTR_ROAMING_SUBCMD. It represents different sub command values and these are not the attributes. Hence, rename the enum to qca_wlan_vendor_roaming_subcmd. Accordingly, the members of this enum are also renamed to suite the usage. Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
* Document the attributes used by QCA_NL80211_VENDOR_SUBCMD_ROAMSunil Dutt2019-08-081-2/+118
| | | | | | | This commit documents the attributes used by QCA_NL80211_VENDOR_SUBCMD_ROAM. Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
* Add QCA vendor attributes for ELNA bypassPaul Zhang2019-07-221-0/+5
| | | | | | | | Add attributes QCA_WLAN_VENDOR_ATTR_CONFIG_ELNA_BYPASS under the enum qca_wlan_vendor_attr_config to support set and get the ELNA bypass. Signed-off-by: Paul Zhang <paulz@codeaurora.org>
* Add a vendor attribute to configure disconnect IEsSrinivas Dasari2019-07-191-0/+19
| | | | | | | | | | | | | | | | | | | Add a new vendor attribute QCA_WLAN_VENDOR_ATTR_DISCONNECT_IES to configure disconnect IEs to the driver. Driver shall fill these IEs in disassoc/deauth frame. These IEs are expected to be considered only for the next immediate disconnection (disassoc/deauth frame) originated by the DUT, irrespective of the entity (user space/driver/firmware) triggering the disconnection. The host drivers are not expected to use the IEs set through this interface for further disconnections after the first immediate disconnection initiated post the configuration. If the IEs are also updated through cfg80211 interface (after the enhancement to cfg80211_disconnect), host driver is expected to take the union of IEs from both of these interfaces and send in further disassoc/deauth frames. Signed-off-by: Jouni Malinen <jouni@codeaurora.org>