Merge changes from topics 'id_str_supplicant_hidl', 'p2p_wps_supplicant_hidl'

* changes:
  wifi(vts): Generate the .vts files
  wifi(interface): Use the "bitfield" type for masks
  supplicant(interface): Add sta network idstr & ft key mgmt
  supplicant(interface): Add missing STA callbacks
  supplicant(interface): Add various WPS device params
  supplicant(interface): Add P2P iface methods/cbs
This commit is contained in:
Roshan Pius
2017-01-19 22:51:21 +00:00
committed by Gerrit Code Review
40 changed files with 10037 additions and 78 deletions

View File

@@ -205,7 +205,8 @@ interface IWifiChip {
* |WifiStatusCode.ERROR_UNKNOWN|
* @return capabilities Bitset of |ChipCapabilityMask| values.
*/
getCapabilities() generates (WifiStatus status, uint32_t capabilities);
getCapabilities()
generates (WifiStatus status, bitfield<ChipCapabilityMask> capabilities);
/**
* Get the set of operation modes that the chip supports.

View File

@@ -120,7 +120,9 @@ interface IWifiStaIface extends IWifiIface {
* |WifiStatusCode.ERROR_UNKNOWN|
* @return capabilities Bitset of |StaIfaceCapabilityMask| values.
*/
getCapabilities() generates (WifiStatus status, uint32_t capabilities);
getCapabilities()
generates (WifiStatus status,
bitfield<StaIfaceCapabilityMask> capabilities);
/**
* Used to query additional information about the chip's APF capabilities.

View File

@@ -254,7 +254,7 @@ struct StaBackgroundScanCapabilities {
* Bands that can be specified in Background scan requests.
*/
enum StaBackgroundScanBand : uint32_t {
BAND_UNSPECIFIED,
BAND_UNSPECIFIED = 0,
/**
* 2.4 GHz.
*/
@@ -325,10 +325,10 @@ struct StaBackgroundScanBucketParameters {
*/
uint32_t periodInMs;
/**
* Bitset of |BackgroundScanBucketEventReportSchemeMask| values controlling
* Bitset of |StaBackgroundScanBucketEventReportSchemeMask| values controlling
* when events for this bucket must be reported.
*/
uint32_t eventReportScheme;
bitfield<StaBackgroundScanBucketEventReportSchemeMask> eventReportScheme;
/**
* For exponential back off. If |exponentialMaxPeriodInMs| is non zero or
* different than period, then this bucket is an exponential backoff bucket
@@ -503,7 +503,7 @@ struct StaScanData {
/**
* Bitset containing |ScanDataFlagMask| values.
*/
uint32_t flags;
bitfield<StaScanDataFlagMask> flags;
/**
* Bitset where each bit indicates if the bucket with that index was
* scanned.
@@ -842,6 +842,23 @@ struct NanEnableRequest {
NanDebugConfig debugConfigs;
};
/**
* Cipher suite flags - to be used as a bitmask.
*/
enum NanCipherSuiteType : uint32_t {
SHARED_KEY_128_MASK = 1 << 0,
SHARED_KEY_256_MASK = 1 << 1
};
/**
* Ranging in the context of discovery sessions indication controls - to be used as a bitmask.
*/
enum NanRangingIndication : uint32_t {
CONTINUOUS_INDICATION_MASK = 1 << 0,
INGRESS_MET_MASK = 1 << 1,
EGRESS_MET_MASK = 1 << 2
};
/**
* Configurations of NAN discovery sessions: common to publish and subscribe discovery.
*/
@@ -921,7 +938,7 @@ struct NanDiscoveryCommonConfig {
* Cipher types supported in data-paths constructed in the context of this discovery session. The
* |NanCipherSuiteType| bit fields are used to set this value.
*/
uint32_t supportedCipherTypes;
bitfield<NanCipherSuiteType> supportedCipherTypes;
/**
* Optional PMK for data-paths constructed in the context of this discovery session. A PMK could
* also be provided during the actual construction of the data-path (which allows unique PMKs for
@@ -949,7 +966,7 @@ struct NanDiscoveryCommonConfig {
* The type of ranging indication feedback to be provided by discovery session matches. Use
* bit-fields from |NanRangingIndication|.
*/
uint32_t configRangingIndications;
bitfield<NanRangingIndication> configRangingIndications;
/**
* The ingress and egress distance in cm. If ranging is eanbled (|rangingEnabled| is true) then
* \configRangingIndications\ is used to determine whether ingress and/or egress (or neither)
@@ -959,23 +976,6 @@ struct NanDiscoveryCommonConfig {
uint32_t distanceEgressCm;
};
/**
* Cipher suite flags - to be used as a bitmask.
*/
enum NanCipherSuiteType : uint32_t {
SHARED_KEY_128_MASK = 1 << 0,
SHARED_KEY_256_MASK = 1 << 1
};
/**
* Ranging in the context of discovery sessions indication controls - to be used as a bitmask.
*/
enum NanRangingIndication : uint32_t {
CONTINUOUS_INDICATION_MASK = 1 << 0,
INGRESS_MET_MASK = 1 << 1,
EGRESS_MET_MASK = 1 << 2
};
/**
* Publish request: specifies a publish discovery operation.
*/
@@ -1111,7 +1111,7 @@ struct NanInitiateDataPathRequest {
* Cipher types supported in data-paths constructed in the context of this discovery session. The
* |NanCipherSuiteType| bit fields are used to set this value.
*/
uint32_t supportedCipherTypes;
bitfield<NanCipherSuiteType> supportedCipherTypes;
/**
* PMK of the data-path being requested (if |securityRequired| is true).
* Max length: 32
@@ -1150,7 +1150,7 @@ struct NanRespondToDataPathIndicationRequest {
* Cipher types supported in data-paths constructed in the context of this discovery session. The
* |NanCipherSuiteType| bit fields are used to set this value.
*/
uint32_t supportedCipherTypes;
bitfield<NanCipherSuiteType> supportedCipherTypes;
/**
* PMK of the data-path being requested (if |securityRequired| is true).
* Max length: 32
@@ -1243,7 +1243,7 @@ struct NanCapabilities {
/**
* The set of supported Cipher suites. The |NanCipherSuiteType| bit fields are used.
*/
uint32_t supportedCipherSuites;
bitfield<NanCipherSuiteType> supportedCipherSuites;
};
/**
@@ -1294,7 +1294,7 @@ struct NanMatchInd {
* Cipher types supported by the peer for data-paths constructed in the context of this discovery
* session. The |NanCipherSuiteType| bit fields are used to set this value.
*/
uint32_t peerSupportedCipherTypes;
bitfield<NanCipherSuiteType> peerSupportedCipherTypes;
/**
* Indicates whether or not the peer requires security enabled in any data-path (NDP) constructed
* in the context of this discovery session.
@@ -1327,7 +1327,7 @@ struct NanMatchInd {
* The ranging event(s) which triggered the ranging. Uses bit-fields from |NanRangingIndication|.
* E.g. can indicate that continuous ranging is required, or else that an ingress event occurred.
*/
uint32_t rangingIndicationType;
bitfield<NanRangingIndication> rangingIndicationType;
};
/**
@@ -1421,7 +1421,7 @@ struct NanBeaconSdfPayloadInd {
* Frames on which this vendor specific attribute was received.
* Mask |NanVsaRxFrameMask| defined above.
*/
uint8_t vsaReceivedOnFrames;
bitfield<NanVsaRxFrameMask> vsaReceivedOnFrames;
/**
* Organizationally Unique Identifier (OUI) of the vendor-specific attribute.
*/
@@ -1811,12 +1811,12 @@ struct RttCapabilities {
* Bit mask indicates what preamble is supported by initiator.
* Combination of |RttPreamble| values.
*/
uint8_t preambleSupport;
bitfield<RttPreamble> preambleSupport;
/**
* Bit mask indicates what BW is supported by initiator.
* Combination of |RttBw| values.
*/
uint8_t bwSupport;
bitfield<RttBw> bwSupport;
/**
* Draft 11mc spec version supported by chip.
* For instance, version 4.0 must be 40 and version 4.3 must be 43 etc.

110
wifi/1.0/vts/Wifi.vts Normal file
View File

@@ -0,0 +1,110 @@
component_class: HAL_HIDL
component_type_version: 1.0
component_name: "IWifi"
package: "android.hardware.wifi"
import: "android.hardware.wifi@1.0::IWifiChip"
import: "android.hardware.wifi@1.0::IWifiEventCallback"
import: "android.hardware.wifi@1.0::types"
interface: {
api: {
name: "registerEventCallback"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
arg: {
type: TYPE_HIDL_CALLBACK
predefined_type: "IWifiEventCallback"
is_callback: true
}
callflow: {
entry: true
}
callflow: {
next: "*"
}
}
api: {
name: "isStarted"
return_type_hidl: {
type: TYPE_SCALAR
scalar_type: "bool_t"
}
}
api: {
name: "start"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
callflow: {
entry: true
}
callflow: {
next: "registerEventCallback"
next: "start"
next: "stop"
next: "getChip"
}
}
api: {
name: "stop"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
callflow: {
exit: true
}
callflow: {
next: "registerEventCallback"
next: "start"
next: "stop"
}
}
api: {
name: "getChipIds"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
return_type_hidl: {
type: TYPE_VECTOR
vector_value: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
}
callflow: {
next: "*"
}
}
api: {
name: "getChip"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
return_type_hidl: {
type: TYPE_HIDL_INTERFACE
predefined_type: "IWifiChip"
is_callback: false
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
callflow: {
next: "*"
}
}
}

View File

@@ -0,0 +1,33 @@
component_class: HAL_HIDL
component_type_version: 1.0
component_name: "IWifiApIface"
package: "android.hardware.wifi"
import: "android.hardware.wifi@1.0::IWifiIface"
interface: {
api: {
name: "getType"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
return_type_hidl: {
type: TYPE_ENUM
predefined_type: "::android::hardware::wifi::V1_0::IfaceType"
}
}
api: {
name: "getName"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
return_type_hidl: {
type: TYPE_STRING
}
}
}

545
wifi/1.0/vts/WifiChip.vts Normal file
View File

@@ -0,0 +1,545 @@
component_class: HAL_HIDL
component_type_version: 1.0
component_name: "IWifiChip"
package: "android.hardware.wifi"
import: "android.hardware.wifi@1.0::IWifiApIface"
import: "android.hardware.wifi@1.0::IWifiChipEventCallback"
import: "android.hardware.wifi@1.0::IWifiIface"
import: "android.hardware.wifi@1.0::IWifiNanIface"
import: "android.hardware.wifi@1.0::IWifiP2pIface"
import: "android.hardware.wifi@1.0::IWifiRttController"
import: "android.hardware.wifi@1.0::IWifiStaIface"
import: "android.hardware.wifi@1.0::types"
interface: {
attribute: {
name: "::android::hardware::wifi::V1_0::IWifiChip::ChipIfaceCombinationLimit"
type: TYPE_STRUCT
struct_value: {
name: "types"
type: TYPE_VECTOR
vector_value: {
type: TYPE_ENUM
predefined_type: "::android::hardware::wifi::V1_0::IfaceType"
}
}
struct_value: {
name: "maxIfaces"
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
}
attribute: {
name: "::android::hardware::wifi::V1_0::IWifiChip::ChipIfaceCombination"
type: TYPE_STRUCT
struct_value: {
name: "limits"
type: TYPE_VECTOR
vector_value: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::IWifiChip::ChipIfaceCombinationLimit"
}
}
}
attribute: {
name: "::android::hardware::wifi::V1_0::IWifiChip::ChipMode"
type: TYPE_STRUCT
struct_value: {
name: "id"
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
struct_value: {
name: "availableCombinations"
type: TYPE_VECTOR
vector_value: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::IWifiChip::ChipIfaceCombination"
}
}
}
attribute: {
name: "::android::hardware::wifi::V1_0::IWifiChip::ChipDebugInfo"
type: TYPE_STRUCT
struct_value: {
name: "driverDescription"
type: TYPE_STRING
}
struct_value: {
name: "firmwareDescription"
type: TYPE_STRING
}
}
attribute: {
name: "::android::hardware::wifi::V1_0::IWifiChip::ChipCapabilityMask"
type: TYPE_ENUM
enum_value: {
scalar_type: "uint32_t"
enumerator: "DEBUG_MEMORY_FIRMWARE_DUMP"
scalar_value: {
uint32_t: 1
}
enumerator: "DEBUG_MEMORY_DRIVER_DUMP"
scalar_value: {
uint32_t: 2
}
enumerator: "DEBUG_RING_BUFFER_CONNECT_EVENT"
scalar_value: {
uint32_t: 4
}
enumerator: "DEBUG_RING_BUFFER_POWER_EVENT"
scalar_value: {
uint32_t: 8
}
enumerator: "DEBUG_RING_BUFFER_WAKELOCK_EVENT"
scalar_value: {
uint32_t: 16
}
enumerator: "DEBUG_RING_BUFFER_VENDOR_DATA"
scalar_value: {
uint32_t: 32
}
enumerator: "DEBUG_HOST_WAKE_REASON_STATS"
scalar_value: {
uint32_t: 64
}
enumerator: "DEBUG_ERROR_ALERTS"
scalar_value: {
uint32_t: 128
}
}
}
api: {
name: "getId"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
return_type_hidl: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
}
api: {
name: "registerEventCallback"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
arg: {
type: TYPE_HIDL_CALLBACK
predefined_type: "IWifiChipEventCallback"
is_callback: true
}
}
api: {
name: "getCapabilities"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
return_type_hidl: {
type: TYPE_MASK
predefined_type: "::android::hardware::wifi::V1_0::IWifiChip::ChipCapabilityMask"
}
}
api: {
name: "getAvailableModes"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
return_type_hidl: {
type: TYPE_VECTOR
vector_value: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::IWifiChip::ChipMode"
}
}
}
api: {
name: "configureChip"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
}
api: {
name: "getMode"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
return_type_hidl: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
}
api: {
name: "requestChipDebugInfo"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::IWifiChip::ChipDebugInfo"
}
}
api: {
name: "requestDriverDebugDump"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
return_type_hidl: {
type: TYPE_VECTOR
vector_value: {
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
}
api: {
name: "requestFirmwareDebugDump"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
return_type_hidl: {
type: TYPE_VECTOR
vector_value: {
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
}
api: {
name: "createApIface"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
return_type_hidl: {
type: TYPE_HIDL_INTERFACE
predefined_type: "IWifiApIface"
is_callback: false
}
}
api: {
name: "getApIfaceNames"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
return_type_hidl: {
type: TYPE_VECTOR
vector_value: {
type: TYPE_STRING
}
}
}
api: {
name: "getApIface"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
return_type_hidl: {
type: TYPE_HIDL_INTERFACE
predefined_type: "IWifiApIface"
is_callback: false
}
arg: {
type: TYPE_STRING
}
}
api: {
name: "removeApIface"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
arg: {
type: TYPE_STRING
}
}
api: {
name: "createNanIface"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
return_type_hidl: {
type: TYPE_HIDL_INTERFACE
predefined_type: "IWifiNanIface"
is_callback: false
}
}
api: {
name: "getNanIfaceNames"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
return_type_hidl: {
type: TYPE_VECTOR
vector_value: {
type: TYPE_STRING
}
}
}
api: {
name: "getNanIface"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
return_type_hidl: {
type: TYPE_HIDL_INTERFACE
predefined_type: "IWifiNanIface"
is_callback: false
}
arg: {
type: TYPE_STRING
}
}
api: {
name: "removeNanIface"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
arg: {
type: TYPE_STRING
}
}
api: {
name: "createP2pIface"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
return_type_hidl: {
type: TYPE_HIDL_INTERFACE
predefined_type: "IWifiP2pIface"
is_callback: false
}
}
api: {
name: "getP2pIfaceNames"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
return_type_hidl: {
type: TYPE_VECTOR
vector_value: {
type: TYPE_STRING
}
}
}
api: {
name: "getP2pIface"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
return_type_hidl: {
type: TYPE_HIDL_INTERFACE
predefined_type: "IWifiP2pIface"
is_callback: false
}
arg: {
type: TYPE_STRING
}
}
api: {
name: "removeP2pIface"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
arg: {
type: TYPE_STRING
}
}
api: {
name: "createStaIface"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
return_type_hidl: {
type: TYPE_HIDL_INTERFACE
predefined_type: "IWifiStaIface"
is_callback: false
}
}
api: {
name: "getStaIfaceNames"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
return_type_hidl: {
type: TYPE_VECTOR
vector_value: {
type: TYPE_STRING
}
}
}
api: {
name: "getStaIface"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
return_type_hidl: {
type: TYPE_HIDL_INTERFACE
predefined_type: "IWifiStaIface"
is_callback: false
}
arg: {
type: TYPE_STRING
}
}
api: {
name: "removeStaIface"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
arg: {
type: TYPE_STRING
}
}
api: {
name: "createRttController"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
return_type_hidl: {
type: TYPE_HIDL_INTERFACE
predefined_type: "IWifiRttController"
is_callback: false
}
arg: {
type: TYPE_HIDL_INTERFACE
predefined_type: "IWifiIface"
is_callback: false
}
}
api: {
name: "getDebugRingBuffersStatus"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
return_type_hidl: {
type: TYPE_VECTOR
vector_value: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiDebugRingBufferStatus"
}
}
}
api: {
name: "startLoggingToDebugRingBuffer"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
arg: {
type: TYPE_STRING
}
arg: {
type: TYPE_ENUM
predefined_type: "::android::hardware::wifi::V1_0::WifiDebugRingBufferVerboseLevel"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
}
api: {
name: "forceDumpToDebugRingBuffer"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
arg: {
type: TYPE_STRING
}
}
api: {
name: "getDebugHostWakeReasonStats"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiDebugHostWakeReasonStats"
}
}
api: {
name: "enableDebugErrorAlerts"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "bool_t"
}
}
}

View File

@@ -0,0 +1,78 @@
component_class: HAL_HIDL
component_type_version: 1.0
component_name: "IWifiChipEventCallback"
package: "android.hardware.wifi"
import: "android.hardware.wifi@1.0::types"
interface: {
api: {
name: "onChipReconfigured"
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
}
api: {
name: "onChipReconfigureFailure"
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
}
api: {
name: "onIfaceAdded"
arg: {
type: TYPE_ENUM
predefined_type: "::android::hardware::wifi::V1_0::IfaceType"
}
arg: {
type: TYPE_STRING
}
}
api: {
name: "onIfaceRemoved"
arg: {
type: TYPE_ENUM
predefined_type: "::android::hardware::wifi::V1_0::IfaceType"
}
arg: {
type: TYPE_STRING
}
}
api: {
name: "onDebugRingBufferDataAvailable"
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiDebugRingBufferStatus"
}
arg: {
type: TYPE_VECTOR
vector_value: {
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
}
api: {
name: "onDebugErrorAlert"
arg: {
type: TYPE_SCALAR
scalar_type: "int32_t"
}
arg: {
type: TYPE_VECTOR
vector_value: {
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
}
}

View File

@@ -0,0 +1,26 @@
component_class: HAL_HIDL
component_type_version: 1.0
component_name: "IWifiEventCallback"
package: "android.hardware.wifi"
import: "android.hardware.wifi@1.0::types"
interface: {
api: {
name: "onStart"
}
api: {
name: "onStop"
}
api: {
name: "onFailure"
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
}
}

View File

@@ -0,0 +1,33 @@
component_class: HAL_HIDL
component_type_version: 1.0
component_name: "IWifiIface"
package: "android.hardware.wifi"
import: "android.hardware.wifi@1.0::types"
interface: {
api: {
name: "getType"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
return_type_hidl: {
type: TYPE_ENUM
predefined_type: "::android::hardware::wifi::V1_0::IfaceType"
}
}
api: {
name: "getName"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
return_type_hidl: {
type: TYPE_STRING
}
}
}

View File

@@ -0,0 +1,278 @@
component_class: HAL_HIDL
component_type_version: 1.0
component_name: "IWifiNanIface"
package: "android.hardware.wifi"
import: "android.hardware.wifi@1.0::IWifiIface"
import: "android.hardware.wifi@1.0::IWifiNanIfaceEventCallback"
import: "android.hardware.wifi@1.0::types"
interface: {
api: {
name: "getType"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
return_type_hidl: {
type: TYPE_ENUM
predefined_type: "::android::hardware::wifi::V1_0::IfaceType"
}
}
api: {
name: "getName"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
return_type_hidl: {
type: TYPE_STRING
}
}
api: {
name: "registerEventCallback"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
arg: {
type: TYPE_HIDL_CALLBACK
predefined_type: "IWifiNanIfaceEventCallback"
is_callback: true
}
}
api: {
name: "getCapabilitiesRequest"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint16_t"
}
}
api: {
name: "enableRequest"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint16_t"
}
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::NanEnableRequest"
}
}
api: {
name: "configRequest"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint16_t"
}
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::NanConfigRequest"
}
}
api: {
name: "disableRequest"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint16_t"
}
}
api: {
name: "startPublishRequest"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint16_t"
}
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::NanPublishRequest"
}
}
api: {
name: "stopPublishRequest"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint16_t"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint16_t"
}
}
api: {
name: "startSubscribeRequest"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint16_t"
}
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::NanSubscribeRequest"
}
}
api: {
name: "stopSubscribeRequest"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint16_t"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint16_t"
}
}
api: {
name: "transmitFollowupRequest"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint16_t"
}
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::NanTransmitFollowupRequest"
}
}
api: {
name: "createDataInterfaceRequest"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint16_t"
}
arg: {
type: TYPE_STRING
}
}
api: {
name: "deleteDataInterfaceRequest"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint16_t"
}
arg: {
type: TYPE_STRING
}
}
api: {
name: "initiateDataPathRequest"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint16_t"
}
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::NanInitiateDataPathRequest"
}
}
api: {
name: "respondToDataPathIndicationRequest"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint16_t"
}
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::NanRespondToDataPathIndicationRequest"
}
}
api: {
name: "terminateDataPathRequest"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint16_t"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
}
api: {
name: "beaconSdfPayloadRequest"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint16_t"
}
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::NanBeaconSdfPayloadRequest"
}
}
}

View File

@@ -0,0 +1,318 @@
component_class: HAL_HIDL
component_type_version: 1.0
component_name: "IWifiNanIfaceEventCallback"
package: "android.hardware.wifi"
import: "android.hardware.wifi@1.0::types"
interface: {
api: {
name: "notifyCapabilitiesResponse"
arg: {
type: TYPE_SCALAR
scalar_type: "uint16_t"
}
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiNanStatus"
}
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::NanCapabilities"
}
}
api: {
name: "notifyEnableResponse"
arg: {
type: TYPE_SCALAR
scalar_type: "uint16_t"
}
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiNanStatus"
}
}
api: {
name: "notifyConfigResponse"
arg: {
type: TYPE_SCALAR
scalar_type: "uint16_t"
}
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiNanStatus"
}
}
api: {
name: "notifyDisableResponse"
arg: {
type: TYPE_SCALAR
scalar_type: "uint16_t"
}
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiNanStatus"
}
}
api: {
name: "notifyStartPublishResponse"
arg: {
type: TYPE_SCALAR
scalar_type: "uint16_t"
}
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiNanStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint16_t"
}
}
api: {
name: "notifyStopPublishResponse"
arg: {
type: TYPE_SCALAR
scalar_type: "uint16_t"
}
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiNanStatus"
}
}
api: {
name: "notifyStartSubscribeResponse"
arg: {
type: TYPE_SCALAR
scalar_type: "uint16_t"
}
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiNanStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint16_t"
}
}
api: {
name: "notifyStopSubscribeResponse"
arg: {
type: TYPE_SCALAR
scalar_type: "uint16_t"
}
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiNanStatus"
}
}
api: {
name: "notifyTransmitFollowupResponse"
arg: {
type: TYPE_SCALAR
scalar_type: "uint16_t"
}
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiNanStatus"
}
}
api: {
name: "notifyCreateDataInterfaceResponse"
arg: {
type: TYPE_SCALAR
scalar_type: "uint16_t"
}
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiNanStatus"
}
}
api: {
name: "notifyDeleteDataInterfaceResponse"
arg: {
type: TYPE_SCALAR
scalar_type: "uint16_t"
}
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiNanStatus"
}
}
api: {
name: "notifyInitiateDataPathResponse"
arg: {
type: TYPE_SCALAR
scalar_type: "uint16_t"
}
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiNanStatus"
}
}
api: {
name: "notifyRespondToDataPathIndicationResponse"
arg: {
type: TYPE_SCALAR
scalar_type: "uint16_t"
}
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiNanStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
}
api: {
name: "notifyTerminateDataPathResponse"
arg: {
type: TYPE_SCALAR
scalar_type: "uint16_t"
}
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiNanStatus"
}
}
api: {
name: "notifyBeaconSdfPayloadResponse"
arg: {
type: TYPE_SCALAR
scalar_type: "uint16_t"
}
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiNanStatus"
}
}
api: {
name: "eventClusterEvent"
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::NanClusterEventInd"
}
}
api: {
name: "eventDisabled"
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiNanStatus"
}
}
api: {
name: "eventPublishTerminated"
arg: {
type: TYPE_SCALAR
scalar_type: "uint16_t"
}
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiNanStatus"
}
}
api: {
name: "eventSubscribeTerminated"
arg: {
type: TYPE_SCALAR
scalar_type: "uint16_t"
}
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiNanStatus"
}
}
api: {
name: "eventMatch"
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::NanMatchInd"
}
}
api: {
name: "eventMatchExpired"
arg: {
type: TYPE_SCALAR
scalar_type: "uint16_t"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
}
api: {
name: "eventFollowupReceived"
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::NanFollowupReceivedInd"
}
}
api: {
name: "eventTransmitFollowup"
arg: {
type: TYPE_SCALAR
scalar_type: "uint16_t"
}
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiNanStatus"
}
}
api: {
name: "eventDataPathRequest"
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::NanDataPathRequestInd"
}
}
api: {
name: "eventDataPathConfirm"
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::NanDataPathConfirmInd"
}
}
api: {
name: "eventDataPathTerminated"
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
}
api: {
name: "eventBeaconSdfPayload"
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::NanBeaconSdfPayloadInd"
}
}
}

View File

@@ -0,0 +1,33 @@
component_class: HAL_HIDL
component_type_version: 1.0
component_name: "IWifiP2pIface"
package: "android.hardware.wifi"
import: "android.hardware.wifi@1.0::IWifiIface"
interface: {
api: {
name: "getType"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
return_type_hidl: {
type: TYPE_ENUM
predefined_type: "::android::hardware::wifi::V1_0::IfaceType"
}
}
api: {
name: "getName"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
return_type_hidl: {
type: TYPE_STRING
}
}
}

View File

@@ -0,0 +1,172 @@
component_class: HAL_HIDL
component_type_version: 1.0
component_name: "IWifiRttController"
package: "android.hardware.wifi"
import: "android.hardware.wifi@1.0::IWifiIface"
import: "android.hardware.wifi@1.0::IWifiRttControllerEventCallback"
import: "android.hardware.wifi@1.0::types"
interface: {
api: {
name: "getBoundIface"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
return_type_hidl: {
type: TYPE_HIDL_INTERFACE
predefined_type: "IWifiIface"
is_callback: false
}
}
api: {
name: "registerEventCallback"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
arg: {
type: TYPE_HIDL_CALLBACK
predefined_type: "IWifiRttControllerEventCallback"
is_callback: true
}
}
api: {
name: "rangeRequest"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
arg: {
type: TYPE_VECTOR
vector_value: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::RttConfig"
}
}
}
api: {
name: "rangeCancel"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
arg: {
type: TYPE_VECTOR
vector_value: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
}
}
api: {
name: "getCapabilities"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::RttCapabilities"
}
}
api: {
name: "setLci"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::RttLciInformation"
}
}
api: {
name: "setLcr"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::RttLcrInformation"
}
}
api: {
name: "getResponderInfo"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::RttResponder"
}
}
api: {
name: "enableResponder"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiChannelInfo"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::RttResponder"
}
}
api: {
name: "disableResponder"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
}
}

View File

@@ -0,0 +1,25 @@
component_class: HAL_HIDL
component_type_version: 1.0
component_name: "IWifiRttControllerEventCallback"
package: "android.hardware.wifi"
import: "android.hardware.wifi@1.0::types"
interface: {
api: {
name: "onResults"
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
arg: {
type: TYPE_VECTOR
vector_value: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::RttResult"
}
}
}
}

View File

@@ -0,0 +1,432 @@
component_class: HAL_HIDL
component_type_version: 1.0
component_name: "IWifiStaIface"
package: "android.hardware.wifi"
import: "android.hardware.wifi@1.0::IWifiIface"
import: "android.hardware.wifi@1.0::IWifiStaIfaceEventCallback"
import: "android.hardware.wifi@1.0::types"
interface: {
attribute: {
name: "::android::hardware::wifi::V1_0::IWifiStaIface::StaIfaceCapabilityMask"
type: TYPE_ENUM
enum_value: {
scalar_type: "uint32_t"
enumerator: "APF"
scalar_value: {
uint32_t: 1
}
enumerator: "BACKGROUND_SCAN"
scalar_value: {
uint32_t: 2
}
enumerator: "LINK_LAYER_STATS"
scalar_value: {
uint32_t: 4
}
enumerator: "RSSI_MONITOR"
scalar_value: {
uint32_t: 8
}
enumerator: "CONTROL_ROAMING"
scalar_value: {
uint32_t: 16
}
enumerator: "PROBE_IE_WHITELIST"
scalar_value: {
uint32_t: 32
}
enumerator: "SCAN_RAND"
scalar_value: {
uint32_t: 64
}
enumerator: "STA_5G"
scalar_value: {
uint32_t: 128
}
enumerator: "HOTSPOT"
scalar_value: {
uint32_t: 256
}
enumerator: "PNO"
scalar_value: {
uint32_t: 512
}
enumerator: "TDLS"
scalar_value: {
uint32_t: 1024
}
enumerator: "TDLS_OFFCHANNEL"
scalar_value: {
uint32_t: 2048
}
enumerator: "ND_OFFLOAD"
scalar_value: {
uint32_t: 4096
}
enumerator: "KEEP_ALIVE"
scalar_value: {
uint32_t: 8192
}
enumerator: "DEBUG_PACKET_FATE"
scalar_value: {
uint32_t: 16384
}
}
}
api: {
name: "getType"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
return_type_hidl: {
type: TYPE_ENUM
predefined_type: "::android::hardware::wifi::V1_0::IfaceType"
}
}
api: {
name: "getName"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
return_type_hidl: {
type: TYPE_STRING
}
}
api: {
name: "registerEventCallback"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
arg: {
type: TYPE_HIDL_CALLBACK
predefined_type: "IWifiStaIfaceEventCallback"
is_callback: true
}
}
api: {
name: "getCapabilities"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
return_type_hidl: {
type: TYPE_MASK
predefined_type: "::android::hardware::wifi::V1_0::IWifiStaIface::StaIfaceCapabilityMask"
}
}
api: {
name: "getApfPacketFilterCapabilities"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::StaApfPacketFilterCapabilities"
}
}
api: {
name: "installApfPacketFilter"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
arg: {
type: TYPE_VECTOR
vector_value: {
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
}
api: {
name: "getBackgroundScanCapabilities"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::StaBackgroundScanCapabilities"
}
}
api: {
name: "getValidFrequenciesForBackgroundScan"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
return_type_hidl: {
type: TYPE_VECTOR
vector_value: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
}
arg: {
type: TYPE_ENUM
predefined_type: "::android::hardware::wifi::V1_0::StaBackgroundScanBand"
}
}
api: {
name: "startBackgroundScan"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::StaBackgroundScanParameters"
}
}
api: {
name: "stopBackgroundScan"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
}
api: {
name: "enableLinkLayerStatsCollection"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "bool_t"
}
}
api: {
name: "disableLinkLayerStatsCollection"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
}
api: {
name: "getLinkLayerStats"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::StaLinkLayerStats"
}
}
api: {
name: "startRssiMonitoring"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
arg: {
type: TYPE_SCALAR
scalar_type: "int32_t"
}
arg: {
type: TYPE_SCALAR
scalar_type: "int32_t"
}
}
api: {
name: "stopRssiMonitoring"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
}
api: {
name: "getRoamingCapabilities"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::StaRoamingCapabilities"
}
}
api: {
name: "configureRoaming"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::StaRoamingConfig"
}
}
api: {
name: "setRoamingState"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
arg: {
type: TYPE_ENUM
predefined_type: "::android::hardware::wifi::V1_0::StaRoamingState"
}
}
api: {
name: "enableNdOffload"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "bool_t"
}
}
api: {
name: "startSendingKeepAlivePackets"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
arg: {
type: TYPE_VECTOR
vector_value: {
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint16_t"
}
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
}
api: {
name: "stopSendingKeepAlivePackets"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
}
api: {
name: "startDebugPacketFateMonitoring"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
}
api: {
name: "stopDebugPacketFateMonitoring"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
}
api: {
name: "getDebugTxPacketFates"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
return_type_hidl: {
type: TYPE_VECTOR
vector_value: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiDebugTxPacketFateReport"
}
}
}
api: {
name: "getDebugRxPacketFates"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
}
return_type_hidl: {
type: TYPE_VECTOR
vector_value: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::WifiDebugRxPacketFateReport"
}
}
}
}

View File

@@ -0,0 +1,65 @@
component_class: HAL_HIDL
component_type_version: 1.0
component_name: "IWifiStaIfaceEventCallback"
package: "android.hardware.wifi"
import: "android.hardware.wifi@1.0::types"
interface: {
api: {
name: "onBackgroundScanFailure"
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
}
api: {
name: "onBackgroundFullScanResult"
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::StaScanResult"
}
}
api: {
name: "onBackgroundScanResults"
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
arg: {
type: TYPE_VECTOR
vector_value: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::V1_0::StaScanData"
}
}
}
api: {
name: "onRssiThresholdBreached"
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
arg: {
type: TYPE_SCALAR
scalar_type: "int32_t"
}
}
}

2846
wifi/1.0/vts/types.vts Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -35,6 +35,25 @@ $(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (P2pGroupCapabilityMask)
#
GEN := $(intermediates)/android/hardware/wifi/supplicant/V1_0/P2pGroupCapabilityMask.java
$(GEN): $(HIDL)
$(GEN): PRIVATE_HIDL := $(HIDL)
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
$(GEN): PRIVATE_CUSTOM_TOOL = \
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-Ljava \
-randroid.hardware:hardware/interfaces \
-randroid.hidl:system/libhidl/transport \
android.hardware.wifi.supplicant@1.0::types.P2pGroupCapabilityMask
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (SupplicantStatus)
#
@@ -73,6 +92,25 @@ $(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (WpsConfigMethods)
#
GEN := $(intermediates)/android/hardware/wifi/supplicant/V1_0/WpsConfigMethods.java
$(GEN): $(HIDL)
$(GEN): PRIVATE_HIDL := $(HIDL)
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
$(GEN): PRIVATE_CUSTOM_TOOL = \
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-Ljava \
-randroid.hardware:hardware/interfaces \
-randroid.hidl:system/libhidl/transport \
android.hardware.wifi.supplicant@1.0::types.WpsConfigMethods
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build ISupplicant.hal
#
@@ -376,6 +414,25 @@ $(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (P2pGroupCapabilityMask)
#
GEN := $(intermediates)/android/hardware/wifi/supplicant/V1_0/P2pGroupCapabilityMask.java
$(GEN): $(HIDL)
$(GEN): PRIVATE_HIDL := $(HIDL)
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
$(GEN): PRIVATE_CUSTOM_TOOL = \
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-Ljava \
-randroid.hardware:hardware/interfaces \
-randroid.hidl:system/libhidl/transport \
android.hardware.wifi.supplicant@1.0::types.P2pGroupCapabilityMask
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (SupplicantStatus)
#
@@ -414,6 +471,25 @@ $(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build types.hal (WpsConfigMethods)
#
GEN := $(intermediates)/android/hardware/wifi/supplicant/V1_0/WpsConfigMethods.java
$(GEN): $(HIDL)
$(GEN): PRIVATE_HIDL := $(HIDL)
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
$(GEN): PRIVATE_CUSTOM_TOOL = \
$(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-Ljava \
-randroid.hardware:hardware/interfaces \
-randroid.hidl:system/libhidl/transport \
android.hardware.wifi.supplicant@1.0::types.WpsConfigMethods
$(GEN): $(LOCAL_PATH)/types.hal
$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
#
# Build ISupplicant.hal
#

View File

@@ -37,4 +37,9 @@ interface ISupplicantCallback {
* @param ifName Name of the network interface, e.g., wlan0
*/
oneway onInterfaceRemoved(string ifName);
/**
* Used to indicate that the supplicant daemon is terminating.
*/
oneway onTerminating();
};

View File

@@ -23,6 +23,17 @@ import ISupplicantNetwork;
* it controls.
*/
interface ISupplicantIface {
/**
* Size limits for some of the params used in this interface.
*/
enum ParamSizeLimits : uint32_t {
WPS_DEVICE_NAME_MAX_LEN = 32,
WPS_MANUFACTURER_MAX_LEN = 64,
WPS_MODEL_NAME_MAX_LEN = 32,
WPS_MODEL_NUMBER_MAX_LEN = 32,
WPS_SERIAL_NUMBER_MAX_LEN = 32
};
/**
* Retrieves the name of the network interface.
*
@@ -105,9 +116,92 @@ interface ISupplicantIface {
* @return status Status of the operation.
* Possible status codes:
* |SupplicantStatusCode.SUCCESS|,
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|,
* |SupplicantStatusCode.FAILURE_UNKNOWN|
* @return networkIds List of all network Id's controlled by the supplicant.
*/
listNetworks()
generates (SupplicantStatus status, vec<SupplicantNetworkId> networkIds);
/**
* Set the device name for WPS operations.
* User-friendly description of device (up to |WPS_DEVICE_NAME_MAX_LEN|
* octets encoded in UTF-8).
*
* @parm name Name to be set.
* @return status Status of the operation.
* Possible status codes:
* |SupplicantStatusCode.SUCCESS|,
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|,
* |SupplicantStatusCode.FAILURE_UNKNOWN|
*/
setWpsDeviceName(string name) generates (SupplicantStatus status);
/**
* Set the manufacturer for WPS operations.
* The manufacturer of the device (up to |WPS_MANUFACTURER_MAX_LEN| ASCII
* characters).
*
* @parm manufacturer Manufacture to be set.
* @return status Status of the operation.
* Possible status codes:
* |SupplicantStatusCode.SUCCESS|,
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|,
* |SupplicantStatusCode.FAILURE_UNKNOWN|
*/
setWpsManufacturer(string manufacturer) generates (SupplicantStatus status);
/**
* Set the model name for WPS operations.
* Model of the device (up to |WPS_MODEL_NAME_MAX_LEN| ASCII characters).
*
* @parm modelName Model name to be set.
* @return status Status of the operation.
* Possible status codes:
* |SupplicantStatusCode.SUCCESS|,
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|,
* |SupplicantStatusCode.FAILURE_UNKNOWN|
*/
setWpsModelName(string modelName) generates (SupplicantStatus status);
/**
* Set the model number for WPS operations.
* Additional device description (up to |WPS_MODEL_NUMBER_MAX_LEN| ASCII
* characters).
*
* @parm modelNumber Model number to be set.
* @return status Status of the operation.
* Possible status codes:
* |SupplicantStatusCode.SUCCESS|,
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|,
* |SupplicantStatusCode.FAILURE_UNKNOWN|
*/
setWpsModelNumber(string modelNumber) generates (SupplicantStatus status);
/**
* Set the serial number for WPS operations.
* Serial number of the device (up to |WPS_SERIAL_NUMBER_MAX_LEN| characters)
*
* @parm serialNumber Serial number to be set.
* @return status Status of the operation.
* Possible status codes:
* |SupplicantStatusCode.SUCCESS|,
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|,
* |SupplicantStatusCode.FAILURE_UNKNOWN|
*/
setWpsSerialNumber(string serialNumber) generates (SupplicantStatus status);
/**
* Set the list of supported config methods for WPS operations.
*
* @param configMethods Mask of WPS configuration methods supported by the
* device.
* @return status Status of the operation.
* Possible status codes:
* |SupplicantStatusCode.SUCCESS|,
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|,
* |SupplicantStatusCode.FAILURE_UNKNOWN|
*/
setWpsConfigMethods(bitfield<WpsConfigMethods> configMethods)
generates (SupplicantStatus status);
};

View File

@@ -40,16 +40,6 @@ interface ISupplicantP2pIface extends ISupplicantIface {
KEYPAD
};
enum GroupCapabilityMask : uint32_t {
GROUP_OWNER = 1 << 0,
PERSISTENT_GROUP = 1 << 1,
GROUP_LIMIT = 1 << 2,
INTRA_BSS_DIST = 1 << 3,
CROSS_CONN = 1 << 4,
PERSISTENT_RECONN = 1 << 5,
GROUP_FORMATION = 1 << 6
};
/**
* Use to specify a range of frequencies.
* For example: 2412-2432,2462,5000-6000, etc.
@@ -420,10 +410,11 @@ interface ISupplicantP2pIface extends ISupplicantIface {
* |SupplicantStatusCode.SUCCESS|,
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|
* @return capabilityMask Combination of |GroupCapabilityMask| values.
* @return capabilityMask Combination of |P2pGroupCapabilityMask| values.
*/
getGroupCapability(MacAddress peerAddress)
generates (SupplicantStatus status, uint32_t capabilities);
generates (SupplicantStatus status,
bitfield<P2pGroupCapabilityMask> capabilities);
/**
* This command can be used to add a bonjour service.
@@ -533,7 +524,8 @@ interface ISupplicantP2pIface extends ISupplicantIface {
* @return status Status of the operation.
* Possible status codes:
* |SupplicantStatusCode.SUCCESS|,
* |SupplicantStatusCode.FAILURE_UNKNOWN|
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|
*/
setMiracastMode(MiracastMode mode)
generates (SupplicantStatus status);
@@ -548,7 +540,8 @@ interface ISupplicantP2pIface extends ISupplicantIface {
* @return status Status of the operation.
* Possible status codes:
* |SupplicantStatusCode.SUCCESS|,
* |SupplicantStatusCode.FAILURE_UNKNOWN|
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|
*/
startWpsPbc(string groupIfName, Bssid bssid)
generates (SupplicantStatus status);
@@ -561,7 +554,8 @@ interface ISupplicantP2pIface extends ISupplicantIface {
* @return status Status of the operation.
* Possible status codes:
* |SupplicantStatusCode.SUCCESS|,
* |SupplicantStatusCode.FAILURE_UNKNOWN|
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|
*/
startWpsPinKeypad(string groupIfName, string pin)
generates (SupplicantStatus status);
@@ -574,7 +568,8 @@ interface ISupplicantP2pIface extends ISupplicantIface {
* @return status Status of the operation.
* Possible status codes:
* |SupplicantStatusCode.SUCCESS|,
* |SupplicantStatusCode.FAILURE_UNKNOWN|
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|
* @return generatedPin 8 digit pin generated.
*/
startWpsPinDisplay(string groupIfName, Bssid bssid)
@@ -587,7 +582,34 @@ interface ISupplicantP2pIface extends ISupplicantIface {
* @return status Status of the operation.
* Possible status codes:
* |SupplicantStatusCode.SUCCESS|,
* |SupplicantStatusCode.FAILURE_UNKNOWN|
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|
*/
cancelWps(string groupIfName) generates (SupplicantStatus status);
/**
* Enable/Disable Wifi Display.
*
* @param enable true to enable, false to disable.
* @return status Status of the operation.
* Possible status codes:
* |SupplicantStatusCode.SUCCESS|,
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|
*/
enableWfd(bool enable) generates (SupplicantStatus status);
/**
* Set Wifi Display device info.
*
* @param info WFD device info as described in section 5.1.2 of WFD technical
* specification v1.0.0.
* @return status Status of the operation.
* Possible status codes:
* |SupplicantStatusCode.SUCCESS|,
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|
*/
setWfdDeviceInfo(uint8_t[8] info) generates (SupplicantStatus status);
};

View File

@@ -25,6 +25,50 @@ package android.hardware.wifi.supplicant@1.0;
* corresponding |ISupplicantP2pIface.registerCallback| method.
*/
interface ISupplicantP2pIfaceCallback {
/**
* WPS Device Password ID
*/
enum WpsDevPasswordId : uint16_t {
DEFAULT = 0x0000,
USER_SPECIFIED = 0x0001,
MACHINE_SPECIFIED = 0x0002,
REKEY = 0x0003,
PUSHBUTTON = 0x0004,
REGISTRAR_SPECIFIED = 0x0005,
NFC_CONNECTION_HANDOVER = 0x0007,
P2PS_DEFAULT = 0x0008
};
/**
* Status codes for P2P operations.
*/
enum P2pStatusCode : uint32_t {
SUCCESS = 0,
FAIL_INFO_CURRENTLY_UNAVAILABLE = 1,
FAIL_INCOMPATIBLE_PARAMS = 2,
FAIL_LIMIT_REACHED = 3,
FAIL_INVALID_PARAMS = 4,
FAIL_UNABLE_TO_ACCOMMODATE = 5,
FAIL_PREV_PROTOCOL_ERROR = 6,
FAIL_NO_COMMON_CHANNELS = 7,
FAIL_UNKNOWN_GROUP = 8,
FAIL_BOTH_GO_INTENT_15 = 9,
FAIL_INCOMPATIBLE_PROV_METHOD = 10,
FAIL_REJECTED_BY_USER = 11,
SUCCESS_DEFERRED = 12,
};
/**
* Status codes for P2P discovery.
*/
enum P2pProvDiscStatusCode : uint8_t {
SUCCESS = 0,
TIMEOUT = 1,
REJECTED = 2,
TIMEOUT_JOIN = 3,
INFO_UNAVAILABLE = 4
};
/**
* Used to indicate that a new network has been added.
*
@@ -38,4 +82,192 @@ interface ISupplicantP2pIfaceCallback {
* @param id Network ID allocated to the corresponding network.
*/
oneway onNetworkRemoved(SupplicantNetworkId id);
/**
* Used to indicate that a P2P device has been found.
*
* @param srcAddress MAC address of the device found. This must either
* be the P2P device address or the P2P interface address.
* @param p2pDeviceAddress P2P device address.
* @param primaryDeviceType Type of device. Refer to section B.1 of Wifi P2P
* Technical specification v1.2.
* @param deviceName Name of the device.
* @param configMethods Mask of WPS configuration methods supported by the
* device.
* @param deviceCapabilities Refer to section 4.1.4 of Wifi P2P Technical
* specification v1.2.
* @param groupCapabilites Refer to section 4.1.4 of Wifi P2P Technical
* specification v1.2.
* @param wfdDeviceInfo WFD device info as described in section 5.1.2 of WFD
* technical specification v1.0.0.
*/
oneway onDeviceFound(
MacAddress srcAddress, MacAddress p2pDeviceAddress,
uint8_t[8] primaryDeviceType, string deviceName,
bitfield<WpsConfigMethods> configMethods, uint8_t deviceCapabilities,
bitfield<P2pGroupCapabilityMask> groupCapabilities, uint8_t[8] wfdDeviceInfo);
/**
* Used to indicate that a P2P device has been lost.
*
* @param p2pDeviceAddress P2P device address.
*/
oneway onDeviceLost(MacAddress p2pDeviceAddress);
/**
* Used to indicate the termination of P2P find operation.
*/
oneway onFindStopped();
/**
* Used to indicate the reception of a P2P Group Owner negotiation request.
*
* @param srcAddress MAC address of the device that initiated the GO
* negotiation request.
* @param passwordId Type of password.
*/
oneway onGoNegotiationRequest(
MacAddress srcAddress, WpsDevPasswordId passwordId);
/**
* Used to indicate the completion of a P2P Group Owner negotiation request.
*
* @param status Status of the GO negotiation.
*/
oneway onGoNegotiationCompleted(P2pStatusCode status);
/**
* Used to indicate a successful formation of a P2P group.
*/
oneway onGroupFormationSuccess();
/**
* Used to indicate a failure to form a P2P group.
*
* @param failureReason Failure reason string for debug purposes.
*/
oneway onGroupFormationFailure(string failureReason);
/**
* Used to indicate the start of a P2P group.
*
* @param groupIfName Interface name of the group. (For ex: p2p-p2p0-1)
* @param isGo Whether this device is owner of the group.
* @param ssid SSID of the group.
* @param frequency Frequency on which this group is created.
* @param psk PSK used to secure the group.
* @param passphrase PSK passphrase used to secure the group.
* @param goDeviceAddress MAC Address of the owner of this group.
* @param isPersistent Whether this group is persisted or not.
*/
oneway onGroupStarted(
string groupIfname, bool isGo, Ssid ssid, uint32_t frequency,
uint8_t[32] psk, string passphrase, MacAddress goDeviceAddress,
bool isPersistent);
/**
* Used to indicate the removal of a P2P group.
*
* @param groupIfName Interface name of the group. (For ex: p2p-p2p0-1)
* @param isGo Whether this device is owner of the group.
*/
oneway onGroupRemoved(string groupIfname, bool isGo);
/**
* Used to indicate the reception of a P2P invitation.
*
* @param srcAddress MAC address of the device that sent the invitation.
* @param goDeviceAddress MAC Address of the owner of this group.
* @param Bssid Bssid of the group.
* @param persistentNetworkId Persistent network Id of the group.
* @param operatingFrequency Frequency on which the invitation was received.
*/
oneway onInvitationReceived(
MacAddress srcAddress, MacAddress goDeviceAddress, Bssid bssid,
SupplicantNetworkId persistentNetworkId, uint32_t operatingFrequency);
/**
* Used to indicate the result of the P2P invitation request.
*
* @param Bssid Bssid of the group.
* @param status Status of the invitation.
*/
oneway onInvitationResult(Bssid bssid, P2pStatusCode status);
/**
* Used to indicate a push-button request generated during provision discovery.
*
* @param p2pDeviceAddress P2P device address.
*/
oneway onProvisionDiscoveryPbcRequest(MacAddress p2pDeviceAddress);
/**
* Used to indicate a push-button response generated during provision discovery.
*
* @param p2pDeviceAddress P2P device address.
*/
oneway onProvisionDiscoveryPbcResponse(MacAddress p2pDeviceAddress);
/**
* Used to indicate the pin generated during provision discovery.
*
* @param p2pDeviceAddress P2P device address.
* @param generatedPin 8 digit pin generated.
*/
oneway onProvisionDiscoveryShowPin(
MacAddress p2pDeviceAddress, string generatedPin);
/**
* Used to indicate that a pin needs to be entered during provision discovery.
*
* @param p2pDeviceAddress P2P device address.
*/
oneway onProvisionDiscoveryEnterPin(MacAddress p2pDeviceAddress);
/**
* Used to indicate a provision discovery failure.
*
* @param p2pDeviceAddress P2P device address.
*/
oneway onProvisionDiscoveryFailure(MacAddress p2pDeviceAddress);
/**
* Used to indicate the completion of a P2P provision discovery request.
*
* @param p2pDeviceAddress P2P device address.
* @param isRequest Whether we received or sent the provision discovery.
* @param status Status of the provision discovery.
* @param configMethods Mask of WPS configuration methods supported.
* @param generatedPin 8 digit pin generated.
*/
oneway onProvisionDiscoveryCompleted(
MacAddress p2pDeviceAddress, bool isRequest, P2pProvDiscStatusCode status,
bitfield<WpsConfigMethods> configMethods, string generatedPin);
/**
* Used to indicate the reception of a P2P service discovery response.
*
* @param srcAddress MAC address of the device that sent the service discovery.
* @param updateIndicator Service update indicator. Refer to section 3.1.3 of
* Wifi P2P Technical specification v1.2.
* @parm tlvs Refer to section 3.1.3.1 of Wifi P2P Technical specification v1.2.
*/
oneway onServiceDiscoveryResponse(
MacAddress srcAddress, uint16_t updateIndicator, vec<uint8_t> tlvs);
/**
* Used to indicate when a STA device is connected to this device.
*
* @param srcAddress MAC address of the device that was authorized.
* @param p2pDeviceAddress P2P device address.
*/
oneway onStaAuthorized(MacAddress srcAddress, MacAddress p2pDeviceAddress);
/**
* Used to indicate when a STA device is disconnected from this device.
*
* @param srcAddress MAC address of the device that was deauthorized.
* @param p2pDeviceAddress P2P device address.
*/
oneway onStaDeauthorized(MacAddress srcAddress, MacAddress p2pDeviceAddress);
};

View File

@@ -42,4 +42,62 @@ interface ISupplicantP2pNetwork extends ISupplicantNetwork {
*/
registerCallback(ISupplicantP2pNetworkCallback callback)
generates (SupplicantStatus status);
/**
* Getters for the various network params.
*/
/**
* Get SSID for this network.
*
* @return status Status of the operation.
* Possible status codes:
* |SupplicantStatusCode.SUCCESS|,
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
* @return ssid value set.
*/
getSsid() generates (SupplicantStatus status, Ssid ssid);
/**
* Get the BSSID set for this network.
*
* @return status Status of the operation.
* Possible status codes:
* |SupplicantStatusCode.SUCCESS|,
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
* @return bssid value set.
*/
getBssid() generates (SupplicantStatus status, Bssid bssid);
/**
* Check if the network is currently active one.
*
* @return status Status of the operation.
* Possible status codes:
* |SupplicantStatusCode.SUCCESS|,
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
* @return isCurrent true if current, false otherwise.
*/
isCurrent() generates (SupplicantStatus status, bool isCurrent);
/**
* Check if the network is marked persistent.
*
* @return status Status of the operation.
* Possible status codes:
* |SupplicantStatusCode.SUCCESS|,
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
* @return isPersistent true if persistent, false otherwise.
*/
isPersistent() generates (SupplicantStatus status, bool isPersistent);
/**
* Check if the device is the group owner of the network.
*
* @return status Status of the operation.
* Possible status codes:
* |SupplicantStatusCode.SUCCESS|,
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
* @return isGo true if group owner, false otherwise.
*/
isGo() generates (SupplicantStatus status, bool isGo);
};

View File

@@ -219,7 +219,8 @@ interface ISupplicantStaIface extends ISupplicantIface {
* @return status Status of the operation.
* Possible status codes:
* |SupplicantStatusCode.SUCCESS|,
* |SupplicantStatusCode.FAILURE_UNKNOWN|
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|
* @return macAddr MAC address of the device.
*/
getMacAddress()
@@ -231,7 +232,8 @@ interface ISupplicantStaIface extends ISupplicantIface {
* @return status Status of the operation.
* Possible status codes:
* |SupplicantStatusCode.SUCCESS|,
* |SupplicantStatusCode.FAILURE_UNKNOWN|
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|
*/
startRxFilter() generates (SupplicantStatus status);
@@ -241,7 +243,8 @@ interface ISupplicantStaIface extends ISupplicantIface {
* @return status Status of the operation.
* Possible status codes:
* |SupplicantStatusCode.SUCCESS|,
* |SupplicantStatusCode.FAILURE_UNKNOWN|
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|
*/
stopRxFilter() generates (SupplicantStatus status);
@@ -252,7 +255,8 @@ interface ISupplicantStaIface extends ISupplicantIface {
* @return status Status of the operation.
* Possible status codes:
* |SupplicantStatusCode.SUCCESS|,
* |SupplicantStatusCode.FAILURE_UNKNOWN|
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|
*/
addRxFilter(RxFilterType type)
generates (SupplicantStatus status);
@@ -264,7 +268,8 @@ interface ISupplicantStaIface extends ISupplicantIface {
* @return status Status of the operation.
* Possible status codes:
* |SupplicantStatusCode.SUCCESS|,
* |SupplicantStatusCode.FAILURE_UNKNOWN|
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|
*/
removeRxFilter(RxFilterType type)
generates (SupplicantStatus status);
@@ -276,7 +281,8 @@ interface ISupplicantStaIface extends ISupplicantIface {
* @return status Status of the operation.
* Possible status codes:
* |SupplicantStatusCode.SUCCESS|,
* |SupplicantStatusCode.FAILURE_UNKNOWN|
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|
*/
setBtCoexistenceMode(BtCoexistenceMode mode)
generates (SupplicantStatus status);
@@ -291,7 +297,8 @@ interface ISupplicantStaIface extends ISupplicantIface {
* @return status Status of the operation.
* Possible status codes:
* |SupplicantStatusCode.SUCCESS|,
* |SupplicantStatusCode.FAILURE_UNKNOWN|
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|
*/
setBtCoexistenceScanModeEnabled(bool enable)
generates (SupplicantStatus status);
@@ -303,7 +310,8 @@ interface ISupplicantStaIface extends ISupplicantIface {
* @return status Status of the operation.
* Possible status codes:
* |SupplicantStatusCode.SUCCESS|,
* |SupplicantStatusCode.FAILURE_UNKNOWN|
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|
*/
setSuspendModeEnabled(bool enable)
generates (SupplicantStatus status);
@@ -315,7 +323,8 @@ interface ISupplicantStaIface extends ISupplicantIface {
* @return status Status of the operation.
* Possible status codes:
* |SupplicantStatusCode.SUCCESS|,
* |SupplicantStatusCode.FAILURE_UNKNOWN|
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|
*/
setCountryCode(int8_t[2] code)
generates (SupplicantStatus status);
@@ -328,7 +337,8 @@ interface ISupplicantStaIface extends ISupplicantIface {
* @return status Status of the operation.
* Possible status codes:
* |SupplicantStatusCode.SUCCESS|,
* |SupplicantStatusCode.FAILURE_UNKNOWN|
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|
*/
startWpsRegistrar(Bssid bssid, string pin)
generates (SupplicantStatus status);
@@ -342,7 +352,8 @@ interface ISupplicantStaIface extends ISupplicantIface {
* @return status Status of the operation.
* Possible status codes:
* |SupplicantStatusCode.SUCCESS|,
* |SupplicantStatusCode.FAILURE_UNKNOWN|
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|
*/
startWpsPbc(Bssid bssid) generates (SupplicantStatus status);
@@ -353,7 +364,8 @@ interface ISupplicantStaIface extends ISupplicantIface {
* @return status Status of the operation.
* Possible status codes:
* |SupplicantStatusCode.SUCCESS|,
* |SupplicantStatusCode.FAILURE_UNKNOWN|
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|
*/
startWpsPinKeypad(string pin) generates (SupplicantStatus status);
@@ -364,7 +376,8 @@ interface ISupplicantStaIface extends ISupplicantIface {
* @return status Status of the operation.
* Possible status codes:
* |SupplicantStatusCode.SUCCESS|,
* |SupplicantStatusCode.FAILURE_UNKNOWN|
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|
* @return generatedPin 8 digit pin generated.
*/
startWpsPinDisplay(Bssid bssid)
@@ -376,7 +389,20 @@ interface ISupplicantStaIface extends ISupplicantIface {
* @return status Status of the operation.
* Possible status codes:
* |SupplicantStatusCode.SUCCESS|,
* |SupplicantStatusCode.FAILURE_UNKNOWN|
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|
*/
cancelWps() generates (SupplicantStatus status);
/**
* Use external processing for SIM/USIM operations
*
* @param useExternalSim true to use external, false otherwise.
* @return status Status of the operation.
* Possible status codes:
* |SupplicantStatusCode.SUCCESS|,
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|
*/
setExternalSim(bool useExternalSim) generates (SupplicantStatus status);
};

View File

@@ -257,8 +257,15 @@ interface ISupplicantStaIfaceCallback {
string url);
/**
* Used to indicate a disconnect from the currently connected
* network on this iface,.
* Used to indicate the connection to a new network on this iface.
*
* @param bssid BSSID of the AP to which we connected.
*/
oneway onConnected(Bssid bssid);
/**
* Used to indicate the disconnection from the currently connected
* network on this iface.
*
* @param bssid BSSID of the AP from which we disconnected.
* @param locallyGenerated If the disconnect was triggered by
@@ -269,6 +276,13 @@ interface ISupplicantStaIfaceCallback {
oneway onDisconnected(
Bssid bssid, bool locallyGenerated, uint32_t reasonCode);
/**
* Used to indicate the completion of association to an AP.
*
* @param bssid BSSID of the corresponding AP.
*/
oneway onAssociationCompleted(Bssid bssid);
/**
* Used to indicate an association rejection recieved from the AP
* to which the connection is being attempted.
@@ -280,6 +294,18 @@ interface ISupplicantStaIfaceCallback {
*/
oneway onAssociationRejected(Bssid bssid, uint32_t statusCode);
/**
* Used to indicate the timeout of authentication to an AP.
*
* @param bssid BSSID of the corresponding AP.
*/
oneway onAuthenticationTimeout(Bssid bssid);
/**
* Used to indicate an EAP authentication failure.
*/
oneway onEapFailure();
/**
* Used to indicate the success of a WPS connection attempt.
*/

View File

@@ -51,7 +51,10 @@ interface ISupplicantStaNetwork extends ISupplicantNetwork {
WPA_EAP = 1 << 0,
WPA_PSK = 1 << 1,
NONE = 1 << 2,
IEEE8021X = 1 << 3
IEEE8021X = 1 << 3,
FT_EAP = 1 << 5,
FT_PSK = 1 << 6,
OSEN = 1 << 15
};
/** Possble mask of values for Proto param. */
@@ -74,7 +77,8 @@ interface ISupplicantStaNetwork extends ISupplicantNetwork {
WEP40 = 1 << 1,
WEP104 = 1 << 2,
TKIP = 1 << 3,
CCMP = 1 << 4
CCMP = 1 << 4,
GTK_NOT_USED = 1 << 14
};
/** Possble mask of values for PairwiseCipher param. */
@@ -193,7 +197,7 @@ interface ISupplicantStaNetwork extends ISupplicantNetwork {
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
*/
setKeyMgmt(uint32_t keyMgmtMask) generates (SupplicantStatus status);
setKeyMgmt(bitfield<KeyMgmtMask> keyMgmtMask) generates (SupplicantStatus status);
/**
* Set proto mask for the network.
@@ -207,7 +211,7 @@ interface ISupplicantStaNetwork extends ISupplicantNetwork {
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
*/
setProto(uint32_t protoMask) generates (SupplicantStatus status);
setProto(bitfield<ProtoMask> protoMask) generates (SupplicantStatus status);
/**
* Set auth alg mask for the network.
@@ -221,7 +225,7 @@ interface ISupplicantStaNetwork extends ISupplicantNetwork {
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
*/
setAuthAlg(uint32_t authAlgMask) generates (SupplicantStatus status);
setAuthAlg(bitfield<AuthAlgMask> authAlgMask) generates (SupplicantStatus status);
/**
* Set group cipher mask for the network.
@@ -235,7 +239,7 @@ interface ISupplicantStaNetwork extends ISupplicantNetwork {
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
*/
setGroupCipher(uint32_t groupCipherMask)
setGroupCipher(bitfield<GroupCipherMask> groupCipherMask)
generates (SupplicantStatus status);
/**
@@ -250,7 +254,7 @@ interface ISupplicantStaNetwork extends ISupplicantNetwork {
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
*/
setPairwiseCipher(uint32_t pairwiseCipherMask)
setPairwiseCipher(bitfield<PairwiseCipherMask> pairwiseCipherMask)
generates (SupplicantStatus status);
/**
@@ -504,6 +508,19 @@ interface ISupplicantStaNetwork extends ISupplicantNetwork {
*/
setEapDomainSuffixMatch(string match)
generates (SupplicantStatus status);
/**
* Get ID string set for this network.
* Network identifier string for external scripts.
*
* @return idStr ID string value to set.
* @return status Status of the operation.
* Possible status codes:
* |SupplicantStatusCode.SUCCESS|,
* |SupplicantStatusCode.FAILURE_ARGS_INVALID|,
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
*/
setIdStr(string idStr) generates (SupplicantStatus status);
/**
* Getters for the various network params.
@@ -551,7 +568,7 @@ interface ISupplicantStaNetwork extends ISupplicantNetwork {
* @return keyMgmtMask Combination of |KeyMgmtMask| values.
*/
getKeyMgmt()
generates (SupplicantStatus status, uint32_t keyMgmtMask);
generates (SupplicantStatus status, bitfield<KeyMgmtMask> keyMgmtMask);
/**
* Get the proto mask set for the network.
@@ -562,7 +579,7 @@ interface ISupplicantStaNetwork extends ISupplicantNetwork {
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
* @return protoMask Combination of |ProtoMask| values.
*/
getProto() generates (SupplicantStatus status, uint32_t protoMask);
getProto() generates (SupplicantStatus status, bitfield<ProtoMask> protoMask);
/**
* Get the auth alg mask set for the network.
@@ -574,7 +591,7 @@ interface ISupplicantStaNetwork extends ISupplicantNetwork {
* @return authAlgMask Combination of |AuthAlgMask| values.
*/
getAuthAlg()
generates (SupplicantStatus status, uint32_t authAlgMask);
generates (SupplicantStatus status, bitfield<AuthAlgMask> authAlgMask);
/**
* Get the group cipher mask set for the network.
@@ -586,7 +603,8 @@ interface ISupplicantStaNetwork extends ISupplicantNetwork {
* @return groupCipherMask Combination of |GroupCipherMask| values.
*/
getGroupCipher()
generates (SupplicantStatus status, uint32_t groupCipherMask);
generates (SupplicantStatus status,
bitfield<GroupCipherMask> groupCipherMask);
/**
* Get the pairwise cipher mask set for the network.
@@ -598,7 +616,8 @@ interface ISupplicantStaNetwork extends ISupplicantNetwork {
* @return pairwiseCipherMask Combination of |PairwiseCipherMask| values.
*/
getPairwiseCipher()
generates (SupplicantStatus status, uint32_t pairwiseCipherMask);
generates (SupplicantStatus status,
bitfield<PairwiseCipherMask> pairwiseCipherMask);
/**
* Get passphrase for WPA_PSK network.
@@ -826,6 +845,20 @@ interface ISupplicantStaNetwork extends ISupplicantNetwork {
getEapDomainSuffixMatch()
generates (SupplicantStatus status, string match);
/**
* Get ID string set for this network.
* Network identifier string for external scripts.
*
* @return status Status of the operation.
* Possible status codes:
* |SupplicantStatusCode.SUCCESS|,
* |SupplicantStatusCode.FAILURE_ARGS_INVALID|,
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
* |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
* @return idStr ID string set.
*/
getIdStr() generates (SupplicantStatus status, string idStr);
/**
* Enable the network for connection purposes.
*

View File

@@ -73,3 +73,38 @@ enum IfaceType : uint32_t {
STA,
P2P
};
/**
* P2P group capability.
*/
enum P2pGroupCapabilityMask : uint32_t {
GROUP_OWNER = 1 << 0,
PERSISTENT_GROUP = 1 << 1,
GROUP_LIMIT = 1 << 2,
INTRA_BSS_DIST = 1 << 3,
CROSS_CONN = 1 << 4,
PERSISTENT_RECONN = 1 << 5,
GROUP_FORMATION = 1 << 6
};
/**
* WPS config methods.
* Refer to section 3 of IBSS with Wi-Fi Protected Setup
* Technical Specification Version 1.0.0.
*/
enum WpsConfigMethods : uint16_t {
USBA = 0x0001,
ETHERNET = 0x0002,
LABEL = 0x0004,
DISPLAY = 0x0008,
EXT_NFC_TOKEN = 0x0010,
INT_NFC_TOKEN = 0x0020,
NFC_INTERFACE = 0x0040,
PUSHBUTTON = 0x0080,
KEYPAD = 0x0100,
VIRT_PUSHBUTTON = 0x0280,
PHY_PUSHBUTTON = 0x0480,
P2PS = 0x1000,
VIRT_DISPLAY = 0x2008,
PHY_DISPLAY = 0x4008
};

View File

@@ -0,0 +1,160 @@
component_class: HAL_HIDL
component_type_version: 1.0
component_name: "ISupplicant"
package: "android.hardware.wifi.supplicant"
import: "android.hardware.wifi.supplicant@1.0::ISupplicantCallback"
import: "android.hardware.wifi.supplicant@1.0::ISupplicantIface"
import: "android.hardware.wifi.supplicant@1.0::types"
interface: {
attribute: {
name: "::android::hardware::wifi::supplicant::V1_0::ISupplicant::DebugLevel"
type: TYPE_ENUM
enum_value: {
scalar_type: "uint32_t"
enumerator: "EXCESSIVE"
scalar_value: {
uint32_t: 0
}
enumerator: "MSGDUMP"
scalar_value: {
uint32_t: 1
}
enumerator: "DEBUG"
scalar_value: {
uint32_t: 2
}
enumerator: "INFO"
scalar_value: {
uint32_t: 3
}
enumerator: "WARNING"
scalar_value: {
uint32_t: 4
}
enumerator: "ERROR"
scalar_value: {
uint32_t: 5
}
}
}
attribute: {
name: "::android::hardware::wifi::supplicant::V1_0::ISupplicant::IfaceInfo"
type: TYPE_STRUCT
struct_value: {
name: "type"
type: TYPE_ENUM
predefined_type: "::android::hardware::wifi::supplicant::V1_0::IfaceType"
}
struct_value: {
name: "name"
type: TYPE_STRING
}
}
api: {
name: "getInterface"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
return_type_hidl: {
type: TYPE_HIDL_INTERFACE
predefined_type: "ISupplicantIface"
is_callback: false
}
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::ISupplicant::IfaceInfo"
}
}
api: {
name: "listInterfaces"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
return_type_hidl: {
type: TYPE_VECTOR
vector_value: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::ISupplicant::IfaceInfo"
}
}
}
api: {
name: "registerCallback"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_HIDL_CALLBACK
predefined_type: "ISupplicantCallback"
is_callback: true
}
}
api: {
name: "setDebugParams"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_ENUM
predefined_type: "::android::hardware::wifi::supplicant::V1_0::ISupplicant::DebugLevel"
}
arg: {
type: TYPE_SCALAR
scalar_type: "bool_t"
}
arg: {
type: TYPE_SCALAR
scalar_type: "bool_t"
}
}
api: {
name: "getDebugLevel"
return_type_hidl: {
type: TYPE_ENUM
predefined_type: "::android::hardware::wifi::supplicant::V1_0::ISupplicant::DebugLevel"
}
}
api: {
name: "isDebugShowTimestampEnabled"
return_type_hidl: {
type: TYPE_SCALAR
scalar_type: "bool_t"
}
}
api: {
name: "isDebugShowKeysEnabled"
return_type_hidl: {
type: TYPE_SCALAR
scalar_type: "bool_t"
}
}
api: {
name: "setConcurrencyPriority"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_ENUM
predefined_type: "::android::hardware::wifi::supplicant::V1_0::IfaceType"
}
}
}

View File

@@ -0,0 +1,27 @@
component_class: HAL_HIDL
component_type_version: 1.0
component_name: "ISupplicantCallback"
package: "android.hardware.wifi.supplicant"
interface: {
api: {
name: "onInterfaceCreated"
arg: {
type: TYPE_STRING
}
}
api: {
name: "onInterfaceRemoved"
arg: {
type: TYPE_STRING
}
}
api: {
name: "onTerminating"
}
}

View File

@@ -0,0 +1,187 @@
component_class: HAL_HIDL
component_type_version: 1.0
component_name: "ISupplicantIface"
package: "android.hardware.wifi.supplicant"
import: "android.hardware.wifi.supplicant@1.0::ISupplicantNetwork"
import: "android.hardware.wifi.supplicant@1.0::types"
interface: {
attribute: {
name: "::android::hardware::wifi::supplicant::V1_0::ISupplicantIface::ParamSizeLimits"
type: TYPE_ENUM
enum_value: {
scalar_type: "uint32_t"
enumerator: "WPS_DEVICE_NAME_MAX_LEN"
scalar_value: {
uint32_t: 32
}
enumerator: "WPS_MANUFACTURER_MAX_LEN"
scalar_value: {
uint32_t: 64
}
enumerator: "WPS_MODEL_NAME_MAX_LEN"
scalar_value: {
uint32_t: 32
}
enumerator: "WPS_MODEL_NUMBER_MAX_LEN"
scalar_value: {
uint32_t: 32
}
enumerator: "WPS_SERIAL_NUMBER_MAX_LEN"
scalar_value: {
uint32_t: 32
}
}
}
api: {
name: "getName"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
return_type_hidl: {
type: TYPE_STRING
}
}
api: {
name: "getType"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
return_type_hidl: {
type: TYPE_ENUM
predefined_type: "::android::hardware::wifi::supplicant::V1_0::IfaceType"
}
}
api: {
name: "addNetwork"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
return_type_hidl: {
type: TYPE_HIDL_INTERFACE
predefined_type: "ISupplicantNetwork"
is_callback: false
}
}
api: {
name: "removeNetwork"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
}
api: {
name: "getNetwork"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
return_type_hidl: {
type: TYPE_HIDL_INTERFACE
predefined_type: "ISupplicantNetwork"
is_callback: false
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
}
api: {
name: "listNetworks"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
return_type_hidl: {
type: TYPE_VECTOR
vector_value: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
}
}
api: {
name: "setWpsDeviceName"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_STRING
}
}
api: {
name: "setWpsManufacturer"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_STRING
}
}
api: {
name: "setWpsModelName"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_STRING
}
}
api: {
name: "setWpsModelNumber"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_STRING
}
}
api: {
name: "setWpsSerialNumber"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_STRING
}
}
api: {
name: "setWpsConfigMethods"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_MASK
predefined_type: "::android::hardware::wifi::supplicant::V1_0::WpsConfigMethods"
}
}
}

View File

@@ -0,0 +1,45 @@
component_class: HAL_HIDL
component_type_version: 1.0
component_name: "ISupplicantNetwork"
package: "android.hardware.wifi.supplicant"
import: "android.hardware.wifi.supplicant@1.0::types"
interface: {
api: {
name: "getId"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
return_type_hidl: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
}
api: {
name: "getInterfaceName"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
return_type_hidl: {
type: TYPE_STRING
}
}
api: {
name: "getType"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
return_type_hidl: {
type: TYPE_ENUM
predefined_type: "::android::hardware::wifi::supplicant::V1_0::IfaceType"
}
}
}

View File

@@ -0,0 +1,813 @@
component_class: HAL_HIDL
component_type_version: 1.0
component_name: "ISupplicantP2pIface"
package: "android.hardware.wifi.supplicant"
import: "android.hardware.wifi.supplicant@1.0::ISupplicantIface"
import: "android.hardware.wifi.supplicant@1.0::ISupplicantP2pIfaceCallback"
import: "android.hardware.wifi.supplicant@1.0::types"
interface: {
attribute: {
name: "::android::hardware::wifi::supplicant::V1_0::ISupplicantIface::ParamSizeLimits"
type: TYPE_ENUM
enum_value: {
scalar_type: "uint32_t"
enumerator: "WPS_DEVICE_NAME_MAX_LEN"
scalar_value: {
uint32_t: 32
}
enumerator: "WPS_MANUFACTURER_MAX_LEN"
scalar_value: {
uint32_t: 64
}
enumerator: "WPS_MODEL_NAME_MAX_LEN"
scalar_value: {
uint32_t: 32
}
enumerator: "WPS_MODEL_NUMBER_MAX_LEN"
scalar_value: {
uint32_t: 32
}
enumerator: "WPS_SERIAL_NUMBER_MAX_LEN"
scalar_value: {
uint32_t: 32
}
}
}
attribute: {
name: "::android::hardware::wifi::supplicant::V1_0::ISupplicantP2pIface::WpsProvisionMethod"
type: TYPE_ENUM
enum_value: {
scalar_type: "uint32_t"
enumerator: "PBC"
scalar_value: {
uint32_t: 0
}
enumerator: "DISPLAY"
scalar_value: {
uint32_t: 1
}
enumerator: "KEYPAD"
scalar_value: {
uint32_t: 2
}
}
}
attribute: {
name: "::android::hardware::wifi::supplicant::V1_0::ISupplicantP2pIface::FreqRange"
type: TYPE_STRUCT
struct_value: {
name: "min"
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
struct_value: {
name: "max"
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
}
attribute: {
name: "::android::hardware::wifi::supplicant::V1_0::ISupplicantP2pIface::MiracastMode"
type: TYPE_ENUM
enum_value: {
scalar_type: "uint8_t"
enumerator: "DISABLED"
scalar_value: {
uint8_t: 0
}
enumerator: "SOURCE"
scalar_value: {
uint8_t: 1
}
enumerator: "SINK"
scalar_value: {
uint8_t: 2
}
}
}
api: {
name: "getName"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
return_type_hidl: {
type: TYPE_STRING
}
}
api: {
name: "getType"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
return_type_hidl: {
type: TYPE_ENUM
predefined_type: "::android::hardware::wifi::supplicant::V1_0::IfaceType"
}
}
api: {
name: "addNetwork"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
return_type_hidl: {
type: TYPE_HIDL_INTERFACE
predefined_type: "ISupplicantNetwork"
is_callback: false
}
}
api: {
name: "removeNetwork"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
}
api: {
name: "getNetwork"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
return_type_hidl: {
type: TYPE_HIDL_INTERFACE
predefined_type: "ISupplicantNetwork"
is_callback: false
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
}
api: {
name: "listNetworks"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
return_type_hidl: {
type: TYPE_VECTOR
vector_value: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
}
}
api: {
name: "setWpsDeviceName"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_STRING
}
}
api: {
name: "setWpsManufacturer"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_STRING
}
}
api: {
name: "setWpsModelName"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_STRING
}
}
api: {
name: "setWpsModelNumber"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_STRING
}
}
api: {
name: "setWpsSerialNumber"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_STRING
}
}
api: {
name: "setWpsConfigMethods"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_MASK
predefined_type: "::android::hardware::wifi::supplicant::V1_0::WpsConfigMethods"
}
}
api: {
name: "registerCallback"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_HIDL_CALLBACK
predefined_type: "ISupplicantP2pIfaceCallback"
is_callback: true
}
}
api: {
name: "getDeviceAddress"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
return_type_hidl: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
}
api: {
name: "setSsidPostfix"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_VECTOR
vector_value: {
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
}
api: {
name: "setGroupIdle"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_STRING
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
}
api: {
name: "setPowerSave"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_STRING
}
arg: {
type: TYPE_SCALAR
scalar_type: "bool_t"
}
}
api: {
name: "find"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
}
api: {
name: "stopFind"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
}
api: {
name: "flush"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
}
api: {
name: "connect"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
return_type_hidl: {
type: TYPE_STRING
}
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
arg: {
type: TYPE_ENUM
predefined_type: "::android::hardware::wifi::supplicant::V1_0::ISupplicantP2pIface::WpsProvisionMethod"
}
arg: {
type: TYPE_STRING
}
arg: {
type: TYPE_SCALAR
scalar_type: "bool_t"
}
arg: {
type: TYPE_SCALAR
scalar_type: "bool_t"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
}
api: {
name: "cancelConnect"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
}
api: {
name: "provisionDiscovery"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
arg: {
type: TYPE_ENUM
predefined_type: "::android::hardware::wifi::supplicant::V1_0::ISupplicantP2pIface::WpsProvisionMethod"
}
}
api: {
name: "addGroup"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "bool_t"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
}
api: {
name: "removeGroup"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_STRING
}
}
api: {
name: "reject"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
}
api: {
name: "invite"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_STRING
}
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
}
api: {
name: "reinvoke"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
}
api: {
name: "configureExtListen"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
}
api: {
name: "setListenChannel"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
}
api: {
name: "setDisallowedFrequencies"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_VECTOR
vector_value: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::ISupplicantP2pIface::FreqRange"
}
}
}
api: {
name: "getSsid"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
return_type_hidl: {
type: TYPE_VECTOR
vector_value: {
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
}
api: {
name: "getGroupCapability"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
return_type_hidl: {
type: TYPE_MASK
predefined_type: "::android::hardware::wifi::supplicant::V1_0::P2pGroupCapabilityMask"
}
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
}
api: {
name: "addBonjourService"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_VECTOR
vector_value: {
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
arg: {
type: TYPE_VECTOR
vector_value: {
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
}
api: {
name: "removeBonjourService"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_VECTOR
vector_value: {
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
}
api: {
name: "addUpnpService"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
arg: {
type: TYPE_STRING
}
}
api: {
name: "removeUpnpService"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
arg: {
type: TYPE_STRING
}
}
api: {
name: "flushServices"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
}
api: {
name: "requestServiceDiscovery"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
return_type_hidl: {
type: TYPE_SCALAR
scalar_type: "uint64_t"
}
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
arg: {
type: TYPE_VECTOR
vector_value: {
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
}
api: {
name: "cancelServiceDiscovery"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint64_t"
}
}
api: {
name: "setMiracastMode"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_ENUM
predefined_type: "::android::hardware::wifi::supplicant::V1_0::ISupplicantP2pIface::MiracastMode"
}
}
api: {
name: "startWpsPbc"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_STRING
}
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
}
api: {
name: "startWpsPinKeypad"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_STRING
}
arg: {
type: TYPE_STRING
}
}
api: {
name: "startWpsPinDisplay"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
return_type_hidl: {
type: TYPE_STRING
}
arg: {
type: TYPE_STRING
}
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
}
api: {
name: "cancelWps"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_STRING
}
}
api: {
name: "enableWfd"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "bool_t"
}
}
api: {
name: "setWfdDeviceInfo"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 8
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
}
}

View File

@@ -0,0 +1,520 @@
component_class: HAL_HIDL
component_type_version: 1.0
component_name: "ISupplicantP2pIfaceCallback"
package: "android.hardware.wifi.supplicant"
import: "android.hardware.wifi.supplicant@1.0::types"
interface: {
attribute: {
name: "::android::hardware::wifi::supplicant::V1_0::ISupplicantP2pIfaceCallback::WpsDevPasswordId"
type: TYPE_ENUM
enum_value: {
scalar_type: "uint16_t"
enumerator: "DEFAULT"
scalar_value: {
uint16_t: 0
}
enumerator: "USER_SPECIFIED"
scalar_value: {
uint16_t: 1
}
enumerator: "MACHINE_SPECIFIED"
scalar_value: {
uint16_t: 2
}
enumerator: "REKEY"
scalar_value: {
uint16_t: 3
}
enumerator: "PUSHBUTTON"
scalar_value: {
uint16_t: 4
}
enumerator: "REGISTRAR_SPECIFIED"
scalar_value: {
uint16_t: 5
}
enumerator: "NFC_CONNECTION_HANDOVER"
scalar_value: {
uint16_t: 7
}
enumerator: "P2PS_DEFAULT"
scalar_value: {
uint16_t: 8
}
}
}
attribute: {
name: "::android::hardware::wifi::supplicant::V1_0::ISupplicantP2pIfaceCallback::P2pStatusCode"
type: TYPE_ENUM
enum_value: {
scalar_type: "uint32_t"
enumerator: "SUCCESS"
scalar_value: {
uint32_t: 0
}
enumerator: "FAIL_INFO_CURRENTLY_UNAVAILABLE"
scalar_value: {
uint32_t: 1
}
enumerator: "FAIL_INCOMPATIBLE_PARAMS"
scalar_value: {
uint32_t: 2
}
enumerator: "FAIL_LIMIT_REACHED"
scalar_value: {
uint32_t: 3
}
enumerator: "FAIL_INVALID_PARAMS"
scalar_value: {
uint32_t: 4
}
enumerator: "FAIL_UNABLE_TO_ACCOMMODATE"
scalar_value: {
uint32_t: 5
}
enumerator: "FAIL_PREV_PROTOCOL_ERROR"
scalar_value: {
uint32_t: 6
}
enumerator: "FAIL_NO_COMMON_CHANNELS"
scalar_value: {
uint32_t: 7
}
enumerator: "FAIL_UNKNOWN_GROUP"
scalar_value: {
uint32_t: 8
}
enumerator: "FAIL_BOTH_GO_INTENT_15"
scalar_value: {
uint32_t: 9
}
enumerator: "FAIL_INCOMPATIBLE_PROV_METHOD"
scalar_value: {
uint32_t: 10
}
enumerator: "FAIL_REJECTED_BY_USER"
scalar_value: {
uint32_t: 11
}
enumerator: "SUCCESS_DEFERRED"
scalar_value: {
uint32_t: 12
}
}
}
attribute: {
name: "::android::hardware::wifi::supplicant::V1_0::ISupplicantP2pIfaceCallback::P2pProvDiscStatusCode"
type: TYPE_ENUM
enum_value: {
scalar_type: "uint8_t"
enumerator: "SUCCESS"
scalar_value: {
uint8_t: 0
}
enumerator: "TIMEOUT"
scalar_value: {
uint8_t: 1
}
enumerator: "REJECTED"
scalar_value: {
uint8_t: 2
}
enumerator: "TIMEOUT_JOIN"
scalar_value: {
uint8_t: 3
}
enumerator: "INFO_UNAVAILABLE"
scalar_value: {
uint8_t: 4
}
}
}
api: {
name: "onNetworkAdded"
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
}
api: {
name: "onNetworkRemoved"
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
}
api: {
name: "onDeviceFound"
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 8
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
arg: {
type: TYPE_STRING
}
arg: {
type: TYPE_MASK
predefined_type: "::android::hardware::wifi::supplicant::V1_0::WpsConfigMethods"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
arg: {
type: TYPE_MASK
predefined_type: "::android::hardware::wifi::supplicant::V1_0::P2pGroupCapabilityMask"
}
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 8
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
}
api: {
name: "onDeviceLost"
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
}
api: {
name: "onFindStopped"
}
api: {
name: "onGoNegotiationRequest"
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
arg: {
type: TYPE_ENUM
predefined_type: "::android::hardware::wifi::supplicant::V1_0::ISupplicantP2pIfaceCallback::WpsDevPasswordId"
}
}
api: {
name: "onGoNegotiationCompleted"
arg: {
type: TYPE_ENUM
predefined_type: "::android::hardware::wifi::supplicant::V1_0::ISupplicantP2pIfaceCallback::P2pStatusCode"
}
}
api: {
name: "onGroupFormationSuccess"
}
api: {
name: "onGroupFormationFailure"
arg: {
type: TYPE_STRING
}
}
api: {
name: "onGroupStarted"
arg: {
type: TYPE_STRING
}
arg: {
type: TYPE_SCALAR
scalar_type: "bool_t"
}
arg: {
type: TYPE_VECTOR
vector_value: {
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 32
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
arg: {
type: TYPE_STRING
}
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
arg: {
type: TYPE_SCALAR
scalar_type: "bool_t"
}
}
api: {
name: "onGroupRemoved"
arg: {
type: TYPE_STRING
}
arg: {
type: TYPE_SCALAR
scalar_type: "bool_t"
}
}
api: {
name: "onInvitationReceived"
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
}
api: {
name: "onInvitationResult"
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
arg: {
type: TYPE_ENUM
predefined_type: "::android::hardware::wifi::supplicant::V1_0::ISupplicantP2pIfaceCallback::P2pStatusCode"
}
}
api: {
name: "onProvisionDiscoveryPbcRequest"
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
}
api: {
name: "onProvisionDiscoveryPbcResponse"
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
}
api: {
name: "onProvisionDiscoveryShowPin"
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
arg: {
type: TYPE_STRING
}
}
api: {
name: "onProvisionDiscoveryEnterPin"
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
}
api: {
name: "onProvisionDiscoveryFailure"
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
}
api: {
name: "onProvisionDiscoveryCompleted"
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
arg: {
type: TYPE_SCALAR
scalar_type: "bool_t"
}
arg: {
type: TYPE_ENUM
predefined_type: "::android::hardware::wifi::supplicant::V1_0::ISupplicantP2pIfaceCallback::P2pProvDiscStatusCode"
}
arg: {
type: TYPE_MASK
predefined_type: "::android::hardware::wifi::supplicant::V1_0::WpsConfigMethods"
}
arg: {
type: TYPE_STRING
}
}
api: {
name: "onServiceDiscoveryResponse"
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint16_t"
}
arg: {
type: TYPE_VECTOR
vector_value: {
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
}
api: {
name: "onStaAuthorized"
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
}
api: {
name: "onStaDeauthorized"
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
}
}

View File

@@ -0,0 +1,127 @@
component_class: HAL_HIDL
component_type_version: 1.0
component_name: "ISupplicantP2pNetwork"
package: "android.hardware.wifi.supplicant"
import: "android.hardware.wifi.supplicant@1.0::ISupplicantNetwork"
import: "android.hardware.wifi.supplicant@1.0::ISupplicantP2pNetworkCallback"
import: "android.hardware.wifi.supplicant@1.0::types"
interface: {
api: {
name: "getId"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
return_type_hidl: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
}
api: {
name: "getInterfaceName"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
return_type_hidl: {
type: TYPE_STRING
}
}
api: {
name: "getType"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
return_type_hidl: {
type: TYPE_ENUM
predefined_type: "::android::hardware::wifi::supplicant::V1_0::IfaceType"
}
}
api: {
name: "registerCallback"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_HIDL_CALLBACK
predefined_type: "ISupplicantP2pNetworkCallback"
is_callback: true
}
}
api: {
name: "getSsid"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
return_type_hidl: {
type: TYPE_VECTOR
vector_value: {
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
}
api: {
name: "getBssid"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
return_type_hidl: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
}
api: {
name: "isCurrent"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
return_type_hidl: {
type: TYPE_SCALAR
scalar_type: "bool_t"
}
}
api: {
name: "isPersistent"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
return_type_hidl: {
type: TYPE_SCALAR
scalar_type: "bool_t"
}
}
api: {
name: "isGo"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
return_type_hidl: {
type: TYPE_SCALAR
scalar_type: "bool_t"
}
}
}

View File

@@ -0,0 +1,9 @@
component_class: HAL_HIDL
component_type_version: 1.0
component_name: "ISupplicantP2pNetworkCallback"
package: "android.hardware.wifi.supplicant"
interface: {
}

View File

@@ -0,0 +1,623 @@
component_class: HAL_HIDL
component_type_version: 1.0
component_name: "ISupplicantStaIface"
package: "android.hardware.wifi.supplicant"
import: "android.hardware.wifi.supplicant@1.0::ISupplicantIface"
import: "android.hardware.wifi.supplicant@1.0::ISupplicantStaIfaceCallback"
import: "android.hardware.wifi.supplicant@1.0::types"
interface: {
attribute: {
name: "::android::hardware::wifi::supplicant::V1_0::ISupplicantIface::ParamSizeLimits"
type: TYPE_ENUM
enum_value: {
scalar_type: "uint32_t"
enumerator: "WPS_DEVICE_NAME_MAX_LEN"
scalar_value: {
uint32_t: 32
}
enumerator: "WPS_MANUFACTURER_MAX_LEN"
scalar_value: {
uint32_t: 64
}
enumerator: "WPS_MODEL_NAME_MAX_LEN"
scalar_value: {
uint32_t: 32
}
enumerator: "WPS_MODEL_NUMBER_MAX_LEN"
scalar_value: {
uint32_t: 32
}
enumerator: "WPS_SERIAL_NUMBER_MAX_LEN"
scalar_value: {
uint32_t: 32
}
}
}
attribute: {
name: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaIface::AnqpInfoId"
type: TYPE_ENUM
enum_value: {
scalar_type: "uint16_t"
enumerator: "VENUE_NAME"
scalar_value: {
uint16_t: 258
}
enumerator: "ROAMING_CONSORTIUM"
scalar_value: {
uint16_t: 261
}
enumerator: "IP_ADDR_TYPE_AVAILABILITY"
scalar_value: {
uint16_t: 262
}
enumerator: "NAI_REALM"
scalar_value: {
uint16_t: 263
}
enumerator: "ANQP_3GPP_CELLULAR_NETWORK"
scalar_value: {
uint16_t: 264
}
enumerator: "DOMAIN_NAME"
scalar_value: {
uint16_t: 268
}
}
}
attribute: {
name: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaIface::Hs20AnqpSubtypes"
type: TYPE_ENUM
enum_value: {
scalar_type: "uint32_t"
enumerator: "OPERATOR_FRIENDLY_NAME"
scalar_value: {
uint32_t: 3
}
enumerator: "WAN_METRICS"
scalar_value: {
uint32_t: 4
}
enumerator: "CONNECTION_CAPABILITY"
scalar_value: {
uint32_t: 5
}
enumerator: "OSU_PROVIDERS_LIST"
scalar_value: {
uint32_t: 8
}
}
}
attribute: {
name: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaIface::RxFilterType"
type: TYPE_ENUM
enum_value: {
scalar_type: "uint8_t"
enumerator: "V4_MULTICAST"
scalar_value: {
uint8_t: 0
}
enumerator: "V6_MULTICAST"
scalar_value: {
uint8_t: 1
}
}
}
attribute: {
name: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaIface::BtCoexistenceMode"
type: TYPE_ENUM
enum_value: {
scalar_type: "uint8_t"
enumerator: "ENABLED"
scalar_value: {
uint8_t: 0
}
enumerator: "DISABLED"
scalar_value: {
uint8_t: 1
}
enumerator: "SENSE"
scalar_value: {
uint8_t: 2
}
}
}
api: {
name: "getName"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
return_type_hidl: {
type: TYPE_STRING
}
}
api: {
name: "getType"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
return_type_hidl: {
type: TYPE_ENUM
predefined_type: "::android::hardware::wifi::supplicant::V1_0::IfaceType"
}
}
api: {
name: "addNetwork"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
return_type_hidl: {
type: TYPE_HIDL_INTERFACE
predefined_type: "ISupplicantNetwork"
is_callback: false
}
}
api: {
name: "removeNetwork"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
}
api: {
name: "getNetwork"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
return_type_hidl: {
type: TYPE_HIDL_INTERFACE
predefined_type: "ISupplicantNetwork"
is_callback: false
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
}
api: {
name: "listNetworks"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
return_type_hidl: {
type: TYPE_VECTOR
vector_value: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
}
}
api: {
name: "setWpsDeviceName"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_STRING
}
}
api: {
name: "setWpsManufacturer"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_STRING
}
}
api: {
name: "setWpsModelName"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_STRING
}
}
api: {
name: "setWpsModelNumber"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_STRING
}
}
api: {
name: "setWpsSerialNumber"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_STRING
}
}
api: {
name: "setWpsConfigMethods"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_MASK
predefined_type: "::android::hardware::wifi::supplicant::V1_0::WpsConfigMethods"
}
}
api: {
name: "registerCallback"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_HIDL_CALLBACK
predefined_type: "ISupplicantStaIfaceCallback"
is_callback: true
}
}
api: {
name: "reassociate"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
}
api: {
name: "reconnect"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
}
api: {
name: "disconnect"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
}
api: {
name: "setPowerSave"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "bool_t"
}
}
api: {
name: "initiateTdlsDiscover"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
}
api: {
name: "initiateTdlsSetup"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
}
api: {
name: "initiateTdlsTeardown"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
}
api: {
name: "initiateAnqpQuery"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
arg: {
type: TYPE_VECTOR
vector_value: {
type: TYPE_ENUM
predefined_type: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaIface::AnqpInfoId"
}
}
arg: {
type: TYPE_VECTOR
vector_value: {
type: TYPE_ENUM
predefined_type: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaIface::Hs20AnqpSubtypes"
}
}
}
api: {
name: "initiateHs20IconQuery"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
arg: {
type: TYPE_STRING
}
}
api: {
name: "getMacAddress"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
return_type_hidl: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
}
api: {
name: "startRxFilter"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
}
api: {
name: "stopRxFilter"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
}
api: {
name: "addRxFilter"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_ENUM
predefined_type: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaIface::RxFilterType"
}
}
api: {
name: "removeRxFilter"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_ENUM
predefined_type: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaIface::RxFilterType"
}
}
api: {
name: "setBtCoexistenceMode"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_ENUM
predefined_type: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaIface::BtCoexistenceMode"
}
}
api: {
name: "setBtCoexistenceScanModeEnabled"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "bool_t"
}
}
api: {
name: "setSuspendModeEnabled"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "bool_t"
}
}
api: {
name: "setCountryCode"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 2
type: TYPE_SCALAR
scalar_type: "int8_t"
}
}
}
api: {
name: "startWpsRegistrar"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
arg: {
type: TYPE_STRING
}
}
api: {
name: "startWpsPbc"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
}
api: {
name: "startWpsPinKeypad"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_STRING
}
}
api: {
name: "startWpsPinDisplay"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
return_type_hidl: {
type: TYPE_STRING
}
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
}
api: {
name: "cancelWps"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
}
api: {
name: "setExternalSim"
return_type_hidl: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
}
arg: {
type: TYPE_SCALAR
scalar_type: "bool_t"
}
}
}

View File

@@ -0,0 +1,499 @@
component_class: HAL_HIDL
component_type_version: 1.0
component_name: "ISupplicantStaIfaceCallback"
package: "android.hardware.wifi.supplicant"
import: "android.hardware.wifi.supplicant@1.0::types"
interface: {
attribute: {
name: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaIfaceCallback::State"
type: TYPE_ENUM
enum_value: {
scalar_type: "uint32_t"
enumerator: "DISCONNECTED"
scalar_value: {
uint32_t: 0
}
enumerator: "IFACE_DISABLED"
scalar_value: {
uint32_t: 1
}
enumerator: "INACTIVE"
scalar_value: {
uint32_t: 2
}
enumerator: "SCANNING"
scalar_value: {
uint32_t: 3
}
enumerator: "AUTHENTICATING"
scalar_value: {
uint32_t: 4
}
enumerator: "ASSOCIATING"
scalar_value: {
uint32_t: 5
}
enumerator: "ASSOCIATED"
scalar_value: {
uint32_t: 6
}
enumerator: "FOURWAY_HANDSHAKE"
scalar_value: {
uint32_t: 7
}
enumerator: "GROUP_HANDSHAKE"
scalar_value: {
uint32_t: 8
}
enumerator: "COMPLETED"
scalar_value: {
uint32_t: 9
}
}
}
attribute: {
name: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaIfaceCallback::OsuMethod"
type: TYPE_ENUM
enum_value: {
scalar_type: "uint8_t"
enumerator: "OMA_DM"
scalar_value: {
uint8_t: 0
}
enumerator: "SOAP_XML_SPP"
scalar_value: {
uint8_t: 1
}
}
}
attribute: {
name: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaIfaceCallback::AnqpData"
type: TYPE_STRUCT
struct_value: {
name: "venueName"
type: TYPE_VECTOR
vector_value: {
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
struct_value: {
name: "roamingConsortium"
type: TYPE_VECTOR
vector_value: {
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
struct_value: {
name: "ipAddrTypeAvailability"
type: TYPE_VECTOR
vector_value: {
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
struct_value: {
name: "naiRealm"
type: TYPE_VECTOR
vector_value: {
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
struct_value: {
name: "anqp3gppCellularNetwork"
type: TYPE_VECTOR
vector_value: {
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
struct_value: {
name: "domainName"
type: TYPE_VECTOR
vector_value: {
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
}
attribute: {
name: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaIfaceCallback::Hs20AnqpData"
type: TYPE_STRUCT
struct_value: {
name: "operatorFriendlyName"
type: TYPE_VECTOR
vector_value: {
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
struct_value: {
name: "wanMetrics"
type: TYPE_VECTOR
vector_value: {
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
struct_value: {
name: "connectionCapability"
type: TYPE_VECTOR
vector_value: {
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
struct_value: {
name: "osuProvidersList"
type: TYPE_VECTOR
vector_value: {
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
}
attribute: {
name: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaIfaceCallback::WpsConfigError"
type: TYPE_ENUM
enum_value: {
scalar_type: "uint16_t"
enumerator: "NO_ERROR"
scalar_value: {
uint16_t: 0
}
enumerator: "OOB_IFACE_READ_ERROR"
scalar_value: {
uint16_t: 1
}
enumerator: "DECRYPTION_CRC_FAILURE"
scalar_value: {
uint16_t: 2
}
enumerator: "CHAN_24_NOT_SUPPORTED"
scalar_value: {
uint16_t: 3
}
enumerator: "CHAN_50_NOT_SUPPORTED"
scalar_value: {
uint16_t: 4
}
enumerator: "SIGNAL_TOO_WEAK"
scalar_value: {
uint16_t: 5
}
enumerator: "NETWORK_AUTH_FAILURE"
scalar_value: {
uint16_t: 6
}
enumerator: "NETWORK_ASSOC_FAILURE"
scalar_value: {
uint16_t: 7
}
enumerator: "NO_DHCP_RESPONSE"
scalar_value: {
uint16_t: 8
}
enumerator: "FAILED_DHCP_CONFIG"
scalar_value: {
uint16_t: 9
}
enumerator: "IP_ADDR_CONFLICT"
scalar_value: {
uint16_t: 10
}
enumerator: "NO_CONN_TO_REGISTRAR"
scalar_value: {
uint16_t: 11
}
enumerator: "MULTIPLE_PBC_DETECTED"
scalar_value: {
uint16_t: 12
}
enumerator: "ROGUE_SUSPECTED"
scalar_value: {
uint16_t: 13
}
enumerator: "DEVICE_BUSY"
scalar_value: {
uint16_t: 14
}
enumerator: "SETUP_LOCKED"
scalar_value: {
uint16_t: 15
}
enumerator: "MSG_TIMEOUT"
scalar_value: {
uint16_t: 16
}
enumerator: "REG_SESS_TIMEOUT"
scalar_value: {
uint16_t: 17
}
enumerator: "DEV_PASSWORD_AUTH_FAILURE"
scalar_value: {
uint16_t: 18
}
enumerator: "CHAN_60G_NOT_SUPPORTED"
scalar_value: {
uint16_t: 19
}
enumerator: "PUBLIC_KEY_HASH_MISMATCH"
scalar_value: {
uint16_t: 20
}
}
}
attribute: {
name: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaIfaceCallback::WpsErrorIndication"
type: TYPE_ENUM
enum_value: {
scalar_type: "uint16_t"
enumerator: "NO_ERROR"
scalar_value: {
uint16_t: 0
}
enumerator: "SECURITY_TKIP_ONLY_PROHIBITED"
scalar_value: {
uint16_t: 1
}
enumerator: "SECURITY_WEP_PROHIBITED"
scalar_value: {
uint16_t: 2
}
enumerator: "AUTH_FAILURE"
scalar_value: {
uint16_t: 3
}
}
}
api: {
name: "onNetworkAdded"
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
}
api: {
name: "onNetworkRemoved"
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
}
api: {
name: "onStateChanged"
arg: {
type: TYPE_ENUM
predefined_type: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaIfaceCallback::State"
}
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
arg: {
type: TYPE_VECTOR
vector_value: {
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
}
api: {
name: "onAnqpQueryDone"
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaIfaceCallback::AnqpData"
}
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaIfaceCallback::Hs20AnqpData"
}
}
api: {
name: "onHs20IconQueryDone"
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
arg: {
type: TYPE_STRING
}
arg: {
type: TYPE_VECTOR
vector_value: {
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
}
api: {
name: "onHs20SubscriptionRemediation"
arg: {
type: TYPE_ENUM
predefined_type: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaIfaceCallback::OsuMethod"
}
arg: {
type: TYPE_STRING
}
}
api: {
name: "onHs20DeauthImminentNotice"
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
arg: {
type: TYPE_STRING
}
}
api: {
name: "onConnected"
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
}
api: {
name: "onDisconnected"
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
arg: {
type: TYPE_SCALAR
scalar_type: "bool_t"
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
}
api: {
name: "onAssociationCompleted"
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
}
api: {
name: "onAssociationRejected"
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
arg: {
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
}
api: {
name: "onAuthenticationTimeout"
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
}
api: {
name: "onEapFailure"
}
api: {
name: "onWpsEventSuccess"
}
api: {
name: "onWpsEventFail"
arg: {
type: TYPE_ARRAY
vector_value: {
vector_size: 6
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
arg: {
type: TYPE_ENUM
predefined_type: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaIfaceCallback::WpsConfigError"
}
arg: {
type: TYPE_ENUM
predefined_type: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaIfaceCallback::WpsErrorIndication"
}
}
api: {
name: "onWpsEventPbcOverlap"
}
}

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,69 @@
component_class: HAL_HIDL
component_type_version: 1.0
component_name: "ISupplicantStaNetworkCallback"
package: "android.hardware.wifi.supplicant"
interface: {
attribute: {
name: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaNetworkCallback::NetworkRequestEapSimGsmAuthParams"
type: TYPE_STRUCT
struct_value: {
name: "rands"
type: TYPE_VECTOR
vector_value: {
type: TYPE_ARRAY
vector_value: {
vector_size: 16
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
}
}
attribute: {
name: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaNetworkCallback::NetworkRequestEapSimUmtsAuthParams"
type: TYPE_STRUCT
struct_value: {
name: "rand"
type: TYPE_ARRAY
vector_value: {
vector_size: 16
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
struct_value: {
name: "autn"
type: TYPE_ARRAY
vector_value: {
vector_size: 16
type: TYPE_SCALAR
scalar_type: "uint8_t"
}
}
}
api: {
name: "onNetworkEapSimGsmAuthRequest"
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaNetworkCallback::NetworkRequestEapSimGsmAuthParams"
}
}
api: {
name: "onNetworkEapSimUmtsAuthRequest"
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaNetworkCallback::NetworkRequestEapSimUmtsAuthParams"
}
}
api: {
name: "onNetworkEapIdentityRequest"
}
}

View File

@@ -0,0 +1,189 @@
component_class: HAL_HIDL
component_type_version: 1.0
component_name: "types"
package: "android.hardware.wifi.supplicant"
attribute: {
name: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatusCode"
type: TYPE_ENUM
enum_value: {
scalar_type: "uint32_t"
enumerator: "SUCCESS"
scalar_value: {
uint32_t: 0
}
enumerator: "FAILURE_UNKNOWN"
scalar_value: {
uint32_t: 1
}
enumerator: "FAILURE_ARGS_INVALID"
scalar_value: {
uint32_t: 2
}
enumerator: "FAILURE_IFACE_INVALID"
scalar_value: {
uint32_t: 3
}
enumerator: "FAILURE_IFACE_UNKNOWN"
scalar_value: {
uint32_t: 4
}
enumerator: "FAILURE_IFACE_EXISTS"
scalar_value: {
uint32_t: 5
}
enumerator: "FAILURE_IFACE_DISABLED"
scalar_value: {
uint32_t: 6
}
enumerator: "FAILURE_IFACE_NOT_DISCONNECTED"
scalar_value: {
uint32_t: 7
}
enumerator: "FAILURE_NETWORK_INVALID"
scalar_value: {
uint32_t: 8
}
enumerator: "FAILURE_NETWORK_UNKNOWN"
scalar_value: {
uint32_t: 9
}
}
}
attribute: {
name: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
type: TYPE_STRUCT
struct_value: {
name: "code"
type: TYPE_ENUM
predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatusCode"
}
struct_value: {
name: "debugMessage"
type: TYPE_STRING
}
}
attribute: {
name: "::android::hardware::wifi::supplicant::V1_0::IfaceType"
type: TYPE_ENUM
enum_value: {
scalar_type: "uint32_t"
enumerator: "STA"
scalar_value: {
uint32_t: 0
}
enumerator: "P2P"
scalar_value: {
uint32_t: 1
}
}
}
attribute: {
name: "::android::hardware::wifi::supplicant::V1_0::P2pGroupCapabilityMask"
type: TYPE_ENUM
enum_value: {
scalar_type: "uint32_t"
enumerator: "GROUP_OWNER"
scalar_value: {
uint32_t: 1
}
enumerator: "PERSISTENT_GROUP"
scalar_value: {
uint32_t: 2
}
enumerator: "GROUP_LIMIT"
scalar_value: {
uint32_t: 4
}
enumerator: "INTRA_BSS_DIST"
scalar_value: {
uint32_t: 8
}
enumerator: "CROSS_CONN"
scalar_value: {
uint32_t: 16
}
enumerator: "PERSISTENT_RECONN"
scalar_value: {
uint32_t: 32
}
enumerator: "GROUP_FORMATION"
scalar_value: {
uint32_t: 64
}
}
}
attribute: {
name: "::android::hardware::wifi::supplicant::V1_0::WpsConfigMethods"
type: TYPE_ENUM
enum_value: {
scalar_type: "uint16_t"
enumerator: "USBA"
scalar_value: {
uint16_t: 1
}
enumerator: "ETHERNET"
scalar_value: {
uint16_t: 2
}
enumerator: "LABEL"
scalar_value: {
uint16_t: 4
}
enumerator: "DISPLAY"
scalar_value: {
uint16_t: 8
}
enumerator: "EXT_NFC_TOKEN"
scalar_value: {
uint16_t: 16
}
enumerator: "INT_NFC_TOKEN"
scalar_value: {
uint16_t: 32
}
enumerator: "NFC_INTERFACE"
scalar_value: {
uint16_t: 64
}
enumerator: "PUSHBUTTON"
scalar_value: {
uint16_t: 128
}
enumerator: "KEYPAD"
scalar_value: {
uint16_t: 256
}
enumerator: "VIRT_PUSHBUTTON"
scalar_value: {
uint16_t: 640
}
enumerator: "PHY_PUSHBUTTON"
scalar_value: {
uint16_t: 1152
}
enumerator: "P2PS"
scalar_value: {
uint16_t: 4096
}
enumerator: "VIRT_DISPLAY"
scalar_value: {
uint16_t: 8200
}
enumerator: "PHY_DISPLAY"
scalar_value: {
uint16_t: 16392
}
}
}