Fingerprint VTS
Bug: 34179855
Test:
make vts;
adb push
out/host/linux-x86/vts/android-vts/testcases/DATA/nativetest64/fingerprint_hidl_hal_test/fingerprint_hidl_hal_test
/data/local/tmp/.;
adb shell /data/local/tmp/fingerprint_hidl_hal_test;
Change-Id: If9174dc34d0802388a9af8cda88b28329248bc42
diff --git a/biometrics/fingerprint/2.1/vts/BiometricsFingerprint.vts b/biometrics/fingerprint/2.1/vts/BiometricsFingerprint.vts
new file mode 100644
index 0000000..475333e
--- /dev/null
+++ b/biometrics/fingerprint/2.1/vts/BiometricsFingerprint.vts
@@ -0,0 +1,461 @@
+component_class: HAL_HIDL
+component_type_version: 2.1
+component_name: "IBiometricsFingerprint"
+
+package: "android.hardware.biometrics.fingerprint"
+
+import: "android.hardware.biometrics.fingerprint@2.1::IBiometricsFingerprintClientCallback"
+import: "android.hardware.biometrics.fingerprint@2.1::types"
+import: "android.hidl.base@1.0::types"
+
+interface: {
+ attribute: {
+ name: "::android::hardware::biometrics::fingerprint::V2_1::RequestStatus"
+ type: TYPE_ENUM
+ enum_value: {
+ scalar_type: "int32_t"
+
+ enumerator: "SYS_UNKNOWN"
+ scalar_value: {
+ int32_t: 1
+ }
+ enumerator: "SYS_OK"
+ scalar_value: {
+ int32_t: 0
+ }
+ enumerator: "SYS_ENOENT"
+ scalar_value: {
+ int32_t: -2
+ }
+ enumerator: "SYS_EINTR"
+ scalar_value: {
+ int32_t: -4
+ }
+ enumerator: "SYS_EIO"
+ scalar_value: {
+ int32_t: -5
+ }
+ enumerator: "SYS_EAGAIN"
+ scalar_value: {
+ int32_t: -11
+ }
+ enumerator: "SYS_ENOMEM"
+ scalar_value: {
+ int32_t: -12
+ }
+ enumerator: "SYS_EACCES"
+ scalar_value: {
+ int32_t: -13
+ }
+ enumerator: "SYS_EFAULT"
+ scalar_value: {
+ int32_t: -14
+ }
+ enumerator: "SYS_EBUSY"
+ scalar_value: {
+ int32_t: -16
+ }
+ enumerator: "SYS_EINVAL"
+ scalar_value: {
+ int32_t: -22
+ }
+ enumerator: "SYS_ENOSPC"
+ scalar_value: {
+ int32_t: -28
+ }
+ enumerator: "SYS_ETIMEDOUT"
+ scalar_value: {
+ int32_t: -110
+ }
+ }
+ }
+
+ attribute: {
+ name: "::android::hardware::biometrics::fingerprint::V2_1::FingerprintError"
+ type: TYPE_ENUM
+ enum_value: {
+ scalar_type: "int32_t"
+
+ enumerator: "ERROR_NO_ERROR"
+ scalar_value: {
+ int32_t: 0
+ }
+ enumerator: "ERROR_HW_UNAVAILABLE"
+ scalar_value: {
+ int32_t: 1
+ }
+ enumerator: "ERROR_UNABLE_TO_PROCESS"
+ scalar_value: {
+ int32_t: 2
+ }
+ enumerator: "ERROR_TIMEOUT"
+ scalar_value: {
+ int32_t: 3
+ }
+ enumerator: "ERROR_NO_SPACE"
+ scalar_value: {
+ int32_t: 4
+ }
+ enumerator: "ERROR_CANCELED"
+ scalar_value: {
+ int32_t: 5
+ }
+ enumerator: "ERROR_UNABLE_TO_REMOVE"
+ scalar_value: {
+ int32_t: 6
+ }
+ enumerator: "ERROR_LOCKOUT"
+ scalar_value: {
+ int32_t: 7
+ }
+ enumerator: "ERROR_VENDOR"
+ scalar_value: {
+ int32_t: 8
+ }
+ }
+ }
+
+ attribute: {
+ name: "::android::hardware::biometrics::fingerprint::V2_1::FingerprintAcquiredInfo"
+ type: TYPE_ENUM
+ enum_value: {
+ scalar_type: "int32_t"
+
+ enumerator: "ACQUIRED_GOOD"
+ scalar_value: {
+ int32_t: 0
+ }
+ enumerator: "ACQUIRED_PARTIAL"
+ scalar_value: {
+ int32_t: 1
+ }
+ enumerator: "ACQUIRED_INSUFFICIENT"
+ scalar_value: {
+ int32_t: 2
+ }
+ enumerator: "ACQUIRED_IMAGER_DIRTY"
+ scalar_value: {
+ int32_t: 3
+ }
+ enumerator: "ACQUIRED_TOO_SLOW"
+ scalar_value: {
+ int32_t: 4
+ }
+ enumerator: "ACQUIRED_TOO_FAST"
+ scalar_value: {
+ int32_t: 5
+ }
+ enumerator: "ACQUIRED_VENDOR"
+ scalar_value: {
+ int32_t: 6
+ }
+ }
+ }
+
+ attribute: {
+ name: "::android::hardware::biometrics::fingerprint::V2_1::FingerprintFingerId"
+ type: TYPE_STRUCT
+ struct_value: {
+ name: "gid"
+ type: TYPE_SCALAR
+ scalar_type: "uint32_t"
+ }
+ struct_value: {
+ name: "fid"
+ type: TYPE_SCALAR
+ scalar_type: "uint32_t"
+ }
+ }
+
+ attribute: {
+ name: "::android::hardware::biometrics::fingerprint::V2_1::FingerprintEnroll"
+ type: TYPE_STRUCT
+ struct_value: {
+ name: "finger"
+ type: TYPE_STRUCT
+ predefined_type: "::android::hardware::biometrics::fingerprint::V2_1::FingerprintFingerId"
+ }
+ struct_value: {
+ name: "samplesRemaining"
+ type: TYPE_SCALAR
+ scalar_type: "uint32_t"
+ }
+ struct_value: {
+ name: "msg"
+ type: TYPE_SCALAR
+ scalar_type: "uint64_t"
+ }
+ }
+
+ attribute: {
+ name: "::android::hardware::biometrics::fingerprint::V2_1::FingerprintIterator"
+ type: TYPE_STRUCT
+ struct_value: {
+ name: "finger"
+ type: TYPE_STRUCT
+ predefined_type: "::android::hardware::biometrics::fingerprint::V2_1::FingerprintFingerId"
+ }
+ struct_value: {
+ name: "remainingTemplates"
+ type: TYPE_SCALAR
+ scalar_type: "uint32_t"
+ }
+ }
+
+ attribute: {
+ name: "::android::hardware::biometrics::fingerprint::V2_1::FingerprintAcquired"
+ type: TYPE_STRUCT
+ struct_value: {
+ name: "acquiredInfo"
+ type: TYPE_ENUM
+ predefined_type: "::android::hardware::biometrics::fingerprint::V2_1::FingerprintAcquiredInfo"
+ }
+ }
+
+ attribute: {
+ name: "::android::hardware::biometrics::fingerprint::V2_1::FingerprintAuthenticated"
+ type: TYPE_STRUCT
+ struct_value: {
+ name: "finger"
+ type: TYPE_STRUCT
+ predefined_type: "::android::hardware::biometrics::fingerprint::V2_1::FingerprintFingerId"
+ }
+ struct_value: {
+ name: "hat"
+ type: TYPE_ARRAY
+ vector_size: 69
+ vector_value: {
+ type: TYPE_SCALAR
+ scalar_type: "uint8_t"
+ }
+ }
+ }
+
+ attribute: {
+ name: "::android::hardware::biometrics::fingerprint::V2_1::FingerprintMsgType"
+ type: TYPE_ENUM
+ enum_value: {
+ scalar_type: "int32_t"
+
+ enumerator: "ERROR"
+ scalar_value: {
+ int32_t: -1
+ }
+ enumerator: "ACQUIRED"
+ scalar_value: {
+ int32_t: 1
+ }
+ enumerator: "TEMPLATE_ENROLLING"
+ scalar_value: {
+ int32_t: 3
+ }
+ enumerator: "TEMPLATE_REMOVED"
+ scalar_value: {
+ int32_t: 4
+ }
+ enumerator: "AUTHENTICATED"
+ scalar_value: {
+ int32_t: 5
+ }
+ enumerator: "TEMPLATE_ENUMERATING"
+ scalar_value: {
+ int32_t: 6
+ }
+ }
+ }
+
+ attribute: {
+ name: "::android::hidl::base::V1_0::DebugInfo"
+ type: TYPE_STRUCT
+ struct_value: {
+ name: "pid"
+ type: TYPE_SCALAR
+ scalar_type: "int32_t"
+ }
+ struct_value: {
+ name: "ptr"
+ type: TYPE_SCALAR
+ scalar_type: "uint64_t"
+ }
+ }
+
+ api: {
+ name: "setNotify"
+ return_type_hidl: {
+ type: TYPE_SCALAR
+ scalar_type: "uint64_t"
+ }
+ arg: {
+ type: TYPE_HIDL_CALLBACK
+ predefined_type: "::android::hardware::biometrics::fingerprint::V2_1::IBiometricsFingerprintClientCallback"
+ }
+ callflow: {
+ next: "setActiveGroup"
+ }
+ callflow: {
+ entry: true
+ }
+ }
+
+ api: {
+ name: "preEnroll"
+ return_type_hidl: {
+ type: TYPE_SCALAR
+ scalar_type: "uint64_t"
+ }
+ callflow: {
+ next: "enroll"
+ next: "postEnroll"
+ }
+ }
+
+ api: {
+ name: "enroll"
+ return_type_hidl: {
+ type: TYPE_ENUM
+ predefined_type: "::android::hardware::biometrics::fingerprint::V2_1::RequestStatus"
+ }
+ arg: {
+ type: TYPE_ARRAY
+ vector_size: 69
+ vector_value: {
+ type: TYPE_SCALAR
+ scalar_type: "uint8_t"
+ }
+ }
+ arg: {
+ type: TYPE_SCALAR
+ scalar_type: "uint32_t"
+ }
+ arg: {
+ type: TYPE_SCALAR
+ scalar_type: "uint32_t"
+ }
+ callflow: {
+ next: "cancel"
+ next: "enroll"
+ next: "postEnroll"
+ next: "remove"
+ }
+ }
+
+ api: {
+ name: "postEnroll"
+ return_type_hidl: {
+ type: TYPE_ENUM
+ predefined_type: "::android::hardware::biometrics::fingerprint::V2_1::RequestStatus"
+ }
+ callflow: {
+ next: "authenticate"
+ next: "setActiveGroup"
+ next: "enumerate"
+ next: "remove"
+ }
+ }
+
+ api: {
+ name: "getAuthenticatorId"
+ return_type_hidl: {
+ type: TYPE_SCALAR
+ scalar_type: "uint64_t"
+ }
+ callflow: {
+ next: "authenticate"
+ }
+ }
+
+ api: {
+ name: "cancel"
+ return_type_hidl: {
+ type: TYPE_ENUM
+ predefined_type: "::android::hardware::biometrics::fingerprint::V2_1::RequestStatus"
+ }
+ callflow: {
+ next: "authenticate"
+ next: "enroll"
+ next: "enumerate"
+ next: "remove"
+ next: "setActiveGroup"
+ }
+ }
+
+ api: {
+ name: "enumerate"
+ return_type_hidl: {
+ type: TYPE_ENUM
+ predefined_type: "::android::hardware::biometrics::fingerprint::V2_1::RequestStatus"
+ }
+ callflow: {
+ next: "remove"
+ next: "enroll"
+ next: "authenticate"
+ next: "setActiveGroup"
+ }
+ }
+
+ api: {
+ name: "remove"
+ return_type_hidl: {
+ type: TYPE_ENUM
+ predefined_type: "::android::hardware::biometrics::fingerprint::V2_1::RequestStatus"
+ }
+ arg: {
+ type: TYPE_SCALAR
+ scalar_type: "uint32_t"
+ }
+ arg: {
+ type: TYPE_SCALAR
+ scalar_type: "uint32_t"
+ }
+ callflow: {
+ next: "enumerate"
+ next: "authenticate"
+ next: "cancel"
+ next: "getAuthenticatorId"
+ next: "setActiveGroup"
+ }
+ }
+
+ api: {
+ name: "setActiveGroup"
+ return_type_hidl: {
+ type: TYPE_ENUM
+ predefined_type: "::android::hardware::biometrics::fingerprint::V2_1::RequestStatus"
+ }
+ arg: {
+ type: TYPE_SCALAR
+ scalar_type: "uint32_t"
+ }
+ arg: {
+ type: TYPE_STRING
+ }
+ callflow: {
+ next: "authenticate"
+ next: "preEnroll"
+ next: "enumerate"
+ next: "remove"
+ }
+ }
+
+ api: {
+ name: "authenticate"
+ return_type_hidl: {
+ type: TYPE_ENUM
+ predefined_type: "::android::hardware::biometrics::fingerprint::V2_1::RequestStatus"
+ }
+ arg: {
+ type: TYPE_SCALAR
+ scalar_type: "uint64_t"
+ }
+ arg: {
+ type: TYPE_SCALAR
+ scalar_type: "uint32_t"
+ }
+ callflow: {
+ next: "cancel"
+ next: "preEnroll"
+ next: "remove"
+ }
+ }
+
+}