Merge "Move OBD2 support to Vehicle HAL 2.1."
diff --git a/audio/2.0/default/service.cpp b/audio/2.0/default/service.cpp
index 8b608c8..935d556 100644
--- a/audio/2.0/default/service.cpp
+++ b/audio/2.0/default/service.cpp
@@ -38,14 +38,14 @@
 int main(int /* argc */, char* /* argv */ []) {
     configureRpcThreadpool(16, true /*callerWillJoin*/);
     android::status_t status;
-    status = registerPassthroughServiceImplementation<IDevicesFactory>("audio_devices_factory");
+    status = registerPassthroughServiceImplementation<IDevicesFactory>();
     LOG_ALWAYS_FATAL_IF(status != OK, "Error while registering audio service: %d", status);
-    status = registerPassthroughServiceImplementation<IEffectsFactory>("audio_effects_factory");
+    status = registerPassthroughServiceImplementation<IEffectsFactory>();
     LOG_ALWAYS_FATAL_IF(status != OK, "Error while registering audio effects service: %d", status);
     // Soundtrigger and FM radio might be not present.
     status = registerPassthroughServiceImplementation<ISoundTriggerHw>("sound_trigger.primary");
     ALOGE_IF(status != OK, "Error while registering soundtrigger service: %d", status);
-    status = registerPassthroughServiceImplementation<IBroadcastRadioFactory>("broadcastradio");
+    status = registerPassthroughServiceImplementation<IBroadcastRadioFactory>();
     ALOGE_IF(status != OK, "Error while registering fm radio service: %d", status);
     joinRpcThreadpool();
     return status;
diff --git a/audio/common/2.0/vts/types.vts b/audio/common/2.0/vts/types.vts
deleted file mode 100644
index d790573..0000000
--- a/audio/common/2.0/vts/types.vts
+++ /dev/null
@@ -1,1954 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 2.0
-component_name: "types"
-
-package: "android.hardware.audio.common"
-
-
-attribute: {
-    name: "::android::hardware::audio::common::V2_0::AudioHandleConsts"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "AUDIO_IO_HANDLE_NONE"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "AUDIO_MODULE_HANDLE_NONE"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "AUDIO_PORT_HANDLE_NONE"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "AUDIO_PATCH_HANDLE_NONE"
-        scalar_value: {
-            int32_t: 0
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::audio::common::V2_0::Uuid"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "timeLow"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "timeMid"
-        type: TYPE_SCALAR
-        scalar_type: "uint16_t"
-    }
-    struct_value: {
-        name: "versionAndTimeHigh"
-        type: TYPE_SCALAR
-        scalar_type: "uint16_t"
-    }
-    struct_value: {
-        name: "variantAndClockSeqHigh"
-        type: TYPE_SCALAR
-        scalar_type: "uint16_t"
-    }
-    struct_value: {
-        name: "node"
-        type: TYPE_ARRAY
-        vector_size: 6
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::audio::common::V2_0::AudioStreamType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "DEFAULT"
-        scalar_value: {
-            int32_t: -1
-        }
-        enumerator: "MIN"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "VOICE_CALL"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "SYSTEM"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "RING"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "MUSIC"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "ALARM"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "NOTIFICATION"
-        scalar_value: {
-            int32_t: 5
-        }
-        enumerator: "BLUETOOTH_SCO"
-        scalar_value: {
-            int32_t: 6
-        }
-        enumerator: "ENFORCED_AUDIBLE"
-        scalar_value: {
-            int32_t: 7
-        }
-        enumerator: "DTMF"
-        scalar_value: {
-            int32_t: 8
-        }
-        enumerator: "TTS"
-        scalar_value: {
-            int32_t: 9
-        }
-        enumerator: "ACCESSIBILITY"
-        scalar_value: {
-            int32_t: 10
-        }
-        enumerator: "REROUTING"
-        scalar_value: {
-            int32_t: 11
-        }
-        enumerator: "PATCH"
-        scalar_value: {
-            int32_t: 12
-        }
-        enumerator: "PUBLIC_CNT"
-        scalar_value: {
-            int32_t: 11
-        }
-        enumerator: "FOR_POLICY_CNT"
-        scalar_value: {
-            int32_t: 12
-        }
-        enumerator: "CNT"
-        scalar_value: {
-            int32_t: 13
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::audio::common::V2_0::AudioSource"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "DEFAULT"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "MIC"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "VOICE_UPLINK"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "VOICE_DOWNLINK"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "VOICE_CALL"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "CAMCORDER"
-        scalar_value: {
-            int32_t: 5
-        }
-        enumerator: "VOICE_RECOGNITION"
-        scalar_value: {
-            int32_t: 6
-        }
-        enumerator: "VOICE_COMMUNICATION"
-        scalar_value: {
-            int32_t: 7
-        }
-        enumerator: "REMOTE_SUBMIX"
-        scalar_value: {
-            int32_t: 8
-        }
-        enumerator: "UNPROCESSED"
-        scalar_value: {
-            int32_t: 9
-        }
-        enumerator: "CNT"
-        scalar_value: {
-            int32_t: 10
-        }
-        enumerator: "MAX"
-        scalar_value: {
-            int32_t: 9
-        }
-        enumerator: "FM_TUNER"
-        scalar_value: {
-            int32_t: 1998
-        }
-        enumerator: "HOTWORD"
-        scalar_value: {
-            int32_t: 1999
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::audio::common::V2_0::AudioSessionConsts"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "OUTPUT_STAGE"
-        scalar_value: {
-            int32_t: -1
-        }
-        enumerator: "OUTPUT_MIX"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "ALLOCATE"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "NONE"
-        scalar_value: {
-            int32_t: 0
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::audio::common::V2_0::AudioFormat"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "INVALID"
-        scalar_value: {
-            uint32_t: 4294967295
-        }
-        enumerator: "DEFAULT"
-        scalar_value: {
-            uint32_t: 0
-        }
-        enumerator: "PCM"
-        scalar_value: {
-            uint32_t: 0
-        }
-        enumerator: "MP3"
-        scalar_value: {
-            uint32_t: 16777216
-        }
-        enumerator: "AMR_NB"
-        scalar_value: {
-            uint32_t: 33554432
-        }
-        enumerator: "AMR_WB"
-        scalar_value: {
-            uint32_t: 50331648
-        }
-        enumerator: "AAC"
-        scalar_value: {
-            uint32_t: 67108864
-        }
-        enumerator: "HE_AAC_V1"
-        scalar_value: {
-            uint32_t: 83886080
-        }
-        enumerator: "HE_AAC_V2"
-        scalar_value: {
-            uint32_t: 100663296
-        }
-        enumerator: "VORBIS"
-        scalar_value: {
-            uint32_t: 117440512
-        }
-        enumerator: "OPUS"
-        scalar_value: {
-            uint32_t: 134217728
-        }
-        enumerator: "AC3"
-        scalar_value: {
-            uint32_t: 150994944
-        }
-        enumerator: "E_AC3"
-        scalar_value: {
-            uint32_t: 167772160
-        }
-        enumerator: "DTS"
-        scalar_value: {
-            uint32_t: 184549376
-        }
-        enumerator: "DTS_HD"
-        scalar_value: {
-            uint32_t: 201326592
-        }
-        enumerator: "IEC61937"
-        scalar_value: {
-            uint32_t: 218103808
-        }
-        enumerator: "DOLBY_TRUEHD"
-        scalar_value: {
-            uint32_t: 234881024
-        }
-        enumerator: "EVRC"
-        scalar_value: {
-            uint32_t: 268435456
-        }
-        enumerator: "EVRCB"
-        scalar_value: {
-            uint32_t: 285212672
-        }
-        enumerator: "EVRCWB"
-        scalar_value: {
-            uint32_t: 301989888
-        }
-        enumerator: "EVRCNW"
-        scalar_value: {
-            uint32_t: 318767104
-        }
-        enumerator: "AAC_ADIF"
-        scalar_value: {
-            uint32_t: 335544320
-        }
-        enumerator: "WMA"
-        scalar_value: {
-            uint32_t: 352321536
-        }
-        enumerator: "WMA_PRO"
-        scalar_value: {
-            uint32_t: 369098752
-        }
-        enumerator: "AMR_WB_PLUS"
-        scalar_value: {
-            uint32_t: 385875968
-        }
-        enumerator: "MP2"
-        scalar_value: {
-            uint32_t: 402653184
-        }
-        enumerator: "QCELP"
-        scalar_value: {
-            uint32_t: 419430400
-        }
-        enumerator: "DSD"
-        scalar_value: {
-            uint32_t: 436207616
-        }
-        enumerator: "FLAC"
-        scalar_value: {
-            uint32_t: 452984832
-        }
-        enumerator: "ALAC"
-        scalar_value: {
-            uint32_t: 469762048
-        }
-        enumerator: "APE"
-        scalar_value: {
-            uint32_t: 486539264
-        }
-        enumerator: "AAC_ADTS"
-        scalar_value: {
-            uint32_t: 503316480
-        }
-        enumerator: "SBC"
-        scalar_value: {
-            uint32_t: 520093696
-        }
-        enumerator: "APTX"
-        scalar_value: {
-            uint32_t: 536870912
-        }
-        enumerator: "APTX_HD"
-        scalar_value: {
-            uint32_t: 553648128
-        }
-        enumerator: "AC4"
-        scalar_value: {
-            uint32_t: 570425344
-        }
-        enumerator: "LDAC"
-        scalar_value: {
-            uint32_t: 587202560
-        }
-        enumerator: "MAIN_MASK"
-        scalar_value: {
-            uint32_t: 4278190080
-        }
-        enumerator: "SUB_MASK"
-        scalar_value: {
-            uint32_t: 16777215
-        }
-        enumerator: "PCM_SUB_16_BIT"
-        scalar_value: {
-            uint32_t: 1
-        }
-        enumerator: "PCM_SUB_8_BIT"
-        scalar_value: {
-            uint32_t: 2
-        }
-        enumerator: "PCM_SUB_32_BIT"
-        scalar_value: {
-            uint32_t: 3
-        }
-        enumerator: "PCM_SUB_8_24_BIT"
-        scalar_value: {
-            uint32_t: 4
-        }
-        enumerator: "PCM_SUB_FLOAT"
-        scalar_value: {
-            uint32_t: 5
-        }
-        enumerator: "PCM_SUB_24_BIT_PACKED"
-        scalar_value: {
-            uint32_t: 6
-        }
-        enumerator: "MP3_SUB_NONE"
-        scalar_value: {
-            uint32_t: 0
-        }
-        enumerator: "AMR_SUB_NONE"
-        scalar_value: {
-            uint32_t: 0
-        }
-        enumerator: "AAC_SUB_MAIN"
-        scalar_value: {
-            uint32_t: 1
-        }
-        enumerator: "AAC_SUB_LC"
-        scalar_value: {
-            uint32_t: 2
-        }
-        enumerator: "AAC_SUB_SSR"
-        scalar_value: {
-            uint32_t: 4
-        }
-        enumerator: "AAC_SUB_LTP"
-        scalar_value: {
-            uint32_t: 8
-        }
-        enumerator: "AAC_SUB_HE_V1"
-        scalar_value: {
-            uint32_t: 16
-        }
-        enumerator: "AAC_SUB_SCALABLE"
-        scalar_value: {
-            uint32_t: 32
-        }
-        enumerator: "AAC_SUB_ERLC"
-        scalar_value: {
-            uint32_t: 64
-        }
-        enumerator: "AAC_SUB_LD"
-        scalar_value: {
-            uint32_t: 128
-        }
-        enumerator: "AAC_SUB_HE_V2"
-        scalar_value: {
-            uint32_t: 256
-        }
-        enumerator: "AAC_SUB_ELD"
-        scalar_value: {
-            uint32_t: 512
-        }
-        enumerator: "VORBIS_SUB_NONE"
-        scalar_value: {
-            uint32_t: 0
-        }
-        enumerator: "PCM_16_BIT"
-        scalar_value: {
-            uint32_t: 1
-        }
-        enumerator: "PCM_8_BIT"
-        scalar_value: {
-            uint32_t: 2
-        }
-        enumerator: "PCM_32_BIT"
-        scalar_value: {
-            uint32_t: 3
-        }
-        enumerator: "PCM_8_24_BIT"
-        scalar_value: {
-            uint32_t: 4
-        }
-        enumerator: "PCM_FLOAT"
-        scalar_value: {
-            uint32_t: 5
-        }
-        enumerator: "PCM_24_BIT_PACKED"
-        scalar_value: {
-            uint32_t: 6
-        }
-        enumerator: "AAC_MAIN"
-        scalar_value: {
-            uint32_t: 67108865
-        }
-        enumerator: "AAC_LC"
-        scalar_value: {
-            uint32_t: 67108866
-        }
-        enumerator: "AAC_SSR"
-        scalar_value: {
-            uint32_t: 67108868
-        }
-        enumerator: "AAC_LTP"
-        scalar_value: {
-            uint32_t: 67108872
-        }
-        enumerator: "AAC_HE_V1"
-        scalar_value: {
-            uint32_t: 67108880
-        }
-        enumerator: "AAC_SCALABLE"
-        scalar_value: {
-            uint32_t: 67108896
-        }
-        enumerator: "AAC_ERLC"
-        scalar_value: {
-            uint32_t: 67108928
-        }
-        enumerator: "AAC_LD"
-        scalar_value: {
-            uint32_t: 67108992
-        }
-        enumerator: "AAC_HE_V2"
-        scalar_value: {
-            uint32_t: 67109120
-        }
-        enumerator: "AAC_ELD"
-        scalar_value: {
-            uint32_t: 67109376
-        }
-        enumerator: "AAC_ADTS_MAIN"
-        scalar_value: {
-            uint32_t: 503316481
-        }
-        enumerator: "AAC_ADTS_LC"
-        scalar_value: {
-            uint32_t: 503316482
-        }
-        enumerator: "AAC_ADTS_SSR"
-        scalar_value: {
-            uint32_t: 503316484
-        }
-        enumerator: "AAC_ADTS_LTP"
-        scalar_value: {
-            uint32_t: 503316488
-        }
-        enumerator: "AAC_ADTS_HE_V1"
-        scalar_value: {
-            uint32_t: 503316496
-        }
-        enumerator: "AAC_ADTS_SCALABLE"
-        scalar_value: {
-            uint32_t: 503316512
-        }
-        enumerator: "AAC_ADTS_ERLC"
-        scalar_value: {
-            uint32_t: 503316544
-        }
-        enumerator: "AAC_ADTS_LD"
-        scalar_value: {
-            uint32_t: 503316608
-        }
-        enumerator: "AAC_ADTS_HE_V2"
-        scalar_value: {
-            uint32_t: 503316736
-        }
-        enumerator: "AAC_ADTS_ELD"
-        scalar_value: {
-            uint32_t: 503316992
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::audio::common::V2_0::FixedChannelCount"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "FCC_2"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "FCC_8"
-        scalar_value: {
-            int32_t: 8
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::audio::common::V2_0::AudioChannelMask"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "REPRESENTATION_POSITION"
-        scalar_value: {
-            uint32_t: 0
-        }
-        enumerator: "REPRESENTATION_INDEX"
-        scalar_value: {
-            uint32_t: 2
-        }
-        enumerator: "NONE"
-        scalar_value: {
-            uint32_t: 0
-        }
-        enumerator: "INVALID"
-        scalar_value: {
-            uint32_t: 3221225472
-        }
-        enumerator: "OUT_FRONT_LEFT"
-        scalar_value: {
-            uint32_t: 1
-        }
-        enumerator: "OUT_FRONT_RIGHT"
-        scalar_value: {
-            uint32_t: 2
-        }
-        enumerator: "OUT_FRONT_CENTER"
-        scalar_value: {
-            uint32_t: 4
-        }
-        enumerator: "OUT_LOW_FREQUENCY"
-        scalar_value: {
-            uint32_t: 8
-        }
-        enumerator: "OUT_BACK_LEFT"
-        scalar_value: {
-            uint32_t: 16
-        }
-        enumerator: "OUT_BACK_RIGHT"
-        scalar_value: {
-            uint32_t: 32
-        }
-        enumerator: "OUT_FRONT_LEFT_OF_CENTER"
-        scalar_value: {
-            uint32_t: 64
-        }
-        enumerator: "OUT_FRONT_RIGHT_OF_CENTER"
-        scalar_value: {
-            uint32_t: 128
-        }
-        enumerator: "OUT_BACK_CENTER"
-        scalar_value: {
-            uint32_t: 256
-        }
-        enumerator: "OUT_SIDE_LEFT"
-        scalar_value: {
-            uint32_t: 512
-        }
-        enumerator: "OUT_SIDE_RIGHT"
-        scalar_value: {
-            uint32_t: 1024
-        }
-        enumerator: "OUT_TOP_CENTER"
-        scalar_value: {
-            uint32_t: 2048
-        }
-        enumerator: "OUT_TOP_FRONT_LEFT"
-        scalar_value: {
-            uint32_t: 4096
-        }
-        enumerator: "OUT_TOP_FRONT_CENTER"
-        scalar_value: {
-            uint32_t: 8192
-        }
-        enumerator: "OUT_TOP_FRONT_RIGHT"
-        scalar_value: {
-            uint32_t: 16384
-        }
-        enumerator: "OUT_TOP_BACK_LEFT"
-        scalar_value: {
-            uint32_t: 32768
-        }
-        enumerator: "OUT_TOP_BACK_CENTER"
-        scalar_value: {
-            uint32_t: 65536
-        }
-        enumerator: "OUT_TOP_BACK_RIGHT"
-        scalar_value: {
-            uint32_t: 131072
-        }
-        enumerator: "OUT_MONO"
-        scalar_value: {
-            uint32_t: 1
-        }
-        enumerator: "OUT_STEREO"
-        scalar_value: {
-            uint32_t: 3
-        }
-        enumerator: "OUT_2POINT1"
-        scalar_value: {
-            uint32_t: 11
-        }
-        enumerator: "OUT_QUAD"
-        scalar_value: {
-            uint32_t: 51
-        }
-        enumerator: "OUT_QUAD_BACK"
-        scalar_value: {
-            uint32_t: 51
-        }
-        enumerator: "OUT_QUAD_SIDE"
-        scalar_value: {
-            uint32_t: 1539
-        }
-        enumerator: "OUT_SURROUND"
-        scalar_value: {
-            uint32_t: 263
-        }
-        enumerator: "OUT_PENTA"
-        scalar_value: {
-            uint32_t: 55
-        }
-        enumerator: "OUT_5POINT1"
-        scalar_value: {
-            uint32_t: 63
-        }
-        enumerator: "OUT_5POINT1_BACK"
-        scalar_value: {
-            uint32_t: 63
-        }
-        enumerator: "OUT_5POINT1_SIDE"
-        scalar_value: {
-            uint32_t: 1551
-        }
-        enumerator: "OUT_6POINT1"
-        scalar_value: {
-            uint32_t: 319
-        }
-        enumerator: "OUT_7POINT1"
-        scalar_value: {
-            uint32_t: 1599
-        }
-        enumerator: "OUT_ALL"
-        scalar_value: {
-            uint32_t: 262143
-        }
-        enumerator: "IN_LEFT"
-        scalar_value: {
-            uint32_t: 4
-        }
-        enumerator: "IN_RIGHT"
-        scalar_value: {
-            uint32_t: 8
-        }
-        enumerator: "IN_FRONT"
-        scalar_value: {
-            uint32_t: 16
-        }
-        enumerator: "IN_BACK"
-        scalar_value: {
-            uint32_t: 32
-        }
-        enumerator: "IN_LEFT_PROCESSED"
-        scalar_value: {
-            uint32_t: 64
-        }
-        enumerator: "IN_RIGHT_PROCESSED"
-        scalar_value: {
-            uint32_t: 128
-        }
-        enumerator: "IN_FRONT_PROCESSED"
-        scalar_value: {
-            uint32_t: 256
-        }
-        enumerator: "IN_BACK_PROCESSED"
-        scalar_value: {
-            uint32_t: 512
-        }
-        enumerator: "IN_PRESSURE"
-        scalar_value: {
-            uint32_t: 1024
-        }
-        enumerator: "IN_X_AXIS"
-        scalar_value: {
-            uint32_t: 2048
-        }
-        enumerator: "IN_Y_AXIS"
-        scalar_value: {
-            uint32_t: 4096
-        }
-        enumerator: "IN_Z_AXIS"
-        scalar_value: {
-            uint32_t: 8192
-        }
-        enumerator: "IN_VOICE_UPLINK"
-        scalar_value: {
-            uint32_t: 16384
-        }
-        enumerator: "IN_VOICE_DNLINK"
-        scalar_value: {
-            uint32_t: 32768
-        }
-        enumerator: "IN_MONO"
-        scalar_value: {
-            uint32_t: 16
-        }
-        enumerator: "IN_STEREO"
-        scalar_value: {
-            uint32_t: 12
-        }
-        enumerator: "IN_FRONT_BACK"
-        scalar_value: {
-            uint32_t: 48
-        }
-        enumerator: "IN_6"
-        scalar_value: {
-            uint32_t: 252
-        }
-        enumerator: "IN_VOICE_UPLINK_MONO"
-        scalar_value: {
-            uint32_t: 16400
-        }
-        enumerator: "IN_VOICE_DNLINK_MONO"
-        scalar_value: {
-            uint32_t: 32784
-        }
-        enumerator: "IN_VOICE_CALL_MONO"
-        scalar_value: {
-            uint32_t: 49168
-        }
-        enumerator: "IN_ALL"
-        scalar_value: {
-            uint32_t: 65532
-        }
-        enumerator: "COUNT_MAX"
-        scalar_value: {
-            uint32_t: 30
-        }
-        enumerator: "INDEX_HDR"
-        scalar_value: {
-            uint32_t: 2147483648
-        }
-        enumerator: "INDEX_MASK_1"
-        scalar_value: {
-            uint32_t: 2147483649
-        }
-        enumerator: "INDEX_MASK_2"
-        scalar_value: {
-            uint32_t: 2147483651
-        }
-        enumerator: "INDEX_MASK_3"
-        scalar_value: {
-            uint32_t: 2147483655
-        }
-        enumerator: "INDEX_MASK_4"
-        scalar_value: {
-            uint32_t: 2147483663
-        }
-        enumerator: "INDEX_MASK_5"
-        scalar_value: {
-            uint32_t: 2147483679
-        }
-        enumerator: "INDEX_MASK_6"
-        scalar_value: {
-            uint32_t: 2147483711
-        }
-        enumerator: "INDEX_MASK_7"
-        scalar_value: {
-            uint32_t: 2147483775
-        }
-        enumerator: "INDEX_MASK_8"
-        scalar_value: {
-            uint32_t: 2147483903
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::audio::common::V2_0::AudioInterleave"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "LEFT"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "RIGHT"
-        scalar_value: {
-            int32_t: 1
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::audio::common::V2_0::AudioMode"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "INVALID"
-        scalar_value: {
-            int32_t: -2
-        }
-        enumerator: "CURRENT"
-        scalar_value: {
-            int32_t: -1
-        }
-        enumerator: "NORMAL"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "RINGTONE"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "IN_CALL"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "IN_COMMUNICATION"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "CNT"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "MAX"
-        scalar_value: {
-            int32_t: 3
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::audio::common::V2_0::AudioDevice"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "NONE"
-        scalar_value: {
-            uint32_t: 0
-        }
-        enumerator: "BIT_IN"
-        scalar_value: {
-            uint32_t: 2147483648
-        }
-        enumerator: "BIT_DEFAULT"
-        scalar_value: {
-            uint32_t: 1073741824
-        }
-        enumerator: "OUT_EARPIECE"
-        scalar_value: {
-            uint32_t: 1
-        }
-        enumerator: "OUT_SPEAKER"
-        scalar_value: {
-            uint32_t: 2
-        }
-        enumerator: "OUT_WIRED_HEADSET"
-        scalar_value: {
-            uint32_t: 4
-        }
-        enumerator: "OUT_WIRED_HEADPHONE"
-        scalar_value: {
-            uint32_t: 8
-        }
-        enumerator: "OUT_BLUETOOTH_SCO"
-        scalar_value: {
-            uint32_t: 16
-        }
-        enumerator: "OUT_BLUETOOTH_SCO_HEADSET"
-        scalar_value: {
-            uint32_t: 32
-        }
-        enumerator: "OUT_BLUETOOTH_SCO_CARKIT"
-        scalar_value: {
-            uint32_t: 64
-        }
-        enumerator: "OUT_BLUETOOTH_A2DP"
-        scalar_value: {
-            uint32_t: 128
-        }
-        enumerator: "OUT_BLUETOOTH_A2DP_HEADPHONES"
-        scalar_value: {
-            uint32_t: 256
-        }
-        enumerator: "OUT_BLUETOOTH_A2DP_SPEAKER"
-        scalar_value: {
-            uint32_t: 512
-        }
-        enumerator: "OUT_AUX_DIGITAL"
-        scalar_value: {
-            uint32_t: 1024
-        }
-        enumerator: "OUT_HDMI"
-        scalar_value: {
-            uint32_t: 1024
-        }
-        enumerator: "OUT_ANLG_DOCK_HEADSET"
-        scalar_value: {
-            uint32_t: 2048
-        }
-        enumerator: "OUT_DGTL_DOCK_HEADSET"
-        scalar_value: {
-            uint32_t: 4096
-        }
-        enumerator: "OUT_USB_ACCESSORY"
-        scalar_value: {
-            uint32_t: 8192
-        }
-        enumerator: "OUT_USB_DEVICE"
-        scalar_value: {
-            uint32_t: 16384
-        }
-        enumerator: "OUT_REMOTE_SUBMIX"
-        scalar_value: {
-            uint32_t: 32768
-        }
-        enumerator: "OUT_TELEPHONY_TX"
-        scalar_value: {
-            uint32_t: 65536
-        }
-        enumerator: "OUT_LINE"
-        scalar_value: {
-            uint32_t: 131072
-        }
-        enumerator: "OUT_HDMI_ARC"
-        scalar_value: {
-            uint32_t: 262144
-        }
-        enumerator: "OUT_SPDIF"
-        scalar_value: {
-            uint32_t: 524288
-        }
-        enumerator: "OUT_FM"
-        scalar_value: {
-            uint32_t: 1048576
-        }
-        enumerator: "OUT_AUX_LINE"
-        scalar_value: {
-            uint32_t: 2097152
-        }
-        enumerator: "OUT_SPEAKER_SAFE"
-        scalar_value: {
-            uint32_t: 4194304
-        }
-        enumerator: "OUT_IP"
-        scalar_value: {
-            uint32_t: 8388608
-        }
-        enumerator: "OUT_BUS"
-        scalar_value: {
-            uint32_t: 16777216
-        }
-        enumerator: "OUT_PROXY"
-        scalar_value: {
-            uint32_t: 33554432
-        }
-        enumerator: "OUT_DEFAULT"
-        scalar_value: {
-            uint32_t: 1073741824
-        }
-        enumerator: "OUT_ALL"
-        scalar_value: {
-            uint32_t: 1140850687
-        }
-        enumerator: "OUT_ALL_A2DP"
-        scalar_value: {
-            uint32_t: 896
-        }
-        enumerator: "OUT_ALL_SCO"
-        scalar_value: {
-            uint32_t: 112
-        }
-        enumerator: "OUT_ALL_USB"
-        scalar_value: {
-            uint32_t: 24576
-        }
-        enumerator: "IN_COMMUNICATION"
-        scalar_value: {
-            uint32_t: 2147483649
-        }
-        enumerator: "IN_AMBIENT"
-        scalar_value: {
-            uint32_t: 2147483650
-        }
-        enumerator: "IN_BUILTIN_MIC"
-        scalar_value: {
-            uint32_t: 2147483652
-        }
-        enumerator: "IN_BLUETOOTH_SCO_HEADSET"
-        scalar_value: {
-            uint32_t: 2147483656
-        }
-        enumerator: "IN_WIRED_HEADSET"
-        scalar_value: {
-            uint32_t: 2147483664
-        }
-        enumerator: "IN_AUX_DIGITAL"
-        scalar_value: {
-            uint32_t: 2147483680
-        }
-        enumerator: "IN_HDMI"
-        scalar_value: {
-            uint32_t: 2147483680
-        }
-        enumerator: "IN_VOICE_CALL"
-        scalar_value: {
-            uint32_t: 2147483712
-        }
-        enumerator: "IN_TELEPHONY_RX"
-        scalar_value: {
-            uint32_t: 2147483712
-        }
-        enumerator: "IN_BACK_MIC"
-        scalar_value: {
-            uint32_t: 2147483776
-        }
-        enumerator: "IN_REMOTE_SUBMIX"
-        scalar_value: {
-            uint32_t: 2147483904
-        }
-        enumerator: "IN_ANLG_DOCK_HEADSET"
-        scalar_value: {
-            uint32_t: 2147484160
-        }
-        enumerator: "IN_DGTL_DOCK_HEADSET"
-        scalar_value: {
-            uint32_t: 2147484672
-        }
-        enumerator: "IN_USB_ACCESSORY"
-        scalar_value: {
-            uint32_t: 2147485696
-        }
-        enumerator: "IN_USB_DEVICE"
-        scalar_value: {
-            uint32_t: 2147487744
-        }
-        enumerator: "IN_FM_TUNER"
-        scalar_value: {
-            uint32_t: 2147491840
-        }
-        enumerator: "IN_TV_TUNER"
-        scalar_value: {
-            uint32_t: 2147500032
-        }
-        enumerator: "IN_LINE"
-        scalar_value: {
-            uint32_t: 2147516416
-        }
-        enumerator: "IN_SPDIF"
-        scalar_value: {
-            uint32_t: 2147549184
-        }
-        enumerator: "IN_BLUETOOTH_A2DP"
-        scalar_value: {
-            uint32_t: 2147614720
-        }
-        enumerator: "IN_LOOPBACK"
-        scalar_value: {
-            uint32_t: 2147745792
-        }
-        enumerator: "IN_IP"
-        scalar_value: {
-            uint32_t: 2148007936
-        }
-        enumerator: "IN_BUS"
-        scalar_value: {
-            uint32_t: 2148532224
-        }
-        enumerator: "IN_PROXY"
-        scalar_value: {
-            uint32_t: 2164260864
-        }
-        enumerator: "IN_DEFAULT"
-        scalar_value: {
-            uint32_t: 3221225472
-        }
-        enumerator: "IN_ALL"
-        scalar_value: {
-            uint32_t: 3240099839
-        }
-        enumerator: "IN_ALL_SCO"
-        scalar_value: {
-            uint32_t: 2147483656
-        }
-        enumerator: "IN_ALL_USB"
-        scalar_value: {
-            uint32_t: 2147489792
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::audio::common::V2_0::AudioOutputFlag"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "NONE"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "DIRECT"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "PRIMARY"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "FAST"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "DEEP_BUFFER"
-        scalar_value: {
-            int32_t: 8
-        }
-        enumerator: "COMPRESS_OFFLOAD"
-        scalar_value: {
-            int32_t: 16
-        }
-        enumerator: "NON_BLOCKING"
-        scalar_value: {
-            int32_t: 32
-        }
-        enumerator: "HW_AV_SYNC"
-        scalar_value: {
-            int32_t: 64
-        }
-        enumerator: "TTS"
-        scalar_value: {
-            int32_t: 128
-        }
-        enumerator: "RAW"
-        scalar_value: {
-            int32_t: 256
-        }
-        enumerator: "SYNC"
-        scalar_value: {
-            int32_t: 512
-        }
-        enumerator: "IEC958_NONAUDIO"
-        scalar_value: {
-            int32_t: 1024
-        }
-        enumerator: "DIRECT_PCM"
-        scalar_value: {
-            int32_t: 8192
-        }
-        enumerator: "MMAP_NOIRQ"
-        scalar_value: {
-            int32_t: 16384
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::audio::common::V2_0::AudioInputFlag"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "NONE"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "FAST"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "HW_HOTWORD"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "RAW"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "SYNC"
-        scalar_value: {
-            int32_t: 8
-        }
-        enumerator: "MMAP_NOIRQ"
-        scalar_value: {
-            int32_t: 16
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::audio::common::V2_0::AudioUsage"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "UNKNOWN"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "MEDIA"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "VOICE_COMMUNICATION"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "VOICE_COMMUNICATION_SIGNALLING"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "ALARM"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "NOTIFICATION"
-        scalar_value: {
-            int32_t: 5
-        }
-        enumerator: "NOTIFICATION_TELEPHONY_RINGTONE"
-        scalar_value: {
-            int32_t: 6
-        }
-        enumerator: "NOTIFICATION_COMMUNICATION_REQUEST"
-        scalar_value: {
-            int32_t: 7
-        }
-        enumerator: "NOTIFICATION_COMMUNICATION_INSTANT"
-        scalar_value: {
-            int32_t: 8
-        }
-        enumerator: "NOTIFICATION_COMMUNICATION_DELAYED"
-        scalar_value: {
-            int32_t: 9
-        }
-        enumerator: "NOTIFICATION_EVENT"
-        scalar_value: {
-            int32_t: 10
-        }
-        enumerator: "ASSISTANCE_ACCESSIBILITY"
-        scalar_value: {
-            int32_t: 11
-        }
-        enumerator: "ASSISTANCE_NAVIGATION_GUIDANCE"
-        scalar_value: {
-            int32_t: 12
-        }
-        enumerator: "ASSISTANCE_SONIFICATION"
-        scalar_value: {
-            int32_t: 13
-        }
-        enumerator: "GAME"
-        scalar_value: {
-            int32_t: 14
-        }
-        enumerator: "VIRTUAL_SOURCE"
-        scalar_value: {
-            int32_t: 15
-        }
-        enumerator: "ASSISTANT"
-        scalar_value: {
-            int32_t: 16
-        }
-        enumerator: "CNT"
-        scalar_value: {
-            int32_t: 17
-        }
-        enumerator: "MAX"
-        scalar_value: {
-            int32_t: 16
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::audio::common::V2_0::AudioOffloadInfo"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "sampleRateHz"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "channelMask"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::audio::common::V2_0::AudioChannelMask"
-    }
-    struct_value: {
-        name: "format"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::audio::common::V2_0::AudioFormat"
-    }
-    struct_value: {
-        name: "streamType"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::audio::common::V2_0::AudioStreamType"
-    }
-    struct_value: {
-        name: "bitRatePerSecond"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "durationMicroseconds"
-        type: TYPE_SCALAR
-        scalar_type: "int64_t"
-    }
-    struct_value: {
-        name: "hasVideo"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "isStreaming"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "bitWidth"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "bufferSize"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "usage"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::audio::common::V2_0::AudioUsage"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::audio::common::V2_0::AudioConfig"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "sampleRateHz"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "channelMask"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::audio::common::V2_0::AudioChannelMask"
-    }
-    struct_value: {
-        name: "format"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::audio::common::V2_0::AudioFormat"
-    }
-    struct_value: {
-        name: "offloadInfo"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::audio::common::V2_0::AudioOffloadInfo"
-    }
-    struct_value: {
-        name: "frameCount"
-        type: TYPE_SCALAR
-        scalar_type: "uint64_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::audio::common::V2_0::AudioGainMode"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "JOINT"
-        scalar_value: {
-            uint32_t: 1
-        }
-        enumerator: "CHANNELS"
-        scalar_value: {
-            uint32_t: 2
-        }
-        enumerator: "RAMP"
-        scalar_value: {
-            uint32_t: 4
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::audio::common::V2_0::AudioGain"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "mode"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::audio::common::V2_0::AudioGainMode"
-    }
-    struct_value: {
-        name: "channelMask"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::audio::common::V2_0::AudioChannelMask"
-    }
-    struct_value: {
-        name: "minValue"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "maxValue"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "defaultValue"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "stepValue"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "minRampMs"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "maxRampMs"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::audio::common::V2_0::AudioGainConfig"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "index"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "mode"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::audio::common::V2_0::AudioGainMode"
-    }
-    struct_value: {
-        name: "channelMask"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::audio::common::V2_0::AudioChannelMask"
-    }
-    struct_value: {
-        name: "values"
-        type: TYPE_ARRAY
-        vector_size: 32
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-    struct_value: {
-        name: "rampDurationMs"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::audio::common::V2_0::AudioPortRole"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "NONE"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "SOURCE"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "SINK"
-        scalar_value: {
-            int32_t: 2
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::audio::common::V2_0::AudioPortType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "NONE"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "DEVICE"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "MIX"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "SESSION"
-        scalar_value: {
-            int32_t: 3
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::audio::common::V2_0::AudioPortConfigDeviceExt"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "hwModule"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "type"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::audio::common::V2_0::AudioDevice"
-    }
-    struct_value: {
-        name: "address"
-        type: TYPE_ARRAY
-        vector_size: 32
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::audio::common::V2_0::AudioPortConfigSessionExt"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "session"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::audio::common::V2_0::AudioPortConfigMask"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "SAMPLE_RATE"
-        scalar_value: {
-            uint32_t: 1
-        }
-        enumerator: "CHANNEL_MASK"
-        scalar_value: {
-            uint32_t: 2
-        }
-        enumerator: "FORMAT"
-        scalar_value: {
-            uint32_t: 4
-        }
-        enumerator: "GAIN"
-        scalar_value: {
-            uint32_t: 8
-        }
-        enumerator: "ALL"
-        scalar_value: {
-            uint32_t: 15
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::audio::common::V2_0::AudioPortConfig"
-    type: TYPE_STRUCT
-    sub_struct: {
-        name: "::android::hardware::audio::common::V2_0::AudioPortConfig::Ext"
-        type: TYPE_UNION
-        sub_union: {
-            name: "::android::hardware::audio::common::V2_0::AudioPortConfig::Ext::AudioPortConfigMixExt"
-            type: TYPE_STRUCT
-            sub_struct: {
-                name: "::android::hardware::audio::common::V2_0::AudioPortConfig::Ext::AudioPortConfigMixExt::UseCase"
-                type: TYPE_UNION
-                union_value: {
-                    name: "stream"
-                    type: TYPE_ENUM
-                    predefined_type: "::android::hardware::audio::common::V2_0::AudioStreamType"
-                }
-                union_value: {
-                    name: "source"
-                    type: TYPE_ENUM
-                    predefined_type: "::android::hardware::audio::common::V2_0::AudioSource"
-                }
-            }
-            struct_value: {
-                name: "hwModule"
-                type: TYPE_SCALAR
-                scalar_type: "int32_t"
-            }
-            struct_value: {
-                name: "ioHandle"
-                type: TYPE_SCALAR
-                scalar_type: "int32_t"
-            }
-            struct_value: {
-                name: "useCase"
-                type: TYPE_UNION
-                predefined_type: "::android::hardware::audio::common::V2_0::AudioPortConfig::Ext::AudioPortConfigMixExt::UseCase"
-            }
-        }
-        union_value: {
-            name: "device"
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::audio::common::V2_0::AudioPortConfigDeviceExt"
-        }
-        union_value: {
-            name: "mix"
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::audio::common::V2_0::AudioPortConfig::Ext::AudioPortConfigMixExt"
-        }
-        union_value: {
-            name: "session"
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::audio::common::V2_0::AudioPortConfigSessionExt"
-        }
-    }
-    struct_value: {
-        name: "id"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "configMask"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::audio::common::V2_0::AudioPortConfigMask"
-    }
-    struct_value: {
-        name: "sampleRateHz"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "channelMask"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::audio::common::V2_0::AudioChannelMask"
-    }
-    struct_value: {
-        name: "format"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::audio::common::V2_0::AudioFormat"
-    }
-    struct_value: {
-        name: "gain"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::audio::common::V2_0::AudioGainConfig"
-    }
-    struct_value: {
-        name: "type"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::audio::common::V2_0::AudioPortType"
-    }
-    struct_value: {
-        name: "role"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::audio::common::V2_0::AudioPortRole"
-    }
-    struct_value: {
-        name: "ext"
-        type: TYPE_UNION
-        predefined_type: "::android::hardware::audio::common::V2_0::AudioPortConfig::Ext"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::audio::common::V2_0::AudioPortDeviceExt"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "hwModule"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "type"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::audio::common::V2_0::AudioDevice"
-    }
-    struct_value: {
-        name: "address"
-        type: TYPE_ARRAY
-        vector_size: 32
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::audio::common::V2_0::AudioMixLatencyClass"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "LOW"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "NORMAL"
-        scalar_value: {
-            int32_t: 1
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::audio::common::V2_0::AudioPortMixExt"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "hwModule"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "ioHandle"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "latencyClass"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::audio::common::V2_0::AudioMixLatencyClass"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::audio::common::V2_0::AudioPortSessionExt"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "session"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::audio::common::V2_0::AudioPort"
-    type: TYPE_STRUCT
-    sub_struct: {
-        name: "::android::hardware::audio::common::V2_0::AudioPort::Ext"
-        type: TYPE_UNION
-        union_value: {
-            name: "device"
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::audio::common::V2_0::AudioPortDeviceExt"
-        }
-        union_value: {
-            name: "mix"
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::audio::common::V2_0::AudioPortMixExt"
-        }
-        union_value: {
-            name: "session"
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::audio::common::V2_0::AudioPortSessionExt"
-        }
-    }
-    struct_value: {
-        name: "id"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "role"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::audio::common::V2_0::AudioPortRole"
-    }
-    struct_value: {
-        name: "name"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "sampleRates"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-    }
-    struct_value: {
-        name: "channelMasks"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::audio::common::V2_0::AudioChannelMask"
-        }
-    }
-    struct_value: {
-        name: "formats"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::audio::common::V2_0::AudioFormat"
-        }
-    }
-    struct_value: {
-        name: "gains"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::audio::common::V2_0::AudioGain"
-        }
-    }
-    struct_value: {
-        name: "activeConfig"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::audio::common::V2_0::AudioPortConfig"
-    }
-    struct_value: {
-        name: "type"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::audio::common::V2_0::AudioPortType"
-    }
-    struct_value: {
-        name: "ext"
-        type: TYPE_UNION
-        predefined_type: "::android::hardware::audio::common::V2_0::AudioPort::Ext"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::audio::common::V2_0::ThreadInfo"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "pid"
-        type: TYPE_SCALAR
-        scalar_type: "int64_t"
-    }
-    struct_value: {
-        name: "tid"
-        type: TYPE_SCALAR
-        scalar_type: "int64_t"
-    }
-}
-
diff --git a/audio/effect/2.0/vts/functional/Android.bp b/audio/effect/2.0/vts/functional/Android.bp
index b82d44a..65fafad 100644
--- a/audio/effect/2.0/vts/functional/Android.bp
+++ b/audio/effect/2.0/vts/functional/Android.bp
@@ -15,9 +15,9 @@
 //
 
 cc_test {
-    name: "audio_effect_hidl_hal_test",
+    name: "VtsHalAudioEffectV2_0TargetTest",
     gtest: true,
-    srcs: ["audio_effect_hidl_hal_test.cpp"],
+    srcs: ["VtsHalAudioEffectV2_0TargetTest.cpp"],
     shared_libs: [
         "libbase",
         "liblog",
diff --git a/audio/effect/2.0/vts/functional/audio_effect_hidl_hal_test.cpp b/audio/effect/2.0/vts/functional/VtsHalAudioEffectV2_0TargetTest.cpp
similarity index 97%
rename from audio/effect/2.0/vts/functional/audio_effect_hidl_hal_test.cpp
rename to audio/effect/2.0/vts/functional/VtsHalAudioEffectV2_0TargetTest.cpp
index 145d4c3..6e050c6 100644
--- a/audio/effect/2.0/vts/functional/audio_effect_hidl_hal_test.cpp
+++ b/audio/effect/2.0/vts/functional/VtsHalAudioEffectV2_0TargetTest.cpp
@@ -38,7 +38,7 @@
 class AudioEffectHidlTest : public ::testing::Test {
  public:
   virtual void SetUp() override {
-    effectsFactory = IEffectsFactory::getService("audio_effects_factory");
+    effectsFactory = IEffectsFactory::getService();
     ASSERT_NE(effectsFactory, nullptr);
   }
 
diff --git a/automotive/vehicle/2.0/vts/Vehicle.vts b/automotive/vehicle/2.0/vts/Vehicle.vts
deleted file mode 100644
index aa12f0c..0000000
--- a/automotive/vehicle/2.0/vts/Vehicle.vts
+++ /dev/null
@@ -1,115 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 2.0
-component_name: "IVehicle"
-
-package: "android.hardware.automotive.vehicle"
-
-import: "android.hardware.automotive.vehicle@2.0::IVehicleCallback"
-import: "android.hardware.automotive.vehicle@2.0::types"
-import: "android.hidl.base@1.0::types"
-
-interface: {
-    api: {
-        name: "getAllPropConfigs"
-        return_type_hidl: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_STRUCT
-                predefined_type: "::android::hardware::automotive::vehicle::V2_0::VehiclePropConfig"
-            }
-        }
-    }
-
-    api: {
-        name: "getPropConfigs"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::automotive::vehicle::V2_0::StatusCode"
-        }
-        return_type_hidl: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_STRUCT
-                predefined_type: "::android::hardware::automotive::vehicle::V2_0::VehiclePropConfig"
-            }
-        }
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "int32_t"
-            }
-        }
-    }
-
-    api: {
-        name: "get"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::automotive::vehicle::V2_0::StatusCode"
-        }
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::automotive::vehicle::V2_0::VehiclePropValue"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::automotive::vehicle::V2_0::VehiclePropValue"
-        }
-    }
-
-    api: {
-        name: "set"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::automotive::vehicle::V2_0::StatusCode"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::automotive::vehicle::V2_0::VehiclePropValue"
-        }
-    }
-
-    api: {
-        name: "subscribe"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::automotive::vehicle::V2_0::StatusCode"
-        }
-        arg: {
-            type: TYPE_HIDL_CALLBACK
-            predefined_type: "::android::hardware::automotive::vehicle::V2_0::IVehicleCallback"
-        }
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_STRUCT
-                predefined_type: "::android::hardware::automotive::vehicle::V2_0::SubscribeOptions"
-            }
-        }
-    }
-
-    api: {
-        name: "unsubscribe"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::automotive::vehicle::V2_0::StatusCode"
-        }
-        arg: {
-            type: TYPE_HIDL_CALLBACK
-            predefined_type: "::android::hardware::automotive::vehicle::V2_0::IVehicleCallback"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "debugDump"
-        return_type_hidl: {
-            type: TYPE_STRING
-        }
-    }
-
-}
diff --git a/automotive/vehicle/2.0/vts/VehicleCallback.vts b/automotive/vehicle/2.0/vts/VehicleCallback.vts
deleted file mode 100644
index e4815d5..0000000
--- a/automotive/vehicle/2.0/vts/VehicleCallback.vts
+++ /dev/null
@@ -1,46 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 2.0
-component_name: "IVehicleCallback"
-
-package: "android.hardware.automotive.vehicle"
-
-import: "android.hardware.automotive.vehicle@2.0::types"
-import: "android.hidl.base@1.0::types"
-
-interface: {
-    api: {
-        name: "onPropertyEvent"
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_STRUCT
-                predefined_type: "::android::hardware::automotive::vehicle::V2_0::VehiclePropValue"
-            }
-        }
-    }
-
-    api: {
-        name: "onPropertySet"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::automotive::vehicle::V2_0::VehiclePropValue"
-        }
-    }
-
-    api: {
-        name: "onPropertySetError"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::automotive::vehicle::V2_0::StatusCode"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-}
diff --git a/automotive/vehicle/2.0/vts/types.vts b/automotive/vehicle/2.0/vts/types.vts
deleted file mode 100644
index 3868c99..0000000
--- a/automotive/vehicle/2.0/vts/types.vts
+++ /dev/null
@@ -1,2780 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 2.0
-component_name: "types"
-
-package: "android.hardware.automotive.vehicle"
-
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VehiclePropertyType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "STRING"
-        scalar_value: {
-            int32_t: 1048576
-        }
-        enumerator: "BOOLEAN"
-        scalar_value: {
-            int32_t: 2097152
-        }
-        enumerator: "INT32"
-        scalar_value: {
-            int32_t: 4194304
-        }
-        enumerator: "INT32_VEC"
-        scalar_value: {
-            int32_t: 4259840
-        }
-        enumerator: "INT64"
-        scalar_value: {
-            int32_t: 5242880
-        }
-        enumerator: "FLOAT"
-        scalar_value: {
-            int32_t: 6291456
-        }
-        enumerator: "FLOAT_VEC"
-        scalar_value: {
-            int32_t: 6356992
-        }
-        enumerator: "BYTES"
-        scalar_value: {
-            int32_t: 7340032
-        }
-        enumerator: "COMPLEX"
-        scalar_value: {
-            int32_t: 14680064
-        }
-        enumerator: "MASK"
-        scalar_value: {
-            int32_t: 16711680
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VehicleArea"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "GLOBAL"
-        scalar_value: {
-            int32_t: 16777216
-        }
-        enumerator: "ZONE"
-        scalar_value: {
-            int32_t: 33554432
-        }
-        enumerator: "WINDOW"
-        scalar_value: {
-            int32_t: 50331648
-        }
-        enumerator: "MIRROR"
-        scalar_value: {
-            int32_t: 67108864
-        }
-        enumerator: "SEAT"
-        scalar_value: {
-            int32_t: 83886080
-        }
-        enumerator: "DOOR"
-        scalar_value: {
-            int32_t: 100663296
-        }
-        enumerator: "MASK"
-        scalar_value: {
-            int32_t: 251658240
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VehiclePropertyGroup"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "SYSTEM"
-        scalar_value: {
-            int32_t: 268435456
-        }
-        enumerator: "VENDOR"
-        scalar_value: {
-            int32_t: 536870912
-        }
-        enumerator: "MASK"
-        scalar_value: {
-            int32_t: -268435456
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VehicleProperty"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "INVALID"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "INFO_VIN"
-        scalar_value: {
-            int32_t: 286261504
-        }
-        enumerator: "INFO_MAKE"
-        scalar_value: {
-            int32_t: 286261505
-        }
-        enumerator: "INFO_MODEL"
-        scalar_value: {
-            int32_t: 286261506
-        }
-        enumerator: "INFO_MODEL_YEAR"
-        scalar_value: {
-            int32_t: 289407235
-        }
-        enumerator: "INFO_FUEL_CAPACITY"
-        scalar_value: {
-            int32_t: 291504388
-        }
-        enumerator: "PERF_ODOMETER"
-        scalar_value: {
-            int32_t: 291504644
-        }
-        enumerator: "PERF_VEHICLE_SPEED"
-        scalar_value: {
-            int32_t: 291504647
-        }
-        enumerator: "ENGINE_COOLANT_TEMP"
-        scalar_value: {
-            int32_t: 291504897
-        }
-        enumerator: "ENGINE_OIL_TEMP"
-        scalar_value: {
-            int32_t: 291504900
-        }
-        enumerator: "ENGINE_RPM"
-        scalar_value: {
-            int32_t: 291504901
-        }
-        enumerator: "WHEEL_TICK"
-        scalar_value: {
-            int32_t: 291570438
-        }
-        enumerator: "GEAR_SELECTION"
-        scalar_value: {
-            int32_t: 289408000
-        }
-        enumerator: "CURRENT_GEAR"
-        scalar_value: {
-            int32_t: 289408001
-        }
-        enumerator: "PARKING_BRAKE_ON"
-        scalar_value: {
-            int32_t: 287310850
-        }
-        enumerator: "DRIVING_STATUS"
-        scalar_value: {
-            int32_t: 289408004
-        }
-        enumerator: "FUEL_LEVEL_LOW"
-        scalar_value: {
-            int32_t: 287310853
-        }
-        enumerator: "NIGHT_MODE"
-        scalar_value: {
-            int32_t: 287310855
-        }
-        enumerator: "TURN_SIGNAL_STATE"
-        scalar_value: {
-            int32_t: 289408008
-        }
-        enumerator: "IGNITION_STATE"
-        scalar_value: {
-            int32_t: 289408009
-        }
-        enumerator: "HVAC_FAN_SPEED"
-        scalar_value: {
-            int32_t: 306185472
-        }
-        enumerator: "HVAC_FAN_DIRECTION"
-        scalar_value: {
-            int32_t: 306185473
-        }
-        enumerator: "HVAC_TEMPERATURE_CURRENT"
-        scalar_value: {
-            int32_t: 308282626
-        }
-        enumerator: "HVAC_TEMPERATURE_SET"
-        scalar_value: {
-            int32_t: 308282627
-        }
-        enumerator: "HVAC_DEFROSTER"
-        scalar_value: {
-            int32_t: 320865540
-        }
-        enumerator: "HVAC_AC_ON"
-        scalar_value: {
-            int32_t: 304088325
-        }
-        enumerator: "HVAC_MAX_AC_ON"
-        scalar_value: {
-            int32_t: 304088326
-        }
-        enumerator: "HVAC_MAX_DEFROST_ON"
-        scalar_value: {
-            int32_t: 304088327
-        }
-        enumerator: "HVAC_RECIRC_ON"
-        scalar_value: {
-            int32_t: 304088328
-        }
-        enumerator: "HVAC_DUAL_ON"
-        scalar_value: {
-            int32_t: 304088329
-        }
-        enumerator: "HVAC_AUTO_ON"
-        scalar_value: {
-            int32_t: 304088330
-        }
-        enumerator: "HVAC_SEAT_TEMPERATURE"
-        scalar_value: {
-            int32_t: 356517131
-        }
-        enumerator: "HVAC_SIDE_MIRROR_HEAT"
-        scalar_value: {
-            int32_t: 339739916
-        }
-        enumerator: "HVAC_STEERING_WHEEL_TEMP"
-        scalar_value: {
-            int32_t: 289408269
-        }
-        enumerator: "HVAC_TEMPERATURE_UNITS"
-        scalar_value: {
-            int32_t: 306185486
-        }
-        enumerator: "HVAC_ACTUAL_FAN_SPEED_RPM"
-        scalar_value: {
-            int32_t: 306185487
-        }
-        enumerator: "HVAC_FAN_DIRECTION_AVAILABLE"
-        scalar_value: {
-            int32_t: 306185489
-        }
-        enumerator: "HVAC_POWER_ON"
-        scalar_value: {
-            int32_t: 304088336
-        }
-        enumerator: "ENV_OUTSIDE_TEMPERATURE"
-        scalar_value: {
-            int32_t: 291505923
-        }
-        enumerator: "ENV_CABIN_TEMPERATURE"
-        scalar_value: {
-            int32_t: 291505924
-        }
-        enumerator: "RADIO_PRESET"
-        scalar_value: {
-            int32_t: 289474561
-        }
-        enumerator: "AUDIO_FOCUS"
-        scalar_value: {
-            int32_t: 289474816
-        }
-        enumerator: "AUDIO_FOCUS_EXT_SYNC"
-        scalar_value: {
-            int32_t: 289474832
-        }
-        enumerator: "AUDIO_VOLUME"
-        scalar_value: {
-            int32_t: 289474817
-        }
-        enumerator: "AUDIO_VOLUME_EXT_SYNC"
-        scalar_value: {
-            int32_t: 289474833
-        }
-        enumerator: "AUDIO_VOLUME_LIMIT"
-        scalar_value: {
-            int32_t: 289474818
-        }
-        enumerator: "AUDIO_ROUTING_POLICY"
-        scalar_value: {
-            int32_t: 289474819
-        }
-        enumerator: "AUDIO_HW_VARIANT"
-        scalar_value: {
-            int32_t: 289409284
-        }
-        enumerator: "AUDIO_EXT_ROUTING_HINT"
-        scalar_value: {
-            int32_t: 289474821
-        }
-        enumerator: "AUDIO_STREAM_STATE"
-        scalar_value: {
-            int32_t: 289474822
-        }
-        enumerator: "AUDIO_PARAMETERS"
-        scalar_value: {
-            int32_t: 286263559
-        }
-        enumerator: "AP_POWER_STATE"
-        scalar_value: {
-            int32_t: 289475072
-        }
-        enumerator: "DISPLAY_BRIGHTNESS"
-        scalar_value: {
-            int32_t: 289409537
-        }
-        enumerator: "AP_POWER_BOOTUP_REASON"
-        scalar_value: {
-            int32_t: 289409538
-        }
-        enumerator: "HW_KEY_INPUT"
-        scalar_value: {
-            int32_t: 289475088
-        }
-        enumerator: "INSTRUMENT_CLUSTER_INFO"
-        scalar_value: {
-            int32_t: 289475104
-        }
-        enumerator: "UNIX_TIME"
-        scalar_value: {
-            int32_t: 290458160
-        }
-        enumerator: "CURRENT_TIME_IN_SECONDS"
-        scalar_value: {
-            int32_t: 289409585
-        }
-        enumerator: "DOOR_POS"
-        scalar_value: {
-            int32_t: 373295872
-        }
-        enumerator: "DOOR_MOVE"
-        scalar_value: {
-            int32_t: 373295873
-        }
-        enumerator: "DOOR_LOCK"
-        scalar_value: {
-            int32_t: 371198722
-        }
-        enumerator: "MIRROR_Z_POS"
-        scalar_value: {
-            int32_t: 339741504
-        }
-        enumerator: "MIRROR_Z_MOVE"
-        scalar_value: {
-            int32_t: 339741505
-        }
-        enumerator: "MIRROR_Y_POS"
-        scalar_value: {
-            int32_t: 339741506
-        }
-        enumerator: "MIRROR_Y_MOVE"
-        scalar_value: {
-            int32_t: 339741507
-        }
-        enumerator: "MIRROR_LOCK"
-        scalar_value: {
-            int32_t: 287312708
-        }
-        enumerator: "MIRROR_FOLD"
-        scalar_value: {
-            int32_t: 287312709
-        }
-        enumerator: "SEAT_MEMORY_SELECT"
-        scalar_value: {
-            int32_t: 356518784
-        }
-        enumerator: "SEAT_MEMORY_SET"
-        scalar_value: {
-            int32_t: 356518785
-        }
-        enumerator: "SEAT_BELT_BUCKLED"
-        scalar_value: {
-            int32_t: 354421634
-        }
-        enumerator: "SEAT_BELT_HEIGHT_POS"
-        scalar_value: {
-            int32_t: 356518787
-        }
-        enumerator: "SEAT_BELT_HEIGHT_MOVE"
-        scalar_value: {
-            int32_t: 356518788
-        }
-        enumerator: "SEAT_FORE_AFT_POS"
-        scalar_value: {
-            int32_t: 356518789
-        }
-        enumerator: "SEAT_FORE_AFT_MOVE"
-        scalar_value: {
-            int32_t: 356518790
-        }
-        enumerator: "SEAT_BACKREST_ANGLE_1_POS"
-        scalar_value: {
-            int32_t: 356518791
-        }
-        enumerator: "SEAT_BACKREST_ANGLE_1_MOVE"
-        scalar_value: {
-            int32_t: 356518792
-        }
-        enumerator: "SEAT_BACKREST_ANGLE_2_POS"
-        scalar_value: {
-            int32_t: 356518793
-        }
-        enumerator: "SEAT_BACKREST_ANGLE_2_MOVE"
-        scalar_value: {
-            int32_t: 356518794
-        }
-        enumerator: "SEAT_HEIGHT_POS"
-        scalar_value: {
-            int32_t: 356518795
-        }
-        enumerator: "SEAT_HEIGHT_MOVE"
-        scalar_value: {
-            int32_t: 356518796
-        }
-        enumerator: "SEAT_DEPTH_POS"
-        scalar_value: {
-            int32_t: 356518797
-        }
-        enumerator: "SEAT_DEPTH_MOVE"
-        scalar_value: {
-            int32_t: 356518798
-        }
-        enumerator: "SEAT_TILT_POS"
-        scalar_value: {
-            int32_t: 356518799
-        }
-        enumerator: "SEAT_TILT_MOVE"
-        scalar_value: {
-            int32_t: 356518800
-        }
-        enumerator: "SEAT_LUMBAR_FORE_AFT_POS"
-        scalar_value: {
-            int32_t: 356518801
-        }
-        enumerator: "SEAT_LUMBAR_FORE_AFT_MOVE"
-        scalar_value: {
-            int32_t: 356518802
-        }
-        enumerator: "SEAT_LUMBAR_SIDE_SUPPORT_POS"
-        scalar_value: {
-            int32_t: 356518803
-        }
-        enumerator: "SEAT_LUMBAR_SIDE_SUPPORT_MOVE"
-        scalar_value: {
-            int32_t: 356518804
-        }
-        enumerator: "SEAT_HEADREST_HEIGHT_POS"
-        scalar_value: {
-            int32_t: 289409941
-        }
-        enumerator: "SEAT_HEADREST_HEIGHT_MOVE"
-        scalar_value: {
-            int32_t: 356518806
-        }
-        enumerator: "SEAT_HEADREST_ANGLE_POS"
-        scalar_value: {
-            int32_t: 356518807
-        }
-        enumerator: "SEAT_HEADREST_ANGLE_MOVE"
-        scalar_value: {
-            int32_t: 356518808
-        }
-        enumerator: "SEAT_HEADREST_FORE_AFT_POS"
-        scalar_value: {
-            int32_t: 356518809
-        }
-        enumerator: "SEAT_HEADREST_FORE_AFT_MOVE"
-        scalar_value: {
-            int32_t: 356518810
-        }
-        enumerator: "WINDOW_POS"
-        scalar_value: {
-            int32_t: 289409984
-        }
-        enumerator: "WINDOW_MOVE"
-        scalar_value: {
-            int32_t: 289409985
-        }
-        enumerator: "WINDOW_VENT_POS"
-        scalar_value: {
-            int32_t: 289409986
-        }
-        enumerator: "WINDOW_VENT_MOVE"
-        scalar_value: {
-            int32_t: 289409987
-        }
-        enumerator: "WINDOW_LOCK"
-        scalar_value: {
-            int32_t: 287312836
-        }
-        enumerator: "VEHICLE_MAP_SERVICE"
-        scalar_value: {
-            int32_t: 299895808
-        }
-        enumerator: "OBD2_LIVE_FRAME"
-        scalar_value: {
-            int32_t: 299896064
-        }
-        enumerator: "OBD2_FREEZE_FRAME"
-        scalar_value: {
-            int32_t: 299896065
-        }
-        enumerator: "OBD2_FREEZE_FRAME_INFO"
-        scalar_value: {
-            int32_t: 299896066
-        }
-        enumerator: "OBD2_FREEZE_FRAME_CLEAR"
-        scalar_value: {
-            int32_t: 299896067
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VehicleHvacFanDirection"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "FACE"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "FLOOR"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "FACE_AND_FLOOR"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "DEFROST"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "DEFROST_AND_FLOOR"
-        scalar_value: {
-            int32_t: 5
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VehicleRadioConstants"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "VEHICLE_RADIO_PRESET_MIN_VALUE"
-        scalar_value: {
-            int32_t: 1
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VehicleAudioFocusRequest"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "REQUEST_GAIN"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "REQUEST_GAIN_TRANSIENT"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "REQUEST_GAIN_TRANSIENT_MAY_DUCK"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "REQUEST_GAIN_TRANSIENT_NO_DUCK"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "REQUEST_RELEASE"
-        scalar_value: {
-            int32_t: 5
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VehicleAudioFocusState"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "STATE_GAIN"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "STATE_GAIN_TRANSIENT"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "STATE_LOSS_TRANSIENT_CAN_DUCK"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "STATE_LOSS_TRANSIENT"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "STATE_LOSS"
-        scalar_value: {
-            int32_t: 5
-        }
-        enumerator: "STATE_LOSS_TRANSIENT_EXLCUSIVE"
-        scalar_value: {
-            int32_t: 6
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VehicleAudioStreamFlag"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "STREAM0_FLAG"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "STREAM1_FLAG"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "STREAM2_FLAG"
-        scalar_value: {
-            int32_t: 4
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VehicleAudioStream"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "STREAM0"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "STREAM1"
-        scalar_value: {
-            int32_t: 1
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VehicleAudioExtFocusFlag"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "NONE_FLAG"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "PERMANENT_FLAG"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "TRANSIENT_FLAG"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "PLAY_ONLY_FLAG"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "MUTE_MEDIA_FLAG"
-        scalar_value: {
-            int32_t: 8
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VehicleAudioFocusIndex"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "FOCUS"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "STREAMS"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "EXTERNAL_FOCUS_STATE"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "AUDIO_CONTEXTS"
-        scalar_value: {
-            int32_t: 3
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VehicleAudioContextFlag"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "MUSIC_FLAG"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "NAVIGATION_FLAG"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "VOICE_COMMAND_FLAG"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "CALL_FLAG"
-        scalar_value: {
-            int32_t: 8
-        }
-        enumerator: "ALARM_FLAG"
-        scalar_value: {
-            int32_t: 16
-        }
-        enumerator: "NOTIFICATION_FLAG"
-        scalar_value: {
-            int32_t: 32
-        }
-        enumerator: "UNKNOWN_FLAG"
-        scalar_value: {
-            int32_t: 64
-        }
-        enumerator: "SAFETY_ALERT_FLAG"
-        scalar_value: {
-            int32_t: 128
-        }
-        enumerator: "CD_ROM_FLAG"
-        scalar_value: {
-            int32_t: 256
-        }
-        enumerator: "AUX_AUDIO_FLAG"
-        scalar_value: {
-            int32_t: 512
-        }
-        enumerator: "SYSTEM_SOUND_FLAG"
-        scalar_value: {
-            int32_t: 1024
-        }
-        enumerator: "RADIO_FLAG"
-        scalar_value: {
-            int32_t: 2048
-        }
-        enumerator: "EXT_SOURCE_FLAG"
-        scalar_value: {
-            int32_t: 4096
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VehicleAudioVolumeCapabilityFlag"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "PERSISTENT_STORAGE"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "MASTER_VOLUME_ONLY"
-        scalar_value: {
-            int32_t: 2
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VehicleAudioVolumeState"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "STATE_OK"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "LIMIT_REACHED"
-        scalar_value: {
-            int32_t: 1
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VehicleAudioVolumeIndex"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "INDEX_STREAM"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "INDEX_VOLUME"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "INDEX_STATE"
-        scalar_value: {
-            int32_t: 2
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VehicleAudioVolumeLimitIndex"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "STREAM"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "MAX_VOLUME"
-        scalar_value: {
-            int32_t: 1
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VehicleAudioRoutingPolicyIndex"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "STREAM"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "CONTEXTS"
-        scalar_value: {
-            int32_t: 1
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VehicleAudioHwVariantConfigFlag"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "INTERNAL_RADIO_FLAG"
-        scalar_value: {
-            int32_t: 1
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VehicleApPowerStateConfigFlag"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "ENABLE_DEEP_SLEEP_FLAG"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "CONFIG_SUPPORT_TIMER_POWER_ON_FLAG"
-        scalar_value: {
-            int32_t: 2
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VehicleApPowerState"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "OFF"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "DEEP_SLEEP"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "ON_DISP_OFF"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "ON_FULL"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "SHUTDOWN_PREPARE"
-        scalar_value: {
-            int32_t: 4
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VehicleApPowerStateShutdownParam"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "SHUTDOWN_IMMEDIATELY"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "CAN_SLEEP"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "SHUTDOWN_ONLY"
-        scalar_value: {
-            int32_t: 3
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VehicleApPowerSetState"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "BOOT_COMPLETE"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "DEEP_SLEEP_ENTRY"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "DEEP_SLEEP_EXIT"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "SHUTDOWN_POSTPONE"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "SHUTDOWN_START"
-        scalar_value: {
-            int32_t: 5
-        }
-        enumerator: "DISPLAY_OFF"
-        scalar_value: {
-            int32_t: 6
-        }
-        enumerator: "DISPLAY_ON"
-        scalar_value: {
-            int32_t: 7
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VehicleApPowerStateIndex"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "STATE"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "ADDITIONAL"
-        scalar_value: {
-            int32_t: 1
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VehicleApPowerBootupReason"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "USER_POWER_ON"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "USER_UNLOCK"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "TIMER"
-        scalar_value: {
-            int32_t: 2
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VehicleHwKeyInputAction"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "ACTION_DOWN"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "ACTION_UP"
-        scalar_value: {
-            int32_t: 1
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VehicleDisplay"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "MAIN"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "INSTRUMENT_CLUSTER"
-        scalar_value: {
-            int32_t: 1
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VehicleInstrumentClusterType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "NONE"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "HAL_INTERFACE"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "EXTERNAL_DISPLAY"
-        scalar_value: {
-            int32_t: 2
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VehicleUnit"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "SHOULD_NOT_USE"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "METER_PER_SEC"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "RPM"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "HERTZ"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "PERCENTILE"
-        scalar_value: {
-            int32_t: 16
-        }
-        enumerator: "MILLIMETER"
-        scalar_value: {
-            int32_t: 32
-        }
-        enumerator: "METER"
-        scalar_value: {
-            int32_t: 33
-        }
-        enumerator: "KILOMETER"
-        scalar_value: {
-            int32_t: 35
-        }
-        enumerator: "CELSIUS"
-        scalar_value: {
-            int32_t: 48
-        }
-        enumerator: "FAHRENHEIT"
-        scalar_value: {
-            int32_t: 49
-        }
-        enumerator: "KELVIN"
-        scalar_value: {
-            int32_t: 50
-        }
-        enumerator: "MILLILITER"
-        scalar_value: {
-            int32_t: 64
-        }
-        enumerator: "NANO_SECS"
-        scalar_value: {
-            int32_t: 80
-        }
-        enumerator: "SECS"
-        scalar_value: {
-            int32_t: 83
-        }
-        enumerator: "YEAR"
-        scalar_value: {
-            int32_t: 89
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VehiclePropertyChangeMode"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "STATIC"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "ON_CHANGE"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "CONTINUOUS"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "POLL"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "ON_SET"
-        scalar_value: {
-            int32_t: 4
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VehiclePropertyAccess"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "NONE"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "READ"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "WRITE"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "READ_WRITE"
-        scalar_value: {
-            int32_t: 3
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VehicleDrivingStatus"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "UNRESTRICTED"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "NO_VIDEO"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "NO_KEYBOARD_INPUT"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "NO_VOICE_INPUT"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "NO_CONFIG"
-        scalar_value: {
-            int32_t: 8
-        }
-        enumerator: "LIMIT_MESSAGE_LEN"
-        scalar_value: {
-            int32_t: 16
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VehicleGear"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "GEAR_NEUTRAL"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "GEAR_REVERSE"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "GEAR_PARK"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "GEAR_DRIVE"
-        scalar_value: {
-            int32_t: 8
-        }
-        enumerator: "GEAR_LOW"
-        scalar_value: {
-            int32_t: 16
-        }
-        enumerator: "GEAR_1"
-        scalar_value: {
-            int32_t: 16
-        }
-        enumerator: "GEAR_2"
-        scalar_value: {
-            int32_t: 32
-        }
-        enumerator: "GEAR_3"
-        scalar_value: {
-            int32_t: 64
-        }
-        enumerator: "GEAR_4"
-        scalar_value: {
-            int32_t: 128
-        }
-        enumerator: "GEAR_5"
-        scalar_value: {
-            int32_t: 256
-        }
-        enumerator: "GEAR_6"
-        scalar_value: {
-            int32_t: 512
-        }
-        enumerator: "GEAR_7"
-        scalar_value: {
-            int32_t: 1024
-        }
-        enumerator: "GEAR_8"
-        scalar_value: {
-            int32_t: 2048
-        }
-        enumerator: "GEAR_9"
-        scalar_value: {
-            int32_t: 4096
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VehicleAreaZone"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "ROW_1_LEFT"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "ROW_1_CENTER"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "ROW_1_RIGHT"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "ROW_1"
-        scalar_value: {
-            int32_t: 8
-        }
-        enumerator: "ROW_2_LEFT"
-        scalar_value: {
-            int32_t: 16
-        }
-        enumerator: "ROW_2_CENTER"
-        scalar_value: {
-            int32_t: 32
-        }
-        enumerator: "ROW_2_RIGHT"
-        scalar_value: {
-            int32_t: 64
-        }
-        enumerator: "ROW_2"
-        scalar_value: {
-            int32_t: 128
-        }
-        enumerator: "ROW_3_LEFT"
-        scalar_value: {
-            int32_t: 256
-        }
-        enumerator: "ROW_3_CENTER"
-        scalar_value: {
-            int32_t: 512
-        }
-        enumerator: "ROW_3_RIGHT"
-        scalar_value: {
-            int32_t: 1024
-        }
-        enumerator: "ROW_3"
-        scalar_value: {
-            int32_t: 2048
-        }
-        enumerator: "ROW_4_LEFT"
-        scalar_value: {
-            int32_t: 4096
-        }
-        enumerator: "ROW_4_CENTER"
-        scalar_value: {
-            int32_t: 8192
-        }
-        enumerator: "ROW_4_RIGHT"
-        scalar_value: {
-            int32_t: 16384
-        }
-        enumerator: "ROW_4"
-        scalar_value: {
-            int32_t: 32768
-        }
-        enumerator: "WHOLE_CABIN"
-        scalar_value: {
-            int32_t: -2147483648
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VehicleAreaSeat"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "ROW_1_LEFT"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "ROW_1_CENTER"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "ROW_1_RIGHT"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "ROW_2_LEFT"
-        scalar_value: {
-            int32_t: 16
-        }
-        enumerator: "ROW_2_CENTER"
-        scalar_value: {
-            int32_t: 32
-        }
-        enumerator: "ROW_2_RIGHT"
-        scalar_value: {
-            int32_t: 64
-        }
-        enumerator: "ROW_3_LEFT"
-        scalar_value: {
-            int32_t: 256
-        }
-        enumerator: "ROW_3_CENTER"
-        scalar_value: {
-            int32_t: 512
-        }
-        enumerator: "ROW_3_RIGHT"
-        scalar_value: {
-            int32_t: 1024
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VehicleAreaWindow"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "FRONT_WINDSHIELD"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "REAR_WINDSHIELD"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "ROOF_TOP"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "ROW_1_LEFT"
-        scalar_value: {
-            int32_t: 16
-        }
-        enumerator: "ROW_1_RIGHT"
-        scalar_value: {
-            int32_t: 32
-        }
-        enumerator: "ROW_2_LEFT"
-        scalar_value: {
-            int32_t: 256
-        }
-        enumerator: "ROW_2_RIGHT"
-        scalar_value: {
-            int32_t: 512
-        }
-        enumerator: "ROW_3_LEFT"
-        scalar_value: {
-            int32_t: 4096
-        }
-        enumerator: "ROW_3_RIGHT"
-        scalar_value: {
-            int32_t: 8192
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VehicleAreaDoor"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "ROW_1_LEFT"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "ROW_1_RIGHT"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "ROW_2_LEFT"
-        scalar_value: {
-            int32_t: 16
-        }
-        enumerator: "ROW_2_RIGHT"
-        scalar_value: {
-            int32_t: 64
-        }
-        enumerator: "ROW_3_LEFT"
-        scalar_value: {
-            int32_t: 256
-        }
-        enumerator: "ROW_3_RIGHT"
-        scalar_value: {
-            int32_t: 1024
-        }
-        enumerator: "HOOD"
-        scalar_value: {
-            int32_t: 268435456
-        }
-        enumerator: "REAR"
-        scalar_value: {
-            int32_t: 536870912
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VehicleAreaMirror"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "DRIVER_LEFT"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "DRIVER_RIGHT"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "DRIVER_CENTER"
-        scalar_value: {
-            int32_t: 4
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VehicleTurnSignal"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "NONE"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "RIGHT"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "LEFT"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "EMERGENCY"
-        scalar_value: {
-            int32_t: 4
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VehicleAreaConfig"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "areaId"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "minInt32Value"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "maxInt32Value"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "minInt64Value"
-        type: TYPE_SCALAR
-        scalar_type: "int64_t"
-    }
-    struct_value: {
-        name: "maxInt64Value"
-        type: TYPE_SCALAR
-        scalar_type: "int64_t"
-    }
-    struct_value: {
-        name: "minFloatValue"
-        type: TYPE_SCALAR
-        scalar_type: "float_t"
-    }
-    struct_value: {
-        name: "maxFloatValue"
-        type: TYPE_SCALAR
-        scalar_type: "float_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VehiclePropConfig"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "prop"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "access"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::automotive::vehicle::V2_0::VehiclePropertyAccess"
-    }
-    struct_value: {
-        name: "changeMode"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::automotive::vehicle::V2_0::VehiclePropertyChangeMode"
-    }
-    struct_value: {
-        name: "supportedAreas"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "areaConfigs"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::automotive::vehicle::V2_0::VehicleAreaConfig"
-        }
-    }
-    struct_value: {
-        name: "configFlags"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "configArray"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-    struct_value: {
-        name: "configString"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "minSampleRate"
-        type: TYPE_SCALAR
-        scalar_type: "float_t"
-    }
-    struct_value: {
-        name: "maxSampleRate"
-        type: TYPE_SCALAR
-        scalar_type: "float_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VehiclePropValue"
-    type: TYPE_STRUCT
-    sub_struct: {
-        name: "::android::hardware::automotive::vehicle::V2_0::VehiclePropValue::RawValue"
-        type: TYPE_STRUCT
-        struct_value: {
-            name: "int32Values"
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "int32_t"
-            }
-        }
-        struct_value: {
-            name: "floatValues"
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "float_t"
-            }
-        }
-        struct_value: {
-            name: "int64Values"
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "int64_t"
-            }
-        }
-        struct_value: {
-            name: "bytes"
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-        struct_value: {
-            name: "stringValue"
-            type: TYPE_STRING
-        }
-    }
-    struct_value: {
-        name: "prop"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "timestamp"
-        type: TYPE_SCALAR
-        scalar_type: "int64_t"
-    }
-    struct_value: {
-        name: "areaId"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "value"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::automotive::vehicle::V2_0::VehiclePropValue::RawValue"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VehicleIgnitionState"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "UNDEFINED"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "LOCK"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "OFF"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "ACC"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "ON"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "START"
-        scalar_value: {
-            int32_t: 5
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VehiclePropertyOperation"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "GENERIC"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "SET"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "GET"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "SUBSCRIBE"
-        scalar_value: {
-            int32_t: 3
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::SubscribeFlags"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "UNDEFINED"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "HAL_EVENT"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "SET_CALL"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "DEFAULT"
-        scalar_value: {
-            int32_t: 1
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::SubscribeOptions"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "propId"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "vehicleAreas"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "sampleRate"
-        type: TYPE_SCALAR
-        scalar_type: "float_t"
-    }
-    struct_value: {
-        name: "flags"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::automotive::vehicle::V2_0::SubscribeFlags"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::StatusCode"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "OK"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "TRY_AGAIN"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "INVALID_ARG"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "NOT_AVAILABLE"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "ACCESS_DENIED"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "INTERNAL_ERROR"
-        scalar_value: {
-            int32_t: 5
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::FuelSystemStatus"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "OPEN_INSUFFICIENT_ENGINE_TEMPERATURE"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "CLOSED_LOOP"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "OPEN_ENGINE_LOAD_OR_DECELERATION"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "OPEN_SYSTEM_FAILURE"
-        scalar_value: {
-            int32_t: 8
-        }
-        enumerator: "CLOSED_LOOP_BUT_FEEDBACK_FAULT"
-        scalar_value: {
-            int32_t: 16
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::IgnitionMonitorKind"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "SPARK"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "COMPRESSION"
-        scalar_value: {
-            int32_t: 1
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::CommonIgnitionMonitors"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "COMPONENTS_AVAILABLE"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "COMPONENTS_INCOMPLETE"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "FUEL_SYSTEM_AVAILABLE"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "FUEL_SYSTEM_INCOMPLETE"
-        scalar_value: {
-            int32_t: 8
-        }
-        enumerator: "MISFIRE_AVAILABLE"
-        scalar_value: {
-            int32_t: 16
-        }
-        enumerator: "MISFIRE_INCOMPLETE"
-        scalar_value: {
-            int32_t: 32
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::SparkIgnitionMonitors"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "COMPONENTS_AVAILABLE"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "COMPONENTS_INCOMPLETE"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "FUEL_SYSTEM_AVAILABLE"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "FUEL_SYSTEM_INCOMPLETE"
-        scalar_value: {
-            int32_t: 8
-        }
-        enumerator: "MISFIRE_AVAILABLE"
-        scalar_value: {
-            int32_t: 16
-        }
-        enumerator: "MISFIRE_INCOMPLETE"
-        scalar_value: {
-            int32_t: 32
-        }
-        enumerator: "EGR_AVAILABLE"
-        scalar_value: {
-            int32_t: 64
-        }
-        enumerator: "EGR_INCOMPLETE"
-        scalar_value: {
-            int32_t: 128
-        }
-        enumerator: "OXYGEN_SENSOR_HEATER_AVAILABLE"
-        scalar_value: {
-            int32_t: 256
-        }
-        enumerator: "OXYGEN_SENSOR_HEATER_INCOMPLETE"
-        scalar_value: {
-            int32_t: 512
-        }
-        enumerator: "OXYGEN_SENSOR_AVAILABLE"
-        scalar_value: {
-            int32_t: 1024
-        }
-        enumerator: "OXYGEN_SENSOR_INCOMPLETE"
-        scalar_value: {
-            int32_t: 2048
-        }
-        enumerator: "AC_REFRIGERANT_AVAILABLE"
-        scalar_value: {
-            int32_t: 4096
-        }
-        enumerator: "AC_REFRIGERANT_INCOMPLETE"
-        scalar_value: {
-            int32_t: 8192
-        }
-        enumerator: "SECONDARY_AIR_SYSTEM_AVAILABLE"
-        scalar_value: {
-            int32_t: 16384
-        }
-        enumerator: "SECONDARY_AIR_SYSTEM_INCOMPLETE"
-        scalar_value: {
-            int32_t: 32768
-        }
-        enumerator: "EVAPORATIVE_SYSTEM_AVAILABLE"
-        scalar_value: {
-            int32_t: 65536
-        }
-        enumerator: "EVAPORATIVE_SYSTEM_INCOMPLETE"
-        scalar_value: {
-            int32_t: 131072
-        }
-        enumerator: "HEATED_CATALYST_AVAILABLE"
-        scalar_value: {
-            int32_t: 262144
-        }
-        enumerator: "HEATED_CATALYST_INCOMPLETE"
-        scalar_value: {
-            int32_t: 524288
-        }
-        enumerator: "CATALYST_AVAILABLE"
-        scalar_value: {
-            int32_t: 1048576
-        }
-        enumerator: "CATALYST_INCOMPLETE"
-        scalar_value: {
-            int32_t: 2097152
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::CompressionIgnitionMonitors"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "COMPONENTS_AVAILABLE"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "COMPONENTS_INCOMPLETE"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "FUEL_SYSTEM_AVAILABLE"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "FUEL_SYSTEM_INCOMPLETE"
-        scalar_value: {
-            int32_t: 8
-        }
-        enumerator: "MISFIRE_AVAILABLE"
-        scalar_value: {
-            int32_t: 16
-        }
-        enumerator: "MISFIRE_INCOMPLETE"
-        scalar_value: {
-            int32_t: 32
-        }
-        enumerator: "EGR_OR_VVT_AVAILABLE"
-        scalar_value: {
-            int32_t: 64
-        }
-        enumerator: "EGR_OR_VVT_INCOMPLETE"
-        scalar_value: {
-            int32_t: 128
-        }
-        enumerator: "PM_FILTER_AVAILABLE"
-        scalar_value: {
-            int32_t: 256
-        }
-        enumerator: "PM_FILTER_INCOMPLETE"
-        scalar_value: {
-            int32_t: 512
-        }
-        enumerator: "EXHAUST_GAS_SENSOR_AVAILABLE"
-        scalar_value: {
-            int32_t: 1024
-        }
-        enumerator: "EXHAUST_GAS_SENSOR_INCOMPLETE"
-        scalar_value: {
-            int32_t: 2048
-        }
-        enumerator: "BOOST_PRESSURE_AVAILABLE"
-        scalar_value: {
-            int32_t: 4096
-        }
-        enumerator: "BOOST_PRESSURE_INCOMPLETE"
-        scalar_value: {
-            int32_t: 8192
-        }
-        enumerator: "NOx_SCR__AVAILABLE"
-        scalar_value: {
-            int32_t: 16384
-        }
-        enumerator: "NOx_SCR_INCOMPLETE"
-        scalar_value: {
-            int32_t: 32768
-        }
-        enumerator: "NMHC_CATALYST_AVAILABLE"
-        scalar_value: {
-            int32_t: 65536
-        }
-        enumerator: "NMHC_CATALYST_INCOMPLETE"
-        scalar_value: {
-            int32_t: 131072
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::Wheel"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "UNKNOWN"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "LEFT_FRONT"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "RIGHT_FRONT"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "LEFT_REAR"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "RIGHT_REAR"
-        scalar_value: {
-            int32_t: 8
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::SecondaryAirStatus"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "UPSTREAM"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "DOWNSTREAM_OF_CATALYCIC_CONVERTER"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "FROM_OUTSIDE_OR_OFF"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "PUMP_ON_FOR_DIAGNOSTICS"
-        scalar_value: {
-            int32_t: 8
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::FuelType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "NOT_AVAILABLE"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "GASOLINE"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "METHANOL"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "ETHANOL"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "DIESEL"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "LPG"
-        scalar_value: {
-            int32_t: 5
-        }
-        enumerator: "CNG"
-        scalar_value: {
-            int32_t: 6
-        }
-        enumerator: "PROPANE"
-        scalar_value: {
-            int32_t: 7
-        }
-        enumerator: "ELECTRIC"
-        scalar_value: {
-            int32_t: 8
-        }
-        enumerator: "BIFUEL_RUNNING_GASOLINE"
-        scalar_value: {
-            int32_t: 9
-        }
-        enumerator: "BIFUEL_RUNNING_METHANOL"
-        scalar_value: {
-            int32_t: 10
-        }
-        enumerator: "BIFUEL_RUNNING_ETHANOL"
-        scalar_value: {
-            int32_t: 11
-        }
-        enumerator: "BIFUEL_RUNNING_LPG"
-        scalar_value: {
-            int32_t: 12
-        }
-        enumerator: "BIFUEL_RUNNING_CNG"
-        scalar_value: {
-            int32_t: 13
-        }
-        enumerator: "BIFUEL_RUNNING_PROPANE"
-        scalar_value: {
-            int32_t: 14
-        }
-        enumerator: "BIFUEL_RUNNING_ELECTRIC"
-        scalar_value: {
-            int32_t: 15
-        }
-        enumerator: "BIFUEL_RUNNING_ELECTRIC_AND_COMBUSTION"
-        scalar_value: {
-            int32_t: 16
-        }
-        enumerator: "HYBRID_GASOLINE"
-        scalar_value: {
-            int32_t: 17
-        }
-        enumerator: "HYBRID_ETHANOL"
-        scalar_value: {
-            int32_t: 18
-        }
-        enumerator: "HYBRID_DIESEL"
-        scalar_value: {
-            int32_t: 19
-        }
-        enumerator: "HYBRID_ELECTRIC"
-        scalar_value: {
-            int32_t: 20
-        }
-        enumerator: "HYBRID_RUNNING_ELECTRIC_AND_COMBUSTION"
-        scalar_value: {
-            int32_t: 21
-        }
-        enumerator: "HYBRID_REGENERATIVE"
-        scalar_value: {
-            int32_t: 22
-        }
-        enumerator: "BIFUEL_RUNNING_DIESEL"
-        scalar_value: {
-            int32_t: 23
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::Obd2IntegerSensorIndex"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "FUEL_SYSTEM_STATUS"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "MALFUNCTION_INDICATOR_LIGHT_ON"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "IGNITION_MONITORS_SUPPORTED"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "IGNITION_SPECIFIC_MONITORS"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "INTAKE_AIR_TEMPERATURE"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "COMMANDED_SECONDARY_AIR_STATUS"
-        scalar_value: {
-            int32_t: 5
-        }
-        enumerator: "NUM_OXYGEN_SENSORS_PRESENT"
-        scalar_value: {
-            int32_t: 6
-        }
-        enumerator: "RUNTIME_SINCE_ENGINE_START"
-        scalar_value: {
-            int32_t: 7
-        }
-        enumerator: "DISTANCE_TRAVELED_WITH_MALFUNCTION_INDICATOR_LIGHT_ON"
-        scalar_value: {
-            int32_t: 8
-        }
-        enumerator: "WARMUPS_SINCE_CODES_CLEARED"
-        scalar_value: {
-            int32_t: 9
-        }
-        enumerator: "DISTANCE_TRAVELED_SINCE_CODES_CLEARED"
-        scalar_value: {
-            int32_t: 10
-        }
-        enumerator: "ABSOLUTE_BAROMETRIC_PRESSURE"
-        scalar_value: {
-            int32_t: 11
-        }
-        enumerator: "CONTROL_MODULE_VOLTAGE"
-        scalar_value: {
-            int32_t: 12
-        }
-        enumerator: "AMBIENT_AIR_TEMPERATURE"
-        scalar_value: {
-            int32_t: 13
-        }
-        enumerator: "TIME_WITH_MALFUNCTION_LIGHT_ON"
-        scalar_value: {
-            int32_t: 14
-        }
-        enumerator: "TIME_SINCE_TROUBLE_CODES_CLEARED"
-        scalar_value: {
-            int32_t: 15
-        }
-        enumerator: "MAX_FUEL_AIR_EQUIVALENCE_RATIO"
-        scalar_value: {
-            int32_t: 16
-        }
-        enumerator: "MAX_OXYGEN_SENSOR_VOLTAGE"
-        scalar_value: {
-            int32_t: 17
-        }
-        enumerator: "MAX_OXYGEN_SENSOR_CURRENT"
-        scalar_value: {
-            int32_t: 18
-        }
-        enumerator: "MAX_INTAKE_MANIFOLD_ABSOLUTE_PRESSURE"
-        scalar_value: {
-            int32_t: 19
-        }
-        enumerator: "MAX_AIR_FLOW_RATE_FROM_MASS_AIR_FLOW_SENSOR"
-        scalar_value: {
-            int32_t: 20
-        }
-        enumerator: "FUEL_TYPE"
-        scalar_value: {
-            int32_t: 21
-        }
-        enumerator: "FUEL_RAIL_ABSOLUTE_PRESSURE"
-        scalar_value: {
-            int32_t: 22
-        }
-        enumerator: "ENGINE_OIL_TEMPERATURE"
-        scalar_value: {
-            int32_t: 23
-        }
-        enumerator: "DRIVER_DEMAND_PERCENT_TORQUE"
-        scalar_value: {
-            int32_t: 24
-        }
-        enumerator: "ENGINE_ACTUAL_PERCENT_TORQUE"
-        scalar_value: {
-            int32_t: 25
-        }
-        enumerator: "ENGINE_REFERENCE_PERCENT_TORQUE"
-        scalar_value: {
-            int32_t: 26
-        }
-        enumerator: "ENGINE_PERCENT_TORQUE_DATA_IDLE"
-        scalar_value: {
-            int32_t: 27
-        }
-        enumerator: "ENGINE_PERCENT_TORQUE_DATA_POINT1"
-        scalar_value: {
-            int32_t: 28
-        }
-        enumerator: "ENGINE_PERCENT_TORQUE_DATA_POINT2"
-        scalar_value: {
-            int32_t: 29
-        }
-        enumerator: "ENGINE_PERCENT_TORQUE_DATA_POINT3"
-        scalar_value: {
-            int32_t: 30
-        }
-        enumerator: "ENGINE_PERCENT_TORQUE_DATA_POINT4"
-        scalar_value: {
-            int32_t: 31
-        }
-        enumerator: "LAST_SYSTEM_INDEX"
-        scalar_value: {
-            int32_t: 31
-        }
-        enumerator: "VENDOR_START_INDEX"
-        scalar_value: {
-            int32_t: 32
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::Obd2FloatSensorIndex"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "CALCULATED_ENGINE_LOAD"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "ENGINE_COOLANT_TEMPERATURE"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "SHORT_TERM_FUEL_TRIM_BANK1"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "LONG_TERM_FUEL_TRIM_BANK1"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "SHORT_TERM_FUEL_TRIM_BANK2"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "LONG_TERM_FUEL_TRIM_BANK2"
-        scalar_value: {
-            int32_t: 5
-        }
-        enumerator: "FUEL_PRESSURE"
-        scalar_value: {
-            int32_t: 6
-        }
-        enumerator: "INTAKE_MANIFOLD_ABSOLUTE_PRESSURE"
-        scalar_value: {
-            int32_t: 7
-        }
-        enumerator: "ENGINE_RPM"
-        scalar_value: {
-            int32_t: 8
-        }
-        enumerator: "VEHICLE_SPEED"
-        scalar_value: {
-            int32_t: 9
-        }
-        enumerator: "TIMING_ADVANCE"
-        scalar_value: {
-            int32_t: 10
-        }
-        enumerator: "MAF_AIR_FLOW_RATE"
-        scalar_value: {
-            int32_t: 11
-        }
-        enumerator: "THROTTLE_POSITION"
-        scalar_value: {
-            int32_t: 12
-        }
-        enumerator: "OXYGEN_SENSOR1_VOLTAGE"
-        scalar_value: {
-            int32_t: 13
-        }
-        enumerator: "OXYGEN_SENSOR1_SHORT_TERM_FUEL_TRIM"
-        scalar_value: {
-            int32_t: 14
-        }
-        enumerator: "OXYGEN_SENSOR1_FUEL_AIR_EQUIVALENCE_RATIO"
-        scalar_value: {
-            int32_t: 15
-        }
-        enumerator: "OXYGEN_SENSOR2_VOLTAGE"
-        scalar_value: {
-            int32_t: 16
-        }
-        enumerator: "OXYGEN_SENSOR2_SHORT_TERM_FUEL_TRIM"
-        scalar_value: {
-            int32_t: 17
-        }
-        enumerator: "OXYGEN_SENSOR2_FUEL_AIR_EQUIVALENCE_RATIO"
-        scalar_value: {
-            int32_t: 18
-        }
-        enumerator: "OXYGEN_SENSOR3_VOLTAGE"
-        scalar_value: {
-            int32_t: 19
-        }
-        enumerator: "OXYGEN_SENSOR3_SHORT_TERM_FUEL_TRIM"
-        scalar_value: {
-            int32_t: 20
-        }
-        enumerator: "OXYGEN_SENSOR3_FUEL_AIR_EQUIVALENCE_RATIO"
-        scalar_value: {
-            int32_t: 21
-        }
-        enumerator: "OXYGEN_SENSOR4_VOLTAGE"
-        scalar_value: {
-            int32_t: 22
-        }
-        enumerator: "OXYGEN_SENSOR4_SHORT_TERM_FUEL_TRIM"
-        scalar_value: {
-            int32_t: 23
-        }
-        enumerator: "OXYGEN_SENSOR4_FUEL_AIR_EQUIVALENCE_RATIO"
-        scalar_value: {
-            int32_t: 24
-        }
-        enumerator: "OXYGEN_SENSOR5_VOLTAGE"
-        scalar_value: {
-            int32_t: 25
-        }
-        enumerator: "OXYGEN_SENSOR5_SHORT_TERM_FUEL_TRIM"
-        scalar_value: {
-            int32_t: 26
-        }
-        enumerator: "OXYGEN_SENSOR5_FUEL_AIR_EQUIVALENCE_RATIO"
-        scalar_value: {
-            int32_t: 27
-        }
-        enumerator: "OXYGEN_SENSOR6_VOLTAGE"
-        scalar_value: {
-            int32_t: 28
-        }
-        enumerator: "OXYGEN_SENSOR6_SHORT_TERM_FUEL_TRIM"
-        scalar_value: {
-            int32_t: 29
-        }
-        enumerator: "OXYGEN_SENSOR6_FUEL_AIR_EQUIVALENCE_RATIO"
-        scalar_value: {
-            int32_t: 30
-        }
-        enumerator: "OXYGEN_SENSOR7_VOLTAGE"
-        scalar_value: {
-            int32_t: 31
-        }
-        enumerator: "OXYGEN_SENSOR7_SHORT_TERM_FUEL_TRIM"
-        scalar_value: {
-            int32_t: 32
-        }
-        enumerator: "OXYGEN_SENSOR7_FUEL_AIR_EQUIVALENCE_RATIO"
-        scalar_value: {
-            int32_t: 33
-        }
-        enumerator: "OXYGEN_SENSOR8_VOLTAGE"
-        scalar_value: {
-            int32_t: 34
-        }
-        enumerator: "OXYGEN_SENSOR8_SHORT_TERM_FUEL_TRIM"
-        scalar_value: {
-            int32_t: 35
-        }
-        enumerator: "OXYGEN_SENSOR8_FUEL_AIR_EQUIVALENCE_RATIO"
-        scalar_value: {
-            int32_t: 36
-        }
-        enumerator: "FUEL_RAIL_PRESSURE"
-        scalar_value: {
-            int32_t: 37
-        }
-        enumerator: "FUEL_RAIL_GAUGE_PRESSURE"
-        scalar_value: {
-            int32_t: 38
-        }
-        enumerator: "COMMANDED_EXHAUST_GAS_RECIRCULATION"
-        scalar_value: {
-            int32_t: 39
-        }
-        enumerator: "EXHAUST_GAS_RECIRCULATION_ERROR"
-        scalar_value: {
-            int32_t: 40
-        }
-        enumerator: "COMMANDED_EVAPORATIVE_PURGE"
-        scalar_value: {
-            int32_t: 41
-        }
-        enumerator: "FUEL_TANK_LEVEL_INPUT"
-        scalar_value: {
-            int32_t: 42
-        }
-        enumerator: "EVAPORATION_SYSTEM_VAPOR_PRESSURE"
-        scalar_value: {
-            int32_t: 43
-        }
-        enumerator: "CATALYST_TEMPERATURE_BANK1_SENSOR1"
-        scalar_value: {
-            int32_t: 44
-        }
-        enumerator: "CATALYST_TEMPERATURE_BANK2_SENSOR1"
-        scalar_value: {
-            int32_t: 45
-        }
-        enumerator: "CATALYST_TEMPERATURE_BANK1_SENSOR2"
-        scalar_value: {
-            int32_t: 46
-        }
-        enumerator: "CATALYST_TEMPERATURE_BANK2_SENSOR2"
-        scalar_value: {
-            int32_t: 47
-        }
-        enumerator: "ABSOLUTE_LOAD_VALUE"
-        scalar_value: {
-            int32_t: 48
-        }
-        enumerator: "FUEL_AIR_COMMANDED_EQUIVALENCE_RATIO"
-        scalar_value: {
-            int32_t: 49
-        }
-        enumerator: "RELATIVE_THROTTLE_POSITION"
-        scalar_value: {
-            int32_t: 50
-        }
-        enumerator: "ABSOLUTE_THROTTLE_POSITION_B"
-        scalar_value: {
-            int32_t: 51
-        }
-        enumerator: "ABSOLUTE_THROTTLE_POSITION_C"
-        scalar_value: {
-            int32_t: 52
-        }
-        enumerator: "ACCELERATOR_PEDAL_POSITION_D"
-        scalar_value: {
-            int32_t: 53
-        }
-        enumerator: "ACCELERATOR_PEDAL_POSITION_E"
-        scalar_value: {
-            int32_t: 54
-        }
-        enumerator: "ACCELERATOR_PEDAL_POSITION_F"
-        scalar_value: {
-            int32_t: 55
-        }
-        enumerator: "COMMANDED_THROTTLE_ACTUATOR"
-        scalar_value: {
-            int32_t: 56
-        }
-        enumerator: "ETHANOL_FUEL_PERCENTAGE"
-        scalar_value: {
-            int32_t: 57
-        }
-        enumerator: "ABSOLUTE_EVAPORATION_SYSTEM_VAPOR_PRESSURE"
-        scalar_value: {
-            int32_t: 58
-        }
-        enumerator: "SHORT_TERM_SECONDARY_OXYGEN_SENSOR_TRIM_BANK1"
-        scalar_value: {
-            int32_t: 59
-        }
-        enumerator: "SHORT_TERM_SECONDARY_OXYGEN_SENSOR_TRIM_BANK2"
-        scalar_value: {
-            int32_t: 60
-        }
-        enumerator: "SHORT_TERM_SECONDARY_OXYGEN_SENSOR_TRIM_BANK3"
-        scalar_value: {
-            int32_t: 61
-        }
-        enumerator: "SHORT_TERM_SECONDARY_OXYGEN_SENSOR_TRIM_BANK4"
-        scalar_value: {
-            int32_t: 62
-        }
-        enumerator: "LONG_TERM_SECONDARY_OXYGEN_SENSOR_TRIM_BANK1"
-        scalar_value: {
-            int32_t: 63
-        }
-        enumerator: "LONG_TERM_SECONDARY_OXYGEN_SENSOR_TRIM_BANK2"
-        scalar_value: {
-            int32_t: 64
-        }
-        enumerator: "LONG_TERM_SECONDARY_OXYGEN_SENSOR_TRIM_BANK3"
-        scalar_value: {
-            int32_t: 65
-        }
-        enumerator: "LONG_TERM_SECONDARY_OXYGEN_SENSOR_TRIM_BANK4"
-        scalar_value: {
-            int32_t: 66
-        }
-        enumerator: "RELATIVE_ACCELERATOR_PEDAL_POSITION"
-        scalar_value: {
-            int32_t: 67
-        }
-        enumerator: "HYBRID_BATTERY_PACK_REMAINING_LIFE"
-        scalar_value: {
-            int32_t: 68
-        }
-        enumerator: "FUEL_INJECTION_TIMING"
-        scalar_value: {
-            int32_t: 69
-        }
-        enumerator: "ENGINE_FUEL_RATE"
-        scalar_value: {
-            int32_t: 70
-        }
-        enumerator: "LAST_SYSTEM_INDEX"
-        scalar_value: {
-            int32_t: 70
-        }
-        enumerator: "VENDOR_START_INDEX"
-        scalar_value: {
-            int32_t: 71
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VmsMessageType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "SUBSCRIBE"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "UNSUBSCRIBE"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "DATA"
-        scalar_value: {
-            int32_t: 3
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::automotive::vehicle::V2_0::VmsMessageIntegerValuesIndex"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "VMS_MESSAGE_TYPE"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "VMS_LAYER_ID"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "VMS_LAYER_VERSION"
-        scalar_value: {
-            int32_t: 3
-        }
-    }
-}
-
diff --git a/automotive/vehicle/2.1/default/Android.mk b/automotive/vehicle/2.1/default/Android.mk
index 4ace48c..c9d13ea 100644
--- a/automotive/vehicle/2.1/default/Android.mk
+++ b/automotive/vehicle/2.1/default/Android.mk
@@ -89,7 +89,7 @@
 LOCAL_MODULE := $(vhal_v2_1)-service
 LOCAL_INIT_RC := $(vhal_v2_1)-service.rc
 LOCAL_MODULE_RELATIVE_PATH := hw
-
+LOCAL_PROPRIETARY_MODULE := true
 LOCAL_SRC_FILES := \
     service.cpp
 
diff --git a/automotive/vehicle/2.1/default/android.hardware.automotive.vehicle@2.1-service.rc b/automotive/vehicle/2.1/default/android.hardware.automotive.vehicle@2.1-service.rc
index 0b642d5..8929d25 100644
--- a/automotive/vehicle/2.1/default/android.hardware.automotive.vehicle@2.1-service.rc
+++ b/automotive/vehicle/2.1/default/android.hardware.automotive.vehicle@2.1-service.rc
@@ -1,4 +1,4 @@
-service vehicle-hal-2.1 /system/bin/hw/android.hardware.automotive.vehicle@2.1-service
+service vehicle-hal-2.1 /vendor/bin/hw/android.hardware.automotive.vehicle@2.1-service
     class hal
     user vehicle_network
     group system inet
diff --git a/biometrics/Android.bp b/biometrics/Android.bp
index b4681e4..c87e3af 100644
--- a/biometrics/Android.bp
+++ b/biometrics/Android.bp
@@ -1,5 +1,5 @@
 // This is an autogenerated file, do not edit.
 subdirs = [
     "fingerprint/2.1",
-    "fingerprint/2.1/vts/functional"
+    "fingerprint/2.1/vts/functional",
 ]
diff --git a/biometrics/fingerprint/2.1/vts/BiometricsFingerprint.vts b/biometrics/fingerprint/2.1/vts/BiometricsFingerprint.vts
deleted file mode 100644
index 0581da0..0000000
--- a/biometrics/fingerprint/2.1/vts/BiometricsFingerprint.vts
+++ /dev/null
@@ -1,191 +0,0 @@
-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: {
-    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"
-        }
-    }
-
-}
diff --git a/biometrics/fingerprint/2.1/vts/BiometricsFingerprintClientCallback.vts b/biometrics/fingerprint/2.1/vts/BiometricsFingerprintClientCallback.vts
deleted file mode 100644
index dedda65..0000000
--- a/biometrics/fingerprint/2.1/vts/BiometricsFingerprintClientCallback.vts
+++ /dev/null
@@ -1,126 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 2.1
-component_name: "IBiometricsFingerprintClientCallback"
-
-package: "android.hardware.biometrics.fingerprint"
-
-import: "android.hardware.biometrics.fingerprint@2.1::types"
-import: "android.hidl.base@1.0::types"
-
-interface: {
-    api: {
-        name: "onEnrollResult"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-    }
-
-    api: {
-        name: "onAcquired"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::biometrics::fingerprint::V2_1::FingerprintAcquiredInfo"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "onAuthenticated"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-    }
-
-    api: {
-        name: "onError"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::biometrics::fingerprint::V2_1::FingerprintError"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "onRemoved"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-    }
-
-    api: {
-        name: "onEnumerate"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-    }
-
-}
diff --git a/biometrics/fingerprint/2.1/vts/functional/Android.bp b/biometrics/fingerprint/2.1/vts/functional/Android.bp
index 25f7cc0..7e5e699 100644
--- a/biometrics/fingerprint/2.1/vts/functional/Android.bp
+++ b/biometrics/fingerprint/2.1/vts/functional/Android.bp
@@ -15,9 +15,9 @@
 //
 
 cc_test {
-    name: "fingerprint_hidl_hal_test",
+    name: "VtsHalBiometricsFingerprintV2_1TargetTest",
     gtest: true,
-    srcs: ["fingerprint_hidl_hal_test.cpp"],
+    srcs: ["VtsHalBiometricsFingerprintV2_1TargetTest.cpp"],
     shared_libs: [
         "libbase",
         "libhidltransport",
diff --git a/biometrics/fingerprint/2.1/vts/functional/fingerprint_hidl_hal_test.cpp b/biometrics/fingerprint/2.1/vts/functional/VtsHalBiometricsFingerprintV2_1TargetTest.cpp
similarity index 100%
rename from biometrics/fingerprint/2.1/vts/functional/fingerprint_hidl_hal_test.cpp
rename to biometrics/fingerprint/2.1/vts/functional/VtsHalBiometricsFingerprintV2_1TargetTest.cpp
diff --git a/biometrics/fingerprint/2.1/vts/types.vts b/biometrics/fingerprint/2.1/vts/types.vts
deleted file mode 100644
index 9f9fd37..0000000
--- a/biometrics/fingerprint/2.1/vts/types.vts
+++ /dev/null
@@ -1,262 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 2.1
-component_name: "types"
-
-package: "android.hardware.biometrics.fingerprint"
-
-
-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
-        }
-    }
-}
-
diff --git a/bluetooth/1.0/default/Android.bp b/bluetooth/1.0/default/Android.bp
index 4af079e..f82bc1f 100644
--- a/bluetooth/1.0/default/Android.bp
+++ b/bluetooth/1.0/default/Android.bp
@@ -17,7 +17,6 @@
     name: "android.hardware.bluetooth@1.0-impl",
     relative_install_path: "hw",
     srcs: [
-        "async_fd_watcher.cc",
         "bluetooth_hci.cc",
         "bluetooth_address.cc",
         "vendor_interface.cc",
@@ -33,12 +32,28 @@
         "liblog",
         "libutils",
     ],
+    static_libs: [
+        "android.hardware.bluetooth-async",
+    ],
+}
+
+cc_library_static {
+    name: "android.hardware.bluetooth-async",
+    srcs: [
+        "async_fd_watcher.cc",
+    ],
+    export_include_dirs: ["."],
+    shared_libs: [
+        "libbase",
+        "libcutils",
+        "liblog",
+        "libutils",
+    ],
 }
 
 cc_test {
     name: "bluetooth-vendor-interface-unit-tests",
     srcs: [
-        "async_fd_watcher.cc",
         "test/async_fd_watcher_unittest.cc",
     ],
     local_include_dirs: [
@@ -48,6 +63,9 @@
         "libbase",
         "liblog",
     ],
+    static_libs: [
+        "android.hardware.bluetooth-async",
+    ],
 }
 
 cc_test_host {
diff --git a/bluetooth/1.0/default/async_fd_watcher.cc b/bluetooth/1.0/default/async_fd_watcher.cc
index 161a74a..287d007 100644
--- a/bluetooth/1.0/default/async_fd_watcher.cc
+++ b/bluetooth/1.0/default/async_fd_watcher.cc
@@ -29,8 +29,7 @@
 namespace android {
 namespace hardware {
 namespace bluetooth {
-namespace V1_0 {
-namespace implementation {
+namespace async {
 
 int AsyncFdWatcher::WatchFdForNonBlockingReads(
     int file_descriptor, const ReadCallback& on_read_fd_ready_callback) {
@@ -42,12 +41,7 @@
   }
 
   // Start the thread if not started yet
-  int started = tryStartThread();
-  if (started != 0) {
-    return started;
-  }
-
-  return 0;
+  return tryStartThread();
 }
 
 int AsyncFdWatcher::ConfigureTimeout(
@@ -167,8 +161,7 @@
   }
 }
 
-} // namespace implementation
-} // namespace V1_0
+} // namespace async
 } // namespace bluetooth
 } // namespace hardware
 } // namespace android
diff --git a/bluetooth/1.0/default/async_fd_watcher.h b/bluetooth/1.0/default/async_fd_watcher.h
index d6e112f..3f7ff54 100644
--- a/bluetooth/1.0/default/async_fd_watcher.h
+++ b/bluetooth/1.0/default/async_fd_watcher.h
@@ -22,8 +22,7 @@
 namespace android {
 namespace hardware {
 namespace bluetooth {
-namespace V1_0 {
-namespace implementation {
+namespace async {
 
 using ReadCallback = std::function<void(int)>;
 using TimeoutCallback = std::function<void(void)>;
@@ -62,8 +61,7 @@
 };
 
 
-} // namespace implementation
-} // namespace V1_0
+} // namespace async
 } // namespace bluetooth
 } // namespace hardware
 } // namespace android
diff --git a/bluetooth/1.0/default/bluetooth_hci.cc b/bluetooth/1.0/default/bluetooth_hci.cc
index 6cea623..1d6e600 100644
--- a/bluetooth/1.0/default/bluetooth_hci.cc
+++ b/bluetooth/1.0/default/bluetooth_hci.cc
@@ -30,9 +30,13 @@
 static const uint8_t HCI_DATA_TYPE_ACL = 2;
 static const uint8_t HCI_DATA_TYPE_SCO = 3;
 
+BluetoothHci::BluetoothHci()
+    : deathRecipient(new BluetoothDeathRecipient(this)) {}
+
 Return<void> BluetoothHci::initialize(
     const ::android::sp<IBluetoothHciCallbacks>& cb) {
   ALOGW("BluetoothHci::initialize()");
+  cb->linkToDeath(deathRecipient, 0);
   event_cb_ = cb;
 
   bool rc = VendorInterface::Initialize(
@@ -62,6 +66,7 @@
 
 Return<void> BluetoothHci::close() {
   ALOGW("BluetoothHci::close()");
+  event_cb_->unlinkToDeath(deathRecipient);
   VendorInterface::Shutdown();
   return Void();
 }
diff --git a/bluetooth/1.0/default/bluetooth_hci.h b/bluetooth/1.0/default/bluetooth_hci.h
index da1b411..67d6c37 100644
--- a/bluetooth/1.0/default/bluetooth_hci.h
+++ b/bluetooth/1.0/default/bluetooth_hci.h
@@ -30,8 +30,20 @@
 using ::android::hardware::Return;
 using ::android::hardware::hidl_vec;
 
+struct BluetoothDeathRecipient : hidl_death_recipient {
+  BluetoothDeathRecipient(const sp<IBluetoothHci> hci) : mHci(hci) {}
+
+  virtual void serviceDied(
+      uint64_t /*cookie*/,
+      const wp<::android::hidl::base::V1_0::IBase>& /*who*/) {
+    mHci->close();
+  }
+  sp<IBluetoothHci> mHci;
+};
+
 class BluetoothHci : public IBluetoothHci {
  public:
+  BluetoothHci();
   Return<void> initialize(
       const ::android::sp<IBluetoothHciCallbacks>& cb) override;
   Return<void> sendHciCommand(const hidl_vec<uint8_t>& packet) override;
@@ -42,6 +54,7 @@
  private:
   void sendDataToController(const uint8_t type, const hidl_vec<uint8_t>& data);
   ::android::sp<IBluetoothHciCallbacks> event_cb_;
+  ::android::sp<BluetoothDeathRecipient> deathRecipient;
 };
 
 extern "C" IBluetoothHci* HIDL_FETCH_IBluetoothHci(const char* name);
diff --git a/bluetooth/1.0/default/test/async_fd_watcher_unittest.cc b/bluetooth/1.0/default/test/async_fd_watcher_unittest.cc
index 49ea44a..a7f5bda 100644
--- a/bluetooth/1.0/default/test/async_fd_watcher_unittest.cc
+++ b/bluetooth/1.0/default/test/async_fd_watcher_unittest.cc
@@ -33,6 +33,8 @@
 namespace V1_0 {
 namespace implementation {
 
+using android::hardware::bluetooth::async::AsyncFdWatcher;
+
 class AsyncFdWatcherSocketTest : public ::testing::Test {
  public:
   static const uint16_t kPort = 6111;
diff --git a/bluetooth/1.0/default/vendor_interface.h b/bluetooth/1.0/default/vendor_interface.h
index ce5769c..98357f5 100644
--- a/bluetooth/1.0/default/vendor_interface.h
+++ b/bluetooth/1.0/default/vendor_interface.h
@@ -59,7 +59,7 @@
 
   void *lib_handle_;
   bt_vendor_interface_t *lib_interface_;
-  AsyncFdWatcher fd_watcher_;
+  async::AsyncFdWatcher fd_watcher_;
   int uart_fd_;
   PacketReadCallback packet_read_cb_;
   InitializeCompleteCallback initialize_complete_cb_;
diff --git a/bluetooth/1.0/vts/BluetoothHci.vts b/bluetooth/1.0/vts/BluetoothHci.vts
deleted file mode 100644
index 348c0ab..0000000
--- a/bluetooth/1.0/vts/BluetoothHci.vts
+++ /dev/null
@@ -1,87 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "IBluetoothHci"
-
-package: "android.hardware.bluetooth"
-
-import: "android.hardware.bluetooth@1.0::IBluetoothHciCallbacks"
-import: "android.hardware.bluetooth@1.0::types"
-import: "android.hidl.base@1.0::types"
-
-interface: {
-    api: {
-        name: "initialize"
-        arg: {
-            type: TYPE_HIDL_INTERFACE
-            predefined_type: "::android::hardware::bluetooth::V1_0::IBluetoothHciCallbacks"
-        }
-        callflow: {
-            entry: true
-        }
-        callflow: {
-            next: "sendHciCommand"
-            next: "sendAclData"
-            next: "sendScoData"
-            next: "close"
-        }
-    }
-
-    api: {
-        name: "sendHciCommand"
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-        callflow: {
-            next: "sendHciCommand"
-            next: "sendAclData"
-            next: "sendScoData"
-            next: "close"
-        }
-    }
-
-    api: {
-        name: "sendAclData"
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-        callflow: {
-            next: "sendHciCommand"
-            next: "sendAclData"
-            next: "sendScoData"
-            next: "close"
-        }
-    }
-
-    api: {
-        name: "sendScoData"
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-        callflow: {
-            next: "sendHciCommand"
-            next: "sendAclData"
-            next: "sendScoData"
-            next: "close"
-        }
-    }
-
-    api: {
-        name: "close"
-        callflow: {
-            exit: true
-        }
-    }
-
-}
diff --git a/bluetooth/1.0/vts/BluetoothHciCallbacks.vts b/bluetooth/1.0/vts/BluetoothHciCallbacks.vts
deleted file mode 100644
index 6b3dfd4..0000000
--- a/bluetooth/1.0/vts/BluetoothHciCallbacks.vts
+++ /dev/null
@@ -1,52 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "IBluetoothHciCallbacks"
-
-package: "android.hardware.bluetooth"
-
-import: "android.hardware.bluetooth@1.0::types"
-import: "android.hidl.base@1.0::types"
-
-interface: {
-    api: {
-        name: "initializationComplete"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::bluetooth::V1_0::Status"
-        }
-    }
-
-    api: {
-        name: "hciEventReceived"
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-    }
-
-    api: {
-        name: "aclDataReceived"
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-    }
-
-    api: {
-        name: "scoDataReceived"
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-    }
-
-}
diff --git a/bluetooth/1.0/vts/functional/VtsHalBluetoothV1_0TargetTest.cpp b/bluetooth/1.0/vts/functional/VtsHalBluetoothV1_0TargetTest.cpp
index eb1cdc1..5a6c29a 100644
--- a/bluetooth/1.0/vts/functional/VtsHalBluetoothV1_0TargetTest.cpp
+++ b/bluetooth/1.0/vts/functional/VtsHalBluetoothV1_0TargetTest.cpp
@@ -123,7 +123,7 @@
     // currently test passthrough mode only
     bluetooth = IBluetoothHci::getService();
     ASSERT_NE(bluetooth, nullptr);
-    ALOGW("%s: getService() for bluetooth is %s", __func__,
+    ALOGI("%s: getService() for bluetooth is %s", __func__,
           bluetooth->isRemote() ? "remote" : "local");
 
     bluetooth_cb = new BluetoothHciCallbacks(*this);
@@ -255,7 +255,7 @@
     virtual ~BluetoothHciCallbacks() = default;
 
     Return<void> initializationComplete(Status status) override {
-      parent_.initialized = true;
+      parent_.initialized = (status == Status::SUCCESS);
       parent_.notify_initialized();
       ALOGV("%s (status = %d)", __func__, static_cast<int>(status));
       return Void();
diff --git a/bluetooth/1.0/vts/types.vts b/bluetooth/1.0/vts/types.vts
deleted file mode 100644
index 59eb3d4..0000000
--- a/bluetooth/1.0/vts/types.vts
+++ /dev/null
@@ -1,32 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "types"
-
-package: "android.hardware.bluetooth"
-
-
-attribute: {
-    name: "::android::hardware::bluetooth::V1_0::Status"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "SUCCESS"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "TRANSPORT_ERROR"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "INITIALIZATION_ERROR"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "UNKNOWN"
-        scalar_value: {
-            int32_t: 3
-        }
-    }
-}
-
diff --git a/boot/1.0/vts/BootControl.vts b/boot/1.0/vts/BootControl.vts
deleted file mode 100644
index b400f0e..0000000
--- a/boot/1.0/vts/BootControl.vts
+++ /dev/null
@@ -1,94 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "IBootControl"
-
-package: "android.hardware.boot"
-
-import: "android.hardware.boot@1.0::types"
-import: "android.hidl.base@1.0::types"
-
-interface: {
-    api: {
-        name: "getNumberSlots"
-        return_type_hidl: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-    }
-
-    api: {
-        name: "getCurrentSlot"
-        return_type_hidl: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-    }
-
-    api: {
-        name: "markBootSuccessful"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::boot::V1_0::CommandResult"
-        }
-    }
-
-    api: {
-        name: "setActiveBootSlot"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::boot::V1_0::CommandResult"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-    }
-
-    api: {
-        name: "setSlotAsUnbootable"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::boot::V1_0::CommandResult"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-    }
-
-    api: {
-        name: "isSlotBootable"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::boot::V1_0::BoolResult"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-    }
-
-    api: {
-        name: "isSlotMarkedSuccessful"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::boot::V1_0::BoolResult"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-    }
-
-    api: {
-        name: "getSuffix"
-        return_type_hidl: {
-            type: TYPE_STRING
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-    }
-
-}
diff --git a/boot/1.0/vts/functional/Android.bp b/boot/1.0/vts/functional/Android.bp
index 6c28bf1..2fd3ee4 100644
--- a/boot/1.0/vts/functional/Android.bp
+++ b/boot/1.0/vts/functional/Android.bp
@@ -15,9 +15,9 @@
 //
 
 cc_test {
-    name: "boot_hidl_hal_test",
+    name: "VtsHalBootV1_0TargetTest",
     gtest: true,
-    srcs: ["boot_hidl_hal_test.cpp"],
+    srcs: ["VtsHalBootV1_0TargetTest.cpp"],
     shared_libs: [
         "libbase",
         "liblog",
diff --git a/boot/1.0/vts/functional/boot_hidl_hal_test.cpp b/boot/1.0/vts/functional/VtsHalBootV1_0TargetTest.cpp
similarity index 100%
rename from boot/1.0/vts/functional/boot_hidl_hal_test.cpp
rename to boot/1.0/vts/functional/VtsHalBootV1_0TargetTest.cpp
diff --git a/boot/1.0/vts/types.vts b/boot/1.0/vts/types.vts
deleted file mode 100644
index ebeaa60..0000000
--- a/boot/1.0/vts/types.vts
+++ /dev/null
@@ -1,42 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "types"
-
-package: "android.hardware.boot"
-
-
-attribute: {
-    name: "::android::hardware::boot::V1_0::CommandResult"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "success"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "errMsg"
-        type: TYPE_STRING
-    }
-}
-
-attribute: {
-    name: "::android::hardware::boot::V1_0::BoolResult"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "FALSE"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "TRUE"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "INVALID_SLOT"
-        scalar_value: {
-            int32_t: -1
-        }
-    }
-}
-
diff --git a/broadcastradio/1.0/vts/functional/Android.bp b/broadcastradio/1.0/vts/functional/Android.bp
index 0edfcab..2316edb 100644
--- a/broadcastradio/1.0/vts/functional/Android.bp
+++ b/broadcastradio/1.0/vts/functional/Android.bp
@@ -15,9 +15,9 @@
 //
 
 cc_test {
-    name: "broadcastradio_hidl_hal_test",
+    name: "VtsHalBroadcastradioV1_0TargetTest",
     gtest: true,
-    srcs: ["broadcastradio_hidl_hal_test.cpp"],
+    srcs: ["VtsHalBroadcastradioV1_0TargetTest.cpp"],
     shared_libs: [
         "libbase",
         "liblog",
diff --git a/broadcastradio/1.0/vts/functional/broadcastradio_hidl_hal_test.cpp b/broadcastradio/1.0/vts/functional/VtsHalBroadcastradioV1_0TargetTest.cpp
similarity index 99%
rename from broadcastradio/1.0/vts/functional/broadcastradio_hidl_hal_test.cpp
rename to broadcastradio/1.0/vts/functional/VtsHalBroadcastradioV1_0TargetTest.cpp
index bcbfbb7..da17514 100644
--- a/broadcastradio/1.0/vts/functional/broadcastradio_hidl_hal_test.cpp
+++ b/broadcastradio/1.0/vts/functional/VtsHalBroadcastradioV1_0TargetTest.cpp
@@ -63,7 +63,7 @@
             }
         }
         sp<IBroadcastRadioFactory> factory =
-              IBroadcastRadioFactory::getService("broadcastradio", getStub);
+              IBroadcastRadioFactory::getService(getStub);
         if (factory != 0) {
             factory->connectModule(Class::AM_FM,
                              [&](Result retval, const ::android::sp<IBroadcastRadio>& result) {
diff --git a/camera/provider/2.4/vts/functional/Android.bp b/camera/provider/2.4/vts/functional/Android.bp
index 4947c17..defe3dc 100644
--- a/camera/provider/2.4/vts/functional/Android.bp
+++ b/camera/provider/2.4/vts/functional/Android.bp
@@ -15,9 +15,9 @@
 //
 
 cc_test {
-    name: "camera_hidl_hal_test",
+    name: "VtsHalCameraProviderV2_4TargetTest",
     gtest: true,
-    srcs: ["camera_hidl_hal_test.cpp"],
+    srcs: ["VtsHalCameraProviderV2_4TargetTest.cpp"],
     shared_libs: [
         "liblog",
         "libhidlbase",
@@ -26,7 +26,8 @@
         "libutils",
         "android.hardware.camera.provider@2.4",
         "android.hardware.camera.device@3.2",
-        "libcamera_metadata"
+        "libcamera_metadata",
+        "libui"
     ],
     static_libs: ["libgtest"],
     cflags: [
diff --git a/camera/provider/2.4/vts/functional/VtsHalCameraProviderV2_4TargetTest.cpp b/camera/provider/2.4/vts/functional/VtsHalCameraProviderV2_4TargetTest.cpp
new file mode 100644
index 0000000..e1e10f8
--- /dev/null
+++ b/camera/provider/2.4/vts/functional/VtsHalCameraProviderV2_4TargetTest.cpp
@@ -0,0 +1,1613 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#define LOG_TAG "camera_hidl_hal_test"
+#include <android/hardware/camera/provider/2.4/ICameraProvider.h>
+#include <android/hardware/camera/device/3.2/ICameraDevice.h>
+#include <android/log.h>
+#include <ui/GraphicBuffer.h>
+#include <gtest/gtest.h>
+#include <regex>
+#include "system/camera_metadata.h"
+#include <hardware/gralloc.h>
+#include <hardware/gralloc1.h>
+#include <unordered_map>
+#include <mutex>
+#include <condition_variable>
+#include <chrono>
+#include <inttypes.h>
+
+using ::android::hardware::Return;
+using ::android::hardware::Void;
+using ::android::hardware::hidl_handle;
+using ::android::hardware::hidl_string;
+using ::android::hardware::hidl_vec;
+using ::android::sp;
+using ::android::GraphicBuffer;
+using ::android::hardware::graphics::common::V1_0::PixelFormat;
+using ::android::hardware::camera::common::V1_0::Status;
+using ::android::hardware::camera::common::V1_0::CameraDeviceStatus;
+using ::android::hardware::camera::common::V1_0::TorchMode;
+using ::android::hardware::camera::common::V1_0::TorchModeStatus;
+using ::android::hardware::camera::provider::V2_4::ICameraProvider;
+using ::android::hardware::camera::provider::V2_4::ICameraProviderCallback;
+using ::android::hardware::camera::device::V3_2::CaptureRequest;
+using ::android::hardware::camera::device::V3_2::CaptureResult;
+using ::android::hardware::camera::device::V3_2::ICameraDeviceCallback;
+using ::android::hardware::camera::device::V3_2::ICameraDeviceSession;
+using ::android::hardware::camera::device::V3_2::NotifyMsg;
+using ::android::hardware::camera::device::V3_2::RequestTemplate;
+using ::android::hardware::camera::device::V3_2::Stream;
+using ::android::hardware::camera::device::V3_2::StreamType;
+using ::android::hardware::camera::device::V3_2::StreamRotation;
+using ::android::hardware::camera::device::V3_2::StreamConfiguration;
+using ::android::hardware::camera::device::V3_2::StreamConfigurationMode;
+using ::android::hardware::camera::device::V3_2::CameraMetadata;
+using ::android::hardware::camera::device::V3_2::HalStreamConfiguration;
+using ::android::hardware::camera::device::V3_2::BufferStatus;
+using ::android::hardware::camera::device::V3_2::StreamBuffer;
+
+#define CAMERA_PASSTHROUGH_SERVICE_NAME "legacy/0"
+#define MAX_PREVIEW_WIDTH  1920
+#define MAX_PREVIEW_HEIGHT 1080
+#define MAX_VIDEO_WIDTH    4096
+#define MAX_VIDEO_HEIGHT   2160
+#define STREAM_BUFFER_TIMEOUT 3  // sec.
+
+struct AvailableStream {
+    int32_t width;
+    int32_t height;
+    int32_t format;
+};
+
+struct AvailableZSLInputOutput {
+    int32_t inputFormat;
+    int32_t outputFormat;
+};
+
+namespace {
+    // "device@<version>/legacy/<id>"
+    const char *kDeviceNameRE = "device@([0-9]+\\.[0-9]+)/legacy/(.+)";
+    const int CAMERA_DEVICE_API_VERSION_3_2 = 0x302;
+    const int CAMERA_DEVICE_API_VERSION_1_0 = 0x100;
+    const char *kHAL3_2 = "3.2";
+    const char *kHAL1_0 = "1.0";
+
+    bool matchDeviceName(const hidl_string& deviceName, std::smatch& sm) {
+        std::regex e(kDeviceNameRE);
+        std::string deviceNameStd(deviceName.c_str());
+        return std::regex_match(deviceNameStd, sm, e);
+    }
+
+    int getCameraDeviceVersion(const hidl_string& deviceName) {
+        std::smatch sm;
+        bool match = matchDeviceName(deviceName, sm);
+        if (!match) {
+            return -1;
+        }
+        if (sm[1].compare(kHAL3_2) == 0) {
+            // maybe switched to 3.4 or define the hidl version enumlater
+            return CAMERA_DEVICE_API_VERSION_3_2;
+        } else if (sm[1].compare(kHAL1_0) == 0) {
+            return CAMERA_DEVICE_API_VERSION_1_0;
+        }
+        return 0;
+    }
+}
+
+// Test environment for camera
+class CameraHidlEnvironment : public ::testing::Environment {
+public:
+    // get the test environment singleton
+    static CameraHidlEnvironment* Instance() {
+        static CameraHidlEnvironment* instance = new CameraHidlEnvironment;
+        return instance;
+    }
+
+    virtual void SetUp() override;
+    virtual void TearDown() override;
+
+    sp<ICameraProvider> mProvider;
+
+private:
+    CameraHidlEnvironment() {}
+
+    GTEST_DISALLOW_COPY_AND_ASSIGN_(CameraHidlEnvironment);
+};
+
+void CameraHidlEnvironment::SetUp() {
+    // TODO: test the binderized mode
+    mProvider = ICameraProvider::getService(CAMERA_PASSTHROUGH_SERVICE_NAME);
+    // TODO: handle the device doesn't have any camera case
+    ALOGI_IF(mProvider, "provider is not nullptr, %p", mProvider.get());
+    ASSERT_NE(mProvider, nullptr);
+}
+
+void CameraHidlEnvironment::TearDown() {
+    ALOGI("TearDown CameraHidlEnvironment");
+}
+
+// The main test class for camera HIDL HAL.
+class CameraHidlTest : public ::testing::Test {
+public:
+    virtual void SetUp() override {}
+    virtual void TearDown() override {}
+
+    hidl_vec<hidl_string> getCameraDeviceNames();
+
+    struct EmptyDeviceCb : public ICameraDeviceCallback {
+        virtual Return<void> processCaptureResult(const CaptureResult& /*result*/) override {
+            ALOGI("processCaptureResult callback");
+            ADD_FAILURE(); // Empty callback should not reach here
+            return Void();
+        }
+
+        virtual Return<void> notify(const NotifyMsg& /*msg*/) override {
+            ALOGI("notify callback");
+            ADD_FAILURE(); // Empty callback should not reach here
+            return Void();
+        }
+    };
+
+    struct DeviceCb : public ICameraDeviceCallback {
+        DeviceCb(CameraHidlTest *parent) : mParent(parent) {}
+        Return<void> processCaptureResult(const CaptureResult& result) override;
+        Return<void> notify(const NotifyMsg& msg) override;
+
+     private:
+        CameraHidlTest *mParent;               // Parent object
+    };
+
+    static Status getAvailableOutputStreams(camera_metadata_t *staticMeta,
+            std::vector<AvailableStream> &outputStreams,
+            AvailableStream *threshold = nullptr);
+    static Status isConstrainedModeAvailable(camera_metadata_t *staticMeta);
+    static Status pickConstrainedModeSize(camera_metadata_t *staticMeta,
+            AvailableStream &hfrStream);
+    static Status isZSLModeAvailable(camera_metadata_t *staticMeta);
+    static Status getZSLInputOutputMap(camera_metadata_t *staticMeta,
+            std::vector<AvailableZSLInputOutput> &inputOutputMap);
+    static Status findLargestSize(
+            const std::vector<AvailableStream> &streamSizes,
+            int32_t format, AvailableStream &result);
+
+protected:
+    std::mutex mLock;                          // Synchronize access to member variables
+    std::condition_variable mResultCondition;  // Condition variable for incoming results
+    uint32_t mResultFrameNumber;               // Expected result frame number
+    std::vector<StreamBuffer> mResultBuffers;  // Holds stream buffers from capture result
+};
+
+Return<void> CameraHidlTest::DeviceCb::processCaptureResult(
+        const CaptureResult& result) {
+    if (nullptr == mParent) {
+        return Void();
+    }
+
+    std::unique_lock<std::mutex> l(mParent->mLock);
+
+    if(mParent->mResultFrameNumber != result.frameNumber) {
+        ALOGE("%s: Unexpected frame number! Expected: %u received: %u",
+              __func__, mParent->mResultFrameNumber, result.frameNumber);
+        ADD_FAILURE();
+    }
+
+    size_t resultLength = result.outputBuffers.size();
+    for (size_t i = 0; i < resultLength; i++) {
+        mParent->mResultBuffers.push_back(result.outputBuffers[i]);
+    }
+
+    // TODO(epeev): Handle partial results in case client supports them and
+    //              verify the result against request settings.
+
+    l.unlock();
+    mParent->mResultCondition.notify_one();
+
+    return Void();
+}
+
+Return<void> CameraHidlTest::DeviceCb::notify(
+        const NotifyMsg& /*msg*/) {
+    // TODO(epeev): Pending implementation.
+    ALOGI("notify callback");
+    return Void();
+}
+
+hidl_vec<hidl_string> CameraHidlTest::getCameraDeviceNames() {
+    CameraHidlEnvironment* env = CameraHidlEnvironment::Instance();
+    hidl_vec<hidl_string> cameraDeviceNames;
+    env->mProvider->getCameraIdList(
+        [&](auto status, const auto& idList) {
+            ALOGI("getCameraIdList returns status:%d", (int)status);
+            for (size_t i = 0; i < idList.size(); i++) {
+                ALOGI("Camera Id[%zu] is %s", i, idList[i].c_str());
+            }
+            ASSERT_EQ(Status::OK, status);
+            cameraDeviceNames = idList;
+        });
+    return cameraDeviceNames;
+}
+
+// Test if ICameraProvider::isTorchModeSupported returns Status::OK
+TEST_F(CameraHidlTest, isTorchModeSupported) {
+    CameraHidlEnvironment::Instance()->mProvider->isSetTorchModeSupported(
+        [&](auto status, bool support) {
+            ALOGI("isSetTorchModeSupported returns status:%d supported:%d",
+                    (int)status, support);
+            ASSERT_EQ(Status::OK, status);
+        });
+}
+
+// TODO: consider removing this test if getCameraDeviceNames() has the same coverage
+TEST_F(CameraHidlTest, getCameraIdList) {
+    CameraHidlEnvironment::Instance()->mProvider->getCameraIdList(
+        [&](auto status, const auto& idList) {
+            ALOGI("getCameraIdList returns status:%d", (int)status);
+            for (size_t i = 0; i < idList.size(); i++) {
+                ALOGI("Camera Id[%zu] is %s", i, idList[i].c_str());
+            }
+            ASSERT_EQ(Status::OK, status);
+            // This is true for internal camera provider.
+            // Not necessary hold for external cameras providers
+            ASSERT_GT(idList.size(), 0u);
+        });
+}
+
+// Test if ICameraProvider::getVendorTags returns Status::OK
+TEST_F(CameraHidlTest, getVendorTags) {
+    CameraHidlEnvironment::Instance()->mProvider->getVendorTags(
+        [&](auto status, const auto& vendorTagSecs) {
+            ALOGI("getVendorTags returns status:%d numSections %zu",
+                    (int)status, vendorTagSecs.size());
+            for (size_t i = 0; i < vendorTagSecs.size(); i++) {
+                ALOGI("Vendor tag section %zu name %s",
+                        i, vendorTagSecs[i].sectionName.c_str());
+                for (size_t j = 0; j < vendorTagSecs[i].tags.size(); j++) {
+                    const auto& tag = vendorTagSecs[i].tags[j];
+                    ALOGI("Vendor tag id %u name %s type %d",
+                            tag.tagId,
+                            tag.tagName.c_str(),
+                            (int) tag.tagType);
+                }
+            }
+            ASSERT_EQ(Status::OK, status);
+        });
+}
+
+// Test if ICameraProvider::setCallback returns Status::OK
+TEST_F(CameraHidlTest, setCallback) {
+    CameraHidlEnvironment* env = CameraHidlEnvironment::Instance();
+    struct ProviderCb : public ICameraProviderCallback {
+        virtual Return<void> cameraDeviceStatusChange(
+                const hidl_string& cameraDeviceName,
+                CameraDeviceStatus newStatus) override {
+            ALOGI("camera device status callback name %s, status %d",
+                    cameraDeviceName.c_str(), (int) newStatus);
+            return Void();
+        }
+
+        virtual Return<void> torchModeStatusChange(
+                const hidl_string& cameraDeviceName,
+                TorchModeStatus newStatus) override {
+            ALOGI("Torch mode status callback name %s, status %d",
+                    cameraDeviceName.c_str(), (int) newStatus);
+            return Void();
+        }
+    };
+    sp<ProviderCb> cb = new ProviderCb;
+    auto status = env->mProvider->setCallback(cb);
+    ASSERT_EQ(Status::OK, status);
+    // TODO: right now no callbacks are fired because there is no external camera
+    //       or torch mode change. Need to test torch API in CameraDevice test later.
+}
+
+// Test if ICameraProvider::getCameraDeviceInterface_V3_x returns Status::OK and non-null device
+TEST_F(CameraHidlTest, getCameraDeviceInterface_V3_x) {
+    CameraHidlEnvironment* env = CameraHidlEnvironment::Instance();
+    hidl_vec<hidl_string> cameraDeviceNames = getCameraDeviceNames();
+
+    for (const auto& name : cameraDeviceNames) {
+        if (getCameraDeviceVersion(name) == CAMERA_DEVICE_API_VERSION_3_2) {
+            env->mProvider->getCameraDeviceInterface_V3_x(
+                name,
+                [&](auto status, const auto& device3_2) {
+                    ALOGI("getCameraDeviceInterface_V3_x returns status:%d", (int)status);
+                    ASSERT_EQ(Status::OK, status);
+                    ASSERT_NE(device3_2, nullptr);
+                });
+        }
+    }
+}
+
+// Verify that the device resource cost can be retrieved and the values are
+// sane.
+TEST_F(CameraHidlTest, getResourceCost) {
+    CameraHidlEnvironment* env = CameraHidlEnvironment::Instance();
+    hidl_vec<hidl_string> cameraDeviceNames = getCameraDeviceNames();
+
+    for (const auto& name : cameraDeviceNames) {
+        if (getCameraDeviceVersion(name) == CAMERA_DEVICE_API_VERSION_3_2) {
+            ::android::sp<::android::hardware::camera::device::V3_2::ICameraDevice> device3_2;
+            ALOGI("getResourceCost: Testing camera device %s", name.c_str());
+            env->mProvider->getCameraDeviceInterface_V3_x(
+                name,
+                [&](auto status, const auto& device) {
+                    ALOGI("getCameraDeviceInterface_V3_x returns status:%d", (int)status);
+                    ASSERT_EQ(Status::OK, status);
+                    ASSERT_NE(device, nullptr);
+                    device3_2 = device;
+                });
+
+            device3_2->getResourceCost(
+                [&](auto status, const auto& resourceCost) {
+                    ALOGI("getResourceCost returns status:%d", (int)status);
+                    ASSERT_EQ(Status::OK, status);
+                    ALOGI("    Resource cost is %d", resourceCost.resourceCost);
+                    ASSERT_LE(resourceCost.resourceCost, 100u);
+                    for (const auto& name : resourceCost.conflictingDevices) {
+                        ALOGI("    Conflicting device: %s", name.c_str());
+                    }
+                });
+        }
+    }
+}
+
+// Verify that the static camera characteristics can be retrieved
+// successfully.
+TEST_F(CameraHidlTest, getCameraCharacteristics) {
+    CameraHidlEnvironment* env = CameraHidlEnvironment::Instance();
+    hidl_vec<hidl_string> cameraDeviceNames = getCameraDeviceNames();
+
+    for (const auto& name : cameraDeviceNames) {
+        if (getCameraDeviceVersion(name) == CAMERA_DEVICE_API_VERSION_3_2) {
+            ::android::sp<::android::hardware::camera::device::V3_2::ICameraDevice> device3_2;
+            ALOGI("getCameraCharacteristics: Testing camera device %s", name.c_str());
+            env->mProvider->getCameraDeviceInterface_V3_x(
+                name,
+                [&](auto status, const auto& device) {
+                    ALOGI("getCameraDeviceInterface_V3_x returns status:%d", (int)status);
+                    ASSERT_EQ(Status::OK, status);
+                    ASSERT_NE(device, nullptr);
+                    device3_2 = device;
+                });
+
+            device3_2->getCameraCharacteristics(
+                [&](auto status, const auto& chars) {
+                    ALOGI("getCameraCharacteristics returns status:%d", (int)status);
+                    ASSERT_EQ(Status::OK, status);
+                    const camera_metadata_t* metadata = (camera_metadata_t*) chars.data();
+                    size_t expectedSize = chars.size();
+                    ASSERT_EQ(0, validate_camera_metadata_structure(metadata, &expectedSize));
+                    size_t entryCount = get_camera_metadata_entry_count(metadata);
+                    // TODO: we can do better than 0 here. Need to check how many required
+                    // characteristics keys we've defined.
+                    ASSERT_GT(entryCount, 0u);
+                    ALOGI("getCameraCharacteristics metadata entry count is %zu", entryCount);
+                });
+        }
+    }
+}
+
+//In case it is supported verify that torch can be enabled.
+TEST_F(CameraHidlTest, setTorchMode) {
+    CameraHidlEnvironment* env = CameraHidlEnvironment::Instance();
+    hidl_vec<hidl_string> cameraDeviceNames = getCameraDeviceNames();
+    bool torchControlSupported = false;
+
+    CameraHidlEnvironment::Instance()->mProvider->isSetTorchModeSupported(
+        [&](auto status, bool support) {
+            ALOGI("isSetTorchModeSupported returns status:%d supported:%d",
+                    (int)status, support);
+            ASSERT_EQ(Status::OK, status);
+            torchControlSupported = support;
+        });
+
+    for (const auto& name : cameraDeviceNames) {
+        if (getCameraDeviceVersion(name) == CAMERA_DEVICE_API_VERSION_3_2) {
+            ::android::sp<::android::hardware::camera::device::V3_2::ICameraDevice> device3_2;
+            ALOGI("setTorchMode: Testing camera device %s", name.c_str());
+            env->mProvider->getCameraDeviceInterface_V3_x(
+                name,
+                [&](auto status, const auto& device) {
+                    ALOGI("getCameraDeviceInterface_V3_x returns status:%d", (int)status);
+                    ASSERT_EQ(Status::OK, status);
+                    ASSERT_NE(device, nullptr);
+                    device3_2 = device;
+                });
+
+            Status status = device3_2->setTorchMode(TorchMode::ON);
+            ALOGI("setTorchMode return status %d", (int)status);
+            if (!torchControlSupported) {
+                ASSERT_EQ(Status::METHOD_NOT_SUPPORTED, status);
+            } else {
+                ASSERT_TRUE(status == Status::OK || status == Status::OPERATION_NOT_SUPPORTED);
+                if (status == Status::OK) {
+                    status = device3_2->setTorchMode(TorchMode::OFF);
+                    ASSERT_EQ(Status::OK, status);
+                }
+            }
+        }
+    }
+}
+
+// Check dump functionality.
+TEST_F(CameraHidlTest, dumpState) {
+    CameraHidlEnvironment* env = CameraHidlEnvironment::Instance();
+    hidl_vec<hidl_string> cameraDeviceNames = getCameraDeviceNames();
+
+    for (const auto& name : cameraDeviceNames) {
+        if (getCameraDeviceVersion(name) == CAMERA_DEVICE_API_VERSION_3_2) {
+            ::android::sp<::android::hardware::camera::device::V3_2::ICameraDevice> device3_2;
+            ALOGI("dumpState: Testing camera device %s", name.c_str());
+            env->mProvider->getCameraDeviceInterface_V3_x(
+                name,
+                [&](auto status, const auto& device) {
+                    ALOGI("getCameraDeviceInterface_V3_x returns status:%d", (int)status);
+                    ASSERT_EQ(Status::OK, status);
+                    ASSERT_NE(device, nullptr);
+                    device3_2 = device;
+                });
+
+            native_handle_t* raw_handle = native_handle_create(1, 0);
+            raw_handle->data[0] = 1; // std out
+            hidl_handle handle = raw_handle;
+            device3_2->dumpState(handle);
+            native_handle_delete(raw_handle);
+        }
+    }
+}
+
+// Open, dumpStates, then close
+TEST_F(CameraHidlTest, openClose) {
+    CameraHidlEnvironment* env = CameraHidlEnvironment::Instance();
+    hidl_vec<hidl_string> cameraDeviceNames = getCameraDeviceNames();
+
+    for (const auto& name : cameraDeviceNames) {
+        if (getCameraDeviceVersion(name) == CAMERA_DEVICE_API_VERSION_3_2) {
+            ::android::sp<::android::hardware::camera::device::V3_2::ICameraDevice> device3_2;
+            ALOGI("openClose: Testing camera device %s", name.c_str());
+            env->mProvider->getCameraDeviceInterface_V3_x(
+                name,
+                [&](auto status, const auto& device) {
+                    ALOGI("getCameraDeviceInterface_V3_x returns status:%d", (int)status);
+                    ASSERT_EQ(Status::OK, status);
+                    ASSERT_NE(device, nullptr);
+                    device3_2 = device;
+                });
+
+            sp<EmptyDeviceCb> cb = new EmptyDeviceCb;
+            sp<ICameraDeviceSession> session;
+            device3_2->open(
+                cb,
+                [&](auto status, const auto& newSession) {
+                    ALOGI("device::open returns status:%d", (int)status);
+                    ASSERT_EQ(Status::OK, status);
+                    ASSERT_NE(newSession, nullptr);
+                    session = newSession;
+                });
+
+            native_handle_t* raw_handle = native_handle_create(1, 0);
+            raw_handle->data[0] = 1; // std out
+            hidl_handle handle = raw_handle;
+            device3_2->dumpState(handle);
+            native_handle_delete(raw_handle);
+
+            session->close();
+            // TODO: test all session API calls return INTERNAL_ERROR after close
+            // TODO: keep a wp copy here and verify session cannot be promoted out of this scope
+        }
+    }
+}
+
+// Check whether all common default request settings can be sucessfully
+// constructed.
+TEST_F(CameraHidlTest, constructDefaultRequestSettings) {
+    CameraHidlEnvironment* env = CameraHidlEnvironment::Instance();
+    hidl_vec<hidl_string> cameraDeviceNames = getCameraDeviceNames();
+
+    for (const auto& name : cameraDeviceNames) {
+        if (getCameraDeviceVersion(name) == CAMERA_DEVICE_API_VERSION_3_2) {
+            ::android::sp<::android::hardware::camera::device::V3_2::ICameraDevice> device3_2;
+            ALOGI("constructDefaultRequestSettings: Testing camera device %s", name.c_str());
+            env->mProvider->getCameraDeviceInterface_V3_x(
+                name,
+                [&](auto status, const auto& device) {
+                    ALOGI("getCameraDeviceInterface_V3_x returns status:%d", (int)status);
+                    ASSERT_EQ(Status::OK, status);
+                    ASSERT_NE(device, nullptr);
+                    device3_2 = device;
+                });
+
+            sp<EmptyDeviceCb> cb = new EmptyDeviceCb;
+            sp<ICameraDeviceSession> session;
+            device3_2->open(
+                cb,
+                [&](auto status, const auto& newSession) {
+                    ALOGI("device::open returns status:%d", (int)status);
+                    ASSERT_EQ(Status::OK, status);
+                    ASSERT_NE(newSession, nullptr);
+                    session = newSession;
+                });
+
+            for (uint32_t t = (uint32_t) RequestTemplate::PREVIEW;
+                    t <= (uint32_t) RequestTemplate::MANUAL; t++) {
+                RequestTemplate reqTemplate = (RequestTemplate) t;
+                session->constructDefaultRequestSettings(
+                    reqTemplate,
+                    [&](auto status, const auto& req) {
+                        ALOGI("constructDefaultRequestSettings returns status:%d", (int)status);
+                        if (reqTemplate == RequestTemplate::ZERO_SHUTTER_LAG ||
+                                reqTemplate == RequestTemplate::MANUAL) {
+                            // optional templates
+                            ASSERT_TRUE(status == Status::OK || status == Status::ILLEGAL_ARGUMENT);
+                        } else {
+                            ASSERT_EQ(Status::OK, status);
+                        }
+
+                        if (status == Status::OK) {
+                            const camera_metadata_t* metadata =
+                                (camera_metadata_t*) req.data();
+                            size_t expectedSize = req.size();
+                            ASSERT_EQ(0, validate_camera_metadata_structure(
+                                    metadata, &expectedSize));
+                            size_t entryCount = get_camera_metadata_entry_count(metadata);
+                            // TODO: we can do better than 0 here. Need to check how many required
+                            // request keys we've defined for each template
+                            ASSERT_GT(entryCount, 0u);
+                            ALOGI("template %u metadata entry count is %zu", t, entryCount);
+                        } else {
+                            ASSERT_EQ(0u, req.size());
+                        }
+                    });
+            }
+            session->close();
+        }
+    }
+}
+
+// Verify that all supported stream formats and sizes can be configured
+// successfully.
+TEST_F(CameraHidlTest, configureStreamsAvailableOutputs) {
+    CameraHidlEnvironment* env = CameraHidlEnvironment::Instance();
+    hidl_vec<hidl_string> cameraDeviceNames = getCameraDeviceNames();
+    std::vector<AvailableStream> outputStreams;
+
+    for (const auto& name : cameraDeviceNames) {
+        if (getCameraDeviceVersion(name) == CAMERA_DEVICE_API_VERSION_3_2) {
+            ::android::sp<::android::hardware::camera::device::V3_2::ICameraDevice> device3_2;
+            ALOGI("configureStreams: Testing camera device %s", name.c_str());
+            env->mProvider->getCameraDeviceInterface_V3_x(
+                name,
+                [&](auto status, const auto& device) {
+                    ALOGI("getCameraDeviceInterface_V3_x returns status:%d", (int)status);
+                    ASSERT_EQ(Status::OK, status);
+                    ASSERT_NE(device, nullptr);
+                    device3_2 = device;
+                });
+
+            sp<EmptyDeviceCb> cb = new EmptyDeviceCb;
+            sp<ICameraDeviceSession> session;
+            device3_2->open(
+                cb,
+                [&](auto status, const auto& newSession) {
+                    ALOGI("device::open returns status:%d", (int)status);
+                    ASSERT_EQ(Status::OK, status);
+                    ASSERT_NE(newSession, nullptr);
+                    session = newSession;
+                });
+
+            camera_metadata_t *staticMeta;
+            device3_2->getCameraCharacteristics([&] (Status s,
+                    CameraMetadata metadata) {
+                ASSERT_EQ(Status::OK, s);
+                staticMeta =
+                        reinterpret_cast<camera_metadata_t*>(metadata.data());
+            });
+            outputStreams.clear();
+            ASSERT_EQ(Status::OK, getAvailableOutputStreams(staticMeta,
+                    outputStreams));
+            ASSERT_NE(0u, outputStreams.size());
+
+            int32_t streamId = 0;
+            for (auto &it : outputStreams) {
+                Stream stream = {streamId, StreamType::OUTPUT,
+                        static_cast<uint32_t> (it.width),
+                        static_cast<uint32_t> (it.height),
+                        static_cast<PixelFormat> (it.format), 0, 0,
+                        StreamRotation::ROTATION_0};
+                ::android::hardware::hidl_vec<Stream> streams = {stream};
+                StreamConfiguration config = {streams,
+                        StreamConfigurationMode::NORMAL_MODE};
+                session->configureStreams(config, [streamId] (Status s,
+                        HalStreamConfiguration halConfig) {
+                    ASSERT_EQ(Status::OK, s);
+                    ASSERT_EQ(1u, halConfig.streams.size());
+                    ASSERT_EQ(halConfig.streams[0].id, streamId);
+                });
+                streamId++;
+            }
+
+            session->close();
+        }
+    }
+}
+
+// Check for correct handling of invalid/incorrect configuration parameters.
+TEST_F(CameraHidlTest, configureStreamsInvalidOutputs) {
+    CameraHidlEnvironment* env = CameraHidlEnvironment::Instance();
+    hidl_vec<hidl_string> cameraDeviceNames = getCameraDeviceNames();
+    std::vector<AvailableStream> outputStreams;
+
+    for (const auto& name : cameraDeviceNames) {
+        if (getCameraDeviceVersion(name) == CAMERA_DEVICE_API_VERSION_3_2) {
+            ::android::sp<::android::hardware::camera::device::V3_2::ICameraDevice> device3_2;
+            ALOGI("configureStreams: Testing camera device %s", name.c_str());
+            env->mProvider->getCameraDeviceInterface_V3_x(
+                name,
+                [&](auto status, const auto& device) {
+                    ALOGI("getCameraDeviceInterface_V3_x returns status:%d", (int)status);
+                    ASSERT_EQ(Status::OK, status);
+                    ASSERT_NE(device, nullptr);
+                    device3_2 = device;
+                });
+
+            sp<EmptyDeviceCb> cb = new EmptyDeviceCb;
+            sp<ICameraDeviceSession> session;
+            device3_2->open(
+                cb,
+                [&](auto status, const auto& newSession) {
+                    ALOGI("device::open returns status:%d", (int)status);
+                    ASSERT_EQ(Status::OK, status);
+                    ASSERT_NE(newSession, nullptr);
+                    session = newSession;
+                });
+
+            camera_metadata_t *staticMeta;
+            device3_2->getCameraCharacteristics([&] (Status s,
+                    CameraMetadata metadata) {
+                ASSERT_EQ(Status::OK, s);
+                staticMeta =
+                        reinterpret_cast<camera_metadata_t*>(metadata.data());
+            });
+            outputStreams.clear();
+            ASSERT_EQ(Status::OK, getAvailableOutputStreams(staticMeta,
+                    outputStreams));
+            ASSERT_NE(0u, outputStreams.size());
+
+            int32_t streamId = 0;
+            Stream stream = {streamId++, StreamType::OUTPUT,
+                    static_cast<uint32_t> (0),
+                    static_cast<uint32_t> (0),
+                    static_cast<PixelFormat> (outputStreams[0].format),
+                    0, 0, StreamRotation::ROTATION_0};
+            ::android::hardware::hidl_vec<Stream> streams = {stream};
+            StreamConfiguration config = {streams,
+                    StreamConfigurationMode::NORMAL_MODE};
+            session->configureStreams(config, [] (Status s,
+                    HalStreamConfiguration) {
+                ASSERT_EQ(Status::ILLEGAL_ARGUMENT, s);
+            });
+
+            stream = {streamId++, StreamType::OUTPUT,
+                    static_cast<uint32_t> (UINT32_MAX),
+                    static_cast<uint32_t> (UINT32_MAX),
+                    static_cast<PixelFormat> (outputStreams[0].format),
+                    0, 0, StreamRotation::ROTATION_0};
+            streams[0] = stream;
+            config = {streams,
+                    StreamConfigurationMode::NORMAL_MODE};
+            session->configureStreams(config, [] (Status s,
+                    HalStreamConfiguration) {
+                ASSERT_EQ(Status::ILLEGAL_ARGUMENT, s);
+            });
+
+            for (auto &it : outputStreams) {
+                stream = {streamId++, StreamType::OUTPUT,
+                        static_cast<uint32_t> (it.width),
+                        static_cast<uint32_t> (it.height),
+                        static_cast<PixelFormat> (UINT32_MAX),
+                        0, 0, StreamRotation::ROTATION_0};
+                streams[0] = stream;
+                config = {streams,
+                        StreamConfigurationMode::NORMAL_MODE};
+                session->configureStreams(config, [] (Status s,
+                        HalStreamConfiguration) {
+                    ASSERT_EQ(Status::ILLEGAL_ARGUMENT, s);
+                });
+
+                stream = {streamId++, StreamType::OUTPUT,
+                        static_cast<uint32_t> (it.width),
+                        static_cast<uint32_t> (it.height),
+                        static_cast<PixelFormat> (it.format),
+                        0, 0, static_cast<StreamRotation> (UINT32_MAX)};
+                streams[0] = stream;
+                config = {streams,
+                        StreamConfigurationMode::NORMAL_MODE};
+                session->configureStreams(config, [] (Status s,
+                        HalStreamConfiguration) {
+                    ASSERT_EQ(Status::ILLEGAL_ARGUMENT, s);
+                });
+            }
+
+            session->close();
+        }
+    }
+}
+
+// Check whether all supported ZSL output stream combinations can be
+// configured successfully.
+TEST_F(CameraHidlTest, configureStreamsZSLInputOutputs) {
+    CameraHidlEnvironment* env = CameraHidlEnvironment::Instance();
+    hidl_vec<hidl_string> cameraDeviceNames = getCameraDeviceNames();
+    std::vector<AvailableStream> inputStreams;
+    std::vector<AvailableZSLInputOutput> inputOutputMap;
+
+    for (const auto& name : cameraDeviceNames) {
+        if (getCameraDeviceVersion(name) == CAMERA_DEVICE_API_VERSION_3_2) {
+            ::android::sp<::android::hardware::camera::device::V3_2::ICameraDevice> device3_2;
+            ALOGI("configureStreams: Testing camera device %s", name.c_str());
+            env->mProvider->getCameraDeviceInterface_V3_x(
+                name,
+                [&](auto status, const auto& device) {
+                    ALOGI("getCameraDeviceInterface_V3_x returns status:%d", (int)status);
+                    ASSERT_EQ(Status::OK, status);
+                    ASSERT_NE(device, nullptr);
+                    device3_2 = device;
+                });
+
+            sp<EmptyDeviceCb> cb = new EmptyDeviceCb;
+            sp<ICameraDeviceSession> session;
+            device3_2->open(
+                cb,
+                [&](auto status, const auto& newSession) {
+                    ALOGI("device::open returns status:%d", (int)status);
+                    ASSERT_EQ(Status::OK, status);
+                    ASSERT_NE(newSession, nullptr);
+                    session = newSession;
+                });
+
+            camera_metadata_t *staticMeta;
+            device3_2->getCameraCharacteristics([&] (Status s,
+                    CameraMetadata metadata) {
+                ASSERT_EQ(Status::OK, s);
+                staticMeta =
+                        reinterpret_cast<camera_metadata_t*>(metadata.data());
+            });
+            Status ret = isZSLModeAvailable(staticMeta);
+            if (Status::METHOD_NOT_SUPPORTED == ret) {
+                session->close();
+                continue;
+            }
+            ASSERT_EQ(Status::OK, ret);
+
+            inputStreams.clear();
+            ASSERT_EQ(Status::OK, getAvailableOutputStreams(staticMeta,
+                    inputStreams));
+            ASSERT_NE(0u, inputStreams.size());
+
+            inputOutputMap.clear();
+            ASSERT_EQ(Status::OK, getZSLInputOutputMap(staticMeta,
+                    inputOutputMap));
+            ASSERT_NE(0u, inputOutputMap.size());
+
+            int32_t streamId = 0;
+            for (auto &inputIter : inputOutputMap) {
+                AvailableStream input, output;
+                ASSERT_EQ(Status::OK,
+                        findLargestSize(inputStreams, inputIter.inputFormat, input));
+                ASSERT_NE(0u, inputStreams.size());
+
+                AvailableStream outputThreshold = {INT32_MAX, INT32_MAX,
+                        inputIter.outputFormat};
+                std::vector<AvailableStream> outputStreams;
+                ASSERT_EQ(Status::OK, getAvailableOutputStreams(staticMeta,
+                        outputStreams, &outputThreshold));
+                for (auto &outputIter : outputStreams) {
+                    Stream zslStream = {streamId++, StreamType::OUTPUT,
+                            static_cast<uint32_t> (input.width),
+                            static_cast<uint32_t> (input.height),
+                            static_cast<PixelFormat> (input.format),
+                            GRALLOC_USAGE_HW_CAMERA_ZSL, 0,
+                            StreamRotation::ROTATION_0};
+                    Stream inputStream = {streamId++, StreamType::INPUT,
+                            static_cast<uint32_t> (input.width),
+                            static_cast<uint32_t> (input.height),
+                            static_cast<PixelFormat> (input.format), 0, 0,
+                            StreamRotation::ROTATION_0};
+                    Stream outputStream = {streamId++, StreamType::OUTPUT,
+                            static_cast<uint32_t> (outputIter.width),
+                            static_cast<uint32_t> (outputIter.height),
+                            static_cast<PixelFormat> (outputIter.format), 0, 0,
+                            StreamRotation::ROTATION_0};
+
+                    ::android::hardware::hidl_vec<Stream> streams = {
+                            inputStream, zslStream, outputStream};
+                    StreamConfiguration config = {streams,
+                            StreamConfigurationMode::NORMAL_MODE};
+                    session->configureStreams(config, [streamId] (Status s,
+                            HalStreamConfiguration halConfig) {
+                        ASSERT_EQ(Status::OK, s);
+                        ASSERT_EQ(3u, halConfig.streams.size());
+                    });
+                }
+            }
+
+            session->close();
+        }
+    }
+}
+
+// Verify that all supported preview + still capture stream combinations
+// can be configured successfully.
+TEST_F(CameraHidlTest, configureStreamsPreviewStillOutputs) {
+    CameraHidlEnvironment* env = CameraHidlEnvironment::Instance();
+    hidl_vec<hidl_string> cameraDeviceNames = getCameraDeviceNames();
+    std::vector<AvailableStream> outputBlobStreams;
+    std::vector<AvailableStream> outputPreviewStreams;
+    AvailableStream previewThreshold = {MAX_PREVIEW_WIDTH, MAX_PREVIEW_HEIGHT,
+            static_cast<int32_t>(PixelFormat::IMPLEMENTATION_DEFINED)};
+    AvailableStream blobThreshold = {INT32_MAX, INT32_MAX,
+            static_cast<int32_t>(PixelFormat::BLOB)};
+
+    for (const auto& name : cameraDeviceNames) {
+        if (getCameraDeviceVersion(name) == CAMERA_DEVICE_API_VERSION_3_2) {
+            ::android::sp<::android::hardware::camera::device::V3_2::ICameraDevice> device3_2;
+            ALOGI("configureStreams: Testing camera device %s", name.c_str());
+            env->mProvider->getCameraDeviceInterface_V3_x(
+                name,
+                [&](auto status, const auto& device) {
+                    ALOGI("getCameraDeviceInterface_V3_x returns status:%d", (int)status);
+                    ASSERT_EQ(Status::OK, status);
+                    ASSERT_NE(device, nullptr);
+                    device3_2 = device;
+                });
+
+            sp<EmptyDeviceCb> cb = new EmptyDeviceCb;
+            sp<ICameraDeviceSession> session;
+            device3_2->open(
+                cb,
+                [&](auto status, const auto& newSession) {
+                    ALOGI("device::open returns status:%d", (int)status);
+                    ASSERT_EQ(Status::OK, status);
+                    ASSERT_NE(newSession, nullptr);
+                    session = newSession;
+                });
+
+            camera_metadata_t *staticMeta;
+            device3_2->getCameraCharacteristics([&] (Status s,
+                    CameraMetadata metadata) {
+                ASSERT_EQ(Status::OK, s);
+                staticMeta =
+                        reinterpret_cast<camera_metadata_t*>(metadata.data());
+            });
+            outputBlobStreams.clear();
+            ASSERT_EQ(Status::OK, getAvailableOutputStreams(staticMeta,
+                    outputBlobStreams, &blobThreshold));
+            ASSERT_NE(0u, outputBlobStreams.size());
+
+            outputPreviewStreams.clear();
+            ASSERT_EQ(Status::OK, getAvailableOutputStreams(staticMeta,
+                    outputPreviewStreams, &previewThreshold));
+            ASSERT_NE(0u, outputPreviewStreams.size());
+
+            int32_t streamId = 0;
+            for (auto &blobIter : outputBlobStreams) {
+                for (auto &previewIter : outputPreviewStreams) {
+                    Stream previewStream = {streamId++, StreamType::OUTPUT,
+                            static_cast<uint32_t> (previewIter.width),
+                            static_cast<uint32_t> (previewIter.height),
+                            static_cast<PixelFormat> (previewIter.format), 0, 0,
+                            StreamRotation::ROTATION_0};
+                    Stream blobStream = {streamId++, StreamType::OUTPUT,
+                            static_cast<uint32_t> (blobIter.width),
+                            static_cast<uint32_t> (blobIter.height),
+                            static_cast<PixelFormat> (blobIter.format), 0, 0,
+                            StreamRotation::ROTATION_0};
+                    ::android::hardware::hidl_vec<Stream> streams = {
+                            previewStream, blobStream};
+                    StreamConfiguration config = {streams,
+                            StreamConfigurationMode::NORMAL_MODE};
+                    session->configureStreams(config, [streamId] (Status s,
+                            HalStreamConfiguration halConfig) {
+                        ASSERT_EQ(Status::OK, s);
+                        ASSERT_EQ(2u, halConfig.streams.size());
+                    });
+                }
+            }
+
+            session->close();
+        }
+    }
+}
+
+// In case constrained mode is supported, test whether it can be
+// configured. Additionally check for common invalid inputs when
+// using this mode.
+TEST_F(CameraHidlTest, configureStreamsConstrainedOutputs) {
+    CameraHidlEnvironment* env = CameraHidlEnvironment::Instance();
+    hidl_vec<hidl_string> cameraDeviceNames = getCameraDeviceNames();
+
+    for (const auto& name : cameraDeviceNames) {
+        if (getCameraDeviceVersion(name) == CAMERA_DEVICE_API_VERSION_3_2) {
+            ::android::sp<::android::hardware::camera::device::V3_2::ICameraDevice> device3_2;
+            ALOGI("configureStreams: Testing camera device %s", name.c_str());
+            env->mProvider->getCameraDeviceInterface_V3_x(
+                name,
+                [&](auto status, const auto& device) {
+                    ALOGI("getCameraDeviceInterface_V3_x returns status:%d", (int)status);
+                    ASSERT_EQ(Status::OK, status);
+                    ASSERT_NE(device, nullptr);
+                    device3_2 = device;
+                });
+
+            sp<EmptyDeviceCb> cb = new EmptyDeviceCb;
+            sp<ICameraDeviceSession> session;
+            device3_2->open(
+                cb,
+                [&](auto status, const auto& newSession) {
+                    ALOGI("device::open returns status:%d", (int)status);
+                    ASSERT_EQ(Status::OK, status);
+                    ASSERT_NE(newSession, nullptr);
+                    session = newSession;
+                });
+
+            camera_metadata_t *staticMeta;
+            device3_2->getCameraCharacteristics([&] (Status s,
+                    CameraMetadata metadata) {
+                ASSERT_EQ(Status::OK, s);
+                staticMeta =
+                        reinterpret_cast<camera_metadata_t*>(metadata.data());
+            });
+            Status rc = isConstrainedModeAvailable(staticMeta);
+            if (Status::METHOD_NOT_SUPPORTED == rc) {
+                session->close();
+                continue;
+            }
+            ASSERT_EQ(Status::OK, rc);
+
+            AvailableStream hfrStream;
+            rc = pickConstrainedModeSize(staticMeta, hfrStream);
+            ASSERT_EQ(Status::OK, rc);
+
+            int32_t streamId = 0;
+            Stream stream = {streamId, StreamType::OUTPUT,
+                    static_cast<uint32_t> (hfrStream.width),
+                    static_cast<uint32_t> (hfrStream.height),
+                    static_cast<PixelFormat> (hfrStream.format), 0, 0,
+                    StreamRotation::ROTATION_0};
+            ::android::hardware::hidl_vec<Stream> streams = {stream};
+            StreamConfiguration config = {streams,
+                    StreamConfigurationMode::CONSTRAINED_HIGH_SPEED_MODE};
+            session->configureStreams(config, [streamId] (Status s,
+                    HalStreamConfiguration halConfig) {
+                ASSERT_EQ(Status::OK, s);
+                ASSERT_EQ(1u, halConfig.streams.size());
+                ASSERT_EQ(halConfig.streams[0].id, streamId);
+            });
+
+            stream = {streamId++, StreamType::OUTPUT,
+                    static_cast<uint32_t> (0),
+                    static_cast<uint32_t> (0),
+                    static_cast<PixelFormat> (hfrStream.format), 0, 0,
+                    StreamRotation::ROTATION_0};
+            streams[0] = stream;
+            config = {streams,
+                    StreamConfigurationMode::CONSTRAINED_HIGH_SPEED_MODE};
+            session->configureStreams(config, [streamId] (Status s,
+                    HalStreamConfiguration) {
+                ASSERT_EQ(Status::ILLEGAL_ARGUMENT, s);
+            });
+
+            stream = {streamId++, StreamType::OUTPUT,
+                    static_cast<uint32_t> (UINT32_MAX),
+                    static_cast<uint32_t> (UINT32_MAX),
+                    static_cast<PixelFormat> (hfrStream.format), 0, 0,
+                    StreamRotation::ROTATION_0};
+            streams[0] = stream;
+            config = {streams,
+                    StreamConfigurationMode::CONSTRAINED_HIGH_SPEED_MODE};
+            session->configureStreams(config, [streamId] (Status s,
+                    HalStreamConfiguration) {
+                ASSERT_EQ(Status::ILLEGAL_ARGUMENT, s);
+            });
+
+            stream = {streamId++, StreamType::OUTPUT,
+                    static_cast<uint32_t> (hfrStream.width),
+                    static_cast<uint32_t> (hfrStream.height),
+                    static_cast<PixelFormat> (UINT32_MAX), 0, 0,
+                    StreamRotation::ROTATION_0};
+            streams[0] = stream;
+            config = {streams,
+                    StreamConfigurationMode::CONSTRAINED_HIGH_SPEED_MODE};
+            session->configureStreams(config, [streamId] (Status s,
+                    HalStreamConfiguration) {
+                ASSERT_EQ(Status::ILLEGAL_ARGUMENT, s);
+            });
+
+            session->close();
+        }
+    }
+}
+
+// Verify that all supported video + snapshot stream combinations can
+// be configured successfully.
+TEST_F(CameraHidlTest, configureStreamsVideoStillOutputs) {
+    CameraHidlEnvironment* env = CameraHidlEnvironment::Instance();
+    hidl_vec<hidl_string> cameraDeviceNames = getCameraDeviceNames();
+    std::vector<AvailableStream> outputBlobStreams;
+    std::vector<AvailableStream> outputVideoStreams;
+    AvailableStream videoThreshold = {MAX_VIDEO_WIDTH, MAX_VIDEO_HEIGHT,
+            static_cast<int32_t>(PixelFormat::IMPLEMENTATION_DEFINED)};
+    AvailableStream blobThreshold = {MAX_VIDEO_WIDTH, MAX_VIDEO_HEIGHT,
+            static_cast<int32_t>(PixelFormat::BLOB)};
+
+    for (const auto& name : cameraDeviceNames) {
+        if (getCameraDeviceVersion(name) == CAMERA_DEVICE_API_VERSION_3_2) {
+            ::android::sp<::android::hardware::camera::device::V3_2::ICameraDevice> device3_2;
+            ALOGI("configureStreams: Testing camera device %s", name.c_str());
+            env->mProvider->getCameraDeviceInterface_V3_x(
+                name,
+                [&](auto status, const auto& device) {
+                    ALOGI("getCameraDeviceInterface_V3_x returns status:%d", (int)status);
+                    ASSERT_EQ(Status::OK, status);
+                    ASSERT_NE(device, nullptr);
+                    device3_2 = device;
+                });
+
+            sp<EmptyDeviceCb> cb = new EmptyDeviceCb;
+            sp<ICameraDeviceSession> session;
+            device3_2->open(
+                cb,
+                [&](auto status, const auto& newSession) {
+                    ALOGI("device::open returns status:%d", (int)status);
+                    ASSERT_EQ(Status::OK, status);
+                    ASSERT_NE(newSession, nullptr);
+                    session = newSession;
+                });
+
+            camera_metadata_t *staticMeta;
+            device3_2->getCameraCharacteristics([&] (Status s,
+                    CameraMetadata metadata) {
+                ASSERT_EQ(Status::OK, s);
+                staticMeta =
+                        reinterpret_cast<camera_metadata_t*>(metadata.data());
+            });
+            outputBlobStreams.clear();
+            ASSERT_EQ(Status::OK, getAvailableOutputStreams(staticMeta,
+                    outputBlobStreams, &blobThreshold));
+            ASSERT_NE(0u, outputBlobStreams.size());
+
+            outputVideoStreams.clear();
+            ASSERT_EQ(Status::OK, getAvailableOutputStreams(staticMeta,
+                    outputVideoStreams, &videoThreshold));
+            ASSERT_NE(0u, outputVideoStreams.size());
+
+            int32_t streamId = 0;
+            for (auto &blobIter : outputBlobStreams) {
+                for (auto &videoIter : outputVideoStreams) {
+                    Stream videoStream = {streamId++, StreamType::OUTPUT,
+                            static_cast<uint32_t> (videoIter.width),
+                            static_cast<uint32_t> (videoIter.height),
+                            static_cast<PixelFormat> (videoIter.format), 0, 0,
+                            StreamRotation::ROTATION_0};
+                    Stream blobStream = {streamId++, StreamType::OUTPUT,
+                            static_cast<uint32_t> (blobIter.width),
+                            static_cast<uint32_t> (blobIter.height),
+                            static_cast<PixelFormat> (blobIter.format),
+                            GRALLOC_USAGE_HW_VIDEO_ENCODER, 0,
+                            StreamRotation::ROTATION_0};
+                    ::android::hardware::hidl_vec<Stream> streams = {
+                            videoStream, blobStream};
+                    StreamConfiguration config = {streams,
+                            StreamConfigurationMode::NORMAL_MODE};
+                    session->configureStreams(config, [streamId] (Status s,
+                            HalStreamConfiguration halConfig) {
+                        ASSERT_EQ(Status::OK, s);
+                        ASSERT_EQ(2u, halConfig.streams.size());
+                    });
+                }
+            }
+
+            session->close();
+        }
+    }
+}
+
+// Generate and verify a camera capture request
+TEST_F(CameraHidlTest, processCaptureRequestPreview) {
+    CameraHidlEnvironment* env = CameraHidlEnvironment::Instance();
+    hidl_vec<hidl_string> cameraDeviceNames = getCameraDeviceNames();
+    std::vector<AvailableStream> outputPreviewStreams;
+    AvailableStream previewThreshold = {MAX_PREVIEW_WIDTH, MAX_PREVIEW_HEIGHT,
+            static_cast<int32_t>(PixelFormat::IMPLEMENTATION_DEFINED)};
+    int32_t streamId = 0;
+    uint64_t bufferId = 1;
+    uint32_t frameNumber = 1;
+    ::android::hardware::hidl_vec<uint8_t> settings;
+
+    for (const auto& name : cameraDeviceNames) {
+        if (getCameraDeviceVersion(name) == CAMERA_DEVICE_API_VERSION_3_2) {
+            ::android::sp<::android::hardware::camera::device::V3_2::ICameraDevice> device3_2;
+            ALOGI("configureStreams: Testing camera device %s", name.c_str());
+            env->mProvider->getCameraDeviceInterface_V3_x(
+                name,
+                [&](auto status, const auto& device) {
+                    ALOGI("getCameraDeviceInterface_V3_x returns status:%d", (int)status);
+                    ASSERT_EQ(Status::OK, status);
+                    ASSERT_NE(device, nullptr);
+                    device3_2 = device;
+                });
+
+            sp<DeviceCb> cb = new DeviceCb(this);
+            sp<ICameraDeviceSession> session;
+            device3_2->open(
+                cb,
+                [&](auto status, const auto& newSession) {
+                    ALOGI("device::open returns status:%d", (int)status);
+                    ASSERT_EQ(Status::OK, status);
+                    ASSERT_NE(newSession, nullptr);
+                    session = newSession;
+                });
+
+            camera_metadata_t *staticMeta;
+            device3_2->getCameraCharacteristics([&] (Status s,
+                    CameraMetadata metadata) {
+                ASSERT_EQ(Status::OK, s);
+                staticMeta =
+                        reinterpret_cast<camera_metadata_t*>(metadata.data());
+            });
+
+            outputPreviewStreams.clear();
+            ASSERT_EQ(Status::OK, getAvailableOutputStreams(staticMeta,
+                    outputPreviewStreams, &previewThreshold));
+            ASSERT_NE(0u, outputPreviewStreams.size());
+
+            HalStreamConfiguration halStreamConfig;
+            Stream previewStream = {streamId, StreamType::OUTPUT,
+                    static_cast<uint32_t> (outputPreviewStreams[0].width),
+                    static_cast<uint32_t> (outputPreviewStreams[0].height),
+                    static_cast<PixelFormat> (outputPreviewStreams[0].format),
+                    0, 0, StreamRotation::ROTATION_0};
+            ::android::hardware::hidl_vec<Stream> streams = {previewStream};
+            StreamConfiguration config = {streams,
+                    StreamConfigurationMode::NORMAL_MODE};
+            session->configureStreams(config, [&] (Status s,
+                    HalStreamConfiguration halConfig) {
+                ASSERT_EQ(Status::OK, s);
+                ASSERT_EQ(1u, halConfig.streams.size());
+                halStreamConfig = halConfig;
+            });
+
+            RequestTemplate reqTemplate = RequestTemplate::PREVIEW;
+            session->constructDefaultRequestSettings(reqTemplate,
+                [&](auto status, const auto& req) {
+                    ASSERT_EQ(Status::OK, status);
+                    settings = req; });
+
+            sp<GraphicBuffer> gb = new GraphicBuffer(previewStream.width,
+                    previewStream.height,
+                    static_cast<int32_t> (halStreamConfig.streams[0].overrideFormat),
+                    1, halStreamConfig.streams[0].producerUsage,
+                    halStreamConfig.streams[0].consumerUsage);
+            ASSERT_NE(nullptr, gb.get());
+            StreamBuffer outputBuffer = {halStreamConfig.streams[0].id,
+                    bufferId, hidl_handle(gb->getNativeBuffer()->handle),
+                    BufferStatus::OK, nullptr, nullptr};
+            ::android::hardware::hidl_vec<StreamBuffer> outputBuffers = {
+                    outputBuffer};
+            CaptureRequest request = {frameNumber, settings,
+                    {-1, 0, nullptr, BufferStatus::ERROR, nullptr, nullptr},
+                    outputBuffers};
+
+            std::unique_lock<std::mutex> l(mLock);
+            mResultBuffers.clear();
+            mResultFrameNumber = frameNumber;
+            l.unlock();
+
+            ASSERT_EQ(Status::OK, session->processCaptureRequest(request));
+
+            l.lock();
+            while (0 == mResultBuffers.size()) {
+                auto timeout = std::chrono::system_clock::now() +
+                        std::chrono::seconds(STREAM_BUFFER_TIMEOUT);
+                ASSERT_NE(std::cv_status::timeout,
+                        mResultCondition.wait_until(l, timeout));
+            }
+
+            ASSERT_EQ(BufferStatus::OK, mResultBuffers[0].status);
+            ASSERT_EQ(previewStream.id, mResultBuffers[0].streamId);
+
+            request.frameNumber++;
+            //Empty settings should be supported after the first call
+            //for repeating requests.
+            request.settings.setToExternal(nullptr, 0, true);
+            mResultBuffers.clear();
+            mResultFrameNumber++;
+            l.unlock();
+
+            ASSERT_EQ(Status::OK, session->processCaptureRequest(request));
+
+            l.lock();
+            while (0 == mResultBuffers.size()) {
+                auto timeout = std::chrono::system_clock::now() +
+                        std::chrono::seconds(STREAM_BUFFER_TIMEOUT);
+                ASSERT_NE(std::cv_status::timeout,
+                        mResultCondition.wait_until(l, timeout));
+            }
+            ASSERT_EQ(BufferStatus::OK, mResultBuffers[0].status);
+            ASSERT_EQ(previewStream.id, mResultBuffers[0].streamId);
+
+            session->close();
+        }
+    }
+}
+
+// Test whether an incorrect capture request with missing settings will
+// be reported correctly.
+TEST_F(CameraHidlTest, processCaptureRequestInvalidSinglePreview) {
+    CameraHidlEnvironment* env = CameraHidlEnvironment::Instance();
+    hidl_vec<hidl_string> cameraDeviceNames = getCameraDeviceNames();
+    std::vector<AvailableStream> outputPreviewStreams;
+    AvailableStream previewThreshold = {MAX_PREVIEW_WIDTH, MAX_PREVIEW_HEIGHT,
+            static_cast<int32_t>(PixelFormat::IMPLEMENTATION_DEFINED)};
+    int32_t streamId = 0;
+    uint64_t bufferId = 1;
+    uint32_t frameNumber = 1;
+    ::android::hardware::hidl_vec<uint8_t> settings;
+
+    for (const auto& name : cameraDeviceNames) {
+        if (getCameraDeviceVersion(name) == CAMERA_DEVICE_API_VERSION_3_2) {
+            ::android::sp<::android::hardware::camera::device::V3_2::ICameraDevice> device3_2;
+            ALOGI("configureStreams: Testing camera device %s", name.c_str());
+            env->mProvider->getCameraDeviceInterface_V3_x(
+                name,
+                [&](auto status, const auto& device) {
+                    ALOGI("getCameraDeviceInterface_V3_x returns status:%d", (int)status);
+                    ASSERT_EQ(Status::OK, status);
+                    ASSERT_NE(device, nullptr);
+                    device3_2 = device;
+                });
+
+            sp<DeviceCb> cb = new DeviceCb(this);
+            sp<ICameraDeviceSession> session;
+            device3_2->open(
+                cb,
+                [&](auto status, const auto& newSession) {
+                    ALOGI("device::open returns status:%d", (int)status);
+                    ASSERT_EQ(Status::OK, status);
+                    ASSERT_NE(newSession, nullptr);
+                    session = newSession;
+                });
+
+            camera_metadata_t *staticMeta;
+            device3_2->getCameraCharacteristics([&] (Status s,
+                    CameraMetadata metadata) {
+                ASSERT_EQ(Status::OK, s);
+                staticMeta =
+                        reinterpret_cast<camera_metadata_t*>(metadata.data());
+            });
+
+            outputPreviewStreams.clear();
+            ASSERT_EQ(Status::OK, getAvailableOutputStreams(staticMeta,
+                    outputPreviewStreams, &previewThreshold));
+            ASSERT_NE(0u, outputPreviewStreams.size());
+
+            HalStreamConfiguration halStreamConfig;
+            Stream previewStream = {streamId, StreamType::OUTPUT,
+                    static_cast<uint32_t> (outputPreviewStreams[0].width),
+                    static_cast<uint32_t> (outputPreviewStreams[0].height),
+                    static_cast<PixelFormat> (outputPreviewStreams[0].format),
+                    0, 0, StreamRotation::ROTATION_0};
+            ::android::hardware::hidl_vec<Stream> streams = {previewStream};
+            StreamConfiguration config = {streams,
+                    StreamConfigurationMode::NORMAL_MODE};
+            session->configureStreams(config, [&] (Status s,
+                    HalStreamConfiguration halConfig) {
+                ASSERT_EQ(Status::OK, s);
+                ASSERT_EQ(1u, halConfig.streams.size());
+                halStreamConfig = halConfig;
+            });
+
+            sp<GraphicBuffer> gb = new GraphicBuffer(previewStream.width,
+                    previewStream.height,
+                    static_cast<int32_t> (halStreamConfig.streams[0].overrideFormat),
+                    1, halStreamConfig.streams[0].producerUsage,
+                    halStreamConfig.streams[0].consumerUsage);
+
+            StreamBuffer outputBuffer = {halStreamConfig.streams[0].id,
+                    bufferId, hidl_handle(gb->getNativeBuffer()->handle),
+                    BufferStatus::OK, nullptr, nullptr};
+            ::android::hardware::hidl_vec<StreamBuffer> outputBuffers = {
+                    outputBuffer};
+            CaptureRequest request = {frameNumber, settings,
+                    {-1, 0, nullptr, BufferStatus::ERROR, nullptr, nullptr},
+                    outputBuffers};
+
+            //Settings were not correctly initialized, we should fail here
+            ASSERT_EQ(Status::INTERNAL_ERROR,
+                    session->processCaptureRequest(request));
+
+            session->close();
+        }
+    }
+}
+
+// Check whether an invalid capture request with missing output buffers
+// will be reported correctly.
+TEST_F(CameraHidlTest, processCaptureRequestInvalidSingleSnapshot) {
+    CameraHidlEnvironment* env = CameraHidlEnvironment::Instance();
+    hidl_vec<hidl_string> cameraDeviceNames = getCameraDeviceNames();
+    std::vector<AvailableStream> outputBlobStreams;
+    AvailableStream blobThreshold = {INT32_MAX, INT32_MAX,
+            static_cast<int32_t>(PixelFormat::BLOB)};
+    int32_t streamId = 0;
+    uint64_t bufferId = 1;
+    uint32_t frameNumber = 1;
+    ::android::hardware::hidl_vec<uint8_t> settings;
+
+    for (const auto& name : cameraDeviceNames) {
+        if (getCameraDeviceVersion(name) == CAMERA_DEVICE_API_VERSION_3_2) {
+            ::android::sp<::android::hardware::camera::device::V3_2::ICameraDevice> device3_2;
+            ALOGI("configureStreams: Testing camera device %s", name.c_str());
+            env->mProvider->getCameraDeviceInterface_V3_x(
+                name,
+                [&](auto status, const auto& device) {
+                    ALOGI("getCameraDeviceInterface_V3_x returns status:%d", (int)status);
+                    ASSERT_EQ(Status::OK, status);
+                    ASSERT_NE(device, nullptr);
+                    device3_2 = device;
+                });
+
+            sp<DeviceCb> cb = new DeviceCb(this);
+            sp<ICameraDeviceSession> session;
+            device3_2->open(
+                cb,
+                [&](auto status, const auto& newSession) {
+                    ALOGI("device::open returns status:%d", (int)status);
+                    ASSERT_EQ(Status::OK, status);
+                    ASSERT_NE(newSession, nullptr);
+                    session = newSession;
+                });
+
+            camera_metadata_t *staticMeta;
+            device3_2->getCameraCharacteristics([&] (Status s,
+                    CameraMetadata metadata) {
+                ASSERT_EQ(Status::OK, s);
+                staticMeta =
+                        reinterpret_cast<camera_metadata_t*>(metadata.data());
+            });
+
+            outputBlobStreams.clear();
+            ASSERT_EQ(Status::OK, getAvailableOutputStreams(staticMeta,
+                    outputBlobStreams, &blobThreshold));
+            ASSERT_NE(0u, outputBlobStreams.size());
+
+            HalStreamConfiguration halStreamConfig;
+            Stream previewStream = {streamId, StreamType::OUTPUT,
+                    static_cast<uint32_t> (outputBlobStreams[0].width),
+                    static_cast<uint32_t> (outputBlobStreams[0].height),
+                    static_cast<PixelFormat> (outputBlobStreams[0].format),
+                    0, 0, StreamRotation::ROTATION_0};
+            ::android::hardware::hidl_vec<Stream> streams = {previewStream};
+            StreamConfiguration config = {streams,
+                    StreamConfigurationMode::NORMAL_MODE};
+            session->configureStreams(config, [&] (Status s,
+                    HalStreamConfiguration halConfig) {
+                ASSERT_EQ(Status::OK, s);
+                ASSERT_EQ(1u, halConfig.streams.size());
+                halStreamConfig = halConfig;
+            });
+
+            RequestTemplate reqTemplate = RequestTemplate::STILL_CAPTURE;
+            session->constructDefaultRequestSettings(reqTemplate,
+                [&](auto status, const auto& req) {
+                    ASSERT_EQ(Status::OK, status);
+                    settings = req; });
+
+            StreamBuffer outputBuffer = {halStreamConfig.streams[0].id,
+                    bufferId, hidl_handle(nullptr), BufferStatus::OK,
+                    nullptr, nullptr};
+            ::android::hardware::hidl_vec<StreamBuffer> outputBuffers;
+            CaptureRequest request = {frameNumber, settings,
+                    {-1, 0, nullptr, BufferStatus::ERROR, nullptr, nullptr},
+                    outputBuffers};
+
+            //Output buffers are missing, we should fail here
+            ASSERT_EQ(Status::INTERNAL_ERROR,
+                    session->processCaptureRequest(request));
+
+            session->close();
+        }
+    }
+}
+
+// Retrieve all valid output stream resolutions from the camera
+// static characteristics.
+Status CameraHidlTest::getAvailableOutputStreams(camera_metadata_t *staticMeta,
+        std::vector<AvailableStream> &outputStreams,
+        AvailableStream *threshold) {
+    if (nullptr == staticMeta) {
+        return Status::ILLEGAL_ARGUMENT;
+    }
+
+    camera_metadata_ro_entry entry;
+    int rc = find_camera_metadata_ro_entry(staticMeta,
+            ANDROID_SCALER_AVAILABLE_STREAM_CONFIGURATIONS, &entry);
+    if ((0 != rc) || (0 != (entry.count % 4))) {
+        return Status::ILLEGAL_ARGUMENT;
+    }
+
+    for (size_t i = 0; i < entry.count; i+=4) {
+        if (ANDROID_SCALER_AVAILABLE_STREAM_CONFIGURATIONS_OUTPUT ==
+                entry.data.i32[i + 3]) {
+            if(nullptr == threshold) {
+                AvailableStream s = {entry.data.i32[i+1],
+                        entry.data.i32[i+2], entry.data.i32[i]};
+                outputStreams.push_back(s);
+            } else {
+                if ((threshold->format == entry.data.i32[i]) &&
+                        (threshold->width >= entry.data.i32[i+1]) &&
+                        (threshold->height >= entry.data.i32[i+2])) {
+                    AvailableStream s = {entry.data.i32[i+1],
+                            entry.data.i32[i+2], threshold->format};
+                    outputStreams.push_back(s);
+                }
+            }
+        }
+
+    }
+
+    return Status::OK;
+}
+
+// Check if constrained mode is supported by using the static
+// camera characteristics.
+Status CameraHidlTest::isConstrainedModeAvailable(camera_metadata_t *staticMeta) {
+    Status ret = Status::METHOD_NOT_SUPPORTED;
+    if (nullptr == staticMeta) {
+        return Status::ILLEGAL_ARGUMENT;
+    }
+
+    camera_metadata_ro_entry entry;
+    int rc = find_camera_metadata_ro_entry(staticMeta,
+            ANDROID_REQUEST_AVAILABLE_CAPABILITIES, &entry);
+    if (0 != rc) {
+        return Status::ILLEGAL_ARGUMENT;
+    }
+
+    for (size_t i = 0; i < entry.count; i++) {
+        if (ANDROID_REQUEST_AVAILABLE_CAPABILITIES_CONSTRAINED_HIGH_SPEED_VIDEO ==
+                entry.data.u8[i]) {
+            ret = Status::OK;
+            break;
+        }
+    }
+
+    return ret;
+}
+
+// Pick the largest supported HFR mode from the static camera
+// characteristics.
+Status CameraHidlTest::pickConstrainedModeSize(camera_metadata_t *staticMeta,
+        AvailableStream &hfrStream) {
+    if (nullptr == staticMeta) {
+        return Status::ILLEGAL_ARGUMENT;
+    }
+
+    camera_metadata_ro_entry entry;
+    int rc = find_camera_metadata_ro_entry(staticMeta,
+            ANDROID_CONTROL_AVAILABLE_HIGH_SPEED_VIDEO_CONFIGURATIONS, &entry);
+    if (0 != rc) {
+        return Status::METHOD_NOT_SUPPORTED;
+    } else if (0 != (entry.count % 5)) {
+        return Status::ILLEGAL_ARGUMENT;
+    }
+
+    hfrStream = {0, 0,
+            static_cast<uint32_t>(PixelFormat::IMPLEMENTATION_DEFINED)};
+    for (size_t i = 0; i < entry.count; i+=5) {
+        int32_t w = entry.data.i32[i];
+        int32_t h = entry.data.i32[i+1];
+        if ((hfrStream.width * hfrStream.height) < (w *h)) {
+            hfrStream.width = w;
+            hfrStream.height = h;
+        }
+    }
+
+    return Status::OK;
+}
+
+// Check whether ZSL is available using the static camera
+// characteristics.
+Status CameraHidlTest::isZSLModeAvailable(camera_metadata_t *staticMeta) {
+    Status ret = Status::METHOD_NOT_SUPPORTED;
+    if (nullptr == staticMeta) {
+        return Status::ILLEGAL_ARGUMENT;
+    }
+
+    camera_metadata_ro_entry entry;
+    int rc = find_camera_metadata_ro_entry(staticMeta,
+            ANDROID_REQUEST_AVAILABLE_CAPABILITIES, &entry);
+    if (0 != rc) {
+        return Status::ILLEGAL_ARGUMENT;
+    }
+
+    for (size_t i = 0; i < entry.count; i++) {
+        if ((ANDROID_REQUEST_AVAILABLE_CAPABILITIES_PRIVATE_REPROCESSING ==
+                entry.data.u8[i]) ||
+                (ANDROID_REQUEST_AVAILABLE_CAPABILITIES_YUV_REPROCESSING ==
+                        entry.data.u8[i]) ){
+            ret = Status::OK;
+            break;
+        }
+    }
+
+    return ret;
+}
+
+// Retrieve the reprocess input-output format map from the static
+// camera characteristics.
+Status CameraHidlTest::getZSLInputOutputMap(camera_metadata_t *staticMeta,
+        std::vector<AvailableZSLInputOutput> &inputOutputMap) {
+    if (nullptr == staticMeta) {
+        return Status::ILLEGAL_ARGUMENT;
+    }
+
+    camera_metadata_ro_entry entry;
+    int rc = find_camera_metadata_ro_entry(staticMeta,
+            ANDROID_SCALER_AVAILABLE_INPUT_OUTPUT_FORMATS_MAP, &entry);
+    if ((0 != rc) || (0 >= entry.count)) {
+        return Status::ILLEGAL_ARGUMENT;
+    }
+
+    const int32_t* contents = &entry.data.i32[0];
+    for (size_t i = 0; i < entry.count; ) {
+        int32_t inputFormat = contents[i++];
+        int32_t length = contents[i++];
+        for (int32_t j = 0; j < length; j++) {
+            int32_t outputFormat = contents[i+j];
+            AvailableZSLInputOutput zslEntry = {inputFormat, outputFormat};
+            inputOutputMap.push_back(zslEntry);
+        }
+        i += length;
+    }
+
+    return Status::OK;
+}
+
+// Search for the largest stream size for a given format.
+Status CameraHidlTest::findLargestSize(
+        const std::vector<AvailableStream> &streamSizes, int32_t format,
+        AvailableStream &result) {
+    result = {0, 0, 0};
+    for (auto &iter : streamSizes) {
+        if (format == iter.format) {
+            if ((result.width * result.height) < (iter.width * iter.height)) {
+                result = iter;
+            }
+        }
+    }
+
+    return (result.format == format) ? Status::OK : Status::ILLEGAL_ARGUMENT;
+}
+
+int main(int argc, char **argv) {
+  ::testing::AddGlobalTestEnvironment(CameraHidlEnvironment::Instance());
+  ::testing::InitGoogleTest(&argc, argv);
+  int status = RUN_ALL_TESTS();
+  ALOGI("Test result = %d", status);
+  return status;
+}
diff --git a/camera/provider/2.4/vts/functional/camera_hidl_hal_test.cpp b/camera/provider/2.4/vts/functional/camera_hidl_hal_test.cpp
deleted file mode 100644
index 0186371..0000000
--- a/camera/provider/2.4/vts/functional/camera_hidl_hal_test.cpp
+++ /dev/null
@@ -1,515 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#define LOG_TAG "camera_hidl_hal_test"
-#include <android/hardware/camera/provider/2.4/ICameraProvider.h>
-#include <android/hardware/camera/device/3.2/ICameraDevice.h>
-#include <android/log.h>
-#include <gtest/gtest.h>
-#include <regex>
-#include "system/camera_metadata.h"
-
-using ::android::hardware::Return;
-using ::android::hardware::Void;
-using ::android::hardware::hidl_handle;
-using ::android::hardware::hidl_string;
-using ::android::hardware::hidl_vec;
-using ::android::sp;
-using ::android::hardware::camera::common::V1_0::Status;
-using ::android::hardware::camera::common::V1_0::CameraDeviceStatus;
-using ::android::hardware::camera::common::V1_0::TorchMode;
-using ::android::hardware::camera::common::V1_0::TorchModeStatus;
-using ::android::hardware::camera::provider::V2_4::ICameraProvider;
-using ::android::hardware::camera::provider::V2_4::ICameraProviderCallback;
-using ::android::hardware::camera::device::V3_2::CaptureRequest;
-using ::android::hardware::camera::device::V3_2::CaptureResult;
-using ::android::hardware::camera::device::V3_2::ICameraDeviceCallback;
-using ::android::hardware::camera::device::V3_2::ICameraDeviceSession;
-using ::android::hardware::camera::device::V3_2::NotifyMsg;
-using ::android::hardware::camera::device::V3_2::RequestTemplate;
-
-#define CAMERA_PASSTHROUGH_SERVICE_NAME "legacy/0"
-
-namespace {
-    // "device@<version>/legacy/<id>"
-    const char *kDeviceNameRE = "device@([0-9]+\\.[0-9]+)/legacy/(.+)";
-    const int CAMERA_DEVICE_API_VERSION_3_2 = 0x302;
-    const int CAMERA_DEVICE_API_VERSION_1_0 = 0x100;
-    const char *kHAL3_2 = "3.2";
-    const char *kHAL1_0 = "1.0";
-
-    bool matchDeviceName(const hidl_string& deviceName, std::smatch& sm) {
-        std::regex e(kDeviceNameRE);
-        std::string deviceNameStd(deviceName.c_str());
-        return std::regex_match(deviceNameStd, sm, e);
-    }
-
-    int getCameraDeviceVersion(const hidl_string& deviceName) {
-        std::smatch sm;
-        bool match = matchDeviceName(deviceName, sm);
-        if (!match) {
-            return -1;
-        }
-        if (sm[1].compare(kHAL3_2) == 0) {
-            // maybe switched to 3.4 or define the hidl version enumlater
-            return CAMERA_DEVICE_API_VERSION_3_2;
-        } else if (sm[1].compare(kHAL1_0) == 0) {
-            return CAMERA_DEVICE_API_VERSION_1_0;
-        }
-        return 0;
-    }
-}
-
-// Test environment for camera
-class CameraHidlEnvironment : public ::testing::Environment {
-public:
-    // get the test environment singleton
-    static CameraHidlEnvironment* Instance() {
-        static CameraHidlEnvironment* instance = new CameraHidlEnvironment;
-        return instance;
-    }
-
-    virtual void SetUp() override;
-    virtual void TearDown() override;
-
-    sp<ICameraProvider> mProvider;
-
-private:
-    CameraHidlEnvironment() {}
-
-    GTEST_DISALLOW_COPY_AND_ASSIGN_(CameraHidlEnvironment);
-};
-
-void CameraHidlEnvironment::SetUp() {
-    // TODO: test the binderized mode
-    mProvider = ICameraProvider::getService(CAMERA_PASSTHROUGH_SERVICE_NAME);
-    // TODO: handle the device doesn't have any camera case
-    ALOGI_IF(mProvider, "provider is not nullptr, %p", mProvider.get());
-    ASSERT_NE(mProvider, nullptr);
-}
-
-void CameraHidlEnvironment::TearDown() {
-    ALOGI("TearDown CameraHidlEnvironment");
-}
-
-// The main test class for camera HIDL HAL.
-class CameraHidlTest : public ::testing::Test {
-public:
-    virtual void SetUp() override {}
-    virtual void TearDown() override {}
-
-    hidl_vec<hidl_string> getCameraDeviceNames();
-
-    struct EmptyDeviceCb : public ICameraDeviceCallback {
-        virtual Return<void> processCaptureResult(const CaptureResult& /*result*/) override {
-            ALOGI("processCaptureResult callback");
-            ADD_FAILURE(); // Empty callback should not reach here
-            return Void();
-        }
-
-        virtual Return<void> notify(const NotifyMsg& /*msg*/) override {
-            ALOGI("notify callback");
-            ADD_FAILURE(); // Empty callback should not reach here
-            return Void();
-        }
-    };
-};
-
-hidl_vec<hidl_string> CameraHidlTest::getCameraDeviceNames() {
-    CameraHidlEnvironment* env = CameraHidlEnvironment::Instance();
-    hidl_vec<hidl_string> cameraDeviceNames;
-    env->mProvider->getCameraIdList(
-        [&](auto status, const auto& idList) {
-            ALOGI("getCameraIdList returns status:%d", (int)status);
-            for (size_t i = 0; i < idList.size(); i++) {
-                ALOGI("Camera Id[%zu] is %s", i, idList[i].c_str());
-            }
-            ASSERT_EQ(Status::OK, status);
-            cameraDeviceNames = idList;
-        });
-    return cameraDeviceNames;
-}
-
-// Test if ICameraProvider::isTorchModeSupported returns Status::OK
-TEST_F(CameraHidlTest, isTorchModeSupported) {
-    CameraHidlEnvironment::Instance()->mProvider->isSetTorchModeSupported(
-        [&](auto status, bool support) {
-            ALOGI("isSetTorchModeSupported returns status:%d supported:%d",
-                    (int)status, support);
-            ASSERT_EQ(Status::OK, status);
-        });
-}
-
-// TODO: consider removing this test if getCameraDeviceNames() has the same coverage
-TEST_F(CameraHidlTest, getCameraIdList) {
-    CameraHidlEnvironment::Instance()->mProvider->getCameraIdList(
-        [&](auto status, const auto& idList) {
-            ALOGI("getCameraIdList returns status:%d", (int)status);
-            for (size_t i = 0; i < idList.size(); i++) {
-                ALOGI("Camera Id[%zu] is %s", i, idList[i].c_str());
-            }
-            ASSERT_EQ(Status::OK, status);
-            // This is true for internal camera provider.
-            // Not necessary hold for external cameras providers
-            ASSERT_GT(idList.size(), 0u);
-        });
-}
-
-// Test if ICameraProvider::getVendorTags returns Status::OK
-TEST_F(CameraHidlTest, getVendorTags) {
-    CameraHidlEnvironment::Instance()->mProvider->getVendorTags(
-        [&](auto status, const auto& vendorTagSecs) {
-            ALOGI("getVendorTags returns status:%d numSections %zu",
-                    (int)status, vendorTagSecs.size());
-            for (size_t i = 0; i < vendorTagSecs.size(); i++) {
-                ALOGI("Vendor tag section %zu name %s",
-                        i, vendorTagSecs[i].sectionName.c_str());
-                for (size_t j = 0; j < vendorTagSecs[i].tags.size(); j++) {
-                    const auto& tag = vendorTagSecs[i].tags[j];
-                    ALOGI("Vendor tag id %u name %s type %d",
-                            tag.tagId,
-                            tag.tagName.c_str(),
-                            (int) tag.tagType);
-                }
-            }
-            ASSERT_EQ(Status::OK, status);
-        });
-}
-
-// Test if ICameraProvider::setCallback returns Status::OK
-TEST_F(CameraHidlTest, setCallback) {
-    CameraHidlEnvironment* env = CameraHidlEnvironment::Instance();
-    struct ProviderCb : public ICameraProviderCallback {
-        virtual Return<void> cameraDeviceStatusChange(
-                const hidl_string& cameraDeviceName,
-                CameraDeviceStatus newStatus) override {
-            ALOGI("camera device status callback name %s, status %d",
-                    cameraDeviceName.c_str(), (int) newStatus);
-            return Void();
-        }
-
-        virtual Return<void> torchModeStatusChange(
-                const hidl_string& cameraDeviceName,
-                TorchModeStatus newStatus) override {
-            ALOGI("Torch mode status callback name %s, status %d",
-                    cameraDeviceName.c_str(), (int) newStatus);
-            return Void();
-        }
-    };
-    sp<ProviderCb> cb = new ProviderCb;
-    auto status = env->mProvider->setCallback(cb);
-    ASSERT_EQ(Status::OK, status);
-    // TODO: right now no callbacks are fired because there is no external camera
-    //       or torch mode change. Need to test torch API in CameraDevice test later.
-}
-
-// Test if ICameraProvider::getCameraDeviceInterface_V3_x returns Status::OK and non-null device
-TEST_F(CameraHidlTest, getCameraDeviceInterface_V3_x) {
-    CameraHidlEnvironment* env = CameraHidlEnvironment::Instance();
-    hidl_vec<hidl_string> cameraDeviceNames = getCameraDeviceNames();
-
-    for (const auto& name : cameraDeviceNames) {
-        if (getCameraDeviceVersion(name) == CAMERA_DEVICE_API_VERSION_3_2) {
-            env->mProvider->getCameraDeviceInterface_V3_x(
-                name,
-                [&](auto status, const auto& device3_2) {
-                    ALOGI("getCameraDeviceInterface_V3_x returns status:%d", (int)status);
-                    ASSERT_EQ(Status::OK, status);
-                    ASSERT_NE(device3_2, nullptr);
-                });
-        }
-    }
-}
-
-TEST_F(CameraHidlTest, getResourceCost) {
-    CameraHidlEnvironment* env = CameraHidlEnvironment::Instance();
-    hidl_vec<hidl_string> cameraDeviceNames = getCameraDeviceNames();
-
-    for (const auto& name : cameraDeviceNames) {
-        if (getCameraDeviceVersion(name) == CAMERA_DEVICE_API_VERSION_3_2) {
-            ::android::sp<::android::hardware::camera::device::V3_2::ICameraDevice> device3_2;
-            ALOGI("getResourceCost: Testing camera device %s", name.c_str());
-            env->mProvider->getCameraDeviceInterface_V3_x(
-                name,
-                [&](auto status, const auto& device) {
-                    ALOGI("getCameraDeviceInterface_V3_x returns status:%d", (int)status);
-                    ASSERT_EQ(Status::OK, status);
-                    ASSERT_NE(device, nullptr);
-                    device3_2 = device;
-                });
-
-            device3_2->getResourceCost(
-                [&](auto status, const auto& resourceCost) {
-                    ALOGI("getResourceCost returns status:%d", (int)status);
-                    ASSERT_EQ(Status::OK, status);
-                    ALOGI("    Resource cost is %d", resourceCost.resourceCost);
-                    ASSERT_LE(resourceCost.resourceCost, 100u);
-                    for (const auto& name : resourceCost.conflictingDevices) {
-                        ALOGI("    Conflicting device: %s", name.c_str());
-                    }
-                });
-        }
-    }
-}
-
-TEST_F(CameraHidlTest, getCameraCharacteristics) {
-    CameraHidlEnvironment* env = CameraHidlEnvironment::Instance();
-    hidl_vec<hidl_string> cameraDeviceNames = getCameraDeviceNames();
-
-    for (const auto& name : cameraDeviceNames) {
-        if (getCameraDeviceVersion(name) == CAMERA_DEVICE_API_VERSION_3_2) {
-            ::android::sp<::android::hardware::camera::device::V3_2::ICameraDevice> device3_2;
-            ALOGI("getCameraCharacteristics: Testing camera device %s", name.c_str());
-            env->mProvider->getCameraDeviceInterface_V3_x(
-                name,
-                [&](auto status, const auto& device) {
-                    ALOGI("getCameraDeviceInterface_V3_x returns status:%d", (int)status);
-                    ASSERT_EQ(Status::OK, status);
-                    ASSERT_NE(device, nullptr);
-                    device3_2 = device;
-                });
-
-            device3_2->getCameraCharacteristics(
-                [&](auto status, const auto& chars) {
-                    ALOGI("getCameraCharacteristics returns status:%d", (int)status);
-                    ASSERT_EQ(Status::OK, status);
-                    const camera_metadata_t* metadata = (camera_metadata_t*) chars.data();
-                    size_t expectedSize = chars.size();
-                    ASSERT_EQ(0, validate_camera_metadata_structure(metadata, &expectedSize));
-                    size_t entryCount = get_camera_metadata_entry_count(metadata);
-                    // TODO: we can do better than 0 here. Need to check how many required
-                    // characteristics keys we've defined.
-                    ASSERT_GT(entryCount, 0u);
-                    ALOGI("getCameraCharacteristics metadata entry count is %zu", entryCount);
-                });
-        }
-    }
-}
-
-TEST_F(CameraHidlTest, setTorchMode) {
-    CameraHidlEnvironment* env = CameraHidlEnvironment::Instance();
-    hidl_vec<hidl_string> cameraDeviceNames = getCameraDeviceNames();
-    bool torchControlSupported = false;
-
-    CameraHidlEnvironment::Instance()->mProvider->isSetTorchModeSupported(
-        [&](auto status, bool support) {
-            ALOGI("isSetTorchModeSupported returns status:%d supported:%d",
-                    (int)status, support);
-            ASSERT_EQ(Status::OK, status);
-            torchControlSupported = support;
-        });
-
-    for (const auto& name : cameraDeviceNames) {
-        if (getCameraDeviceVersion(name) == CAMERA_DEVICE_API_VERSION_3_2) {
-            ::android::sp<::android::hardware::camera::device::V3_2::ICameraDevice> device3_2;
-            ALOGI("setTorchMode: Testing camera device %s", name.c_str());
-            env->mProvider->getCameraDeviceInterface_V3_x(
-                name,
-                [&](auto status, const auto& device) {
-                    ALOGI("getCameraDeviceInterface_V3_x returns status:%d", (int)status);
-                    ASSERT_EQ(Status::OK, status);
-                    ASSERT_NE(device, nullptr);
-                    device3_2 = device;
-                });
-
-            Status status = device3_2->setTorchMode(TorchMode::ON);
-            ALOGI("setTorchMode return status %d", (int)status);
-            if (!torchControlSupported) {
-                ASSERT_EQ(Status::METHOD_NOT_SUPPORTED, status);
-            } else {
-                ASSERT_TRUE(status == Status::OK || status == Status::OPERATION_NOT_SUPPORTED);
-                if (status == Status::OK) {
-                    status = device3_2->setTorchMode(TorchMode::OFF);
-                    ASSERT_EQ(Status::OK, status);
-                }
-            }
-        }
-    }
-}
-
-TEST_F(CameraHidlTest, dumpState) {
-    CameraHidlEnvironment* env = CameraHidlEnvironment::Instance();
-    hidl_vec<hidl_string> cameraDeviceNames = getCameraDeviceNames();
-
-    for (const auto& name : cameraDeviceNames) {
-        if (getCameraDeviceVersion(name) == CAMERA_DEVICE_API_VERSION_3_2) {
-            ::android::sp<::android::hardware::camera::device::V3_2::ICameraDevice> device3_2;
-            ALOGI("dumpState: Testing camera device %s", name.c_str());
-            env->mProvider->getCameraDeviceInterface_V3_x(
-                name,
-                [&](auto status, const auto& device) {
-                    ALOGI("getCameraDeviceInterface_V3_x returns status:%d", (int)status);
-                    ASSERT_EQ(Status::OK, status);
-                    ASSERT_NE(device, nullptr);
-                    device3_2 = device;
-                });
-
-            native_handle_t* raw_handle = native_handle_create(1, 0);
-            raw_handle->data[0] = 1; // std out
-            hidl_handle handle = raw_handle;
-            device3_2->dumpState(handle);
-            native_handle_delete(raw_handle);
-        }
-    }
-}
-
-// Open, dumpStates, then close
-TEST_F(CameraHidlTest, openClose) {
-    CameraHidlEnvironment* env = CameraHidlEnvironment::Instance();
-    hidl_vec<hidl_string> cameraDeviceNames = getCameraDeviceNames();
-
-    for (const auto& name : cameraDeviceNames) {
-        if (getCameraDeviceVersion(name) == CAMERA_DEVICE_API_VERSION_3_2) {
-            ::android::sp<::android::hardware::camera::device::V3_2::ICameraDevice> device3_2;
-            ALOGI("openClose: Testing camera device %s", name.c_str());
-            env->mProvider->getCameraDeviceInterface_V3_x(
-                name,
-                [&](auto status, const auto& device) {
-                    ALOGI("getCameraDeviceInterface_V3_x returns status:%d", (int)status);
-                    ASSERT_EQ(Status::OK, status);
-                    ASSERT_NE(device, nullptr);
-                    device3_2 = device;
-                });
-
-            sp<EmptyDeviceCb> cb = new EmptyDeviceCb;
-            sp<ICameraDeviceSession> session;
-            device3_2->open(
-                cb,
-                [&](auto status, const auto& newSession) {
-                    ALOGI("device::open returns status:%d", (int)status);
-                    ASSERT_EQ(Status::OK, status);
-                    ASSERT_NE(newSession, nullptr);
-                    session = newSession;
-                });
-
-            native_handle_t* raw_handle = native_handle_create(1, 0);
-            raw_handle->data[0] = 1; // std out
-            hidl_handle handle = raw_handle;
-            device3_2->dumpState(handle);
-            native_handle_delete(raw_handle);
-
-            session->close();
-            // TODO: test all session API calls return INTERNAL_ERROR after close
-            // TODO: keep a wp copy here and verify session cannot be promoted out of this scope
-        }
-    }
-}
-
-TEST_F(CameraHidlTest, constructDefaultRequestSettings) {
-    CameraHidlEnvironment* env = CameraHidlEnvironment::Instance();
-    hidl_vec<hidl_string> cameraDeviceNames = getCameraDeviceNames();
-
-    for (const auto& name : cameraDeviceNames) {
-        if (getCameraDeviceVersion(name) == CAMERA_DEVICE_API_VERSION_3_2) {
-            ::android::sp<::android::hardware::camera::device::V3_2::ICameraDevice> device3_2;
-            ALOGI("constructDefaultRequestSettings: Testing camera device %s", name.c_str());
-            env->mProvider->getCameraDeviceInterface_V3_x(
-                name,
-                [&](auto status, const auto& device) {
-                    ALOGI("getCameraDeviceInterface_V3_x returns status:%d", (int)status);
-                    ASSERT_EQ(Status::OK, status);
-                    ASSERT_NE(device, nullptr);
-                    device3_2 = device;
-                });
-
-            sp<EmptyDeviceCb> cb = new EmptyDeviceCb;
-            sp<ICameraDeviceSession> session;
-            device3_2->open(
-                cb,
-                [&](auto status, const auto& newSession) {
-                    ALOGI("device::open returns status:%d", (int)status);
-                    ASSERT_EQ(Status::OK, status);
-                    ASSERT_NE(newSession, nullptr);
-                    session = newSession;
-                });
-
-            for (uint32_t t = (uint32_t) RequestTemplate::PREVIEW;
-                    t <= (uint32_t) RequestTemplate::MANUAL; t++) {
-                RequestTemplate reqTemplate = (RequestTemplate) t;
-                session->constructDefaultRequestSettings(
-                    reqTemplate,
-                    [&](auto status, const auto& req) {
-                        ALOGI("constructDefaultRequestSettings returns status:%d", (int)status);
-                        if (reqTemplate == RequestTemplate::ZERO_SHUTTER_LAG ||
-                                reqTemplate == RequestTemplate::MANUAL) {
-                            // optional templates
-                            ASSERT_TRUE(status == Status::OK || status == Status::ILLEGAL_ARGUMENT);
-                        } else {
-                            ASSERT_EQ(Status::OK, status);
-                        }
-
-                        if (status == Status::OK) {
-                            const camera_metadata_t* metadata =
-                                (camera_metadata_t*) req.data();
-                            size_t expectedSize = req.size();
-                            ASSERT_EQ(0, validate_camera_metadata_structure(
-                                    metadata, &expectedSize));
-                            size_t entryCount = get_camera_metadata_entry_count(metadata);
-                            // TODO: we can do better than 0 here. Need to check how many required
-                            // request keys we've defined for each template
-                            ASSERT_GT(entryCount, 0u);
-                            ALOGI("template %u metadata entry count is %zu", t, entryCount);
-                        } else {
-                            ASSERT_EQ(0u, req.size());
-                        }
-                    });
-            }
-            session->close();
-        }
-    }
-}
-
-TEST_F(CameraHidlTest, configureStreams) {
-    CameraHidlEnvironment* env = CameraHidlEnvironment::Instance();
-    hidl_vec<hidl_string> cameraDeviceNames = getCameraDeviceNames();
-
-    for (const auto& name : cameraDeviceNames) {
-        if (getCameraDeviceVersion(name) == CAMERA_DEVICE_API_VERSION_3_2) {
-            ::android::sp<::android::hardware::camera::device::V3_2::ICameraDevice> device3_2;
-            ALOGI("configureStreams: Testing camera device %s", name.c_str());
-            env->mProvider->getCameraDeviceInterface_V3_x(
-                name,
-                [&](auto status, const auto& device) {
-                    ALOGI("getCameraDeviceInterface_V3_x returns status:%d", (int)status);
-                    ASSERT_EQ(Status::OK, status);
-                    ASSERT_NE(device, nullptr);
-                    device3_2 = device;
-                });
-
-            sp<EmptyDeviceCb> cb = new EmptyDeviceCb;
-            sp<ICameraDeviceSession> session;
-            device3_2->open(
-                cb,
-                [&](auto status, const auto& newSession) {
-                    ALOGI("device::open returns status:%d", (int)status);
-                    ASSERT_EQ(Status::OK, status);
-                    ASSERT_NE(newSession, nullptr);
-                    session = newSession;
-                });
-
-
-            session->close();
-        }
-    }
-}
-
-int main(int argc, char **argv) {
-  ::testing::AddGlobalTestEnvironment(CameraHidlEnvironment::Instance());
-  ::testing::InitGoogleTest(&argc, argv);
-  int status = RUN_ALL_TESTS();
-  ALOGI("Test result = %d", status);
-  return status;
-}
diff --git a/contexthub/1.0/default/service.cpp b/contexthub/1.0/default/service.cpp
index db9a4e7..8c676b4 100644
--- a/contexthub/1.0/default/service.cpp
+++ b/contexthub/1.0/default/service.cpp
@@ -23,5 +23,5 @@
 using android::hardware::defaultPassthroughServiceImplementation;
 
 int main() {
-    return defaultPassthroughServiceImplementation<IContexthub>("context_hub");
+    return defaultPassthroughServiceImplementation<IContexthub>();
 }
diff --git a/contexthub/1.0/vts/Contexthub.vts b/contexthub/1.0/vts/Contexthub.vts
deleted file mode 100644
index a5cdc81..0000000
--- a/contexthub/1.0/vts/Contexthub.vts
+++ /dev/null
@@ -1,147 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "IContexthub"
-
-package: "android.hardware.contexthub"
-
-import: "android.hardware.contexthub@1.0::IContexthubCallback"
-import: "android.hardware.contexthub@1.0::types"
-import: "android.hidl.base@1.0::types"
-
-interface: {
-    api: {
-        name: "getHubs"
-        return_type_hidl: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_STRUCT
-                predefined_type: "::android::hardware::contexthub::V1_0::ContextHub"
-            }
-        }
-    }
-
-    api: {
-        name: "registerCallback"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::contexthub::V1_0::Result"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-        arg: {
-            type: TYPE_HIDL_CALLBACK
-            predefined_type: "::android::hardware::contexthub::V1_0::IContexthubCallback"
-        }
-    }
-
-    api: {
-        name: "sendMessageToHub"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::contexthub::V1_0::Result"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::contexthub::V1_0::ContextHubMsg"
-        }
-    }
-
-    api: {
-        name: "loadNanoApp"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::contexthub::V1_0::Result"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::contexthub::V1_0::NanoAppBinary"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-    }
-
-    api: {
-        name: "unloadNanoApp"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::contexthub::V1_0::Result"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-    }
-
-    api: {
-        name: "enableNanoApp"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::contexthub::V1_0::Result"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-    }
-
-    api: {
-        name: "disableNanoApp"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::contexthub::V1_0::Result"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-    }
-
-    api: {
-        name: "queryApps"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::contexthub::V1_0::Result"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-    }
-
-}
diff --git a/contexthub/1.0/vts/ContexthubCallback.vts b/contexthub/1.0/vts/ContexthubCallback.vts
deleted file mode 100644
index 59ff2fe..0000000
--- a/contexthub/1.0/vts/ContexthubCallback.vts
+++ /dev/null
@@ -1,62 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "IContexthubCallback"
-
-package: "android.hardware.contexthub"
-
-import: "android.hardware.contexthub@1.0::types"
-import: "android.hidl.base@1.0::types"
-
-interface: {
-    api: {
-        name: "handleClientMsg"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::contexthub::V1_0::ContextHubMsg"
-        }
-    }
-
-    api: {
-        name: "handleTxnResult"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::contexthub::V1_0::TransactionResult"
-        }
-    }
-
-    api: {
-        name: "handleHubEvent"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::contexthub::V1_0::AsyncEventType"
-        }
-    }
-
-    api: {
-        name: "handleAppAbort"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-    }
-
-    api: {
-        name: "handleAppsInfo"
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_STRUCT
-                predefined_type: "::android::hardware::contexthub::V1_0::HubAppInfo"
-            }
-        }
-    }
-
-}
diff --git a/contexthub/1.0/vts/functional/Android.bp b/contexthub/1.0/vts/functional/Android.bp
index 1c011a0..c3c121c 100644
--- a/contexthub/1.0/vts/functional/Android.bp
+++ b/contexthub/1.0/vts/functional/Android.bp
@@ -15,9 +15,9 @@
 //
 
 cc_test {
-    name: "contexthub_hidl_hal_test",
+    name: "VtsHalContexthubV1_0TargetTest",
     gtest: true,
-    srcs: ["contexthub_hidl_hal_test.cpp"],
+    srcs: ["VtsHalContexthubV1_0TargetTest.cpp"],
     shared_libs: [
         "liblog",
         "libhidlbase",
diff --git a/contexthub/1.0/vts/functional/contexthub_hidl_hal_test.cpp b/contexthub/1.0/vts/functional/VtsHalContexthubV1_0TargetTest.cpp
similarity index 100%
rename from contexthub/1.0/vts/functional/contexthub_hidl_hal_test.cpp
rename to contexthub/1.0/vts/functional/VtsHalContexthubV1_0TargetTest.cpp
diff --git a/contexthub/1.0/vts/types.vts b/contexthub/1.0/vts/types.vts
deleted file mode 100644
index 4f5dfcf..0000000
--- a/contexthub/1.0/vts/types.vts
+++ /dev/null
@@ -1,477 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "types"
-
-package: "android.hardware.contexthub"
-
-
-attribute: {
-    name: "::android::hardware::contexthub::V1_0::Result"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "OK"
-        scalar_value: {
-            uint32_t: 0
-        }
-        enumerator: "UNKNOWN_FAILURE"
-        scalar_value: {
-            uint32_t: 1
-        }
-        enumerator: "BAD_PARAMS"
-        scalar_value: {
-            uint32_t: 2
-        }
-        enumerator: "NOT_INIT"
-        scalar_value: {
-            uint32_t: 3
-        }
-        enumerator: "TRANSACTION_FAILED"
-        scalar_value: {
-            uint32_t: 4
-        }
-        enumerator: "TRANSACTION_PENDING"
-        scalar_value: {
-            uint32_t: 5
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::contexthub::V1_0::NanoAppFlags"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "SIGNED"
-        scalar_value: {
-            uint32_t: 1
-        }
-        enumerator: "ENCRYPTED"
-        scalar_value: {
-            uint32_t: 2
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::contexthub::V1_0::NanoAppBinary"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "appId"
-        type: TYPE_SCALAR
-        scalar_type: "uint64_t"
-    }
-    struct_value: {
-        name: "appVersion"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "flags"
-        type: TYPE_MASK
-        scalar_type: "uint32_t"
-        predefined_type: "::android::hardware::contexthub::V1_0::NanoAppFlags"
-    }
-    struct_value: {
-        name: "targetChreApiMajorVersion"
-        type: TYPE_SCALAR
-        scalar_type: "uint8_t"
-    }
-    struct_value: {
-        name: "targetChreApiMinorVersion"
-        type: TYPE_SCALAR
-        scalar_type: "uint8_t"
-    }
-    struct_value: {
-        name: "customBinary"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::contexthub::V1_0::SensorType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "RESERVED"
-        scalar_value: {
-            uint32_t: 0
-        }
-        enumerator: "ACCELEROMETER"
-        scalar_value: {
-            uint32_t: 1
-        }
-        enumerator: "GYROSCOPE"
-        scalar_value: {
-            uint32_t: 2
-        }
-        enumerator: "MAGNETOMETER"
-        scalar_value: {
-            uint32_t: 3
-        }
-        enumerator: "BAROMETER"
-        scalar_value: {
-            uint32_t: 4
-        }
-        enumerator: "PROXIMITY_SENSOR"
-        scalar_value: {
-            uint32_t: 5
-        }
-        enumerator: "AMBIENT_LIGHT_SENSOR"
-        scalar_value: {
-            uint32_t: 6
-        }
-        enumerator: "STATIONARY_DETECT"
-        scalar_value: {
-            uint32_t: 7
-        }
-        enumerator: "INSTANT_MOTION_DETECT"
-        scalar_value: {
-            uint32_t: 8
-        }
-        enumerator: "GPS"
-        scalar_value: {
-            uint32_t: 256
-        }
-        enumerator: "WIFI"
-        scalar_value: {
-            uint32_t: 512
-        }
-        enumerator: "AUDIO"
-        scalar_value: {
-            uint32_t: 768
-        }
-        enumerator: "CAMERA"
-        scalar_value: {
-            uint32_t: 1024
-        }
-        enumerator: "BLE"
-        scalar_value: {
-            uint32_t: 1280
-        }
-        enumerator: "WWAN"
-        scalar_value: {
-            uint32_t: 1536
-        }
-        enumerator: "PRIVATE_SENSOR_BASE"
-        scalar_value: {
-            uint32_t: 65536
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::contexthub::V1_0::PhysicalSensor"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "sensorType"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::contexthub::V1_0::SensorType"
-    }
-    struct_value: {
-        name: "type"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "name"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "vendor"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "version"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "fifoReservedCount"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "fifoMaxCount"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "minDelayMs"
-        type: TYPE_SCALAR
-        scalar_type: "uint64_t"
-    }
-    struct_value: {
-        name: "maxDelayMs"
-        type: TYPE_SCALAR
-        scalar_type: "uint64_t"
-    }
-    struct_value: {
-        name: "peakPowerMw"
-        type: TYPE_SCALAR
-        scalar_type: "float_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::contexthub::V1_0::ContextHub"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "name"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "vendor"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "toolchain"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "platformVersion"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "toolchainVersion"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "hubId"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "peakMips"
-        type: TYPE_SCALAR
-        scalar_type: "float_t"
-    }
-    struct_value: {
-        name: "stoppedPowerDrawMw"
-        type: TYPE_SCALAR
-        scalar_type: "float_t"
-    }
-    struct_value: {
-        name: "sleepPowerDrawMw"
-        type: TYPE_SCALAR
-        scalar_type: "float_t"
-    }
-    struct_value: {
-        name: "peakPowerDrawMw"
-        type: TYPE_SCALAR
-        scalar_type: "float_t"
-    }
-    struct_value: {
-        name: "connectedSensors"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::contexthub::V1_0::PhysicalSensor"
-        }
-    }
-    struct_value: {
-        name: "maxSupportedMsgLen"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "chrePlatformId"
-        type: TYPE_SCALAR
-        scalar_type: "uint64_t"
-    }
-    struct_value: {
-        name: "chreApiMajorVersion"
-        type: TYPE_SCALAR
-        scalar_type: "uint8_t"
-    }
-    struct_value: {
-        name: "chreApiMinorVersion"
-        type: TYPE_SCALAR
-        scalar_type: "uint8_t"
-    }
-    struct_value: {
-        name: "chrePatchVersion"
-        type: TYPE_SCALAR
-        scalar_type: "uint16_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::contexthub::V1_0::HostEndPoint"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint16_t"
-
-        enumerator: "BROADCAST"
-        scalar_value: {
-            uint16_t: 65535
-        }
-        enumerator: "UNSPECIFIED"
-        scalar_value: {
-            uint16_t: 65534
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::contexthub::V1_0::ContextHubMsg"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "appName"
-        type: TYPE_SCALAR
-        scalar_type: "uint64_t"
-    }
-    struct_value: {
-        name: "hostEndPoint"
-        type: TYPE_SCALAR
-        scalar_type: "uint16_t"
-    }
-    struct_value: {
-        name: "msgType"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "msg"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::contexthub::V1_0::HubMemoryType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "MAIN"
-        scalar_value: {
-            uint32_t: 0
-        }
-        enumerator: "SECONDARY"
-        scalar_value: {
-            uint32_t: 1
-        }
-        enumerator: "TCM"
-        scalar_value: {
-            uint32_t: 2
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::contexthub::V1_0::HubMemoryFlag"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "READ"
-        scalar_value: {
-            uint32_t: 1
-        }
-        enumerator: "WRITE"
-        scalar_value: {
-            uint32_t: 2
-        }
-        enumerator: "EXEC"
-        scalar_value: {
-            uint32_t: 4
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::contexthub::V1_0::MemRange"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "totalBytes"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "freeBytes"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "type"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::contexthub::V1_0::HubMemoryType"
-    }
-    struct_value: {
-        name: "flags"
-        type: TYPE_MASK
-        scalar_type: "uint32_t"
-        predefined_type: "::android::hardware::contexthub::V1_0::HubMemoryFlag"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::contexthub::V1_0::AsyncEventType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "RESTARTED"
-        scalar_value: {
-            uint32_t: 1
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::contexthub::V1_0::TransactionResult"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "SUCCESS"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "FAILURE"
-        scalar_value: {
-            int32_t: 1
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::contexthub::V1_0::HubAppInfo"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "appId"
-        type: TYPE_SCALAR
-        scalar_type: "uint64_t"
-    }
-    struct_value: {
-        name: "version"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "memUsage"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::contexthub::V1_0::MemRange"
-        }
-    }
-    struct_value: {
-        name: "enabled"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-}
-
diff --git a/evs/1.0/default/EvsCamera.cpp b/evs/1.0/default/EvsCamera.cpp
index a539b23..df7e844 100644
--- a/evs/1.0/default/EvsCamera.cpp
+++ b/evs/1.0/default/EvsCamera.cpp
@@ -69,7 +69,8 @@
     mHeight = (mDescription.defaultVerResolution) ? mDescription.defaultVerResolution : 480;
 
     mFormat = HAL_PIXEL_FORMAT_RGBA_8888;
-    mUsage  = GRALLOC_USAGE_HW_TEXTURE | GRALLOC_USAGE_HW_CAMERA_WRITE;
+    mUsage  = GRALLOC_USAGE_HW_TEXTURE | GRALLOC_USAGE_HW_CAMERA_WRITE |
+              GRALLOC_USAGE_SW_READ_RARELY | GRALLOC_USAGE_SW_WRITE_RARELY;
 }
 
 
@@ -440,7 +441,7 @@
 }
 
 
-void EvsCamera::fillTestFrame(BufferDesc buff) {
+void EvsCamera::fillTestFrame(const BufferDesc& buff) {
     // Lock our output buffer for writing
     uint32_t *pixels = nullptr;
     GraphicBufferMapper &mapper = GraphicBufferMapper::get();
@@ -474,7 +475,8 @@
             pixels[col] = expectedPixel;
         }
         // Point to the next row
-        pixels = pixels + (buff.stride / sizeof(*pixels));
+        // NOTE:  stride retrieved from gralloc is in units of pixels
+        pixels = pixels + buff.stride;
     }
 
     // Release our output buffer
diff --git a/evs/1.0/default/EvsCamera.h b/evs/1.0/default/EvsCamera.h
index 8d644a0..02a677c 100644
--- a/evs/1.0/default/EvsCamera.h
+++ b/evs/1.0/default/EvsCamera.h
@@ -58,7 +58,7 @@
     unsigned decreaseAvailableFrames_Locked(unsigned numToRemove);
 
     void generateFrames();
-    void fillTestFrame(BufferDesc buff);
+    void fillTestFrame(const BufferDesc& buff);
 
     CameraDesc                  mDescription = {};  // The properties of this camera
 
diff --git a/evs/1.0/default/EvsDisplay.cpp b/evs/1.0/default/EvsDisplay.cpp
index 7208395..bbfff35 100644
--- a/evs/1.0/default/EvsDisplay.cpp
+++ b/evs/1.0/default/EvsDisplay.cpp
@@ -169,7 +169,7 @@
         mBuffer.memHandle = handle;
         mFrameBusy = false;
         ALOGD("Allocated new buffer %p with stride %u",
-              mBuffer.memHandle.getNativeHandle(), mStride);
+              mBuffer.memHandle.getNativeHandle(), mBuffer.stride);
     }
 
     // Do we have a frame available?
@@ -263,7 +263,8 @@
                     continue;
                 }
                 // Walk across this row (we'll step rows below)
-                if (pixels[col] != expectedPixel) {
+                uint32_t receivedPixel = pixels[col];
+                if (receivedPixel != expectedPixel) {
                     ALOGE("Pixel check mismatch in frame buffer");
                     frameLooksGood = false;
                     break;
@@ -274,8 +275,8 @@
                 break;
             }
 
-            // Point to the next row
-            pixels = pixels + (mStride / sizeof(*pixels));
+            // Point to the next row (NOTE:  gralloc reports stride in units of pixels)
+            pixels = pixels + mBuffer.stride;
         }
 
         // Ensure we don't see the same buffer twice without it being rewritten
diff --git a/evs/1.0/default/EvsDisplay.h b/evs/1.0/default/EvsDisplay.h
index 6e0111e..f4d7ee9 100644
--- a/evs/1.0/default/EvsDisplay.h
+++ b/evs/1.0/default/EvsDisplay.h
@@ -42,7 +42,6 @@
 private:
     DisplayDesc     mInfo           = {};
     BufferDesc      mBuffer         = {};       // A graphics buffer into which we'll store images
-    uint32_t        mStride         = 0;        // Bytes per line in the buffer
 
     bool            mFrameBusy      = false;    // A flag telling us our buffer is in use
     DisplayState    mRequestedState = DisplayState::NOT_VISIBLE;
diff --git a/gatekeeper/1.0/vts/Gatekeeper.vts b/gatekeeper/1.0/vts/Gatekeeper.vts
deleted file mode 100644
index 9e63488..0000000
--- a/gatekeeper/1.0/vts/Gatekeeper.vts
+++ /dev/null
@@ -1,94 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "IGatekeeper"
-
-package: "android.hardware.gatekeeper"
-
-import: "android.hardware.gatekeeper@1.0::types"
-import: "android.hidl.base@1.0::types"
-
-interface: {
-    api: {
-        name: "enroll"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::gatekeeper::V1_0::GatekeeperResponse"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-        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"
-            }
-        }
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-    }
-
-    api: {
-        name: "verify"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::gatekeeper::V1_0::GatekeeperResponse"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        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: "deleteUser"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::gatekeeper::V1_0::GatekeeperResponse"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-    }
-
-    api: {
-        name: "deleteAllUsers"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::gatekeeper::V1_0::GatekeeperResponse"
-        }
-    }
-
-}
diff --git a/gatekeeper/1.0/vts/functional/Android.bp b/gatekeeper/1.0/vts/functional/Android.bp
index 70a85c6..0b6ecfe 100644
--- a/gatekeeper/1.0/vts/functional/Android.bp
+++ b/gatekeeper/1.0/vts/functional/Android.bp
@@ -15,9 +15,9 @@
 //
 
 cc_test {
-    name: "gatekeeper_hidl_hal_test",
+    name: "VtsHalGatekeeperV1_0TargetTest",
     gtest: true,
-    srcs: ["gatekeeper_hidl_hal_test.cpp"],
+    srcs: ["VtsHalGatekeeperV1_0TargetTest.cpp"],
     shared_libs: [
         "libbase",
         "liblog",
diff --git a/gatekeeper/1.0/vts/functional/gatekeeper_hidl_hal_test.cpp b/gatekeeper/1.0/vts/functional/VtsHalGatekeeperV1_0TargetTest.cpp
similarity index 92%
rename from gatekeeper/1.0/vts/functional/gatekeeper_hidl_hal_test.cpp
rename to gatekeeper/1.0/vts/functional/VtsHalGatekeeperV1_0TargetTest.cpp
index 67b4482..7da2293 100644
--- a/gatekeeper/1.0/vts/functional/gatekeeper_hidl_hal_test.cpp
+++ b/gatekeeper/1.0/vts/functional/VtsHalGatekeeperV1_0TargetTest.cpp
@@ -281,7 +281,6 @@
  */
 TEST_F(GatekeeperHidlTest, UntrustedReenroll) {
   GatekeeperResponse enrollRsp;
-  GatekeeperRequest reenrollReq;
   GatekeeperResponse reenrollRsp;
   GatekeeperResponse verifyRsp;
   GatekeeperResponse reenrollVerifyRsp;
@@ -349,6 +348,37 @@
 }
 
 /**
+ * Ensure we can not delete a user that does not exist
+ */
+TEST_F(GatekeeperHidlTest, DeleteInvalidUserTest) {
+  hidl_vec<uint8_t> password;
+  GatekeeperResponse enrollRsp;
+  GatekeeperResponse verifyRsp;
+  GatekeeperResponse delRsp1;
+  GatekeeperResponse delRsp2;
+  ALOGI("Testing deleteUser (expected failure)");
+  setUid(10002);
+  generatePassword(password, 0);
+  enrollNewPassword(password, enrollRsp, true);
+  verifyPassword(password, enrollRsp.data, 0, verifyRsp, true);
+  ALOGI("Enroll+Verify done");
+
+  // Delete the user
+  doDeleteUser(delRsp1);
+  EXPECT_EQ(UINT32_C(0), delRsp1.data.size());
+  EXPECT_TRUE(delRsp1.code == GatekeeperStatusCode::ERROR_NOT_IMPLEMENTED ||
+              delRsp1.code == GatekeeperStatusCode::STATUS_OK);
+
+  // Delete the user again
+  doDeleteUser(delRsp2);
+  EXPECT_EQ(UINT32_C(0), delRsp2.data.size());
+  EXPECT_TRUE(delRsp2.code == GatekeeperStatusCode::ERROR_NOT_IMPLEMENTED ||
+              delRsp2.code == GatekeeperStatusCode::ERROR_GENERAL_FAILURE);
+  ALOGI("DeleteUser done");
+  ALOGI("Testing deleteUser done: rsp=%" PRIi32, delRsp2.code);
+}
+
+/**
  * Ensure we can not verify passwords after we enrolled them and then deleted
  * all users
  */
diff --git a/gatekeeper/1.0/vts/types.vts b/gatekeeper/1.0/vts/types.vts
deleted file mode 100644
index 3de9a14..0000000
--- a/gatekeeper/1.0/vts/types.vts
+++ /dev/null
@@ -1,59 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "types"
-
-package: "android.hardware.gatekeeper"
-
-
-attribute: {
-    name: "::android::hardware::gatekeeper::V1_0::GatekeeperStatusCode"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "STATUS_REENROLL"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "STATUS_OK"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "ERROR_GENERAL_FAILURE"
-        scalar_value: {
-            int32_t: -1
-        }
-        enumerator: "ERROR_RETRY_TIMEOUT"
-        scalar_value: {
-            int32_t: -2
-        }
-        enumerator: "ERROR_NOT_IMPLEMENTED"
-        scalar_value: {
-            int32_t: -3
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::gatekeeper::V1_0::GatekeeperResponse"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "code"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::gatekeeper::V1_0::GatekeeperStatusCode"
-    }
-    struct_value: {
-        name: "timeout"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "data"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-}
-
diff --git a/gnss/1.0/default/AGnss.cpp b/gnss/1.0/default/AGnss.cpp
index 52fdc26..29c6ddd 100644
--- a/gnss/1.0/default/AGnss.cpp
+++ b/gnss/1.0/default/AGnss.cpp
@@ -41,6 +41,7 @@
 
 AGnss::~AGnss() {
     sThreadFuncArgsList.clear();
+    sInterfaceExists = false;
 }
 
 void AGnss::statusCb(AGpsStatus* status) {
@@ -78,7 +79,10 @@
                     /*
                      * Callback to client with agnssStatusIpV4Cb.
                      */
-                    sAGnssCbIface->agnssStatusIpV4Cb(aGnssStatusIpV4);
+                    auto ret = sAGnssCbIface->agnssStatusIpV4Cb(aGnssStatusIpV4);
+                    if (!ret.isOk()) {
+                        ALOGE("%s: Unable to invoke callback", __func__);
+                    }
                     break;
                 }
             case AF_INET6:
@@ -96,7 +100,10 @@
                             &(status->addr));
                     memcpy(&(aGnssStatusIpV6.ipV6Addr[0]), in6->sin6_addr.s6_addr,
                            aGnssStatusIpV6.ipV6Addr.size());
-                    sAGnssCbIface->agnssStatusIpV6Cb(aGnssStatusIpV6);
+                    auto ret = sAGnssCbIface->agnssStatusIpV6Cb(aGnssStatusIpV6);
+                    if (!ret.isOk()) {
+                        ALOGE("%s: Unable to invoke callback", __func__);
+                    }
                     break;
                 }
              default:
@@ -117,7 +124,10 @@
         /*
          * Callback to client with agnssStatusIpV4Cb.
          */
-        sAGnssCbIface->agnssStatusIpV4Cb(aGnssStatusIpV4);
+        auto ret = sAGnssCbIface->agnssStatusIpV4Cb(aGnssStatusIpV4);
+        if (!ret.isOk()) {
+            ALOGE("%s: Unable to invoke callback", __func__);
+        }
     } else {
         ALOGE("%s: Invalid size for AGPS Status", __func__);
     }
diff --git a/gnss/1.0/default/AGnssRil.cpp b/gnss/1.0/default/AGnssRil.cpp
index 480571d..1458327 100644
--- a/gnss/1.0/default/AGnssRil.cpp
+++ b/gnss/1.0/default/AGnssRil.cpp
@@ -42,6 +42,7 @@
 
 AGnssRil::~AGnssRil() {
     sThreadFuncArgsList.clear();
+    sInterfaceExists = false;
 }
 
 void AGnssRil::requestSetId(uint32_t flags) {
@@ -50,7 +51,10 @@
         return;
     }
 
-    sAGnssRilCbIface->requestSetIdCb(flags);
+    auto ret = sAGnssRilCbIface->requestSetIdCb(flags);
+    if (!ret.isOk()) {
+        ALOGE("%s: Unable to invoke callback", __func__);
+    }
 }
 
 void AGnssRil::requestRefLoc(uint32_t /*flags*/) {
@@ -59,7 +63,10 @@
         return;
     }
 
-    sAGnssRilCbIface->requestRefLocCb();
+    auto ret = sAGnssRilCbIface->requestRefLocCb();
+    if (!ret.isOk()) {
+        ALOGE("%s: Unable to invoke callback", __func__);
+    }
 }
 
 pthread_t AGnssRil::createThreadCb(const char* name, void (*start)(void*), void* arg) {
diff --git a/gnss/1.0/default/Gnss.cpp b/gnss/1.0/default/Gnss.cpp
index a2a99a0..10024fb 100644
--- a/gnss/1.0/default/Gnss.cpp
+++ b/gnss/1.0/default/Gnss.cpp
@@ -60,6 +60,7 @@
 }
 
 Gnss::~Gnss() {
+    sInterfaceExists = false;
     sThreadFuncArgsList.clear();
 }
 
@@ -75,7 +76,10 @@
     }
 
     android::hardware::gnss::V1_0::GnssLocation gnssLocation = convertToGnssLocation(location);
-    sGnssCbIface->gnssLocationCb(gnssLocation);
+    auto ret = sGnssCbIface->gnssLocationCb(gnssLocation);
+    if (!ret.isOk()) {
+        ALOGE("%s: Unable to invoke callback", __func__);
+    }
 }
 
 void Gnss::statusCb(GpsStatus* gnssStatus) {
@@ -92,7 +96,10 @@
     IGnssCallback::GnssStatusValue status =
             static_cast<IGnssCallback::GnssStatusValue>(gnssStatus->status);
 
-    sGnssCbIface->gnssStatusCb(status);
+    auto ret = sGnssCbIface->gnssStatusCb(status);
+    if (!ret.isOk()) {
+        ALOGE("%s: Unable to invoke callback", __func__);
+    }
 }
 
 void Gnss::gnssSvStatusCb(GnssSvStatus* status) {
@@ -131,7 +138,10 @@
         svStatus.gnssSvList[i] = gnssSvInfo;
     }
 
-    sGnssCbIface->gnssSvStatusCb(svStatus);
+    auto ret = sGnssCbIface->gnssSvStatusCb(svStatus);
+    if (!ret.isOk()) {
+        ALOGE("%s: Unable to invoke callback", __func__);
+    }
 }
 
 /*
@@ -231,7 +241,10 @@
         }
     }
 
-    sGnssCbIface->gnssSvStatusCb(svStatus);
+    auto ret = sGnssCbIface->gnssSvStatusCb(svStatus);
+    if (!ret.isOk()) {
+        ALOGE("%s: Unable to invoke callback", __func__);
+    }
 }
 
 void Gnss::nmeaCb(GpsUtcTime timestamp, const char* nmea, int length) {
@@ -242,7 +255,10 @@
 
     android::hardware::hidl_string nmeaString;
     nmeaString.setToExternal(nmea, length);
-    sGnssCbIface->gnssNmeaCb(timestamp, nmeaString);
+    auto ret = sGnssCbIface->gnssNmeaCb(timestamp, nmeaString);
+    if (!ret.isOk()) {
+        ALOGE("%s: Unable to invoke callback", __func__);
+    }
 }
 
 void Gnss::setCapabilitiesCb(uint32_t capabilities) {
@@ -251,7 +267,10 @@
         return;
     }
 
-    sGnssCbIface->gnssSetCapabilitesCb(capabilities);
+    auto ret = sGnssCbIface->gnssSetCapabilitesCb(capabilities);
+    if (!ret.isOk()) {
+        ALOGE("%s: Unable to invoke callback", __func__);
+    }
 }
 
 void Gnss::acquireWakelockCb() {
@@ -298,7 +317,10 @@
             ALOGI("%s: GNSS HAL Wakelock acquired due to gps: %d, fused: %d", __func__,
                     sWakelockHeldGnss, sWakelockHeldFused);
             sWakelockHeld = true;
-            sGnssCbIface->gnssAcquireWakelockCb();
+            auto ret = sGnssCbIface->gnssAcquireWakelockCb();
+            if (!ret.isOk()) {
+                ALOGE("%s: Unable to invoke callback", __func__);
+            }
         }
     } else {
         if (sWakelockHeld) {
@@ -309,7 +331,10 @@
             ALOGW("%s: GNSS HAL Wakelock released, duplicate request", __func__);
         }
         sWakelockHeld = false;
-        sGnssCbIface->gnssReleaseWakelockCb();
+        auto ret = sGnssCbIface->gnssReleaseWakelockCb();
+        if (!ret.isOk()) {
+            ALOGE("%s: Unable to invoke callback", __func__);
+        }
     }
 }
 
@@ -319,7 +344,10 @@
         return;
     }
 
-    sGnssCbIface->gnssRequestTimeCb();
+    auto ret = sGnssCbIface->gnssRequestTimeCb();
+    if (!ret.isOk()) {
+            ALOGE("%s: Unable to invoke callback", __func__);
+    }
 }
 
 pthread_t Gnss::createThreadCb(const char* name, void (*start)(void*), void* arg) {
@@ -341,7 +369,10 @@
         .yearOfHw = info->year_of_hw
     };
 
-    sGnssCbIface->gnssSetSystemInfoCb(gnssInfo);
+    auto ret = sGnssCbIface->gnssSetSystemInfoCb(gnssInfo);
+    if (!ret.isOk()) {
+            ALOGE("%s: Unable to invoke callback", __func__);
+    }
 }
 
 
@@ -434,7 +465,10 @@
 Return<sp<IAGnssRil>> Gnss::getExtensionAGnssRil()  {
     if (mGnssIface == nullptr) {
         ALOGE("%s: Gnss interface is unavailable", __func__);
-    } else {
+        return nullptr;
+    }
+
+    if (mGnssRil == nullptr) {
         const AGpsRilInterface* agpsRilIface = static_cast<const AGpsRilInterface*>(
                 mGnssIface->get_extension(AGPS_RIL_INTERFACE));
         if (agpsRilIface == nullptr) {
@@ -449,7 +483,10 @@
 Return<sp<IGnssConfiguration>> Gnss::getExtensionGnssConfiguration()  {
     if (mGnssIface == nullptr) {
         ALOGE("%s: Gnss interface is unavailable", __func__);
-    } else {
+        return nullptr;
+    }
+
+    if (mGnssConfig == nullptr) {
         const GnssConfigurationInterface* gnssConfigIface =
                 static_cast<const GnssConfigurationInterface*>(
                         mGnssIface->get_extension(GNSS_CONFIGURATION_INTERFACE));
@@ -462,10 +499,14 @@
     }
     return mGnssConfig;
 }
+
 Return<sp<IGnssGeofencing>> Gnss::getExtensionGnssGeofencing()  {
     if (mGnssIface == nullptr) {
         ALOGE("%s: Gnss interface is unavailable", __func__);
-    } else {
+        return nullptr;
+    }
+
+    if (mGnssGeofencingIface == nullptr) {
         const GpsGeofencingInterface* gpsGeofencingIface =
                 static_cast<const GpsGeofencingInterface*>(
                         mGnssIface->get_extension(GPS_GEOFENCING_INTERFACE));
@@ -483,7 +524,10 @@
 Return<sp<IAGnss>> Gnss::getExtensionAGnss()  {
     if (mGnssIface == nullptr) {
         ALOGE("%s: Gnss interface is unavailable", __func__);
-    } else {
+        return nullptr;
+    }
+
+    if (mAGnssIface == nullptr) {
         const AGpsInterface* agpsIface = static_cast<const AGpsInterface*>(
                 mGnssIface->get_extension(AGPS_INTERFACE));
         if (agpsIface == nullptr) {
@@ -498,7 +542,10 @@
 Return<sp<IGnssNi>> Gnss::getExtensionGnssNi()  {
     if (mGnssIface == nullptr) {
         ALOGE("%s: Gnss interface is unavailable", __func__);
-    } else {
+        return nullptr;
+    }
+
+    if (mGnssNi == nullptr) {
         const GpsNiInterface* gpsNiIface = static_cast<const GpsNiInterface*>(
                 mGnssIface->get_extension(GPS_NI_INTERFACE));
         if (gpsNiIface == nullptr) {
@@ -513,7 +560,10 @@
 Return<sp<IGnssMeasurement>> Gnss::getExtensionGnssMeasurement() {
     if (mGnssIface == nullptr) {
         ALOGE("%s: Gnss interface is unavailable", __func__);
-    } else {
+        return nullptr;
+    }
+
+    if (mGnssMeasurement == nullptr) {
         const GpsMeasurementInterface* gpsMeasurementIface =
                 static_cast<const GpsMeasurementInterface*>(
                         mGnssIface->get_extension(GPS_MEASUREMENT_INTERFACE));
@@ -530,7 +580,10 @@
 Return<sp<IGnssNavigationMessage>> Gnss::getExtensionGnssNavigationMessage() {
     if (mGnssIface == nullptr) {
         ALOGE("%s: Gnss interface is unavailable", __func__);
-    } else {
+        return nullptr;
+    }
+
+    if (mGnssNavigationMessage == nullptr) {
         const GpsNavigationMessageInterface* gpsNavigationMessageIface =
                 static_cast<const GpsNavigationMessageInterface*>(
                         mGnssIface->get_extension(GPS_NAVIGATION_MESSAGE_INTERFACE));
@@ -549,7 +602,10 @@
 Return<sp<IGnssXtra>> Gnss::getExtensionXtra()  {
     if (mGnssIface == nullptr) {
         ALOGE("%s: Gnss interface is unavailable", __func__);
-    } else {
+        return nullptr;
+    }
+
+    if (mGnssXtraIface == nullptr) {
         const GpsXtraInterface* gpsXtraIface = static_cast<const GpsXtraInterface*>(
                 mGnssIface->get_extension(GPS_XTRA_INTERFACE));
 
@@ -566,7 +622,10 @@
 Return<sp<IGnssDebug>> Gnss::getExtensionGnssDebug()  {
     if (mGnssIface == nullptr) {
         ALOGE("%s: Gnss interface is unavailable", __func__);
-    } else {
+        return nullptr;
+    }
+
+    if (mGnssDebug == nullptr) {
         const GpsDebugInterface* gpsDebugIface = static_cast<const GpsDebugInterface*>(
                 mGnssIface->get_extension(GPS_DEBUG_INTERFACE));
 
@@ -583,7 +642,10 @@
 Return<sp<IGnssBatching>> Gnss::getExtensionGnssBatching()  {
     if (mGnssIface == nullptr) {
         ALOGE("%s: Gnss interface is unavailable", __func__);
-    } else {
+        return nullptr;
+    }
+
+    if (mGnssBatching == nullptr) {
         hw_module_t* module;
         const FlpLocationInterface* flpLocationIface = nullptr;
         int err = hw_get_module(FUSED_LOCATION_HARDWARE_MODULE_ID, (hw_module_t const**)&module);
diff --git a/gnss/1.0/default/GnssBatching.cpp b/gnss/1.0/default/GnssBatching.cpp
index 5e383e7..02b38cb 100644
--- a/gnss/1.0/default/GnssBatching.cpp
+++ b/gnss/1.0/default/GnssBatching.cpp
@@ -103,7 +103,10 @@
         gnssLocations.push_back(convertToGnssLocation(locations[iLocation]));
     }
 
-    sGnssBatchingCbIface->gnssLocationBatchCb(gnssLocations);
+    auto ret = sGnssBatchingCbIface->gnssLocationBatchCb(gnssLocations);
+    if (!ret.isOk()) {
+        ALOGE("%s: Unable to invoke callback", __func__);
+    }
 }
 
 void GnssBatching::acquireWakelockCb() {
diff --git a/gnss/1.0/default/GnssGeofencing.cpp b/gnss/1.0/default/GnssGeofencing.cpp
index f42de42..54c4aaa 100644
--- a/gnss/1.0/default/GnssGeofencing.cpp
+++ b/gnss/1.0/default/GnssGeofencing.cpp
@@ -48,6 +48,7 @@
 
 GnssGeofencing::~GnssGeofencing() {
     sThreadFuncArgsList.clear();
+    sInterfaceExists = false;
 }
 void GnssGeofencing::gnssGfTransitionCb(int32_t geofenceId,
                                         GpsLocation* location,
@@ -64,11 +65,14 @@
     }
 
     GnssLocation gnssLocation = convertToGnssLocation(location);
-    mGnssGeofencingCbIface->gnssGeofenceTransitionCb(
+    auto ret = mGnssGeofencingCbIface->gnssGeofenceTransitionCb(
             geofenceId,
             gnssLocation,
             static_cast<IGnssGeofenceCallback::GeofenceTransition>(transition),
             timestamp);
+    if (!ret.isOk()) {
+        ALOGE("%s: Unable to invoke callback", __func__);
+    }
 }
 
 void GnssGeofencing::gnssGfStatusCb(int32_t status, GpsLocation* location) {
@@ -85,8 +89,11 @@
         gnssLocation = {};
     }
 
-    mGnssGeofencingCbIface->gnssGeofenceStatusCb(
+    auto ret = mGnssGeofencingCbIface->gnssGeofenceStatusCb(
             static_cast<IGnssGeofenceCallback::GeofenceAvailability>(status), gnssLocation);
+    if (!ret.isOk()) {
+        ALOGE("%s: Unable to invoke callback", __func__);
+    }
 }
 
 void GnssGeofencing::gnssGfAddCb(int32_t geofenceId, int32_t status) {
@@ -95,8 +102,11 @@
         return;
     }
 
-    mGnssGeofencingCbIface->gnssGeofenceAddCb(
+    auto ret = mGnssGeofencingCbIface->gnssGeofenceAddCb(
             geofenceId, static_cast<IGnssGeofenceCallback::GeofenceStatus>(status));
+    if (!ret.isOk()) {
+        ALOGE("%s: Unable to invoke callback", __func__);
+    }
 }
 
 void GnssGeofencing::gnssGfRemoveCb(int32_t geofenceId, int32_t status) {
@@ -105,8 +115,11 @@
         return;
     }
 
-    mGnssGeofencingCbIface->gnssGeofenceRemoveCb(
-      geofenceId, static_cast<IGnssGeofenceCallback::GeofenceStatus>(status));
+    auto ret = mGnssGeofencingCbIface->gnssGeofenceRemoveCb(
+            geofenceId, static_cast<IGnssGeofenceCallback::GeofenceStatus>(status));
+    if (!ret.isOk()) {
+        ALOGE("%s: Unable to invoke callback", __func__);
+    }
 }
 
 void GnssGeofencing::gnssGfPauseCb(int32_t geofenceId, int32_t status) {
@@ -115,8 +128,11 @@
         return;
     }
 
-    mGnssGeofencingCbIface->gnssGeofencePauseCb(
+    auto ret = mGnssGeofencingCbIface->gnssGeofencePauseCb(
             geofenceId, static_cast<IGnssGeofenceCallback::GeofenceStatus>(status));
+    if (!ret.isOk()) {
+        ALOGE("%s: Unable to invoke callback", __func__);
+    }
 }
 
 void GnssGeofencing::gnssGfResumeCb(int32_t geofenceId, int32_t status) {
@@ -125,8 +141,11 @@
         return;
     }
 
-    mGnssGeofencingCbIface->gnssGeofenceResumeCb(
+    auto ret = mGnssGeofencingCbIface->gnssGeofenceResumeCb(
             geofenceId, static_cast<IGnssGeofenceCallback::GeofenceStatus>(status));
+    if (!ret.isOk()) {
+        ALOGE("%s: Unable to invoke callback", __func__);
+    }
 }
 
 pthread_t GnssGeofencing::createThreadCb(const char* name, void (*start)(void*), void* arg) {
diff --git a/gnss/1.0/default/GnssMeasurement.cpp b/gnss/1.0/default/GnssMeasurement.cpp
index 67f6d8d..6c9b838 100644
--- a/gnss/1.0/default/GnssMeasurement.cpp
+++ b/gnss/1.0/default/GnssMeasurement.cpp
@@ -96,7 +96,10 @@
         .hwClockDiscontinuityCount = clockVal.hw_clock_discontinuity_count
     };
 
-    sGnssMeasureCbIface->GnssMeasurementCb(gnssData);
+    auto ret = sGnssMeasureCbIface->GnssMeasurementCb(gnssData);
+    if (!ret.isOk()) {
+        ALOGE("%s: Unable to invoke callback", __func__);
+    }
 }
 
 /*
@@ -223,7 +226,10 @@
     gnssData.clock.driftUncertaintyNsps = clockVal.drift_uncertainty_nsps;
     gnssData.clock.gnssClockFlags = clockVal.flags;
 
-    sGnssMeasureCbIface->GnssMeasurementCb(gnssData);
+    auto ret = sGnssMeasureCbIface->GnssMeasurementCb(gnssData);
+    if (!ret.isOk()) {
+        ALOGE("%s: Unable to invoke callback", __func__);
+    }
 }
 
 // Methods from ::android::hardware::gnss::V1_0::IGnssMeasurement follow.
diff --git a/gnss/1.0/default/GnssNavigationMessage.cpp b/gnss/1.0/default/GnssNavigationMessage.cpp
index c98abf6..6f509d0 100644
--- a/gnss/1.0/default/GnssNavigationMessage.cpp
+++ b/gnss/1.0/default/GnssNavigationMessage.cpp
@@ -59,7 +59,10 @@
     navigationMsg.submessageId = message->submessage_id;
     navigationMsg.data.setToExternal(message->data, message->data_length);
 
-    sGnssNavigationMsgCbIface->gnssNavigationMessageCb(navigationMsg);
+    auto ret = sGnssNavigationMsgCbIface->gnssNavigationMessageCb(navigationMsg);
+    if (!ret.isOk()) {
+        ALOGE("%s: Unable to invoke callback", __func__);
+    }
 }
 
 // Methods from ::android::hardware::gnss::V1_0::IGnssNavigationMessage follow.
diff --git a/gnss/1.0/default/GnssNi.cpp b/gnss/1.0/default/GnssNi.cpp
index ec57e8c..d17891d 100644
--- a/gnss/1.0/default/GnssNi.cpp
+++ b/gnss/1.0/default/GnssNi.cpp
@@ -41,6 +41,7 @@
 
 GnssNi::~GnssNi() {
     sThreadFuncArgsList.clear();
+    sInterfaceExists = false;
 }
 
 pthread_t GnssNi::createThreadCb(const char* name, void (*start)(void*), void* arg) {
@@ -73,7 +74,10 @@
                 static_cast<IGnssNiCallback::GnssNiEncodingType>(notification->text_encoding)
     };
 
-    sGnssNiCbIface->niNotifyCb(notificationGnss);
+    auto ret = sGnssNiCbIface->niNotifyCb(notificationGnss);
+    if (!ret.isOk()) {
+        ALOGE("%s: Unable to invoke callback", __func__);
+    }
 }
 
 // Methods from ::android::hardware::gnss::V1_0::IGnssNi follow.
diff --git a/gnss/1.0/default/GnssXtra.cpp b/gnss/1.0/default/GnssXtra.cpp
index 065bb33..d124ce1 100644
--- a/gnss/1.0/default/GnssXtra.cpp
+++ b/gnss/1.0/default/GnssXtra.cpp
@@ -35,6 +35,7 @@
 
 GnssXtra::~GnssXtra() {
     sThreadFuncArgsList.clear();
+    sInterfaceExists = false;
 }
 
 pthread_t GnssXtra::createThreadCb(const char* name, void (*start)(void*), void* arg) {
@@ -53,7 +54,10 @@
         return;
     }
 
-    sGnssXtraCbIface->downloadRequestCb();
+    auto ret = sGnssXtraCbIface->downloadRequestCb();
+    if (!ret.isOk()) {
+        ALOGE("%s: Unable to invoke callback", __func__);
+    }
 }
 
 // Methods from ::android::hardware::gnss::V1_0::IGnssXtra follow.
diff --git a/gnss/1.0/vts/functional/Android.bp b/gnss/1.0/vts/functional/Android.bp
new file mode 100644
index 0000000..42f2ce8
--- /dev/null
+++ b/gnss/1.0/vts/functional/Android.bp
@@ -0,0 +1,37 @@
+//
+// Copyright (C) 2017 The Android Open Source Project
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+
+cc_test {
+    name: "VtsHalGnssV1_0TargetTest",
+    gtest: true,
+    srcs: ["VtsHalGnssV1_0TargetTest.cpp"],
+    shared_libs: [
+        "android.hardware.gnss@1.0",
+        "libbase",
+        "libcutils",
+        "libhidlbase",
+        "libhidltransport",
+        "libhwbinder",
+        "liblog",
+        "libnativehelper",
+        "libutils",
+    ],
+    static_libs: ["libgtest"],
+    cflags: [
+        "-O0",
+        "-g",
+    ],
+}
\ No newline at end of file
diff --git a/gnss/1.0/vts/functional/VtsHalGnssV1_0TargetTest.cpp b/gnss/1.0/vts/functional/VtsHalGnssV1_0TargetTest.cpp
new file mode 100644
index 0000000..f1cd9ec
--- /dev/null
+++ b/gnss/1.0/vts/functional/VtsHalGnssV1_0TargetTest.cpp
@@ -0,0 +1,279 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#define LOG_TAG "VtsHalGnssV1_0TargetTest"
+#include <android/hardware/gnss/1.0/IGnss.h>
+#include <android/log.h>
+
+#include <gtest/gtest.h>
+
+#include <chrono>
+#include <condition_variable>
+#include <mutex>
+
+using android::hardware::Return;
+using android::hardware::Void;
+
+using android::hardware::gnss::V1_0::GnssLocation;
+using android::hardware::gnss::V1_0::GnssLocationFlags;
+using android::hardware::gnss::V1_0::IGnss;
+using android::hardware::gnss::V1_0::IGnssCallback;
+using android::sp;
+
+#define TIMEOUT_SECONDS 5  // for basic commands/responses
+
+// The main test class for GNSS HAL.
+class GnssHalTest : public ::testing::Test {
+ public:
+  virtual void SetUp() override {
+    /* TODO(b/35678469): Setup the init.rc for VTS such that there's a
+     * single caller
+     * to the GNSS HAL - as part of confirming that the info & capabilities
+     * callbacks trigger.
+     */
+
+    gnss_hal_ = IGnss::getService("gnss");
+    ASSERT_NE(gnss_hal_, nullptr);
+
+    gnss_cb_ = new GnssCallback(*this);
+    ASSERT_NE(gnss_cb_, nullptr);
+
+    auto result = gnss_hal_->setCallback(gnss_cb_);
+    if (!result.isOk()) {
+      ALOGE("result of failed callback set %s", result.description().c_str());
+    }
+
+    ASSERT_TRUE(result.isOk());
+    ASSERT_TRUE(result);
+
+    /* TODO(b/35678469): Implement the capabilities & info (year) checks &
+     * value store here.
+     */
+  }
+
+  virtual void TearDown() override {
+    if (gnss_hal_ != nullptr) {
+      gnss_hal_->cleanup();
+    }
+  }
+
+  /* Used as a mechanism to inform the test that a callback has occurred */
+  inline void notify() {
+    std::unique_lock<std::mutex> lock(mtx_);
+    count++;
+    cv_.notify_one();
+  }
+
+  /* Test code calls this function to wait for a callback */
+  inline std::cv_status wait(int timeoutSeconds) {
+    std::unique_lock<std::mutex> lock(mtx_);
+
+    std::cv_status status = std::cv_status::no_timeout;
+    auto now = std::chrono::system_clock::now();
+    while (count == 0) {
+      status = cv_.wait_until(lock, now + std::chrono::seconds(timeoutSeconds));
+      if (status == std::cv_status::timeout) return status;
+    }
+    count--;
+    return status;
+  }
+
+  /* Callback class for data & Event. */
+  class GnssCallback : public IGnssCallback {
+    GnssHalTest& parent_;
+
+   public:
+    GnssCallback(GnssHalTest& parent) : parent_(parent){};
+
+    virtual ~GnssCallback() = default;
+
+    // Dummy callback handlers
+    Return<void> gnssStatusCb(
+        const IGnssCallback::GnssStatusValue status) override {
+      return Void();
+    }
+    Return<void> gnssSvStatusCb(
+        const IGnssCallback::GnssSvStatus& svStatus) override {
+      return Void();
+    }
+    Return<void> gnssNmeaCb(
+        int64_t timestamp,
+        const android::hardware::hidl_string& nmea) override {
+      return Void();
+    }
+    Return<void> gnssAcquireWakelockCb() override { return Void(); }
+    Return<void> gnssReleaseWakelockCb() override { return Void(); }
+    Return<void> gnssRequestTimeCb() override { return Void(); }
+
+    // Actual (test) callback handlers
+    Return<void> gnssLocationCb(const GnssLocation& location) override {
+      ALOGI("Location received");
+      parent_.location_called_count_++;
+      parent_.last_location_ = location;
+      parent_.notify();
+      return Void();
+    }
+
+    Return<void> gnssSetCapabilitesCb(uint32_t capabilities) override {
+      ALOGI("Capabilities received %d", capabilities);
+      parent_.capabilities_called_count_++;
+      parent_.last_capabilities_ = capabilities;
+      parent_.notify();
+      return Void();
+    }
+
+    Return<void> gnssSetSystemInfoCb(
+        const IGnssCallback::GnssSystemInfo& info) override {
+      ALOGI("Info received, year %d", info.yearOfHw);
+      parent_.info_called_count_++;
+      parent_.last_info_ = info;
+      parent_.notify();
+      return Void();
+    }
+  };
+
+  sp<IGnss> gnss_hal_;         // GNSS HAL to call into
+  sp<IGnssCallback> gnss_cb_;  // Primary callback interface
+
+  /* Count of calls to set the following items, and the latest item (used by
+   * test.)
+   */
+  int capabilities_called_count_;
+  uint32_t last_capabilities_;
+
+  int location_called_count_;
+  GnssLocation last_location_;
+
+  int info_called_count_;
+  IGnssCallback::GnssSystemInfo last_info_;
+
+ private:
+  std::mutex mtx_;
+  std::condition_variable cv_;
+  int count;
+};
+
+/*
+ * SetCallbackCapabilitiesCleanup:
+ * Sets up the callback, awaits the capabilities, and calls cleanup
+ *
+ * Since this is just the basic operation of SetUp() and TearDown(),
+ * the function definition is intentionally kept empty
+ */
+TEST_F(GnssHalTest, SetCallbackCapabilitiesCleanup) {}
+
+void CheckLocation(GnssLocation& location) {
+  EXPECT_TRUE(location.gnssLocationFlags & GnssLocationFlags::HAS_LAT_LONG);
+  EXPECT_TRUE(location.gnssLocationFlags & GnssLocationFlags::HAS_ALTITUDE);
+  EXPECT_TRUE(location.gnssLocationFlags & GnssLocationFlags::HAS_SPEED);
+  EXPECT_TRUE(location.gnssLocationFlags &
+              GnssLocationFlags::HAS_HORIZONTAL_ACCURACY);
+  EXPECT_GE(location.latitudeDegrees, -90.0);
+  EXPECT_LE(location.latitudeDegrees, 90.0);
+  EXPECT_GE(location.longitudeDegrees, -180.0);
+  EXPECT_LE(location.longitudeDegrees, 180.0);
+  EXPECT_GE(location.altitudeMeters, -1000.0);
+  EXPECT_LE(location.altitudeMeters, 30000.0);
+  EXPECT_GE(location.speedMetersPerSec, 0.0);
+  EXPECT_LE(location.speedMetersPerSec, 5.0);  // VTS tests are stationary.
+
+  /*
+   * Tolerating some especially high values for accuracy estimate, in case of
+   * first fix with especially poor geoemtry (happens occasionally)
+   */
+  EXPECT_GT(location.horizontalAccuracyMeters, 0.0);
+  EXPECT_LE(location.horizontalAccuracyMeters, 200.0);
+
+  /*
+   * Some devices may define bearing as -180 to +180, others as 0 to 360.
+   * Both are okay & understandable.
+   */
+  if (location.gnssLocationFlags & GnssLocationFlags::HAS_BEARING) {
+    EXPECT_GE(location.bearingDegrees, -180.0);
+    EXPECT_LE(location.bearingDegrees, 360.0);
+  }
+  if (location.gnssLocationFlags & GnssLocationFlags::HAS_VERTICAL_ACCURACY) {
+    EXPECT_GT(location.verticalAccuracyMeters, 0.0);
+    EXPECT_LE(location.verticalAccuracyMeters, 500.0);
+  }
+  if (location.gnssLocationFlags & GnssLocationFlags::HAS_SPEED_ACCURACY) {
+    EXPECT_GT(location.speedAccuracyMetersPerSecond, 0.0);
+    EXPECT_LE(location.speedAccuracyMetersPerSecond, 50.0);
+  }
+  if (location.gnssLocationFlags & GnssLocationFlags::HAS_BEARING_ACCURACY) {
+    EXPECT_GT(location.bearingAccuracyDegrees, 0.0);
+    EXPECT_LE(location.bearingAccuracyDegrees, 360.0);
+  }
+
+  // Check timestamp > 1.48e12 (47 years in msec - 1970->2017+)
+  EXPECT_GT(location.timestamp, 1.48e12);
+
+  /* TODO(b/35678469): Check if the hardware year is 2017+, and if so,
+   * that bearing, plus vertical, speed & bearing accuracy are present.
+   * And allow bearing to be not present, only if associated with a speed of 0.0
+   */
+}
+
+/*
+ * GetLocation:
+ * Turns on location, waits 45 second for at least 5 locations,
+ * and checks them for reasonable validity.
+ */
+TEST_F(GnssHalTest, GetLocation) {
+#define MIN_INTERVAL_MSEC 500
+#define PREFERRED_ACCURACY 0   // Ideally perfect (matches GnssLocationProvider)
+#define PREFERRED_TIME_MSEC 0  // Ideally immediate
+
+#define LOCATION_TIMEOUT_FIRST_SEC 45
+#define LOCATION_TIMEOUT_SUBSEQUENT_SEC 3
+#define LOCATIONS_TO_CHECK 5
+
+  auto result = gnss_hal_->setPositionMode(
+      IGnss::GnssPositionMode::MS_BASED,
+      IGnss::GnssPositionRecurrence::RECURRENCE_PERIODIC, MIN_INTERVAL_MSEC,
+      PREFERRED_ACCURACY, PREFERRED_TIME_MSEC);
+
+  ASSERT_TRUE(result.isOk());
+  ASSERT_TRUE(result);
+
+  result = gnss_hal_->start();
+
+  ASSERT_TRUE(result.isOk());
+  ASSERT_TRUE(result);
+
+  EXPECT_EQ(std::cv_status::no_timeout, wait(LOCATION_TIMEOUT_FIRST_SEC));
+  EXPECT_EQ(location_called_count_, 1);
+  CheckLocation(last_location_);
+
+  for (int i = 1; i < LOCATIONS_TO_CHECK; i++) {
+    EXPECT_EQ(std::cv_status::no_timeout,
+              wait(LOCATION_TIMEOUT_SUBSEQUENT_SEC));
+    EXPECT_EQ(location_called_count_, i + 1);
+    CheckLocation(last_location_);
+  }
+
+  result = gnss_hal_->stop();
+
+  ASSERT_TRUE(result.isOk());
+  ASSERT_TRUE(result);
+}
+
+int main(int argc, char** argv) {
+  ::testing::InitGoogleTest(&argc, argv);
+  int status = RUN_ALL_TESTS();
+  ALOGI("Test result = %d", status);
+  return status;
+}
\ No newline at end of file
diff --git a/gnss/Android.bp b/gnss/Android.bp
index bbb3e4b..eabbe85 100644
--- a/gnss/Android.bp
+++ b/gnss/Android.bp
@@ -1,4 +1,4 @@
-// This is an autogenerated file, do not edit.
 subdirs = [
     "1.0",
-]
+    "1.0/vts/functional",
+]
\ No newline at end of file
diff --git a/graphics/allocator/2.0/vts/Allocator.vts b/graphics/allocator/2.0/vts/Allocator.vts
deleted file mode 100644
index b26876d..0000000
--- a/graphics/allocator/2.0/vts/Allocator.vts
+++ /dev/null
@@ -1,88 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 2.0
-component_name: "IAllocator"
-
-package: "android.hardware.graphics.allocator"
-
-import: "android.hardware.graphics.allocator@2.0::IAllocatorClient"
-import: "android.hardware.graphics.allocator@2.0::types"
-import: "android.hardware.graphics.common@1.0::types"
-import: "android.hidl.base@1.0::types"
-
-interface: {
-    attribute: {
-        name: "::android::hardware::graphics::allocator::V2_0::IAllocator::Capability"
-        type: TYPE_ENUM
-        enum_value: {
-            scalar_type: "int32_t"
-
-            enumerator: "INVALID"
-            scalar_value: {
-                int32_t: 0
-            }
-            enumerator: "TEST_ALLOCATE"
-            scalar_value: {
-                int32_t: 1
-            }
-            enumerator: "LAYERED_BUFFERS"
-            scalar_value: {
-                int32_t: 2
-            }
-        }
-    }
-
-    api: {
-        name: "getCapabilities"
-        return_type_hidl: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_ENUM
-                predefined_type: "::android::hardware::graphics::allocator::V2_0::IAllocator::Capability"
-            }
-        }
-        callflow: {
-            entry: true
-        }
-        callflow: {
-            exit: true
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "dumpDebugInfo"
-        return_type_hidl: {
-            type: TYPE_STRING
-        }
-        callflow: {
-            entry: true
-        }
-        callflow: {
-            exit: true
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "createClient"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::allocator::V2_0::Error"
-        }
-        return_type_hidl: {
-            type: TYPE_HIDL_INTERFACE
-            predefined_type: "::android::hardware::graphics::allocator::V2_0::IAllocatorClient"
-        }
-        callflow: {
-            entry: true
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-}
diff --git a/graphics/allocator/2.0/vts/AllocatorClient.vts b/graphics/allocator/2.0/vts/AllocatorClient.vts
deleted file mode 100644
index 585c36c..0000000
--- a/graphics/allocator/2.0/vts/AllocatorClient.vts
+++ /dev/null
@@ -1,170 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 2.0
-component_name: "IAllocatorClient"
-
-package: "android.hardware.graphics.allocator"
-
-import: "android.hardware.graphics.allocator@2.0::types"
-import: "android.hardware.graphics.common@1.0::types"
-import: "android.hidl.base@1.0::types"
-
-interface: {
-    attribute: {
-        name: "::android::hardware::graphics::allocator::V2_0::IAllocatorClient::BufferDescriptorInfo"
-        type: TYPE_STRUCT
-        struct_value: {
-            name: "width"
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-        struct_value: {
-            name: "height"
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-        struct_value: {
-            name: "layerCount"
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-        struct_value: {
-            name: "format"
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::common::V1_0::PixelFormat"
-        }
-        struct_value: {
-            name: "producerUsageMask"
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        struct_value: {
-            name: "consumerUsageMask"
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-    }
-
-    api: {
-        name: "createDescriptor"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::allocator::V2_0::Error"
-        }
-        return_type_hidl: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::graphics::allocator::V2_0::IAllocatorClient::BufferDescriptorInfo"
-        }
-        callflow: {
-            entry: true
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "destroyDescriptor"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::allocator::V2_0::Error"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        callflow: {
-            exit: true
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "testAllocate"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::allocator::V2_0::Error"
-        }
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint64_t"
-            }
-        }
-        callflow: {
-            next: "allocate"
-        }
-    }
-
-    api: {
-        name: "allocate"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::allocator::V2_0::Error"
-        }
-        return_type_hidl: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint64_t"
-            }
-        }
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint64_t"
-            }
-        }
-        callflow: {
-            next: "exportHandle"
-        }
-    }
-
-    api: {
-        name: "free"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::allocator::V2_0::Error"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        callflow: {
-            exit: true
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "exportHandle"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::allocator::V2_0::Error"
-        }
-        return_type_hidl: {
-            type: TYPE_HANDLE
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        callflow: {
-            next: "free"
-        }
-    }
-
-}
diff --git a/graphics/allocator/2.0/vts/functional/Android.bp b/graphics/allocator/2.0/vts/functional/Android.bp
index 2f58836..498fbb6 100644
--- a/graphics/allocator/2.0/vts/functional/Android.bp
+++ b/graphics/allocator/2.0/vts/functional/Android.bp
@@ -15,9 +15,9 @@
 //
 
 cc_test {
-    name: "graphics_allocator_hidl_hal_test",
+    name: "VtsHalGraphicsAllocatorV2_0TargetTest",
     gtest: true,
-    srcs: ["graphics_allocator_hidl_hal_test.cpp"],
+    srcs: ["VtsHalGraphicsAllocatorV2_0TargetTest.cpp"],
     shared_libs: [
         "libbase",
         "liblog",
diff --git a/graphics/allocator/2.0/vts/functional/graphics_allocator_hidl_hal_test.cpp b/graphics/allocator/2.0/vts/functional/VtsHalGraphicsAllocatorV2_0TargetTest.cpp
similarity index 100%
rename from graphics/allocator/2.0/vts/functional/graphics_allocator_hidl_hal_test.cpp
rename to graphics/allocator/2.0/vts/functional/VtsHalGraphicsAllocatorV2_0TargetTest.cpp
diff --git a/graphics/allocator/2.0/vts/types.vts b/graphics/allocator/2.0/vts/types.vts
deleted file mode 100644
index 4a8376c..0000000
--- a/graphics/allocator/2.0/vts/types.vts
+++ /dev/null
@@ -1,142 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 2.0
-component_name: "types"
-
-package: "android.hardware.graphics.allocator"
-
-
-attribute: {
-    name: "::android::hardware::graphics::allocator::V2_0::Error"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "NONE"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "BAD_DESCRIPTOR"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "BAD_BUFFER"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "BAD_VALUE"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "NOT_SHARED"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "NO_RESOURCES"
-        scalar_value: {
-            int32_t: 5
-        }
-        enumerator: "UNDEFINED"
-        scalar_value: {
-            int32_t: 6
-        }
-        enumerator: "UNSUPPORTED"
-        scalar_value: {
-            int32_t: 7
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::graphics::allocator::V2_0::ProducerUsage"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint64_t"
-
-        enumerator: "CPU_READ"
-        scalar_value: {
-            uint64_t: 2
-        }
-        enumerator: "CPU_READ_OFTEN"
-        scalar_value: {
-            uint64_t: 4
-        }
-        enumerator: "CPU_WRITE"
-        scalar_value: {
-            uint64_t: 32
-        }
-        enumerator: "CPU_WRITE_OFTEN"
-        scalar_value: {
-            uint64_t: 64
-        }
-        enumerator: "GPU_RENDER_TARGET"
-        scalar_value: {
-            uint64_t: 512
-        }
-        enumerator: "PROTECTED"
-        scalar_value: {
-            uint64_t: 16384
-        }
-        enumerator: "CAMERA"
-        scalar_value: {
-            uint64_t: 131072
-        }
-        enumerator: "VIDEO_DECODER"
-        scalar_value: {
-            uint64_t: 4194304
-        }
-        enumerator: "SENSOR_DIRECT_DATA"
-        scalar_value: {
-            uint64_t: 8388608
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::graphics::allocator::V2_0::ConsumerUsage"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint64_t"
-
-        enumerator: "CPU_READ"
-        scalar_value: {
-            uint64_t: 2
-        }
-        enumerator: "CPU_READ_OFTEN"
-        scalar_value: {
-            uint64_t: 4
-        }
-        enumerator: "GPU_TEXTURE"
-        scalar_value: {
-            uint64_t: 256
-        }
-        enumerator: "HWCOMPOSER"
-        scalar_value: {
-            uint64_t: 2048
-        }
-        enumerator: "CLIENT_TARGET"
-        scalar_value: {
-            uint64_t: 4096
-        }
-        enumerator: "CURSOR"
-        scalar_value: {
-            uint64_t: 32768
-        }
-        enumerator: "VIDEO_ENCODER"
-        scalar_value: {
-            uint64_t: 65536
-        }
-        enumerator: "CAMERA"
-        scalar_value: {
-            uint64_t: 262144
-        }
-        enumerator: "RENDERSCRIPT"
-        scalar_value: {
-            uint64_t: 1048576
-        }
-        enumerator: "GPU_DATA_BUFFER"
-        scalar_value: {
-            uint64_t: 8388608
-        }
-    }
-}
-
diff --git a/graphics/composer/2.1/default/service.cpp b/graphics/composer/2.1/default/service.cpp
index 656673e..712dac1 100644
--- a/graphics/composer/2.1/default/service.cpp
+++ b/graphics/composer/2.1/default/service.cpp
@@ -39,5 +39,5 @@
         ALOGE("Couldn't set SCHED_FIFO: %d", errno);
     }
 
-    return defaultPassthroughServiceImplementation<IComposer>("hwcomposer");
+    return defaultPassthroughServiceImplementation<IComposer>();
 }
diff --git a/graphics/composer/2.1/vts/Composer.vts b/graphics/composer/2.1/vts/Composer.vts
deleted file mode 100644
index e60e39c..0000000
--- a/graphics/composer/2.1/vts/Composer.vts
+++ /dev/null
@@ -1,89 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 2.1
-component_name: "IComposer"
-
-package: "android.hardware.graphics.composer"
-
-import: "android.hardware.graphics.common@1.0::types"
-import: "android.hardware.graphics.composer@2.1::IComposerCallback"
-import: "android.hardware.graphics.composer@2.1::IComposerClient"
-import: "android.hardware.graphics.composer@2.1::types"
-import: "android.hidl.base@1.0::types"
-
-interface: {
-    attribute: {
-        name: "::android::hardware::graphics::composer::V2_1::IComposer::Capability"
-        type: TYPE_ENUM
-        enum_value: {
-            scalar_type: "int32_t"
-
-            enumerator: "INVALID"
-            scalar_value: {
-                int32_t: 0
-            }
-            enumerator: "SIDEBAND_STREAM"
-            scalar_value: {
-                int32_t: 1
-            }
-            enumerator: "SKIP_CLIENT_COLOR_TRANSFORM"
-            scalar_value: {
-                int32_t: 2
-            }
-        }
-    }
-
-    api: {
-        name: "getCapabilities"
-        return_type_hidl: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_ENUM
-                predefined_type: "::android::hardware::graphics::composer::V2_1::IComposer::Capability"
-            }
-        }
-        callflow: {
-            entry: true
-        }
-        callflow: {
-            exit: true
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "dumpDebugInfo"
-        return_type_hidl: {
-            type: TYPE_STRING
-        }
-        callflow: {
-            entry: true
-        }
-        callflow: {
-            exit: true
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "createClient"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::composer::V2_1::Error"
-        }
-        return_type_hidl: {
-            type: TYPE_HIDL_INTERFACE
-            predefined_type: "::android::hardware::graphics::composer::V2_1::IComposerClient"
-        }
-        callflow: {
-            entry: true
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-}
diff --git a/graphics/composer/2.1/vts/ComposerCallback.vts b/graphics/composer/2.1/vts/ComposerCallback.vts
deleted file mode 100644
index b83cf94..0000000
--- a/graphics/composer/2.1/vts/ComposerCallback.vts
+++ /dev/null
@@ -1,73 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 2.1
-component_name: "IComposerCallback"
-
-package: "android.hardware.graphics.composer"
-
-import: "android.hardware.graphics.composer@2.1::types"
-import: "android.hidl.base@1.0::types"
-
-interface: {
-    attribute: {
-        name: "::android::hardware::graphics::composer::V2_1::IComposerCallback::Connection"
-        type: TYPE_ENUM
-        enum_value: {
-            scalar_type: "int32_t"
-
-            enumerator: "INVALID"
-            scalar_value: {
-                int32_t: 0
-            }
-            enumerator: "CONNECTED"
-            scalar_value: {
-                int32_t: 1
-            }
-            enumerator: "DISCONNECTED"
-            scalar_value: {
-                int32_t: 2
-            }
-        }
-    }
-
-    api: {
-        name: "onHotplug"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::composer::V2_1::IComposerCallback::Connection"
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "onRefresh"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "onVsync"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int64_t"
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-}
diff --git a/graphics/composer/2.1/vts/ComposerClient.vts b/graphics/composer/2.1/vts/ComposerClient.vts
deleted file mode 100644
index ac1d7fb..0000000
--- a/graphics/composer/2.1/vts/ComposerClient.vts
+++ /dev/null
@@ -1,916 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 2.1
-component_name: "IComposerClient"
-
-package: "android.hardware.graphics.composer"
-
-import: "android.hardware.graphics.common@1.0::types"
-import: "android.hardware.graphics.composer@2.1::IComposerCallback"
-import: "android.hardware.graphics.composer@2.1::types"
-import: "android.hidl.base@1.0::types"
-
-interface: {
-    attribute: {
-        name: "::android::hardware::graphics::composer::V2_1::IComposerClient::Attribute"
-        type: TYPE_ENUM
-        enum_value: {
-            scalar_type: "int32_t"
-
-            enumerator: "INVALID"
-            scalar_value: {
-                int32_t: 0
-            }
-            enumerator: "WIDTH"
-            scalar_value: {
-                int32_t: 1
-            }
-            enumerator: "HEIGHT"
-            scalar_value: {
-                int32_t: 2
-            }
-            enumerator: "VSYNC_PERIOD"
-            scalar_value: {
-                int32_t: 3
-            }
-            enumerator: "DPI_X"
-            scalar_value: {
-                int32_t: 4
-            }
-            enumerator: "DPI_Y"
-            scalar_value: {
-                int32_t: 5
-            }
-        }
-    }
-
-    attribute: {
-        name: "::android::hardware::graphics::composer::V2_1::IComposerClient::DisplayRequest"
-        type: TYPE_ENUM
-        enum_value: {
-            scalar_type: "uint32_t"
-
-            enumerator: "FLIP_CLIENT_TARGET"
-            scalar_value: {
-                uint32_t: 1
-            }
-            enumerator: "WRITE_CLIENT_TARGET_TO_OUTPUT"
-            scalar_value: {
-                uint32_t: 2
-            }
-        }
-    }
-
-    attribute: {
-        name: "::android::hardware::graphics::composer::V2_1::IComposerClient::LayerRequest"
-        type: TYPE_ENUM
-        enum_value: {
-            scalar_type: "uint32_t"
-
-            enumerator: "CLEAR_CLIENT_TARGET"
-            scalar_value: {
-                uint32_t: 1
-            }
-        }
-    }
-
-    attribute: {
-        name: "::android::hardware::graphics::composer::V2_1::IComposerClient::PowerMode"
-        type: TYPE_ENUM
-        enum_value: {
-            scalar_type: "int32_t"
-
-            enumerator: "OFF"
-            scalar_value: {
-                int32_t: 0
-            }
-            enumerator: "DOZE"
-            scalar_value: {
-                int32_t: 1
-            }
-            enumerator: "DOZE_SUSPEND"
-            scalar_value: {
-                int32_t: 3
-            }
-            enumerator: "ON"
-            scalar_value: {
-                int32_t: 2
-            }
-        }
-    }
-
-    attribute: {
-        name: "::android::hardware::graphics::composer::V2_1::IComposerClient::Vsync"
-        type: TYPE_ENUM
-        enum_value: {
-            scalar_type: "int32_t"
-
-            enumerator: "INVALID"
-            scalar_value: {
-                int32_t: 0
-            }
-            enumerator: "ENABLE"
-            scalar_value: {
-                int32_t: 1
-            }
-            enumerator: "DISABLE"
-            scalar_value: {
-                int32_t: 2
-            }
-        }
-    }
-
-    attribute: {
-        name: "::android::hardware::graphics::composer::V2_1::IComposerClient::BlendMode"
-        type: TYPE_ENUM
-        enum_value: {
-            scalar_type: "int32_t"
-
-            enumerator: "INVALID"
-            scalar_value: {
-                int32_t: 0
-            }
-            enumerator: "NONE"
-            scalar_value: {
-                int32_t: 1
-            }
-            enumerator: "PREMULTIPLIED"
-            scalar_value: {
-                int32_t: 2
-            }
-            enumerator: "COVERAGE"
-            scalar_value: {
-                int32_t: 3
-            }
-        }
-    }
-
-    attribute: {
-        name: "::android::hardware::graphics::composer::V2_1::IComposerClient::Composition"
-        type: TYPE_ENUM
-        enum_value: {
-            scalar_type: "int32_t"
-
-            enumerator: "INVALID"
-            scalar_value: {
-                int32_t: 0
-            }
-            enumerator: "CLIENT"
-            scalar_value: {
-                int32_t: 1
-            }
-            enumerator: "DEVICE"
-            scalar_value: {
-                int32_t: 2
-            }
-            enumerator: "SOLID_COLOR"
-            scalar_value: {
-                int32_t: 3
-            }
-            enumerator: "CURSOR"
-            scalar_value: {
-                int32_t: 4
-            }
-            enumerator: "SIDEBAND"
-            scalar_value: {
-                int32_t: 5
-            }
-        }
-    }
-
-    attribute: {
-        name: "::android::hardware::graphics::composer::V2_1::IComposerClient::DisplayType"
-        type: TYPE_ENUM
-        enum_value: {
-            scalar_type: "int32_t"
-
-            enumerator: "INVALID"
-            scalar_value: {
-                int32_t: 0
-            }
-            enumerator: "PHYSICAL"
-            scalar_value: {
-                int32_t: 1
-            }
-            enumerator: "VIRTUAL"
-            scalar_value: {
-                int32_t: 2
-            }
-        }
-    }
-
-    attribute: {
-        name: "::android::hardware::graphics::composer::V2_1::IComposerClient::HandleIndex"
-        type: TYPE_ENUM
-        enum_value: {
-            scalar_type: "int32_t"
-
-            enumerator: "EMPTY"
-            scalar_value: {
-                int32_t: -1
-            }
-            enumerator: "CACHED"
-            scalar_value: {
-                int32_t: -2
-            }
-        }
-    }
-
-    attribute: {
-        name: "::android::hardware::graphics::composer::V2_1::IComposerClient::Rect"
-        type: TYPE_STRUCT
-        struct_value: {
-            name: "left"
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        struct_value: {
-            name: "top"
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        struct_value: {
-            name: "right"
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        struct_value: {
-            name: "bottom"
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    attribute: {
-        name: "::android::hardware::graphics::composer::V2_1::IComposerClient::FRect"
-        type: TYPE_STRUCT
-        struct_value: {
-            name: "left"
-            type: TYPE_SCALAR
-            scalar_type: "float_t"
-        }
-        struct_value: {
-            name: "top"
-            type: TYPE_SCALAR
-            scalar_type: "float_t"
-        }
-        struct_value: {
-            name: "right"
-            type: TYPE_SCALAR
-            scalar_type: "float_t"
-        }
-        struct_value: {
-            name: "bottom"
-            type: TYPE_SCALAR
-            scalar_type: "float_t"
-        }
-    }
-
-    attribute: {
-        name: "::android::hardware::graphics::composer::V2_1::IComposerClient::Color"
-        type: TYPE_STRUCT
-        struct_value: {
-            name: "r"
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-        struct_value: {
-            name: "g"
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-        struct_value: {
-            name: "b"
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-        struct_value: {
-            name: "a"
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-
-    attribute: {
-        name: "::android::hardware::graphics::composer::V2_1::IComposerClient::Command"
-        type: TYPE_ENUM
-        enum_value: {
-            scalar_type: "int32_t"
-
-            enumerator: "LENGTH_MASK"
-            scalar_value: {
-                int32_t: 65535
-            }
-            enumerator: "OPCODE_SHIFT"
-            scalar_value: {
-                int32_t: 16
-            }
-            enumerator: "OPCODE_MASK"
-            scalar_value: {
-                int32_t: -65536
-            }
-            enumerator: "SELECT_DISPLAY"
-            scalar_value: {
-                int32_t: 0
-            }
-            enumerator: "SELECT_LAYER"
-            scalar_value: {
-                int32_t: 65536
-            }
-            enumerator: "SET_ERROR"
-            scalar_value: {
-                int32_t: 16777216
-            }
-            enumerator: "SET_CHANGED_COMPOSITION_TYPES"
-            scalar_value: {
-                int32_t: 16842752
-            }
-            enumerator: "SET_DISPLAY_REQUESTS"
-            scalar_value: {
-                int32_t: 16908288
-            }
-            enumerator: "SET_PRESENT_FENCE"
-            scalar_value: {
-                int32_t: 16973824
-            }
-            enumerator: "SET_RELEASE_FENCES"
-            scalar_value: {
-                int32_t: 17039360
-            }
-            enumerator: "SET_COLOR_TRANSFORM"
-            scalar_value: {
-                int32_t: 33554432
-            }
-            enumerator: "SET_CLIENT_TARGET"
-            scalar_value: {
-                int32_t: 33619968
-            }
-            enumerator: "SET_OUTPUT_BUFFER"
-            scalar_value: {
-                int32_t: 33685504
-            }
-            enumerator: "VALIDATE_DISPLAY"
-            scalar_value: {
-                int32_t: 33751040
-            }
-            enumerator: "ACCEPT_DISPLAY_CHANGES"
-            scalar_value: {
-                int32_t: 33816576
-            }
-            enumerator: "PRESENT_DISPLAY"
-            scalar_value: {
-                int32_t: 33882112
-            }
-            enumerator: "SET_LAYER_CURSOR_POSITION"
-            scalar_value: {
-                int32_t: 50331648
-            }
-            enumerator: "SET_LAYER_BUFFER"
-            scalar_value: {
-                int32_t: 50397184
-            }
-            enumerator: "SET_LAYER_SURFACE_DAMAGE"
-            scalar_value: {
-                int32_t: 50462720
-            }
-            enumerator: "SET_LAYER_BLEND_MODE"
-            scalar_value: {
-                int32_t: 67108864
-            }
-            enumerator: "SET_LAYER_COLOR"
-            scalar_value: {
-                int32_t: 67174400
-            }
-            enumerator: "SET_LAYER_COMPOSITION_TYPE"
-            scalar_value: {
-                int32_t: 67239936
-            }
-            enumerator: "SET_LAYER_DATASPACE"
-            scalar_value: {
-                int32_t: 67305472
-            }
-            enumerator: "SET_LAYER_DISPLAY_FRAME"
-            scalar_value: {
-                int32_t: 67371008
-            }
-            enumerator: "SET_LAYER_PLANE_ALPHA"
-            scalar_value: {
-                int32_t: 67436544
-            }
-            enumerator: "SET_LAYER_SIDEBAND_STREAM"
-            scalar_value: {
-                int32_t: 67502080
-            }
-            enumerator: "SET_LAYER_SOURCE_CROP"
-            scalar_value: {
-                int32_t: 67567616
-            }
-            enumerator: "SET_LAYER_TRANSFORM"
-            scalar_value: {
-                int32_t: 67633152
-            }
-            enumerator: "SET_LAYER_VISIBLE_REGION"
-            scalar_value: {
-                int32_t: 67698688
-            }
-            enumerator: "SET_LAYER_Z_ORDER"
-            scalar_value: {
-                int32_t: 67764224
-            }
-        }
-    }
-
-    api: {
-        name: "registerCallback"
-        arg: {
-            type: TYPE_HIDL_CALLBACK
-            predefined_type: "::android::hardware::graphics::composer::V2_1::IComposerCallback"
-        }
-        callflow: {
-            entry: true
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "getMaxVirtualDisplayCount"
-        return_type_hidl: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "createVirtualDisplay"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::composer::V2_1::Error"
-        }
-        return_type_hidl: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::common::V1_0::PixelFormat"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::common::V1_0::PixelFormat"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "destroyVirtualDisplay"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::composer::V2_1::Error"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "createLayer"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::composer::V2_1::Error"
-        }
-        return_type_hidl: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "destroyLayer"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::composer::V2_1::Error"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "getActiveConfig"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::composer::V2_1::Error"
-        }
-        return_type_hidl: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "getClientTargetSupport"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::composer::V2_1::Error"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::common::V1_0::PixelFormat"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::common::V1_0::Dataspace"
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "getColorModes"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::composer::V2_1::Error"
-        }
-        return_type_hidl: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_ENUM
-                predefined_type: "::android::hardware::graphics::common::V1_0::ColorMode"
-            }
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "getDisplayAttribute"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::composer::V2_1::Error"
-        }
-        return_type_hidl: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::composer::V2_1::IComposerClient::Attribute"
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "getDisplayConfigs"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::composer::V2_1::Error"
-        }
-        return_type_hidl: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint32_t"
-            }
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "getDisplayName"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::composer::V2_1::Error"
-        }
-        return_type_hidl: {
-            type: TYPE_STRING
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "getDisplayType"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::composer::V2_1::Error"
-        }
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::composer::V2_1::IComposerClient::DisplayType"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "getDozeSupport"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::composer::V2_1::Error"
-        }
-        return_type_hidl: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "getHdrCapabilities"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::composer::V2_1::Error"
-        }
-        return_type_hidl: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_ENUM
-                predefined_type: "::android::hardware::graphics::common::V1_0::Hdr"
-            }
-        }
-        return_type_hidl: {
-            type: TYPE_SCALAR
-            scalar_type: "float_t"
-        }
-        return_type_hidl: {
-            type: TYPE_SCALAR
-            scalar_type: "float_t"
-        }
-        return_type_hidl: {
-            type: TYPE_SCALAR
-            scalar_type: "float_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "setClientTargetSlotCount"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::composer::V2_1::Error"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "setActiveConfig"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::composer::V2_1::Error"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "setColorMode"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::composer::V2_1::Error"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::common::V1_0::ColorMode"
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "setPowerMode"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::composer::V2_1::Error"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::composer::V2_1::IComposerClient::PowerMode"
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "setVsyncEnabled"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::composer::V2_1::Error"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::composer::V2_1::IComposerClient::Vsync"
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "setInputCommandQueue"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::composer::V2_1::Error"
-        }
-        arg: {
-            type: TYPE_FMQ_SYNC
-            fmq_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint32_t"
-            }
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "getOutputCommandQueue"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::composer::V2_1::Error"
-        }
-        return_type_hidl: {
-            type: TYPE_FMQ_SYNC
-            fmq_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint32_t"
-            }
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "executeCommands"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::composer::V2_1::Error"
-        }
-        return_type_hidl: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-        return_type_hidl: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-        return_type_hidl: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_HANDLE
-            }
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_HANDLE
-            }
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-}
diff --git a/graphics/composer/2.1/vts/functional/Android.bp b/graphics/composer/2.1/vts/functional/Android.bp
index aa2eae3..cc9ae3a 100644
--- a/graphics/composer/2.1/vts/functional/Android.bp
+++ b/graphics/composer/2.1/vts/functional/Android.bp
@@ -15,9 +15,9 @@
 //
 
 cc_test {
-    name: "graphics_composer_hidl_hal_test",
+    name: "VtsHalGraphicsComposerV2_1TargetTest",
     gtest: true,
-    srcs: ["graphics_composer_hidl_hal_test.cpp"],
+    srcs: ["VtsHalGraphicsComposerV2_1TargetTest.cpp"],
     shared_libs: [
         "android.hardware.graphics.allocator@2.0",
         "android.hardware.graphics.composer@2.1",
diff --git a/graphics/composer/2.1/vts/functional/graphics_composer_hidl_hal_test.cpp b/graphics/composer/2.1/vts/functional/VtsHalGraphicsComposerV2_1TargetTest.cpp
similarity index 100%
rename from graphics/composer/2.1/vts/functional/graphics_composer_hidl_hal_test.cpp
rename to graphics/composer/2.1/vts/functional/VtsHalGraphicsComposerV2_1TargetTest.cpp
diff --git a/graphics/composer/2.1/vts/types.vts b/graphics/composer/2.1/vts/types.vts
deleted file mode 100644
index ccbd9d8..0000000
--- a/graphics/composer/2.1/vts/types.vts
+++ /dev/null
@@ -1,48 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 2.1
-component_name: "types"
-
-package: "android.hardware.graphics.composer"
-
-
-attribute: {
-    name: "::android::hardware::graphics::composer::V2_1::Error"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "NONE"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "BAD_CONFIG"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "BAD_DISPLAY"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "BAD_LAYER"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "BAD_PARAMETER"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "NO_RESOURCES"
-        scalar_value: {
-            int32_t: 6
-        }
-        enumerator: "NOT_VALIDATED"
-        scalar_value: {
-            int32_t: 7
-        }
-        enumerator: "UNSUPPORTED"
-        scalar_value: {
-            int32_t: 8
-        }
-    }
-}
-
diff --git a/graphics/mapper/2.0/vts/Mapper.vts b/graphics/mapper/2.0/vts/Mapper.vts
deleted file mode 100644
index baf95dc..0000000
--- a/graphics/mapper/2.0/vts/Mapper.vts
+++ /dev/null
@@ -1,281 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 2.0
-component_name: "IMapper"
-
-package: "android.hardware.graphics.mapper"
-
-import: "android.hardware.graphics.allocator@2.0::types"
-import: "android.hardware.graphics.common@1.0::types"
-import: "android.hardware.graphics.mapper@2.0::types"
-import: "android.hidl.base@1.0::types"
-
-interface: {
-    attribute: {
-        name: "::android::hardware::graphics::mapper::V2_0::IMapper::Rect"
-        type: TYPE_STRUCT
-        struct_value: {
-            name: "left"
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        struct_value: {
-            name: "top"
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        struct_value: {
-            name: "width"
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        struct_value: {
-            name: "height"
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "retain"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::allocator::V2_0::Error"
-        }
-        arg: {
-            type: TYPE_HANDLE
-        }
-        callflow: {
-            entry: true
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "release"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::allocator::V2_0::Error"
-        }
-        arg: {
-            type: TYPE_HANDLE
-        }
-        callflow: {
-            exit: true
-        }
-    }
-
-    api: {
-        name: "getDimensions"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::allocator::V2_0::Error"
-        }
-        return_type_hidl: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-        return_type_hidl: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-        arg: {
-            type: TYPE_HANDLE
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "getFormat"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::allocator::V2_0::Error"
-        }
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::common::V1_0::PixelFormat"
-        }
-        arg: {
-            type: TYPE_HANDLE
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "getLayerCount"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::allocator::V2_0::Error"
-        }
-        return_type_hidl: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-        arg: {
-            type: TYPE_HANDLE
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "getProducerUsageMask"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::allocator::V2_0::Error"
-        }
-        return_type_hidl: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        arg: {
-            type: TYPE_HANDLE
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "getConsumerUsageMask"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::allocator::V2_0::Error"
-        }
-        return_type_hidl: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        arg: {
-            type: TYPE_HANDLE
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "getBackingStore"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::allocator::V2_0::Error"
-        }
-        return_type_hidl: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        arg: {
-            type: TYPE_HANDLE
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "getStride"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::allocator::V2_0::Error"
-        }
-        return_type_hidl: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-        arg: {
-            type: TYPE_HANDLE
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "lock"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::allocator::V2_0::Error"
-        }
-        return_type_hidl: {
-            type: TYPE_POINTER
-        }
-        arg: {
-            type: TYPE_HANDLE
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::graphics::mapper::V2_0::IMapper::Rect"
-        }
-        arg: {
-            type: TYPE_HANDLE
-        }
-        callflow: {
-            next: "unlock"
-        }
-    }
-
-    api: {
-        name: "lockFlex"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::allocator::V2_0::Error"
-        }
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::graphics::mapper::V2_0::FlexLayout"
-        }
-        arg: {
-            type: TYPE_HANDLE
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::graphics::mapper::V2_0::IMapper::Rect"
-        }
-        arg: {
-            type: TYPE_HANDLE
-        }
-        callflow: {
-            next: "unlock"
-        }
-    }
-
-    api: {
-        name: "unlock"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::graphics::allocator::V2_0::Error"
-        }
-        return_type_hidl: {
-            type: TYPE_HANDLE
-        }
-        arg: {
-            type: TYPE_HANDLE
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-}
diff --git a/graphics/mapper/2.0/vts/functional/Android.bp b/graphics/mapper/2.0/vts/functional/Android.bp
index efb868b..fbba38e 100644
--- a/graphics/mapper/2.0/vts/functional/Android.bp
+++ b/graphics/mapper/2.0/vts/functional/Android.bp
@@ -15,9 +15,9 @@
 //
 
 cc_test {
-    name: "graphics_mapper_hidl_hal_test",
+    name: "VtsHalGraphicsMapperV2_0TargetTest",
     gtest: true,
-    srcs: ["graphics_mapper_hidl_hal_test.cpp"],
+    srcs: ["VtsHalGraphicsMapperV2_0TargetTest.cpp"],
     shared_libs: [
         "libbase",
         "liblog",
diff --git a/graphics/mapper/2.0/vts/functional/graphics_mapper_hidl_hal_test.cpp b/graphics/mapper/2.0/vts/functional/VtsHalGraphicsMapperV2_0TargetTest.cpp
similarity index 100%
rename from graphics/mapper/2.0/vts/functional/graphics_mapper_hidl_hal_test.cpp
rename to graphics/mapper/2.0/vts/functional/VtsHalGraphicsMapperV2_0TargetTest.cpp
diff --git a/graphics/mapper/2.0/vts/types.vts b/graphics/mapper/2.0/vts/types.vts
deleted file mode 100644
index fee8535..0000000
--- a/graphics/mapper/2.0/vts/types.vts
+++ /dev/null
@@ -1,139 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 2.0
-component_name: "types"
-
-package: "android.hardware.graphics.mapper"
-
-
-attribute: {
-    name: "::android::hardware::graphics::mapper::V2_0::FlexComponent"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "Y"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "CB"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "CR"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "R"
-        scalar_value: {
-            int32_t: 1024
-        }
-        enumerator: "G"
-        scalar_value: {
-            int32_t: 2048
-        }
-        enumerator: "B"
-        scalar_value: {
-            int32_t: 4096
-        }
-        enumerator: "A"
-        scalar_value: {
-            int32_t: 1073741824
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::graphics::mapper::V2_0::FlexFormat"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "INVALID"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "Y"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "YCBCR"
-        scalar_value: {
-            int32_t: 7
-        }
-        enumerator: "YCBCRA"
-        scalar_value: {
-            int32_t: 1073741831
-        }
-        enumerator: "RGB"
-        scalar_value: {
-            int32_t: 7168
-        }
-        enumerator: "RGBA"
-        scalar_value: {
-            int32_t: 1073748992
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::graphics::mapper::V2_0::FlexPlane"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "topLeft"
-        type: TYPE_POINTER
-    }
-    struct_value: {
-        name: "component"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::graphics::mapper::V2_0::FlexComponent"
-    }
-    struct_value: {
-        name: "bitsPerComponent"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "bitsUsed"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "hIncrement"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "vIncrement"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "hSubsampling"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "vSubsampling"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::graphics::mapper::V2_0::FlexLayout"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "format"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::graphics::mapper::V2_0::FlexFormat"
-    }
-    struct_value: {
-        name: "planes"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::graphics::mapper::V2_0::FlexPlane"
-        }
-    }
-}
-
diff --git a/ir/1.0/vts/ConsumerIr.vts b/ir/1.0/vts/ConsumerIr.vts
deleted file mode 100644
index c31331e..0000000
--- a/ir/1.0/vts/ConsumerIr.vts
+++ /dev/null
@@ -1,45 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "IConsumerIr"
-
-package: "android.hardware.ir"
-
-import: "android.hardware.ir@1.0::types"
-import: "android.hidl.base@1.0::types"
-
-interface: {
-    api: {
-        name: "transmit"
-        return_type_hidl: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "int32_t"
-            }
-        }
-    }
-
-    api: {
-        name: "getCarrierFreqs"
-        return_type_hidl: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-        return_type_hidl: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_STRUCT
-                predefined_type: "::android::hardware::ir::V1_0::ConsumerIrFreqRange"
-            }
-        }
-    }
-
-}
diff --git a/ir/1.0/vts/types.vts b/ir/1.0/vts/types.vts
deleted file mode 100644
index f1e9cbe..0000000
--- a/ir/1.0/vts/types.vts
+++ /dev/null
@@ -1,22 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "types"
-
-package: "android.hardware.ir"
-
-
-attribute: {
-    name: "::android::hardware::ir::V1_0::ConsumerIrFreqRange"
-    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"
-    }
-}
-
diff --git a/light/2.0/vts/Light.vts b/light/2.0/vts/Light.vts
deleted file mode 100644
index 163405f..0000000
--- a/light/2.0/vts/Light.vts
+++ /dev/null
@@ -1,38 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 2.0
-component_name: "ILight"
-
-package: "android.hardware.light"
-
-import: "android.hardware.light@2.0::types"
-import: "android.hidl.base@1.0::types"
-
-interface: {
-    api: {
-        name: "setLight"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::light::V2_0::Status"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::light::V2_0::Type"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::light::V2_0::LightState"
-        }
-    }
-
-    api: {
-        name: "getSupportedTypes"
-        return_type_hidl: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_ENUM
-                predefined_type: "::android::hardware::light::V2_0::Type"
-            }
-        }
-    }
-
-}
diff --git a/light/2.0/vts/functional/Android.bp b/light/2.0/vts/functional/Android.bp
index 53f5d7f..9c9ff9d 100644
--- a/light/2.0/vts/functional/Android.bp
+++ b/light/2.0/vts/functional/Android.bp
@@ -15,9 +15,9 @@
 //
 
 cc_test {
-    name: "light_hidl_hal_test",
+    name: "VtsHalLightV2_0TargetTest",
     gtest: true,
-    srcs: ["light_hidl_hal_test.cpp"],
+    srcs: ["VtsHalLightV2_0TargetTest.cpp"],
     shared_libs: [
         "libbase",
         "libhidlbase",
diff --git a/light/2.0/vts/functional/light_hidl_hal_test.cpp b/light/2.0/vts/functional/VtsHalLightV2_0TargetTest.cpp
similarity index 85%
rename from light/2.0/vts/functional/light_hidl_hal_test.cpp
rename to light/2.0/vts/functional/VtsHalLightV2_0TargetTest.cpp
index 71a8b4e..7abb6e7 100644
--- a/light/2.0/vts/functional/light_hidl_hal_test.cpp
+++ b/light/2.0/vts/functional/VtsHalLightV2_0TargetTest.cpp
@@ -37,31 +37,6 @@
 #define ASSERT_OK(ret) ASSERT_TRUE(ret.isOk())
 #define EXPECT_OK(ret) EXPECT_TRUE(ret.isOk())
 
-class LightHidlTest : public ::testing::Test {
-public:
-    virtual void SetUp() override {
-        light = ILight::getService();
-
-        ASSERT_NE(light, nullptr);
-        LOG(INFO) << "Test is remote " << light->isRemote();
-
-        ASSERT_OK(light->getSupportedTypes([this](const hidl_vec<Type> &types) {
-            supportedTypes = types;
-        }));
-    }
-
-    virtual void TearDown() override {}
-
-    sp<ILight> light;
-    std::vector<Type> supportedTypes;
-};
-
-class LightHidlEnvironment : public ::testing::Environment {
-public:
-    virtual void SetUp() {}
-    virtual void TearDown() {}
-};
-
 const static LightState kWhite = {
     .color = 0xFFFFFFFF,
     .flashMode = Flash::TIMED,
@@ -97,6 +72,41 @@
     Type::WIFI
 };
 
+class LightHidlTest : public ::testing::Test {
+public:
+    virtual void SetUp() override {
+        light = ILight::getService();
+
+        ASSERT_NE(light, nullptr);
+        LOG(INFO) << "Test is remote " << light->isRemote();
+
+        ASSERT_OK(light->getSupportedTypes([this](const hidl_vec<Type> &types) {
+            supportedTypes = types;
+        }));
+    }
+
+    sp<ILight> light;
+    std::vector<Type> supportedTypes;
+
+    virtual void TearDown() override {
+        for (const Type& type: supportedTypes) {
+            Return<Status> ret = light->setLight(type, kOff);
+            EXPECT_OK(ret);
+            EXPECT_EQ(Status::SUCCESS, static_cast<Status>(ret));
+        }
+
+        // must leave the device in a useable condition
+        if (std::find(supportedTypes.begin(),
+                      supportedTypes.end(),
+                      Type::BACKLIGHT) != supportedTypes.end()) {
+            Return<Status> ret = light->setLight(Type::BACKLIGHT, kWhite);
+            EXPECT_OK(ret);
+            EXPECT_EQ(Status::SUCCESS, static_cast<Status>(ret));
+        }
+    }
+
+};
+
 /**
  * Ensure all lights which are reported as supported work.
  */
@@ -106,12 +116,6 @@
         EXPECT_OK(ret);
         EXPECT_EQ(Status::SUCCESS, static_cast<Status>(ret));
     }
-
-    for (const Type& type: supportedTypes) {
-        Return<Status> ret = light->setLight(type, kOff);
-        EXPECT_OK(ret);
-        EXPECT_EQ(Status::SUCCESS, static_cast<Status>(ret));
-    }
 }
 
 /**
@@ -126,12 +130,6 @@
         EXPECT_TRUE(Status::SUCCESS == status ||
                     Status::BRIGHTNESS_NOT_SUPPORTED == status);
     }
-
-    for (const Type& type: supportedTypes) {
-        Return<Status> ret = light->setLight(type, kOff);
-        EXPECT_OK(ret);
-        EXPECT_EQ(Status::SUCCESS, static_cast<Status>(ret));
-    }
 }
 
 /**
@@ -151,7 +149,6 @@
 }
 
 int main(int argc, char **argv) {
-    ::testing::AddGlobalTestEnvironment(new LightHidlEnvironment);
     ::testing::InitGoogleTest(&argc, argv);
     int status = RUN_ALL_TESTS();
     LOG(INFO) << "Test result = " << status;
diff --git a/light/2.0/vts/types.vts b/light/2.0/vts/types.vts
deleted file mode 100644
index a9c8cab..0000000
--- a/light/2.0/vts/types.vts
+++ /dev/null
@@ -1,149 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 2.0
-component_name: "types"
-
-package: "android.hardware.light"
-
-
-attribute: {
-    name: "::android::hardware::light::V2_0::Status"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "SUCCESS"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "LIGHT_NOT_SUPPORTED"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "BRIGHTNESS_NOT_SUPPORTED"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "UNKNOWN"
-        scalar_value: {
-            int32_t: 3
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::light::V2_0::Flash"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "NONE"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "TIMED"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "HARDWARE"
-        scalar_value: {
-            int32_t: 2
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::light::V2_0::Brightness"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "USER"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "SENSOR"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "LOW_PERSISTENCE"
-        scalar_value: {
-            int32_t: 2
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::light::V2_0::Type"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "BACKLIGHT"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "KEYBOARD"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "BUTTONS"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "BATTERY"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "NOTIFICATIONS"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "ATTENTION"
-        scalar_value: {
-            int32_t: 5
-        }
-        enumerator: "BLUETOOTH"
-        scalar_value: {
-            int32_t: 6
-        }
-        enumerator: "WIFI"
-        scalar_value: {
-            int32_t: 7
-        }
-        enumerator: "COUNT"
-        scalar_value: {
-            int32_t: 8
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::light::V2_0::LightState"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "color"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "flashMode"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::light::V2_0::Flash"
-    }
-    struct_value: {
-        name: "flashOnMs"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "flashOffMs"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "brightnessMode"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::light::V2_0::Brightness"
-    }
-}
-
diff --git a/memtrack/1.0/vts/Memtrack.vts b/memtrack/1.0/vts/Memtrack.vts
deleted file mode 100644
index 42a422e..0000000
--- a/memtrack/1.0/vts/Memtrack.vts
+++ /dev/null
@@ -1,34 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "IMemtrack"
-
-package: "android.hardware.memtrack"
-
-import: "android.hardware.memtrack@1.0::types"
-import: "android.hidl.base@1.0::types"
-
-interface: {
-    api: {
-        name: "getMemory"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::memtrack::V1_0::MemtrackStatus"
-        }
-        return_type_hidl: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_STRUCT
-                predefined_type: "::android::hardware::memtrack::V1_0::MemtrackRecord"
-            }
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::memtrack::V1_0::MemtrackType"
-        }
-    }
-
-}
diff --git a/memtrack/1.0/vts/functional/Android.bp b/memtrack/1.0/vts/functional/Android.bp
index 0f57adc..1cbcc59 100644
--- a/memtrack/1.0/vts/functional/Android.bp
+++ b/memtrack/1.0/vts/functional/Android.bp
@@ -15,9 +15,9 @@
 //
 
 cc_test {
-    name: "memtrack_hidl_hal_test",
+    name: "VtsHalMemtrackV1_0TargetTest",
     gtest: true,
-    srcs: ["memtrack_hidl_hal_test.cpp"],
+    srcs: ["VtsHalMemtrackV1_0TargetTest.cpp"],
     shared_libs: [
         "libbase",
         "liblog",
diff --git a/memtrack/1.0/vts/functional/memtrack_hidl_hal_test.cpp b/memtrack/1.0/vts/functional/VtsHalMemtrackV1_0TargetTest.cpp
similarity index 100%
rename from memtrack/1.0/vts/functional/memtrack_hidl_hal_test.cpp
rename to memtrack/1.0/vts/functional/VtsHalMemtrackV1_0TargetTest.cpp
diff --git a/memtrack/1.0/vts/types.vts b/memtrack/1.0/vts/types.vts
deleted file mode 100644
index bec090f..0000000
--- a/memtrack/1.0/vts/types.vts
+++ /dev/null
@@ -1,121 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "types"
-
-package: "android.hardware.memtrack"
-
-
-attribute: {
-    name: "::android::hardware::memtrack::V1_0::MemtrackFlag"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "SMAPS_ACCOUNTED"
-        scalar_value: {
-            uint32_t: 2
-        }
-        enumerator: "SMAPS_UNACCOUNTED"
-        scalar_value: {
-            uint32_t: 4
-        }
-        enumerator: "SHARED"
-        scalar_value: {
-            uint32_t: 8
-        }
-        enumerator: "SHARED_PSS"
-        scalar_value: {
-            uint32_t: 16
-        }
-        enumerator: "PRIVATE"
-        scalar_value: {
-            uint32_t: 32
-        }
-        enumerator: "SYSTEM"
-        scalar_value: {
-            uint32_t: 64
-        }
-        enumerator: "DEDICATED"
-        scalar_value: {
-            uint32_t: 128
-        }
-        enumerator: "NONSECURE"
-        scalar_value: {
-            uint32_t: 256
-        }
-        enumerator: "SECURE"
-        scalar_value: {
-            uint32_t: 512
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::memtrack::V1_0::MemtrackType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "OTHER"
-        scalar_value: {
-            uint32_t: 0
-        }
-        enumerator: "GL"
-        scalar_value: {
-            uint32_t: 1
-        }
-        enumerator: "GRAPHICS"
-        scalar_value: {
-            uint32_t: 2
-        }
-        enumerator: "MULTIMEDIA"
-        scalar_value: {
-            uint32_t: 3
-        }
-        enumerator: "CAMERA"
-        scalar_value: {
-            uint32_t: 4
-        }
-        enumerator: "NUM_TYPES"
-        scalar_value: {
-            uint32_t: 5
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::memtrack::V1_0::MemtrackStatus"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "SUCCESS"
-        scalar_value: {
-            uint32_t: 0
-        }
-        enumerator: "MEMORY_TRACKING_NOT_SUPPORTED"
-        scalar_value: {
-            uint32_t: 1
-        }
-        enumerator: "TYPE_NOT_SUPPORTED"
-        scalar_value: {
-            uint32_t: 2
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::memtrack::V1_0::MemtrackRecord"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "sizeInBytes"
-        type: TYPE_SCALAR
-        scalar_type: "uint64_t"
-    }
-    struct_value: {
-        name: "flags"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-}
-
diff --git a/nfc/1.0/default/Nfc.cpp b/nfc/1.0/default/Nfc.cpp
index 3bd5e41..c610406 100644
--- a/nfc/1.0/default/Nfc.cpp
+++ b/nfc/1.0/default/Nfc.cpp
@@ -14,12 +14,14 @@
 
 sp<INfcClientCallback> Nfc::mCallback = NULL;
 
-Nfc::Nfc(nfc_nci_device_t* device) : mDevice(device) {
+Nfc::Nfc(nfc_nci_device_t* device) : mDevice(device),
+    mDeathRecipient(new NfcDeathRecipient(this)) {
 }
 
 // Methods from ::android::hardware::nfc::V1_0::INfc follow.
 ::android::hardware::Return<NfcStatus> Nfc::open(const sp<INfcClientCallback>& clientCallback)  {
     mCallback = clientCallback;
+    mCallback->linkToDeath(mDeathRecipient, 0 /*cookie*/);
     int ret = mDevice->open(mDevice, eventCallback, dataCallback);
     return ret == 0 ? NfcStatus::OK : NfcStatus::FAILED;
 }
@@ -39,6 +41,7 @@
 }
 
 ::android::hardware::Return<NfcStatus> Nfc::close()  {
+    mCallback->unlinkToDeath(mDeathRecipient);
     return mDevice->close(mDevice) ? NfcStatus::FAILED : NfcStatus::OK;
 }
 
diff --git a/nfc/1.0/default/Nfc.h b/nfc/1.0/default/Nfc.h
index 13004a5..d8787fd 100644
--- a/nfc/1.0/default/Nfc.h
+++ b/nfc/1.0/default/Nfc.h
@@ -19,6 +19,16 @@
 using ::android::hardware::hidl_string;
 using ::android::sp;
 
+struct NfcDeathRecipient : hidl_death_recipient {
+    NfcDeathRecipient(const sp<INfc> nfc) : mNfc(nfc) {
+    }
+
+    virtual void serviceDied(uint64_t /*cookie*/, const wp<::android::hidl::base::V1_0::IBase>& /*who*/) {
+        mNfc->close();
+    }
+    sp<INfc> mNfc;
+};
+
 struct Nfc : public INfc {
   Nfc(nfc_nci_device_t* device);
   ::android::hardware::Return<NfcStatus> open(const sp<INfcClientCallback>& clientCallback)  override;
@@ -31,21 +41,28 @@
 
   static void eventCallback(uint8_t event, uint8_t status) {
       if (mCallback != nullptr) {
-          mCallback->sendEvent(
+          auto ret = mCallback->sendEvent(
                   (::android::hardware::nfc::V1_0::NfcEvent) event,
                   (::android::hardware::nfc::V1_0::NfcStatus) status);
+          if (!ret.isOk()) {
+              ALOGW("Failed to call back into NFC process.");
+          }
       }
   }
   static void dataCallback(uint16_t data_len, uint8_t* p_data) {
       hidl_vec<uint8_t> data;
       data.setToExternal(p_data, data_len);
       if (mCallback != nullptr) {
-          mCallback->sendData(data);
+          auto ret = mCallback->sendData(data);
+          if (!ret.isOk()) {
+              ALOGW("Failed to call back into NFC process.");
+          }
       }
   }
   private:
     static sp<INfcClientCallback> mCallback;
     const nfc_nci_device_t*       mDevice;
+    sp<NfcDeathRecipient>         mDeathRecipient;
 };
 
 extern "C" INfc* HIDL_FETCH_INfc(const char* name);
diff --git a/nfc/1.0/vts/Nfc.vts b/nfc/1.0/vts/Nfc.vts
deleted file mode 100644
index 48b2750..0000000
--- a/nfc/1.0/vts/Nfc.vts
+++ /dev/null
@@ -1,133 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "INfc"
-
-package: "android.hardware.nfc"
-
-import: "android.hardware.nfc@1.0::INfcClientCallback"
-import: "android.hardware.nfc@1.0::types"
-import: "android.hidl.base@1.0::types"
-
-interface: {
-    api: {
-        name: "open"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::nfc::V1_0::NfcStatus"
-        }
-        arg: {
-            type: TYPE_HIDL_CALLBACK
-            predefined_type: "::android::hardware::nfc::V1_0::INfcClientCallback"
-        }
-        callflow: {
-            entry: true
-        }
-        callflow: {
-            next: "write"
-            next: "coreInitialized"
-            next: "prediscover"
-            next: "powerCycle"
-            next: "controlGranted"
-        }
-    }
-
-    api: {
-        name: "write"
-        return_type_hidl: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-        callflow: {
-            next: "write"
-            next: "prediscover"
-            next: "coreInitialized"
-            next: "close"
-            next: "powerCycle"
-            next: "controlGranted"
-        }
-    }
-
-    api: {
-        name: "coreInitialized"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::nfc::V1_0::NfcStatus"
-        }
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-        callflow: {
-            next: "write"
-            next: "prediscover"
-            next: "close"
-        }
-    }
-
-    api: {
-        name: "prediscover"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::nfc::V1_0::NfcStatus"
-        }
-        callflow: {
-            next: "write"
-            next: "close"
-            next: "coreInitialized"
-            next: "powerCycle"
-            next: "controlGranted"
-        }
-    }
-
-    api: {
-        name: "close"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::nfc::V1_0::NfcStatus"
-        }
-        callflow: {
-            exit: true
-        }
-    }
-
-    api: {
-        name: "controlGranted"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::nfc::V1_0::NfcStatus"
-        }
-        callflow: {
-            next: "write"
-            next: "close"
-            next: "prediscover"
-            next: "coreInitialized"
-            next: "powerCycle"
-        }
-    }
-
-    api: {
-        name: "powerCycle"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::nfc::V1_0::NfcStatus"
-        }
-        callflow: {
-            next: "write"
-            next: "coreInitialized"
-            next: "prediscover"
-            next: "controlGranted"
-            next: "close"
-        }
-    }
-
-}
diff --git a/nfc/1.0/vts/NfcClientCallback.vts b/nfc/1.0/vts/NfcClientCallback.vts
deleted file mode 100644
index b06f12b..0000000
--- a/nfc/1.0/vts/NfcClientCallback.vts
+++ /dev/null
@@ -1,34 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "INfcClientCallback"
-
-package: "android.hardware.nfc"
-
-import: "android.hardware.nfc@1.0::types"
-import: "android.hidl.base@1.0::types"
-
-interface: {
-    api: {
-        name: "sendEvent"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::nfc::V1_0::NfcEvent"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::nfc::V1_0::NfcStatus"
-        }
-    }
-
-    api: {
-        name: "sendData"
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-    }
-
-}
diff --git a/nfc/1.0/vts/types.vts b/nfc/1.0/vts/types.vts
deleted file mode 100644
index e43db1e..0000000
--- a/nfc/1.0/vts/types.vts
+++ /dev/null
@@ -1,73 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "types"
-
-package: "android.hardware.nfc"
-
-
-attribute: {
-    name: "::android::hardware::nfc::V1_0::NfcEvent"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "OPEN_CPLT"
-        scalar_value: {
-            uint32_t: 0
-        }
-        enumerator: "CLOSE_CPLT"
-        scalar_value: {
-            uint32_t: 1
-        }
-        enumerator: "POST_INIT_CPLT"
-        scalar_value: {
-            uint32_t: 2
-        }
-        enumerator: "PRE_DISCOVER_CPLT"
-        scalar_value: {
-            uint32_t: 3
-        }
-        enumerator: "REQUEST_CONTROL"
-        scalar_value: {
-            uint32_t: 4
-        }
-        enumerator: "RELEASE_CONTROL"
-        scalar_value: {
-            uint32_t: 5
-        }
-        enumerator: "ERROR"
-        scalar_value: {
-            uint32_t: 6
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::nfc::V1_0::NfcStatus"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "OK"
-        scalar_value: {
-            uint32_t: 0
-        }
-        enumerator: "FAILED"
-        scalar_value: {
-            uint32_t: 1
-        }
-        enumerator: "ERR_TRANSPORT"
-        scalar_value: {
-            uint32_t: 2
-        }
-        enumerator: "ERR_CMD_TIMEOUT"
-        scalar_value: {
-            uint32_t: 3
-        }
-        enumerator: "REFUSED"
-        scalar_value: {
-            uint32_t: 4
-        }
-    }
-}
-
diff --git a/power/1.0/vts/Power.vts b/power/1.0/vts/Power.vts
deleted file mode 100644
index 4d3d4ff..0000000
--- a/power/1.0/vts/Power.vts
+++ /dev/null
@@ -1,58 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "IPower"
-
-package: "android.hardware.power"
-
-import: "android.hardware.power@1.0::types"
-import: "android.hidl.base@1.0::types"
-
-interface: {
-    api: {
-        name: "setInteractive"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-    }
-
-    api: {
-        name: "powerHint"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::power::V1_0::PowerHint"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "setFeature"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::power::V1_0::Feature"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-    }
-
-    api: {
-        name: "getPlatformLowPowerStats"
-        return_type_hidl: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_STRUCT
-                predefined_type: "::android::hardware::power::V1_0::PowerStatePlatformSleepState"
-            }
-        }
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::power::V1_0::Status"
-        }
-    }
-
-}
diff --git a/power/1.0/vts/functional/Android.bp b/power/1.0/vts/functional/Android.bp
index 7aa2611..b2389a5 100644
--- a/power/1.0/vts/functional/Android.bp
+++ b/power/1.0/vts/functional/Android.bp
@@ -15,9 +15,9 @@
 //
 
 cc_test {
-    name: "power_hidl_hal_test",
+    name: "VtsHalPowerV1_0TargetTest",
     gtest: true,
-    srcs: ["power_hidl_hal_test.cpp"],
+    srcs: ["VtsHalPowerV1_0TargetTest.cpp"],
     shared_libs: [
         "libbase",
         "liblog",
diff --git a/power/1.0/vts/functional/VtsHalPowerV1_0TargetTest.cpp b/power/1.0/vts/functional/VtsHalPowerV1_0TargetTest.cpp
new file mode 100644
index 0000000..6783961
--- /dev/null
+++ b/power/1.0/vts/functional/VtsHalPowerV1_0TargetTest.cpp
@@ -0,0 +1,181 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#define LOG_TAG "power_hidl_hal_test"
+#include <android-base/logging.h>
+
+#include <cutils/properties.h>
+
+#include <android/hardware/power/1.0/IPower.h>
+
+#include <gtest/gtest.h>
+
+#include <algorithm>
+
+using ::android::hardware::power::V1_0::IPower;
+using ::android::hardware::power::V1_0::Feature;
+using ::android::hardware::power::V1_0::PowerHint;
+using ::android::hardware::power::V1_0::PowerStatePlatformSleepState;
+using ::android::hardware::power::V1_0::Status;
+using ::android::hardware::hidl_vec;
+using ::android::hardware::Return;
+using ::android::sp;
+
+using std::vector;
+
+#define CPU_GOVERNOR_PATH \
+  "/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor"
+#define AVAILABLE_GOVERNORS_PATH \
+  "/sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors"
+
+class PowerHidlTest : public ::testing::Test {
+ public:
+  virtual void SetUp() override {
+    power = IPower::getService();
+    ASSERT_NE(power, nullptr);
+  }
+
+  virtual void TearDown() override {}
+
+  sp<IPower> power;
+};
+
+// Sanity check Power::setInteractive.
+TEST_F(PowerHidlTest, SetInteractive) {
+  Return<void> ret;
+
+  ret = power->setInteractive(true);
+  ASSERT_TRUE(ret.isOk());
+
+  ret = power->setInteractive(false);
+  ASSERT_TRUE(ret.isOk());
+}
+
+// Test Power::setInteractive and Power::powerHint(Launch)
+// with each available CPU governor, if available
+TEST_F(PowerHidlTest, TryDifferentGovernors) {
+  Return<void> ret;
+
+  int fd1 = open(CPU_GOVERNOR_PATH, O_RDWR);
+  int fd2 = open(AVAILABLE_GOVERNORS_PATH, O_RDONLY);
+  if (fd1 < 0 || fd2 < 0) {
+      // Files don't exist, so skip the rest of the test case
+      SUCCEED();
+  }
+
+  char old_governor[80];
+  ASSERT_LE(0, read(fd1, old_governor, 80));
+
+  char governors[1024];
+  ASSERT_LE(0, read(fd2, governors, 1024));
+  close(fd2);
+
+  char *saveptr;
+  char *name = strtok_r(governors, " ", &saveptr);
+  while (name && strlen(name) > 1) {
+    ASSERT_LE(0, write(fd1, name, strlen(name)));
+    ret = power->setInteractive(true);
+    ASSERT_TRUE(ret.isOk());
+
+    ret = power->setInteractive(false);
+    ASSERT_TRUE(ret.isOk());
+
+    ret = power->setInteractive(false);
+    ASSERT_TRUE(ret.isOk());
+
+    power->powerHint(PowerHint::LAUNCH, 1);
+    power->powerHint(PowerHint::LAUNCH, 0);
+
+    name = strtok_r(NULL, " ", &saveptr);
+  }
+
+  ASSERT_LE(0, write(fd1, old_governor, strlen(old_governor)));
+  close(fd1);
+}
+
+// Sanity check Power::powerHint on good and bad inputs.
+TEST_F(PowerHidlTest, PowerHint) {
+  PowerHint badHint = static_cast<PowerHint>(0xA);
+  auto hints = {PowerHint::VSYNC,         PowerHint::INTERACTION,
+                PowerHint::VIDEO_ENCODE,  PowerHint::VIDEO_DECODE,
+                PowerHint::LOW_POWER,     PowerHint::SUSTAINED_PERFORMANCE,
+                PowerHint::VR_MODE,       PowerHint::LAUNCH,
+                badHint};
+  Return<void> ret;
+  for (auto hint : hints) {
+    ret = power->powerHint(hint, 30000);
+    ASSERT_TRUE(ret.isOk());
+
+    ret = power->powerHint(hint, 0);
+    ASSERT_TRUE(ret.isOk());
+  }
+
+  // Turning these hints on in different orders triggers different code paths,
+  // so iterate over possible orderings.
+  std::vector<PowerHint> hints2 = {PowerHint::LAUNCH, PowerHint::VR_MODE,
+                                   PowerHint::SUSTAINED_PERFORMANCE,
+                                   PowerHint::INTERACTION};
+  auto compareHints = [](PowerHint l, PowerHint r) {
+    return static_cast<uint32_t>(l) < static_cast<uint32_t>(r);
+  };
+  std::sort(hints2.begin(), hints2.end(), compareHints);
+  do {
+    for (auto iter = hints2.begin(); iter != hints2.end(); iter++) {
+      ret = power->powerHint(*iter, 0);
+      ASSERT_TRUE(ret.isOk());
+    }
+    for (auto iter = hints2.begin(); iter != hints2.end(); iter++) {
+      ret = power->powerHint(*iter, 30000);
+      ASSERT_TRUE(ret.isOk());
+    }
+  } while (std::next_permutation(hints2.begin(), hints2.end(), compareHints));
+}
+
+// Sanity check Power::setFeature() on good and bad inputs.
+TEST_F(PowerHidlTest, SetFeature) {
+  Return<void> ret;
+  ret = power->setFeature(Feature::POWER_FEATURE_DOUBLE_TAP_TO_WAKE, true);
+  ASSERT_TRUE(ret.isOk());
+  ret = power->setFeature(Feature::POWER_FEATURE_DOUBLE_TAP_TO_WAKE, false);
+  ASSERT_TRUE(ret.isOk());
+
+  Feature badFeature = static_cast<Feature>(0x2);
+  ret = power->setFeature(badFeature, true);
+  ASSERT_TRUE(ret.isOk());
+  ret = power->setFeature(badFeature, false);
+  ASSERT_TRUE(ret.isOk());
+}
+
+// Sanity check Power::getPlatformLowPowerStats().
+TEST_F(PowerHidlTest, GetPlatformLowPowerStats) {
+  hidl_vec<PowerStatePlatformSleepState> vec;
+  Status s;
+  auto cb = [&vec, &s](hidl_vec<PowerStatePlatformSleepState> states,
+                       Status status) {
+    vec = states;
+    s = status;
+  };
+  Return<void> ret = power->getPlatformLowPowerStats(cb);
+  ASSERT_TRUE(ret.isOk());
+  ASSERT_TRUE(s == Status::SUCCESS || s == Status::FILESYSTEM_ERROR);
+}
+
+int main(int argc, char **argv) {
+  ::testing::InitGoogleTest(&argc, argv);
+  int status = RUN_ALL_TESTS();
+  LOG(INFO) << "Test result = " << status;
+  return status;
+}
diff --git a/power/1.0/vts/functional/power_hidl_hal_test.cpp b/power/1.0/vts/functional/power_hidl_hal_test.cpp
deleted file mode 100644
index b114944..0000000
--- a/power/1.0/vts/functional/power_hidl_hal_test.cpp
+++ /dev/null
@@ -1,110 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#define LOG_TAG "power_hidl_hal_test"
-#include <android-base/logging.h>
-
-#include <cutils/properties.h>
-
-#include <android/hardware/power/1.0/IPower.h>
-
-#include <gtest/gtest.h>
-
-using ::android::hardware::power::V1_0::IPower;
-using ::android::hardware::power::V1_0::Feature;
-using ::android::hardware::power::V1_0::PowerHint;
-using ::android::hardware::power::V1_0::PowerStatePlatformSleepState;
-using ::android::hardware::power::V1_0::Status;
-using ::android::hardware::hidl_vec;
-using ::android::hardware::Return;
-using ::android::sp;
-
-class PowerHidlTest : public ::testing::Test {
- public:
-  virtual void SetUp() override {
-    power = IPower::getService();
-    ASSERT_NE(power, nullptr);
-  }
-
-  virtual void TearDown() override {}
-
-  sp<IPower> power;
-};
-
-// Sanity check Power::setInteractive.
-TEST_F(PowerHidlTest, SetInteractive) {
-  Return<void> ret;
-
-  ret = power->setInteractive(true);
-  ASSERT_TRUE(ret.isOk());
-
-  ret = power->setInteractive(false);
-  ASSERT_TRUE(ret.isOk());
-}
-
-// Sanity check Power::powerHint on good and bad inputs.
-TEST_F(PowerHidlTest, PowerHint) {
-  PowerHint badHint = static_cast<PowerHint>(0xA);
-  auto hints = {PowerHint::VSYNC,         PowerHint::INTERACTION,
-                PowerHint::VIDEO_ENCODE,  PowerHint::VIDEO_DECODE,
-                PowerHint::LOW_POWER,     PowerHint::SUSTAINED_PERFORMANCE,
-                PowerHint::VR_MODE,       PowerHint::LAUNCH,
-                badHint};
-  Return<void> ret;
-  for (auto hint : hints) {
-    ret = power->powerHint(hint, 1);
-    ASSERT_TRUE(ret.isOk());
-
-    ret = power->powerHint(hint, 0);
-    ASSERT_TRUE(ret.isOk());
-  }
-}
-
-// Sanity check Power::setFeature() on good and bad inputs.
-TEST_F(PowerHidlTest, SetFeature) {
-  Return<void> ret;
-  ret = power->setFeature(Feature::POWER_FEATURE_DOUBLE_TAP_TO_WAKE, true);
-  ASSERT_TRUE(ret.isOk());
-  ret = power->setFeature(Feature::POWER_FEATURE_DOUBLE_TAP_TO_WAKE, false);
-  ASSERT_TRUE(ret.isOk());
-
-  Feature badFeature = static_cast<Feature>(0x2);
-  ret = power->setFeature(badFeature, true);
-  ASSERT_TRUE(ret.isOk());
-  ret = power->setFeature(badFeature, false);
-  ASSERT_TRUE(ret.isOk());
-}
-
-// Sanity check Power::getPlatformLowPowerStats().
-TEST_F(PowerHidlTest, GetPlatformLowPowerStats) {
-  hidl_vec<PowerStatePlatformSleepState> vec;
-  Status s;
-  auto cb = [&vec, &s](hidl_vec<PowerStatePlatformSleepState> states,
-                       Status status) {
-    vec = states;
-    s = status;
-  };
-  Return<void> ret = power->getPlatformLowPowerStats(cb);
-  ASSERT_TRUE(ret.isOk());
-  ASSERT_TRUE(s == Status::SUCCESS || s == Status::FILESYSTEM_ERROR);
-}
-
-int main(int argc, char **argv) {
-  ::testing::InitGoogleTest(&argc, argv);
-  int status = RUN_ALL_TESTS();
-  LOG(INFO) << "Test result = " << status;
-  return status;
-}
diff --git a/power/1.0/vts/types.vts b/power/1.0/vts/types.vts
deleted file mode 100644
index 5724946..0000000
--- a/power/1.0/vts/types.vts
+++ /dev/null
@@ -1,129 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "types"
-
-package: "android.hardware.power"
-
-
-attribute: {
-    name: "::android::hardware::power::V1_0::PowerHint"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "VSYNC"
-        scalar_value: {
-            uint32_t: 1
-        }
-        enumerator: "INTERACTION"
-        scalar_value: {
-            uint32_t: 2
-        }
-        enumerator: "VIDEO_ENCODE"
-        scalar_value: {
-            uint32_t: 3
-        }
-        enumerator: "VIDEO_DECODE"
-        scalar_value: {
-            uint32_t: 4
-        }
-        enumerator: "LOW_POWER"
-        scalar_value: {
-            uint32_t: 5
-        }
-        enumerator: "SUSTAINED_PERFORMANCE"
-        scalar_value: {
-            uint32_t: 6
-        }
-        enumerator: "VR_MODE"
-        scalar_value: {
-            uint32_t: 7
-        }
-        enumerator: "LAUNCH"
-        scalar_value: {
-            uint32_t: 8
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::power::V1_0::Feature"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "POWER_FEATURE_DOUBLE_TAP_TO_WAKE"
-        scalar_value: {
-            uint32_t: 1
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::power::V1_0::Status"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "SUCCESS"
-        scalar_value: {
-            uint32_t: 0
-        }
-        enumerator: "FILESYSTEM_ERROR"
-        scalar_value: {
-            uint32_t: 1
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::power::V1_0::PowerStateVoter"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "name"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "totalTimeInMsecVotedForSinceBoot"
-        type: TYPE_SCALAR
-        scalar_type: "uint64_t"
-    }
-    struct_value: {
-        name: "totalNumberOfTimesVotedSinceBoot"
-        type: TYPE_SCALAR
-        scalar_type: "uint64_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::power::V1_0::PowerStatePlatformSleepState"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "name"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "residencyInMsecSinceBoot"
-        type: TYPE_SCALAR
-        scalar_type: "uint64_t"
-    }
-    struct_value: {
-        name: "totalTransitions"
-        type: TYPE_SCALAR
-        scalar_type: "uint64_t"
-    }
-    struct_value: {
-        name: "supportedOnlyInSuspend"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "voters"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::power::V1_0::PowerStateVoter"
-        }
-    }
-}
-
diff --git a/radio/1.0/IRadio.hal b/radio/1.0/IRadio.hal
index bda7d65..baa4df6 100644
--- a/radio/1.0/IRadio.hal
+++ b/radio/1.0/IRadio.hal
@@ -726,26 +726,6 @@
     oneway getDataCallList(int32_t serial);
 
     /*
-     * This request is reserved for OEM-specific uses. It passes raw byte arrays back and forth.
-     *
-     * @param serial Serial number of request.
-     * @param data data passed as raw bytes to oem
-     *
-     * Response function is IRadioResponse.sendOemRadioRequestRawResponse()
-     */
-    oneway sendOemRadioRequestRaw(int32_t serial, vec<uint8_t> data);
-
-    /*
-     * This request is reserved for OEM-specific uses. It passes strings back and forth.
-     *
-     * @param serial Serial number of request.
-     * @param data data passed as strings to oem
-     *
-     * Response function is IRadioResponse.sendOemRadioRequestStringsResponse()
-     */
-    oneway sendOemRadioRequestStrings(int32_t serial, vec<string> data);
-
-    /*
      * Indicates the current state of the screen. When the screen is off, the
      * Radio must notify the baseband to suppress certain notifications (eg,
      * signal strength and changes in LAC/CID or BID/SID/NID/latitude/longitude)
diff --git a/radio/1.0/IRadioIndication.hal b/radio/1.0/IRadioIndication.hal
index 81ac13a..0b95821 100644
--- a/radio/1.0/IRadioIndication.hal
+++ b/radio/1.0/IRadioIndication.hal
@@ -293,14 +293,6 @@
    oneway cdmaInfoRec(RadioIndicationType type, CdmaInformationRecords records);
 
    /*
-    * This is for OEM specific use.
-    *
-    * @param type Type of radio indication
-    * @param data data passed as raw bytes
-    */
-   oneway oemHookRaw(RadioIndicationType type, vec<uint8_t> data);
-
-   /*
     * Indicates that nework doesn't have in-band information, need to
     * play out-band tone.
     *
diff --git a/radio/1.0/IRadioResponse.hal b/radio/1.0/IRadioResponse.hal
index 637f697..11a1d03 100644
--- a/radio/1.0/IRadioResponse.hal
+++ b/radio/1.0/IRadioResponse.hal
@@ -923,30 +923,6 @@
 
     /*
      * @param info Response info struct containing response type, serial no. and error
-     * @param data data returned by oem
-     *
-     * Valid errors returned:
-     *   RadioError:NONE
-     *   RadioError:RADIO_NOT_AVAILABLE
-     *   RadioError:INVALID_ARGUMENTS
-     *   RadioError:OEM_ERROR_X
-     */
-    oneway sendOemRilRequestRawResponse(RadioResponseInfo info, vec<uint8_t> data);
-
-    /*
-     * @param info Response info struct containing response type, serial no. and error
-     * @param data data returned by oem
-     *
-     * Valid errors returned:
-     *   RadioError:NONE
-     *   RadioError:RADIO_NOT_AVAILABLE
-     *   RadioError:INVALID_ARGUMENTS
-     *   RadioError:OEM_ERROR_X
-     */
-    oneway sendOemRilRequestStringsResponse(RadioResponseInfo info, vec<string> data);
-
-    /*
-     * @param info Response info struct containing response type, serial no. and error
      *
      * Valid errors returned:
      *   RadioError:NONE
diff --git a/radio/1.0/vts/Radio.vts b/radio/1.0/vts/Radio.vts
deleted file mode 100644
index 68cf620..0000000
--- a/radio/1.0/vts/Radio.vts
+++ /dev/null
@@ -1,1521 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "IRadio"
-
-package: "android.hardware.radio"
-
-import: "android.hardware.radio@1.0::IRadioIndication"
-import: "android.hardware.radio@1.0::IRadioResponse"
-import: "android.hardware.radio@1.0::types"
-import: "android.hidl.base@1.0::types"
-
-interface: {
-    api: {
-        name: "setResponseFunctions"
-        arg: {
-            type: TYPE_HIDL_INTERFACE
-            predefined_type: "::android::hardware::radio::V1_0::IRadioResponse"
-        }
-        arg: {
-            type: TYPE_HIDL_INTERFACE
-            predefined_type: "::android::hardware::radio::V1_0::IRadioIndication"
-        }
-    }
-
-    api: {
-        name: "getIccCardStatus"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "supplyIccPinForApp"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "supplyIccPukForApp"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "supplyIccPin2ForApp"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "supplyIccPuk2ForApp"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "changeIccPinForApp"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "changeIccPin2ForApp"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "supplyNetworkDepersonalization"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "getCurrentCalls"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "dial"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::Dial"
-        }
-    }
-
-    api: {
-        name: "getImsiForApp"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "hangup"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "hangupWaitingOrBackground"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "hangupForegroundResumeBackground"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "switchWaitingOrHoldingAndActive"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "conference"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "rejectCall"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "getLastCallFailCause"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "getSignalStrength"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "getVoiceRegistrationState"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "getDataRegistrationState"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "getOperator"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "setRadioPower"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-    }
-
-    api: {
-        name: "sendDtmf"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "sendSms"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::GsmSmsMessage"
-        }
-    }
-
-    api: {
-        name: "sendSMSExpectMore"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::GsmSmsMessage"
-        }
-    }
-
-    api: {
-        name: "setupDataCall"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioTechnology"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::DataProfileInfo"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-    }
-
-    api: {
-        name: "iccIOForApp"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::IccIo"
-        }
-    }
-
-    api: {
-        name: "sendUssd"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "cancelPendingUssd"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "getClir"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "setClir"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "getCallForwardStatus"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::CallForwardInfo"
-        }
-    }
-
-    api: {
-        name: "setCallForward"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::CallForwardInfo"
-        }
-    }
-
-    api: {
-        name: "getCallWaiting"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "setCallWaiting"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "acknowledgeLastIncomingGsmSms"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::SmsAcknowledgeFailCause"
-        }
-    }
-
-    api: {
-        name: "acceptCall"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "deactivateDataCall"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-    }
-
-    api: {
-        name: "getFacilityLockForApp"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "setFacilityLockForApp"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "setBarringPassword"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "getNetworkSelectionMode"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "setNetworkSelectionModeAutomatic"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "setNetworkSelectionModeManual"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "getAvailableNetworks"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "startDtmf"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "stopDtmf"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "getBasebandVersion"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "separateConnection"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "setMute"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-    }
-
-    api: {
-        name: "getMute"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "getClip"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "getDataCallList"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "sendOemRadioRequestRaw"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-    }
-
-    api: {
-        name: "sendOemRadioRequestStrings"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_STRING
-            }
-        }
-    }
-
-    api: {
-        name: "sendScreenState"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-    }
-
-    api: {
-        name: "setSuppServiceNotifications"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-    }
-
-    api: {
-        name: "writeSmsToSim"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::SmsWriteArgs"
-        }
-    }
-
-    api: {
-        name: "deleteSmsOnSim"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "setBandMode"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioBandMode"
-        }
-    }
-
-    api: {
-        name: "getAvailableBandModes"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "sendEnvelope"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "sendTerminalResponseToSim"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "handleStkCallSetupRequestFromSim"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-    }
-
-    api: {
-        name: "explicitCallTransfer"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "setPreferredNetworkType"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::PreferredNetworkType"
-        }
-    }
-
-    api: {
-        name: "getPreferredNetworkType"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "getNeighboringCids"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "setLocationUpdates"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-    }
-
-    api: {
-        name: "setCdmaSubscriptionSource"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::CdmaSubscriptionSource"
-        }
-    }
-
-    api: {
-        name: "setCdmaRoamingPreference"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::CdmaRoamingType"
-        }
-    }
-
-    api: {
-        name: "getCdmaRoamingPreference"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "setTTYMode"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::TtyMode"
-        }
-    }
-
-    api: {
-        name: "getTTYMode"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "setPreferredVoicePrivacy"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-    }
-
-    api: {
-        name: "getPreferredVoicePrivacy"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "sendCDMAFeatureCode"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "sendBurstDtmf"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "sendCdmaSms"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::CdmaSmsMessage"
-        }
-    }
-
-    api: {
-        name: "acknowledgeLastIncomingCdmaSms"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::CdmaSmsAck"
-        }
-    }
-
-    api: {
-        name: "getGsmBroadcastConfig"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "setGsmBroadcastConfig"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_STRUCT
-                predefined_type: "::android::hardware::radio::V1_0::GsmBroadcastSmsConfigInfo"
-            }
-        }
-    }
-
-    api: {
-        name: "setGsmBroadcastActivation"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-    }
-
-    api: {
-        name: "getCdmaBroadcastConfig"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "setCdmaBroadcastConfig"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_STRUCT
-                predefined_type: "::android::hardware::radio::V1_0::CdmaBroadcastSmsConfigInfo"
-            }
-        }
-    }
-
-    api: {
-        name: "setCdmaBroadcastActivation"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-    }
-
-    api: {
-        name: "getCDMASubscription"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "writeSmsToRuim"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::CdmaSmsWriteArgs"
-        }
-    }
-
-    api: {
-        name: "deleteSmsOnRuim"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "getDeviceIdentity"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "exitEmergencyCallbackMode"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "getSmscAddress"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "setSmscAddress"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "reportSmsMemoryStatus"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-    }
-
-    api: {
-        name: "reportStkServiceIsRunning"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "getCdmaSubscriptionSource"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "requestIsimAuthentication"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "acknowledgeIncomingGsmSmsWithPdu"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "sendEnvelopeWithStatus"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "getVoiceRadioTechnology"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "getCellInfoList"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "setCellInfoListRate"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "setInitialAttachApn"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::DataProfileInfo"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-    }
-
-    api: {
-        name: "getImsRegistrationState"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "sendImsSms"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::ImsSmsMessage"
-        }
-    }
-
-    api: {
-        name: "iccTransmitApduBasicChannel"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::SimApdu"
-        }
-    }
-
-    api: {
-        name: "iccOpenLogicalChannel"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "iccCloseLogicalChannel"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "iccTransmitApduLogicalChannel"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::SimApdu"
-        }
-    }
-
-    api: {
-        name: "nvReadItem"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::NvItem"
-        }
-    }
-
-    api: {
-        name: "nvWriteItem"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::NvWriteItem"
-        }
-    }
-
-    api: {
-        name: "nvWriteCdmaPrl"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-    }
-
-    api: {
-        name: "nvResetConfig"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::ResetNvType"
-        }
-    }
-
-    api: {
-        name: "setUiccSubscription"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::SelectUiccSub"
-        }
-    }
-
-    api: {
-        name: "setDataAllowed"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-    }
-
-    api: {
-        name: "getHardwareConfig"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "requestIccSimAuthentication"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "setDataProfile"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_STRUCT
-                predefined_type: "::android::hardware::radio::V1_0::DataProfileInfo"
-            }
-        }
-    }
-
-    api: {
-        name: "requestShutdown"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "getRadioCapability"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "setRadioCapability"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioCapability"
-        }
-    }
-
-    api: {
-        name: "startLceService"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-    }
-
-    api: {
-        name: "stopLceService"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "pullLceData"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "getModemActivityInfo"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "setAllowedCarriers"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::CarrierRestrictions"
-        }
-    }
-
-    api: {
-        name: "getAllowedCarriers"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "sendDeviceState"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::DeviceStateType"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-    }
-
-    api: {
-        name: "setIndicationFilter"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_MASK
-            scalar_type: "int32_t"
-            predefined_type: "::android::hardware::radio::V1_0::IndicationFilter"
-        }
-    }
-
-    api: {
-        name: "setSimCardPower"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-    }
-
-    api: {
-        name: "responseAcknowledgement"
-    }
-
-}
diff --git a/radio/1.0/vts/RadioIndication.vts b/radio/1.0/vts/RadioIndication.vts
deleted file mode 100644
index cce8ada..0000000
--- a/radio/1.0/vts/RadioIndication.vts
+++ /dev/null
@@ -1,546 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "IRadioIndication"
-
-package: "android.hardware.radio"
-
-import: "android.hardware.radio@1.0::types"
-import: "android.hidl.base@1.0::types"
-
-interface: {
-    api: {
-        name: "radioStateChanged"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioState"
-        }
-    }
-
-    api: {
-        name: "callStateChanged"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-    }
-
-    api: {
-        name: "networkStateChanged"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-    }
-
-    api: {
-        name: "newSms"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-    }
-
-    api: {
-        name: "newSmsStatusReport"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-    }
-
-    api: {
-        name: "newSmsOnSim"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "onUssd"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::UssdModeType"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "nitzTimeReceived"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint64_t"
-        }
-    }
-
-    api: {
-        name: "currentSignalStrength"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::SignalStrength"
-        }
-    }
-
-    api: {
-        name: "dataCallListChanged"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_STRUCT
-                predefined_type: "::android::hardware::radio::V1_0::SetupDataCallResult"
-            }
-        }
-    }
-
-    api: {
-        name: "suppSvcNotify"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::SuppSvcNotification"
-        }
-    }
-
-    api: {
-        name: "stkSessionEnd"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-    }
-
-    api: {
-        name: "stkProactiveCommand"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "stkEventNotify"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "stkCallSetup"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int64_t"
-        }
-    }
-
-    api: {
-        name: "simSmsStorageFull"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-    }
-
-    api: {
-        name: "simRefresh"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::SimRefreshResult"
-        }
-    }
-
-    api: {
-        name: "callRing"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::CdmaSignalInfoRecord"
-        }
-    }
-
-    api: {
-        name: "simStatusChanged"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-    }
-
-    api: {
-        name: "cdmaNewSms"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::CdmaSmsMessage"
-        }
-    }
-
-    api: {
-        name: "newBroadcastSms"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-    }
-
-    api: {
-        name: "cdmaRuimSmsStorageFull"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-    }
-
-    api: {
-        name: "restrictedStateChanged"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::PhoneRestrictedState"
-        }
-    }
-
-    api: {
-        name: "enterEmergencyCallbackMode"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-    }
-
-    api: {
-        name: "cdmaCallWaiting"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::CdmaCallWaiting"
-        }
-    }
-
-    api: {
-        name: "cdmaOtaProvisionStatus"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::CdmaOtaProvisionStatus"
-        }
-    }
-
-    api: {
-        name: "cdmaInfoRec"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::CdmaInformationRecords"
-        }
-    }
-
-    api: {
-        name: "oemHookRaw"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-    }
-
-    api: {
-        name: "indicateRingbackTone"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-    }
-
-    api: {
-        name: "resendIncallMute"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-    }
-
-    api: {
-        name: "cdmaSubscriptionSourceChanged"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::CdmaSubscriptionSource"
-        }
-    }
-
-    api: {
-        name: "cdmaPrlChanged"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "exitEmergencyCallbackMode"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-    }
-
-    api: {
-        name: "rilConnected"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-    }
-
-    api: {
-        name: "voiceRadioTechChanged"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioTechnology"
-        }
-    }
-
-    api: {
-        name: "cellInfoList"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_STRUCT
-                predefined_type: "::android::hardware::radio::V1_0::CellInfo"
-            }
-        }
-    }
-
-    api: {
-        name: "imsNetworkStateChanged"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-    }
-
-    api: {
-        name: "subscriptionStatusChanged"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-    }
-
-    api: {
-        name: "srvccStateNotify"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::SrvccState"
-        }
-    }
-
-    api: {
-        name: "hardwareConfigChanged"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_STRUCT
-                predefined_type: "::android::hardware::radio::V1_0::HardwareConfig"
-            }
-        }
-    }
-
-    api: {
-        name: "radioCapabilityIndication"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioCapability"
-        }
-    }
-
-    api: {
-        name: "onSupplementaryServiceIndication"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::StkCcUnsolSsResult"
-        }
-    }
-
-    api: {
-        name: "stkCallControlAlphaNotify"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "lceData"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::LceDataInfo"
-        }
-    }
-
-    api: {
-        name: "pcoData"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::PcoDataInfo"
-        }
-    }
-
-    api: {
-        name: "modemReset"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioIndicationType"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-}
diff --git a/radio/1.0/vts/RadioResponse.vts b/radio/1.0/vts/RadioResponse.vts
deleted file mode 100644
index a6c5223..0000000
--- a/radio/1.0/vts/RadioResponse.vts
+++ /dev/null
@@ -1,1415 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "IRadioResponse"
-
-package: "android.hardware.radio"
-
-import: "android.hardware.radio@1.0::types"
-import: "android.hidl.base@1.0::types"
-
-interface: {
-    api: {
-        name: "getIccCardStatusResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::CardStatus"
-        }
-    }
-
-    api: {
-        name: "supplyIccPinForAppResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "supplyIccPukForAppResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "supplyIccPin2ForAppResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "supplyIccPuk2ForAppResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "changeIccPinForAppResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "changeIccPin2ForAppResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "supplyNetworkDepersonalizationResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "getCurrentCallsResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_STRUCT
-                predefined_type: "::android::hardware::radio::V1_0::Call"
-            }
-        }
-    }
-
-    api: {
-        name: "dialResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "getIMSIForAppResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "hangupConnectionResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "hangupWaitingOrBackgroundResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "hangupForegroundResumeBackgroundResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "switchWaitingOrHoldingAndActiveResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "conferenceResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "rejectCallResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "getLastCallFailCauseResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::LastCallFailCauseInfo"
-        }
-    }
-
-    api: {
-        name: "getSignalStrengthResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::SignalStrength"
-        }
-    }
-
-    api: {
-        name: "getVoiceRegistrationStateResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::VoiceRegStateResult"
-        }
-    }
-
-    api: {
-        name: "getDataRegistrationStateResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::DataRegStateResult"
-        }
-    }
-
-    api: {
-        name: "getOperatorResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "setRadioPowerResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "sendDtmfResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "sendSmsResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::SendSmsResult"
-        }
-    }
-
-    api: {
-        name: "sendSMSExpectMoreResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::SendSmsResult"
-        }
-    }
-
-    api: {
-        name: "setupDataCallResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::SetupDataCallResult"
-        }
-    }
-
-    api: {
-        name: "iccIOForAppResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::IccIoResult"
-        }
-    }
-
-    api: {
-        name: "sendUssdResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "cancelPendingUssdResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "getClirResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "setClirResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "getCallForwardStatusResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_STRUCT
-                predefined_type: "::android::hardware::radio::V1_0::CallForwardInfo"
-            }
-        }
-    }
-
-    api: {
-        name: "setCallForwardResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "getCallWaitingResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "setCallWaitingResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "acknowledgeLastIncomingGsmSmsResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "acceptCallResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "deactivateDataCallResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "getFacilityLockForAppResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "setFacilityLockForAppResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "setBarringPasswordResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "getNetworkSelectionModeResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-    }
-
-    api: {
-        name: "setNetworkSelectionModeAutomaticResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "setNetworkSelectionModeManualResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "getAvailableNetworksResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_STRUCT
-                predefined_type: "::android::hardware::radio::V1_0::OperatorInfo"
-            }
-        }
-    }
-
-    api: {
-        name: "startDtmfResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "stopDtmfResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "getBasebandVersionResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "separateConnectionResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "setMuteResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "getMuteResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-    }
-
-    api: {
-        name: "getClipResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::ClipStatus"
-        }
-    }
-
-    api: {
-        name: "getDataCallListResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_STRUCT
-                predefined_type: "::android::hardware::radio::V1_0::SetupDataCallResult"
-            }
-        }
-    }
-
-    api: {
-        name: "sendOemRilRequestRawResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-    }
-
-    api: {
-        name: "sendOemRilRequestStringsResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_STRING
-            }
-        }
-    }
-
-    api: {
-        name: "sendScreenStateResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "setSuppServiceNotificationsResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "writeSmsToSimResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "deleteSmsOnSimResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "setBandModeResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "getAvailableBandModesResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_ENUM
-                predefined_type: "::android::hardware::radio::V1_0::RadioBandMode"
-            }
-        }
-    }
-
-    api: {
-        name: "sendEnvelopeResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "sendTerminalResponseToSimResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "handleStkCallSetupRequestFromSimResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "explicitCallTransferResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "setPreferredNetworkTypeResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "getPreferredNetworkTypeResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::PreferredNetworkType"
-        }
-    }
-
-    api: {
-        name: "getNeighboringCidsResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_STRUCT
-                predefined_type: "::android::hardware::radio::V1_0::NeighboringCell"
-            }
-        }
-    }
-
-    api: {
-        name: "setLocationUpdatesResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "setCdmaSubscriptionSourceResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "setCdmaRoamingPreferenceResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "getCdmaRoamingPreferenceResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::CdmaRoamingType"
-        }
-    }
-
-    api: {
-        name: "setTTYModeResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "getTTYModeResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::TtyMode"
-        }
-    }
-
-    api: {
-        name: "setPreferredVoicePrivacyResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "getPreferredVoicePrivacyResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-    }
-
-    api: {
-        name: "sendCDMAFeatureCodeResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "sendBurstDtmfResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "sendCdmaSmsResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::SendSmsResult"
-        }
-    }
-
-    api: {
-        name: "acknowledgeLastIncomingCdmaSmsResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "getGsmBroadcastConfigResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_STRUCT
-                predefined_type: "::android::hardware::radio::V1_0::GsmBroadcastSmsConfigInfo"
-            }
-        }
-    }
-
-    api: {
-        name: "setGsmBroadcastConfigResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "setGsmBroadcastActivationResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "getCdmaBroadcastConfigResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_STRUCT
-                predefined_type: "::android::hardware::radio::V1_0::CdmaBroadcastSmsConfigInfo"
-            }
-        }
-    }
-
-    api: {
-        name: "setCdmaBroadcastConfigResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "setCdmaBroadcastActivationResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "getCDMASubscriptionResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "writeSmsToRuimResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-    }
-
-    api: {
-        name: "deleteSmsOnRuimResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "getDeviceIdentityResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "exitEmergencyCallbackModeResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "getSmscAddressResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "setSmscAddressResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "reportSmsMemoryStatusResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "reportStkServiceIsRunningResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "getCdmaSubscriptionSourceResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::CdmaSubscriptionSource"
-        }
-    }
-
-    api: {
-        name: "requestIsimAuthenticationResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "acknowledgeIncomingGsmSmsWithPduResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "sendEnvelopeWithStatusResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::IccIoResult"
-        }
-    }
-
-    api: {
-        name: "getVoiceRadioTechnologyResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioTechnology"
-        }
-    }
-
-    api: {
-        name: "getCellInfoListResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_STRUCT
-                predefined_type: "::android::hardware::radio::V1_0::CellInfo"
-            }
-        }
-    }
-
-    api: {
-        name: "setCellInfoListRateResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "setInitialAttachApnResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "getImsRegistrationStateResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::RadioTechnologyFamily"
-        }
-    }
-
-    api: {
-        name: "sendImsSmsResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::SendSmsResult"
-        }
-    }
-
-    api: {
-        name: "iccTransmitApduBasicChannelResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::IccIoResult"
-        }
-    }
-
-    api: {
-        name: "iccOpenLogicalChannelResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "int8_t"
-            }
-        }
-    }
-
-    api: {
-        name: "iccCloseLogicalChannelResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "iccTransmitApduLogicalChannelResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::IccIoResult"
-        }
-    }
-
-    api: {
-        name: "nvReadItemResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "nvWriteItemResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "nvWriteCdmaPrlResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "nvResetConfigResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "setUiccSubscriptionResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "setDataAllowedResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "getHardwareConfigResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_STRUCT
-                predefined_type: "::android::hardware::radio::V1_0::HardwareConfig"
-            }
-        }
-    }
-
-    api: {
-        name: "requestIccSimAuthenticationResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::IccIoResult"
-        }
-    }
-
-    api: {
-        name: "setDataProfileResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "requestShutdownResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "getRadioCapabilityResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioCapability"
-        }
-    }
-
-    api: {
-        name: "setRadioCapabilityResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioCapability"
-        }
-    }
-
-    api: {
-        name: "startLceServiceResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::LceStatusInfo"
-        }
-    }
-
-    api: {
-        name: "stopLceServiceResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::LceStatusInfo"
-        }
-    }
-
-    api: {
-        name: "pullLceDataResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::LceDataInfo"
-        }
-    }
-
-    api: {
-        name: "getModemActivityInfoResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::ActivityStatsInfo"
-        }
-    }
-
-    api: {
-        name: "setAllowedCarriersResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "getAllowedCarriersResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::CarrierRestrictions"
-        }
-    }
-
-    api: {
-        name: "sendDeviceStateResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "setIndicationFilterResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "setSimCardPowerResponse"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::RadioResponseInfo"
-        }
-    }
-
-    api: {
-        name: "acknowledgeRequest"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-}
diff --git a/radio/1.0/vts/Sap.vts b/radio/1.0/vts/Sap.vts
deleted file mode 100644
index b4983da..0000000
--- a/radio/1.0/vts/Sap.vts
+++ /dev/null
@@ -1,107 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "ISap"
-
-package: "android.hardware.radio"
-
-import: "android.hardware.radio@1.0::ISapCallback"
-import: "android.hardware.radio@1.0::types"
-import: "android.hidl.base@1.0::types"
-
-interface: {
-    api: {
-        name: "setCallback"
-        arg: {
-            type: TYPE_HIDL_CALLBACK
-            predefined_type: "::android::hardware::radio::V1_0::ISapCallback"
-        }
-    }
-
-    api: {
-        name: "connectReq"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "disconnectReq"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "apduReq"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::SapApduType"
-        }
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-    }
-
-    api: {
-        name: "transferAtrReq"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "powerReq"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-    }
-
-    api: {
-        name: "resetSimReq"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "transferCardReaderStatusReq"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "setTransferProtocolReq"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::SapTransferProtocol"
-        }
-    }
-
-}
diff --git a/radio/1.0/vts/SapCallback.vts b/radio/1.0/vts/SapCallback.vts
deleted file mode 100644
index 3a33dba..0000000
--- a/radio/1.0/vts/SapCallback.vts
+++ /dev/null
@@ -1,157 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "ISapCallback"
-
-package: "android.hardware.radio"
-
-import: "android.hardware.radio@1.0::types"
-import: "android.hidl.base@1.0::types"
-
-interface: {
-    api: {
-        name: "connectResponse"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::SapConnectRsp"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "disconnectResponse"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "disconnectIndication"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::SapDisconnectType"
-        }
-    }
-
-    api: {
-        name: "apduResponse"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::SapResultCode"
-        }
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-    }
-
-    api: {
-        name: "transferAtrResponse"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::SapResultCode"
-        }
-        arg: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-    }
-
-    api: {
-        name: "powerResponse"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::SapResultCode"
-        }
-    }
-
-    api: {
-        name: "resetSimResponse"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::SapResultCode"
-        }
-    }
-
-    api: {
-        name: "statusIndication"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::SapStatus"
-        }
-    }
-
-    api: {
-        name: "transferCardReaderStatusResponse"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::SapResultCode"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "errorResponse"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "transferProtocolResponse"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::radio::V1_0::SapResultCode"
-        }
-    }
-
-}
diff --git a/radio/1.0/vts/types.vts b/radio/1.0/vts/types.vts
deleted file mode 100644
index 6d42016..0000000
--- a/radio/1.0/vts/types.vts
+++ /dev/null
@@ -1,5696 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "types"
-
-package: "android.hardware.radio"
-
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::RadioConst"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "CDMA_ALPHA_INFO_BUFFER_LENGTH"
-        scalar_value: {
-            int32_t: 64
-        }
-        enumerator: "CDMA_NUMBER_INFO_BUFFER_LENGTH"
-        scalar_value: {
-            int32_t: 81
-        }
-        enumerator: "MAX_RILDS"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "MAX_SOCKET_NAME_LENGTH"
-        scalar_value: {
-            int32_t: 6
-        }
-        enumerator: "MAX_CLIENT_ID_LENGTH"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "MAX_DEBUG_SOCKET_NAME_LENGTH"
-        scalar_value: {
-            int32_t: 12
-        }
-        enumerator: "MAX_QEMU_PIPE_NAME_LENGTH"
-        scalar_value: {
-            int32_t: 11
-        }
-        enumerator: "MAX_UUID_LENGTH"
-        scalar_value: {
-            int32_t: 64
-        }
-        enumerator: "CARD_MAX_APPS"
-        scalar_value: {
-            int32_t: 8
-        }
-        enumerator: "CDMA_MAX_NUMBER_OF_INFO_RECS"
-        scalar_value: {
-            int32_t: 10
-        }
-        enumerator: "SS_INFO_MAX"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "NUM_SERVICE_CLASSES"
-        scalar_value: {
-            int32_t: 7
-        }
-        enumerator: "NUM_TX_POWER_LEVELS"
-        scalar_value: {
-            int32_t: 5
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::RadioCdmaSmsConst"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "ADDRESS_MAX"
-        scalar_value: {
-            int32_t: 36
-        }
-        enumerator: "SUBADDRESS_MAX"
-        scalar_value: {
-            int32_t: 36
-        }
-        enumerator: "BEARER_DATA_MAX"
-        scalar_value: {
-            int32_t: 255
-        }
-        enumerator: "UDH_MAX_SND_SIZE"
-        scalar_value: {
-            int32_t: 128
-        }
-        enumerator: "UDH_EO_DATA_SEGMENT_MAX"
-        scalar_value: {
-            int32_t: 131
-        }
-        enumerator: "MAX_UD_HEADERS"
-        scalar_value: {
-            int32_t: 7
-        }
-        enumerator: "USER_DATA_MAX"
-        scalar_value: {
-            int32_t: 229
-        }
-        enumerator: "UDH_LARGE_PIC_SIZE"
-        scalar_value: {
-            int32_t: 128
-        }
-        enumerator: "UDH_SMALL_PIC_SIZE"
-        scalar_value: {
-            int32_t: 32
-        }
-        enumerator: "UDH_VAR_PIC_SIZE"
-        scalar_value: {
-            int32_t: 134
-        }
-        enumerator: "UDH_ANIM_NUM_BITMAPS"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "UDH_LARGE_BITMAP_SIZE"
-        scalar_value: {
-            int32_t: 32
-        }
-        enumerator: "UDH_SMALL_BITMAP_SIZE"
-        scalar_value: {
-            int32_t: 8
-        }
-        enumerator: "UDH_OTHER_SIZE"
-        scalar_value: {
-            int32_t: 226
-        }
-        enumerator: "IP_ADDRESS_SIZE"
-        scalar_value: {
-            int32_t: 4
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::RadioError"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "NONE"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "RADIO_NOT_AVAILABLE"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "GENERIC_FAILURE"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "PASSWORD_INCORRECT"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "SIM_PIN2"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "SIM_PUK2"
-        scalar_value: {
-            int32_t: 5
-        }
-        enumerator: "REQUEST_NOT_SUPPORTED"
-        scalar_value: {
-            int32_t: 6
-        }
-        enumerator: "CANCELLED"
-        scalar_value: {
-            int32_t: 7
-        }
-        enumerator: "OP_NOT_ALLOWED_DURING_VOICE_CALL"
-        scalar_value: {
-            int32_t: 8
-        }
-        enumerator: "OP_NOT_ALLOWED_BEFORE_REG_TO_NW"
-        scalar_value: {
-            int32_t: 9
-        }
-        enumerator: "SMS_SEND_FAIL_RETRY"
-        scalar_value: {
-            int32_t: 10
-        }
-        enumerator: "SIM_ABSENT"
-        scalar_value: {
-            int32_t: 11
-        }
-        enumerator: "SUBSCRIPTION_NOT_AVAILABLE"
-        scalar_value: {
-            int32_t: 12
-        }
-        enumerator: "MODE_NOT_SUPPORTED"
-        scalar_value: {
-            int32_t: 13
-        }
-        enumerator: "FDN_CHECK_FAILURE"
-        scalar_value: {
-            int32_t: 14
-        }
-        enumerator: "ILLEGAL_SIM_OR_ME"
-        scalar_value: {
-            int32_t: 15
-        }
-        enumerator: "MISSING_RESOURCE"
-        scalar_value: {
-            int32_t: 16
-        }
-        enumerator: "NO_SUCH_ELEMENT"
-        scalar_value: {
-            int32_t: 17
-        }
-        enumerator: "DIAL_MODIFIED_TO_USSD"
-        scalar_value: {
-            int32_t: 18
-        }
-        enumerator: "DIAL_MODIFIED_TO_SS"
-        scalar_value: {
-            int32_t: 19
-        }
-        enumerator: "DIAL_MODIFIED_TO_DIAL"
-        scalar_value: {
-            int32_t: 20
-        }
-        enumerator: "USSD_MODIFIED_TO_DIAL"
-        scalar_value: {
-            int32_t: 21
-        }
-        enumerator: "USSD_MODIFIED_TO_SS"
-        scalar_value: {
-            int32_t: 22
-        }
-        enumerator: "USSD_MODIFIED_TO_USSD"
-        scalar_value: {
-            int32_t: 23
-        }
-        enumerator: "SS_MODIFIED_TO_DIAL"
-        scalar_value: {
-            int32_t: 24
-        }
-        enumerator: "SS_MODIFIED_TO_USSD"
-        scalar_value: {
-            int32_t: 25
-        }
-        enumerator: "SUBSCRIPTION_NOT_SUPPORTED"
-        scalar_value: {
-            int32_t: 26
-        }
-        enumerator: "SS_MODIFIED_TO_SS"
-        scalar_value: {
-            int32_t: 27
-        }
-        enumerator: "LCE_NOT_SUPPORTED"
-        scalar_value: {
-            int32_t: 36
-        }
-        enumerator: "NO_MEMORY"
-        scalar_value: {
-            int32_t: 37
-        }
-        enumerator: "INTERNAL_ERR"
-        scalar_value: {
-            int32_t: 38
-        }
-        enumerator: "SYSTEM_ERR"
-        scalar_value: {
-            int32_t: 39
-        }
-        enumerator: "MODEM_ERR"
-        scalar_value: {
-            int32_t: 40
-        }
-        enumerator: "INVALID_STATE"
-        scalar_value: {
-            int32_t: 41
-        }
-        enumerator: "NO_RESOURCES"
-        scalar_value: {
-            int32_t: 42
-        }
-        enumerator: "SIM_ERR"
-        scalar_value: {
-            int32_t: 43
-        }
-        enumerator: "INVALID_ARGUMENTS"
-        scalar_value: {
-            int32_t: 44
-        }
-        enumerator: "INVALID_SIM_STATE"
-        scalar_value: {
-            int32_t: 45
-        }
-        enumerator: "INVALID_MODEM_STATE"
-        scalar_value: {
-            int32_t: 46
-        }
-        enumerator: "INVALID_CALL_ID"
-        scalar_value: {
-            int32_t: 47
-        }
-        enumerator: "NO_SMS_TO_ACK"
-        scalar_value: {
-            int32_t: 48
-        }
-        enumerator: "NETWORK_ERR"
-        scalar_value: {
-            int32_t: 49
-        }
-        enumerator: "REQUEST_RATE_LIMITED"
-        scalar_value: {
-            int32_t: 50
-        }
-        enumerator: "SIM_BUSY"
-        scalar_value: {
-            int32_t: 51
-        }
-        enumerator: "SIM_FULL"
-        scalar_value: {
-            int32_t: 52
-        }
-        enumerator: "NETWORK_REJECT"
-        scalar_value: {
-            int32_t: 53
-        }
-        enumerator: "OPERATION_NOT_ALLOWED"
-        scalar_value: {
-            int32_t: 54
-        }
-        enumerator: "EMPTY_RECORD"
-        scalar_value: {
-            int32_t: 55
-        }
-        enumerator: "INVALID_SMS_FORMAT"
-        scalar_value: {
-            int32_t: 56
-        }
-        enumerator: "ENCODING_ERR"
-        scalar_value: {
-            int32_t: 57
-        }
-        enumerator: "INVALID_SMSC_ADDRESS"
-        scalar_value: {
-            int32_t: 58
-        }
-        enumerator: "NO_SUCH_ENTRY"
-        scalar_value: {
-            int32_t: 59
-        }
-        enumerator: "NETWORK_NOT_READY"
-        scalar_value: {
-            int32_t: 60
-        }
-        enumerator: "NOT_PROVISIONED"
-        scalar_value: {
-            int32_t: 61
-        }
-        enumerator: "NO_SUBSCRIPTION"
-        scalar_value: {
-            int32_t: 62
-        }
-        enumerator: "NO_NETWORK_FOUND"
-        scalar_value: {
-            int32_t: 63
-        }
-        enumerator: "DEVICE_IN_USE"
-        scalar_value: {
-            int32_t: 64
-        }
-        enumerator: "ABORTED"
-        scalar_value: {
-            int32_t: 65
-        }
-        enumerator: "INVALID_RESPONSE"
-        scalar_value: {
-            int32_t: 66
-        }
-        enumerator: "OEM_ERROR_1"
-        scalar_value: {
-            int32_t: 501
-        }
-        enumerator: "OEM_ERROR_2"
-        scalar_value: {
-            int32_t: 502
-        }
-        enumerator: "OEM_ERROR_3"
-        scalar_value: {
-            int32_t: 503
-        }
-        enumerator: "OEM_ERROR_4"
-        scalar_value: {
-            int32_t: 504
-        }
-        enumerator: "OEM_ERROR_5"
-        scalar_value: {
-            int32_t: 505
-        }
-        enumerator: "OEM_ERROR_6"
-        scalar_value: {
-            int32_t: 506
-        }
-        enumerator: "OEM_ERROR_7"
-        scalar_value: {
-            int32_t: 507
-        }
-        enumerator: "OEM_ERROR_8"
-        scalar_value: {
-            int32_t: 508
-        }
-        enumerator: "OEM_ERROR_9"
-        scalar_value: {
-            int32_t: 509
-        }
-        enumerator: "OEM_ERROR_10"
-        scalar_value: {
-            int32_t: 510
-        }
-        enumerator: "OEM_ERROR_11"
-        scalar_value: {
-            int32_t: 511
-        }
-        enumerator: "OEM_ERROR_12"
-        scalar_value: {
-            int32_t: 512
-        }
-        enumerator: "OEM_ERROR_13"
-        scalar_value: {
-            int32_t: 513
-        }
-        enumerator: "OEM_ERROR_14"
-        scalar_value: {
-            int32_t: 514
-        }
-        enumerator: "OEM_ERROR_15"
-        scalar_value: {
-            int32_t: 515
-        }
-        enumerator: "OEM_ERROR_16"
-        scalar_value: {
-            int32_t: 516
-        }
-        enumerator: "OEM_ERROR_17"
-        scalar_value: {
-            int32_t: 517
-        }
-        enumerator: "OEM_ERROR_18"
-        scalar_value: {
-            int32_t: 518
-        }
-        enumerator: "OEM_ERROR_19"
-        scalar_value: {
-            int32_t: 519
-        }
-        enumerator: "OEM_ERROR_20"
-        scalar_value: {
-            int32_t: 520
-        }
-        enumerator: "OEM_ERROR_21"
-        scalar_value: {
-            int32_t: 521
-        }
-        enumerator: "OEM_ERROR_22"
-        scalar_value: {
-            int32_t: 522
-        }
-        enumerator: "OEM_ERROR_23"
-        scalar_value: {
-            int32_t: 523
-        }
-        enumerator: "OEM_ERROR_24"
-        scalar_value: {
-            int32_t: 524
-        }
-        enumerator: "OEM_ERROR_25"
-        scalar_value: {
-            int32_t: 525
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::RadioResponseType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "SOLICITED"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "SOLICITED_ACK"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "SOLICITED_ACK_EXP"
-        scalar_value: {
-            int32_t: 2
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::RadioIndicationType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "UNSOLICITED"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "UNSOLICITED_ACK_EXP"
-        scalar_value: {
-            int32_t: 1
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::RestrictedState"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "NONE"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "CS_EMERGENCY"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "CS_NORMAL"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "CS_ALL"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "PS_ALL"
-        scalar_value: {
-            int32_t: 16
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CardState"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "ABSENT"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "PRESENT"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "ERROR"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "RESTRICTED"
-        scalar_value: {
-            int32_t: 3
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::PinState"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "UNKNOWN"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "ENABLED_NOT_VERIFIED"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "ENABLED_VERIFIED"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "DISABLED"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "ENABLED_BLOCKED"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "ENABLED_PERM_BLOCKED"
-        scalar_value: {
-            int32_t: 5
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::AppType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "UNKNOWN"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "SIM"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "USIM"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "RUIM"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "CSIM"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "ISIM"
-        scalar_value: {
-            int32_t: 5
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::AppState"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "UNKNOWN"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "DETECTED"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "PIN"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "PUK"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "SUBSCRIPTION_PERSO"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "READY"
-        scalar_value: {
-            int32_t: 5
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::PersoSubstate"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "UNKNOWN"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "IN_PROGRESS"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "READY"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "SIM_NETWORK"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "SIM_NETWORK_SUBSET"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "SIM_CORPORATE"
-        scalar_value: {
-            int32_t: 5
-        }
-        enumerator: "SIM_SERVICE_PROVIDER"
-        scalar_value: {
-            int32_t: 6
-        }
-        enumerator: "SIM_SIM"
-        scalar_value: {
-            int32_t: 7
-        }
-        enumerator: "SIM_NETWORK_PUK"
-        scalar_value: {
-            int32_t: 8
-        }
-        enumerator: "SIM_NETWORK_SUBSET_PUK"
-        scalar_value: {
-            int32_t: 9
-        }
-        enumerator: "SIM_CORPORATE_PUK"
-        scalar_value: {
-            int32_t: 10
-        }
-        enumerator: "SIM_SERVICE_PROVIDER_PUK"
-        scalar_value: {
-            int32_t: 11
-        }
-        enumerator: "SIM_SIM_PUK"
-        scalar_value: {
-            int32_t: 12
-        }
-        enumerator: "RUIM_NETWORK1"
-        scalar_value: {
-            int32_t: 13
-        }
-        enumerator: "RUIM_NETWORK2"
-        scalar_value: {
-            int32_t: 14
-        }
-        enumerator: "RUIM_HRPD"
-        scalar_value: {
-            int32_t: 15
-        }
-        enumerator: "RUIM_CORPORATE"
-        scalar_value: {
-            int32_t: 16
-        }
-        enumerator: "RUIM_SERVICE_PROVIDER"
-        scalar_value: {
-            int32_t: 17
-        }
-        enumerator: "RUIM_RUIM"
-        scalar_value: {
-            int32_t: 18
-        }
-        enumerator: "RUIM_NETWORK1_PUK"
-        scalar_value: {
-            int32_t: 19
-        }
-        enumerator: "RUIM_NETWORK2_PUK"
-        scalar_value: {
-            int32_t: 20
-        }
-        enumerator: "RUIM_HRPD_PUK"
-        scalar_value: {
-            int32_t: 21
-        }
-        enumerator: "RUIM_CORPORATE_PUK"
-        scalar_value: {
-            int32_t: 22
-        }
-        enumerator: "RUIM_SERVICE_PROVIDER_PUK"
-        scalar_value: {
-            int32_t: 23
-        }
-        enumerator: "RUIM_RUIM_PUK"
-        scalar_value: {
-            int32_t: 24
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::RadioState"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "OFF"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "UNAVAILABLE"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "ON"
-        scalar_value: {
-            int32_t: 10
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::SapConnectRsp"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "SUCCESS"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "CONNECT_FAILURE"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "MSG_SIZE_TOO_LARGE"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "MSG_SIZE_TOO_SMALL"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "CONNECT_OK_CALL_ONGOING"
-        scalar_value: {
-            int32_t: 4
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::SapDisconnectType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "GRACEFUL"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "IMMEDIATE"
-        scalar_value: {
-            int32_t: 1
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::SapApduType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "APDU"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "APDU7816"
-        scalar_value: {
-            int32_t: 1
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::SapResultCode"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "SUCCESS"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "GENERIC_FAILURE"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "CARD_NOT_ACCESSSIBLE"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "CARD_ALREADY_POWERED_OFF"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "CARD_REMOVED"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "CARD_ALREADY_POWERED_ON"
-        scalar_value: {
-            int32_t: 5
-        }
-        enumerator: "DATA_NOT_AVAILABLE"
-        scalar_value: {
-            int32_t: 6
-        }
-        enumerator: "NOT_SUPPORTED"
-        scalar_value: {
-            int32_t: 7
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::SapStatus"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "UNKNOWN_ERROR"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "CARD_RESET"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "CARD_NOT_ACCESSIBLE"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "CARD_REMOVED"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "CARD_INSERTED"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "RECOVERED"
-        scalar_value: {
-            int32_t: 5
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::SapTransferProtocol"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "T0"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "T1"
-        scalar_value: {
-            int32_t: 1
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CallState"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "ACTIVE"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "HOLDING"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "DIALING"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "ALERTING"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "INCOMING"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "WAITING"
-        scalar_value: {
-            int32_t: 5
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::UusType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "TYPE1_IMPLICIT"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "TYPE1_REQUIRED"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "TYPE1_NOT_REQUIRED"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "TYPE2_REQUIRED"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "TYPE2_NOT_REQUIRED"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "TYPE3_REQUIRED"
-        scalar_value: {
-            int32_t: 5
-        }
-        enumerator: "TYPE3_NOT_REQUIRED"
-        scalar_value: {
-            int32_t: 6
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::UusDcs"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "USP"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "OSIHLP"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "X244"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "RMCF"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "IA5C"
-        scalar_value: {
-            int32_t: 4
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CallPresentation"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "ALLOWED"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "RESTRICTED"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "UNKNOWN"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "PAYPHONE"
-        scalar_value: {
-            int32_t: 3
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::Clir"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "DEFAULT"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "INVOCATION"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "SUPPRESSION"
-        scalar_value: {
-            int32_t: 2
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::LastCallFailCause"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "UNOBTAINABLE_NUMBER"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "NO_ROUTE_TO_DESTINATION"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "CHANNEL_UNACCEPTABLE"
-        scalar_value: {
-            int32_t: 6
-        }
-        enumerator: "OPERATOR_DETERMINED_BARRING"
-        scalar_value: {
-            int32_t: 8
-        }
-        enumerator: "NORMAL"
-        scalar_value: {
-            int32_t: 16
-        }
-        enumerator: "BUSY"
-        scalar_value: {
-            int32_t: 17
-        }
-        enumerator: "NO_USER_RESPONDING"
-        scalar_value: {
-            int32_t: 18
-        }
-        enumerator: "NO_ANSWER_FROM_USER"
-        scalar_value: {
-            int32_t: 19
-        }
-        enumerator: "CALL_REJECTED"
-        scalar_value: {
-            int32_t: 21
-        }
-        enumerator: "NUMBER_CHANGED"
-        scalar_value: {
-            int32_t: 22
-        }
-        enumerator: "PREEMPTION"
-        scalar_value: {
-            int32_t: 25
-        }
-        enumerator: "DESTINATION_OUT_OF_ORDER"
-        scalar_value: {
-            int32_t: 27
-        }
-        enumerator: "INVALID_NUMBER_FORMAT"
-        scalar_value: {
-            int32_t: 28
-        }
-        enumerator: "FACILITY_REJECTED"
-        scalar_value: {
-            int32_t: 29
-        }
-        enumerator: "RESP_TO_STATUS_ENQUIRY"
-        scalar_value: {
-            int32_t: 30
-        }
-        enumerator: "NORMAL_UNSPECIFIED"
-        scalar_value: {
-            int32_t: 31
-        }
-        enumerator: "CONGESTION"
-        scalar_value: {
-            int32_t: 34
-        }
-        enumerator: "NETWORK_OUT_OF_ORDER"
-        scalar_value: {
-            int32_t: 38
-        }
-        enumerator: "TEMPORARY_FAILURE"
-        scalar_value: {
-            int32_t: 41
-        }
-        enumerator: "SWITCHING_EQUIPMENT_CONGESTION"
-        scalar_value: {
-            int32_t: 42
-        }
-        enumerator: "ACCESS_INFORMATION_DISCARDED"
-        scalar_value: {
-            int32_t: 43
-        }
-        enumerator: "REQUESTED_CIRCUIT_OR_CHANNEL_NOT_AVAILABLE"
-        scalar_value: {
-            int32_t: 44
-        }
-        enumerator: "RESOURCES_UNAVAILABLE_OR_UNSPECIFIED"
-        scalar_value: {
-            int32_t: 47
-        }
-        enumerator: "QOS_UNAVAILABLE"
-        scalar_value: {
-            int32_t: 49
-        }
-        enumerator: "REQUESTED_FACILITY_NOT_SUBSCRIBED"
-        scalar_value: {
-            int32_t: 50
-        }
-        enumerator: "INCOMING_CALLS_BARRED_WITHIN_CUG"
-        scalar_value: {
-            int32_t: 55
-        }
-        enumerator: "BEARER_CAPABILITY_NOT_AUTHORIZED"
-        scalar_value: {
-            int32_t: 57
-        }
-        enumerator: "BEARER_CAPABILITY_UNAVAILABLE"
-        scalar_value: {
-            int32_t: 58
-        }
-        enumerator: "SERVICE_OPTION_NOT_AVAILABLE"
-        scalar_value: {
-            int32_t: 63
-        }
-        enumerator: "BEARER_SERVICE_NOT_IMPLEMENTED"
-        scalar_value: {
-            int32_t: 65
-        }
-        enumerator: "ACM_LIMIT_EXCEEDED"
-        scalar_value: {
-            int32_t: 68
-        }
-        enumerator: "REQUESTED_FACILITY_NOT_IMPLEMENTED"
-        scalar_value: {
-            int32_t: 69
-        }
-        enumerator: "ONLY_DIGITAL_INFORMATION_BEARER_AVAILABLE"
-        scalar_value: {
-            int32_t: 70
-        }
-        enumerator: "SERVICE_OR_OPTION_NOT_IMPLEMENTED"
-        scalar_value: {
-            int32_t: 79
-        }
-        enumerator: "INVALID_TRANSACTION_IDENTIFIER"
-        scalar_value: {
-            int32_t: 81
-        }
-        enumerator: "USER_NOT_MEMBER_OF_CUG"
-        scalar_value: {
-            int32_t: 87
-        }
-        enumerator: "INCOMPATIBLE_DESTINATION"
-        scalar_value: {
-            int32_t: 88
-        }
-        enumerator: "INVALID_TRANSIT_NW_SELECTION"
-        scalar_value: {
-            int32_t: 91
-        }
-        enumerator: "SEMANTICALLY_INCORRECT_MESSAGE"
-        scalar_value: {
-            int32_t: 95
-        }
-        enumerator: "INVALID_MANDATORY_INFORMATION"
-        scalar_value: {
-            int32_t: 96
-        }
-        enumerator: "MESSAGE_TYPE_NON_IMPLEMENTED"
-        scalar_value: {
-            int32_t: 97
-        }
-        enumerator: "MESSAGE_TYPE_NOT_COMPATIBLE_WITH_PROTOCOL_STATE"
-        scalar_value: {
-            int32_t: 98
-        }
-        enumerator: "INFORMATION_ELEMENT_NON_EXISTENT"
-        scalar_value: {
-            int32_t: 99
-        }
-        enumerator: "CONDITIONAL_IE_ERROR"
-        scalar_value: {
-            int32_t: 100
-        }
-        enumerator: "MESSAGE_NOT_COMPATIBLE_WITH_PROTOCOL_STATE"
-        scalar_value: {
-            int32_t: 101
-        }
-        enumerator: "RECOVERY_ON_TIMER_EXPIRED"
-        scalar_value: {
-            int32_t: 102
-        }
-        enumerator: "PROTOCOL_ERROR_UNSPECIFIED"
-        scalar_value: {
-            int32_t: 111
-        }
-        enumerator: "INTERWORKING_UNSPECIFIED"
-        scalar_value: {
-            int32_t: 127
-        }
-        enumerator: "CALL_BARRED"
-        scalar_value: {
-            int32_t: 240
-        }
-        enumerator: "FDN_BLOCKED"
-        scalar_value: {
-            int32_t: 241
-        }
-        enumerator: "IMSI_UNKNOWN_IN_VLR"
-        scalar_value: {
-            int32_t: 242
-        }
-        enumerator: "IMEI_NOT_ACCEPTED"
-        scalar_value: {
-            int32_t: 243
-        }
-        enumerator: "DIAL_MODIFIED_TO_USSD"
-        scalar_value: {
-            int32_t: 244
-        }
-        enumerator: "DIAL_MODIFIED_TO_SS"
-        scalar_value: {
-            int32_t: 245
-        }
-        enumerator: "DIAL_MODIFIED_TO_DIAL"
-        scalar_value: {
-            int32_t: 246
-        }
-        enumerator: "CDMA_LOCKED_UNTIL_POWER_CYCLE"
-        scalar_value: {
-            int32_t: 1000
-        }
-        enumerator: "CDMA_DROP"
-        scalar_value: {
-            int32_t: 1001
-        }
-        enumerator: "CDMA_INTERCEPT"
-        scalar_value: {
-            int32_t: 1002
-        }
-        enumerator: "CDMA_REORDER"
-        scalar_value: {
-            int32_t: 1003
-        }
-        enumerator: "CDMA_SO_REJECT"
-        scalar_value: {
-            int32_t: 1004
-        }
-        enumerator: "CDMA_RETRY_ORDER"
-        scalar_value: {
-            int32_t: 1005
-        }
-        enumerator: "CDMA_ACCESS_FAILURE"
-        scalar_value: {
-            int32_t: 1006
-        }
-        enumerator: "CDMA_PREEMPTED"
-        scalar_value: {
-            int32_t: 1007
-        }
-        enumerator: "CDMA_NOT_EMERGENCY"
-        scalar_value: {
-            int32_t: 1008
-        }
-        enumerator: "CDMA_ACCESS_BLOCKED"
-        scalar_value: {
-            int32_t: 1009
-        }
-        enumerator: "ERROR_UNSPECIFIED"
-        scalar_value: {
-            int32_t: 65535
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::DataCallFailCause"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "NONE"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "OPERATOR_BARRED"
-        scalar_value: {
-            int32_t: 8
-        }
-        enumerator: "NAS_SIGNALLING"
-        scalar_value: {
-            int32_t: 14
-        }
-        enumerator: "INSUFFICIENT_RESOURCES"
-        scalar_value: {
-            int32_t: 26
-        }
-        enumerator: "MISSING_UKNOWN_APN"
-        scalar_value: {
-            int32_t: 27
-        }
-        enumerator: "UNKNOWN_PDP_ADDRESS_TYPE"
-        scalar_value: {
-            int32_t: 28
-        }
-        enumerator: "USER_AUTHENTICATION"
-        scalar_value: {
-            int32_t: 29
-        }
-        enumerator: "ACTIVATION_REJECT_GGSN"
-        scalar_value: {
-            int32_t: 30
-        }
-        enumerator: "ACTIVATION_REJECT_UNSPECIFIED"
-        scalar_value: {
-            int32_t: 31
-        }
-        enumerator: "SERVICE_OPTION_NOT_SUPPORTED"
-        scalar_value: {
-            int32_t: 32
-        }
-        enumerator: "SERVICE_OPTION_NOT_SUBSCRIBED"
-        scalar_value: {
-            int32_t: 33
-        }
-        enumerator: "SERVICE_OPTION_OUT_OF_ORDER"
-        scalar_value: {
-            int32_t: 34
-        }
-        enumerator: "NSAPI_IN_USE"
-        scalar_value: {
-            int32_t: 35
-        }
-        enumerator: "REGULAR_DEACTIVATION"
-        scalar_value: {
-            int32_t: 36
-        }
-        enumerator: "QOS_NOT_ACCEPTED"
-        scalar_value: {
-            int32_t: 37
-        }
-        enumerator: "NETWORK_FAILURE"
-        scalar_value: {
-            int32_t: 38
-        }
-        enumerator: "UMTS_REACTIVATION_REQ"
-        scalar_value: {
-            int32_t: 39
-        }
-        enumerator: "FEATURE_NOT_SUPP"
-        scalar_value: {
-            int32_t: 40
-        }
-        enumerator: "TFT_SEMANTIC_ERROR"
-        scalar_value: {
-            int32_t: 41
-        }
-        enumerator: "TFT_SYTAX_ERROR"
-        scalar_value: {
-            int32_t: 42
-        }
-        enumerator: "UNKNOWN_PDP_CONTEXT"
-        scalar_value: {
-            int32_t: 43
-        }
-        enumerator: "FILTER_SEMANTIC_ERROR"
-        scalar_value: {
-            int32_t: 44
-        }
-        enumerator: "FILTER_SYTAX_ERROR"
-        scalar_value: {
-            int32_t: 45
-        }
-        enumerator: "PDP_WITHOUT_ACTIVE_TFT"
-        scalar_value: {
-            int32_t: 46
-        }
-        enumerator: "ONLY_IPV4_ALLOWED"
-        scalar_value: {
-            int32_t: 50
-        }
-        enumerator: "ONLY_IPV6_ALLOWED"
-        scalar_value: {
-            int32_t: 51
-        }
-        enumerator: "ONLY_SINGLE_BEARER_ALLOWED"
-        scalar_value: {
-            int32_t: 52
-        }
-        enumerator: "ESM_INFO_NOT_RECEIVED"
-        scalar_value: {
-            int32_t: 53
-        }
-        enumerator: "PDN_CONN_DOES_NOT_EXIST"
-        scalar_value: {
-            int32_t: 54
-        }
-        enumerator: "MULTI_CONN_TO_SAME_PDN_NOT_ALLOWED"
-        scalar_value: {
-            int32_t: 55
-        }
-        enumerator: "MAX_ACTIVE_PDP_CONTEXT_REACHED"
-        scalar_value: {
-            int32_t: 65
-        }
-        enumerator: "UNSUPPORTED_APN_IN_CURRENT_PLMN"
-        scalar_value: {
-            int32_t: 66
-        }
-        enumerator: "INVALID_TRANSACTION_ID"
-        scalar_value: {
-            int32_t: 81
-        }
-        enumerator: "MESSAGE_INCORRECT_SEMANTIC"
-        scalar_value: {
-            int32_t: 95
-        }
-        enumerator: "INVALID_MANDATORY_INFO"
-        scalar_value: {
-            int32_t: 96
-        }
-        enumerator: "MESSAGE_TYPE_UNSUPPORTED"
-        scalar_value: {
-            int32_t: 97
-        }
-        enumerator: "MSG_TYPE_NONCOMPATIBLE_STATE"
-        scalar_value: {
-            int32_t: 98
-        }
-        enumerator: "UNKNOWN_INFO_ELEMENT"
-        scalar_value: {
-            int32_t: 99
-        }
-        enumerator: "CONDITIONAL_IE_ERROR"
-        scalar_value: {
-            int32_t: 100
-        }
-        enumerator: "MSG_AND_PROTOCOL_STATE_UNCOMPATIBLE"
-        scalar_value: {
-            int32_t: 101
-        }
-        enumerator: "PROTOCOL_ERRORS"
-        scalar_value: {
-            int32_t: 111
-        }
-        enumerator: "APN_TYPE_CONFLICT"
-        scalar_value: {
-            int32_t: 112
-        }
-        enumerator: "INVALID_PCSCF_ADDR"
-        scalar_value: {
-            int32_t: 113
-        }
-        enumerator: "INTERNAL_CALL_PREEMPT_BY_HIGH_PRIO_APN"
-        scalar_value: {
-            int32_t: 114
-        }
-        enumerator: "EMM_ACCESS_BARRED"
-        scalar_value: {
-            int32_t: 115
-        }
-        enumerator: "EMERGENCY_IFACE_ONLY"
-        scalar_value: {
-            int32_t: 116
-        }
-        enumerator: "IFACE_MISMATCH"
-        scalar_value: {
-            int32_t: 117
-        }
-        enumerator: "COMPANION_IFACE_IN_USE"
-        scalar_value: {
-            int32_t: 118
-        }
-        enumerator: "IP_ADDRESS_MISMATCH"
-        scalar_value: {
-            int32_t: 119
-        }
-        enumerator: "IFACE_AND_POL_FAMILY_MISMATCH"
-        scalar_value: {
-            int32_t: 120
-        }
-        enumerator: "EMM_ACCESS_BARRED_INFINITE_RETRY"
-        scalar_value: {
-            int32_t: 121
-        }
-        enumerator: "AUTH_FAILURE_ON_EMERGENCY_CALL"
-        scalar_value: {
-            int32_t: 122
-        }
-        enumerator: "OEM_DCFAILCAUSE_1"
-        scalar_value: {
-            int32_t: 4097
-        }
-        enumerator: "OEM_DCFAILCAUSE_2"
-        scalar_value: {
-            int32_t: 4098
-        }
-        enumerator: "OEM_DCFAILCAUSE_3"
-        scalar_value: {
-            int32_t: 4099
-        }
-        enumerator: "OEM_DCFAILCAUSE_4"
-        scalar_value: {
-            int32_t: 4100
-        }
-        enumerator: "OEM_DCFAILCAUSE_5"
-        scalar_value: {
-            int32_t: 4101
-        }
-        enumerator: "OEM_DCFAILCAUSE_6"
-        scalar_value: {
-            int32_t: 4102
-        }
-        enumerator: "OEM_DCFAILCAUSE_7"
-        scalar_value: {
-            int32_t: 4103
-        }
-        enumerator: "OEM_DCFAILCAUSE_8"
-        scalar_value: {
-            int32_t: 4104
-        }
-        enumerator: "OEM_DCFAILCAUSE_9"
-        scalar_value: {
-            int32_t: 4105
-        }
-        enumerator: "OEM_DCFAILCAUSE_10"
-        scalar_value: {
-            int32_t: 4106
-        }
-        enumerator: "OEM_DCFAILCAUSE_11"
-        scalar_value: {
-            int32_t: 4107
-        }
-        enumerator: "OEM_DCFAILCAUSE_12"
-        scalar_value: {
-            int32_t: 4108
-        }
-        enumerator: "OEM_DCFAILCAUSE_13"
-        scalar_value: {
-            int32_t: 4109
-        }
-        enumerator: "OEM_DCFAILCAUSE_14"
-        scalar_value: {
-            int32_t: 4110
-        }
-        enumerator: "OEM_DCFAILCAUSE_15"
-        scalar_value: {
-            int32_t: 4111
-        }
-        enumerator: "VOICE_REGISTRATION_FAIL"
-        scalar_value: {
-            int32_t: -1
-        }
-        enumerator: "DATA_REGISTRATION_FAIL"
-        scalar_value: {
-            int32_t: -2
-        }
-        enumerator: "SIGNAL_LOST"
-        scalar_value: {
-            int32_t: -3
-        }
-        enumerator: "PREF_RADIO_TECH_CHANGED"
-        scalar_value: {
-            int32_t: -4
-        }
-        enumerator: "RADIO_POWER_OFF"
-        scalar_value: {
-            int32_t: -5
-        }
-        enumerator: "TETHERED_CALL_ACTIVE"
-        scalar_value: {
-            int32_t: -6
-        }
-        enumerator: "ERROR_UNSPECIFIED"
-        scalar_value: {
-            int32_t: 65535
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::RegState"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "NOT_REG_MT_NOT_SEARCHING_OP"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "REG_HOME"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "NOT_REG_MT_SEARCHING_OP"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "REG_DENIED"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "UNKNOWN"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "REG_ROAMING"
-        scalar_value: {
-            int32_t: 5
-        }
-        enumerator: "NOT_REG_MT_NOT_SEARCHING_OP_EM"
-        scalar_value: {
-            int32_t: 6
-        }
-        enumerator: "NOT_REG_MT_SEARCHING_OP_EM"
-        scalar_value: {
-            int32_t: 7
-        }
-        enumerator: "REG_DENIED_EM"
-        scalar_value: {
-            int32_t: 8
-        }
-        enumerator: "UNKNOWN_EM"
-        scalar_value: {
-            int32_t: 9
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::RadioTechnology"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "UNKNOWN"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "GPRS"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "EDGE"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "UMTS"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "IS95A"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "IS95B"
-        scalar_value: {
-            int32_t: 5
-        }
-        enumerator: "ONE_X_RTT"
-        scalar_value: {
-            int32_t: 6
-        }
-        enumerator: "EVDO_0"
-        scalar_value: {
-            int32_t: 7
-        }
-        enumerator: "EVDO_A"
-        scalar_value: {
-            int32_t: 8
-        }
-        enumerator: "HSDPA"
-        scalar_value: {
-            int32_t: 9
-        }
-        enumerator: "HSUPA"
-        scalar_value: {
-            int32_t: 10
-        }
-        enumerator: "HSPA"
-        scalar_value: {
-            int32_t: 11
-        }
-        enumerator: "EVDO_B"
-        scalar_value: {
-            int32_t: 12
-        }
-        enumerator: "EHRPD"
-        scalar_value: {
-            int32_t: 13
-        }
-        enumerator: "LTE"
-        scalar_value: {
-            int32_t: 14
-        }
-        enumerator: "HSPAP"
-        scalar_value: {
-            int32_t: 15
-        }
-        enumerator: "GSM"
-        scalar_value: {
-            int32_t: 16
-        }
-        enumerator: "TD_SCDMA"
-        scalar_value: {
-            int32_t: 17
-        }
-        enumerator: "IWLAN"
-        scalar_value: {
-            int32_t: 18
-        }
-        enumerator: "LTE_CA"
-        scalar_value: {
-            int32_t: 19
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::DataProfileId"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "DEFAULT"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "TETHERED"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "IMS"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "FOTA"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "CBS"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "OEM_BASE"
-        scalar_value: {
-            int32_t: 1000
-        }
-        enumerator: "INVALID"
-        scalar_value: {
-            int32_t: -1
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::SmsAcknowledgeFailCause"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "MEMORY_CAPACITY_EXCEEDED"
-        scalar_value: {
-            int32_t: 211
-        }
-        enumerator: "UNSPECIFIED_ERROR"
-        scalar_value: {
-            int32_t: 255
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CallForwardInfoStatus"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "DISABLE"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "ENABLE"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "INTERROGATE"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "REGISTRATION"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "ERASURE"
-        scalar_value: {
-            int32_t: 4
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::ClipStatus"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "CLIP_PROVISIONED"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "CLIP_UNPROVISIONED"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "UNKNOWN"
-        scalar_value: {
-            int32_t: 2
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::SmsWriteArgsStatus"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "REC_UNREAD"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "REC_READ"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "STO_UNSENT"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "STO_SENT"
-        scalar_value: {
-            int32_t: 3
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::RadioBandMode"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "BAND_MODE_UNSPECIFIED"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "BAND_MODE_EURO"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "BAND_MODE_USA"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "BAND_MODE_JPN"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "BAND_MODE_AUS"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "BAND_MODE_AUS_2"
-        scalar_value: {
-            int32_t: 5
-        }
-        enumerator: "BAND_MODE_CELL_800"
-        scalar_value: {
-            int32_t: 6
-        }
-        enumerator: "BAND_MODE_PCS"
-        scalar_value: {
-            int32_t: 7
-        }
-        enumerator: "BAND_MODE_JTACS"
-        scalar_value: {
-            int32_t: 8
-        }
-        enumerator: "BAND_MODE_KOREA_PCS"
-        scalar_value: {
-            int32_t: 9
-        }
-        enumerator: "BAND_MODE_5_450M"
-        scalar_value: {
-            int32_t: 10
-        }
-        enumerator: "BAND_MODE_IMT2000"
-        scalar_value: {
-            int32_t: 11
-        }
-        enumerator: "BAND_MODE_7_700M_2"
-        scalar_value: {
-            int32_t: 12
-        }
-        enumerator: "BAND_MODE_8_1800M"
-        scalar_value: {
-            int32_t: 13
-        }
-        enumerator: "BAND_MODE_9_900M"
-        scalar_value: {
-            int32_t: 14
-        }
-        enumerator: "BAND_MODE_10_800M_2"
-        scalar_value: {
-            int32_t: 15
-        }
-        enumerator: "BAND_MODE_EURO_PAMR_400M"
-        scalar_value: {
-            int32_t: 16
-        }
-        enumerator: "BAND_MODE_AWS"
-        scalar_value: {
-            int32_t: 17
-        }
-        enumerator: "BAND_MODE_USA_2500M"
-        scalar_value: {
-            int32_t: 18
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::OperatorStatus"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "UNKNOWN"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "AVAILABLE"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "CURRENT"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "FORBIDDEN"
-        scalar_value: {
-            int32_t: 3
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::PreferredNetworkType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "GSM_WCDMA"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "GSM_ONLY"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "WCDMA"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "GSM_WCDMA_AUTO"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "CDMA_EVDO_AUTO"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "CDMA_ONLY"
-        scalar_value: {
-            int32_t: 5
-        }
-        enumerator: "EVDO_ONLY"
-        scalar_value: {
-            int32_t: 6
-        }
-        enumerator: "GSM_WCDMA_CDMA_EVDO_AUTO"
-        scalar_value: {
-            int32_t: 7
-        }
-        enumerator: "LTE_CDMA_EVDO"
-        scalar_value: {
-            int32_t: 8
-        }
-        enumerator: "LTE_GSM_WCDMA"
-        scalar_value: {
-            int32_t: 9
-        }
-        enumerator: "LTE_CMDA_EVDO_GSM_WCDMA"
-        scalar_value: {
-            int32_t: 10
-        }
-        enumerator: "LTE_ONLY"
-        scalar_value: {
-            int32_t: 11
-        }
-        enumerator: "LTE_WCDMA"
-        scalar_value: {
-            int32_t: 12
-        }
-        enumerator: "TD_SCDMA_ONLY"
-        scalar_value: {
-            int32_t: 13
-        }
-        enumerator: "TD_SCDMA_WCDMA"
-        scalar_value: {
-            int32_t: 14
-        }
-        enumerator: "TD_SCDMA_LTE"
-        scalar_value: {
-            int32_t: 15
-        }
-        enumerator: "TD_SCDMA_GSM"
-        scalar_value: {
-            int32_t: 16
-        }
-        enumerator: "TD_SCDMA_GSM_LTE"
-        scalar_value: {
-            int32_t: 17
-        }
-        enumerator: "TD_SCDMA_GSM_WCDMA"
-        scalar_value: {
-            int32_t: 18
-        }
-        enumerator: "TD_SCDMA_WCDMA_LTE"
-        scalar_value: {
-            int32_t: 19
-        }
-        enumerator: "TD_SCDMA_GSM_WCDMA_LTE"
-        scalar_value: {
-            int32_t: 20
-        }
-        enumerator: "TD_SCDMA_GSM_WCDMA_CDMA_EVDO_AUTO"
-        scalar_value: {
-            int32_t: 21
-        }
-        enumerator: "TD_SCDMA_LTE_CDMA_EVDO_GSM_WCDMA"
-        scalar_value: {
-            int32_t: 22
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CdmaSubscriptionSource"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "RUIM_SIM"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "NV"
-        scalar_value: {
-            int32_t: 1
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CdmaRoamingType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "HOME_NETWORK"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "AFFILIATED_ROAM"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "ANY_ROAM"
-        scalar_value: {
-            int32_t: 2
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::TtyMode"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "OFF"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "FULL"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "HCO"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "VCO"
-        scalar_value: {
-            int32_t: 3
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::NvItem"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "CDMA_MEID"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "CDMA_MIN"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "CDMA_MDN"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "CDMA_ACCOLC"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "DEVICE_MSL"
-        scalar_value: {
-            int32_t: 11
-        }
-        enumerator: "RTN_RECONDITIONED_STATUS"
-        scalar_value: {
-            int32_t: 12
-        }
-        enumerator: "RTN_ACTIVATION_DATE"
-        scalar_value: {
-            int32_t: 13
-        }
-        enumerator: "RTN_LIFE_TIMER"
-        scalar_value: {
-            int32_t: 14
-        }
-        enumerator: "RTN_LIFE_CALLS"
-        scalar_value: {
-            int32_t: 15
-        }
-        enumerator: "RTN_LIFE_DATA_TX"
-        scalar_value: {
-            int32_t: 16
-        }
-        enumerator: "RTN_LIFE_DATA_RX"
-        scalar_value: {
-            int32_t: 17
-        }
-        enumerator: "OMADM_HFA_LEVEL"
-        scalar_value: {
-            int32_t: 18
-        }
-        enumerator: "MIP_PROFILE_NAI"
-        scalar_value: {
-            int32_t: 31
-        }
-        enumerator: "MIP_PROFILE_HOME_ADDRESS"
-        scalar_value: {
-            int32_t: 32
-        }
-        enumerator: "MIP_PROFILE_AAA_AUTH"
-        scalar_value: {
-            int32_t: 33
-        }
-        enumerator: "MIP_PROFILE_HA_AUTH"
-        scalar_value: {
-            int32_t: 34
-        }
-        enumerator: "MIP_PROFILE_PRI_HA_ADDR"
-        scalar_value: {
-            int32_t: 35
-        }
-        enumerator: "MIP_PROFILE_SEC_HA_ADDR"
-        scalar_value: {
-            int32_t: 36
-        }
-        enumerator: "MIP_PROFILE_REV_TUN_PREF"
-        scalar_value: {
-            int32_t: 37
-        }
-        enumerator: "MIP_PROFILE_HA_SPI"
-        scalar_value: {
-            int32_t: 38
-        }
-        enumerator: "MIP_PROFILE_AAA_SPI"
-        scalar_value: {
-            int32_t: 39
-        }
-        enumerator: "MIP_PROFILE_MN_HA_SS"
-        scalar_value: {
-            int32_t: 40
-        }
-        enumerator: "MIP_PROFILE_MN_AAA_SS"
-        scalar_value: {
-            int32_t: 41
-        }
-        enumerator: "CDMA_PRL_VERSION"
-        scalar_value: {
-            int32_t: 51
-        }
-        enumerator: "CDMA_BC10"
-        scalar_value: {
-            int32_t: 52
-        }
-        enumerator: "CDMA_BC14"
-        scalar_value: {
-            int32_t: 53
-        }
-        enumerator: "CDMA_SO68"
-        scalar_value: {
-            int32_t: 54
-        }
-        enumerator: "CDMA_SO73_COP0"
-        scalar_value: {
-            int32_t: 55
-        }
-        enumerator: "CDMA_SO73_COP1TO7"
-        scalar_value: {
-            int32_t: 56
-        }
-        enumerator: "CDMA_1X_ADVANCED_ENABLED"
-        scalar_value: {
-            int32_t: 57
-        }
-        enumerator: "CDMA_EHRPD_ENABLED"
-        scalar_value: {
-            int32_t: 58
-        }
-        enumerator: "CDMA_EHRPD_FORCED"
-        scalar_value: {
-            int32_t: 59
-        }
-        enumerator: "LTE_BAND_ENABLE_25"
-        scalar_value: {
-            int32_t: 71
-        }
-        enumerator: "LTE_BAND_ENABLE_26"
-        scalar_value: {
-            int32_t: 72
-        }
-        enumerator: "LTE_BAND_ENABLE_41"
-        scalar_value: {
-            int32_t: 73
-        }
-        enumerator: "LTE_SCAN_PRIORITY_25"
-        scalar_value: {
-            int32_t: 74
-        }
-        enumerator: "LTE_SCAN_PRIORITY_26"
-        scalar_value: {
-            int32_t: 75
-        }
-        enumerator: "LTE_SCAN_PRIORITY_41"
-        scalar_value: {
-            int32_t: 76
-        }
-        enumerator: "LTE_HIDDEN_BAND_PRIORITY_25"
-        scalar_value: {
-            int32_t: 77
-        }
-        enumerator: "LTE_HIDDEN_BAND_PRIORITY_26"
-        scalar_value: {
-            int32_t: 78
-        }
-        enumerator: "LTE_HIDDEN_BAND_PRIORITY_41"
-        scalar_value: {
-            int32_t: 79
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::ResetNvType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "RELOAD"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "ERASE"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "FACTORY_RESET"
-        scalar_value: {
-            int32_t: 2
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::HardwareConfigType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "MODEM"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "SIM"
-        scalar_value: {
-            int32_t: 1
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::HardwareConfigState"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "ENABLED"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "STANDBY"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "DISABLED"
-        scalar_value: {
-            int32_t: 2
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::LceStatus"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "NOT_SUPPORTED"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "STOPPED"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "ACTIVE"
-        scalar_value: {
-            int32_t: 2
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CarrierMatchType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "ALL"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "SPN"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "IMSI_PREFIX"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "GID1"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "GID2"
-        scalar_value: {
-            int32_t: 4
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::NeighboringCell"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "cid"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "rssi"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CdmaSmsDigitMode"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "FOUR_BIT"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "EIGHT_BIT"
-        scalar_value: {
-            int32_t: 1
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CdmaSmsNumberMode"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "NOT_DATA_NETWORK"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "DATA_NETWORK"
-        scalar_value: {
-            int32_t: 1
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CdmaSmsNumberType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "UNKNOWN"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "INTERNATIONAL_OR_DATA_IP"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "NATIONAL_OR_INTERNET_MAIL"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "NETWORK"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "SUBSCRIBER"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "ALPHANUMERIC"
-        scalar_value: {
-            int32_t: 5
-        }
-        enumerator: "ABBREVIATED"
-        scalar_value: {
-            int32_t: 6
-        }
-        enumerator: "RESERVED_7"
-        scalar_value: {
-            int32_t: 7
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CdmaSmsNumberPlan"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "UNKNOWN"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "TELEPHONY"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "RESERVED_2"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "DATA"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "TELEX"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "RESERVED_5"
-        scalar_value: {
-            int32_t: 5
-        }
-        enumerator: "RESERVED_6"
-        scalar_value: {
-            int32_t: 6
-        }
-        enumerator: "RESERVED_7"
-        scalar_value: {
-            int32_t: 7
-        }
-        enumerator: "RESERVED_8"
-        scalar_value: {
-            int32_t: 8
-        }
-        enumerator: "PRIVATE"
-        scalar_value: {
-            int32_t: 9
-        }
-        enumerator: "RESERVED_10"
-        scalar_value: {
-            int32_t: 10
-        }
-        enumerator: "RESERVED_11"
-        scalar_value: {
-            int32_t: 11
-        }
-        enumerator: "RESERVED_12"
-        scalar_value: {
-            int32_t: 12
-        }
-        enumerator: "RESERVED_13"
-        scalar_value: {
-            int32_t: 13
-        }
-        enumerator: "RESERVED_14"
-        scalar_value: {
-            int32_t: 14
-        }
-        enumerator: "RESERVED_15"
-        scalar_value: {
-            int32_t: 15
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CdmaSmsSubaddressType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "NSAP"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "USER_SPECIFIED"
-        scalar_value: {
-            int32_t: 1
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CdmaSmsErrorClass"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "NO_ERROR"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "ERROR"
-        scalar_value: {
-            int32_t: 1
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CdmaSmsWriteArgsStatus"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "REC_UNREAD"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "REC_READ"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "STO_UNSENT"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "STO_SENT"
-        scalar_value: {
-            int32_t: 3
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CellInfoType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "GSM"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "CDMA"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "LTE"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "WCDMA"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "TD_SCDMA"
-        scalar_value: {
-            int32_t: 5
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::TimeStampType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "UNKNOWN"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "ANTENNA"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "MODEM"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "OEM_RIL"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "JAVA_RIL"
-        scalar_value: {
-            int32_t: 4
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::ApnAuthType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "NO_PAP_NO_CHAP"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "PAP_NO_CHAP"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "NO_PAP_CHAP"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "PAP_CHAP"
-        scalar_value: {
-            int32_t: 3
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::RadioTechnologyFamily"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "THREE_GPP"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "THREE_GPP2"
-        scalar_value: {
-            int32_t: 1
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::RadioCapabilityPhase"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "CONFIGURED"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "START"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "APPLY"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "UNSOL_RSP"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "FINISH"
-        scalar_value: {
-            int32_t: 4
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::RadioCapabilityStatus"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "NONE"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "SUCCESS"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "FAIL"
-        scalar_value: {
-            int32_t: 2
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::RadioAccessFamily"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "UNKNOWN"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "GPRS"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "EDGE"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "UMTS"
-        scalar_value: {
-            int32_t: 8
-        }
-        enumerator: "IS95A"
-        scalar_value: {
-            int32_t: 16
-        }
-        enumerator: "IS95B"
-        scalar_value: {
-            int32_t: 32
-        }
-        enumerator: "ONE_X_RTT"
-        scalar_value: {
-            int32_t: 64
-        }
-        enumerator: "EVDO_0"
-        scalar_value: {
-            int32_t: 128
-        }
-        enumerator: "EVDO_A"
-        scalar_value: {
-            int32_t: 256
-        }
-        enumerator: "HSDPA"
-        scalar_value: {
-            int32_t: 512
-        }
-        enumerator: "HSUPA"
-        scalar_value: {
-            int32_t: 1024
-        }
-        enumerator: "HSPA"
-        scalar_value: {
-            int32_t: 2048
-        }
-        enumerator: "EVDO_B"
-        scalar_value: {
-            int32_t: 4096
-        }
-        enumerator: "EHRPD"
-        scalar_value: {
-            int32_t: 8192
-        }
-        enumerator: "LTE"
-        scalar_value: {
-            int32_t: 16384
-        }
-        enumerator: "HSPAP"
-        scalar_value: {
-            int32_t: 32768
-        }
-        enumerator: "GSM"
-        scalar_value: {
-            int32_t: 65536
-        }
-        enumerator: "TD_SCDMA"
-        scalar_value: {
-            int32_t: 131072
-        }
-        enumerator: "LTE_CA"
-        scalar_value: {
-            int32_t: 524288
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::UssdModeType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "NOTIFY"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "REQUEST"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "NW_RELEASE"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "LOCAL_CLIENT"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "NOT_SUPPORTED"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "NW_TIMEOUT"
-        scalar_value: {
-            int32_t: 5
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::SimRefreshType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "SIM_FILE_UPDATE"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "SIM_INIT"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "SIM_RESET"
-        scalar_value: {
-            int32_t: 2
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::SrvccState"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "HANDOVER_STARTED"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "HANDOVER_COMPLETED"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "HANDOVER_FAILED"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "HANDOVER_CANCELED"
-        scalar_value: {
-            int32_t: 3
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::UiccSubActStatus"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "DEACTIVATE"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "ACTIVATE"
-        scalar_value: {
-            int32_t: 1
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::SubscriptionType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "SUBSCRIPTION_1"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "SUBSCRIPTION_2"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "SUBSCRIPTION_3"
-        scalar_value: {
-            int32_t: 2
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::DataProfileInfoType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "COMMON"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "THREE_GPP"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "THREE_GPP2"
-        scalar_value: {
-            int32_t: 2
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::PhoneRestrictedState"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "NONE"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "CS_EMERGENCY"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "CS_NORMAL"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "CS_ALL"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "PS_ALL"
-        scalar_value: {
-            int32_t: 16
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CdmaCallWaitingNumberPresentation"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "ALLOWED"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "RESTRICTED"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "UNKNOWN"
-        scalar_value: {
-            int32_t: 2
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CdmaCallWaitingNumberType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "UNKNOWN"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "INTERNATIONAL"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "NATIONAL"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "NETWORK_SPECIFIC"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "SUBSCRIBER"
-        scalar_value: {
-            int32_t: 4
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CdmaCallWaitingNumberPlan"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "UNKNOWN"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "ISDN"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "DATA"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "TELEX"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "NATIONAL"
-        scalar_value: {
-            int32_t: 8
-        }
-        enumerator: "PRIVATE"
-        scalar_value: {
-            int32_t: 9
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CdmaOtaProvisionStatus"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "SPL_UNLOCKED"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "SPC_RETRIES_EXCEEDED"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "A_KEY_EXCHANGED"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "SSD_UPDATED"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "NAM_DOWNLOADED"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "MDN_DOWNLOADED"
-        scalar_value: {
-            int32_t: 5
-        }
-        enumerator: "IMSI_DOWNLOADED"
-        scalar_value: {
-            int32_t: 6
-        }
-        enumerator: "PRL_DOWNLOADED"
-        scalar_value: {
-            int32_t: 7
-        }
-        enumerator: "COMMITTED"
-        scalar_value: {
-            int32_t: 8
-        }
-        enumerator: "OTAPA_STARTED"
-        scalar_value: {
-            int32_t: 9
-        }
-        enumerator: "OTAPA_STOPPED"
-        scalar_value: {
-            int32_t: 10
-        }
-        enumerator: "OTAPA_ABORTED"
-        scalar_value: {
-            int32_t: 11
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CdmaInfoRecName"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "DISPLAY"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "CALLED_PARTY_NUMBER"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "CALLING_PARTY_NUMBER"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "CONNECTED_NUMBER"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "SIGNAL"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "REDIRECTING_NUMBER"
-        scalar_value: {
-            int32_t: 5
-        }
-        enumerator: "LINE_CONTROL"
-        scalar_value: {
-            int32_t: 6
-        }
-        enumerator: "EXTENDED_DISPLAY"
-        scalar_value: {
-            int32_t: 7
-        }
-        enumerator: "T53_CLIR"
-        scalar_value: {
-            int32_t: 8
-        }
-        enumerator: "T53_RELEASE"
-        scalar_value: {
-            int32_t: 9
-        }
-        enumerator: "T53_AUDIO_CONTROL"
-        scalar_value: {
-            int32_t: 10
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CdmaRedirectingReason"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "UNKNOWN"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "CALL_FORWARDING_BUSY"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "CALL_FORWARDING_NO_REPLY"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "CALLED_DTE_OUT_OF_ORDER"
-        scalar_value: {
-            int32_t: 9
-        }
-        enumerator: "CALL_FORWARDING_BY_THE_CALLED_DTE"
-        scalar_value: {
-            int32_t: 10
-        }
-        enumerator: "CALL_FORWARDING_UNCONDITIONAL"
-        scalar_value: {
-            int32_t: 15
-        }
-        enumerator: "RESERVED"
-        scalar_value: {
-            int32_t: 16
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::SsServiceType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "CFU"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "CF_BUSY"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "CF_NO_REPLY"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "CF_NOT_REACHABLE"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "CF_ALL"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "CF_ALL_CONDITIONAL"
-        scalar_value: {
-            int32_t: 5
-        }
-        enumerator: "CLIP"
-        scalar_value: {
-            int32_t: 6
-        }
-        enumerator: "CLIR"
-        scalar_value: {
-            int32_t: 7
-        }
-        enumerator: "COLP"
-        scalar_value: {
-            int32_t: 8
-        }
-        enumerator: "COLR"
-        scalar_value: {
-            int32_t: 9
-        }
-        enumerator: "WAIT"
-        scalar_value: {
-            int32_t: 10
-        }
-        enumerator: "BAOC"
-        scalar_value: {
-            int32_t: 11
-        }
-        enumerator: "BAOIC"
-        scalar_value: {
-            int32_t: 12
-        }
-        enumerator: "BAOIC_EXC_HOME"
-        scalar_value: {
-            int32_t: 13
-        }
-        enumerator: "BAIC"
-        scalar_value: {
-            int32_t: 14
-        }
-        enumerator: "BAIC_ROAMING"
-        scalar_value: {
-            int32_t: 15
-        }
-        enumerator: "ALL_BARRING"
-        scalar_value: {
-            int32_t: 16
-        }
-        enumerator: "OUTGOING_BARRING"
-        scalar_value: {
-            int32_t: 17
-        }
-        enumerator: "INCOMING_BARRING"
-        scalar_value: {
-            int32_t: 18
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::SsRequestType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "ACTIVATION"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "DEACTIVATION"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "INTERROGATION"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "REGISTRATION"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "ERASURE"
-        scalar_value: {
-            int32_t: 4
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::SsTeleserviceType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "ALL_TELE_AND_BEARER_SERVICES"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "ALL_TELESEVICES"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "TELEPHONY"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "ALL_DATA_TELESERVICES"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "SMS_SERVICES"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "ALL_TELESERVICES_EXCEPT_SMS"
-        scalar_value: {
-            int32_t: 5
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::SuppServiceClass"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "NONE"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "VOICE"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "DATA"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "FAX"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "SMS"
-        scalar_value: {
-            int32_t: 8
-        }
-        enumerator: "DATA_SYNC"
-        scalar_value: {
-            int32_t: 16
-        }
-        enumerator: "DATA_ASYNC"
-        scalar_value: {
-            int32_t: 32
-        }
-        enumerator: "PACKET"
-        scalar_value: {
-            int32_t: 64
-        }
-        enumerator: "PAD"
-        scalar_value: {
-            int32_t: 128
-        }
-        enumerator: "MAX"
-        scalar_value: {
-            int32_t: 128
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::ApnTypes"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "NONE"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "DEFAULT"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "MMS"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "SUPL"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "DUN"
-        scalar_value: {
-            int32_t: 8
-        }
-        enumerator: "HIPRI"
-        scalar_value: {
-            int32_t: 16
-        }
-        enumerator: "FOTA"
-        scalar_value: {
-            int32_t: 32
-        }
-        enumerator: "IMS"
-        scalar_value: {
-            int32_t: 64
-        }
-        enumerator: "CBS"
-        scalar_value: {
-            int32_t: 128
-        }
-        enumerator: "IA"
-        scalar_value: {
-            int32_t: 256
-        }
-        enumerator: "EMERGENCY"
-        scalar_value: {
-            int32_t: 512
-        }
-        enumerator: "ALL"
-        scalar_value: {
-            int32_t: 1023
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::IndicationFilter"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "NONE"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "SIGNAL_STRENGTH"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "FULL_NETWORK_STATE"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "DATA_CALL_DORMANCY_CHANGED"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "ALL"
-        scalar_value: {
-            int32_t: 7
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::MvnoType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "NONE"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "IMSI"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "GID"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "SPN"
-        scalar_value: {
-            int32_t: 3
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::DeviceStateType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "POWER_SAVE_MODE"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "CHARGING_STATE"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "LOW_DATA_EXPECTED"
-        scalar_value: {
-            int32_t: 2
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::RadioResponseInfo"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "type"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::RadioResponseType"
-    }
-    struct_value: {
-        name: "serial"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "error"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::RadioError"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::AppStatus"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "appType"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::AppType"
-    }
-    struct_value: {
-        name: "appState"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::AppState"
-    }
-    struct_value: {
-        name: "persoSubstate"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::PersoSubstate"
-    }
-    struct_value: {
-        name: "aidPtr"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "appLabelPtr"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "pin1Replaced"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "pin1"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::PinState"
-    }
-    struct_value: {
-        name: "pin2"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::PinState"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CardStatus"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "cardState"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::CardState"
-    }
-    struct_value: {
-        name: "universalPinState"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::PinState"
-    }
-    struct_value: {
-        name: "gsmUmtsSubscriptionAppIndex"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "cdmaSubscriptionAppIndex"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "imsSubscriptionAppIndex"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "applications"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::AppStatus"
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::UusInfo"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "uusType"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::UusType"
-    }
-    struct_value: {
-        name: "uusDcs"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::UusDcs"
-    }
-    struct_value: {
-        name: "uusData"
-        type: TYPE_STRING
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::Call"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "state"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::CallState"
-    }
-    struct_value: {
-        name: "index"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "toa"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "isMpty"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "isMT"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "als"
-        type: TYPE_SCALAR
-        scalar_type: "uint8_t"
-    }
-    struct_value: {
-        name: "isVoice"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "isVoicePrivacy"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "number"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "numberPresentation"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::CallPresentation"
-    }
-    struct_value: {
-        name: "name"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "namePresentation"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::CallPresentation"
-    }
-    struct_value: {
-        name: "uusInfo"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::UusInfo"
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::Dial"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "address"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "clir"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::Clir"
-    }
-    struct_value: {
-        name: "uusInfo"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::UusInfo"
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::LastCallFailCauseInfo"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "causeCode"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::LastCallFailCause"
-    }
-    struct_value: {
-        name: "vendorCause"
-        type: TYPE_STRING
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::GsmSignalStrength"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "signalStrength"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "bitErrorRate"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "timingAdvance"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::WcdmaSignalStrength"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "signalStrength"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "bitErrorRate"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CdmaSignalStrength"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "dbm"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "ecio"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::EvdoSignalStrength"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "dbm"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "ecio"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "signalNoiseRatio"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::LteSignalStrength"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "signalStrength"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "rsrp"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "rsrq"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "rssnr"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "cqi"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "timingAdvance"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::TdScdmaSignalStrength"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "rscp"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::SignalStrength"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "gw"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::radio::V1_0::GsmSignalStrength"
-    }
-    struct_value: {
-        name: "cdma"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::radio::V1_0::CdmaSignalStrength"
-    }
-    struct_value: {
-        name: "evdo"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::radio::V1_0::EvdoSignalStrength"
-    }
-    struct_value: {
-        name: "lte"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::radio::V1_0::LteSignalStrength"
-    }
-    struct_value: {
-        name: "tdScdma"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::radio::V1_0::TdScdmaSignalStrength"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::SendSmsResult"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "messageRef"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "ackPDU"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "errorCode"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::SetupDataCallResult"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "status"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "suggestedRetryTime"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "cid"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "active"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "type"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "ifname"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "addresses"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "dnses"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "gateways"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "pcscf"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "mtu"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::IccIo"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "command"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "fileId"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "path"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "p1"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "p2"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "p3"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "data"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "pin2"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "aid"
-        type: TYPE_STRING
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::IccIoResult"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "sw1"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "sw2"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "simResponse"
-        type: TYPE_STRING
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::VoiceRegStateResult"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "regState"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::RegState"
-    }
-    struct_value: {
-        name: "lac"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "cid"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "rat"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "baseStationId"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "baseStationLatitude"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "baseStationLongitude"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "cssSupported"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "systemId"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "networkId"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "roamingIndicator"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "systemIsInPrl"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "defaultRoamingIndicator"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "reasonForDenial"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "psc"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::DataRegStateResult"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "regState"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::RegState"
-    }
-    struct_value: {
-        name: "lac"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "cid"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "rat"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "reasonDataDenied"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "maxDataCalls"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "tac"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "phyCid"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "eci"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "csgid"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "tadv"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CallForwardInfo"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "status"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::CallForwardInfoStatus"
-    }
-    struct_value: {
-        name: "reason"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "serviceClass"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "toa"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "number"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "timeSeconds"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::OperatorInfo"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "alphaLong"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "alphaShort"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "operatorNumeric"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "status"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::OperatorStatus"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::SmsWriteArgs"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "status"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::SmsWriteArgsStatus"
-    }
-    struct_value: {
-        name: "pdu"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "smsc"
-        type: TYPE_STRING
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CdmaSmsAddress"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "digitMode"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::CdmaSmsDigitMode"
-    }
-    struct_value: {
-        name: "numberMode"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::CdmaSmsNumberMode"
-    }
-    struct_value: {
-        name: "numberType"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::CdmaSmsNumberType"
-    }
-    struct_value: {
-        name: "numberPlan"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::CdmaSmsNumberPlan"
-    }
-    struct_value: {
-        name: "digits"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CdmaSmsSubaddress"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "subaddressType"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::CdmaSmsSubaddressType"
-    }
-    struct_value: {
-        name: "odd"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "digits"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CdmaSmsMessage"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "teleserviceId"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "isServicePresent"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "serviceCategory"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "address"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::radio::V1_0::CdmaSmsAddress"
-    }
-    struct_value: {
-        name: "subAddress"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::radio::V1_0::CdmaSmsSubaddress"
-    }
-    struct_value: {
-        name: "bearerData"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CdmaSmsAck"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "errorClass"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::CdmaSmsErrorClass"
-    }
-    struct_value: {
-        name: "smsCauseCode"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CdmaBroadcastSmsConfigInfo"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "serviceCategory"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "language"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "selected"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CdmaSmsWriteArgs"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "status"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::CdmaSmsWriteArgsStatus"
-    }
-    struct_value: {
-        name: "message"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::radio::V1_0::CdmaSmsMessage"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::GsmBroadcastSmsConfigInfo"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "fromServiceId"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "toServiceId"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "fromCodeScheme"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "toCodeScheme"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "selected"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CellIdentityGsm"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "mcc"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "mnc"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "lac"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "cid"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "arfcn"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "bsic"
-        type: TYPE_SCALAR
-        scalar_type: "uint8_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CellIdentityWcdma"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "mcc"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "mnc"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "lac"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "cid"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "psc"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "uarfcn"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CellIdentityCdma"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "networkId"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "systemId"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "baseStationId"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "longitude"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "latitude"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CellIdentityLte"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "mcc"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "mnc"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "ci"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "pci"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "tac"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "earfcn"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CellIdentityTdscdma"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "mcc"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "mnc"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "lac"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "cid"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "cpid"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CellInfoGsm"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "cellIdentityGsm"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::radio::V1_0::CellIdentityGsm"
-    }
-    struct_value: {
-        name: "signalStrengthGsm"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::radio::V1_0::GsmSignalStrength"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CellInfoWcdma"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "cellIdentityWcdma"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::radio::V1_0::CellIdentityWcdma"
-    }
-    struct_value: {
-        name: "signalStrengthWcdma"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::radio::V1_0::WcdmaSignalStrength"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CellInfoCdma"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "cellIdentityCdma"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::radio::V1_0::CellIdentityCdma"
-    }
-    struct_value: {
-        name: "signalStrengthCdma"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::radio::V1_0::CdmaSignalStrength"
-    }
-    struct_value: {
-        name: "signalStrengthEvdo"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::radio::V1_0::EvdoSignalStrength"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CellInfoLte"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "cellIdentityLte"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::radio::V1_0::CellIdentityLte"
-    }
-    struct_value: {
-        name: "signalStrengthLte"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::radio::V1_0::LteSignalStrength"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CellInfoTdscdma"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "cellIdentityTdscdma"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::radio::V1_0::CellIdentityTdscdma"
-    }
-    struct_value: {
-        name: "signalStrengthTdscdma"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::radio::V1_0::TdScdmaSignalStrength"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CellInfo"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "cellInfoType"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::CellInfoType"
-    }
-    struct_value: {
-        name: "registered"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "timeStampType"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::TimeStampType"
-    }
-    struct_value: {
-        name: "timeStamp"
-        type: TYPE_SCALAR
-        scalar_type: "uint64_t"
-    }
-    struct_value: {
-        name: "gsm"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::CellInfoGsm"
-        }
-    }
-    struct_value: {
-        name: "cdma"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::CellInfoCdma"
-        }
-    }
-    struct_value: {
-        name: "lte"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::CellInfoLte"
-        }
-    }
-    struct_value: {
-        name: "wcdma"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::CellInfoWcdma"
-        }
-    }
-    struct_value: {
-        name: "tdscdma"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::CellInfoTdscdma"
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::GsmSmsMessage"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "smscPdu"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "pdu"
-        type: TYPE_STRING
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::ImsSmsMessage"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "tech"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::RadioTechnologyFamily"
-    }
-    struct_value: {
-        name: "retry"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "messageRef"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "cdmaMessage"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::CdmaSmsMessage"
-        }
-    }
-    struct_value: {
-        name: "gsmMessage"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::GsmSmsMessage"
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::SimApdu"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "sessionId"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "cla"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "instruction"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "p1"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "p2"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "p3"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "data"
-        type: TYPE_STRING
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::NvWriteItem"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "itemId"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::NvItem"
-    }
-    struct_value: {
-        name: "value"
-        type: TYPE_STRING
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::SelectUiccSub"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "slot"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "appIndex"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "subType"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::SubscriptionType"
-    }
-    struct_value: {
-        name: "actStatus"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::UiccSubActStatus"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::HardwareConfigModem"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "rilModel"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "rat"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "maxVoice"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "maxData"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "maxStandby"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::HardwareConfigSim"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "modemUuid"
-        type: TYPE_STRING
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::HardwareConfig"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "type"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::HardwareConfigType"
-    }
-    struct_value: {
-        name: "uuid"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "state"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::HardwareConfigState"
-    }
-    struct_value: {
-        name: "modem"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::HardwareConfigModem"
-        }
-    }
-    struct_value: {
-        name: "sim"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::HardwareConfigSim"
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::DataProfileInfo"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "profileId"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::DataProfileId"
-    }
-    struct_value: {
-        name: "apn"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "protocol"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "roamingProtocol"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "authType"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::ApnAuthType"
-    }
-    struct_value: {
-        name: "user"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "password"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "type"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::DataProfileInfoType"
-    }
-    struct_value: {
-        name: "maxConnsTime"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "maxConns"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "waitTime"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "enabled"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "supportedApnTypesBitmap"
-        type: TYPE_MASK
-        scalar_type: "int32_t"
-        predefined_type: "::android::hardware::radio::V1_0::ApnTypes"
-    }
-    struct_value: {
-        name: "bearerBitmap"
-        type: TYPE_MASK
-        scalar_type: "int32_t"
-        predefined_type: "::android::hardware::radio::V1_0::RadioAccessFamily"
-    }
-    struct_value: {
-        name: "mtu"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "mvnoType"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::MvnoType"
-    }
-    struct_value: {
-        name: "mvnoMatchData"
-        type: TYPE_STRING
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::RadioCapability"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "session"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "phase"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::RadioCapabilityPhase"
-    }
-    struct_value: {
-        name: "raf"
-        type: TYPE_MASK
-        scalar_type: "int32_t"
-        predefined_type: "::android::hardware::radio::V1_0::RadioAccessFamily"
-    }
-    struct_value: {
-        name: "logicalModemUuid"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "status"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::RadioCapabilityStatus"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::LceStatusInfo"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "lceStatus"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::LceStatus"
-    }
-    struct_value: {
-        name: "actualIntervalMs"
-        type: TYPE_SCALAR
-        scalar_type: "uint8_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::LceDataInfo"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "lastHopCapacityKbps"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "confidenceLevel"
-        type: TYPE_SCALAR
-        scalar_type: "uint8_t"
-    }
-    struct_value: {
-        name: "lceSuspended"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::ActivityStatsInfo"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "sleepModeTimeMs"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "idleModeTimeMs"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "txmModetimeMs"
-        type: TYPE_ARRAY
-        vector_size: 5
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-    }
-    struct_value: {
-        name: "rxModeTimeMs"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::Carrier"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "mcc"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "mnc"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "matchType"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::CarrierMatchType"
-    }
-    struct_value: {
-        name: "matchData"
-        type: TYPE_STRING
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CarrierRestrictions"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "allowedCarriers"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::Carrier"
-        }
-    }
-    struct_value: {
-        name: "excludedCarriers"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::Carrier"
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::SuppSvcNotification"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "isMT"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "code"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "index"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "type"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "number"
-        type: TYPE_STRING
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::SimRefreshResult"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "type"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::SimRefreshType"
-    }
-    struct_value: {
-        name: "efId"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "aid"
-        type: TYPE_STRING
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CdmaSignalInfoRecord"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "isPresent"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "signalType"
-        type: TYPE_SCALAR
-        scalar_type: "int8_t"
-    }
-    struct_value: {
-        name: "alertPitch"
-        type: TYPE_SCALAR
-        scalar_type: "int8_t"
-    }
-    struct_value: {
-        name: "signal"
-        type: TYPE_SCALAR
-        scalar_type: "int8_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CdmaCallWaiting"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "number"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "numberPresentation"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::CdmaCallWaitingNumberPresentation"
-    }
-    struct_value: {
-        name: "name"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "signalInfoRecord"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::radio::V1_0::CdmaSignalInfoRecord"
-    }
-    struct_value: {
-        name: "numberType"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::CdmaCallWaitingNumberType"
-    }
-    struct_value: {
-        name: "numberPlan"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::CdmaCallWaitingNumberPlan"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CdmaDisplayInfoRecord"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "alphaBuf"
-        type: TYPE_STRING
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CdmaNumberInfoRecord"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "number"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "numberType"
-        type: TYPE_SCALAR
-        scalar_type: "uint8_t"
-    }
-    struct_value: {
-        name: "numberPlan"
-        type: TYPE_SCALAR
-        scalar_type: "uint8_t"
-    }
-    struct_value: {
-        name: "pi"
-        type: TYPE_SCALAR
-        scalar_type: "uint8_t"
-    }
-    struct_value: {
-        name: "si"
-        type: TYPE_SCALAR
-        scalar_type: "uint8_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CdmaRedirectingNumberInfoRecord"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "redirectingNumber"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::radio::V1_0::CdmaNumberInfoRecord"
-    }
-    struct_value: {
-        name: "redirectingReason"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::CdmaRedirectingReason"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CdmaLineControlInfoRecord"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "lineCtrlPolarityIncluded"
-        type: TYPE_SCALAR
-        scalar_type: "uint8_t"
-    }
-    struct_value: {
-        name: "lineCtrlToggle"
-        type: TYPE_SCALAR
-        scalar_type: "uint8_t"
-    }
-    struct_value: {
-        name: "lineCtrlReverse"
-        type: TYPE_SCALAR
-        scalar_type: "uint8_t"
-    }
-    struct_value: {
-        name: "lineCtrlPowerDenial"
-        type: TYPE_SCALAR
-        scalar_type: "uint8_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CdmaT53ClirInfoRecord"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "cause"
-        type: TYPE_SCALAR
-        scalar_type: "uint8_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CdmaT53AudioControlInfoRecord"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "upLink"
-        type: TYPE_SCALAR
-        scalar_type: "uint8_t"
-    }
-    struct_value: {
-        name: "downLink"
-        type: TYPE_SCALAR
-        scalar_type: "uint8_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CdmaInformationRecord"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "name"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::CdmaInfoRecName"
-    }
-    struct_value: {
-        name: "display"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::CdmaDisplayInfoRecord"
-        }
-    }
-    struct_value: {
-        name: "number"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::CdmaNumberInfoRecord"
-        }
-    }
-    struct_value: {
-        name: "signal"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::CdmaSignalInfoRecord"
-        }
-    }
-    struct_value: {
-        name: "redir"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::CdmaRedirectingNumberInfoRecord"
-        }
-    }
-    struct_value: {
-        name: "lineCtrl"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::CdmaLineControlInfoRecord"
-        }
-    }
-    struct_value: {
-        name: "clir"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::CdmaT53ClirInfoRecord"
-        }
-    }
-    struct_value: {
-        name: "audioCtrl"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::CdmaT53AudioControlInfoRecord"
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CdmaInformationRecords"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "infoRec"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::CdmaInformationRecord"
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::CfData"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "cfInfo"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::CallForwardInfo"
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::SsInfoData"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "ssInfo"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::StkCcUnsolSsResult"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "serviceType"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::SsServiceType"
-    }
-    struct_value: {
-        name: "requestType"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::SsRequestType"
-    }
-    struct_value: {
-        name: "teleserviceType"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::SsTeleserviceType"
-    }
-    struct_value: {
-        name: "serviceClass"
-        type: TYPE_MASK
-        scalar_type: "int32_t"
-        predefined_type: "::android::hardware::radio::V1_0::SuppServiceClass"
-    }
-    struct_value: {
-        name: "result"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::radio::V1_0::RadioError"
-    }
-    struct_value: {
-        name: "ssInfo"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::SsInfoData"
-        }
-    }
-    struct_value: {
-        name: "cfData"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::radio::V1_0::CfData"
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::radio::V1_0::PcoDataInfo"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "cid"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "bearerProto"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "pcoId"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "contents"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-}
-
diff --git a/radio/Android.bp b/radio/Android.bp
index 33f70eb..8bda000 100644
--- a/radio/Android.bp
+++ b/radio/Android.bp
@@ -2,4 +2,5 @@
 subdirs = [
     "1.0",
     "1.0/vts/functional",
+    "deprecated/1.0",
 ]
diff --git a/radio/deprecated/1.0/Android.bp b/radio/deprecated/1.0/Android.bp
new file mode 100644
index 0000000..f8a9c64
--- /dev/null
+++ b/radio/deprecated/1.0/Android.bp
@@ -0,0 +1,75 @@
+// This file is autogenerated by hidl-gen. Do not edit manually.
+
+filegroup {
+    name: "android.hardware.radio.deprecated@1.0_hal",
+    srcs: [
+        "IOemHook.hal",
+        "IOemHookIndication.hal",
+        "IOemHookResponse.hal",
+    ],
+}
+
+genrule {
+    name: "android.hardware.radio.deprecated@1.0_genc++",
+    tools: ["hidl-gen"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lc++ -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.radio.deprecated@1.0",
+    srcs: [
+        ":android.hardware.radio.deprecated@1.0_hal",
+    ],
+    out: [
+        "android/hardware/radio/deprecated/1.0/OemHookAll.cpp",
+        "android/hardware/radio/deprecated/1.0/OemHookIndicationAll.cpp",
+        "android/hardware/radio/deprecated/1.0/OemHookResponseAll.cpp",
+    ],
+}
+
+genrule {
+    name: "android.hardware.radio.deprecated@1.0_genc++_headers",
+    tools: ["hidl-gen"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lc++ -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.radio.deprecated@1.0",
+    srcs: [
+        ":android.hardware.radio.deprecated@1.0_hal",
+    ],
+    out: [
+        "android/hardware/radio/deprecated/1.0/IOemHook.h",
+        "android/hardware/radio/deprecated/1.0/IHwOemHook.h",
+        "android/hardware/radio/deprecated/1.0/BnHwOemHook.h",
+        "android/hardware/radio/deprecated/1.0/BpHwOemHook.h",
+        "android/hardware/radio/deprecated/1.0/BsOemHook.h",
+        "android/hardware/radio/deprecated/1.0/IOemHookIndication.h",
+        "android/hardware/radio/deprecated/1.0/IHwOemHookIndication.h",
+        "android/hardware/radio/deprecated/1.0/BnHwOemHookIndication.h",
+        "android/hardware/radio/deprecated/1.0/BpHwOemHookIndication.h",
+        "android/hardware/radio/deprecated/1.0/BsOemHookIndication.h",
+        "android/hardware/radio/deprecated/1.0/IOemHookResponse.h",
+        "android/hardware/radio/deprecated/1.0/IHwOemHookResponse.h",
+        "android/hardware/radio/deprecated/1.0/BnHwOemHookResponse.h",
+        "android/hardware/radio/deprecated/1.0/BpHwOemHookResponse.h",
+        "android/hardware/radio/deprecated/1.0/BsOemHookResponse.h",
+    ],
+}
+
+cc_library_shared {
+    name: "android.hardware.radio.deprecated@1.0",
+    generated_sources: ["android.hardware.radio.deprecated@1.0_genc++"],
+    generated_headers: ["android.hardware.radio.deprecated@1.0_genc++_headers"],
+    export_generated_headers: ["android.hardware.radio.deprecated@1.0_genc++_headers"],
+    shared_libs: [
+        "libhidlbase",
+        "libhidltransport",
+        "libhwbinder",
+        "liblog",
+        "libutils",
+        "libcutils",
+        "android.hardware.radio@1.0",
+        "android.hidl.base@1.0",
+    ],
+    export_shared_lib_headers: [
+        "libhidlbase",
+        "libhidltransport",
+        "libhwbinder",
+        "libutils",
+        "android.hardware.radio@1.0",
+        "android.hidl.base@1.0",
+    ],
+}
diff --git a/radio/deprecated/1.0/Android.mk b/radio/deprecated/1.0/Android.mk
new file mode 100644
index 0000000..4cce633
--- /dev/null
+++ b/radio/deprecated/1.0/Android.mk
@@ -0,0 +1,162 @@
+# This file is autogenerated by hidl-gen. Do not edit manually.
+
+LOCAL_PATH := $(call my-dir)
+
+################################################################################
+
+include $(CLEAR_VARS)
+LOCAL_MODULE := android.hardware.radio.deprecated@1.0-java
+LOCAL_MODULE_CLASS := JAVA_LIBRARIES
+
+intermediates := $(call local-generated-sources-dir, COMMON)
+
+HIDL := $(HOST_OUT_EXECUTABLES)/hidl-gen$(HOST_EXECUTABLE_SUFFIX)
+
+LOCAL_JAVA_LIBRARIES := \
+    android.hardware.radio@1.0-java \
+    android.hidl.base@1.0-java \
+
+
+#
+# Build IOemHook.hal
+#
+GEN := $(intermediates)/android/hardware/radio/deprecated/V1_0/IOemHook.java
+$(GEN): $(HIDL)
+$(GEN): PRIVATE_HIDL := $(HIDL)
+$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IOemHook.hal
+$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/IOemHookIndication.hal
+$(GEN): $(LOCAL_PATH)/IOemHookIndication.hal
+$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/IOemHookResponse.hal
+$(GEN): $(LOCAL_PATH)/IOemHookResponse.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.radio.deprecated@1.0::IOemHook
+
+$(GEN): $(LOCAL_PATH)/IOemHook.hal
+	$(transform-generated-source)
+LOCAL_GENERATED_SOURCES += $(GEN)
+
+#
+# Build IOemHookIndication.hal
+#
+GEN := $(intermediates)/android/hardware/radio/deprecated/V1_0/IOemHookIndication.java
+$(GEN): $(HIDL)
+$(GEN): PRIVATE_HIDL := $(HIDL)
+$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IOemHookIndication.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.radio.deprecated@1.0::IOemHookIndication
+
+$(GEN): $(LOCAL_PATH)/IOemHookIndication.hal
+	$(transform-generated-source)
+LOCAL_GENERATED_SOURCES += $(GEN)
+
+#
+# Build IOemHookResponse.hal
+#
+GEN := $(intermediates)/android/hardware/radio/deprecated/V1_0/IOemHookResponse.java
+$(GEN): $(HIDL)
+$(GEN): PRIVATE_HIDL := $(HIDL)
+$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IOemHookResponse.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.radio.deprecated@1.0::IOemHookResponse
+
+$(GEN): $(LOCAL_PATH)/IOemHookResponse.hal
+	$(transform-generated-source)
+LOCAL_GENERATED_SOURCES += $(GEN)
+include $(BUILD_JAVA_LIBRARY)
+
+
+################################################################################
+
+include $(CLEAR_VARS)
+LOCAL_MODULE := android.hardware.radio.deprecated@1.0-java-static
+LOCAL_MODULE_CLASS := JAVA_LIBRARIES
+
+intermediates := $(call local-generated-sources-dir, COMMON)
+
+HIDL := $(HOST_OUT_EXECUTABLES)/hidl-gen$(HOST_EXECUTABLE_SUFFIX)
+
+LOCAL_STATIC_JAVA_LIBRARIES := \
+    android.hardware.radio@1.0-java-static \
+    android.hidl.base@1.0-java-static \
+
+
+#
+# Build IOemHook.hal
+#
+GEN := $(intermediates)/android/hardware/radio/deprecated/V1_0/IOemHook.java
+$(GEN): $(HIDL)
+$(GEN): PRIVATE_HIDL := $(HIDL)
+$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IOemHook.hal
+$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/IOemHookIndication.hal
+$(GEN): $(LOCAL_PATH)/IOemHookIndication.hal
+$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/IOemHookResponse.hal
+$(GEN): $(LOCAL_PATH)/IOemHookResponse.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.radio.deprecated@1.0::IOemHook
+
+$(GEN): $(LOCAL_PATH)/IOemHook.hal
+	$(transform-generated-source)
+LOCAL_GENERATED_SOURCES += $(GEN)
+
+#
+# Build IOemHookIndication.hal
+#
+GEN := $(intermediates)/android/hardware/radio/deprecated/V1_0/IOemHookIndication.java
+$(GEN): $(HIDL)
+$(GEN): PRIVATE_HIDL := $(HIDL)
+$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IOemHookIndication.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.radio.deprecated@1.0::IOemHookIndication
+
+$(GEN): $(LOCAL_PATH)/IOemHookIndication.hal
+	$(transform-generated-source)
+LOCAL_GENERATED_SOURCES += $(GEN)
+
+#
+# Build IOemHookResponse.hal
+#
+GEN := $(intermediates)/android/hardware/radio/deprecated/V1_0/IOemHookResponse.java
+$(GEN): $(HIDL)
+$(GEN): PRIVATE_HIDL := $(HIDL)
+$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IOemHookResponse.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.radio.deprecated@1.0::IOemHookResponse
+
+$(GEN): $(LOCAL_PATH)/IOemHookResponse.hal
+	$(transform-generated-source)
+LOCAL_GENERATED_SOURCES += $(GEN)
+include $(BUILD_STATIC_JAVA_LIBRARY)
+
+
+
+include $(call all-makefiles-under,$(LOCAL_PATH))
diff --git a/radio/deprecated/1.0/IOemHook.hal b/radio/deprecated/1.0/IOemHook.hal
new file mode 100644
index 0000000..2b6db65
--- /dev/null
+++ b/radio/deprecated/1.0/IOemHook.hal
@@ -0,0 +1,57 @@
+/**
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.hardware.radio.deprecated@1.0;
+
+import IOemHookResponse;
+import IOemHookIndication;
+
+/**
+ * This interface has APIs for OEM-specific use-cases.
+ * USE OF THIS INTERFACE IS DISCOURATED. IT IS PRESENT ONLY FOR BACKWARD COMPATIBILITY AND WILL BE
+ * REMOVED IN O (ATTEMPTING TO REMOVE IT IN O, BUT IF NOT IN O WILL BE REMOVED IN P).
+ * ALSO NOTE THAT FRAMEWORK EXPECTS THE SERVICE IMPLEMENTING THIS INTERFACE TO RESIDE
+ * IN THE SAME PROCESS AS IRADIO SERVICE.
+ */
+interface IOemHook {
+    /**
+     * Set response functions for oem hook requests & oem hook indications.
+     *
+     * @param oemHookResponse Object containing response functions
+     * @param oemHookIndication Object containing oem hook indications
+     */
+    setResponseFunctions(IOemHookResponse oemHookResponse, IOemHookIndication oemHookIndication);
+
+    /**
+     * This request passes raw byte arrays between framework and vendor code.
+     *
+     * @param serial Serial number of request.
+     * @param data data passed as raw bytes
+     *
+     * Response function is IOemHookResponse.sendRequestRawResponse()
+     */
+    oneway sendRequestRaw(int32_t serial, vec<uint8_t> data);
+
+    /**
+     * This request passes strings between framework and vendor code.
+     *
+     * @param serial Serial number of request.
+     * @param data data passed as strings
+     *
+     * Response function is IOemHookResponse.sendRequestStringsResponse()
+     */
+    oneway sendRequestStrings(int32_t serial, vec<string> data);
+};
\ No newline at end of file
diff --git a/radio/deprecated/1.0/IOemHookIndication.hal b/radio/deprecated/1.0/IOemHookIndication.hal
new file mode 100644
index 0000000..936779f
--- /dev/null
+++ b/radio/deprecated/1.0/IOemHookIndication.hal
@@ -0,0 +1,32 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.hardware.radio.deprecated@1.0;
+
+import android.hardware.radio@1.0::types;
+
+/*
+ * Interface declaring unsolicited oem hook indications.
+ */
+interface IOemHookIndication {
+   /*
+    * This is for OEM specific use.
+    *
+    * @param type Type of radio indication
+    * @param data data passed as raw bytes
+    */
+   oneway oemHookRaw(RadioIndicationType type, vec<uint8_t> data);
+};
\ No newline at end of file
diff --git a/radio/deprecated/1.0/IOemHookResponse.hal b/radio/deprecated/1.0/IOemHookResponse.hal
new file mode 100644
index 0000000..4e49acc
--- /dev/null
+++ b/radio/deprecated/1.0/IOemHookResponse.hal
@@ -0,0 +1,50 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.hardware.radio.deprecated@1.0;
+
+import android.hardware.radio@1.0::types;
+
+/*
+ * Interface declaring response functions to solicited oem hook requests.
+ * Response functions defined in this interface are as per following convention:
+ * <xyz>Response is response to IOemHook.<xyz>
+ */
+interface IOemHookResponse {
+    /*
+     * @param info Response info struct containing response type, serial no. and error
+     * @param data data returned by oem
+     *
+     * Valid errors returned:
+     *   RadioError:NONE
+     *   RadioError:RADIO_NOT_AVAILABLE
+     *   RadioError:INVALID_ARGUMENTS
+     *   RadioError:OEM_ERROR_X
+     */
+    oneway sendRequestRawResponse(RadioResponseInfo info, vec<uint8_t> data);
+
+    /*
+     * @param info Response info struct containing response type, serial no. and error
+     * @param data data returned by oem
+     *
+     * Valid errors returned:
+     *   RadioError:NONE
+     *   RadioError:RADIO_NOT_AVAILABLE
+     *   RadioError:INVALID_ARGUMENTS
+     *   RadioError:OEM_ERROR_X
+     */
+    oneway sendRequestStringsResponse(RadioResponseInfo info, vec<string> data);
+};
\ No newline at end of file
diff --git a/renderscript/1.0/Android.bp b/renderscript/1.0/Android.bp
index 5ae7027..cce34e7 100644
--- a/renderscript/1.0/Android.bp
+++ b/renderscript/1.0/Android.bp
@@ -1,13 +1,20 @@
 // This file is autogenerated by hidl-gen. Do not edit manually.
 
+filegroup {
+    name: "android.hardware.renderscript@1.0_hal",
+    srcs: [
+        "types.hal",
+        "IContext.hal",
+        "IDevice.hal",
+    ],
+}
+
 genrule {
     name: "android.hardware.renderscript@1.0_genc++",
     tools: ["hidl-gen"],
     cmd: "$(location hidl-gen) -o $(genDir) -Lc++ -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.renderscript@1.0",
     srcs: [
-        "types.hal",
-        "IContext.hal",
-        "IDevice.hal",
+        ":android.hardware.renderscript@1.0_hal",
     ],
     out: [
         "android/hardware/renderscript/1.0/types.cpp",
@@ -21,9 +28,7 @@
     tools: ["hidl-gen"],
     cmd: "$(location hidl-gen) -o $(genDir) -Lc++ -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.renderscript@1.0",
     srcs: [
-        "types.hal",
-        "IContext.hal",
-        "IDevice.hal",
+        ":android.hardware.renderscript@1.0_hal",
     ],
     out: [
         "android/hardware/renderscript/1.0/types.h",
@@ -62,114 +67,3 @@
         "android.hidl.base@1.0",
     ],
 }
-
-genrule {
-    name: "android.hardware.renderscript.vts.driver@1.0_genc++",
-    tools: ["hidl-gen", "vtsc"],
-    cmd: "$(location hidl-gen) -o $(genDir) -Lvts -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.renderscript@1.0 && $(location vtsc) -mDRIVER -tSOURCE -b$(genDir) android/hardware/renderscript/1.0/ $(genDir)/android/hardware/renderscript/1.0/",
-    srcs: [
-        "types.hal",
-        "IContext.hal",
-        "IDevice.hal",
-    ],
-    out: [
-        "android/hardware/renderscript/1.0/types.vts.cpp",
-        "android/hardware/renderscript/1.0/Context.vts.cpp",
-        "android/hardware/renderscript/1.0/Device.vts.cpp",
-    ],
-}
-
-genrule {
-    name: "android.hardware.renderscript.vts.driver@1.0_genc++_headers",
-    tools: ["hidl-gen", "vtsc"],
-    cmd: "$(location hidl-gen) -o $(genDir) -Lvts -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.renderscript@1.0 && $(location vtsc) -mDRIVER -tHEADER -b$(genDir) android/hardware/renderscript/1.0/ $(genDir)/android/hardware/renderscript/1.0/",
-    srcs: [
-        "types.hal",
-        "IContext.hal",
-        "IDevice.hal",
-    ],
-    out: [
-        "android/hardware/renderscript/1.0/types.vts.h",
-        "android/hardware/renderscript/1.0/Context.vts.h",
-        "android/hardware/renderscript/1.0/Device.vts.h",
-    ],
-}
-
-cc_library_shared {
-    name: "android.hardware.renderscript.vts.driver@1.0",
-    generated_sources: ["android.hardware.renderscript.vts.driver@1.0_genc++"],
-    generated_headers: ["android.hardware.renderscript.vts.driver@1.0_genc++_headers"],
-    export_generated_headers: ["android.hardware.renderscript.vts.driver@1.0_genc++_headers"],
-    shared_libs: [
-        "libhidlbase",
-        "libhidltransport",
-        "libhwbinder",
-        "liblog",
-        "libutils",
-        "libcutils",
-        "libvts_common",
-        "libvts_datatype",
-        "libvts_measurement",
-        "libvts_multidevice_proto",
-        "libcamera_metadata",
-        "libprotobuf-cpp-full",
-        "android.hidl.base@1.0",
-        "android.hardware.renderscript@1.0",
-    ],
-    export_shared_lib_headers: [
-        "libhidlbase",
-        "libhidltransport",
-        "libhwbinder",
-        "libutils",
-        "android.hidl.base@1.0",
-    ],
-}
-
-genrule {
-    name: "android.hardware.renderscript@1.0-vts.profiler_genc++",
-    tools: ["hidl-gen", "vtsc"],
-    cmd: "$(location hidl-gen) -o $(genDir) -Lvts -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.renderscript@1.0 && $(location vtsc) -mPROFILER -tSOURCE -b$(genDir) android/hardware/renderscript/1.0/ $(genDir)/android/hardware/renderscript/1.0/",
-    srcs: [
-        "types.hal",
-        "IContext.hal",
-        "IDevice.hal",
-    ],
-    out: [
-        "android/hardware/renderscript/1.0/types.vts.cpp",
-        "android/hardware/renderscript/1.0/Context.vts.cpp",
-        "android/hardware/renderscript/1.0/Device.vts.cpp",
-    ],
-}
-
-genrule {
-    name: "android.hardware.renderscript@1.0-vts.profiler_genc++_headers",
-    tools: ["hidl-gen", "vtsc"],
-    cmd: "$(location hidl-gen) -o $(genDir) -Lvts -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.renderscript@1.0 && $(location vtsc) -mPROFILER -tHEADER -b$(genDir) android/hardware/renderscript/1.0/ $(genDir)/android/hardware/renderscript/1.0/",
-    srcs: [
-        "types.hal",
-        "IContext.hal",
-        "IDevice.hal",
-    ],
-    out: [
-        "android/hardware/renderscript/1.0/types.vts.h",
-        "android/hardware/renderscript/1.0/Context.vts.h",
-        "android/hardware/renderscript/1.0/Device.vts.h",
-    ],
-}
-
-cc_library_shared {
-    name: "android.hardware.renderscript@1.0-vts.profiler",
-    generated_sources: ["android.hardware.renderscript@1.0-vts.profiler_genc++"],
-    generated_headers: ["android.hardware.renderscript@1.0-vts.profiler_genc++_headers"],
-    export_generated_headers: ["android.hardware.renderscript@1.0-vts.profiler_genc++_headers"],
-    shared_libs: [
-        "libbase",
-        "libhidlbase",
-        "libhidltransport",
-        "libvts_profiling",
-        "libvts_multidevice_proto",
-        "libprotobuf-cpp-full",
-        "android.hidl.base@1.0",
-        "android.hardware.renderscript@1.0",
-    ],
-}
diff --git a/renderscript/1.0/Android.mk b/renderscript/1.0/Android.mk
index 3a7babd..5c3a37d 100644
--- a/renderscript/1.0/Android.mk
+++ b/renderscript/1.0/Android.mk
@@ -8,7 +8,7 @@
 LOCAL_MODULE := android.hardware.renderscript@1.0-java-constants
 LOCAL_MODULE_CLASS := JAVA_LIBRARIES
 
-intermediates := $(local-generated-sources-dir)
+intermediates := $(call local-generated-sources-dir, COMMON)
 
 HIDL := $(HOST_OUT_EXECUTABLES)/hidl-gen$(HOST_EXECUTABLE_SUFFIX)
 #
diff --git a/sensors/1.0/vts/Sensors.vts b/sensors/1.0/vts/Sensors.vts
deleted file mode 100644
index 558c36d..0000000
--- a/sensors/1.0/vts/Sensors.vts
+++ /dev/null
@@ -1,172 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "ISensors"
-
-package: "android.hardware.sensors"
-
-import: "android.hardware.sensors@1.0::types"
-import: "android.hidl.base@1.0::types"
-
-interface: {
-    api: {
-        name: "getSensorsList"
-        return_type_hidl: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_STRUCT
-                predefined_type: "::android::hardware::sensors::V1_0::SensorInfo"
-            }
-        }
-    }
-
-    api: {
-        name: "setOperationMode"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::sensors::V1_0::Result"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::sensors::V1_0::OperationMode"
-        }
-    }
-
-    api: {
-        name: "activate"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::sensors::V1_0::Result"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-    }
-
-    api: {
-        name: "poll"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::sensors::V1_0::Result"
-        }
-        return_type_hidl: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_STRUCT
-                predefined_type: "::android::hardware::sensors::V1_0::Event"
-            }
-        }
-        return_type_hidl: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_STRUCT
-                predefined_type: "::android::hardware::sensors::V1_0::SensorInfo"
-            }
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "batch"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::sensors::V1_0::Result"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int64_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int64_t"
-        }
-    }
-
-    api: {
-        name: "flush"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::sensors::V1_0::Result"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "injectSensorData"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::sensors::V1_0::Result"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::sensors::V1_0::Event"
-        }
-    }
-
-    api: {
-        name: "registerDirectChannel"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::sensors::V1_0::Result"
-        }
-        return_type_hidl: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::sensors::V1_0::SharedMemInfo"
-        }
-    }
-
-    api: {
-        name: "unregisterDirectChannel"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::sensors::V1_0::Result"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-    api: {
-        name: "configDirectReport"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::sensors::V1_0::Result"
-        }
-        return_type_hidl: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::sensors::V1_0::RateLevel"
-        }
-    }
-
-}
diff --git a/sensors/1.0/vts/functional/Android.bp b/sensors/1.0/vts/functional/Android.bp
index 9ca6230..c2889c5 100644
--- a/sensors/1.0/vts/functional/Android.bp
+++ b/sensors/1.0/vts/functional/Android.bp
@@ -15,9 +15,9 @@
 //
 
 cc_test {
-    name: "sensors_hidl_hal_test",
+    name: "VtsHalSensorsV1_0TargetTest",
     gtest: true,
-    srcs: ["sensors_hidl_hal_test.cpp"],
+    srcs: ["VtsHalSensorsV1_0TargetTest.cpp"],
     shared_libs: [
         "android.hardware.sensors@1.0",
         "libcutils",
diff --git a/sensors/1.0/vts/functional/sensors_hidl_hal_test.cpp b/sensors/1.0/vts/functional/VtsHalSensorsV1_0TargetTest.cpp
similarity index 100%
rename from sensors/1.0/vts/functional/sensors_hidl_hal_test.cpp
rename to sensors/1.0/vts/functional/VtsHalSensorsV1_0TargetTest.cpp
diff --git a/sensors/1.0/vts/types.vts b/sensors/1.0/vts/types.vts
deleted file mode 100644
index bc87823..0000000
--- a/sensors/1.0/vts/types.vts
+++ /dev/null
@@ -1,901 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "types"
-
-package: "android.hardware.sensors"
-
-
-attribute: {
-    name: "::android::hardware::sensors::V1_0::Result"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "OK"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "PERMISSION_DENIED"
-        scalar_value: {
-            int32_t: -1
-        }
-        enumerator: "NO_MEMORY"
-        scalar_value: {
-            int32_t: -12
-        }
-        enumerator: "BAD_VALUE"
-        scalar_value: {
-            int32_t: -22
-        }
-        enumerator: "INVALID_OPERATION"
-        scalar_value: {
-            int32_t: -38
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::sensors::V1_0::OperationMode"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "NORMAL"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "DATA_INJECTION"
-        scalar_value: {
-            int32_t: 1
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::sensors::V1_0::SensorType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "META_DATA"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "ACCELEROMETER"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "MAGNETIC_FIELD"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "ORIENTATION"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "GYROSCOPE"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "LIGHT"
-        scalar_value: {
-            int32_t: 5
-        }
-        enumerator: "PRESSURE"
-        scalar_value: {
-            int32_t: 6
-        }
-        enumerator: "TEMPERATURE"
-        scalar_value: {
-            int32_t: 7
-        }
-        enumerator: "PROXIMITY"
-        scalar_value: {
-            int32_t: 8
-        }
-        enumerator: "GRAVITY"
-        scalar_value: {
-            int32_t: 9
-        }
-        enumerator: "LINEAR_ACCELERATION"
-        scalar_value: {
-            int32_t: 10
-        }
-        enumerator: "ROTATION_VECTOR"
-        scalar_value: {
-            int32_t: 11
-        }
-        enumerator: "RELATIVE_HUMIDITY"
-        scalar_value: {
-            int32_t: 12
-        }
-        enumerator: "AMBIENT_TEMPERATURE"
-        scalar_value: {
-            int32_t: 13
-        }
-        enumerator: "MAGNETIC_FIELD_UNCALIBRATED"
-        scalar_value: {
-            int32_t: 14
-        }
-        enumerator: "GAME_ROTATION_VECTOR"
-        scalar_value: {
-            int32_t: 15
-        }
-        enumerator: "GYROSCOPE_UNCALIBRATED"
-        scalar_value: {
-            int32_t: 16
-        }
-        enumerator: "SIGNIFICANT_MOTION"
-        scalar_value: {
-            int32_t: 17
-        }
-        enumerator: "STEP_DETECTOR"
-        scalar_value: {
-            int32_t: 18
-        }
-        enumerator: "STEP_COUNTER"
-        scalar_value: {
-            int32_t: 19
-        }
-        enumerator: "GEOMAGNETIC_ROTATION_VECTOR"
-        scalar_value: {
-            int32_t: 20
-        }
-        enumerator: "HEART_RATE"
-        scalar_value: {
-            int32_t: 21
-        }
-        enumerator: "TILT_DETECTOR"
-        scalar_value: {
-            int32_t: 22
-        }
-        enumerator: "WAKE_GESTURE"
-        scalar_value: {
-            int32_t: 23
-        }
-        enumerator: "GLANCE_GESTURE"
-        scalar_value: {
-            int32_t: 24
-        }
-        enumerator: "PICK_UP_GESTURE"
-        scalar_value: {
-            int32_t: 25
-        }
-        enumerator: "WRIST_TILT_GESTURE"
-        scalar_value: {
-            int32_t: 26
-        }
-        enumerator: "DEVICE_ORIENTATION"
-        scalar_value: {
-            int32_t: 27
-        }
-        enumerator: "POSE_6DOF"
-        scalar_value: {
-            int32_t: 28
-        }
-        enumerator: "STATIONARY_DETECT"
-        scalar_value: {
-            int32_t: 29
-        }
-        enumerator: "MOTION_DETECT"
-        scalar_value: {
-            int32_t: 30
-        }
-        enumerator: "HEART_BEAT"
-        scalar_value: {
-            int32_t: 31
-        }
-        enumerator: "DYNAMIC_SENSOR_META"
-        scalar_value: {
-            int32_t: 32
-        }
-        enumerator: "ADDITIONAL_INFO"
-        scalar_value: {
-            int32_t: 33
-        }
-        enumerator: "LOW_LATENCY_OFFBODY_DETECT"
-        scalar_value: {
-            int32_t: 34
-        }
-        enumerator: "ACCELEROMETER_UNCALIBRATED"
-        scalar_value: {
-            int32_t: 35
-        }
-        enumerator: "DEVICE_PRIVATE_BASE"
-        scalar_value: {
-            int32_t: 65536
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::sensors::V1_0::SensorFlagBits"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "WAKE_UP"
-        scalar_value: {
-            uint32_t: 1
-        }
-        enumerator: "CONTINUOUS_MODE"
-        scalar_value: {
-            uint32_t: 0
-        }
-        enumerator: "ON_CHANGE_MODE"
-        scalar_value: {
-            uint32_t: 2
-        }
-        enumerator: "ONE_SHOT_MODE"
-        scalar_value: {
-            uint32_t: 4
-        }
-        enumerator: "SPECIAL_REPORTING_MODE"
-        scalar_value: {
-            uint32_t: 6
-        }
-        enumerator: "DATA_INJECTION"
-        scalar_value: {
-            uint32_t: 16
-        }
-        enumerator: "DYNAMIC_SENSOR"
-        scalar_value: {
-            uint32_t: 32
-        }
-        enumerator: "ADDITIONAL_INFO"
-        scalar_value: {
-            uint32_t: 64
-        }
-        enumerator: "DIRECT_CHANNEL_ASHMEM"
-        scalar_value: {
-            uint32_t: 1024
-        }
-        enumerator: "DIRECT_CHANNEL_GRALLOC"
-        scalar_value: {
-            uint32_t: 2048
-        }
-        enumerator: "MASK_REPORTING_MODE"
-        scalar_value: {
-            uint32_t: 14
-        }
-        enumerator: "MASK_DIRECT_REPORT"
-        scalar_value: {
-            uint32_t: 896
-        }
-        enumerator: "MASK_DIRECT_CHANNEL"
-        scalar_value: {
-            uint32_t: 3072
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::sensors::V1_0::SensorFlagShift"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint8_t"
-
-        enumerator: "REPORTING_MODE"
-        scalar_value: {
-            uint8_t: 1
-        }
-        enumerator: "DATA_INJECTION"
-        scalar_value: {
-            uint8_t: 4
-        }
-        enumerator: "DYNAMIC_SENSOR"
-        scalar_value: {
-            uint8_t: 5
-        }
-        enumerator: "ADDITIONAL_INFO"
-        scalar_value: {
-            uint8_t: 6
-        }
-        enumerator: "DIRECT_REPORT"
-        scalar_value: {
-            uint8_t: 7
-        }
-        enumerator: "DIRECT_CHANNEL"
-        scalar_value: {
-            uint8_t: 10
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::sensors::V1_0::SensorInfo"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "sensorHandle"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "name"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "vendor"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "version"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "type"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::sensors::V1_0::SensorType"
-    }
-    struct_value: {
-        name: "typeAsString"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "maxRange"
-        type: TYPE_SCALAR
-        scalar_type: "float_t"
-    }
-    struct_value: {
-        name: "resolution"
-        type: TYPE_SCALAR
-        scalar_type: "float_t"
-    }
-    struct_value: {
-        name: "power"
-        type: TYPE_SCALAR
-        scalar_type: "float_t"
-    }
-    struct_value: {
-        name: "minDelay"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "fifoReservedEventCount"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "fifoMaxEventCount"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "requiredPermission"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "maxDelay"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "flags"
-        type: TYPE_MASK
-        scalar_type: "uint32_t"
-        predefined_type: "::android::hardware::sensors::V1_0::SensorFlagBits"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::sensors::V1_0::SensorStatus"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int8_t"
-
-        enumerator: "NO_CONTACT"
-        scalar_value: {
-            int8_t: -1
-        }
-        enumerator: "UNRELIABLE"
-        scalar_value: {
-            int8_t: 0
-        }
-        enumerator: "ACCURACY_LOW"
-        scalar_value: {
-            int8_t: 1
-        }
-        enumerator: "ACCURACY_MEDIUM"
-        scalar_value: {
-            int8_t: 2
-        }
-        enumerator: "ACCURACY_HIGH"
-        scalar_value: {
-            int8_t: 3
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::sensors::V1_0::Vec3"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "x"
-        type: TYPE_SCALAR
-        scalar_type: "float_t"
-    }
-    struct_value: {
-        name: "y"
-        type: TYPE_SCALAR
-        scalar_type: "float_t"
-    }
-    struct_value: {
-        name: "z"
-        type: TYPE_SCALAR
-        scalar_type: "float_t"
-    }
-    struct_value: {
-        name: "status"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::sensors::V1_0::SensorStatus"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::sensors::V1_0::Vec4"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "x"
-        type: TYPE_SCALAR
-        scalar_type: "float_t"
-    }
-    struct_value: {
-        name: "y"
-        type: TYPE_SCALAR
-        scalar_type: "float_t"
-    }
-    struct_value: {
-        name: "z"
-        type: TYPE_SCALAR
-        scalar_type: "float_t"
-    }
-    struct_value: {
-        name: "w"
-        type: TYPE_SCALAR
-        scalar_type: "float_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::sensors::V1_0::Uncal"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "x"
-        type: TYPE_SCALAR
-        scalar_type: "float_t"
-    }
-    struct_value: {
-        name: "y"
-        type: TYPE_SCALAR
-        scalar_type: "float_t"
-    }
-    struct_value: {
-        name: "z"
-        type: TYPE_SCALAR
-        scalar_type: "float_t"
-    }
-    struct_value: {
-        name: "x_bias"
-        type: TYPE_SCALAR
-        scalar_type: "float_t"
-    }
-    struct_value: {
-        name: "y_bias"
-        type: TYPE_SCALAR
-        scalar_type: "float_t"
-    }
-    struct_value: {
-        name: "z_bias"
-        type: TYPE_SCALAR
-        scalar_type: "float_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::sensors::V1_0::HeartRate"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "bpm"
-        type: TYPE_SCALAR
-        scalar_type: "float_t"
-    }
-    struct_value: {
-        name: "status"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::sensors::V1_0::SensorStatus"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::sensors::V1_0::MetaDataEventType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "META_DATA_FLUSH_COMPLETE"
-        scalar_value: {
-            uint32_t: 1
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::sensors::V1_0::MetaData"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "what"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::sensors::V1_0::MetaDataEventType"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::sensors::V1_0::DynamicSensorInfo"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "connected"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "sensorHandle"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "uuid"
-        type: TYPE_ARRAY
-        vector_size: 16
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::sensors::V1_0::AdditionalInfoType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "AINFO_BEGIN"
-        scalar_value: {
-            uint32_t: 0
-        }
-        enumerator: "AINFO_END"
-        scalar_value: {
-            uint32_t: 1
-        }
-        enumerator: "AINFO_UNTRACKED_DELAY"
-        scalar_value: {
-            uint32_t: 65536
-        }
-        enumerator: "AINFO_INTERNAL_TEMPERATURE"
-        scalar_value: {
-            uint32_t: 65537
-        }
-        enumerator: "AINFO_VEC3_CALIBRATION"
-        scalar_value: {
-            uint32_t: 65538
-        }
-        enumerator: "AINFO_SENSOR_PLACEMENT"
-        scalar_value: {
-            uint32_t: 65539
-        }
-        enumerator: "AINFO_SAMPLING"
-        scalar_value: {
-            uint32_t: 65540
-        }
-        enumerator: "AINFO_CHANNEL_NOISE"
-        scalar_value: {
-            uint32_t: 131072
-        }
-        enumerator: "AINFO_CHANNEL_SAMPLER"
-        scalar_value: {
-            uint32_t: 131073
-        }
-        enumerator: "AINFO_CHANNEL_FILTER"
-        scalar_value: {
-            uint32_t: 131074
-        }
-        enumerator: "AINFO_CHANNEL_LINEAR_TRANSFORM"
-        scalar_value: {
-            uint32_t: 131075
-        }
-        enumerator: "AINFO_CHANNEL_NONLINEAR_MAP"
-        scalar_value: {
-            uint32_t: 131076
-        }
-        enumerator: "AINFO_CHANNEL_RESAMPLER"
-        scalar_value: {
-            uint32_t: 131077
-        }
-        enumerator: "AINFO_LOCAL_GEOMAGNETIC_FIELD"
-        scalar_value: {
-            uint32_t: 196608
-        }
-        enumerator: "AINFO_LOCAL_GRAVITY"
-        scalar_value: {
-            uint32_t: 196609
-        }
-        enumerator: "AINFO_DOCK_STATE"
-        scalar_value: {
-            uint32_t: 196610
-        }
-        enumerator: "AINFO_HIGH_PERFORMANCE_MODE"
-        scalar_value: {
-            uint32_t: 196611
-        }
-        enumerator: "AINFO_MAGNETIC_FIELD_CALIBRATION"
-        scalar_value: {
-            uint32_t: 196612
-        }
-        enumerator: "AINFO_CUSTOM_START"
-        scalar_value: {
-            uint32_t: 268435456
-        }
-        enumerator: "AINFO_DEBUGGING_START"
-        scalar_value: {
-            uint32_t: 1073741824
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::sensors::V1_0::AdditionalInfo"
-    type: TYPE_STRUCT
-    sub_struct: {
-        name: "::android::hardware::sensors::V1_0::AdditionalInfo::Payload"
-        type: TYPE_UNION
-        union_value: {
-            name: "data_int32"
-            type: TYPE_ARRAY
-            vector_size: 14
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "int32_t"
-            }
-        }
-        union_value: {
-            name: "data_float"
-            type: TYPE_ARRAY
-            vector_size: 14
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "float_t"
-            }
-        }
-    }
-    struct_value: {
-        name: "type"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::sensors::V1_0::AdditionalInfoType"
-    }
-    struct_value: {
-        name: "serial"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "u"
-        type: TYPE_UNION
-        predefined_type: "::android::hardware::sensors::V1_0::AdditionalInfo::Payload"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::sensors::V1_0::EventPayload"
-    type: TYPE_UNION
-    union_value: {
-        name: "vec3"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::sensors::V1_0::Vec3"
-    }
-    union_value: {
-        name: "vec4"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::sensors::V1_0::Vec4"
-    }
-    union_value: {
-        name: "uncal"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::sensors::V1_0::Uncal"
-    }
-    union_value: {
-        name: "meta"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::sensors::V1_0::MetaData"
-    }
-    union_value: {
-        name: "scalar"
-        type: TYPE_SCALAR
-        scalar_type: "float_t"
-    }
-    union_value: {
-        name: "stepCount"
-        type: TYPE_SCALAR
-        scalar_type: "uint64_t"
-    }
-    union_value: {
-        name: "heartRate"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::sensors::V1_0::HeartRate"
-    }
-    union_value: {
-        name: "pose6DOF"
-        type: TYPE_ARRAY
-        vector_size: 15
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "float_t"
-        }
-    }
-    union_value: {
-        name: "dynamic"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::sensors::V1_0::DynamicSensorInfo"
-    }
-    union_value: {
-        name: "additional"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::sensors::V1_0::AdditionalInfo"
-    }
-    union_value: {
-        name: "data"
-        type: TYPE_ARRAY
-        vector_size: 16
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "float_t"
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::sensors::V1_0::Event"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "timestamp"
-        type: TYPE_SCALAR
-        scalar_type: "int64_t"
-    }
-    struct_value: {
-        name: "sensorHandle"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "sensorType"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::sensors::V1_0::SensorType"
-    }
-    struct_value: {
-        name: "u"
-        type: TYPE_UNION
-        predefined_type: "::android::hardware::sensors::V1_0::EventPayload"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::sensors::V1_0::RateLevel"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "STOP"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "NORMAL"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "FAST"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "VERY_FAST"
-        scalar_value: {
-            int32_t: 3
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::sensors::V1_0::SharedMemType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "ASHMEM"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "GRALLOC"
-        scalar_value: {
-            int32_t: 2
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::sensors::V1_0::SharedMemFormat"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "SENSORS_EVENT"
-        scalar_value: {
-            int32_t: 1
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::sensors::V1_0::SensorsEventFormatOffset"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint16_t"
-
-        enumerator: "SIZE_FIELD"
-        scalar_value: {
-            uint16_t: 0
-        }
-        enumerator: "REPORT_TOKEN"
-        scalar_value: {
-            uint16_t: 4
-        }
-        enumerator: "SENSOR_TYPE"
-        scalar_value: {
-            uint16_t: 8
-        }
-        enumerator: "ATOMIC_COUNTER"
-        scalar_value: {
-            uint16_t: 12
-        }
-        enumerator: "TIMESTAMP"
-        scalar_value: {
-            uint16_t: 16
-        }
-        enumerator: "DATA"
-        scalar_value: {
-            uint16_t: 24
-        }
-        enumerator: "RESERVED"
-        scalar_value: {
-            uint16_t: 88
-        }
-        enumerator: "TOTAL_LENGTH"
-        scalar_value: {
-            uint16_t: 104
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::sensors::V1_0::SharedMemInfo"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "type"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::sensors::V1_0::SharedMemType"
-    }
-    struct_value: {
-        name: "format"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::sensors::V1_0::SharedMemFormat"
-    }
-    struct_value: {
-        name: "size"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "memoryHandle"
-        type: TYPE_HANDLE
-    }
-}
-
diff --git a/soundtrigger/2.0/vts/functional/Android.bp b/soundtrigger/2.0/vts/functional/Android.bp
index 8abdf06..7e2e12a 100644
--- a/soundtrigger/2.0/vts/functional/Android.bp
+++ b/soundtrigger/2.0/vts/functional/Android.bp
@@ -15,9 +15,9 @@
 //
 
 cc_test {
-    name: "soundtrigger_hidl_hal_test",
+    name: "VtsHalSoundtriggerV2_0TargetTest",
     gtest: true,
-    srcs: ["soundtrigger_hidl_hal_test.cpp"],
+    srcs: ["VtsHalSoundtriggerV2_0TargetTest.cpp"],
     shared_libs: [
         "libbase",
         "liblog",
diff --git a/soundtrigger/2.0/vts/functional/soundtrigger_hidl_hal_test.cpp b/soundtrigger/2.0/vts/functional/VtsHalSoundtriggerV2_0TargetTest.cpp
similarity index 100%
rename from soundtrigger/2.0/vts/functional/soundtrigger_hidl_hal_test.cpp
rename to soundtrigger/2.0/vts/functional/VtsHalSoundtriggerV2_0TargetTest.cpp
diff --git a/tests/versioning/2.3/Android.bp b/tests/versioning/2.3/Android.bp
index 3cc2076..122c484 100644
--- a/tests/versioning/2.3/Android.bp
+++ b/tests/versioning/2.3/Android.bp
@@ -63,7 +63,6 @@
         "libcutils",
         "android.hardware.tests.versioning@1.0",
         "android.hardware.tests.versioning@2.2",
-        "android.hidl.base@1.0",
     ],
     export_shared_lib_headers: [
         "libhidlbase",
@@ -72,6 +71,5 @@
         "libutils",
         "android.hardware.tests.versioning@1.0",
         "android.hardware.tests.versioning@2.2",
-        "android.hidl.base@1.0",
     ],
 }
diff --git a/thermal/1.0/vts/Thermal.vts b/thermal/1.0/vts/Thermal.vts
deleted file mode 100644
index 4611924..0000000
--- a/thermal/1.0/vts/Thermal.vts
+++ /dev/null
@@ -1,83 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "IThermal"
-
-package: "android.hardware.thermal"
-
-import: "android.hardware.thermal@1.0::types"
-import: "android.hidl.base@1.0::types"
-
-interface: {
-    api: {
-        name: "getTemperatures"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::thermal::V1_0::ThermalStatus"
-        }
-        return_type_hidl: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_STRUCT
-                predefined_type: "::android::hardware::thermal::V1_0::Temperature"
-            }
-        }
-        callflow: {
-            next: "*"
-        }
-        callflow: {
-            entry: true
-        }
-        callflow: {
-            exit: true
-        }
-    }
-
-    api: {
-        name: "getCpuUsages"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::thermal::V1_0::ThermalStatus"
-        }
-        return_type_hidl: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_STRUCT
-                predefined_type: "::android::hardware::thermal::V1_0::CpuUsage"
-            }
-        }
-        callflow: {
-            next: "*"
-        }
-        callflow: {
-            entry: true
-        }
-        callflow: {
-            exit: true
-        }
-    }
-
-    api: {
-        name: "getCoolingDevices"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::thermal::V1_0::ThermalStatus"
-        }
-        return_type_hidl: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_STRUCT
-                predefined_type: "::android::hardware::thermal::V1_0::CoolingDevice"
-            }
-        }
-        callflow: {
-            next: "*"
-        }
-        callflow: {
-            entry: true
-        }
-        callflow: {
-            exit: true
-        }
-    }
-
-}
diff --git a/thermal/1.0/vts/functional/Android.bp b/thermal/1.0/vts/functional/Android.bp
index fedb760..92f8c49 100644
--- a/thermal/1.0/vts/functional/Android.bp
+++ b/thermal/1.0/vts/functional/Android.bp
@@ -15,9 +15,9 @@
 //
 
 cc_test {
-    name: "thermal_hidl_hal_test",
+    name: "VtsHalThermalV1_0TargetTest",
     gtest: true,
-    srcs: ["thermal_hidl_hal_test.cpp"],
+    srcs: ["VtsHalThermalV1_0TargetTest.cpp"],
     shared_libs: [
         "libbase",
         "liblog",
diff --git a/thermal/1.0/vts/functional/thermal_hidl_hal_test.cpp b/thermal/1.0/vts/functional/VtsHalThermalV1_0TargetTest.cpp
similarity index 100%
rename from thermal/1.0/vts/functional/thermal_hidl_hal_test.cpp
rename to thermal/1.0/vts/functional/VtsHalThermalV1_0TargetTest.cpp
diff --git a/thermal/1.0/vts/types.vts b/thermal/1.0/vts/types.vts
deleted file mode 100644
index f004bd8..0000000
--- a/thermal/1.0/vts/types.vts
+++ /dev/null
@@ -1,157 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "types"
-
-package: "android.hardware.thermal"
-
-
-attribute: {
-    name: "::android::hardware::thermal::V1_0::TemperatureType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "UNKNOWN"
-        scalar_value: {
-            int32_t: -1
-        }
-        enumerator: "CPU"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "GPU"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "BATTERY"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "SKIN"
-        scalar_value: {
-            int32_t: 3
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::thermal::V1_0::CoolingType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "FAN_RPM"
-        scalar_value: {
-            uint32_t: 0
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::thermal::V1_0::Temperature"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "type"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::thermal::V1_0::TemperatureType"
-    }
-    struct_value: {
-        name: "name"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "currentValue"
-        type: TYPE_SCALAR
-        scalar_type: "float_t"
-    }
-    struct_value: {
-        name: "throttlingThreshold"
-        type: TYPE_SCALAR
-        scalar_type: "float_t"
-    }
-    struct_value: {
-        name: "shutdownThreshold"
-        type: TYPE_SCALAR
-        scalar_type: "float_t"
-    }
-    struct_value: {
-        name: "vrThrottlingThreshold"
-        type: TYPE_SCALAR
-        scalar_type: "float_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::thermal::V1_0::CoolingDevice"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "type"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::thermal::V1_0::CoolingType"
-    }
-    struct_value: {
-        name: "name"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "currentValue"
-        type: TYPE_SCALAR
-        scalar_type: "float_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::thermal::V1_0::CpuUsage"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "name"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "active"
-        type: TYPE_SCALAR
-        scalar_type: "uint64_t"
-    }
-    struct_value: {
-        name: "total"
-        type: TYPE_SCALAR
-        scalar_type: "uint64_t"
-    }
-    struct_value: {
-        name: "isOnline"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::thermal::V1_0::ThermalStatusCode"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "SUCCESS"
-        scalar_value: {
-            uint32_t: 0
-        }
-        enumerator: "FAILURE"
-        scalar_value: {
-            uint32_t: 1
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::thermal::V1_0::ThermalStatus"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "code"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::thermal::V1_0::ThermalStatusCode"
-    }
-    struct_value: {
-        name: "debugMessage"
-        type: TYPE_STRING
-    }
-}
-
diff --git a/tv/cec/1.0/default/service.cpp b/tv/cec/1.0/default/service.cpp
index 3c11e24..74b1f62 100644
--- a/tv/cec/1.0/default/service.cpp
+++ b/tv/cec/1.0/default/service.cpp
@@ -23,5 +23,5 @@
 using android::hardware::defaultPassthroughServiceImplementation;
 
 int main() {
-    return defaultPassthroughServiceImplementation<IHdmiCec>("tv.cec");
+    return defaultPassthroughServiceImplementation<IHdmiCec>();
 }
diff --git a/tv/cec/1.0/vts/HdmiCec.vts b/tv/cec/1.0/vts/HdmiCec.vts
deleted file mode 100644
index 6e71d24..0000000
--- a/tv/cec/1.0/vts/HdmiCec.vts
+++ /dev/null
@@ -1,172 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "IHdmiCec"
-
-package: "android.hardware.tv.cec"
-
-import: "android.hardware.tv.cec@1.0::IHdmiCecCallback"
-import: "android.hardware.tv.cec@1.0::types"
-import: "android.hidl.base@1.0::types"
-
-interface: {
-    api: {
-        name: "addLogicalAddress"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::tv::cec::V1_0::Result"
-        }
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::tv::cec::V1_0::CecLogicalAddress"
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "clearLogicalAddress"
-        callflow: {
-            next: "addLogicalAddress"
-        }
-        callflow: {
-            exit: true
-        }
-    }
-
-    api: {
-        name: "getPhysicalAddress"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::tv::cec::V1_0::Result"
-        }
-        return_type_hidl: {
-            type: TYPE_SCALAR
-            scalar_type: "uint16_t"
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "sendMessage"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::tv::cec::V1_0::SendMessageResult"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::tv::cec::V1_0::CecMessage"
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "setCallback"
-        arg: {
-            type: TYPE_HIDL_CALLBACK
-            predefined_type: "::android::hardware::tv::cec::V1_0::IHdmiCecCallback"
-        }
-        callflow: {
-            next: "addLogicalAddress"
-        }
-        callflow: {
-            entry: true
-        }
-    }
-
-    api: {
-        name: "getCecVersion"
-        return_type_hidl: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "getVendorId"
-        return_type_hidl: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "getPortInfo"
-        return_type_hidl: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_STRUCT
-                predefined_type: "::android::hardware::tv::cec::V1_0::HdmiPortInfo"
-            }
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "setOption"
-        arg: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::tv::cec::V1_0::OptionKey"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "setLanguage"
-        arg: {
-            type: TYPE_STRING
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "enableAudioReturnChannel"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-    api: {
-        name: "isConnected"
-        return_type_hidl: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-}
diff --git a/tv/cec/1.0/vts/HdmiCecCallback.vts b/tv/cec/1.0/vts/HdmiCecCallback.vts
deleted file mode 100644
index a98db06..0000000
--- a/tv/cec/1.0/vts/HdmiCecCallback.vts
+++ /dev/null
@@ -1,27 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "IHdmiCecCallback"
-
-package: "android.hardware.tv.cec"
-
-import: "android.hardware.tv.cec@1.0::types"
-import: "android.hidl.base@1.0::types"
-
-interface: {
-    api: {
-        name: "onCecMessage"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::tv::cec::V1_0::CecMessage"
-        }
-    }
-
-    api: {
-        name: "onHotplugEvent"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::tv::cec::V1_0::HotplugEvent"
-        }
-    }
-
-}
diff --git a/tv/cec/1.0/vts/types.vts b/tv/cec/1.0/vts/types.vts
deleted file mode 100644
index ae972a5..0000000
--- a/tv/cec/1.0/vts/types.vts
+++ /dev/null
@@ -1,604 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "types"
-
-package: "android.hardware.tv.cec"
-
-
-attribute: {
-    name: "::android::hardware::tv::cec::V1_0::MaxLength"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "MESSAGE_BODY"
-        scalar_value: {
-            int32_t: 15
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::tv::cec::V1_0::CecDeviceType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "INACTIVE"
-        scalar_value: {
-            int32_t: -1
-        }
-        enumerator: "TV"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "RECORDER"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "TUNER"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "PLAYBACK"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "AUDIO_SYSTEM"
-        scalar_value: {
-            int32_t: 5
-        }
-        enumerator: "MAX"
-        scalar_value: {
-            int32_t: 5
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::tv::cec::V1_0::CecLogicalAddress"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "TV"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "RECORDER_1"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "RECORDER_2"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "TUNER_1"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "PLAYBACK_1"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "AUDIO_SYSTEM"
-        scalar_value: {
-            int32_t: 5
-        }
-        enumerator: "TUNER_2"
-        scalar_value: {
-            int32_t: 6
-        }
-        enumerator: "TUNER_3"
-        scalar_value: {
-            int32_t: 7
-        }
-        enumerator: "PLAYBACK_2"
-        scalar_value: {
-            int32_t: 8
-        }
-        enumerator: "RECORDER_3"
-        scalar_value: {
-            int32_t: 9
-        }
-        enumerator: "TUNER_4"
-        scalar_value: {
-            int32_t: 10
-        }
-        enumerator: "PLAYBACK_3"
-        scalar_value: {
-            int32_t: 11
-        }
-        enumerator: "FREE_USE"
-        scalar_value: {
-            int32_t: 14
-        }
-        enumerator: "UNREGISTERED"
-        scalar_value: {
-            int32_t: 15
-        }
-        enumerator: "BROADCAST"
-        scalar_value: {
-            int32_t: 15
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::tv::cec::V1_0::CecMessageType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "FEATURE_ABORT"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "IMAGE_VIEW_ON"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "TUNER_STEP_INCREMENT"
-        scalar_value: {
-            int32_t: 5
-        }
-        enumerator: "TUNER_STEP_DECREMENT"
-        scalar_value: {
-            int32_t: 6
-        }
-        enumerator: "TUNER_DEVICE_STATUS"
-        scalar_value: {
-            int32_t: 7
-        }
-        enumerator: "GIVE_TUNER_DEVICE_STATUS"
-        scalar_value: {
-            int32_t: 8
-        }
-        enumerator: "RECORD_ON"
-        scalar_value: {
-            int32_t: 9
-        }
-        enumerator: "RECORD_STATUS"
-        scalar_value: {
-            int32_t: 10
-        }
-        enumerator: "RECORD_OFF"
-        scalar_value: {
-            int32_t: 11
-        }
-        enumerator: "TEXT_VIEW_ON"
-        scalar_value: {
-            int32_t: 13
-        }
-        enumerator: "RECORD_TV_SCREEN"
-        scalar_value: {
-            int32_t: 15
-        }
-        enumerator: "GIVE_DECK_STATUS"
-        scalar_value: {
-            int32_t: 26
-        }
-        enumerator: "DECK_STATUS"
-        scalar_value: {
-            int32_t: 27
-        }
-        enumerator: "SET_MENU_LANGUAGE"
-        scalar_value: {
-            int32_t: 50
-        }
-        enumerator: "CLEAR_ANALOG_TIMER"
-        scalar_value: {
-            int32_t: 51
-        }
-        enumerator: "SET_ANALOG_TIMER"
-        scalar_value: {
-            int32_t: 52
-        }
-        enumerator: "TIMER_STATUS"
-        scalar_value: {
-            int32_t: 53
-        }
-        enumerator: "STANDBY"
-        scalar_value: {
-            int32_t: 54
-        }
-        enumerator: "PLAY"
-        scalar_value: {
-            int32_t: 65
-        }
-        enumerator: "DECK_CONTROL"
-        scalar_value: {
-            int32_t: 66
-        }
-        enumerator: "TIMER_CLEARED_STATUS"
-        scalar_value: {
-            int32_t: 67
-        }
-        enumerator: "USER_CONTROL_PRESSED"
-        scalar_value: {
-            int32_t: 68
-        }
-        enumerator: "USER_CONTROL_RELEASED"
-        scalar_value: {
-            int32_t: 69
-        }
-        enumerator: "GIVE_OSD_NAME"
-        scalar_value: {
-            int32_t: 70
-        }
-        enumerator: "SET_OSD_NAME"
-        scalar_value: {
-            int32_t: 71
-        }
-        enumerator: "SET_OSD_STRING"
-        scalar_value: {
-            int32_t: 100
-        }
-        enumerator: "SET_TIMER_PROGRAM_TITLE"
-        scalar_value: {
-            int32_t: 103
-        }
-        enumerator: "SYSTEM_AUDIO_MODE_REQUEST"
-        scalar_value: {
-            int32_t: 112
-        }
-        enumerator: "GIVE_AUDIO_STATUS"
-        scalar_value: {
-            int32_t: 113
-        }
-        enumerator: "SET_SYSTEM_AUDIO_MODE"
-        scalar_value: {
-            int32_t: 114
-        }
-        enumerator: "REPORT_AUDIO_STATUS"
-        scalar_value: {
-            int32_t: 122
-        }
-        enumerator: "GIVE_SYSTEM_AUDIO_MODE_STATUS"
-        scalar_value: {
-            int32_t: 125
-        }
-        enumerator: "SYSTEM_AUDIO_MODE_STATUS"
-        scalar_value: {
-            int32_t: 126
-        }
-        enumerator: "ROUTING_CHANGE"
-        scalar_value: {
-            int32_t: 128
-        }
-        enumerator: "ROUTING_INFORMATION"
-        scalar_value: {
-            int32_t: 129
-        }
-        enumerator: "ACTIVE_SOURCE"
-        scalar_value: {
-            int32_t: 130
-        }
-        enumerator: "GIVE_PHYSICAL_ADDRESS"
-        scalar_value: {
-            int32_t: 131
-        }
-        enumerator: "REPORT_PHYSICAL_ADDRESS"
-        scalar_value: {
-            int32_t: 132
-        }
-        enumerator: "REQUEST_ACTIVE_SOURCE"
-        scalar_value: {
-            int32_t: 133
-        }
-        enumerator: "SET_STREAM_PATH"
-        scalar_value: {
-            int32_t: 134
-        }
-        enumerator: "DEVICE_VENDOR_ID"
-        scalar_value: {
-            int32_t: 135
-        }
-        enumerator: "VENDOR_COMMAND"
-        scalar_value: {
-            int32_t: 137
-        }
-        enumerator: "VENDOR_REMOTE_BUTTON_DOWN"
-        scalar_value: {
-            int32_t: 138
-        }
-        enumerator: "VENDOR_REMOTE_BUTTON_UP"
-        scalar_value: {
-            int32_t: 139
-        }
-        enumerator: "GIVE_DEVICE_VENDOR_ID"
-        scalar_value: {
-            int32_t: 140
-        }
-        enumerator: "MENU_REQUEST"
-        scalar_value: {
-            int32_t: 141
-        }
-        enumerator: "MENU_STATUS"
-        scalar_value: {
-            int32_t: 142
-        }
-        enumerator: "GIVE_DEVICE_POWER_STATUS"
-        scalar_value: {
-            int32_t: 143
-        }
-        enumerator: "REPORT_POWER_STATUS"
-        scalar_value: {
-            int32_t: 144
-        }
-        enumerator: "GET_MENU_LANGUAGE"
-        scalar_value: {
-            int32_t: 145
-        }
-        enumerator: "SELECT_ANALOG_SERVICE"
-        scalar_value: {
-            int32_t: 146
-        }
-        enumerator: "SELECT_DIGITAL_SERVICE"
-        scalar_value: {
-            int32_t: 147
-        }
-        enumerator: "SET_DIGITAL_TIMER"
-        scalar_value: {
-            int32_t: 151
-        }
-        enumerator: "CLEAR_DIGITAL_TIMER"
-        scalar_value: {
-            int32_t: 153
-        }
-        enumerator: "SET_AUDIO_RATE"
-        scalar_value: {
-            int32_t: 154
-        }
-        enumerator: "INACTIVE_SOURCE"
-        scalar_value: {
-            int32_t: 157
-        }
-        enumerator: "CEC_VERSION"
-        scalar_value: {
-            int32_t: 158
-        }
-        enumerator: "GET_CEC_VERSION"
-        scalar_value: {
-            int32_t: 159
-        }
-        enumerator: "VENDOR_COMMAND_WITH_ID"
-        scalar_value: {
-            int32_t: 160
-        }
-        enumerator: "CLEAR_EXTERNAL_TIMER"
-        scalar_value: {
-            int32_t: 161
-        }
-        enumerator: "SET_EXTERNAL_TIMER"
-        scalar_value: {
-            int32_t: 162
-        }
-        enumerator: "INITIATE_ARC"
-        scalar_value: {
-            int32_t: 192
-        }
-        enumerator: "REPORT_ARC_INITIATED"
-        scalar_value: {
-            int32_t: 193
-        }
-        enumerator: "REPORT_ARC_TERMINATED"
-        scalar_value: {
-            int32_t: 194
-        }
-        enumerator: "REQUEST_ARC_INITIATION"
-        scalar_value: {
-            int32_t: 195
-        }
-        enumerator: "REQUEST_ARC_TERMINATION"
-        scalar_value: {
-            int32_t: 196
-        }
-        enumerator: "TERMINATE_ARC"
-        scalar_value: {
-            int32_t: 197
-        }
-        enumerator: "ABORT"
-        scalar_value: {
-            int32_t: 255
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::tv::cec::V1_0::AbortReason"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "UNRECOGNIZED_MODE"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "NOT_IN_CORRECT_MODE"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "CANNOT_PROVIDE_SOURCE"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "INVALID_OPERAND"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "REFUSED"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "UNABLE_TO_DETERMINE"
-        scalar_value: {
-            int32_t: 5
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::tv::cec::V1_0::Result"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "SUCCESS"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "FAILURE_UNKNOWN"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "FAILURE_INVALID_ARGS"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "FAILURE_INVALID_STATE"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "FAILURE_NOT_SUPPORTED"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "FAILURE_BUSY"
-        scalar_value: {
-            int32_t: 5
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::tv::cec::V1_0::SendMessageResult"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "SUCCESS"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "NACK"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "BUSY"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "FAIL"
-        scalar_value: {
-            int32_t: 3
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::tv::cec::V1_0::HdmiPortType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "INPUT"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "OUTPUT"
-        scalar_value: {
-            int32_t: 1
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::tv::cec::V1_0::OptionKey"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "WAKEUP"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "ENABLE_CEC"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "SYSTEM_CEC_CONTROL"
-        scalar_value: {
-            int32_t: 3
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::tv::cec::V1_0::CecMessage"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "initiator"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::tv::cec::V1_0::CecLogicalAddress"
-    }
-    struct_value: {
-        name: "destination"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::tv::cec::V1_0::CecLogicalAddress"
-    }
-    struct_value: {
-        name: "body"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::tv::cec::V1_0::HotplugEvent"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "connected"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "portId"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::tv::cec::V1_0::HdmiPortInfo"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "type"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::tv::cec::V1_0::HdmiPortType"
-    }
-    struct_value: {
-        name: "portId"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "cecSupported"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "arcSupported"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "physicalAddress"
-        type: TYPE_SCALAR
-        scalar_type: "uint16_t"
-    }
-}
-
diff --git a/tv/input/1.0/vts/TvInput.vts b/tv/input/1.0/vts/TvInput.vts
deleted file mode 100644
index f049fc1..0000000
--- a/tv/input/1.0/vts/TvInput.vts
+++ /dev/null
@@ -1,99 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "ITvInput"
-
-package: "android.hardware.tv.input"
-
-import: "android.hardware.audio.common@2.0::types"
-import: "android.hardware.tv.input@1.0::ITvInputCallback"
-import: "android.hardware.tv.input@1.0::types"
-import: "android.hidl.base@1.0::types"
-
-interface: {
-    api: {
-        name: "setCallback"
-        arg: {
-            type: TYPE_HIDL_CALLBACK
-            predefined_type: "::android::hardware::tv::input::V1_0::ITvInputCallback"
-        }
-        callflow: {
-            entry: true
-        }
-        callflow: {
-            exit: true
-        }
-        callflow: {
-            next: "getStreamConfigurations"
-        }
-    }
-
-    api: {
-        name: "getStreamConfigurations"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::tv::input::V1_0::Result"
-        }
-        return_type_hidl: {
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_STRUCT
-                predefined_type: "::android::hardware::tv::input::V1_0::TvStreamConfig"
-            }
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        callflow: {
-            next: "openStream"
-            next: "getStreamConfigurations"
-            next: "closeStream"
-        }
-    }
-
-    api: {
-        name: "openStream"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::tv::input::V1_0::Result"
-        }
-        return_type_hidl: {
-            type: TYPE_HANDLE
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        callflow: {
-            next: "closeStream"
-            next: "getStreamConfigurations"
-            next: "openStream"
-        }
-    }
-
-    api: {
-        name: "closeStream"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::tv::input::V1_0::Result"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-        callflow: {
-            next: "getStreamConfigurations"
-            next: "openStream"
-            next: "closeStream"
-        }
-    }
-
-}
diff --git a/tv/input/1.0/vts/TvInputCallback.vts b/tv/input/1.0/vts/TvInputCallback.vts
deleted file mode 100644
index 8082b9f..0000000
--- a/tv/input/1.0/vts/TvInputCallback.vts
+++ /dev/null
@@ -1,20 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "ITvInputCallback"
-
-package: "android.hardware.tv.input"
-
-import: "android.hardware.audio.common@2.0::types"
-import: "android.hardware.tv.input@1.0::types"
-import: "android.hidl.base@1.0::types"
-
-interface: {
-    api: {
-        name: "notify"
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::tv::input::V1_0::TvInputEvent"
-        }
-    }
-
-}
diff --git a/tv/input/1.0/vts/functional/Android.bp b/tv/input/1.0/vts/functional/Android.bp
index c327733..b93111d 100644
--- a/tv/input/1.0/vts/functional/Android.bp
+++ b/tv/input/1.0/vts/functional/Android.bp
@@ -15,9 +15,9 @@
 //
 
 cc_test {
-    name: "tv_input_hidl_hal_test",
+    name: "VtsHalTvInputV1_0TargetTest",
     gtest: true,
-    srcs: ["tv_input_hidl_hal_test.cpp"],
+    srcs: ["VtsHalTvInputV1_0TargetTest.cpp"],
     shared_libs: [
         "libbase",
         "liblog",
diff --git a/tv/input/1.0/vts/functional/tv_input_hidl_hal_test.cpp b/tv/input/1.0/vts/functional/VtsHalTvInputV1_0TargetTest.cpp
similarity index 100%
rename from tv/input/1.0/vts/functional/tv_input_hidl_hal_test.cpp
rename to tv/input/1.0/vts/functional/VtsHalTvInputV1_0TargetTest.cpp
diff --git a/tv/input/1.0/vts/types.vts b/tv/input/1.0/vts/types.vts
deleted file mode 100644
index cb1d472..0000000
--- a/tv/input/1.0/vts/types.vts
+++ /dev/null
@@ -1,176 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "types"
-
-package: "android.hardware.tv.input"
-
-import: "android.hardware.audio.common@2.0::types"
-
-attribute: {
-    name: "::android::hardware::tv::input::V1_0::Result"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "OK"
-        scalar_value: {
-            int32_t: 0
-        }
-        enumerator: "UNKNOWN"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "NO_RESOURCE"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "INVALID_ARGUMENTS"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "INVALID_STATE"
-        scalar_value: {
-            int32_t: 4
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::tv::input::V1_0::TvInputType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "OTHER"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "TUNER"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "COMPOSITE"
-        scalar_value: {
-            int32_t: 3
-        }
-        enumerator: "SVIDEO"
-        scalar_value: {
-            int32_t: 4
-        }
-        enumerator: "SCART"
-        scalar_value: {
-            int32_t: 5
-        }
-        enumerator: "COMPONENT"
-        scalar_value: {
-            int32_t: 6
-        }
-        enumerator: "VGA"
-        scalar_value: {
-            int32_t: 7
-        }
-        enumerator: "DVI"
-        scalar_value: {
-            int32_t: 8
-        }
-        enumerator: "HDMI"
-        scalar_value: {
-            int32_t: 9
-        }
-        enumerator: "DISPLAY_PORT"
-        scalar_value: {
-            int32_t: 10
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::tv::input::V1_0::TvInputDeviceInfo"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "deviceId"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "type"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::tv::input::V1_0::TvInputType"
-    }
-    struct_value: {
-        name: "portId"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "audioType"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::audio::common::V2_0::AudioDevice"
-    }
-    struct_value: {
-        name: "audioAddress"
-        type: TYPE_ARRAY
-        vector_size: 32
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::tv::input::V1_0::TvInputEventType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "DEVICE_AVAILABLE"
-        scalar_value: {
-            int32_t: 1
-        }
-        enumerator: "DEVICE_UNAVAILABLE"
-        scalar_value: {
-            int32_t: 2
-        }
-        enumerator: "STREAM_CONFIGURATIONS_CHANGED"
-        scalar_value: {
-            int32_t: 3
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::tv::input::V1_0::TvInputEvent"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "type"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::tv::input::V1_0::TvInputEventType"
-    }
-    struct_value: {
-        name: "deviceInfo"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::tv::input::V1_0::TvInputDeviceInfo"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::tv::input::V1_0::TvStreamConfig"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "streamId"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "maxVideoWidth"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "maxVideoHeight"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-}
-
diff --git a/usb/1.0/vts/functional/Android.bp b/usb/1.0/vts/functional/Android.bp
new file mode 100644
index 0000000..de11a8c
--- /dev/null
+++ b/usb/1.0/vts/functional/Android.bp
@@ -0,0 +1,37 @@
+//
+// Copyright (C) 2017 The Android Open Source Project
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+
+cc_test {
+    name: "VtsHalUsbV1_0TargetTest",
+    gtest: true,
+    srcs: ["VtsHalUsbV1_0TargetTest.cpp"],
+    shared_libs: [
+        "libbase",
+        "liblog",
+        "libcutils",
+        "libhidlbase",
+        "libhidltransport",
+        "libhwbinder",
+        "libnativehelper",
+        "libutils",
+        "android.hardware.usb@1.0",
+    ],
+    static_libs: ["libgtest"],
+    cflags: [
+        "-O0",
+        "-g",
+    ],
+}
diff --git a/usb/1.0/vts/functional/VtsHalUsbV1_0TargetTest.cpp b/usb/1.0/vts/functional/VtsHalUsbV1_0TargetTest.cpp
new file mode 100644
index 0000000..658e6b1
--- /dev/null
+++ b/usb/1.0/vts/functional/VtsHalUsbV1_0TargetTest.cpp
@@ -0,0 +1,351 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#define LOG_TAG "VtsHalUsbV1_0TargetTest"
+#include <android-base/logging.h>
+
+#include <android/hardware/usb/1.0/IUsb.h>
+#include <android/hardware/usb/1.0/IUsbCallback.h>
+#include <android/hardware/usb/1.0/types.h>
+
+#include <gtest/gtest.h>
+#include <stdlib.h>
+#include <chrono>
+#include <condition_variable>
+#include <mutex>
+
+#define TIMEOUT_PERIOD 10
+
+using ::android::hardware::usb::V1_0::IUsbCallback;
+using ::android::hardware::usb::V1_0::IUsb;
+using ::android::hardware::usb::V1_0::PortDataRole;
+using ::android::hardware::usb::V1_0::PortMode;
+using ::android::hardware::usb::V1_0::PortPowerRole;
+using ::android::hardware::usb::V1_0::PortRole;
+using ::android::hardware::usb::V1_0::PortRoleType;
+using ::android::hardware::usb::V1_0::PortStatus;
+using ::android::hardware::usb::V1_0::Status;
+using ::android::hidl::base::V1_0::IBase;
+using ::android::hardware::hidl_array;
+using ::android::hardware::hidl_memory;
+using ::android::hardware::hidl_string;
+using ::android::hardware::hidl_vec;
+using ::android::hardware::Return;
+using ::android::hardware::Void;
+using ::android::sp;
+
+#define USB_SERVICE_NAME "usb_hal"
+
+// The main test class for the USB hidl HAL
+class UsbHidlTest : public ::testing::Test {
+ public:
+  // Callback class for the USB HIDL hal.
+  // Usb Hal will call this object upon role switch or port query.
+  class UsbCallback : public IUsbCallback {
+    UsbHidlTest& parent_;
+    int cookie;
+
+   public:
+    UsbCallback(UsbHidlTest& parent, int cookie)
+        : parent_(parent), cookie(cookie){};
+
+    virtual ~UsbCallback() = default;
+
+    // Callback method for the port status.
+    Return<void> notifyPortStatusChange(
+        const hidl_vec<PortStatus>& currentPortStatus, Status retval) override {
+      if (retval == Status::SUCCESS) {
+        parent_.usb_last_port_status.portName =
+            currentPortStatus[0].portName.c_str();
+        parent_.usb_last_port_status.currentDataRole =
+            currentPortStatus[0].currentDataRole;
+        parent_.usb_last_port_status.currentPowerRole =
+            currentPortStatus[0].currentPowerRole;
+        parent_.usb_last_port_status.currentMode =
+            currentPortStatus[0].currentMode;
+      }
+      parent_.usb_last_cookie = cookie;
+      parent_.notify();
+      return Void();
+    };
+
+    // Callback method for the status of role switch operation.
+    Return<void> notifyRoleSwitchStatus(const hidl_string& /*portName*/,
+                                        const PortRole& newRole,
+                                        Status retval) override {
+      parent_.usb_last_status = retval;
+      parent_.usb_last_cookie = cookie;
+      parent_.usb_last_port_role = newRole;
+      parent_.usb_role_switch_done = true;
+      parent_.notify();
+      return Void();
+    };
+  };
+
+  virtual void SetUp() override {
+    ALOGI("Setup");
+    usb = IUsb::getService(USB_SERVICE_NAME);
+    ASSERT_NE(usb, nullptr);
+
+    usb_cb_2 = new UsbCallback(*this, 2);
+    ASSERT_NE(usb_cb_2, nullptr);
+    Return<void> ret = usb->setCallback(usb_cb_2);
+    ASSERT_TRUE(ret.isOk());
+  }
+
+  virtual void TearDown() override { ALOGI("Teardown"); }
+
+  // Used as a mechanism to inform the test about data/event callback.
+  inline void notify() {
+    std::unique_lock<std::mutex> lock(usb_mtx);
+    usb_count++;
+    usb_cv.notify_one();
+  }
+
+  // Test code calls this function to wait for data/event callback.
+  inline std::cv_status wait() {
+    std::unique_lock<std::mutex> lock(usb_mtx);
+
+    std::cv_status status = std::cv_status::no_timeout;
+    auto now = std::chrono::system_clock::now();
+    while (usb_count == 0) {
+      status =
+          usb_cv.wait_until(lock, now + std::chrono::seconds(TIMEOUT_PERIOD));
+      if (status == std::cv_status::timeout) {
+        ALOGI("timeout");
+        return status;
+      }
+    }
+    usb_count--;
+    return status;
+  }
+
+  // USB hidl hal Proxy
+  sp<IUsb> usb;
+
+  // Callback objects for usb hidl
+  // Methods of these objects are called to notify port status updates.
+  sp<IUsbCallback> usb_cb_1, usb_cb_2;
+
+  // The last conveyed status of the USB ports.
+  // Stores information of currentt_data_role, power_role for all the USB ports
+  PortStatus usb_last_port_status;
+
+  // Status of the last role switch operation.
+  Status usb_last_status;
+
+  // Port role information of the last role switch operation.
+  PortRole usb_last_port_role;
+
+  // Flag to indicate the invocation of role switch callback.
+  bool usb_role_switch_done;
+
+  // Identifier for the usb callback object.
+  // Stores the cookie of the last invoked usb callback object.
+  int usb_last_cookie;
+
+  // synchronization primitives to coordinate between main test thread
+  // and the callback thread.
+  std::mutex usb_mtx;
+  std::condition_variable usb_cv;
+  int usb_count;
+};
+
+/*
+ * Test to see if setCallback succeeds.
+ * Callback oject is created and registered.
+ * Check to see if the hidl transaction succeeded.
+ */
+TEST_F(UsbHidlTest, setCallback) {
+  usb_cb_1 = new UsbCallback(*this, 1);
+  ASSERT_NE(usb_cb_1, nullptr);
+  Return<void> ret = usb->setCallback(usb_cb_1);
+  ASSERT_TRUE(ret.isOk());
+}
+
+/*
+ * Check to see if querying type-c
+ * port status succeeds.
+ */
+TEST_F(UsbHidlTest, queryPortStatus) {
+  Return<void> ret = usb->queryPortStatus();
+  ASSERT_TRUE(ret.isOk());
+  EXPECT_EQ(std::cv_status::no_timeout, wait());
+  EXPECT_EQ(2, usb_last_cookie);
+  ALOGI("rightafter: %s", usb_last_port_status.portName.c_str());
+}
+
+/*
+ * Trying to switch a non-existent port should fail.
+ * This test case tried to switch the port with empty
+ * name which is expected to fail.
+ */
+TEST_F(UsbHidlTest, switchEmptyPort) {
+  struct PortRole role;
+  role.type = PortRoleType::DATA_ROLE;
+
+  Return<void> ret = usb->switchRole("", role);
+  ASSERT_TRUE(ret.isOk());
+  EXPECT_EQ(std::cv_status::no_timeout, wait());
+  EXPECT_EQ(Status::ERROR, usb_last_status);
+  EXPECT_EQ(2, usb_last_cookie);
+}
+
+/*
+ * Test switching the mode of usb port.
+ * Test case queries the usb ports present in device.
+ * If there is atleast one usb port, a mode switch
+ * to DFP is attempted for the port.
+ * The callback parametes are checked to see if the mode
+ * switch was successfull. Upon success, Status::SUCCESS
+ * is expected to be returned.
+ */
+TEST_F(UsbHidlTest, switchModetoDFP) {
+  struct PortRole role;
+  role.type = PortRoleType::MODE;
+  role.role = static_cast<uint32_t>(PortMode::DFP);
+
+  Return<void> ret = usb->queryPortStatus();
+  ASSERT_TRUE(ret.isOk());
+  EXPECT_EQ(std::cv_status::no_timeout, wait());
+  EXPECT_EQ(2, usb_last_cookie);
+
+  if (!usb_last_port_status.portName.empty()) {
+    hidl_string portBeingSwitched = usb_last_port_status.portName;
+    ALOGI("mode portname:%s", portBeingSwitched.c_str());
+    usb_role_switch_done = false;
+    Return<void> ret = usb->switchRole(portBeingSwitched.c_str(), role);
+    ASSERT_TRUE(ret.isOk());
+
+    std::cv_status waitStatus = wait();
+    while (waitStatus == std::cv_status::no_timeout &&
+           usb_role_switch_done == false)
+      waitStatus = wait();
+
+    EXPECT_EQ(std::cv_status::no_timeout, waitStatus);
+    EXPECT_EQ(2, usb_last_cookie);
+
+    EXPECT_EQ(static_cast<uint32_t>(PortRoleType::MODE),
+              static_cast<uint32_t>(usb_last_port_role.type));
+    if (usb_last_status == Status::SUCCESS) {
+      EXPECT_EQ(static_cast<uint32_t>(PortMode::DFP),
+                static_cast<uint32_t>(usb_last_port_role.role));
+    } else {
+      EXPECT_NE(static_cast<uint32_t>(PortMode::UFP),
+                static_cast<uint32_t>(usb_last_port_role.role));
+    }
+  }
+}
+
+/*
+ * Test switching the power role of usb port.
+ * Test case queries the usb ports present in device.
+ * If there is atleast one usb port, a power role switch
+ * to SOURCE is attempted for the port.
+ * The callback parametes are checked to see if the power role
+ * switch was successfull. Upon success, Status::SUCCESS
+ * is expected to be returned.
+ */
+
+TEST_F(UsbHidlTest, switchPowerRole) {
+  struct PortRole role;
+  role.type = PortRoleType::POWER_ROLE;
+  role.role = static_cast<uint32_t>(PortPowerRole::SOURCE);
+
+  Return<void> ret = usb->queryPortStatus();
+  ASSERT_TRUE(ret.isOk());
+  EXPECT_EQ(std::cv_status::no_timeout, wait());
+  EXPECT_EQ(2, usb_last_cookie);
+
+  if (!usb_last_port_status.portName.empty()) {
+    hidl_string portBeingSwitched = usb_last_port_status.portName;
+    ALOGI("switchPower role portname:%s", portBeingSwitched.c_str());
+    usb_role_switch_done = false;
+    Return<void> ret = usb->switchRole(portBeingSwitched.c_str(), role);
+    ASSERT_TRUE(ret.isOk());
+
+    std::cv_status waitStatus = wait();
+    while (waitStatus == std::cv_status::no_timeout &&
+           usb_role_switch_done == false)
+      waitStatus = wait();
+
+    EXPECT_EQ(std::cv_status::no_timeout, waitStatus);
+    EXPECT_EQ(2, usb_last_cookie);
+
+    EXPECT_EQ(static_cast<uint32_t>(PortRoleType::POWER_ROLE),
+              static_cast<uint32_t>(usb_last_port_role.type));
+    if (usb_last_status == Status::SUCCESS) {
+      EXPECT_EQ(static_cast<uint32_t>(PortPowerRole::SOURCE),
+                static_cast<uint32_t>(usb_last_port_role.role));
+    } else {
+      EXPECT_NE(static_cast<uint32_t>(PortPowerRole::SINK),
+                static_cast<uint32_t>(usb_last_port_role.role));
+    }
+  }
+}
+
+/*
+ * Test switching the data role of usb port.
+ * Test case queries the usb ports present in device.
+ * If there is atleast one usb port, a power role switch
+ * to HOST is attempted for the port.
+ * The callback parametes are checked to see if the power role
+ * switch was successfull. Upon success, Status::SUCCESS
+ * is expected to be returned.
+ */
+TEST_F(UsbHidlTest, switchDataRole) {
+  struct PortRole role;
+  role.type = PortRoleType::DATA_ROLE;
+  role.role = static_cast<uint32_t>(PortDataRole::HOST);
+
+  Return<void> ret = usb->queryPortStatus();
+  ASSERT_TRUE(ret.isOk());
+  EXPECT_EQ(std::cv_status::no_timeout, wait());
+  EXPECT_EQ(2, usb_last_cookie);
+
+  if (!usb_last_port_status.portName.empty()) {
+    hidl_string portBeingSwitched = usb_last_port_status.portName;
+    ALOGI("portname:%s", portBeingSwitched.c_str());
+    usb_role_switch_done = false;
+    Return<void> ret = usb->switchRole(portBeingSwitched.c_str(), role);
+    ASSERT_TRUE(ret.isOk());
+
+    std::cv_status waitStatus = wait();
+    while (waitStatus == std::cv_status::no_timeout &&
+           usb_role_switch_done == false)
+      waitStatus = wait();
+
+    EXPECT_EQ(std::cv_status::no_timeout, waitStatus);
+    EXPECT_EQ(2, usb_last_cookie);
+
+    EXPECT_EQ(static_cast<uint32_t>(PortRoleType::DATA_ROLE),
+              static_cast<uint32_t>(usb_last_port_role.type));
+    if (usb_last_status == Status::SUCCESS) {
+      EXPECT_EQ(static_cast<uint32_t>(PortDataRole::HOST),
+                static_cast<uint32_t>(usb_last_port_role.role));
+    } else {
+      EXPECT_NE(static_cast<uint32_t>(PortDataRole::DEVICE),
+                static_cast<uint32_t>(usb_last_port_role.role));
+    }
+  }
+}
+
+int main(int argc, char** argv) {
+  ::testing::InitGoogleTest(&argc, argv);
+  int status = RUN_ALL_TESTS();
+  ALOGI("Test result = %d", status);
+  return status;
+}
diff --git a/usb/Android.bp b/usb/Android.bp
index bbb3e4b..33f70eb 100644
--- a/usb/Android.bp
+++ b/usb/Android.bp
@@ -1,4 +1,5 @@
 // This is an autogenerated file, do not edit.
 subdirs = [
     "1.0",
+    "1.0/vts/functional",
 ]
diff --git a/vibrator/1.0/vts/Vibrator.vts b/vibrator/1.0/vts/Vibrator.vts
deleted file mode 100644
index 07ec30e..0000000
--- a/vibrator/1.0/vts/Vibrator.vts
+++ /dev/null
@@ -1,31 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "IVibrator"
-
-package: "android.hardware.vibrator"
-
-import: "android.hardware.vibrator@1.0::types"
-import: "android.hidl.base@1.0::types"
-
-interface: {
-    api: {
-        name: "on"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::vibrator::V1_0::Status"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-    }
-
-    api: {
-        name: "off"
-        return_type_hidl: {
-            type: TYPE_ENUM
-            predefined_type: "::android::hardware::vibrator::V1_0::Status"
-        }
-    }
-
-}
diff --git a/vibrator/1.0/vts/functional/Android.bp b/vibrator/1.0/vts/functional/Android.bp
index a24cf5c..640de01 100644
--- a/vibrator/1.0/vts/functional/Android.bp
+++ b/vibrator/1.0/vts/functional/Android.bp
@@ -15,9 +15,9 @@
 //
 
 cc_test {
-    name: "vibrator_hidl_hal_test",
+    name: "VtsHalVibratorV1_0TargetTest",
     gtest: true,
-    srcs: ["vibrator_hidl_hal_test.cpp"],
+    srcs: ["VtsHalVibratorV1_0TargetTest.cpp"],
     shared_libs: [
         "libbase",
         "libhidlbase",
diff --git a/vibrator/1.0/vts/functional/vibrator_hidl_hal_test.cpp b/vibrator/1.0/vts/functional/VtsHalVibratorV1_0TargetTest.cpp
similarity index 100%
rename from vibrator/1.0/vts/functional/vibrator_hidl_hal_test.cpp
rename to vibrator/1.0/vts/functional/VtsHalVibratorV1_0TargetTest.cpp
diff --git a/vibrator/1.0/vts/types.vts b/vibrator/1.0/vts/types.vts
deleted file mode 100644
index d1bf1e1..0000000
--- a/vibrator/1.0/vts/types.vts
+++ /dev/null
@@ -1,24 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "types"
-
-package: "android.hardware.vibrator"
-
-
-attribute: {
-    name: "::android::hardware::vibrator::V1_0::Status"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "OK"
-        scalar_value: {
-            uint32_t: 0
-        }
-        enumerator: "ERR"
-        scalar_value: {
-            uint32_t: 1
-        }
-    }
-}
-
diff --git a/vr/1.0/vts/Vr.vts b/vr/1.0/vts/Vr.vts
deleted file mode 100644
index fdc4a5c..0000000
--- a/vr/1.0/vts/Vr.vts
+++ /dev/null
@@ -1,37 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "IVr"
-
-package: "android.hardware.vr"
-
-import: "android.hidl.base@1.0::types"
-
-interface: {
-    api: {
-        name: "init"
-        callflow: {
-            next: "*"
-        }
-        callflow: {
-            entry: true
-        }
-        callflow: {
-            exit: true
-        }
-    }
-
-    api: {
-        name: "setVrMode"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-        callflow: {
-            next: "*"
-        }
-        callflow: {
-            exit: true
-        }
-    }
-
-}
diff --git a/vr/1.0/vts/functional/Android.bp b/vr/1.0/vts/functional/Android.bp
index 529f92d..36bc527 100644
--- a/vr/1.0/vts/functional/Android.bp
+++ b/vr/1.0/vts/functional/Android.bp
@@ -15,9 +15,9 @@
 //
 
 cc_test {
-    name: "vr_hidl_hal_test",
+    name: "VtsHalVrV1_0TargetTest",
     gtest: true,
-    srcs: ["vr_hidl_hal_test.cpp"],
+    srcs: ["VtsHalVrV1_0TargetTest.cpp"],
     shared_libs: [
         "liblog",
         "libhidlbase",
diff --git a/vr/1.0/vts/functional/vr_hidl_hal_test.cpp b/vr/1.0/vts/functional/VtsHalVrV1_0TargetTest.cpp
similarity index 100%
rename from vr/1.0/vts/functional/vr_hidl_hal_test.cpp
rename to vr/1.0/vts/functional/VtsHalVrV1_0TargetTest.cpp
diff --git a/wifi/1.0/Android.mk b/wifi/1.0/Android.mk
index 4476b14..fa6ef6c 100644
--- a/wifi/1.0/Android.mk
+++ b/wifi/1.0/Android.mk
@@ -796,25 +796,6 @@
 LOCAL_GENERATED_SOURCES += $(GEN)
 
 #
-# Build types.hal (StaBackgroundScanBand)
-#
-GEN := $(intermediates)/android/hardware/wifi/V1_0/StaBackgroundScanBand.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@1.0::types.StaBackgroundScanBand
-
-$(GEN): $(LOCAL_PATH)/types.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-
-#
 # Build types.hal (StaBackgroundScanBucketEventReportSchemeMask)
 #
 GEN := $(intermediates)/android/hardware/wifi/V1_0/StaBackgroundScanBucketEventReportSchemeMask.java
@@ -1081,6 +1062,25 @@
 LOCAL_GENERATED_SOURCES += $(GEN)
 
 #
+# Build types.hal (WifiBand)
+#
+GEN := $(intermediates)/android/hardware/wifi/V1_0/WifiBand.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@1.0::types.WifiBand
+
+$(GEN): $(LOCAL_PATH)/types.hal
+	$(transform-generated-source)
+LOCAL_GENERATED_SOURCES += $(GEN)
+
+#
 # Build types.hal (WifiChannelInfo)
 #
 GEN := $(intermediates)/android/hardware/wifi/V1_0/WifiChannelInfo.java
@@ -2599,25 +2599,6 @@
 LOCAL_GENERATED_SOURCES += $(GEN)
 
 #
-# Build types.hal (StaBackgroundScanBand)
-#
-GEN := $(intermediates)/android/hardware/wifi/V1_0/StaBackgroundScanBand.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@1.0::types.StaBackgroundScanBand
-
-$(GEN): $(LOCAL_PATH)/types.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-
-#
 # Build types.hal (StaBackgroundScanBucketEventReportSchemeMask)
 #
 GEN := $(intermediates)/android/hardware/wifi/V1_0/StaBackgroundScanBucketEventReportSchemeMask.java
@@ -2884,6 +2865,25 @@
 LOCAL_GENERATED_SOURCES += $(GEN)
 
 #
+# Build types.hal (WifiBand)
+#
+GEN := $(intermediates)/android/hardware/wifi/V1_0/WifiBand.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@1.0::types.WifiBand
+
+$(GEN): $(LOCAL_PATH)/types.hal
+	$(transform-generated-source)
+LOCAL_GENERATED_SOURCES += $(GEN)
+
+#
 # Build types.hal (WifiChannelInfo)
 #
 GEN := $(intermediates)/android/hardware/wifi/V1_0/WifiChannelInfo.java
diff --git a/wifi/1.0/IWifiApIface.hal b/wifi/1.0/IWifiApIface.hal
index aeca2cd..1f6ee7c 100644
--- a/wifi/1.0/IWifiApIface.hal
+++ b/wifi/1.0/IWifiApIface.hal
@@ -33,4 +33,21 @@
    *         |WifiStatusCode.FAILURE_IFACE_INVALID|
    */
   setCountryCode(int8_t[2] code) generates (WifiStatus status);
+
+  /**
+   * Used to query the list of valid frequencies (depending on country code set)
+   * for the provided band.
+   *
+   * @param band Band for which the frequency list is being generated.
+   * @return status WifiStatus of the operation.
+   *         Possible status codes:
+   *         |WifiStatusCode.SUCCESS|,
+   *         |WifiStatusCode.ERROR_WIFI_IFACE_INVALID|,
+   *         |WifiStatusCode.ERROR_NOT_SUPPORTED|,
+   *         |WifiStatusCode.ERROR_NOT_AVAILABLE|,
+   *         |WifiStatusCode.ERROR_UNKNOWN|
+   * @return frequencies vector of valid frequencies for the provided band.
+   */
+  getValidFrequenciesForBand(WifiBand band)
+      generates (WifiStatus status, vec<WifiChannelInMhz> frequencies);
 };
diff --git a/wifi/1.0/IWifiStaIface.hal b/wifi/1.0/IWifiStaIface.hal
index 96dc54a..43c3126 100644
--- a/wifi/1.0/IWifiStaIface.hal
+++ b/wifi/1.0/IWifiStaIface.hal
@@ -180,7 +180,6 @@
    * for the provided band. These channels may be specifed in the
    * |BackgroundScanBucketParameters.frequenciesInMhz| for a background scan
    * request.
-   * Must fail if |StaIfaceCapabilityMask.BACKGROUND_SCAN| is not set.
    *
    * @param band Band for which the frequency list is being generated.
    * @return status WifiStatus of the operation.
@@ -192,7 +191,7 @@
    *         |WifiStatusCode.ERROR_UNKNOWN|
    * @return frequencies vector of valid frequencies for the provided band.
    */
-  getValidFrequenciesForBackgroundScan(StaBackgroundScanBand band)
+  getValidFrequenciesForBand(WifiBand band)
       generates (WifiStatus status, vec<WifiChannelInMhz> frequencies);
 
   /**
diff --git a/wifi/1.0/default/hidl_callback_util.h b/wifi/1.0/default/hidl_callback_util.h
index a1c6819..7136279 100644
--- a/wifi/1.0/default/hidl_callback_util.h
+++ b/wifi/1.0/default/hidl_callback_util.h
@@ -82,14 +82,12 @@
     return true;
   }
 
-  const std::set<android::sp<CallbackType>> getCallbacks() {
-    return cb_set_;
-  }
+  const std::set<android::sp<CallbackType>> getCallbacks() { return cb_set_; }
 
   // Death notification for callbacks.
   void onObjectDeath(uint64_t cookie) {
-    CallbackType *cb = reinterpret_cast<CallbackType*>(cookie);
-    const auto& iter =  cb_set_.find(cb);
+    CallbackType* cb = reinterpret_cast<CallbackType*>(cookie);
+    const auto& iter = cb_set_.find(cb);
     if (iter == cb_set_.end()) {
       LOG(ERROR) << "Unknown callback death notification received";
       return;
diff --git a/wifi/1.0/default/hidl_struct_util.cpp b/wifi/1.0/default/hidl_struct_util.cpp
index 0bf0d32..c7b8c41 100644
--- a/wifi/1.0/default/hidl_struct_util.cpp
+++ b/wifi/1.0/default/hidl_struct_util.cpp
@@ -306,21 +306,21 @@
   return true;
 }
 
-legacy_hal::wifi_band convertHidlGscanBandToLegacy(StaBackgroundScanBand band) {
+legacy_hal::wifi_band convertHidlWifiBandToLegacy(WifiBand band) {
   switch (band) {
-    case StaBackgroundScanBand::BAND_UNSPECIFIED:
+    case WifiBand::BAND_UNSPECIFIED:
       return legacy_hal::WIFI_BAND_UNSPECIFIED;
-    case StaBackgroundScanBand::BAND_24GHZ:
+    case WifiBand::BAND_24GHZ:
       return legacy_hal::WIFI_BAND_BG;
-    case StaBackgroundScanBand::BAND_5GHZ:
+    case WifiBand::BAND_5GHZ:
       return legacy_hal::WIFI_BAND_A;
-    case StaBackgroundScanBand::BAND_5GHZ_DFS:
+    case WifiBand::BAND_5GHZ_DFS:
       return legacy_hal::WIFI_BAND_A_DFS;
-    case StaBackgroundScanBand::BAND_5GHZ_WITH_DFS:
+    case WifiBand::BAND_5GHZ_WITH_DFS:
       return legacy_hal::WIFI_BAND_A_WITH_DFS;
-    case StaBackgroundScanBand::BAND_24GHZ_5GHZ:
+    case WifiBand::BAND_24GHZ_5GHZ:
       return legacy_hal::WIFI_BAND_ABG;
-    case StaBackgroundScanBand::BAND_24GHZ_5GHZ_WITH_DFS:
+    case WifiBand::BAND_24GHZ_5GHZ_WITH_DFS:
       return legacy_hal::WIFI_BAND_ABG_WITH_DFS;
   };
   CHECK(false);
@@ -917,7 +917,15 @@
   memcpy(legacy_request->service_specific_info,
         hidl_request.baseConfigs.serviceSpecificInfo.data(),
         legacy_request->service_specific_info_len);
-  // TODO: b/35193423 add support for extended service specific info
+  legacy_request->sdea_service_specific_info_len =
+        hidl_request.baseConfigs.extendedServiceSpecificInfo.size();
+  if (legacy_request->sdea_service_specific_info_len > NAN_MAX_SDEA_SERVICE_SPECIFIC_INFO_LEN) {
+    LOG(ERROR) << "convertHidlNanPublishRequestToLegacy: sdea_service_specific_info_len too large";
+    return false;
+  }
+  memcpy(legacy_request->sdea_service_specific_info,
+        hidl_request.baseConfigs.extendedServiceSpecificInfo.data(),
+        legacy_request->sdea_service_specific_info_len);
   legacy_request->rx_match_filter_len = hidl_request.baseConfigs.rxMatchFilter.size();
   if (legacy_request->rx_match_filter_len > NAN_MAX_MATCH_FILTER_LEN) {
     LOG(ERROR) << "convertHidlNanPublishRequestToLegacy: rx_match_filter_len too large";
@@ -999,7 +1007,16 @@
   memcpy(legacy_request->service_specific_info,
         hidl_request.baseConfigs.serviceSpecificInfo.data(),
         legacy_request->service_specific_info_len);
-  // TODO: b/35193423 add support for extended service specific info
+  legacy_request->sdea_service_specific_info_len =
+        hidl_request.baseConfigs.extendedServiceSpecificInfo.size();
+  if (legacy_request->sdea_service_specific_info_len > NAN_MAX_SDEA_SERVICE_SPECIFIC_INFO_LEN) {
+    LOG(ERROR) <<
+        "convertHidlNanSubscribeRequestToLegacy: sdea_service_specific_info_len too large";
+    return false;
+  }
+  memcpy(legacy_request->sdea_service_specific_info,
+        hidl_request.baseConfigs.extendedServiceSpecificInfo.data(),
+        legacy_request->sdea_service_specific_info_len);
   legacy_request->rx_match_filter_len = hidl_request.baseConfigs.rxMatchFilter.size();
   if (legacy_request->rx_match_filter_len > NAN_MAX_MATCH_FILTER_LEN) {
     LOG(ERROR) << "convertHidlNanSubscribeRequestToLegacy: rx_match_filter_len too large";
@@ -1083,13 +1100,22 @@
         legacy_hal::NAN_TRANSMIT_IN_DW : legacy_hal::NAN_TRANSMIT_IN_FAW;
   legacy_request->service_specific_info_len = hidl_request.serviceSpecificInfo.size();
   if (legacy_request->service_specific_info_len > NAN_MAX_SERVICE_SPECIFIC_INFO_LEN) {
-    LOG(ERROR) << "convertHidlNanTransmitFollowupRequestToLegacy: service_specific_info_len too large";
+    LOG(ERROR) <<
+        "convertHidlNanTransmitFollowupRequestToLegacy: service_specific_info_len too large";
     return false;
   }
   memcpy(legacy_request->service_specific_info,
         hidl_request.serviceSpecificInfo.data(),
         legacy_request->service_specific_info_len);
-  // TODO: b/35193423 add support for extended service specific info
+  legacy_request->sdea_service_specific_info_len = hidl_request.extendedServiceSpecificInfo.size();
+  if (legacy_request->sdea_service_specific_info_len > NAN_MAX_SDEA_SERVICE_SPECIFIC_INFO_LEN) {
+    LOG(ERROR) <<
+        "convertHidlNanTransmitFollowupRequestToLegacy: sdea_service_specific_info_len too large";
+    return false;
+  }
+  memcpy(legacy_request->sdea_service_specific_info,
+        hidl_request.extendedServiceSpecificInfo.data(),
+        legacy_request->sdea_service_specific_info_len);
   legacy_request->recv_indication_cfg = hidl_request.disableFollowupResultIndication ? 0x1 : 0x0;
 
   return true;
@@ -1279,8 +1305,8 @@
   hidl_response->maxMatchFilterLen = legacy_response.max_match_filter_len;
   hidl_response->maxTotalMatchFilterLen = legacy_response.max_total_match_filter_len;
   hidl_response->maxServiceSpecificInfoLen = legacy_response.max_service_specific_info_len;
-  // TODO: b/35193423 add support for extended service specific info
-  hidl_response->maxExtendedServiceSpecificInfoLen = 0;
+  hidl_response->maxExtendedServiceSpecificInfoLen =
+    legacy_response.max_sdea_service_specific_info_len;
   hidl_response->maxNdiInterfaces = legacy_response.max_ndi_interfaces;
   hidl_response->maxNdpSessions = legacy_response.max_ndp_sessions;
   hidl_response->maxAppInfoLen = legacy_response.max_app_info_len;
@@ -1303,7 +1329,9 @@
   hidl_ind->addr = hidl_array<uint8_t, 6>(legacy_ind.addr);
   hidl_ind->serviceSpecificInfo = std::vector<uint8_t>(legacy_ind.service_specific_info,
         legacy_ind.service_specific_info + legacy_ind.service_specific_info_len);
-  // TODO: b/35193423 add support for extended service specific info
+  hidl_ind->extendedServiceSpecificInfo = std::vector<uint8_t>(
+        legacy_ind.sdea_service_specific_info,
+        legacy_ind.sdea_service_specific_info + legacy_ind.sdea_service_specific_info_len);
   hidl_ind->matchFilter = std::vector<uint8_t>(legacy_ind.sdf_match_filter,
         legacy_ind.sdf_match_filter + legacy_ind.sdf_match_filter_len);
   hidl_ind->matchOccuredInBeaconFlag = legacy_ind.match_occured_flag == 1;
@@ -1333,6 +1361,9 @@
   hidl_ind->receivedInFaw = legacy_ind.dw_or_faw == 1;
   hidl_ind->serviceSpecificInfo = std::vector<uint8_t>(legacy_ind.service_specific_info,
         legacy_ind.service_specific_info + legacy_ind.service_specific_info_len);
+  hidl_ind->extendedServiceSpecificInfo = std::vector<uint8_t>(
+        legacy_ind.sdea_service_specific_info,
+        legacy_ind.sdea_service_specific_info + legacy_ind.sdea_service_specific_info_len);
 
   return true;
 }
diff --git a/wifi/1.0/default/hidl_struct_util.h b/wifi/1.0/default/hidl_struct_util.h
index 490dcae..41e97b3 100644
--- a/wifi/1.0/default/hidl_struct_util.h
+++ b/wifi/1.0/default/hidl_struct_util.h
@@ -60,7 +60,7 @@
 bool convertLegacyGscanCapabilitiesToHidl(
     const legacy_hal::wifi_gscan_capabilities& legacy_caps,
     StaBackgroundScanCapabilities* hidl_caps);
-legacy_hal::wifi_band convertHidlGscanBandToLegacy(StaBackgroundScanBand band);
+legacy_hal::wifi_band convertHidlWifiBandToLegacy(WifiBand band);
 bool convertHidlGscanParamsToLegacy(
     const StaBackgroundScanParameters& hidl_scan_params,
     legacy_hal::wifi_scan_cmd_params* legacy_scan_params);
diff --git a/wifi/1.0/default/wifi_ap_iface.cpp b/wifi/1.0/default/wifi_ap_iface.cpp
index 1a8b31d..e2beec2 100644
--- a/wifi/1.0/default/wifi_ap_iface.cpp
+++ b/wifi/1.0/default/wifi_ap_iface.cpp
@@ -17,6 +17,7 @@
 #include <android-base/logging.h>
 
 #include "hidl_return_util.h"
+#include "hidl_struct_util.h"
 #include "wifi_ap_iface.h"
 #include "wifi_status_util.h"
 
@@ -64,6 +65,15 @@
                          code);
 }
 
+Return<void> WifiApIface::getValidFrequenciesForBand(
+    WifiBand band, getValidFrequenciesForBand_cb hidl_status_cb) {
+  return validateAndCall(this,
+                         WifiStatusCode::ERROR_WIFI_IFACE_INVALID,
+                         &WifiApIface::getValidFrequenciesForBandInternal,
+                         hidl_status_cb,
+                         band);
+}
+
 std::pair<WifiStatus, std::string> WifiApIface::getNameInternal() {
   return {createWifiStatus(WifiStatusCode::SUCCESS), ifname_};
 }
@@ -79,6 +89,16 @@
   return createWifiStatusFromLegacyError(legacy_status);
 }
 
+std::pair<WifiStatus, std::vector<WifiChannelInMhz>>
+WifiApIface::getValidFrequenciesForBandInternal(WifiBand band) {
+  static_assert(sizeof(WifiChannelInMhz) == sizeof(uint32_t), "Size mismatch");
+  legacy_hal::wifi_error legacy_status;
+  std::vector<uint32_t> valid_frequencies;
+  std::tie(legacy_status, valid_frequencies) =
+      legacy_hal_.lock()->getValidFrequenciesForBand(
+          hidl_struct_util::convertHidlWifiBandToLegacy(band));
+  return {createWifiStatusFromLegacyError(legacy_status), valid_frequencies};
+}
 }  // namespace implementation
 }  // namespace V1_0
 }  // namespace wifi
diff --git a/wifi/1.0/default/wifi_ap_iface.h b/wifi/1.0/default/wifi_ap_iface.h
index 23d6435..efc168a 100644
--- a/wifi/1.0/default/wifi_ap_iface.h
+++ b/wifi/1.0/default/wifi_ap_iface.h
@@ -44,12 +44,16 @@
   Return<void> getType(getType_cb hidl_status_cb) override;
   Return<void> setCountryCode(const hidl_array<int8_t, 2>& code,
                               setCountryCode_cb hidl_status_cb) override;
+  Return<void> getValidFrequenciesForBand(
+      WifiBand band, getValidFrequenciesForBand_cb hidl_status_cb) override;
 
  private:
   // Corresponding worker functions for the HIDL methods.
   std::pair<WifiStatus, std::string> getNameInternal();
   std::pair<WifiStatus, IfaceType> getTypeInternal();
   WifiStatus setCountryCodeInternal(const std::array<int8_t, 2>& code);
+  std::pair<WifiStatus, std::vector<WifiChannelInMhz>>
+  getValidFrequenciesForBandInternal(WifiBand band);
 
   std::string ifname_;
   std::weak_ptr<legacy_hal::WifiLegacyHal> legacy_hal_;
diff --git a/wifi/1.0/default/wifi_legacy_hal.cpp b/wifi/1.0/default/wifi_legacy_hal.cpp
index 7d58254..7390b65 100644
--- a/wifi/1.0/default/wifi_legacy_hal.cpp
+++ b/wifi/1.0/default/wifi_legacy_hal.cpp
@@ -562,7 +562,7 @@
 }
 
 std::pair<wifi_error, std::vector<uint32_t>>
-WifiLegacyHal::getValidFrequenciesForGscan(wifi_band band) {
+WifiLegacyHal::getValidFrequenciesForBand(wifi_band band) {
   static_assert(sizeof(uint32_t) >= sizeof(wifi_channel),
                 "Wifi Channel cannot be represented in output");
   std::vector<uint32_t> freqs;
diff --git a/wifi/1.0/default/wifi_legacy_hal.h b/wifi/1.0/default/wifi_legacy_hal.h
index ed020b0..c8fd5bd 100644
--- a/wifi/1.0/default/wifi_legacy_hal.h
+++ b/wifi/1.0/default/wifi_legacy_hal.h
@@ -175,7 +175,7 @@
       const on_gscan_results_callback& on_results_callback,
       const on_gscan_full_result_callback& on_full_result_callback);
   wifi_error stopGscan(wifi_request_id id);
-  std::pair<wifi_error, std::vector<uint32_t>> getValidFrequenciesForGscan(
+  std::pair<wifi_error, std::vector<uint32_t>> getValidFrequenciesForBand(
       wifi_band band);
   // Link layer stats functions.
   wifi_error enableLinkLayerStats(bool debug);
diff --git a/wifi/1.0/default/wifi_sta_iface.cpp b/wifi/1.0/default/wifi_sta_iface.cpp
index 55c9cf7..0c84102 100644
--- a/wifi/1.0/default/wifi_sta_iface.cpp
+++ b/wifi/1.0/default/wifi_sta_iface.cpp
@@ -106,15 +106,13 @@
                          hidl_status_cb);
 }
 
-Return<void> WifiStaIface::getValidFrequenciesForBackgroundScan(
-    StaBackgroundScanBand band,
-    getValidFrequenciesForBackgroundScan_cb hidl_status_cb) {
-  return validateAndCall(
-      this,
-      WifiStatusCode::ERROR_WIFI_IFACE_INVALID,
-      &WifiStaIface::getValidFrequenciesForBackgroundScanInternal,
-      hidl_status_cb,
-      band);
+Return<void> WifiStaIface::getValidFrequenciesForBand(
+    WifiBand band, getValidFrequenciesForBand_cb hidl_status_cb) {
+  return validateAndCall(this,
+                         WifiStatusCode::ERROR_WIFI_IFACE_INVALID,
+                         &WifiStaIface::getValidFrequenciesForBandInternal,
+                         hidl_status_cb,
+                         band);
 }
 
 Return<void> WifiStaIface::startBackgroundScan(
@@ -363,14 +361,13 @@
 }
 
 std::pair<WifiStatus, std::vector<WifiChannelInMhz>>
-WifiStaIface::getValidFrequenciesForBackgroundScanInternal(
-    StaBackgroundScanBand band) {
+WifiStaIface::getValidFrequenciesForBandInternal(WifiBand band) {
   static_assert(sizeof(WifiChannelInMhz) == sizeof(uint32_t), "Size mismatch");
   legacy_hal::wifi_error legacy_status;
   std::vector<uint32_t> valid_frequencies;
   std::tie(legacy_status, valid_frequencies) =
-      legacy_hal_.lock()->getValidFrequenciesForGscan(
-          hidl_struct_util::convertHidlGscanBandToLegacy(band));
+      legacy_hal_.lock()->getValidFrequenciesForBand(
+          hidl_struct_util::convertHidlWifiBandToLegacy(band));
   return {createWifiStatusFromLegacyError(legacy_status), valid_frequencies};
 }
 
diff --git a/wifi/1.0/default/wifi_sta_iface.h b/wifi/1.0/default/wifi_sta_iface.h
index 5f0ffe9..08faa2f 100644
--- a/wifi/1.0/default/wifi_sta_iface.h
+++ b/wifi/1.0/default/wifi_sta_iface.h
@@ -57,9 +57,8 @@
       installApfPacketFilter_cb hidl_status_cb) override;
   Return<void> getBackgroundScanCapabilities(
       getBackgroundScanCapabilities_cb hidl_status_cb) override;
-  Return<void> getValidFrequenciesForBackgroundScan(
-      StaBackgroundScanBand band,
-      getValidFrequenciesForBackgroundScan_cb hidl_status_cb) override;
+  Return<void> getValidFrequenciesForBand(
+      WifiBand band, getValidFrequenciesForBand_cb hidl_status_cb) override;
   Return<void> startBackgroundScan(
       uint32_t cmd_id,
       const StaBackgroundScanParameters& params,
@@ -119,7 +118,7 @@
   std::pair<WifiStatus, StaBackgroundScanCapabilities>
   getBackgroundScanCapabilitiesInternal();
   std::pair<WifiStatus, std::vector<WifiChannelInMhz>>
-  getValidFrequenciesForBackgroundScanInternal(StaBackgroundScanBand band);
+  getValidFrequenciesForBandInternal(WifiBand band);
   WifiStatus startBackgroundScanInternal(
       uint32_t cmd_id, const StaBackgroundScanParameters& params);
   WifiStatus stopBackgroundScanInternal(uint32_t cmd_id);
diff --git a/wifi/1.0/types.hal b/wifi/1.0/types.hal
index 30e8943..a843ce8 100644
--- a/wifi/1.0/types.hal
+++ b/wifi/1.0/types.hal
@@ -210,6 +210,37 @@
 };
 
 /**
+ * Wifi bands defined in 80211 spec.
+ */
+enum WifiBand : uint32_t {
+  BAND_UNSPECIFIED = 0,
+  /**
+   * 2.4 GHz.
+   */
+  BAND_24GHZ = 1,
+  /**
+   * 5 GHz without DFS.
+   */
+  BAND_5GHZ = 2,
+  /**
+   * 5 GHz DFS only.
+   */
+  BAND_5GHZ_DFS = 4,
+  /**
+   * 5 GHz with DFS.
+   */
+  BAND_5GHZ_WITH_DFS = 6,
+  /**
+   * 2.4 GHz + 5 GHz; no DFS.
+   */
+  BAND_24GHZ_5GHZ = 3,
+  /**
+   * 2.4 GHz + 5 GHz with DFS
+   */
+  BAND_24GHZ_5GHZ_WITH_DFS = 7
+};
+
+/**
  * STA specific types.
  * TODO(b/32159498): Move to a separate sta_types.hal.
  */
@@ -251,37 +282,6 @@
 };
 
 /**
- * Bands that can be specified in Background scan requests.
- */
-enum StaBackgroundScanBand : uint32_t {
-  BAND_UNSPECIFIED = 0,
-  /**
-   * 2.4 GHz.
-   */
-  BAND_24GHZ = 1,
-  /**
-   * 5 GHz without DFS.
-   */
-  BAND_5GHZ = 2,
-  /**
-   * 5 GHz DFS only.
-   */
-  BAND_5GHZ_DFS = 4,
-  /**
-   * 5 GHz with DFS.
-   */
-  BAND_5GHZ_WITH_DFS = 6,
-  /**
-   * 2.4 GHz + 5 GHz; no DFS.
-   */
-  BAND_24GHZ_5GHZ = 3,
-  /**
-   * 2.4 GHz + 5 GHz with DFS
-   */
-  BAND_24GHZ_5GHZ_WITH_DFS = 7
-};
-
-/**
  * Mask of event reporting schemes that can be specified in background scan
  * requests.
  */
@@ -311,12 +311,13 @@
  */
 struct StaBackgroundScanBucketParameters {
   /**
-   * Bands to scan or 0 if frequencies list must be used instead.
+   * Bands to scan or |BAND_UNSPECIFIED| if frequencies list must be used
+   * instead.
    */
-  StaBackgroundScanBand band;
+  WifiBand band;
   /**
    * Channel frequencies (in Mhz) to scan if |band| is set to
-   * |UNSPECIFIED|.
+   * |BAND_UNSPECIFIED|.
    */
   vec<WifiChannelInMhz> frequencies;
   /**
@@ -1009,22 +1010,12 @@
   bool securityEnabledInNdp;
   /**
    * Specifies whether or not there is a ranging requirement in this discovery session.
-   * Ranging is only performed if all other match criteria with the peer are met.
+   * Ranging is only performed if all other match criteria with the peer are met. Ranging must
+   * be performed if both peers in the discovery session (publisher and subscriber) set this
+   * flag to true. Otherwise, if either peer sets this flag to false, ranging must not be performed
+   * and must not impact discovery decisions.
    * Note: specifying that ranging is required also implies that this device must automatically
    * accept ranging requests from peers.
-   *   Solicited Publisher + Passive Subscriber:
-   *     Publisher/Subscriber:
-   *     true/true: ranging performed.
-   *     true/false: subscriber doesn't require ranging (match if all other criteria met). I.e.
-   *                 publisher requiring range doesn't gate subscriber matching.
-   *     false/true: subscriber tries ranging but publisher refuses (no match).
-   *     false/false: ranging isn't attempted and doesn't impact match.
-   *   Unsolicited Publisher + Active Subscriber:
-   *     Publisher/Subscriber:
-   *     true/true: ranging performed.
-   *     true/false: publisher attempts ranging but subscriber doesn't allow - no match.
-   *     false/true: publisher doesn't attempt ranging, should not impact match.
-   *     false/false: ranging isn't attempted and doesn't impact match.
    * NAN Spec: Service Discovery Extension Attribute (SDEA) / Control / Ranging Require.
    */
   bool rangingRequired;
diff --git a/wifi/1.0/vts/Wifi.vts b/wifi/1.0/vts/Wifi.vts
deleted file mode 100644
index 3f567a4..0000000
--- a/wifi/1.0/vts/Wifi.vts
+++ /dev/null
@@ -1,119 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "IWifi"
-
-package: "android.hardware.wifi"
-
-import: "android.hardware.wifi@1.0::IWifiApIface"
-import: "android.hardware.wifi@1.0::IWifiChip"
-import: "android.hardware.wifi@1.0::IWifiChipEventCallback"
-import: "android.hardware.wifi@1.0::IWifiEventCallback"
-import: "android.hardware.wifi@1.0::IWifiIface"
-import: "android.hardware.wifi@1.0::IWifiNanIface"
-import: "android.hardware.wifi@1.0::IWifiNanIfaceEventCallback"
-import: "android.hardware.wifi@1.0::IWifiP2pIface"
-import: "android.hardware.wifi@1.0::IWifiRttController"
-import: "android.hardware.wifi@1.0::IWifiRttControllerEventCallback"
-import: "android.hardware.wifi@1.0::IWifiStaIface"
-import: "android.hardware.wifi@1.0::IWifiStaIfaceEventCallback"
-import: "android.hardware.wifi@1.0::types"
-import: "android.hidl.base@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: "::android::hardware::wifi::V1_0::IWifiEventCallback"
-        }
-        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: "::android::hardware::wifi::V1_0::IWifiChip"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-        callflow: {
-            next: "*"
-        }
-    }
-
-}
diff --git a/wifi/1.0/vts/WifiApIface.vts b/wifi/1.0/vts/WifiApIface.vts
deleted file mode 100644
index 6b58058..0000000
--- a/wifi/1.0/vts/WifiApIface.vts
+++ /dev/null
@@ -1,51 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "IWifiApIface"
-
-package: "android.hardware.wifi"
-
-import: "android.hardware.wifi@1.0::IWifiIface"
-import: "android.hardware.wifi@1.0::types"
-import: "android.hidl.base@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: "setCountryCode"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
-        }
-        arg: {
-            type: TYPE_ARRAY
-            vector_size: 2
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "int8_t"
-            }
-        }
-    }
-
-}
diff --git a/wifi/1.0/vts/WifiChip.vts b/wifi/1.0/vts/WifiChip.vts
deleted file mode 100644
index 1208202..0000000
--- a/wifi/1.0/vts/WifiChip.vts
+++ /dev/null
@@ -1,539 +0,0 @@
-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::IWifiNanIfaceEventCallback"
-import: "android.hardware.wifi@1.0::IWifiP2pIface"
-import: "android.hardware.wifi@1.0::IWifiRttController"
-import: "android.hardware.wifi@1.0::IWifiRttControllerEventCallback"
-import: "android.hardware.wifi@1.0::IWifiStaIface"
-import: "android.hardware.wifi@1.0::IWifiStaIfaceEventCallback"
-import: "android.hardware.wifi@1.0::types"
-import: "android.hidl.base@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: "::android::hardware::wifi::V1_0::IWifiChipEventCallback"
-        }
-    }
-
-    api: {
-        name: "getCapabilities"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
-        }
-        return_type_hidl: {
-            type: TYPE_MASK
-            scalar_type: "uint32_t"
-            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: "::android::hardware::wifi::V1_0::IWifiApIface"
-        }
-    }
-
-    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: "::android::hardware::wifi::V1_0::IWifiApIface"
-        }
-        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: "::android::hardware::wifi::V1_0::IWifiNanIface"
-        }
-    }
-
-    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: "::android::hardware::wifi::V1_0::IWifiNanIface"
-        }
-        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: "::android::hardware::wifi::V1_0::IWifiP2pIface"
-        }
-    }
-
-    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: "::android::hardware::wifi::V1_0::IWifiP2pIface"
-        }
-        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: "::android::hardware::wifi::V1_0::IWifiStaIface"
-        }
-    }
-
-    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: "::android::hardware::wifi::V1_0::IWifiStaIface"
-        }
-        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: "::android::hardware::wifi::V1_0::IWifiRttController"
-        }
-        arg: {
-            type: TYPE_HIDL_INTERFACE
-            predefined_type: "::android::hardware::wifi::V1_0::IWifiIface"
-        }
-    }
-
-    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"
-        }
-    }
-
-}
diff --git a/wifi/1.0/vts/WifiChipEventCallback.vts b/wifi/1.0/vts/WifiChipEventCallback.vts
deleted file mode 100644
index 2246f82..0000000
--- a/wifi/1.0/vts/WifiChipEventCallback.vts
+++ /dev/null
@@ -1,79 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "IWifiChipEventCallback"
-
-package: "android.hardware.wifi"
-
-import: "android.hardware.wifi@1.0::types"
-import: "android.hidl.base@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"
-            }
-        }
-    }
-
-}
diff --git a/wifi/1.0/vts/WifiEventCallback.vts b/wifi/1.0/vts/WifiEventCallback.vts
deleted file mode 100644
index 60ec87c..0000000
--- a/wifi/1.0/vts/WifiEventCallback.vts
+++ /dev/null
@@ -1,27 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "IWifiEventCallback"
-
-package: "android.hardware.wifi"
-
-import: "android.hardware.wifi@1.0::types"
-import: "android.hidl.base@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"
-        }
-    }
-
-}
diff --git a/wifi/1.0/vts/WifiIface.vts b/wifi/1.0/vts/WifiIface.vts
deleted file mode 100644
index 0de0f8d..0000000
--- a/wifi/1.0/vts/WifiIface.vts
+++ /dev/null
@@ -1,34 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "IWifiIface"
-
-package: "android.hardware.wifi"
-
-import: "android.hardware.wifi@1.0::types"
-import: "android.hidl.base@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
-        }
-    }
-
-}
diff --git a/wifi/1.0/vts/WifiNanIface.vts b/wifi/1.0/vts/WifiNanIface.vts
deleted file mode 100644
index 66c8755..0000000
--- a/wifi/1.0/vts/WifiNanIface.vts
+++ /dev/null
@@ -1,262 +0,0 @@
-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"
-import: "android.hidl.base@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: "::android::hardware::wifi::V1_0::IWifiNanIfaceEventCallback"
-        }
-    }
-
-    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: "uint8_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: "uint8_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"
-        }
-    }
-
-}
diff --git a/wifi/1.0/vts/WifiNanIfaceEventCallback.vts b/wifi/1.0/vts/WifiNanIfaceEventCallback.vts
deleted file mode 100644
index e3e82f7..0000000
--- a/wifi/1.0/vts/WifiNanIfaceEventCallback.vts
+++ /dev/null
@@ -1,299 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "IWifiNanIfaceEventCallback"
-
-package: "android.hardware.wifi"
-
-import: "android.hardware.wifi@1.0::types"
-import: "android.hidl.base@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: "uint8_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: "uint8_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"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-    }
-
-    api: {
-        name: "notifyRespondToDataPathIndicationResponse"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint16_t"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::V1_0::WifiNanStatus"
-        }
-    }
-
-    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: "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: "uint8_t"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::V1_0::WifiNanStatus"
-        }
-    }
-
-    api: {
-        name: "eventSubscribeTerminated"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_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: "uint8_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"
-        }
-    }
-
-}
diff --git a/wifi/1.0/vts/WifiP2pIface.vts b/wifi/1.0/vts/WifiP2pIface.vts
deleted file mode 100644
index 220f332..0000000
--- a/wifi/1.0/vts/WifiP2pIface.vts
+++ /dev/null
@@ -1,35 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "IWifiP2pIface"
-
-package: "android.hardware.wifi"
-
-import: "android.hardware.wifi@1.0::IWifiIface"
-import: "android.hardware.wifi@1.0::types"
-import: "android.hidl.base@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
-        }
-    }
-
-}
diff --git a/wifi/1.0/vts/WifiRttController.vts b/wifi/1.0/vts/WifiRttController.vts
deleted file mode 100644
index 45fb309..0000000
--- a/wifi/1.0/vts/WifiRttController.vts
+++ /dev/null
@@ -1,171 +0,0 @@
-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"
-import: "android.hidl.base@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: "::android::hardware::wifi::V1_0::IWifiIface"
-        }
-    }
-
-    api: {
-        name: "registerEventCallback"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
-        }
-        arg: {
-            type: TYPE_HIDL_CALLBACK
-            predefined_type: "::android::hardware::wifi::V1_0::IWifiRttControllerEventCallback"
-        }
-    }
-
-    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_size: 6
-                vector_value: {
-                    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"
-        }
-    }
-
-}
diff --git a/wifi/1.0/vts/WifiRttControllerEventCallback.vts b/wifi/1.0/vts/WifiRttControllerEventCallback.vts
deleted file mode 100644
index e3c2651..0000000
--- a/wifi/1.0/vts/WifiRttControllerEventCallback.vts
+++ /dev/null
@@ -1,26 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "IWifiRttControllerEventCallback"
-
-package: "android.hardware.wifi"
-
-import: "android.hardware.wifi@1.0::types"
-import: "android.hidl.base@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"
-            }
-        }
-    }
-
-}
diff --git a/wifi/1.0/vts/WifiStaIface.vts b/wifi/1.0/vts/WifiStaIface.vts
deleted file mode 100644
index 1edf4db..0000000
--- a/wifi/1.0/vts/WifiStaIface.vts
+++ /dev/null
@@ -1,441 +0,0 @@
-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"
-import: "android.hidl.base@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: "::android::hardware::wifi::V1_0::IWifiStaIfaceEventCallback"
-        }
-    }
-
-    api: {
-        name: "getCapabilities"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
-        }
-        return_type_hidl: {
-            type: TYPE_MASK
-            scalar_type: "uint32_t"
-            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_size: 6
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-        arg: {
-            type: TYPE_ARRAY
-            vector_size: 6
-            vector_value: {
-                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: "setScanningMacOui"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::V1_0::WifiStatus"
-        }
-        arg: {
-            type: TYPE_ARRAY
-            vector_size: 3
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-    }
-
-    api: {
-        name: "startDebugPacketFateMonitoring"
-        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"
-            }
-        }
-    }
-
-}
diff --git a/wifi/1.0/vts/WifiStaIfaceEventCallback.vts b/wifi/1.0/vts/WifiStaIfaceEventCallback.vts
deleted file mode 100644
index 99bf03f..0000000
--- a/wifi/1.0/vts/WifiStaIfaceEventCallback.vts
+++ /dev/null
@@ -1,66 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "IWifiStaIfaceEventCallback"
-
-package: "android.hardware.wifi"
-
-import: "android.hardware.wifi@1.0::types"
-import: "android.hidl.base@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_size: 6
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "int32_t"
-        }
-    }
-
-}
diff --git a/wifi/1.0/vts/types.vts b/wifi/1.0/vts/types.vts
deleted file mode 100644
index 388dbc3..0000000
--- a/wifi/1.0/vts/types.vts
+++ /dev/null
@@ -1,2834 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "types"
-
-package: "android.hardware.wifi"
-
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::WifiStatusCode"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "SUCCESS"
-        scalar_value: {
-            uint32_t: 0
-        }
-        enumerator: "ERROR_WIFI_CHIP_INVALID"
-        scalar_value: {
-            uint32_t: 1
-        }
-        enumerator: "ERROR_WIFI_IFACE_INVALID"
-        scalar_value: {
-            uint32_t: 2
-        }
-        enumerator: "ERROR_WIFI_RTT_CONTROLLER_INVALID"
-        scalar_value: {
-            uint32_t: 3
-        }
-        enumerator: "ERROR_NOT_SUPPORTED"
-        scalar_value: {
-            uint32_t: 4
-        }
-        enumerator: "ERROR_NOT_AVAILABLE"
-        scalar_value: {
-            uint32_t: 5
-        }
-        enumerator: "ERROR_NOT_STARTED"
-        scalar_value: {
-            uint32_t: 6
-        }
-        enumerator: "ERROR_INVALID_ARGS"
-        scalar_value: {
-            uint32_t: 7
-        }
-        enumerator: "ERROR_BUSY"
-        scalar_value: {
-            uint32_t: 8
-        }
-        enumerator: "ERROR_UNKNOWN"
-        scalar_value: {
-            uint32_t: 9
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::WifiStatus"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "code"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::wifi::V1_0::WifiStatusCode"
-    }
-    struct_value: {
-        name: "description"
-        type: TYPE_STRING
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::IfaceType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "STA"
-        scalar_value: {
-            uint32_t: 0
-        }
-        enumerator: "AP"
-        scalar_value: {
-            uint32_t: 1
-        }
-        enumerator: "P2P"
-        scalar_value: {
-            uint32_t: 2
-        }
-        enumerator: "NAN"
-        scalar_value: {
-            uint32_t: 3
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::WifiChannelWidthInMhz"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "WIDTH_20"
-        scalar_value: {
-            uint32_t: 0
-        }
-        enumerator: "WIDTH_40"
-        scalar_value: {
-            uint32_t: 1
-        }
-        enumerator: "WIDTH_80"
-        scalar_value: {
-            uint32_t: 2
-        }
-        enumerator: "WIDTH_160"
-        scalar_value: {
-            uint32_t: 3
-        }
-        enumerator: "WIDTH_80P80"
-        scalar_value: {
-            uint32_t: 4
-        }
-        enumerator: "WIDTH_5"
-        scalar_value: {
-            uint32_t: 5
-        }
-        enumerator: "WIDTH_10"
-        scalar_value: {
-            uint32_t: 6
-        }
-        enumerator: "WIDTH_INVALID"
-        scalar_value: {
-            uint32_t: 4294967295
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::WifiChannelInfo"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "width"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::wifi::V1_0::WifiChannelWidthInMhz"
-    }
-    struct_value: {
-        name: "centerFreq"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "centerFreq0"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "centerFreq1"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::WifiInformationElement"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "id"
-        type: TYPE_SCALAR
-        scalar_type: "uint8_t"
-    }
-    struct_value: {
-        name: "data"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::WifiRatePreamble"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "OFDM"
-        scalar_value: {
-            uint32_t: 0
-        }
-        enumerator: "CCK"
-        scalar_value: {
-            uint32_t: 1
-        }
-        enumerator: "HT"
-        scalar_value: {
-            uint32_t: 2
-        }
-        enumerator: "VHT"
-        scalar_value: {
-            uint32_t: 3
-        }
-        enumerator: "RESERVED"
-        scalar_value: {
-            uint32_t: 4
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::WifiRateNss"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "NSS_1x1"
-        scalar_value: {
-            uint32_t: 0
-        }
-        enumerator: "NSS_2x2"
-        scalar_value: {
-            uint32_t: 1
-        }
-        enumerator: "NSS_3x3"
-        scalar_value: {
-            uint32_t: 2
-        }
-        enumerator: "NSS_4x4"
-        scalar_value: {
-            uint32_t: 3
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::WifiRateInfo"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "preamble"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::wifi::V1_0::WifiRatePreamble"
-    }
-    struct_value: {
-        name: "nss"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::wifi::V1_0::WifiRateNss"
-    }
-    struct_value: {
-        name: "bw"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::wifi::V1_0::WifiChannelWidthInMhz"
-    }
-    struct_value: {
-        name: "rateMcsIdx"
-        type: TYPE_SCALAR
-        scalar_type: "uint8_t"
-    }
-    struct_value: {
-        name: "bitRateInKbps"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::StaApfPacketFilterCapabilities"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "version"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "maxLength"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::StaBackgroundScanCapabilities"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "maxCacheSize"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "maxBuckets"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "maxApCachePerScan"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "maxReportingThreshold"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::StaBackgroundScanBand"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "BAND_UNSPECIFIED"
-        scalar_value: {
-            uint32_t: 0
-        }
-        enumerator: "BAND_24GHZ"
-        scalar_value: {
-            uint32_t: 1
-        }
-        enumerator: "BAND_5GHZ"
-        scalar_value: {
-            uint32_t: 2
-        }
-        enumerator: "BAND_5GHZ_DFS"
-        scalar_value: {
-            uint32_t: 4
-        }
-        enumerator: "BAND_5GHZ_WITH_DFS"
-        scalar_value: {
-            uint32_t: 6
-        }
-        enumerator: "BAND_24GHZ_5GHZ"
-        scalar_value: {
-            uint32_t: 3
-        }
-        enumerator: "BAND_24GHZ_5GHZ_WITH_DFS"
-        scalar_value: {
-            uint32_t: 7
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::StaBackgroundScanBucketEventReportSchemeMask"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "EACH_SCAN"
-        scalar_value: {
-            uint32_t: 1
-        }
-        enumerator: "FULL_RESULTS"
-        scalar_value: {
-            uint32_t: 2
-        }
-        enumerator: "NO_BATCH"
-        scalar_value: {
-            uint32_t: 4
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::StaBackgroundScanBucketParameters"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "band"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::wifi::V1_0::StaBackgroundScanBand"
-    }
-    struct_value: {
-        name: "frequencies"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-    }
-    struct_value: {
-        name: "periodInMs"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "eventReportScheme"
-        type: TYPE_MASK
-        scalar_type: "uint32_t"
-        predefined_type: "::android::hardware::wifi::V1_0::StaBackgroundScanBucketEventReportSchemeMask"
-    }
-    struct_value: {
-        name: "exponentialMaxPeriodInMs"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "exponentialBase"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "exponentialStepCount"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::StaBackgroundScanParameters"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "basePeriodInMs"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "maxApPerScan"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "reportThresholdPercent"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "reportThresholdNumScans"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "buckets"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::V1_0::StaBackgroundScanBucketParameters"
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::StaLinkLayerIfacePacketStats"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "rxMpdu"
-        type: TYPE_SCALAR
-        scalar_type: "uint64_t"
-    }
-    struct_value: {
-        name: "txMpdu"
-        type: TYPE_SCALAR
-        scalar_type: "uint64_t"
-    }
-    struct_value: {
-        name: "lostMpdu"
-        type: TYPE_SCALAR
-        scalar_type: "uint64_t"
-    }
-    struct_value: {
-        name: "retries"
-        type: TYPE_SCALAR
-        scalar_type: "uint64_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::StaLinkLayerIfaceStats"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "beaconRx"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "avgRssiMgmt"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "wmeBePktStats"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::wifi::V1_0::StaLinkLayerIfacePacketStats"
-    }
-    struct_value: {
-        name: "wmeBkPktStats"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::wifi::V1_0::StaLinkLayerIfacePacketStats"
-    }
-    struct_value: {
-        name: "wmeViPktStats"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::wifi::V1_0::StaLinkLayerIfacePacketStats"
-    }
-    struct_value: {
-        name: "wmeVoPktStats"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::wifi::V1_0::StaLinkLayerIfacePacketStats"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::StaLinkLayerRadioStats"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "onTimeInMs"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "txTimeInMs"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "txTimeInMsPerLevel"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-    }
-    struct_value: {
-        name: "rxTimeInMs"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "onTimeInMsForScan"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::StaLinkLayerStats"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "iface"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::wifi::V1_0::StaLinkLayerIfaceStats"
-    }
-    struct_value: {
-        name: "radio"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::wifi::V1_0::StaLinkLayerRadioStats"
-    }
-    struct_value: {
-        name: "timeStampInMs"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::StaScanResult"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "timeStampInUs"
-        type: TYPE_SCALAR
-        scalar_type: "uint64_t"
-    }
-    struct_value: {
-        name: "ssid"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-    struct_value: {
-        name: "bssid"
-        type: TYPE_ARRAY
-        vector_size: 6
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-    struct_value: {
-        name: "rssi"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "frequency"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "beaconPeriodInMs"
-        type: TYPE_SCALAR
-        scalar_type: "uint16_t"
-    }
-    struct_value: {
-        name: "capability"
-        type: TYPE_SCALAR
-        scalar_type: "uint16_t"
-    }
-    struct_value: {
-        name: "informationElements"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::V1_0::WifiInformationElement"
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::StaScanDataFlagMask"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "int32_t"
-
-        enumerator: "INTERRUPTED"
-        scalar_value: {
-            int32_t: 1
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::StaScanData"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "flags"
-        type: TYPE_MASK
-        scalar_type: "int32_t"
-        predefined_type: "::android::hardware::wifi::V1_0::StaScanDataFlagMask"
-    }
-    struct_value: {
-        name: "bucketsScanned"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "results"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::V1_0::StaScanResult"
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::StaRoamingCapabilities"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "maxBlacklistSize"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "maxWhitelistSize"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::StaRoamingConfig"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "bssidBlacklist"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_ARRAY
-            vector_size: 6
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-    }
-    struct_value: {
-        name: "ssidWhitelist"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_ARRAY
-            vector_size: 32
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::StaRoamingState"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint8_t"
-
-        enumerator: "DISABLED"
-        scalar_value: {
-            uint8_t: 0
-        }
-        enumerator: "ENABLED"
-        scalar_value: {
-            uint8_t: 1
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::NanStatusType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "SUCCESS"
-        scalar_value: {
-            uint32_t: 0
-        }
-        enumerator: "INTERNAL_FAILURE"
-        scalar_value: {
-            uint32_t: 1
-        }
-        enumerator: "PROTOCOL_FAILURE"
-        scalar_value: {
-            uint32_t: 2
-        }
-        enumerator: "INVALID_SESSION_ID"
-        scalar_value: {
-            uint32_t: 3
-        }
-        enumerator: "NO_RESOURCES_AVAILABLE"
-        scalar_value: {
-            uint32_t: 4
-        }
-        enumerator: "INVALID_ARGS"
-        scalar_value: {
-            uint32_t: 5
-        }
-        enumerator: "INVALID_PEER_ID"
-        scalar_value: {
-            uint32_t: 6
-        }
-        enumerator: "INVALID_NDP_ID"
-        scalar_value: {
-            uint32_t: 7
-        }
-        enumerator: "NAN_NOT_ALLOWED"
-        scalar_value: {
-            uint32_t: 8
-        }
-        enumerator: "NO_OTA_ACK"
-        scalar_value: {
-            uint32_t: 9
-        }
-        enumerator: "ALREADY_ENABLED"
-        scalar_value: {
-            uint32_t: 10
-        }
-        enumerator: "FOLLOWUP_TX_QUEUE_FULL"
-        scalar_value: {
-            uint32_t: 11
-        }
-        enumerator: "UNSUPPORTED_CONCURRENCY_NAN_DISABLED"
-        scalar_value: {
-            uint32_t: 12
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::NanBandIndex"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "NAN_BAND_24GHZ"
-        scalar_value: {
-            uint32_t: 0
-        }
-        enumerator: "NAN_BAND_5GHZ"
-        scalar_value: {
-            uint32_t: 1
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::WifiNanStatus"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "status"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::wifi::V1_0::NanStatusType"
-    }
-    struct_value: {
-        name: "description"
-        type: TYPE_STRING
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::NanMatchAlg"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "MATCH_ONCE"
-        scalar_value: {
-            uint32_t: 0
-        }
-        enumerator: "MATCH_CONTINUOUS"
-        scalar_value: {
-            uint32_t: 1
-        }
-        enumerator: "MATCH_NEVER"
-        scalar_value: {
-            uint32_t: 2
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::NanPublishType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "UNSOLICITED"
-        scalar_value: {
-            uint32_t: 0
-        }
-        enumerator: "SOLICITED"
-        scalar_value: {
-            uint32_t: 1
-        }
-        enumerator: "UNSOLICITED_SOLICITED"
-        scalar_value: {
-            uint32_t: 2
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::NanTxType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "BROADCAST"
-        scalar_value: {
-            uint32_t: 0
-        }
-        enumerator: "UNICAST"
-        scalar_value: {
-            uint32_t: 1
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::NanSubscribeType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "PASSIVE"
-        scalar_value: {
-            uint32_t: 0
-        }
-        enumerator: "ACTIVE"
-        scalar_value: {
-            uint32_t: 1
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::NanSrfType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "BLOOM_FILTER"
-        scalar_value: {
-            uint32_t: 0
-        }
-        enumerator: "PARTIAL_MAC_ADDR"
-        scalar_value: {
-            uint32_t: 1
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::NanDataPathChannelCfg"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "CHANNEL_NOT_REQUESTED"
-        scalar_value: {
-            uint32_t: 0
-        }
-        enumerator: "REQUEST_CHANNEL_SETUP"
-        scalar_value: {
-            uint32_t: 1
-        }
-        enumerator: "FORCE_CHANNEL_SETUP"
-        scalar_value: {
-            uint32_t: 2
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::NanBandSpecificConfig"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "rssiClose"
-        type: TYPE_SCALAR
-        scalar_type: "uint8_t"
-    }
-    struct_value: {
-        name: "rssiMiddle"
-        type: TYPE_SCALAR
-        scalar_type: "uint8_t"
-    }
-    struct_value: {
-        name: "rssiCloseProximity"
-        type: TYPE_SCALAR
-        scalar_type: "uint8_t"
-    }
-    struct_value: {
-        name: "dwellTimeMs"
-        type: TYPE_SCALAR
-        scalar_type: "uint8_t"
-    }
-    struct_value: {
-        name: "scanPeriodSec"
-        type: TYPE_SCALAR
-        scalar_type: "uint16_t"
-    }
-    struct_value: {
-        name: "validDiscoveryWindowIntervalVal"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "discoveryWindowIntervalVal"
-        type: TYPE_SCALAR
-        scalar_type: "uint8_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::NanDebugConfig"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "validClusterIdVals"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "clusterIdBottomRangeVal"
-        type: TYPE_SCALAR
-        scalar_type: "uint16_t"
-    }
-    struct_value: {
-        name: "clusterIdTopRangeVal"
-        type: TYPE_SCALAR
-        scalar_type: "uint16_t"
-    }
-    struct_value: {
-        name: "validIntfAddrVal"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "intfAddrVal"
-        type: TYPE_ARRAY
-        vector_size: 6
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-    struct_value: {
-        name: "validOuiVal"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "ouiVal"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "validRandomFactorForceVal"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "randomFactorForceVal"
-        type: TYPE_SCALAR
-        scalar_type: "uint8_t"
-    }
-    struct_value: {
-        name: "validHopCountForceVal"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "hopCountForceVal"
-        type: TYPE_SCALAR
-        scalar_type: "uint8_t"
-    }
-    struct_value: {
-        name: "validDiscoveryChannelVal"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "discoveryChannelMhzVal"
-        type: TYPE_ARRAY
-        vector_size: 2
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-    }
-    struct_value: {
-        name: "validUseBeaconsInBandVal"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "useBeaconsInBandVal"
-        type: TYPE_ARRAY
-        vector_size: 2
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-    }
-    struct_value: {
-        name: "validUseSdfInBandVal"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "useSdfInBandVal"
-        type: TYPE_ARRAY
-        vector_size: 2
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::NanConfigRequest"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "masterPref"
-        type: TYPE_SCALAR
-        scalar_type: "uint8_t"
-    }
-    struct_value: {
-        name: "disableDiscoveryAddressChangeIndication"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "disableStartedClusterIndication"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "disableJoinedClusterIndication"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "includePublishServiceIdsInBeacon"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "numberOfPublishServiceIdsInBeacon"
-        type: TYPE_SCALAR
-        scalar_type: "uint8_t"
-    }
-    struct_value: {
-        name: "includeSubscribeServiceIdsInBeacon"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "numberOfSubscribeServiceIdsInBeacon"
-        type: TYPE_SCALAR
-        scalar_type: "uint8_t"
-    }
-    struct_value: {
-        name: "rssiWindowSize"
-        type: TYPE_SCALAR
-        scalar_type: "uint16_t"
-    }
-    struct_value: {
-        name: "macAddressRandomizationIntervalSec"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "acceptRangingRequests"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "bandSpecificConfig"
-        type: TYPE_ARRAY
-        vector_size: 2
-        vector_value: {
-            name: "::android::hardware::wifi::V1_0::NanBandSpecificConfig"
-            type: TYPE_STRUCT
-            struct_value: {
-                name: "rssiClose"
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-            struct_value: {
-                name: "rssiMiddle"
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-            struct_value: {
-                name: "rssiCloseProximity"
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-            struct_value: {
-                name: "dwellTimeMs"
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-            struct_value: {
-                name: "scanPeriodSec"
-                type: TYPE_SCALAR
-                scalar_type: "uint16_t"
-            }
-            struct_value: {
-                name: "validDiscoveryWindowIntervalVal"
-                type: TYPE_SCALAR
-                scalar_type: "bool_t"
-            }
-            struct_value: {
-                name: "discoveryWindowIntervalVal"
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::NanEnableRequest"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "operateInBand"
-        type: TYPE_ARRAY
-        vector_size: 2
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "bool_t"
-        }
-    }
-    struct_value: {
-        name: "hopCountMax"
-        type: TYPE_SCALAR
-        scalar_type: "uint8_t"
-    }
-    struct_value: {
-        name: "configParams"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::wifi::V1_0::NanConfigRequest"
-    }
-    struct_value: {
-        name: "debugConfigs"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::wifi::V1_0::NanDebugConfig"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::NanCipherSuiteType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "SHARED_KEY_128_MASK"
-        scalar_value: {
-            uint32_t: 1
-        }
-        enumerator: "SHARED_KEY_256_MASK"
-        scalar_value: {
-            uint32_t: 2
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::NanRangingIndication"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "CONTINUOUS_INDICATION_MASK"
-        scalar_value: {
-            uint32_t: 1
-        }
-        enumerator: "INGRESS_MET_MASK"
-        scalar_value: {
-            uint32_t: 2
-        }
-        enumerator: "EGRESS_MET_MASK"
-        scalar_value: {
-            uint32_t: 4
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::NanDiscoveryCommonConfig"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "sessionId"
-        type: TYPE_SCALAR
-        scalar_type: "uint8_t"
-    }
-    struct_value: {
-        name: "ttlSec"
-        type: TYPE_SCALAR
-        scalar_type: "uint16_t"
-    }
-    struct_value: {
-        name: "discoveryWindowPeriod"
-        type: TYPE_SCALAR
-        scalar_type: "uint16_t"
-    }
-    struct_value: {
-        name: "discoveryCount"
-        type: TYPE_SCALAR
-        scalar_type: "uint8_t"
-    }
-    struct_value: {
-        name: "serviceName"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-    struct_value: {
-        name: "discoveryMatchIndicator"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::wifi::V1_0::NanMatchAlg"
-    }
-    struct_value: {
-        name: "serviceSpecificInfo"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-    struct_value: {
-        name: "extendedServiceSpecificInfo"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-    struct_value: {
-        name: "rxMatchFilter"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-    struct_value: {
-        name: "txMatchFilter"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-    struct_value: {
-        name: "useRssiThreshold"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "disableDiscoveryTerminationIndication"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "disableMatchExpirationIndication"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "disableFollowupReceivedIndication"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "supportedCipherTypes"
-        type: TYPE_MASK
-        scalar_type: "uint32_t"
-        predefined_type: "::android::hardware::wifi::V1_0::NanCipherSuiteType"
-    }
-    struct_value: {
-        name: "pmk"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-    struct_value: {
-        name: "securityEnabledInNdp"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "rangingRequired"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "rangingIntervalMsec"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "configRangingIndications"
-        type: TYPE_MASK
-        scalar_type: "uint32_t"
-        predefined_type: "::android::hardware::wifi::V1_0::NanRangingIndication"
-    }
-    struct_value: {
-        name: "distanceIngressCm"
-        type: TYPE_SCALAR
-        scalar_type: "uint16_t"
-    }
-    struct_value: {
-        name: "distanceEgressCm"
-        type: TYPE_SCALAR
-        scalar_type: "uint16_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::NanPublishRequest"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "baseConfigs"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::wifi::V1_0::NanDiscoveryCommonConfig"
-    }
-    struct_value: {
-        name: "publishType"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::wifi::V1_0::NanPublishType"
-    }
-    struct_value: {
-        name: "txType"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::wifi::V1_0::NanTxType"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::NanSubscribeRequest"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "baseConfigs"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::wifi::V1_0::NanDiscoveryCommonConfig"
-    }
-    struct_value: {
-        name: "subscribeType"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::wifi::V1_0::NanSubscribeType"
-    }
-    struct_value: {
-        name: "srfType"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::wifi::V1_0::NanSrfType"
-    }
-    struct_value: {
-        name: "srfRespondIfInAddressSet"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "shouldUseSrf"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "isSsiRequiredForMatch"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "intfAddr"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_ARRAY
-            vector_size: 6
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::NanTransmitFollowupRequest"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "discoverySessionId"
-        type: TYPE_SCALAR
-        scalar_type: "uint8_t"
-    }
-    struct_value: {
-        name: "peerId"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "addr"
-        type: TYPE_ARRAY
-        vector_size: 6
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-    struct_value: {
-        name: "isHighPriority"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "shouldUseDiscoveryWindow"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "serviceSpecificInfo"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-    struct_value: {
-        name: "extendedServiceSpecificInfo"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-    struct_value: {
-        name: "disableFollowupResultIndication"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::NanInitiateDataPathRequest"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "peerId"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "peerDiscMacAddr"
-        type: TYPE_ARRAY
-        vector_size: 6
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-    struct_value: {
-        name: "channelRequestType"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::wifi::V1_0::NanDataPathChannelCfg"
-    }
-    struct_value: {
-        name: "channel"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "ifaceName"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "securityRequired"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "appInfo"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-    struct_value: {
-        name: "supportedCipherTypes"
-        type: TYPE_MASK
-        scalar_type: "uint32_t"
-        predefined_type: "::android::hardware::wifi::V1_0::NanCipherSuiteType"
-    }
-    struct_value: {
-        name: "pmk"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::NanRespondToDataPathIndicationRequest"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "acceptRequest"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "ndpInstanceId"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "ifaceName"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "securityRequired"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "appInfo"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-    struct_value: {
-        name: "supportedCipherTypes"
-        type: TYPE_MASK
-        scalar_type: "uint32_t"
-        predefined_type: "::android::hardware::wifi::V1_0::NanCipherSuiteType"
-    }
-    struct_value: {
-        name: "pmk"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::NanCapabilities"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "maxConcurrentClusters"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "maxPublishes"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "maxSubscribes"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "maxServiceNameLen"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "maxMatchFilterLen"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "maxTotalMatchFilterLen"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "maxServiceSpecificInfoLen"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "maxExtendedServiceSpecificInfoLen"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "maxNdiInterfaces"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "maxNdpSessions"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "maxAppInfoLen"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "maxQueuedTransmitFollowupMsgs"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "maxSubscribeInterfaceAddresses"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "supportedCipherSuites"
-        type: TYPE_MASK
-        scalar_type: "uint32_t"
-        predefined_type: "::android::hardware::wifi::V1_0::NanCipherSuiteType"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::NanMatchInd"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "discoverySessionId"
-        type: TYPE_SCALAR
-        scalar_type: "uint8_t"
-    }
-    struct_value: {
-        name: "peerId"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "addr"
-        type: TYPE_ARRAY
-        vector_size: 6
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-    struct_value: {
-        name: "serviceSpecificInfo"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-    struct_value: {
-        name: "extendedServiceSpecificInfo"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-    struct_value: {
-        name: "matchFilter"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-    struct_value: {
-        name: "matchOccuredInBeaconFlag"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "outOfResourceFlag"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "rssiValue"
-        type: TYPE_SCALAR
-        scalar_type: "uint8_t"
-    }
-    struct_value: {
-        name: "peerSupportedCipherTypes"
-        type: TYPE_MASK
-        scalar_type: "uint32_t"
-        predefined_type: "::android::hardware::wifi::V1_0::NanCipherSuiteType"
-    }
-    struct_value: {
-        name: "peerRequiresSecurityEnabledInNdp"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "peerRequiresRanging"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "rangingMeasurementInCm"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "rangingIndicationType"
-        type: TYPE_MASK
-        scalar_type: "uint32_t"
-        predefined_type: "::android::hardware::wifi::V1_0::NanRangingIndication"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::NanFollowupReceivedInd"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "discoverySessionId"
-        type: TYPE_SCALAR
-        scalar_type: "uint8_t"
-    }
-    struct_value: {
-        name: "peerId"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "addr"
-        type: TYPE_ARRAY
-        vector_size: 6
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-    struct_value: {
-        name: "receivedInFaw"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "serviceSpecificInfo"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-    struct_value: {
-        name: "extendedServiceSpecificInfo"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::NanClusterEventType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "DISCOVERY_MAC_ADDRESS_CHANGED"
-        scalar_value: {
-            uint32_t: 0
-        }
-        enumerator: "STARTED_CLUSTER"
-        scalar_value: {
-            uint32_t: 1
-        }
-        enumerator: "JOINED_CLUSTER"
-        scalar_value: {
-            uint32_t: 2
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::NanClusterEventInd"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "eventType"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::wifi::V1_0::NanClusterEventType"
-    }
-    struct_value: {
-        name: "addr"
-        type: TYPE_ARRAY
-        vector_size: 6
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::NanDataPathRequestInd"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "discoverySessionId"
-        type: TYPE_SCALAR
-        scalar_type: "uint8_t"
-    }
-    struct_value: {
-        name: "peerDiscMacAddr"
-        type: TYPE_ARRAY
-        vector_size: 6
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-    struct_value: {
-        name: "ndpInstanceId"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "securityRequired"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "appInfo"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::NanDataPathConfirmInd"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "ndpInstanceId"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "dataPathSetupSuccess"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "peerNdiMacAddr"
-        type: TYPE_ARRAY
-        vector_size: 6
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-    struct_value: {
-        name: "appInfo"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-    struct_value: {
-        name: "status"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::wifi::V1_0::WifiNanStatus"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::RttStatus"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "SUCCESS"
-        scalar_value: {
-            uint32_t: 0
-        }
-        enumerator: "FAILURE"
-        scalar_value: {
-            uint32_t: 1
-        }
-        enumerator: "FAIL_NO_RSP"
-        scalar_value: {
-            uint32_t: 2
-        }
-        enumerator: "FAIL_REJECTED"
-        scalar_value: {
-            uint32_t: 3
-        }
-        enumerator: "FAIL_NOT_SCHEDULED_YET"
-        scalar_value: {
-            uint32_t: 4
-        }
-        enumerator: "FAIL_TM_TIMEOUT"
-        scalar_value: {
-            uint32_t: 5
-        }
-        enumerator: "FAIL_AP_ON_DIFF_CHANNEL"
-        scalar_value: {
-            uint32_t: 6
-        }
-        enumerator: "FAIL_NO_CAPABILITY"
-        scalar_value: {
-            uint32_t: 7
-        }
-        enumerator: "ABORTED"
-        scalar_value: {
-            uint32_t: 8
-        }
-        enumerator: "FAIL_INVALID_TS"
-        scalar_value: {
-            uint32_t: 9
-        }
-        enumerator: "FAIL_PROTOCOL"
-        scalar_value: {
-            uint32_t: 10
-        }
-        enumerator: "FAIL_SCHEDULE"
-        scalar_value: {
-            uint32_t: 11
-        }
-        enumerator: "FAIL_BUSY_TRY_LATER"
-        scalar_value: {
-            uint32_t: 12
-        }
-        enumerator: "INVALID_REQ"
-        scalar_value: {
-            uint32_t: 13
-        }
-        enumerator: "NO_WIFI"
-        scalar_value: {
-            uint32_t: 14
-        }
-        enumerator: "FAIL_FTM_PARAM_OVERRIDE"
-        scalar_value: {
-            uint32_t: 15
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::RttPeerType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "AP"
-        scalar_value: {
-            uint32_t: 1
-        }
-        enumerator: "STA"
-        scalar_value: {
-            uint32_t: 2
-        }
-        enumerator: "P2P_GO"
-        scalar_value: {
-            uint32_t: 3
-        }
-        enumerator: "P2P_CLIENT"
-        scalar_value: {
-            uint32_t: 4
-        }
-        enumerator: "NAN"
-        scalar_value: {
-            uint32_t: 5
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::RttBw"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "BW_5MHZ"
-        scalar_value: {
-            uint32_t: 1
-        }
-        enumerator: "BW_10MHZ"
-        scalar_value: {
-            uint32_t: 2
-        }
-        enumerator: "BW_20MHZ"
-        scalar_value: {
-            uint32_t: 4
-        }
-        enumerator: "BW_40MHZ"
-        scalar_value: {
-            uint32_t: 8
-        }
-        enumerator: "BW_80MHZ"
-        scalar_value: {
-            uint32_t: 16
-        }
-        enumerator: "BW_160MHZ"
-        scalar_value: {
-            uint32_t: 32
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::RttPreamble"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "LEGACY"
-        scalar_value: {
-            uint32_t: 1
-        }
-        enumerator: "HT"
-        scalar_value: {
-            uint32_t: 2
-        }
-        enumerator: "VHT"
-        scalar_value: {
-            uint32_t: 4
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::RttType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "ONE_SIDED"
-        scalar_value: {
-            uint32_t: 1
-        }
-        enumerator: "TWO_SIDED"
-        scalar_value: {
-            uint32_t: 2
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::RttConfig"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "addr"
-        type: TYPE_ARRAY
-        vector_size: 6
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-    struct_value: {
-        name: "type"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::wifi::V1_0::RttType"
-    }
-    struct_value: {
-        name: "peer"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::wifi::V1_0::RttPeerType"
-    }
-    struct_value: {
-        name: "channel"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::wifi::V1_0::WifiChannelInfo"
-    }
-    struct_value: {
-        name: "burstPeriod"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "numBurst"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "numFramesPerBurst"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "numRetriesPerRttFrame"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "numRetriesPerFtmr"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "mustRequestLci"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "mustRequestLcr"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "burstDuration"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "preamble"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::wifi::V1_0::RttPreamble"
-    }
-    struct_value: {
-        name: "bw"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::wifi::V1_0::RttBw"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::RttResult"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "addr"
-        type: TYPE_ARRAY
-        vector_size: 6
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-    struct_value: {
-        name: "burstNum"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "measurementNumber"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "successNumber"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "numberPerBurstPeer"
-        type: TYPE_SCALAR
-        scalar_type: "uint8_t"
-    }
-    struct_value: {
-        name: "status"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::wifi::V1_0::RttStatus"
-    }
-    struct_value: {
-        name: "retryAfterDuration"
-        type: TYPE_SCALAR
-        scalar_type: "uint8_t"
-    }
-    struct_value: {
-        name: "type"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::wifi::V1_0::RttType"
-    }
-    struct_value: {
-        name: "rssi"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "rssiSpread"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "txRate"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::wifi::V1_0::WifiRateInfo"
-    }
-    struct_value: {
-        name: "rxRate"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::wifi::V1_0::WifiRateInfo"
-    }
-    struct_value: {
-        name: "rtt"
-        type: TYPE_SCALAR
-        scalar_type: "uint64_t"
-    }
-    struct_value: {
-        name: "rttSd"
-        type: TYPE_SCALAR
-        scalar_type: "uint64_t"
-    }
-    struct_value: {
-        name: "rttSpread"
-        type: TYPE_SCALAR
-        scalar_type: "uint64_t"
-    }
-    struct_value: {
-        name: "distanceInMm"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "distanceSdInMm"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "distanceSpreadInMm"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "timeStampInUs"
-        type: TYPE_SCALAR
-        scalar_type: "uint64_t"
-    }
-    struct_value: {
-        name: "burstDurationInMs"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "negotiatedBurstNum"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "lci"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::wifi::V1_0::WifiInformationElement"
-    }
-    struct_value: {
-        name: "lcr"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::wifi::V1_0::WifiInformationElement"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::RttCapabilities"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "rttOneSidedSupported"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "rttFtmSupported"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "lciSupported"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "lcrSupported"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "responderSupported"
-        type: TYPE_SCALAR
-        scalar_type: "bool_t"
-    }
-    struct_value: {
-        name: "preambleSupport"
-        type: TYPE_MASK
-        scalar_type: "uint32_t"
-        predefined_type: "::android::hardware::wifi::V1_0::RttPreamble"
-    }
-    struct_value: {
-        name: "bwSupport"
-        type: TYPE_MASK
-        scalar_type: "uint32_t"
-        predefined_type: "::android::hardware::wifi::V1_0::RttBw"
-    }
-    struct_value: {
-        name: "mcVersion"
-        type: TYPE_SCALAR
-        scalar_type: "uint8_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::RttMotionPattern"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "NOT_EXPECTED"
-        scalar_value: {
-            uint32_t: 0
-        }
-        enumerator: "EXPECTED"
-        scalar_value: {
-            uint32_t: 1
-        }
-        enumerator: "UNKNOWN"
-        scalar_value: {
-            uint32_t: 2
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::RttLciInformation"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "latitude"
-        type: TYPE_SCALAR
-        scalar_type: "int64_t"
-    }
-    struct_value: {
-        name: "longitude"
-        type: TYPE_SCALAR
-        scalar_type: "int64_t"
-    }
-    struct_value: {
-        name: "altitude"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "latitudeUnc"
-        type: TYPE_SCALAR
-        scalar_type: "uint8_t"
-    }
-    struct_value: {
-        name: "longitudeUnc"
-        type: TYPE_SCALAR
-        scalar_type: "uint8_t"
-    }
-    struct_value: {
-        name: "altitudeUnc"
-        type: TYPE_SCALAR
-        scalar_type: "uint8_t"
-    }
-    struct_value: {
-        name: "motionPattern"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::wifi::V1_0::RttMotionPattern"
-    }
-    struct_value: {
-        name: "floor"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "heightAboveFloor"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-    struct_value: {
-        name: "heightUnc"
-        type: TYPE_SCALAR
-        scalar_type: "int32_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::RttLcrInformation"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "countryCode"
-        type: TYPE_ARRAY
-        vector_size: 2
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "int8_t"
-        }
-    }
-    struct_value: {
-        name: "civicInfo"
-        type: TYPE_STRING
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::RttResponder"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "channel"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::wifi::V1_0::WifiChannelInfo"
-    }
-    struct_value: {
-        name: "preamble"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::wifi::V1_0::RttPreamble"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::WifiDebugRingBufferFlags"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "HAS_BINARY_ENTRIES"
-        scalar_value: {
-            uint32_t: 1
-        }
-        enumerator: "HAS_ASCII_ENTRIES"
-        scalar_value: {
-            uint32_t: 2
-        }
-        enumerator: "HAS_PER_PACKET_ENTRIES"
-        scalar_value: {
-            uint32_t: 4
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::WifiDebugRingBufferStatus"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "ringName"
-        type: TYPE_STRING
-    }
-    struct_value: {
-        name: "flags"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "ringId"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "sizeInBytes"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "freeSizeInBytes"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "verboseLevel"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::WifiDebugRingBufferVerboseLevel"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "NONE"
-        scalar_value: {
-            uint32_t: 0
-        }
-        enumerator: "DEFAULT"
-        scalar_value: {
-            uint32_t: 1
-        }
-        enumerator: "VERBOSE"
-        scalar_value: {
-            uint32_t: 2
-        }
-        enumerator: "EXCESSIVE"
-        scalar_value: {
-            uint32_t: 3
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::WifiDebugTxPacketFate"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "ACKED"
-        scalar_value: {
-            uint32_t: 0
-        }
-        enumerator: "SENT"
-        scalar_value: {
-            uint32_t: 1
-        }
-        enumerator: "FW_QUEUED"
-        scalar_value: {
-            uint32_t: 2
-        }
-        enumerator: "FW_DROP_INVALID"
-        scalar_value: {
-            uint32_t: 3
-        }
-        enumerator: "FW_DROP_NOBUFS"
-        scalar_value: {
-            uint32_t: 4
-        }
-        enumerator: "FW_DROP_OTHER"
-        scalar_value: {
-            uint32_t: 5
-        }
-        enumerator: "DRV_QUEUED"
-        scalar_value: {
-            uint32_t: 6
-        }
-        enumerator: "DRV_DROP_INVALID"
-        scalar_value: {
-            uint32_t: 7
-        }
-        enumerator: "DRV_DROP_NOBUFS"
-        scalar_value: {
-            uint32_t: 8
-        }
-        enumerator: "DRV_DROP_OTHER"
-        scalar_value: {
-            uint32_t: 9
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::WifiDebugRxPacketFate"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "SUCCESS"
-        scalar_value: {
-            uint32_t: 0
-        }
-        enumerator: "FW_QUEUED"
-        scalar_value: {
-            uint32_t: 1
-        }
-        enumerator: "FW_DROP_FILTER"
-        scalar_value: {
-            uint32_t: 2
-        }
-        enumerator: "FW_DROP_INVALID"
-        scalar_value: {
-            uint32_t: 3
-        }
-        enumerator: "FW_DROP_NOBUFS"
-        scalar_value: {
-            uint32_t: 4
-        }
-        enumerator: "FW_DROP_OTHER"
-        scalar_value: {
-            uint32_t: 5
-        }
-        enumerator: "DRV_QUEUED"
-        scalar_value: {
-            uint32_t: 6
-        }
-        enumerator: "DRV_DROP_FILTER"
-        scalar_value: {
-            uint32_t: 7
-        }
-        enumerator: "DRV_DROP_INVALID"
-        scalar_value: {
-            uint32_t: 8
-        }
-        enumerator: "DRV_DROP_NOBUFS"
-        scalar_value: {
-            uint32_t: 9
-        }
-        enumerator: "DRV_DROP_OTHER"
-        scalar_value: {
-            uint32_t: 10
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::WifiDebugPacketFateFrameType"
-    type: TYPE_ENUM
-    enum_value: {
-        scalar_type: "uint32_t"
-
-        enumerator: "UNKNOWN"
-        scalar_value: {
-            uint32_t: 0
-        }
-        enumerator: "ETHERNET_II"
-        scalar_value: {
-            uint32_t: 1
-        }
-        enumerator: "MGMT_80211"
-        scalar_value: {
-            uint32_t: 2
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::WifiDebugPacketFateFrameInfo"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "frameType"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::wifi::V1_0::WifiDebugPacketFateFrameType"
-    }
-    struct_value: {
-        name: "frameLen"
-        type: TYPE_SCALAR
-        scalar_type: "uint64_t"
-    }
-    struct_value: {
-        name: "driverTimestampUsec"
-        type: TYPE_SCALAR
-        scalar_type: "uint64_t"
-    }
-    struct_value: {
-        name: "firmwareTimestampUsec"
-        type: TYPE_SCALAR
-        scalar_type: "uint64_t"
-    }
-    struct_value: {
-        name: "frameContent"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::WifiDebugTxPacketFateReport"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "fate"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::wifi::V1_0::WifiDebugTxPacketFate"
-    }
-    struct_value: {
-        name: "frameInfo"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::wifi::V1_0::WifiDebugPacketFateFrameInfo"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::WifiDebugRxPacketFateReport"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "fate"
-        type: TYPE_ENUM
-        predefined_type: "::android::hardware::wifi::V1_0::WifiDebugRxPacketFate"
-    }
-    struct_value: {
-        name: "frameInfo"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::wifi::V1_0::WifiDebugPacketFateFrameInfo"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::WifiDebugHostWakeReasonRxPacketDetails"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "rxUnicastCnt"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "rxMulticastCnt"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "rxBroadcastCnt"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::WifiDebugHostWakeReasonRxMulticastPacketDetails"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "ipv4RxMulticastAddrCnt"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "ipv6RxMulticastAddrCnt"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "otherRxMulticastAddrCnt"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::WifiDebugHostWakeReasonRxIcmpPacketDetails"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "icmpPkt"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "icmp6Pkt"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "icmp6Ra"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "icmp6Na"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "icmp6Ns"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-}
-
-attribute: {
-    name: "::android::hardware::wifi::V1_0::WifiDebugHostWakeReasonStats"
-    type: TYPE_STRUCT
-    struct_value: {
-        name: "totalCmdEventWakeCnt"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "cmdEventWakeCntPerType"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-    }
-    struct_value: {
-        name: "totalDriverFwLocalWakeCnt"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "driverFwLocalWakeCntPerType"
-        type: TYPE_VECTOR
-        vector_value: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-    }
-    struct_value: {
-        name: "totalRxPacketWakeCnt"
-        type: TYPE_SCALAR
-        scalar_type: "uint32_t"
-    }
-    struct_value: {
-        name: "rxPktWakeDetails"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::wifi::V1_0::WifiDebugHostWakeReasonRxPacketDetails"
-    }
-    struct_value: {
-        name: "rxMulticastPkWakeDetails"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::wifi::V1_0::WifiDebugHostWakeReasonRxMulticastPacketDetails"
-    }
-    struct_value: {
-        name: "rxIcmpPkWakeDetails"
-        type: TYPE_STRUCT
-        predefined_type: "::android::hardware::wifi::V1_0::WifiDebugHostWakeReasonRxIcmpPacketDetails"
-    }
-}
-
diff --git a/wifi/supplicant/1.0/ISupplicantStaNetwork.hal b/wifi/supplicant/1.0/ISupplicantStaNetwork.hal
index b16fb39..37e8d3f 100644
--- a/wifi/supplicant/1.0/ISupplicantStaNetwork.hal
+++ b/wifi/supplicant/1.0/ISupplicantStaNetwork.hal
@@ -434,9 +434,11 @@
   setEapClientCert(string path) generates (SupplicantStatus status);
 
   /**
-   * Set EAP private key file path for this network.
+   * Set EAP private key Id for this network.
+   * This is used if private key operations for EAP-TLS are performed
+   * using a smartcard.
    *
-   * @param path value to set.
+   * @param id value to set.
    * @return status Status of the operation.
    *         Possible status codes:
    *         |SupplicantStatusCode.SUCCESS|,
@@ -444,7 +446,7 @@
    *         |SupplicantStatusCode.FAILURE_UNKNOWN|,
    *         |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
    */
-  setEapPrivateKey(string path) generates (SupplicantStatus status);
+  setEapPrivateKeyId(string id) generates (SupplicantStatus status);
 
   /**
    * Set EAP subject match for this network.
@@ -810,16 +812,16 @@
   getEapClientCert() generates (SupplicantStatus status, string path);
 
   /**
-   * Get EAP private key file path set for this network.
+   * Get EAP private key Id set for this network.
    *
    * @return status Status of the operation.
    *         Possible status codes:
    *         |SupplicantStatusCode.SUCCESS|,
    *         |SupplicantStatusCode.FAILURE_UNKNOWN|,
    *         |SupplicantStatusCode.FAILURE_NETWORK_INVALID|
-   * @return path value set.
+   * @return id value set.
    */
-  getEapPrivateKey() generates (SupplicantStatus status, string path);
+  getEapPrivateKeyId() generates (SupplicantStatus status, string id);
 
   /**
    * Get EAP subject match set for this network.
diff --git a/wifi/supplicant/1.0/vts/Supplicant.vts b/wifi/supplicant/1.0/vts/Supplicant.vts
deleted file mode 100644
index 534b1cf..0000000
--- a/wifi/supplicant/1.0/vts/Supplicant.vts
+++ /dev/null
@@ -1,160 +0,0 @@
-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::ISupplicantNetwork"
-import: "android.hardware.wifi.supplicant@1.0::types"
-import: "android.hidl.base@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: "::android::hardware::wifi::supplicant::V1_0::ISupplicantIface"
-        }
-        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: "::android::hardware::wifi::supplicant::V1_0::ISupplicantCallback"
-        }
-    }
-
-    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"
-        }
-    }
-
-}
diff --git a/wifi/supplicant/1.0/vts/SupplicantCallback.vts b/wifi/supplicant/1.0/vts/SupplicantCallback.vts
deleted file mode 100644
index 2d9e991..0000000
--- a/wifi/supplicant/1.0/vts/SupplicantCallback.vts
+++ /dev/null
@@ -1,28 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "ISupplicantCallback"
-
-package: "android.hardware.wifi.supplicant"
-
-import: "android.hidl.base@1.0::types"
-
-interface: {
-    api: {
-        name: "onInterfaceCreated"
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "onInterfaceRemoved"
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "onTerminating"
-    }
-
-}
diff --git a/wifi/supplicant/1.0/vts/SupplicantIface.vts b/wifi/supplicant/1.0/vts/SupplicantIface.vts
deleted file mode 100644
index c703ec0..0000000
--- a/wifi/supplicant/1.0/vts/SupplicantIface.vts
+++ /dev/null
@@ -1,203 +0,0 @@
-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"
-import: "android.hidl.base@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: "::android::hardware::wifi::supplicant::V1_0::ISupplicantNetwork"
-        }
-    }
-
-    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: "::android::hardware::wifi::supplicant::V1_0::ISupplicantNetwork"
-        }
-        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: "setWpsDeviceType"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
-        }
-        arg: {
-            type: TYPE_ARRAY
-            vector_size: 8
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-    }
-
-    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
-            scalar_type: "uint16_t"
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::WpsConfigMethods"
-        }
-    }
-
-}
diff --git a/wifi/supplicant/1.0/vts/SupplicantNetwork.vts b/wifi/supplicant/1.0/vts/SupplicantNetwork.vts
deleted file mode 100644
index c90f396..0000000
--- a/wifi/supplicant/1.0/vts/SupplicantNetwork.vts
+++ /dev/null
@@ -1,46 +0,0 @@
-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"
-import: "android.hidl.base@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"
-        }
-    }
-
-}
diff --git a/wifi/supplicant/1.0/vts/SupplicantP2pIface.vts b/wifi/supplicant/1.0/vts/SupplicantP2pIface.vts
deleted file mode 100644
index 2515b60..0000000
--- a/wifi/supplicant/1.0/vts/SupplicantP2pIface.vts
+++ /dev/null
@@ -1,801 +0,0 @@
-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::ISupplicantNetwork"
-import: "android.hardware.wifi.supplicant@1.0::ISupplicantP2pIfaceCallback"
-import: "android.hardware.wifi.supplicant@1.0::types"
-import: "android.hidl.base@1.0::types"
-
-interface: {
-    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: "::android::hardware::wifi::supplicant::V1_0::ISupplicantNetwork"
-        }
-    }
-
-    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: "::android::hardware::wifi::supplicant::V1_0::ISupplicantNetwork"
-        }
-        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: "setWpsDeviceType"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
-        }
-        arg: {
-            type: TYPE_ARRAY
-            vector_size: 8
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-    }
-
-    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
-            scalar_type: "uint16_t"
-            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: "::android::hardware::wifi::supplicant::V1_0::ISupplicantP2pIfaceCallback"
-        }
-    }
-
-    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_size: 6
-            vector_value: {
-                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_size: 6
-            vector_value: {
-                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_size: 6
-            vector_value: {
-                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_size: 6
-            vector_value: {
-                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_size: 6
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-        arg: {
-            type: TYPE_ARRAY
-            vector_size: 6
-            vector_value: {
-                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_size: 6
-            vector_value: {
-                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_size: 6
-            vector_value: {
-                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
-            scalar_type: "uint32_t"
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::P2pGroupCapabilityMask"
-        }
-        arg: {
-            type: TYPE_ARRAY
-            vector_size: 6
-            vector_value: {
-                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_size: 6
-            vector_value: {
-                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_size: 6
-            vector_value: {
-                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_size: 6
-            vector_value: {
-                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_size: 8
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-    }
-
-}
diff --git a/wifi/supplicant/1.0/vts/SupplicantP2pIfaceCallback.vts b/wifi/supplicant/1.0/vts/SupplicantP2pIfaceCallback.vts
deleted file mode 100644
index b3cf05b..0000000
--- a/wifi/supplicant/1.0/vts/SupplicantP2pIfaceCallback.vts
+++ /dev/null
@@ -1,524 +0,0 @@
-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"
-import: "android.hidl.base@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_size: 6
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-        arg: {
-            type: TYPE_ARRAY
-            vector_size: 6
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-        arg: {
-            type: TYPE_ARRAY
-            vector_size: 8
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-        arg: {
-            type: TYPE_MASK
-            scalar_type: "uint16_t"
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::WpsConfigMethods"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint8_t"
-        }
-        arg: {
-            type: TYPE_MASK
-            scalar_type: "uint32_t"
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::P2pGroupCapabilityMask"
-        }
-        arg: {
-            type: TYPE_ARRAY
-            vector_size: 8
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-    }
-
-    api: {
-        name: "onDeviceLost"
-        arg: {
-            type: TYPE_ARRAY
-            vector_size: 6
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-    }
-
-    api: {
-        name: "onFindStopped"
-    }
-
-    api: {
-        name: "onGoNegotiationRequest"
-        arg: {
-            type: TYPE_ARRAY
-            vector_size: 6
-            vector_value: {
-                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_size: 32
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-        arg: {
-            type: TYPE_ARRAY
-            vector_size: 6
-            vector_value: {
-                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_size: 6
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-        arg: {
-            type: TYPE_ARRAY
-            vector_size: 6
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-        arg: {
-            type: TYPE_ARRAY
-            vector_size: 6
-            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"
-        }
-    }
-
-    api: {
-        name: "onInvitationResult"
-        arg: {
-            type: TYPE_ARRAY
-            vector_size: 6
-            vector_value: {
-                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_size: 6
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-    }
-
-    api: {
-        name: "onProvisionDiscoveryPbcResponse"
-        arg: {
-            type: TYPE_ARRAY
-            vector_size: 6
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-    }
-
-    api: {
-        name: "onProvisionDiscoveryShowPin"
-        arg: {
-            type: TYPE_ARRAY
-            vector_size: 6
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "onProvisionDiscoveryEnterPin"
-        arg: {
-            type: TYPE_ARRAY
-            vector_size: 6
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-    }
-
-    api: {
-        name: "onProvisionDiscoveryFailure"
-        arg: {
-            type: TYPE_ARRAY
-            vector_size: 6
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-    }
-
-    api: {
-        name: "onProvisionDiscoveryCompleted"
-        arg: {
-            type: TYPE_ARRAY
-            vector_size: 6
-            vector_value: {
-                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
-            scalar_type: "uint16_t"
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::WpsConfigMethods"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "onServiceDiscoveryResponse"
-        arg: {
-            type: TYPE_ARRAY
-            vector_size: 6
-            vector_value: {
-                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_size: 6
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-        arg: {
-            type: TYPE_ARRAY
-            vector_size: 6
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-    }
-
-    api: {
-        name: "onStaDeauthorized"
-        arg: {
-            type: TYPE_ARRAY
-            vector_size: 6
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-        arg: {
-            type: TYPE_ARRAY
-            vector_size: 6
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-    }
-
-}
diff --git a/wifi/supplicant/1.0/vts/SupplicantP2pNetwork.vts b/wifi/supplicant/1.0/vts/SupplicantP2pNetwork.vts
deleted file mode 100644
index 8d0b5a1..0000000
--- a/wifi/supplicant/1.0/vts/SupplicantP2pNetwork.vts
+++ /dev/null
@@ -1,127 +0,0 @@
-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"
-import: "android.hidl.base@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: "::android::hardware::wifi::supplicant::V1_0::ISupplicantP2pNetworkCallback"
-        }
-    }
-
-    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_size: 6
-            vector_value: {
-                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"
-        }
-    }
-
-}
diff --git a/wifi/supplicant/1.0/vts/SupplicantP2pNetworkCallback.vts b/wifi/supplicant/1.0/vts/SupplicantP2pNetworkCallback.vts
deleted file mode 100644
index 9493c5e..0000000
--- a/wifi/supplicant/1.0/vts/SupplicantP2pNetworkCallback.vts
+++ /dev/null
@@ -1,10 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "ISupplicantP2pNetworkCallback"
-
-package: "android.hardware.wifi.supplicant"
-
-import: "android.hidl.base@1.0::types"
-
-interface: {
-}
diff --git a/wifi/supplicant/1.0/vts/SupplicantStaIface.vts b/wifi/supplicant/1.0/vts/SupplicantStaIface.vts
deleted file mode 100644
index cc52487..0000000
--- a/wifi/supplicant/1.0/vts/SupplicantStaIface.vts
+++ /dev/null
@@ -1,658 +0,0 @@
-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::ISupplicantNetwork"
-import: "android.hardware.wifi.supplicant@1.0::ISupplicantStaIfaceCallback"
-import: "android.hardware.wifi.supplicant@1.0::types"
-import: "android.hidl.base@1.0::types"
-
-interface: {
-    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
-            }
-        }
-    }
-
-    attribute: {
-        name: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaIface::ExtRadioWorkDefaults"
-        type: TYPE_ENUM
-        enum_value: {
-            scalar_type: "uint32_t"
-
-            enumerator: "TIMEOUT_IN_SECS"
-            scalar_value: {
-                uint32_t: 10
-            }
-        }
-    }
-
-    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: "::android::hardware::wifi::supplicant::V1_0::ISupplicantNetwork"
-        }
-    }
-
-    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: "::android::hardware::wifi::supplicant::V1_0::ISupplicantNetwork"
-        }
-        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: "setWpsDeviceType"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
-        }
-        arg: {
-            type: TYPE_ARRAY
-            vector_size: 8
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-    }
-
-    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
-            scalar_type: "uint16_t"
-            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: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaIfaceCallback"
-        }
-    }
-
-    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_size: 6
-            vector_value: {
-                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_size: 6
-            vector_value: {
-                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_size: 6
-            vector_value: {
-                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_size: 6
-            vector_value: {
-                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_size: 6
-            vector_value: {
-                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_size: 6
-            vector_value: {
-                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_size: 2
-            vector_value: {
-                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_size: 6
-            vector_value: {
-                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_size: 6
-            vector_value: {
-                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_size: 6
-            vector_value: {
-                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"
-        }
-    }
-
-    api: {
-        name: "addExtRadioWork"
-        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"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-    }
-
-    api: {
-        name: "removeExtRadioWork"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-    }
-
-}
diff --git a/wifi/supplicant/1.0/vts/SupplicantStaIfaceCallback.vts b/wifi/supplicant/1.0/vts/SupplicantStaIfaceCallback.vts
deleted file mode 100644
index 0a35848..0000000
--- a/wifi/supplicant/1.0/vts/SupplicantStaIfaceCallback.vts
+++ /dev/null
@@ -1,516 +0,0 @@
-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"
-import: "android.hidl.base@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_size: 6
-            vector_value: {
-                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_size: 6
-            vector_value: {
-                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_size: 6
-            vector_value: {
-                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_size: 6
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-    }
-
-    api: {
-        name: "onDisconnected"
-        arg: {
-            type: TYPE_ARRAY
-            vector_size: 6
-            vector_value: {
-                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_size: 6
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-    }
-
-    api: {
-        name: "onAssociationRejected"
-        arg: {
-            type: TYPE_ARRAY
-            vector_size: 6
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-    }
-
-    api: {
-        name: "onAuthenticationTimeout"
-        arg: {
-            type: TYPE_ARRAY
-            vector_size: 6
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-    }
-
-    api: {
-        name: "onEapFailure"
-    }
-
-    api: {
-        name: "onWpsEventSuccess"
-    }
-
-    api: {
-        name: "onWpsEventFail"
-        arg: {
-            type: TYPE_ARRAY
-            vector_size: 6
-            vector_value: {
-                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"
-    }
-
-    api: {
-        name: "onExtRadioWorkStart"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-    }
-
-    api: {
-        name: "onExtRadioWorkTimeout"
-        arg: {
-            type: TYPE_SCALAR
-            scalar_type: "uint32_t"
-        }
-    }
-
-}
diff --git a/wifi/supplicant/1.0/vts/SupplicantStaNetwork.vts b/wifi/supplicant/1.0/vts/SupplicantStaNetwork.vts
deleted file mode 100644
index 8ad72f1..0000000
--- a/wifi/supplicant/1.0/vts/SupplicantStaNetwork.vts
+++ /dev/null
@@ -1,1156 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "ISupplicantStaNetwork"
-
-package: "android.hardware.wifi.supplicant"
-
-import: "android.hardware.wifi.supplicant@1.0::ISupplicantNetwork"
-import: "android.hardware.wifi.supplicant@1.0::ISupplicantStaNetworkCallback"
-import: "android.hardware.wifi.supplicant@1.0::types"
-import: "android.hidl.base@1.0::types"
-
-interface: {
-    attribute: {
-        name: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaNetwork::ParamSizeLimits"
-        type: TYPE_ENUM
-        enum_value: {
-            scalar_type: "uint32_t"
-
-            enumerator: "SSID_MAX_LEN_IN_BYTES"
-            scalar_value: {
-                uint32_t: 32
-            }
-            enumerator: "PSK_PASSPHRASE_MIN_LEN_IN_BYTES"
-            scalar_value: {
-                uint32_t: 8
-            }
-            enumerator: "PSK_PASSPHRASE_MAX_LEN_IN_BYTES"
-            scalar_value: {
-                uint32_t: 63
-            }
-            enumerator: "WEP_KEYS_MAX_NUM"
-            scalar_value: {
-                uint32_t: 4
-            }
-            enumerator: "WEP40_KEY_LEN_IN_BYTES"
-            scalar_value: {
-                uint32_t: 5
-            }
-            enumerator: "WEP104_KEY_LEN_IN_BYTES"
-            scalar_value: {
-                uint32_t: 13
-            }
-        }
-    }
-
-    attribute: {
-        name: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaNetwork::KeyMgmtMask"
-        type: TYPE_ENUM
-        enum_value: {
-            scalar_type: "uint32_t"
-
-            enumerator: "WPA_EAP"
-            scalar_value: {
-                uint32_t: 1
-            }
-            enumerator: "WPA_PSK"
-            scalar_value: {
-                uint32_t: 2
-            }
-            enumerator: "NONE"
-            scalar_value: {
-                uint32_t: 4
-            }
-            enumerator: "IEEE8021X"
-            scalar_value: {
-                uint32_t: 8
-            }
-            enumerator: "FT_EAP"
-            scalar_value: {
-                uint32_t: 32
-            }
-            enumerator: "FT_PSK"
-            scalar_value: {
-                uint32_t: 64
-            }
-            enumerator: "OSEN"
-            scalar_value: {
-                uint32_t: 32768
-            }
-        }
-    }
-
-    attribute: {
-        name: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaNetwork::ProtoMask"
-        type: TYPE_ENUM
-        enum_value: {
-            scalar_type: "uint32_t"
-
-            enumerator: "WPA"
-            scalar_value: {
-                uint32_t: 1
-            }
-            enumerator: "RSN"
-            scalar_value: {
-                uint32_t: 2
-            }
-            enumerator: "OSEN"
-            scalar_value: {
-                uint32_t: 8
-            }
-        }
-    }
-
-    attribute: {
-        name: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaNetwork::AuthAlgMask"
-        type: TYPE_ENUM
-        enum_value: {
-            scalar_type: "uint32_t"
-
-            enumerator: "OPEN"
-            scalar_value: {
-                uint32_t: 1
-            }
-            enumerator: "SHARED"
-            scalar_value: {
-                uint32_t: 2
-            }
-            enumerator: "LEAP"
-            scalar_value: {
-                uint32_t: 4
-            }
-        }
-    }
-
-    attribute: {
-        name: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaNetwork::GroupCipherMask"
-        type: TYPE_ENUM
-        enum_value: {
-            scalar_type: "uint32_t"
-
-            enumerator: "WEP40"
-            scalar_value: {
-                uint32_t: 2
-            }
-            enumerator: "WEP104"
-            scalar_value: {
-                uint32_t: 4
-            }
-            enumerator: "TKIP"
-            scalar_value: {
-                uint32_t: 8
-            }
-            enumerator: "CCMP"
-            scalar_value: {
-                uint32_t: 16
-            }
-            enumerator: "GTK_NOT_USED"
-            scalar_value: {
-                uint32_t: 16384
-            }
-        }
-    }
-
-    attribute: {
-        name: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaNetwork::PairwiseCipherMask"
-        type: TYPE_ENUM
-        enum_value: {
-            scalar_type: "uint32_t"
-
-            enumerator: "NONE"
-            scalar_value: {
-                uint32_t: 1
-            }
-            enumerator: "TKIP"
-            scalar_value: {
-                uint32_t: 8
-            }
-            enumerator: "CCMP"
-            scalar_value: {
-                uint32_t: 16
-            }
-        }
-    }
-
-    attribute: {
-        name: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaNetwork::EapMethod"
-        type: TYPE_ENUM
-        enum_value: {
-            scalar_type: "uint32_t"
-
-            enumerator: "PEAP"
-            scalar_value: {
-                uint32_t: 0
-            }
-            enumerator: "TLS"
-            scalar_value: {
-                uint32_t: 1
-            }
-            enumerator: "TTLS"
-            scalar_value: {
-                uint32_t: 2
-            }
-            enumerator: "PWD"
-            scalar_value: {
-                uint32_t: 3
-            }
-            enumerator: "SIM"
-            scalar_value: {
-                uint32_t: 4
-            }
-            enumerator: "AKA"
-            scalar_value: {
-                uint32_t: 5
-            }
-            enumerator: "AKA_PRIME"
-            scalar_value: {
-                uint32_t: 6
-            }
-            enumerator: "WFA_UNAUTH_TLS"
-            scalar_value: {
-                uint32_t: 7
-            }
-        }
-    }
-
-    attribute: {
-        name: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaNetwork::EapPhase2Method"
-        type: TYPE_ENUM
-        enum_value: {
-            scalar_type: "uint32_t"
-
-            enumerator: "NONE"
-            scalar_value: {
-                uint32_t: 0
-            }
-            enumerator: "PAP"
-            scalar_value: {
-                uint32_t: 1
-            }
-            enumerator: "MSPAP"
-            scalar_value: {
-                uint32_t: 2
-            }
-            enumerator: "MSPAPV2"
-            scalar_value: {
-                uint32_t: 3
-            }
-            enumerator: "GTC"
-            scalar_value: {
-                uint32_t: 4
-            }
-        }
-    }
-
-    attribute: {
-        name: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaNetwork::NetworkResponseEapSimGsmAuthParams"
-        type: TYPE_STRUCT
-        struct_value: {
-            name: "kc"
-            type: TYPE_ARRAY
-            vector_size: 8
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-        struct_value: {
-            name: "sres"
-            type: TYPE_ARRAY
-            vector_size: 4
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-    }
-
-    attribute: {
-        name: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaNetwork::NetworkResponseEapSimUmtsAuthParams"
-        type: TYPE_STRUCT
-        struct_value: {
-            name: "res"
-            type: TYPE_VECTOR
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-        struct_value: {
-            name: "ik"
-            type: TYPE_ARRAY
-            vector_size: 16
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-        struct_value: {
-            name: "ck"
-            type: TYPE_ARRAY
-            vector_size: 16
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-    }
-
-    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: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaNetworkCallback"
-        }
-    }
-
-    api: {
-        name: "setSsid"
-        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: "setBssid"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
-        }
-        arg: {
-            type: TYPE_ARRAY
-            vector_size: 6
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-    }
-
-    api: {
-        name: "setScanSsid"
-        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: "setKeyMgmt"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
-        }
-        arg: {
-            type: TYPE_MASK
-            scalar_type: "uint32_t"
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaNetwork::KeyMgmtMask"
-        }
-    }
-
-    api: {
-        name: "setProto"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
-        }
-        arg: {
-            type: TYPE_MASK
-            scalar_type: "uint32_t"
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaNetwork::ProtoMask"
-        }
-    }
-
-    api: {
-        name: "setAuthAlg"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
-        }
-        arg: {
-            type: TYPE_MASK
-            scalar_type: "uint32_t"
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaNetwork::AuthAlgMask"
-        }
-    }
-
-    api: {
-        name: "setGroupCipher"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
-        }
-        arg: {
-            type: TYPE_MASK
-            scalar_type: "uint32_t"
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaNetwork::GroupCipherMask"
-        }
-    }
-
-    api: {
-        name: "setPairwiseCipher"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
-        }
-        arg: {
-            type: TYPE_MASK
-            scalar_type: "uint32_t"
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaNetwork::PairwiseCipherMask"
-        }
-    }
-
-    api: {
-        name: "setPskPassphrase"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "setWepKey"
-        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_VECTOR
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-    }
-
-    api: {
-        name: "setWepTxKeyIdx"
-        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: "setRequirePmf"
-        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: "setEapMethod"
-        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::ISupplicantStaNetwork::EapMethod"
-        }
-    }
-
-    api: {
-        name: "setEapPhase2Method"
-        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::ISupplicantStaNetwork::EapPhase2Method"
-        }
-    }
-
-    api: {
-        name: "setEapIdentity"
-        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: "setEapAnonymousIdentity"
-        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: "setEapPassword"
-        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: "setEapCACert"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "setEapCAPath"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "setEapClientCert"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "setEapPrivateKey"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "setEapSubjectMatch"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "setEapAltSubjectMatch"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "setEapEngine"
-        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: "setEapEngineID"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "setEapDomainSuffixMatch"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "setProactiveKeyCaching"
-        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: "setIdStr"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
-        }
-        arg: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "setUpdateIdentifier"
-        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: "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_size: 6
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-    }
-
-    api: {
-        name: "getScanSsid"
-        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: "getKeyMgmt"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
-        }
-        return_type_hidl: {
-            type: TYPE_MASK
-            scalar_type: "uint32_t"
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaNetwork::KeyMgmtMask"
-        }
-    }
-
-    api: {
-        name: "getProto"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
-        }
-        return_type_hidl: {
-            type: TYPE_MASK
-            scalar_type: "uint32_t"
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaNetwork::ProtoMask"
-        }
-    }
-
-    api: {
-        name: "getAuthAlg"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
-        }
-        return_type_hidl: {
-            type: TYPE_MASK
-            scalar_type: "uint32_t"
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaNetwork::AuthAlgMask"
-        }
-    }
-
-    api: {
-        name: "getGroupCipher"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
-        }
-        return_type_hidl: {
-            type: TYPE_MASK
-            scalar_type: "uint32_t"
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaNetwork::GroupCipherMask"
-        }
-    }
-
-    api: {
-        name: "getPairwiseCipher"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
-        }
-        return_type_hidl: {
-            type: TYPE_MASK
-            scalar_type: "uint32_t"
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaNetwork::PairwiseCipherMask"
-        }
-    }
-
-    api: {
-        name: "getPskPassphrase"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
-        }
-        return_type_hidl: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "getWepKey"
-        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_SCALAR
-            scalar_type: "uint32_t"
-        }
-    }
-
-    api: {
-        name: "getWepTxKeyIdx"
-        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: "getRequirePmf"
-        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: "getEapMethod"
-        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::ISupplicantStaNetwork::EapMethod"
-        }
-    }
-
-    api: {
-        name: "getEapPhase2Method"
-        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::ISupplicantStaNetwork::EapPhase2Method"
-        }
-    }
-
-    api: {
-        name: "getEapIdentity"
-        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: "getEapAnonymousIdentity"
-        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: "getEapPassword"
-        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: "getEapCACert"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
-        }
-        return_type_hidl: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "getEapCAPath"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
-        }
-        return_type_hidl: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "getEapClientCert"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
-        }
-        return_type_hidl: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "getEapPrivateKey"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
-        }
-        return_type_hidl: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "getEapSubjectMatch"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
-        }
-        return_type_hidl: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "getEapAltSubjectMatch"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
-        }
-        return_type_hidl: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "getEapEngine"
-        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: "getEapEngineID"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
-        }
-        return_type_hidl: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "getEapDomainSuffixMatch"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
-        }
-        return_type_hidl: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "getIdStr"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
-        }
-        return_type_hidl: {
-            type: TYPE_STRING
-        }
-    }
-
-    api: {
-        name: "enable"
-        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: "disable"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
-        }
-    }
-
-    api: {
-        name: "select"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
-        }
-    }
-
-    api: {
-        name: "sendNetworkEapSimGsmAuthResponse"
-        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::ISupplicantStaNetwork::NetworkResponseEapSimGsmAuthParams"
-            }
-        }
-    }
-
-    api: {
-        name: "sendNetworkEapSimGsmAuthFailure"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
-        }
-    }
-
-    api: {
-        name: "sendNetworkEapSimUmtsAuthResponse"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
-        }
-        arg: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::ISupplicantStaNetwork::NetworkResponseEapSimUmtsAuthParams"
-        }
-    }
-
-    api: {
-        name: "sendNetworkEapSimUmtsAutsResponse"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
-        }
-        arg: {
-            type: TYPE_ARRAY
-            vector_size: 14
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-    }
-
-    api: {
-        name: "sendNetworkEapSimUmtsAuthFailure"
-        return_type_hidl: {
-            type: TYPE_STRUCT
-            predefined_type: "::android::hardware::wifi::supplicant::V1_0::SupplicantStatus"
-        }
-    }
-
-    api: {
-        name: "sendNetworkEapIdentityResponse"
-        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"
-            }
-        }
-    }
-
-}
diff --git a/wifi/supplicant/1.0/vts/SupplicantStaNetworkCallback.vts b/wifi/supplicant/1.0/vts/SupplicantStaNetworkCallback.vts
deleted file mode 100644
index 1c91d57..0000000
--- a/wifi/supplicant/1.0/vts/SupplicantStaNetworkCallback.vts
+++ /dev/null
@@ -1,70 +0,0 @@
-component_class: HAL_HIDL
-component_type_version: 1.0
-component_name: "ISupplicantStaNetworkCallback"
-
-package: "android.hardware.wifi.supplicant"
-
-import: "android.hidl.base@1.0::types"
-
-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_size: 16
-                vector_value: {
-                    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_size: 16
-            vector_value: {
-                type: TYPE_SCALAR
-                scalar_type: "uint8_t"
-            }
-        }
-        struct_value: {
-            name: "autn"
-            type: TYPE_ARRAY
-            vector_size: 16
-            vector_value: {
-                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"
-    }
-
-}
diff --git a/wifi/supplicant/1.0/vts/types.vts b/wifi/supplicant/1.0/vts/types.vts
deleted file mode 100644
index b8b29b3..0000000
--- a/wifi/supplicant/1.0/vts/types.vts
+++ /dev/null
@@ -1,189 +0,0 @@
-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
-        }
-    }
-}
-