Merge "tv_cec HAL uses "default" service name"
diff --git a/audio/2.0/default/service.cpp b/audio/2.0/default/service.cpp
index 8b608c8..5782c6e 100644
--- a/audio/2.0/default/service.cpp
+++ b/audio/2.0/default/service.cpp
@@ -38,9 +38,9 @@
 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");
diff --git a/audio/effect/2.0/vts/functional/audio_effect_hidl_hal_test.cpp b/audio/effect/2.0/vts/functional/audio_effect_hidl_hal_test.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/audio_effect_hidl_hal_test.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/Android.bp b/automotive/Android.bp
index 0302cd5..1f39e88 100644
--- a/automotive/Android.bp
+++ b/automotive/Android.bp
@@ -1,6 +1,5 @@
 // This is an autogenerated file, do not edit.
 subdirs = [
-    "vehicle",
     "vehicle/2.0",
     "vehicle/2.1",
 ]
diff --git a/automotive/vehicle/2.0/types.hal b/automotive/vehicle/2.0/types.hal
index 5e22364..8da0568 100644
--- a/automotive/vehicle/2.0/types.hal
+++ b/automotive/vehicle/2.0/types.hal
@@ -330,9 +330,12 @@
     /*
      * Fan speed setting
      *
+     * IVehicle#set may return StatusCode::NOT_AVAILABLE and IVehicle#get is not
+     * guaranteed to work if HVAC unit is off.  See HVAC_POWER_ON property for
+     * details.
+     *
      * @change_mode VehiclePropertyChangeMode:ON_CHANGE
      * @access VehiclePropertyAccess:READ_WRITE
-     * @allow_out_of_range_value : OFF
      */
     HVAC_FAN_SPEED = (
         0x0500
@@ -343,10 +346,13 @@
     /*
      * Fan direction setting
      *
+     * IVehicle#set may return StatusCode::NOT_AVAILABLE and IVehicle#get is not
+     * guaranteed to work if HVAC unit is off.  See HVAC_POWER_ON property for
+     * details.
+     *
      * @change_mode VehiclePropertyChangeMode:ON_CHANGE
      * @access VehiclePropertyAccess:READ_WRITE
      * @data_enum VehicleHvacFanDirection
-     * @allow_out_of_range_value : OFF
      */
     HVAC_FAN_DIRECTION = (
         0x0501
@@ -357,6 +363,10 @@
     /*
      * HVAC current temperature.
      *
+     * IVehicle#set may return StatusCode::NOT_AVAILABLE and IVehicle#get is not
+     * guaranteed to work if HVAC unit is off.  See HVAC_POWER_ON property for
+     * details.
+     *
      * @change_mode VehiclePropertyChangeMode:ON_CHANGE
      * @access VehiclePropertyAccess:READ_WRITE
      */
@@ -369,9 +379,12 @@
     /*
      * HVAC, target temperature set.
      *
+     * IVehicle#set may return StatusCode::NOT_AVAILABLE and IVehicle#get is not
+     * guaranteed to work if HVAC unit is off.  See HVAC_POWER_ON property for
+     * details.
+     *
      * @change_mode VehiclePropertyChangeMode:ON_CHANGE
      * @access VehiclePropertyAccess:READ_WRITE
-     * @allow_out_of_range_value : MIN / MAX / OFF
      */
     HVAC_TEMPERATURE_SET = (
         0x0503
@@ -382,6 +395,10 @@
     /*
      * On/off defrost
      *
+     * IVehicle#set may return StatusCode::NOT_AVAILABLE and IVehicle#get is not
+     * guaranteed to work if HVAC unit is off.  See HVAC_POWER_ON property for
+     * details.
+     *
      * @change_mode VehiclePropertyChangeMode:ON_CHANGE
      * @access VehiclePropertyAccess:READ_WRITE
      */
@@ -394,6 +411,10 @@
     /*
      * On/off AC
      *
+     * IVehicle#set may return StatusCode::NOT_AVAILABLE and IVehicle#get is not
+     * guaranteed to work if HVAC unit is off.  See HVAC_POWER_ON property for
+     * details.
+     *
      * @change_mode VehiclePropertyChangeMode:ON_CHANGE
      * @access VehiclePropertyAccess:READ_WRITE
      * @config_flags Supported zones
@@ -407,6 +428,10 @@
     /*
      * On/off max AC
      *
+     * IVehicle#set may return StatusCode::NOT_AVAILABLE and IVehicle#get is not
+     * guaranteed to work if HVAC unit is off.  See HVAC_POWER_ON property for
+     * details.
+     *
      * @change_mode VehiclePropertyChangeMode:ON_CHANGE
      * @access VehiclePropertyAccess:READ_WRITE
      */
@@ -419,6 +444,10 @@
     /*
      * On/off max defrost
      *
+     * IVehicle#set may return StatusCode::NOT_AVAILABLE and IVehicle#get is not
+     * guaranteed to work if HVAC unit is off.  See HVAC_POWER_ON property for
+     * details.
+     *
      * @change_mode VehiclePropertyChangeMode:ON_CHANGE
      * @access VehiclePropertyAccess:READ_WRITE
      */
@@ -431,6 +460,10 @@
     /*
      * On/off re-circulation
      *
+     * IVehicle#set may return StatusCode::NOT_AVAILABLE and IVehicle#get is not
+     * guaranteed to work if HVAC unit is off.  See HVAC_POWER_ON property for
+     * details.
+     *
      * @change_mode VehiclePropertyChangeMode:ON_CHANGE
      * @access VehiclePropertyAccess:READ_WRITE
      */
@@ -443,6 +476,10 @@
     /*
      * On/off dual. This must be defined per each row.
      *
+     * IVehicle#set may return StatusCode::NOT_AVAILABLE and IVehicle#get is not
+     * guaranteed to work if HVAC unit is off.  See HVAC_POWER_ON property for
+     * details.
+     *
      * @change_mode VehiclePropertyChangeMode:ON_CHANGE
      * @access VehiclePropertyAccess:READ_WRITE
      */
@@ -455,6 +492,10 @@
     /*
      * On/off automatic mode
      *
+     * IVehicle#set may return StatusCode::NOT_AVAILABLE and IVehicle#get is not
+     * guaranteed to work if HVAC unit is off.  See HVAC_POWER_ON property for
+     * details.
+     *
      * @change_mode VehiclePropertyChangeMode:ON_CHANGE
      * @access VehiclePropertyAccess:READ_WRITE
      */
@@ -475,6 +516,10 @@
      * min/max range defines the allowable range and number of steps in each
      * direction.
      *
+     * IVehicle#set may return StatusCode::NOT_AVAILABLE and IVehicle#get is not
+     * guaranteed to work if HVAC unit is off.  See HVAC_POWER_ON property for
+     * details.
+     *
      * @change_mode VehiclePropertyChangeMode:ON_CHANGE
      * @access VehiclePropertyAccess:READ_WRITE
      */
@@ -490,8 +535,12 @@
      * Increase values denote higher heating levels for side mirrors.
      * 0 indicates heating is turned off.
      *
-     * @change_mode VEHICLE_PROP_CHANGE_MODE_ON_CHANGE
-     * @access VEHICLE_PROP_ACCESS_READ_WRITE
+     * IVehicle#set may return StatusCode::NOT_AVAILABLE and IVehicle#get is not
+     * guaranteed to work if HVAC unit is off.  See HVAC_POWER_ON property for
+     * details.
+     *
+     * @change_mode VehiclePropertyChangeMode:ON_CHANGE
+     * @access VehiclePropertyAccess:READ_WRITE
      */
     HVAC_SIDE_MIRROR_HEAT = (
         0x050C
@@ -507,8 +556,12 @@
      * Negative value indicates cooling.
      * 0 indicates temperature control is off.
      *
-     * @change_mode VEHICLE_PROP_CHANGE_MODE_ON_CHANGE
-     * @access VEHICLE_PROP_ACCESS_READ_WRITE
+     * IVehicle#set may return StatusCode::NOT_AVAILABLE and IVehicle#get is not
+     * guaranteed to work if HVAC unit is off.  See HVAC_POWER_ON property for
+     * details.
+     *
+     * @change_mode VehiclePropertyChangeMode:ON_CHANGE
+     * @access VehiclePropertyAccess:READ_WRITE
      */
     HVAC_STEERING_WHEEL_TEMP = (
         0x050D
@@ -523,8 +576,11 @@
      * different unit from VehicleUnit enum.
      * This parameter affects all HVAC temperatures in the system.
      *
-     * @change_mode VEHICLE_PROP_CHANGE_MODE_ON_CHANGE
-     * @access VEHICLE_PROP_ACCESS_READ
+     * IVehicle#get is not guaranteed to work if HVAC unit is off.  See
+     * HVAC_POWER_ON property for details.
+     *
+     * @change_mode VehiclePropertyChangeMode:ON_CHANGE
+     * @access VehiclePropertyAccess:READ
      */
     HVAC_TEMPERATURE_UNITS = (
         0x050E
@@ -535,9 +591,11 @@
     /**
      * Actual fan speed
      *
-     * @change_mode VEHICLE_PROP_CHANGE_MODE_ON_CHANGE
-     * @access VEHICLE_PROP_ACCESS_READ
-     * @allow_out_of_range_value : OFF
+     * IVehicle#get is not guaranteed to work if HVAC unit is off.  See
+     * HVAC_POWER_ON property for details.
+     *
+     * @change_mode VehiclePropertyChangeMode:ON_CHANGE
+     * @access VehiclePropertyAccess:READ
      */
     HVAC_ACTUAL_FAN_SPEED_RPM = (
         0x050F
@@ -555,9 +613,8 @@
      *
      * 0x12 = (1 << 1) | (1 << 4)
      *
-     * @change_mode VEHICLE_PROP_CHANGE_MODE_STATIC
-     * @access VEHICLE_PROP_ACCESS_READ
-     * @allow_out_of_range_value : OFF
+     * @change_mode VehiclePropertyChangeMode:STATIC
+     * @access VehiclePropertyAccess:READ
      */
     HVAC_FAN_DIRECTION_AVAILABLE = (
         0x0511
diff --git a/automotive/vehicle/2.1/Android.bp b/automotive/vehicle/2.1/Android.bp
index 12bb4ed..dcf395c 100644
--- a/automotive/vehicle/2.1/Android.bp
+++ b/automotive/vehicle/2.1/Android.bp
@@ -13,8 +13,7 @@
     tools: ["hidl-gen"],
     cmd: "$(location hidl-gen) -o $(genDir) -Lc++ -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.automotive.vehicle@2.1",
     srcs: [
-        "types.hal",
-        "IVehicle.hal",
+        ":android.hardware.automotive.vehicle@2.1_hal",
     ],
     out: [
         "android/hardware/automotive/vehicle/2.1/types.cpp",
@@ -27,8 +26,7 @@
     tools: ["hidl-gen"],
     cmd: "$(location hidl-gen) -o $(genDir) -Lc++ -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.automotive.vehicle@2.1",
     srcs: [
-        "types.hal",
-        "IVehicle.hal",
+        ":android.hardware.automotive.vehicle@2.1_hal",
     ],
     out: [
         "android/hardware/automotive/vehicle/2.1/types.h",
diff --git a/automotive/vehicle/2.1/Android.mk b/automotive/vehicle/2.1/Android.mk
index f618268..2a8d1dd 100644
--- a/automotive/vehicle/2.1/Android.mk
+++ b/automotive/vehicle/2.1/Android.mk
@@ -8,7 +8,7 @@
 LOCAL_MODULE := android.hardware.automotive.vehicle@2.1-java
 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)
 
@@ -63,7 +63,7 @@
 LOCAL_MODULE := android.hardware.automotive.vehicle@2.1-java-static
 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/automotive/vehicle/2.1/default/Android.mk b/automotive/vehicle/2.1/default/Android.mk
index 1874cb3..65a4ba4 100644
--- a/automotive/vehicle/2.1/default/Android.mk
+++ b/automotive/vehicle/2.1/default/Android.mk
@@ -58,7 +58,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/automotive/vehicle/Android.bp b/automotive/vehicle/Android.bp
deleted file mode 100644
index c12cd4f..0000000
--- a/automotive/vehicle/Android.bp
+++ /dev/null
@@ -1,4 +0,0 @@
-// This is an autogenerated file, do not edit.
-subdirs = [
-    "2.0",
-]
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/Android.bp b/bluetooth/1.0/vts/functional/Android.bp
index 086ac99..2012c20 100644
--- a/bluetooth/1.0/vts/functional/Android.bp
+++ b/bluetooth/1.0/vts/functional/Android.bp
@@ -15,9 +15,9 @@
 //
 
 cc_test {
-    name: "bluetooth_hidl_hal_test",
+    name: "VtsHalBluetoothV1_0TargetTest",
     gtest: true,
-    srcs: ["bluetooth_hidl_hal_test.cpp"],
+    srcs: ["VtsHalBluetoothV1_0TargetTest.cpp"],
     shared_libs: [
         "libbase",
         "liblog",
diff --git a/bluetooth/1.0/vts/functional/bluetooth_hidl_hal_test.cpp b/bluetooth/1.0/vts/functional/VtsHalBluetoothV1_0TargetTest.cpp
similarity index 100%
rename from bluetooth/1.0/vts/functional/bluetooth_hidl_hal_test.cpp
rename to bluetooth/1.0/vts/functional/VtsHalBluetoothV1_0TargetTest.cpp
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/broadcastradio/1.0/default/Tuner.cpp b/broadcastradio/1.0/default/Tuner.cpp
index b564d5a..ff643b8 100644
--- a/broadcastradio/1.0/default/Tuner.cpp
+++ b/broadcastradio/1.0/default/Tuner.cpp
@@ -22,7 +22,7 @@
 #include "BroadcastRadio.h"
 #include "Tuner.h"
 #include "Utils.h"
-#include <system/radio_metadata.h>
+#include <system/RadioMetadataWrapper.h>
 
 namespace android {
 namespace hardware {
@@ -167,6 +167,7 @@
 Return<void> Tuner::getProgramInformation(getProgramInformation_cb _hidl_cb)  {
     int rc;
     radio_program_info_t halInfo;
+    RadioMetadataWrapper metadataWrapper(&halInfo.metadata);
     ProgramInfo info;
 
     ALOGV("%s", __FUNCTION__);
@@ -175,12 +176,10 @@
         goto exit;
     }
 
-    radio_metadata_allocate(&halInfo.metadata, 0, 0);
     rc = mHalTuner->get_program_information(mHalTuner, &halInfo);
     if (rc == 0) {
         Utils::convertProgramInfoFromHal(&info, &halInfo);
     }
-    radio_metadata_deallocate(halInfo.metadata);
 
 exit:
     _hidl_cb(Utils::convertHalResult(rc), info);
diff --git a/drm/1.0/ICryptoPlugin.hal b/drm/1.0/ICryptoPlugin.hal
index d66151e..ca8fa50 100644
--- a/drm/1.0/ICryptoPlugin.hal
+++ b/drm/1.0/ICryptoPlugin.hal
@@ -62,8 +62,16 @@
      * After the shared buffer base is established, the decrypt() method
      * receives SharedBuffer instances which specify the buffer address range
      * for decrypt source and destination addresses.
+     *
+     * There can be multiple shared buffers per crypto plugin. The buffers
+     * are distinguished by the bufferId.
+     *
+     * @param base the base IMemory of the memory buffer identified by
+     * bufferId
+     * @param bufferId identifies the specific shared buffer for which
+     * the base is being set.
      */
-    setSharedBufferBase(memory base);
+    setSharedBufferBase(memory base, uint32_t bufferId);
 
     /**
      * Decrypt an array of subsamples from the source memory buffer to the
diff --git a/drm/1.0/default/CryptoPlugin.cpp b/drm/1.0/default/CryptoPlugin.cpp
index fb61ede..4a4171b 100644
--- a/drm/1.0/default/CryptoPlugin.cpp
+++ b/drm/1.0/default/CryptoPlugin.cpp
@@ -49,8 +49,9 @@
         return toStatus(mLegacyPlugin->setMediaDrmSession(toVector(sessionId)));
     }
 
-    Return<void> CryptoPlugin::setSharedBufferBase(const hidl_memory& base) {
-        mSharedBufferBase = mapMemory(base);
+    Return<void> CryptoPlugin::setSharedBufferBase(const hidl_memory& base,
+            uint32_t bufferId) {
+        mSharedBufferMap[bufferId] = mapMemory(base);
         return Void();
     }
 
@@ -62,11 +63,19 @@
             const DestinationBuffer& destination,
             decrypt_cb _hidl_cb) {
 
-        if (mSharedBufferBase == NULL) {
-            _hidl_cb(Status::BAD_VALUE, 0, "decrypt buffer base not set");
+        if (mSharedBufferMap.find(source.bufferId) == mSharedBufferMap.end()) {
+            _hidl_cb(Status::ERROR_DRM_CANNOT_HANDLE, 0, "source decrypt buffer base not set");
             return Void();
         }
 
+        if (destination.type == BufferType::SHARED_MEMORY) {
+            const SharedBuffer& dest = destination.nonsecureMemory;
+            if (mSharedBufferMap.find(dest.bufferId) == mSharedBufferMap.end()) {
+                _hidl_cb(Status::ERROR_DRM_CANNOT_HANDLE, 0, "destination decrypt buffer base not set");
+                return Void();
+            }
+        }
+
         android::CryptoPlugin::Mode legacyMode;
         switch(mode) {
         case Mode::UNENCRYPTED:
@@ -97,20 +106,22 @@
         }
 
         AString detailMessage;
+        sp<IMemory> sourceBase = mSharedBufferMap[source.bufferId];
 
-        if (source.offset + offset + source.size > mSharedBufferBase->getSize()) {
+        if (source.offset + offset + source.size > sourceBase->getSize()) {
             _hidl_cb(Status::ERROR_DRM_CANNOT_HANDLE, 0, "invalid buffer size");
             return Void();
         }
 
         uint8_t *base = static_cast<uint8_t *>
-                (static_cast<void *>(mSharedBufferBase->getPointer()));
+                (static_cast<void *>(sourceBase->getPointer()));
         void *srcPtr = static_cast<void *>(base + source.offset + offset);
 
         void *destPtr = NULL;
         if (destination.type == BufferType::SHARED_MEMORY) {
             const SharedBuffer& destBuffer = destination.nonsecureMemory;
-            if (destBuffer.offset + destBuffer.size > mSharedBufferBase->getSize()) {
+            sp<IMemory> destBase = mSharedBufferMap[destBuffer.bufferId];
+            if (destBuffer.offset + destBuffer.size > destBase->getSize()) {
                 _hidl_cb(Status::ERROR_DRM_CANNOT_HANDLE, 0, "invalid buffer size");
                 return Void();
             }
diff --git a/drm/1.0/default/CryptoPlugin.h b/drm/1.0/default/CryptoPlugin.h
index f805f09..11cc2aa 100644
--- a/drm/1.0/default/CryptoPlugin.h
+++ b/drm/1.0/default/CryptoPlugin.h
@@ -57,8 +57,8 @@
     Return<Status> setMediaDrmSession(const hidl_vec<uint8_t>& sessionId)
             override;
 
-    Return<void> setSharedBufferBase(const ::android::hardware::hidl_memory& base)
-            override;
+    Return<void> setSharedBufferBase(const ::android::hardware::hidl_memory& base,
+        uint32_t bufferId) override;
 
     Return<void> decrypt(bool secure, const hidl_array<uint8_t, 16>& keyId,
             const hidl_array<uint8_t, 16>& iv, Mode mode, const Pattern& pattern,
@@ -68,7 +68,7 @@
 
 private:
     android::CryptoPlugin *mLegacyPlugin;
-    sp<IMemory> mSharedBufferBase;
+    std::map<uint32_t, sp<IMemory> > mSharedBufferMap;
 
     CryptoPlugin() = delete;
     CryptoPlugin(const CryptoPlugin &) = delete;
diff --git a/drm/1.0/types.hal b/drm/1.0/types.hal
index 33bbf9a..5273044 100644
--- a/drm/1.0/types.hal
+++ b/drm/1.0/types.hal
@@ -293,12 +293,18 @@
 };
 
 /**
- * A SharedBuffer describes a decrypt buffer which is defined by an offset and
- * a size.  The offset is relative to the shared memory base which is established
- * using setSharedMemoryBase().
+ * SharedBuffer describes a decrypt buffer which is defined by a bufferId, an
+ * offset and a size.  The offset is relative to the shared memory base for the
+ * memory region identified by bufferId, which is established by
+ * setSharedMemoryBase().
  */
 struct SharedBuffer {
     /**
+     * The unique buffer identifier
+     */
+    uint32_t bufferId;
+
+    /**
      * The offset from the shared memory base
      */
     uint64_t offset;
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/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/Android.mk b/gnss/1.0/default/Android.mk
index 73889b5..b4ef9a8 100644
--- a/gnss/1.0/default/Android.mk
+++ b/gnss/1.0/default/Android.mk
@@ -28,6 +28,8 @@
     android.hardware.gnss@1.0 \
     libhardware
 
+LOCAL_CFLAGS += -Werror
+
 include $(BUILD_SHARED_LIBRARY)
 
 include $(CLEAR_VARS)
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 95c5e60..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() {
@@ -115,7 +118,7 @@
 }
 
 // this can just return success, because threads are now set up on demand in the jni layer
-int32_t GnssBatching::setThreadEventCb(ThreadEvent event) {
+int32_t GnssBatching::setThreadEventCb(ThreadEvent /*event*/) {
     return FLP_RESULT_SUCCESS;
 }
 
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/graphics/composer/2.1/default/ComposerClient.cpp b/graphics/composer/2.1/default/ComposerClient.cpp
index 7a2cb25..72ba8f8 100644
--- a/graphics/composer/2.1/default/ComposerClient.cpp
+++ b/graphics/composer/2.1/default/ComposerClient.cpp
@@ -230,6 +230,8 @@
 
 ComposerClient::~ComposerClient()
 {
+    ALOGD("client destroyed");
+
     mHal.enableCallback(false);
     mHal.removeClient();
 
@@ -275,17 +277,23 @@
         }
     }
 
-    mCallback->onHotplug(display, connected);
+    auto ret = mCallback->onHotplug(display, connected);
+    ALOGE_IF(!ret.isOk(), "failed to send onHotplug: %s",
+            ret.description().c_str());
 }
 
 void ComposerClient::onRefresh(Display display)
 {
-    mCallback->onRefresh(display);
+    auto ret = mCallback->onRefresh(display);
+    ALOGE_IF(!ret.isOk(), "failed to send onRefresh: %s",
+            ret.description().c_str());
 }
 
 void ComposerClient::onVsync(Display display, int64_t timestamp)
 {
-    mCallback->onVsync(display, timestamp);
+    auto ret = mCallback->onVsync(display, timestamp);
+    ALOGE_IF(!ret.isOk(), "failed to send onVsync: %s",
+            ret.description().c_str());
 }
 
 Return<void> ComposerClient::registerCallback(
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/functional/Android.bp b/ir/1.0/vts/functional/Android.bp
index 1acd2a0..5689474 100644
--- a/ir/1.0/vts/functional/Android.bp
+++ b/ir/1.0/vts/functional/Android.bp
@@ -15,9 +15,9 @@
 //
 
 cc_test {
-    name: "ir_hidl_hal_test",
+    name: "VtsHalIrV1_0TargetTest",
     gtest: true,
-    srcs: ["ir_hidl_hal_test.cpp"],
+    srcs: ["VtsHalIrV1_0TargetTest.cpp"],
     shared_libs: [
         "libbase",
         "liblog",
diff --git a/ir/1.0/vts/functional/ir_hidl_hal_test.cpp b/ir/1.0/vts/functional/VtsHalIrV1_0TargetTest.cpp
similarity index 100%
rename from ir/1.0/vts/functional/ir_hidl_hal_test.cpp
rename to ir/1.0/vts/functional/VtsHalIrV1_0TargetTest.cpp
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/media/omx/1.0/IGraphicBufferSource.hal b/media/omx/1.0/IGraphicBufferSource.hal
index 9b3ab0c..4dbfd32 100644
--- a/media/omx/1.0/IGraphicBufferSource.hal
+++ b/media/omx/1.0/IGraphicBufferSource.hal
@@ -31,7 +31,7 @@
 
     configure(IOmxNode omxNode, Dataspace dataspace);
 
-    setSuspend(bool suspend);
+    setSuspend(bool suspend, int64_t timeUs);
 
     setRepeatPreviousFrameDelayUs(int64_t repeatAfterUs);
 
@@ -41,6 +41,8 @@
 
     setStartTimeUs(int64_t startTimeUs);
 
+    setStopTimeUs(int64_t stopTimeUs);
+
     setColorAspects(ColorAspects aspects);
 
     setTimeOffsetUs(int64_t timeOffsetUs);
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/functional/Android.bp b/nfc/1.0/vts/functional/Android.bp
index 0f9eb3d..080887f 100644
--- a/nfc/1.0/vts/functional/Android.bp
+++ b/nfc/1.0/vts/functional/Android.bp
@@ -15,9 +15,9 @@
 //
 
 cc_test {
-    name: "nfc_hidl_hal_test",
+    name: "VtsHalNfcV1_0TargetTest",
     gtest: true,
-    srcs: ["nfc_hidl_hal_test.cpp"],
+    srcs: ["VtsHalNfcV1_0TargetTest.cpp"],
     shared_libs: [
         "libbase",
         "liblog",
diff --git a/nfc/1.0/vts/functional/nfc_hidl_hal_test.cpp b/nfc/1.0/vts/functional/VtsHalNfcV1_0TargetTest.cpp
similarity index 100%
rename from nfc/1.0/vts/functional/nfc_hidl_hal_test.cpp
rename to nfc/1.0/vts/functional/VtsHalNfcV1_0TargetTest.cpp
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/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/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/functional/Android.bp b/radio/1.0/vts/functional/Android.bp
new file mode 100644
index 0000000..6615f03
--- /dev/null
+++ b/radio/1.0/vts/functional/Android.bp
@@ -0,0 +1,40 @@
+//
+// 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: "VtsHalRadioV1_0TargetTest",
+    gtest: true,
+    srcs: ["radio_hidl_hal_test.cpp",
+           "radio_response.cpp",
+           "radio_hidl_hal_icc.cpp",
+           "VtsHalRadioV1_0TargetTest.cpp"],
+    shared_libs: [
+        "libbase",
+        "liblog",
+        "libcutils",
+        "libhidlbase",
+        "libhidltransport",
+        "libhwbinder",
+        "libnativehelper",
+        "libutils",
+        "android.hardware.radio@1.0",
+    ],
+    static_libs: ["libgtest"],
+    cflags: [
+        "-O0",
+        "-g",
+    ],
+}
\ No newline at end of file
diff --git a/radio/1.0/vts/functional/VtsHalRadioV1_0TargetTest.cpp b/radio/1.0/vts/functional/VtsHalRadioV1_0TargetTest.cpp
new file mode 100644
index 0000000..d01adf2
--- /dev/null
+++ b/radio/1.0/vts/functional/VtsHalRadioV1_0TargetTest.cpp
@@ -0,0 +1,27 @@
+/*
+ * 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.
+ */
+
+#include<radio_hidl_hal_utils.h>
+
+int main(int argc, char** argv) {
+    ::testing::AddGlobalTestEnvironment(new RadioHidlEnvironment);
+    ::testing::InitGoogleTest(&argc, argv);
+
+    int status = RUN_ALL_TESTS();
+    LOG(INFO) << "Test result = " << status;
+
+    return status;
+}
\ No newline at end of file
diff --git a/radio/1.0/vts/functional/radio_hidl_hal_icc.cpp b/radio/1.0/vts/functional/radio_hidl_hal_icc.cpp
new file mode 100644
index 0000000..9b540e8
--- /dev/null
+++ b/radio/1.0/vts/functional/radio_hidl_hal_icc.cpp
@@ -0,0 +1,105 @@
+/*
+ * 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.
+ */
+
+ #include<radio_hidl_hal_utils.h>
+
+/*
+ * Test IRadio.getIccCardStatus() for the response returned.
+ */
+TEST_F(RadioHidlTest, getIccCardStatus) {
+    radio->getIccCardStatus(1);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(1, radioRsp->rspInfo.serial);
+    EXPECT_EQ(radioRsp->rspInfo.error, RadioError::NONE);
+
+    EXPECT_LE(radioRsp->cardStatus.applications.size(), (unsigned int) RadioConst::CARD_MAX_APPS);
+    EXPECT_LT(radioRsp->cardStatus.gsmUmtsSubscriptionAppIndex, (int) RadioConst::CARD_MAX_APPS);
+    EXPECT_LT(radioRsp->cardStatus.cdmaSubscriptionAppIndex, (int) RadioConst::CARD_MAX_APPS);
+    EXPECT_LT(radioRsp->cardStatus.imsSubscriptionAppIndex, (int) RadioConst::CARD_MAX_APPS);
+}
+
+/*
+ * Test IRadio.supplyIccPinForApp() for the response returned.
+ */
+TEST_F(RadioHidlTest, supplyIccPinForApp) {
+    radio->supplyIccPinForApp(2, hidl_string("test1"), hidl_string());
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(2, radioRsp->rspInfo.serial);
+
+    EXPECT_EQ(radioRsp->rspInfo.error, RadioError::PASSWORD_INCORRECT);
+}
+
+/*
+ * Test IRadio.supplyIccPukForApp() for the response returned.
+ */
+TEST_F(RadioHidlTest, supplyIccPukForApp) {
+    radio->supplyIccPukForApp(3, hidl_string("test1"), hidl_string("test2"), hidl_string());
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(3, radioRsp->rspInfo.serial);
+
+    EXPECT_EQ(radioRsp->rspInfo.error, RadioError::PASSWORD_INCORRECT);
+}
+
+/*
+ * Test IRadio.supplyIccPin2ForApp() for the response returned.
+ */
+TEST_F(RadioHidlTest, supplyIccPin2ForApp) {
+    radio->supplyIccPin2ForApp(4, hidl_string("test1"), hidl_string());
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(4, radioRsp->rspInfo.serial);
+
+    EXPECT_EQ(radioRsp->rspInfo.error, RadioError::PASSWORD_INCORRECT);
+}
+
+/*
+ * Test IRadio.supplyIccPuk2ForApp() for the response returned.
+ */
+TEST_F(RadioHidlTest, supplyIccPuk2ForApp) {
+    radio->supplyIccPuk2ForApp(5, hidl_string("test1"), hidl_string("test2"), hidl_string());
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(5, radioRsp->rspInfo.serial);
+
+    EXPECT_EQ(radioRsp->rspInfo.error, RadioError::PASSWORD_INCORRECT);
+}
+
+/*
+ * Test IRadio.changeIccPinForApp() for the response returned.
+ */
+TEST_F(RadioHidlTest, changeIccPinForApp) {
+    radio->changeIccPinForApp(6, hidl_string("test1"), hidl_string("test2"), hidl_string());
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(6, radioRsp->rspInfo.serial);
+
+    EXPECT_EQ(radioRsp->rspInfo.error, RadioError::PASSWORD_INCORRECT);
+}
+
+/*
+ * Test IRadio.changeIccPin2ForApp() for the response returned.
+ */
+TEST_F(RadioHidlTest, changeIccPin2ForApp) {
+    radio->changeIccPin2ForApp(7, hidl_string("test1"), hidl_string("test2"), hidl_string());
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(7, radioRsp->rspInfo.serial);
+
+    EXPECT_EQ(radioRsp->rspInfo.error, RadioError::PASSWORD_INCORRECT);
+}
diff --git a/radio/1.0/vts/functional/radio_hidl_hal_test.cpp b/radio/1.0/vts/functional/radio_hidl_hal_test.cpp
new file mode 100644
index 0000000..2a67954
--- /dev/null
+++ b/radio/1.0/vts/functional/radio_hidl_hal_test.cpp
@@ -0,0 +1,55 @@
+/*
+ * 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.
+ */
+
+#include<radio_hidl_hal_utils.h>
+
+void RadioHidlTest::SetUp() {
+    radio = IRadio::getService(hidl_string("rild"));
+    ASSERT_NE(radio, nullptr);
+
+    radioRsp = new RadioResponse(*this);
+    ASSERT_NE(radioRsp, nullptr);
+
+    count = 0;
+
+    radioInd = NULL;
+    radio->setResponseFunctions(radioRsp, radioInd);
+}
+
+void RadioHidlTest::TearDown() {
+}
+
+void RadioHidlTest::notify() {
+    std::unique_lock<std::mutex> lock(mtx);
+    count++;
+    cv.notify_one();
+}
+
+std::cv_status RadioHidlTest::wait() {
+    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(TIMEOUT_PERIOD));
+        if (status == std::cv_status::timeout) {
+            return status;
+        }
+    }
+    count--;
+    return status;
+}
+
diff --git a/radio/1.0/vts/functional/radio_hidl_hal_utils.h b/radio/1.0/vts/functional/radio_hidl_hal_utils.h
new file mode 100644
index 0000000..23b6ffa
--- /dev/null
+++ b/radio/1.0/vts/functional/radio_hidl_hal_utils.h
@@ -0,0 +1,453 @@
+/*
+ * 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.
+ */
+
+#include <android-base/logging.h>
+
+#include <gtest/gtest.h>
+#include <chrono>
+#include <condition_variable>
+#include <mutex>
+
+#include <android/hardware/radio/1.0/IRadio.h>
+#include <android/hardware/radio/1.0/IRadioResponse.h>
+#include <android/hardware/radio/1.0/IRadioIndication.h>
+#include <android/hardware/radio/1.0/types.h>
+
+using ::android::hardware::radio::V1_0::ActivityStatsInfo;
+using ::android::hardware::radio::V1_0::CardStatus;
+using ::android::hardware::radio::V1_0::Call;
+using ::android::hardware::radio::V1_0::CallForwardInfo;
+using ::android::hardware::radio::V1_0::CarrierRestrictions;
+using ::android::hardware::radio::V1_0::CdmaRoamingType;
+using ::android::hardware::radio::V1_0::CdmaBroadcastSmsConfigInfo;
+using ::android::hardware::radio::V1_0::CdmaSubscriptionSource;
+using ::android::hardware::radio::V1_0::CellInfo;
+using ::android::hardware::radio::V1_0::ClipStatus;
+using ::android::hardware::radio::V1_0::DataRegStateResult;
+using ::android::hardware::radio::V1_0::GsmBroadcastSmsConfigInfo;
+using ::android::hardware::radio::V1_0::HardwareConfig;
+using ::android::hardware::radio::V1_0::IccIoResult;
+using ::android::hardware::radio::V1_0::IRadio;
+using ::android::hardware::radio::V1_0::IRadioResponse;
+using ::android::hardware::radio::V1_0::IRadioIndication;
+using ::android::hardware::radio::V1_0::RadioConst;
+using ::android::hardware::radio::V1_0::RadioError;
+using ::android::hardware::radio::V1_0::RadioResponseInfo;
+using ::android::hardware::radio::V1_0::LastCallFailCauseInfo;
+using ::android::hardware::radio::V1_0::LceDataInfo;
+using ::android::hardware::radio::V1_0::LceStatusInfo;
+using ::android::hardware::radio::V1_0::NeighboringCell;
+using ::android::hardware::radio::V1_0::OperatorInfo;
+using ::android::hardware::radio::V1_0::PreferredNetworkType;
+using ::android::hardware::radio::V1_0::RadioBandMode;
+using ::android::hardware::radio::V1_0::RadioCapability;
+using ::android::hardware::radio::V1_0::RadioResponseType;
+using ::android::hardware::radio::V1_0::RadioTechnology;
+using ::android::hardware::radio::V1_0::RadioTechnologyFamily;
+using ::android::hardware::radio::V1_0::SendSmsResult;
+using ::android::hardware::radio::V1_0::SetupDataCallResult;
+using ::android::hardware::radio::V1_0::SignalStrength;
+using ::android::hardware::radio::V1_0::TtyMode;
+using ::android::hardware::radio::V1_0::VoiceRegStateResult;
+
+using ::android::hardware::hidl_string;
+using ::android::hardware::Return;
+using ::android::hardware::Void;
+using ::android::sp;
+
+#define TIMEOUT_PERIOD 20
+
+class RadioHidlTest;
+
+/* Callback class for radio response */
+class RadioResponse : public IRadioResponse {
+private:
+    RadioHidlTest& parent;
+
+public:
+    RadioResponseInfo rspInfo;
+    CardStatus cardStatus;
+
+    RadioResponse(RadioHidlTest& parent);
+
+    virtual ~RadioResponse() = default;
+
+    Return<void> getIccCardStatusResponse(const RadioResponseInfo& info,
+            const CardStatus& cardStatus);
+
+    Return<void> supplyIccPinForAppResponse(const RadioResponseInfo& info,
+            int32_t remainingRetries);
+
+    Return<void> supplyIccPukForAppResponse(const RadioResponseInfo& info,
+            int32_t remainingRetries);
+
+    Return<void> supplyIccPin2ForAppResponse(const RadioResponseInfo& info,
+            int32_t remainingRetries);
+
+    Return<void> supplyIccPuk2ForAppResponse(const RadioResponseInfo& info,
+            int32_t remainingRetries);
+
+    Return<void> changeIccPinForAppResponse(const RadioResponseInfo& info,
+            int32_t remainingRetries);
+
+    Return<void> changeIccPin2ForAppResponse(const RadioResponseInfo& info,
+            int32_t remainingRetries);
+
+    Return<void> supplyNetworkDepersonalizationResponse(
+            const RadioResponseInfo& info, int32_t remainingRetries);
+
+    Return<void> getCurrentCallsResponse(const RadioResponseInfo& info,
+            const ::android::hardware::hidl_vec<Call>& calls);
+
+    Return<void> dialResponse(const RadioResponseInfo& info);
+
+    Return<void> getIMSIForAppResponse(const RadioResponseInfo& info,
+            const ::android::hardware::hidl_string& imsi);
+
+    Return<void> hangupConnectionResponse(const RadioResponseInfo& info);
+
+    Return<void> hangupWaitingOrBackgroundResponse(
+            const RadioResponseInfo& info);
+
+    Return<void> hangupForegroundResumeBackgroundResponse(
+            const RadioResponseInfo& info);
+
+    Return<void> switchWaitingOrHoldingAndActiveResponse(
+            const RadioResponseInfo& info);
+
+    Return<void> conferenceResponse(const RadioResponseInfo& info);
+
+    Return<void> rejectCallResponse(const RadioResponseInfo& info);
+
+    Return<void> getLastCallFailCauseResponse(const RadioResponseInfo& info,
+            const LastCallFailCauseInfo& failCauseInfo);
+
+    Return<void> getSignalStrengthResponse(const RadioResponseInfo& info,
+            const SignalStrength& sigStrength);
+
+    Return<void> getVoiceRegistrationStateResponse(const RadioResponseInfo& info,
+            const VoiceRegStateResult& voiceRegResponse);
+
+    Return<void> getDataRegistrationStateResponse(const RadioResponseInfo& info,
+            const DataRegStateResult& dataRegResponse);
+
+    Return<void> getOperatorResponse(const RadioResponseInfo& info,
+            const ::android::hardware::hidl_string& longName,
+            const ::android::hardware::hidl_string& shortName,
+            const ::android::hardware::hidl_string& numeric);
+
+    Return<void> setRadioPowerResponse(const RadioResponseInfo& info);
+
+    Return<void> sendDtmfResponse(const RadioResponseInfo& info);
+
+    Return<void> sendSmsResponse(const RadioResponseInfo& info,
+            const SendSmsResult& sms);
+
+    Return<void> sendSMSExpectMoreResponse(const RadioResponseInfo& info,
+            const SendSmsResult& sms);
+
+    Return<void> setupDataCallResponse(const RadioResponseInfo& info,
+            const SetupDataCallResult& dcResponse);
+
+    Return<void> iccIOForAppResponse(const RadioResponseInfo& info,
+            const IccIoResult& iccIo);
+
+    Return<void> sendUssdResponse(const RadioResponseInfo& info);
+
+    Return<void> cancelPendingUssdResponse(const RadioResponseInfo& info);
+
+    Return<void> getClirResponse(const RadioResponseInfo& info, int32_t n, int32_t m);
+
+    Return<void> setClirResponse(const RadioResponseInfo& info);
+
+    Return<void> getCallForwardStatusResponse(const RadioResponseInfo& info,
+            const ::android::hardware::hidl_vec<CallForwardInfo>& call_forwardInfos);
+
+    Return<void> setCallForwardResponse(const RadioResponseInfo& info);
+
+    Return<void> getCallWaitingResponse(const RadioResponseInfo& info,
+            bool enable, int32_t serviceClass);
+
+    Return<void> setCallWaitingResponse(const RadioResponseInfo& info);
+
+    Return<void> acknowledgeLastIncomingGsmSmsResponse(const RadioResponseInfo& info);
+
+    Return<void> acceptCallResponse(const RadioResponseInfo& info);
+
+    Return<void> deactivateDataCallResponse(const RadioResponseInfo& info);
+
+    Return<void> getFacilityLockForAppResponse(const RadioResponseInfo& info,int32_t response);
+
+    Return<void> setFacilityLockForAppResponse(const RadioResponseInfo& info,int32_t retry);
+
+    Return<void> setBarringPasswordResponse(const RadioResponseInfo& info);
+
+    Return<void> getNetworkSelectionModeResponse(const RadioResponseInfo& info,bool manual);
+
+    Return<void> setNetworkSelectionModeAutomaticResponse(const RadioResponseInfo& info);
+
+    Return<void> setNetworkSelectionModeManualResponse(const RadioResponseInfo& info);
+
+    Return<void> getAvailableNetworksResponse(const RadioResponseInfo& info,
+            const ::android::hardware::hidl_vec<OperatorInfo>& networkInfos);
+
+    Return<void> startDtmfResponse(const RadioResponseInfo& info);
+
+    Return<void> stopDtmfResponse(const RadioResponseInfo& info);
+
+    Return<void> getBasebandVersionResponse(const RadioResponseInfo& info,
+            const ::android::hardware::hidl_string& version);
+
+    Return<void> separateConnectionResponse(const RadioResponseInfo& info);
+
+    Return<void> setMuteResponse(const RadioResponseInfo& info);
+
+    Return<void> getMuteResponse(const RadioResponseInfo& info, bool enable);
+
+    Return<void> getClipResponse(const RadioResponseInfo& info,ClipStatus status);
+
+    Return<void> getDataCallListResponse(const RadioResponseInfo& info,
+            const ::android::hardware::hidl_vec<SetupDataCallResult>& dcResponse);
+
+    Return<void> sendOemRilRequestRawResponse(const RadioResponseInfo& info,
+            const ::android::hardware::hidl_vec<uint8_t>& data);
+
+    Return<void> sendOemRilRequestStringsResponse(const RadioResponseInfo& info,
+            const ::android::hardware::hidl_vec<::android::hardware::hidl_string>& data);
+
+    Return<void> sendScreenStateResponse(const RadioResponseInfo& info);
+
+    Return<void> setSuppServiceNotificationsResponse(
+            const RadioResponseInfo& info);
+
+    Return<void> writeSmsToSimResponse(const RadioResponseInfo& info,int32_t index);
+
+    Return<void> deleteSmsOnSimResponse(const RadioResponseInfo& info);
+
+    Return<void> setBandModeResponse(const RadioResponseInfo& info);
+
+    Return<void> getAvailableBandModesResponse(const RadioResponseInfo& info,
+            const ::android::hardware::hidl_vec<RadioBandMode>& bandModes);
+
+    Return<void> sendEnvelopeResponse(const RadioResponseInfo& info,
+            const ::android::hardware::hidl_string& commandResponse);
+
+    Return<void> sendTerminalResponseToSimResponse(const RadioResponseInfo& info);
+
+    Return<void> handleStkCallSetupRequestFromSimResponse(
+            const RadioResponseInfo& info);
+
+    Return<void> explicitCallTransferResponse(const RadioResponseInfo& info);
+
+    Return<void> setPreferredNetworkTypeResponse(const RadioResponseInfo& info);
+
+    Return<void> getPreferredNetworkTypeResponse(const RadioResponseInfo& info,
+            PreferredNetworkType nwType);
+
+    Return<void> getNeighboringCidsResponse(const RadioResponseInfo& info,
+            const ::android::hardware::hidl_vec<NeighboringCell>& cells);
+
+    Return<void> setLocationUpdatesResponse(const RadioResponseInfo& info);
+
+    Return<void> setCdmaSubscriptionSourceResponse(const RadioResponseInfo& info);
+
+    Return<void> setCdmaRoamingPreferenceResponse(const RadioResponseInfo& info);
+
+    Return<void> getCdmaRoamingPreferenceResponse(const RadioResponseInfo& info,
+            CdmaRoamingType type);
+
+    Return<void> setTTYModeResponse(const RadioResponseInfo& info);
+
+    Return<void> getTTYModeResponse(const RadioResponseInfo& info, TtyMode mode);
+
+    Return<void> setPreferredVoicePrivacyResponse(const RadioResponseInfo& info);
+
+    Return<void> getPreferredVoicePrivacyResponse(const RadioResponseInfo& info, bool enable);
+
+    Return<void> sendCDMAFeatureCodeResponse(const RadioResponseInfo& info);
+
+    Return<void> sendBurstDtmfResponse(const RadioResponseInfo& info);
+
+    Return<void> sendCdmaSmsResponse(const RadioResponseInfo& info, const SendSmsResult& sms);
+
+    Return<void> acknowledgeLastIncomingCdmaSmsResponse(const RadioResponseInfo& info);
+
+    Return<void> getGsmBroadcastConfigResponse(const RadioResponseInfo& info,
+            const ::android::hardware::hidl_vec<GsmBroadcastSmsConfigInfo>& configs);
+
+    Return<void> setGsmBroadcastConfigResponse(const RadioResponseInfo& info);
+
+    Return<void> setGsmBroadcastActivationResponse(const RadioResponseInfo& info);
+
+    Return<void> getCdmaBroadcastConfigResponse(const RadioResponseInfo& info,
+            const ::android::hardware::hidl_vec<CdmaBroadcastSmsConfigInfo>& configs);
+
+    Return<void> setCdmaBroadcastConfigResponse(const RadioResponseInfo& info);
+
+    Return<void> setCdmaBroadcastActivationResponse(const RadioResponseInfo& info);
+
+    Return<void> getCDMASubscriptionResponse(const RadioResponseInfo& info,
+            const ::android::hardware::hidl_string& mdn,
+            const ::android::hardware::hidl_string& hSid,
+            const ::android::hardware::hidl_string& hNid,
+            const ::android::hardware::hidl_string& min,
+            const ::android::hardware::hidl_string& prl);
+
+    Return<void> writeSmsToRuimResponse(const RadioResponseInfo& info, uint32_t index);
+
+    Return<void> deleteSmsOnRuimResponse(const RadioResponseInfo& info);
+
+    Return<void> getDeviceIdentityResponse(const RadioResponseInfo& info,
+            const ::android::hardware::hidl_string& imei,
+            const ::android::hardware::hidl_string& imeisv,
+            const ::android::hardware::hidl_string& esn,
+            const ::android::hardware::hidl_string& meid);
+
+    Return<void> exitEmergencyCallbackModeResponse(const RadioResponseInfo& info);
+
+    Return<void> getSmscAddressResponse(const RadioResponseInfo& info,
+            const ::android::hardware::hidl_string& smsc);
+
+    Return<void> setSmscAddressResponse(const RadioResponseInfo& info);
+
+    Return<void> reportSmsMemoryStatusResponse(const RadioResponseInfo& info);
+
+    Return<void> reportStkServiceIsRunningResponse(const RadioResponseInfo& info);
+
+    Return<void> getCdmaSubscriptionSourceResponse(const RadioResponseInfo& info,
+            CdmaSubscriptionSource source);
+
+    Return<void> requestIsimAuthenticationResponse(const RadioResponseInfo& info,
+            const ::android::hardware::hidl_string& response);
+
+    Return<void> acknowledgeIncomingGsmSmsWithPduResponse(
+            const RadioResponseInfo& info);
+
+    Return<void> sendEnvelopeWithStatusResponse(const RadioResponseInfo& info,
+            const IccIoResult& iccIo);
+
+    Return<void> getVoiceRadioTechnologyResponse(const RadioResponseInfo& info,
+            RadioTechnology rat);
+
+    Return<void> getCellInfoListResponse(const RadioResponseInfo& info,
+            const ::android::hardware::hidl_vec<CellInfo>& cellInfo);
+
+    Return<void> setCellInfoListRateResponse(const RadioResponseInfo& info);
+
+    Return<void> setInitialAttachApnResponse(const RadioResponseInfo& info);
+
+    Return<void> getImsRegistrationStateResponse(const RadioResponseInfo& info,
+            bool isRegistered, RadioTechnologyFamily ratFamily);
+
+    Return<void> sendImsSmsResponse(const RadioResponseInfo& info,
+            const SendSmsResult& sms);
+
+    Return<void> iccTransmitApduBasicChannelResponse(
+            const RadioResponseInfo& info, const IccIoResult& result);
+
+    Return<void> iccOpenLogicalChannelResponse(const RadioResponseInfo& info,
+            int32_t channelId, const ::android::hardware::hidl_vec<int8_t>& selectResponse);
+
+    Return<void> iccCloseLogicalChannelResponse(const RadioResponseInfo& info);
+
+    Return<void> iccTransmitApduLogicalChannelResponse(
+            const RadioResponseInfo& info, const IccIoResult& result);
+
+    Return<void> nvReadItemResponse(const RadioResponseInfo& info,
+            const ::android::hardware::hidl_string& result);
+
+    Return<void> nvWriteItemResponse(const RadioResponseInfo& info);
+
+    Return<void> nvWriteCdmaPrlResponse(const RadioResponseInfo& info);
+
+    Return<void> nvResetConfigResponse(const RadioResponseInfo& info);
+
+    Return<void> setUiccSubscriptionResponse(const RadioResponseInfo& info);
+
+    Return<void> setDataAllowedResponse(const RadioResponseInfo& info);
+
+    Return<void> getHardwareConfigResponse(const RadioResponseInfo& info,
+            const ::android::hardware::hidl_vec<HardwareConfig>& config);
+
+    Return<void> requestIccSimAuthenticationResponse(
+            const RadioResponseInfo& info, const IccIoResult& result);
+
+    Return<void> setDataProfileResponse(const RadioResponseInfo& info);
+
+    Return<void> requestShutdownResponse(const RadioResponseInfo& info);
+
+    Return<void> getRadioCapabilityResponse(const RadioResponseInfo& info,
+            const RadioCapability& rc);
+
+    Return<void> setRadioCapabilityResponse(const RadioResponseInfo& info,
+            const RadioCapability& rc);
+
+    Return<void> startLceServiceResponse(const RadioResponseInfo& info,
+            const LceStatusInfo& statusInfo);
+
+    Return<void> stopLceServiceResponse(const RadioResponseInfo& info,
+            const LceStatusInfo& statusInfo);
+
+    Return<void> pullLceDataResponse(const RadioResponseInfo& info,
+            const LceDataInfo& lceInfo);
+
+    Return<void> getModemActivityInfoResponse(const RadioResponseInfo& info,
+            const ActivityStatsInfo& activityInfo);
+
+    Return<void> setAllowedCarriersResponse(const RadioResponseInfo& info,
+            int32_t numAllowed);
+
+    Return<void> getAllowedCarriersResponse(const RadioResponseInfo& info,
+            bool allAllowed, const CarrierRestrictions& carriers);
+
+    Return<void> sendDeviceStateResponse(const RadioResponseInfo& info);
+
+    Return<void> setIndicationFilterResponse(const RadioResponseInfo& info);
+
+    Return<void> setSimCardPowerResponse(const RadioResponseInfo& info);
+
+    Return<void> acknowledgeRequest(int32_t serial);
+};
+
+// The main test class for Radio HIDL.
+class RadioHidlTest : public ::testing::Test {
+private:
+    std::mutex mtx;
+    std::condition_variable cv;
+    int count;
+
+public:
+    virtual void SetUp() override;
+
+    virtual void TearDown() override;
+
+    /* Used as a mechanism to inform the test about data/event callback */
+    void notify();
+
+    /* Test code calls this function to wait for response */
+    std::cv_status wait();
+
+    sp<IRadio> radio;
+    sp<RadioResponse> radioRsp;
+    sp<IRadioIndication> radioInd;
+};
+
+// A class for test environment setup
+class RadioHidlEnvironment : public ::testing::Environment {
+public:
+    virtual void SetUp() {}
+    virtual void TearDown() {}
+};
diff --git a/radio/1.0/vts/functional/radio_response.cpp b/radio/1.0/vts/functional/radio_response.cpp
new file mode 100644
index 0000000..b2a74f4
--- /dev/null
+++ b/radio/1.0/vts/functional/radio_response.cpp
@@ -0,0 +1,665 @@
+/*
+ * 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.
+ */
+
+#include<radio_hidl_hal_utils.h>
+
+RadioResponse::RadioResponse(RadioHidlTest& parent) : parent(parent) {
+}
+
+Return<void> RadioResponse::getIccCardStatusResponse(
+        const RadioResponseInfo& info, const CardStatus& card_status) {
+    rspInfo = info;
+    cardStatus = card_status;
+    parent.notify();
+    return Void();
+}
+
+Return<void> RadioResponse::supplyIccPinForAppResponse(
+        const RadioResponseInfo& info, int32_t remainingRetries) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
+}
+
+Return<void> RadioResponse::supplyIccPukForAppResponse(
+        const RadioResponseInfo& info, int32_t remainingRetries) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
+}
+
+Return<void> RadioResponse::supplyIccPin2ForAppResponse(
+        const RadioResponseInfo& info, int32_t remainingRetries) {
+  rspInfo = info;
+  parent.notify();
+  return Void();
+}
+
+Return<void> RadioResponse::supplyIccPuk2ForAppResponse(
+        const RadioResponseInfo& info, int32_t remainingRetries) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
+}
+
+Return<void> RadioResponse::changeIccPinForAppResponse(
+        const RadioResponseInfo& info, int32_t remainingRetries) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
+}
+
+Return<void> RadioResponse::changeIccPin2ForAppResponse(
+        const RadioResponseInfo& info, int32_t remaining_retries) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
+}
+
+Return<void> RadioResponse::supplyNetworkDepersonalizationResponse(
+        const RadioResponseInfo& info, int32_t remainingRetries) {
+    return Void();
+}
+
+Return<void> RadioResponse::getCurrentCallsResponse(
+        const RadioResponseInfo& info, const ::android::hardware::hidl_vec<Call>& calls) {
+    return Void();
+}
+
+Return<void> RadioResponse::dialResponse(const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::getIMSIForAppResponse(
+        const RadioResponseInfo& info, const ::android::hardware::hidl_string& imsi) {
+    return Void();
+}
+
+Return<void> RadioResponse::hangupConnectionResponse(
+        const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::hangupWaitingOrBackgroundResponse(
+        const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::hangupForegroundResumeBackgroundResponse(
+        const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::switchWaitingOrHoldingAndActiveResponse(
+        const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::conferenceResponse(
+        const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::rejectCallResponse(
+        const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::getLastCallFailCauseResponse(
+        const RadioResponseInfo& info, const LastCallFailCauseInfo& failCauseInfo) {
+    return Void();
+}
+
+Return<void> RadioResponse::getSignalStrengthResponse(
+        const RadioResponseInfo& info, const SignalStrength& sig_strength) {
+    return Void();
+}
+
+Return<void> RadioResponse::getVoiceRegistrationStateResponse(
+        const RadioResponseInfo& info, const VoiceRegStateResult& voiceRegResponse) {
+    return Void();
+}
+
+Return<void> RadioResponse::getDataRegistrationStateResponse(
+        const RadioResponseInfo& info, const DataRegStateResult& dataRegResponse) {
+    return Void();
+}
+
+Return<void> RadioResponse::getOperatorResponse(
+        const RadioResponseInfo& info, const ::android::hardware::hidl_string& longName,
+        const ::android::hardware::hidl_string& shortName,
+        const ::android::hardware::hidl_string& numeric) {
+    return Void();
+}
+
+Return<void> RadioResponse::setRadioPowerResponse(const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::sendDtmfResponse(const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::sendSmsResponse(const RadioResponseInfo& info,
+        const SendSmsResult& sms) {
+    return Void();
+}
+
+Return<void> RadioResponse::sendSMSExpectMoreResponse(
+        const RadioResponseInfo& info, const SendSmsResult& sms) {
+    return Void();
+}
+
+Return<void> RadioResponse::setupDataCallResponse(
+        const RadioResponseInfo& info, const SetupDataCallResult& dcResponse) {
+    return Void();
+}
+
+Return<void> RadioResponse::iccIOForAppResponse(
+        const RadioResponseInfo& info, const IccIoResult& iccIo) {
+    return Void();
+}
+
+Return<void> RadioResponse::sendUssdResponse(const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::cancelPendingUssdResponse(const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::getClirResponse(const RadioResponseInfo& info, int32_t n, int32_t m) {
+    return Void();
+}
+
+Return<void> RadioResponse::setClirResponse(const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::getCallForwardStatusResponse(
+        const RadioResponseInfo& info, const ::android::hardware::hidl_vec<CallForwardInfo>&
+        callForwardInfos) {
+    return Void();
+}
+
+Return<void> RadioResponse::setCallForwardResponse(const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::getCallWaitingResponse(
+        const RadioResponseInfo& info, bool enable, int32_t serviceClass) {
+    return Void();
+}
+
+Return<void> RadioResponse::setCallWaitingResponse(const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::acknowledgeLastIncomingGsmSmsResponse(const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::acceptCallResponse(const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::deactivateDataCallResponse(const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::getFacilityLockForAppResponse(const RadioResponseInfo& info,
+        int32_t response) {
+    return Void();
+}
+
+Return<void> RadioResponse::setFacilityLockForAppResponse(const RadioResponseInfo& info,
+        int32_t retry) {
+    return Void();
+}
+
+Return<void> RadioResponse::setBarringPasswordResponse(const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::getNetworkSelectionModeResponse(
+        const RadioResponseInfo& info, bool manual) {
+    return Void();
+}
+
+Return<void> RadioResponse::setNetworkSelectionModeAutomaticResponse(
+        const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::setNetworkSelectionModeManualResponse(const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::getAvailableNetworksResponse(
+        const RadioResponseInfo& info,
+        const ::android::hardware::hidl_vec<OperatorInfo>& networkInfos) {
+    return Void();
+}
+
+Return<void> RadioResponse::startDtmfResponse(
+        const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::stopDtmfResponse(
+        const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::getBasebandVersionResponse(
+        const RadioResponseInfo& info, const ::android::hardware::hidl_string& version) {
+    return Void();
+}
+
+Return<void> RadioResponse::separateConnectionResponse(const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::setMuteResponse(const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::getMuteResponse(const RadioResponseInfo& info, bool enable) {
+    return Void();
+}
+
+Return<void> RadioResponse::getClipResponse(const RadioResponseInfo& info, ClipStatus status) {
+    return Void();
+}
+
+Return<void> RadioResponse::getDataCallListResponse(
+        const RadioResponseInfo& info,
+        const ::android::hardware::hidl_vec<SetupDataCallResult>& dcResponse) {
+    return Void();
+}
+
+Return<void> RadioResponse::sendOemRilRequestRawResponse(
+        const RadioResponseInfo& info,
+        const ::android::hardware::hidl_vec<uint8_t>& data) {
+    return Void();
+}
+
+Return<void> RadioResponse::sendOemRilRequestStringsResponse(
+        const RadioResponseInfo& info,
+        const ::android::hardware::hidl_vec<::android::hardware::hidl_string>& data) {
+    return Void();
+}
+
+Return<void> RadioResponse::sendScreenStateResponse(
+        const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::setSuppServiceNotificationsResponse(
+        const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::writeSmsToSimResponse(
+        const RadioResponseInfo& info, int32_t index) {
+    return Void();
+}
+
+Return<void> RadioResponse::deleteSmsOnSimResponse(
+        const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::setBandModeResponse(const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::getAvailableBandModesResponse(
+        const RadioResponseInfo& info,
+        const ::android::hardware::hidl_vec<RadioBandMode>& bandModes) {
+    return Void();
+}
+
+Return<void> RadioResponse::sendEnvelopeResponse(const RadioResponseInfo& info,
+        const ::android::hardware::hidl_string& commandResponse) {
+    return Void();
+}
+
+Return<void> RadioResponse::sendTerminalResponseToSimResponse(const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::handleStkCallSetupRequestFromSimResponse(
+        const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::explicitCallTransferResponse(const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::setPreferredNetworkTypeResponse(const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::getPreferredNetworkTypeResponse(
+        const RadioResponseInfo& info, PreferredNetworkType nw_type) {
+    return Void();
+}
+
+Return<void> RadioResponse::getNeighboringCidsResponse(
+        const RadioResponseInfo& info,
+        const ::android::hardware::hidl_vec<NeighboringCell>& cells) {
+    return Void();
+}
+
+Return<void> RadioResponse::setLocationUpdatesResponse(
+        const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::setCdmaSubscriptionSourceResponse(const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::setCdmaRoamingPreferenceResponse(const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::getCdmaRoamingPreferenceResponse(
+        const RadioResponseInfo& info, CdmaRoamingType type) {
+    return Void();
+}
+
+Return<void> RadioResponse::setTTYModeResponse(const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::getTTYModeResponse(const RadioResponseInfo& info, TtyMode mode) {
+    return Void();
+}
+
+Return<void> RadioResponse::setPreferredVoicePrivacyResponse(const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::getPreferredVoicePrivacyResponse(
+        const RadioResponseInfo& info, bool enable) {
+    return Void();
+}
+
+Return<void> RadioResponse::sendCDMAFeatureCodeResponse(const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::sendBurstDtmfResponse(const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::sendCdmaSmsResponse(
+        const RadioResponseInfo& info, const SendSmsResult& sms) {
+    return Void();
+}
+
+Return<void> RadioResponse::acknowledgeLastIncomingCdmaSmsResponse(
+        const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::getGsmBroadcastConfigResponse(
+        const RadioResponseInfo& info,
+        const ::android::hardware::hidl_vec<GsmBroadcastSmsConfigInfo>& configs) {
+    return Void();
+}
+
+Return<void> RadioResponse::setGsmBroadcastConfigResponse(const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::setGsmBroadcastActivationResponse(const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::getCdmaBroadcastConfigResponse(
+        const RadioResponseInfo& info,
+        const ::android::hardware::hidl_vec<CdmaBroadcastSmsConfigInfo>& configs) {
+    return Void();
+}
+
+Return<void> RadioResponse::setCdmaBroadcastConfigResponse(const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::setCdmaBroadcastActivationResponse(const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::getCDMASubscriptionResponse(
+        const RadioResponseInfo& info, const ::android::hardware::hidl_string& mdn,
+        const ::android::hardware::hidl_string& hSid, const ::android::hardware::hidl_string& hNid,
+        const ::android::hardware::hidl_string& min,
+        const ::android::hardware::hidl_string& prl) {
+    return Void();
+}
+
+Return<void> RadioResponse::writeSmsToRuimResponse(
+        const RadioResponseInfo& info, uint32_t index) {
+    return Void();
+}
+
+Return<void> RadioResponse::deleteSmsOnRuimResponse(
+        const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::getDeviceIdentityResponse(
+        const RadioResponseInfo& info, const ::android::hardware::hidl_string& imei,
+        const ::android::hardware::hidl_string& imeisv, const ::android::hardware::hidl_string& esn,
+        const ::android::hardware::hidl_string& meid) {
+    return Void();
+}
+
+Return<void> RadioResponse::exitEmergencyCallbackModeResponse(const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::getSmscAddressResponse(
+        const RadioResponseInfo& info, const ::android::hardware::hidl_string& smsc) {
+    return Void();
+}
+
+Return<void> RadioResponse::setSmscAddressResponse(const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::reportSmsMemoryStatusResponse(const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::reportStkServiceIsRunningResponse(const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::getCdmaSubscriptionSourceResponse(
+        const RadioResponseInfo& info, CdmaSubscriptionSource source) {
+    return Void();
+}
+
+Return<void> RadioResponse::requestIsimAuthenticationResponse(
+        const RadioResponseInfo& info, const ::android::hardware::hidl_string& response) {
+    return Void();
+}
+
+Return<void> RadioResponse::acknowledgeIncomingGsmSmsWithPduResponse(
+        const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::sendEnvelopeWithStatusResponse(
+        const RadioResponseInfo& info, const IccIoResult& iccIo) {
+    return Void();
+}
+
+Return<void> RadioResponse::getVoiceRadioTechnologyResponse(
+        const RadioResponseInfo& info, RadioTechnology rat) {
+    return Void();
+}
+
+Return<void> RadioResponse::getCellInfoListResponse(
+        const RadioResponseInfo& info, const ::android::hardware::hidl_vec<CellInfo>& cellInfo) {
+    return Void();
+}
+
+Return<void> RadioResponse::setCellInfoListRateResponse(const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::setInitialAttachApnResponse(const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::getImsRegistrationStateResponse(
+        const RadioResponseInfo& info, bool isRegistered, RadioTechnologyFamily ratFamily) {
+    return Void();
+}
+
+Return<void> RadioResponse::sendImsSmsResponse(
+        const RadioResponseInfo& info, const SendSmsResult& sms) {
+    return Void();
+}
+
+Return<void> RadioResponse::iccTransmitApduBasicChannelResponse(
+        const RadioResponseInfo& info, const IccIoResult& result) {
+    return Void();
+}
+
+Return<void> RadioResponse::iccOpenLogicalChannelResponse(
+        const RadioResponseInfo& info, int32_t channelId,
+        const ::android::hardware::hidl_vec<int8_t>& selectResponse) {
+    return Void();
+}
+
+Return<void> RadioResponse::iccCloseLogicalChannelResponse(const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::iccTransmitApduLogicalChannelResponse(
+        const RadioResponseInfo& info, const IccIoResult& result) {
+    return Void();
+}
+
+Return<void> RadioResponse::nvReadItemResponse(
+        const RadioResponseInfo& info, const ::android::hardware::hidl_string& result) {
+    return Void();
+}
+
+Return<void> RadioResponse::nvWriteItemResponse(const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::nvWriteCdmaPrlResponse(const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::nvResetConfigResponse(const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::setUiccSubscriptionResponse(const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::setDataAllowedResponse(const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::getHardwareConfigResponse(
+        const RadioResponseInfo& info,
+        const ::android::hardware::hidl_vec<HardwareConfig>& config) {
+    return Void();
+}
+
+Return<void> RadioResponse::requestIccSimAuthenticationResponse(
+        const RadioResponseInfo& info, const IccIoResult& result) {
+    return Void();
+}
+
+Return<void> RadioResponse::setDataProfileResponse(const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::requestShutdownResponse(const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::getRadioCapabilityResponse(
+        const RadioResponseInfo& info, const RadioCapability& rc) {
+    return Void();
+}
+
+Return<void> RadioResponse::setRadioCapabilityResponse(
+        const RadioResponseInfo& info, const RadioCapability& rc) {
+    return Void();
+}
+
+Return<void> RadioResponse::startLceServiceResponse(
+        const RadioResponseInfo& info, const LceStatusInfo& statusInfo) {
+    return Void();
+}
+
+Return<void> RadioResponse::stopLceServiceResponse(
+        const RadioResponseInfo& info, const LceStatusInfo& statusInfo) {
+    return Void();
+}
+
+Return<void> RadioResponse::pullLceDataResponse(
+        const RadioResponseInfo& info, const LceDataInfo& lceInfo) {
+    return Void();
+}
+
+Return<void> RadioResponse::getModemActivityInfoResponse(
+        const RadioResponseInfo& info, const ActivityStatsInfo& activityInfo) {
+    return Void();
+}
+
+Return<void> RadioResponse::setAllowedCarriersResponse(
+        const RadioResponseInfo& info, int32_t numAllowed) {
+    return Void();
+}
+
+Return<void> RadioResponse::getAllowedCarriersResponse(
+        const RadioResponseInfo& info, bool allAllowed, const CarrierRestrictions& carriers) {
+    return Void();
+}
+
+Return<void> RadioResponse::sendDeviceStateResponse(
+        const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::setIndicationFilterResponse(
+        const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::setSimCardPowerResponse(
+        const RadioResponseInfo& info) {
+    return Void();
+}
+
+Return<void> RadioResponse::acknowledgeRequest(int32_t serial) {
+    return Void();
+}
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 bbb3e4b..33f70eb 100644
--- a/radio/Android.bp
+++ b/radio/Android.bp
@@ -1,4 +1,5 @@
 // This is an autogenerated file, do not edit.
 subdirs = [
     "1.0",
+    "1.0/vts/functional",
 ]
diff --git a/renderscript/1.0/default/Context.cpp b/renderscript/1.0/default/Context.cpp
index 5a09cf9..4e0964e 100644
--- a/renderscript/1.0/default/Context.cpp
+++ b/renderscript/1.0/default/Context.cpp
@@ -73,30 +73,30 @@
     return rs_to_hidl<Type>(_type);
 }
 
-Return<Allocation> Context::allocationCreateTyped(Type type, AllocationMipmapControl mips, int32_t usage, Ptr ptr) {
+Return<Allocation> Context::allocationCreateTyped(Type type, AllocationMipmapControl amips, int32_t usage, Ptr ptr) {
     RsType _type = hidl_to_rs<RsType>(type);
-    RsAllocationMipmapControl _mips = static_cast<RsAllocationMipmapControl>(mips);
+    RsAllocationMipmapControl _amips = static_cast<RsAllocationMipmapControl>(amips);
     uint32_t _usage = usage;
     uintptr_t _ptr = hidl_to_rs<uintptr_t>(ptr);
-    RsAllocation _allocation = Device::getHal().AllocationCreateTyped(mContext, _type, _mips, _usage, _ptr);
+    RsAllocation _allocation = Device::getHal().AllocationCreateTyped(mContext, _type, _amips, _usage, _ptr);
     return rs_to_hidl<Allocation>(_allocation);
 }
 
-Return<Allocation> Context::allocationCreateFromBitmap(Type type, AllocationMipmapControl mips, const hidl_vec<uint8_t>& bitmap, int32_t usage) {
+Return<Allocation> Context::allocationCreateFromBitmap(Type type, AllocationMipmapControl amips, const hidl_vec<uint8_t>& bitmap, int32_t usage) {
     RsType _type = hidl_to_rs<RsType>(type);
-    RsAllocationMipmapControl _mips = static_cast<RsAllocationMipmapControl>(mips);
+    RsAllocationMipmapControl _amips = static_cast<RsAllocationMipmapControl>(amips);
     const hidl_vec<uint8_t>& _bitmap = bitmap;
     uint32_t _usage = usage;
-    RsAllocation _allocation = Device::getHal().AllocationCreateFromBitmap(mContext, _type, _mips, _bitmap.data(), _bitmap.size(), _usage);
+    RsAllocation _allocation = Device::getHal().AllocationCreateFromBitmap(mContext, _type, _amips, _bitmap.data(), _bitmap.size(), _usage);
     return rs_to_hidl<Allocation>(_allocation);
 }
 
-Return<Allocation> Context::allocationCubeCreateFromBitmap(Type type, AllocationMipmapControl mips, const hidl_vec<uint8_t>& bitmap, int32_t usage) {
+Return<Allocation> Context::allocationCubeCreateFromBitmap(Type type, AllocationMipmapControl amips, const hidl_vec<uint8_t>& bitmap, int32_t usage) {
     RsType _type = hidl_to_rs<RsType>(type);
-    RsAllocationMipmapControl _mips = static_cast<RsAllocationMipmapControl>(mips);
+    RsAllocationMipmapControl _amips = static_cast<RsAllocationMipmapControl>(amips);
     const hidl_vec<uint8_t>& _bitmap = bitmap;
     uint32_t _usage = usage;
-    RsAllocation _allocation = Device::getHal().AllocationCubeCreateFromBitmap(mContext, _type, _mips, _bitmap.data(), _bitmap.size(), _usage);
+    RsAllocation _allocation = Device::getHal().AllocationCubeCreateFromBitmap(mContext, _type, _amips, _bitmap.data(), _bitmap.size(), _usage);
     return rs_to_hidl<Allocation>(_allocation);
 }
 
diff --git a/renderscript/1.0/default/Context.h b/renderscript/1.0/default/Context.h
index 38c45c5..d8bfe4f 100644
--- a/renderscript/1.0/default/Context.h
+++ b/renderscript/1.0/default/Context.h
@@ -40,9 +40,9 @@
     Return<Allocation> allocationAdapterCreate(Type type, Allocation baseAlloc) override;
     Return<void> allocationAdapterOffset(Allocation alloc, const hidl_vec<uint32_t>& offsets) override;
     Return<Type> allocationGetType(Allocation allocation) override;
-    Return<Allocation> allocationCreateTyped(Type type, AllocationMipmapControl mips, int32_t usage, Ptr ptr) override;
-    Return<Allocation> allocationCreateFromBitmap(Type type, AllocationMipmapControl mips, const hidl_vec<uint8_t>& bitmap, int32_t usage) override;
-    Return<Allocation> allocationCubeCreateFromBitmap(Type type, AllocationMipmapControl mips, const hidl_vec<uint8_t>& bitmap, int32_t usage) override;
+    Return<Allocation> allocationCreateTyped(Type type, AllocationMipmapControl amips, int32_t usage, Ptr ptr) override;
+    Return<Allocation> allocationCreateFromBitmap(Type type, AllocationMipmapControl amips, const hidl_vec<uint8_t>& bitmap, int32_t usage) override;
+    Return<Allocation> allocationCubeCreateFromBitmap(Type type, AllocationMipmapControl amips, const hidl_vec<uint8_t>& bitmap, int32_t usage) override;
     Return<NativeWindow> allocationGetNativeWindow(Allocation allocation) override;
     Return<void> allocationSetNativeWindow(Allocation allocation, NativeWindow nativewindow) override;
     Return<void> allocationSetupBufferQueue(Allocation alloc, uint32_t numBuffer) override;
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/wifi/1.0/IWifiNanIfaceEventCallback.hal b/wifi/1.0/IWifiNanIfaceEventCallback.hal
index 80d67ce..dd956d6 100644
--- a/wifi/1.0/IWifiNanIfaceEventCallback.hal
+++ b/wifi/1.0/IWifiNanIfaceEventCallback.hal
@@ -141,6 +141,7 @@
    *        |NanStatusType.INTERNAL_FAILURE|
    *        |NanStatusType.INVALID_SESSION_ID|
    *        |NanStatusType.INVALID_PEER_ID|
+   *        |NanStatusType.FOLLOWUP_TX_QUEUE_FULL|
    */
   oneway notifyTransmitFollowupResponse(CommandIdShort id, WifiNanStatus status);
 
@@ -281,8 +282,9 @@
    *
    * @param cmdId command Id corresponding to the original |transmitFollowupRequest| request.
    * @param status WifiNanStatus of the operation.  Possible status codes are:
+   *               |NanStatusType.SUCCESS|
    *               |NanStatusType.NO_OTA_ACK|
-   *               |NanStatusType.FOLLOWUP_TX_QUEUE_FULL|
+   *               |NanStatusType.PROTOCOL_FAILURE|
    */
   oneway eventTransmitFollowup(CommandIdShort id, WifiNanStatus status);
 
diff --git a/wifi/1.0/default/hidl_callback_util.h b/wifi/1.0/default/hidl_callback_util.h
new file mode 100644
index 0000000..a1c6819
--- /dev/null
+++ b/wifi/1.0/default/hidl_callback_util.h
@@ -0,0 +1,123 @@
+/*
+ * 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.
+ */
+
+#ifndef HIDL_CALLBACK_UTIL_H_
+#define HIDL_CALLBACK_UTIL_H_
+
+#include <set>
+
+#include <hidl/HidlSupport.h>
+
+namespace {
+// Type of callback invoked by the death handler.
+using on_death_cb_function = std::function<void(uint64_t)>;
+
+// Private class used to keep track of death of individual
+// callbacks stored in HidlCallbackHandler.
+template <typename CallbackType>
+class HidlDeathHandler : public android::hardware::hidl_death_recipient {
+ public:
+  HidlDeathHandler(const on_death_cb_function& user_cb_function)
+      : cb_function_(user_cb_function) {}
+  ~HidlDeathHandler() = default;
+
+  // Death notification for callbacks.
+  void serviceDied(
+      uint64_t cookie,
+      const android::wp<android::hidl::base::V1_0::IBase>& /* who */) override {
+    cb_function_(cookie);
+  }
+
+ private:
+  on_death_cb_function cb_function_;
+
+  DISALLOW_COPY_AND_ASSIGN(HidlDeathHandler);
+};
+}  // namespace
+
+namespace android {
+namespace hardware {
+namespace wifi {
+namespace V1_0 {
+namespace implementation {
+namespace hidl_callback_util {
+template <typename CallbackType>
+// Provides a class to manage callbacks for the various HIDL interfaces and
+// handle the death of the process hosting each callback.
+class HidlCallbackHandler {
+ public:
+  HidlCallbackHandler()
+      : death_handler_(new HidlDeathHandler<CallbackType>(
+            std::bind(&HidlCallbackHandler::onObjectDeath,
+                      this,
+                      std::placeholders::_1))) {}
+  ~HidlCallbackHandler() = default;
+
+  bool addCallback(const sp<CallbackType>& cb) {
+    // TODO(b/33818800): Can't compare proxies yet. So, use the cookie
+    // (callback proxy's raw pointer) to track the death of individual clients.
+    uint64_t cookie = reinterpret_cast<uint64_t>(cb.get());
+    if (cb_set_.find(cb) != cb_set_.end()) {
+      LOG(WARNING) << "Duplicate death notification registration";
+      return true;
+    }
+    if (!cb->linkToDeath(death_handler_, cookie)) {
+      LOG(ERROR) << "Failed to register death notification";
+      return false;
+    }
+    cb_set_.insert(cb);
+    return true;
+  }
+
+  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);
+    if (iter == cb_set_.end()) {
+      LOG(ERROR) << "Unknown callback death notification received";
+      return;
+    }
+    cb_set_.erase(iter);
+    LOG(DEBUG) << "Dead callback removed from list";
+  }
+
+  void invalidate() {
+    for (const sp<CallbackType>& cb : cb_set_) {
+      if (!cb->unlinkToDeath(death_handler_)) {
+        LOG(ERROR) << "Failed to deregister death notification";
+      }
+    }
+    cb_set_.clear();
+  }
+
+ private:
+  std::set<sp<CallbackType>> cb_set_;
+  sp<HidlDeathHandler<CallbackType>> death_handler_;
+
+  DISALLOW_COPY_AND_ASSIGN(HidlCallbackHandler);
+};
+
+}  // namespace hidl_callback_util
+}  // namespace implementation
+}  // namespace V1_0
+}  // namespace wifi
+}  // namespace hardware
+}  // namespace android
+#endif  // HIDL_CALLBACK_UTIL_H_
diff --git a/wifi/1.0/default/hidl_struct_util.cpp b/wifi/1.0/default/hidl_struct_util.cpp
index e57919d..7dbc8eb 100644
--- a/wifi/1.0/default/hidl_struct_util.cpp
+++ b/wifi/1.0/default/hidl_struct_util.cpp
@@ -134,6 +134,7 @@
     return false;
   }
   hidl_status->ringName = reinterpret_cast<const char*>(legacy_status.name);
+  hidl_status->flags = 0;
   for (const auto flag : {WIFI_RING_BUFFER_FLAG_HAS_BINARY_ENTRIES,
                           WIFI_RING_BUFFER_FLAG_HAS_ASCII_ENTRIES}) {
     if (flag & legacy_status.flags) {
@@ -457,6 +458,7 @@
   if (!hidl_scan_data) {
     return false;
   }
+  hidl_scan_data->flags = 0;
   for (const auto flag : {legacy_hal::WIFI_SCAN_FLAG_INTERRUPTED}) {
     if (legacy_cached_scan_result.flags & flag) {
       hidl_scan_data->flags |=
@@ -793,9 +795,6 @@
   legacy_request->config_disc_mac_addr_randomization = 1;
   legacy_request->disc_mac_addr_rand_interval_sec =
         hidl_request.configParams.macAddressRandomizationIntervalSec;
-  legacy_request->config_responder_auto_response = 1;
-  legacy_request->ranging_auto_response_cfg = hidl_request.configParams.acceptRangingRequests ?
-       legacy_hal::NAN_RANGING_AUTO_RESPONSE_ENABLE : legacy_hal::NAN_RANGING_AUTO_RESPONSE_DISABLE;
   legacy_request->config_2dot4g_rssi_close = 1;
   if (hidl_request.configParams.bandSpecificConfig.size() != 2) {
     LOG(ERROR) << "convertHidlNanEnableRequestToLegacy: bandSpecificConfig.size() != 2";
@@ -918,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";
@@ -961,6 +968,9 @@
         hidl_request.baseConfigs.configRangingIndications;
   legacy_request->ranging_cfg.distance_ingress_cm = hidl_request.baseConfigs.distanceIngressCm;
   legacy_request->ranging_cfg.distance_egress_cm = hidl_request.baseConfigs.distanceEgressCm;
+  legacy_request->ranging_auto_response = hidl_request.baseConfigs.rangingRequired ?
+        legacy_hal::NAN_RANGING_AUTO_RESPONSE_ENABLE : legacy_hal::NAN_RANGING_AUTO_RESPONSE_DISABLE;
+  legacy_request->range_report = legacy_hal::NAN_DISABLE_RANGE_REPORT;
   legacy_request->publish_type = (legacy_hal::NanPublishType) hidl_request.publishType;
   legacy_request->tx_type = (legacy_hal::NanTxType) hidl_request.txType;
 
@@ -997,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";
@@ -1040,6 +1059,9 @@
         hidl_request.baseConfigs.configRangingIndications;
   legacy_request->ranging_cfg.distance_ingress_cm = hidl_request.baseConfigs.distanceIngressCm;
   legacy_request->ranging_cfg.distance_egress_cm = hidl_request.baseConfigs.distanceEgressCm;
+  legacy_request->ranging_auto_response = hidl_request.baseConfigs.rangingRequired ?
+        legacy_hal::NAN_RANGING_AUTO_RESPONSE_ENABLE : legacy_hal::NAN_RANGING_AUTO_RESPONSE_DISABLE;
+  legacy_request->range_report = legacy_hal::NAN_DISABLE_RANGE_REPORT;
   legacy_request->subscribe_type = (legacy_hal::NanSubscribeType) hidl_request.subscribeType;
   legacy_request->serviceResponseFilter = (legacy_hal::NanSRFType) hidl_request.srfType;
   legacy_request->serviceResponseInclude = hidl_request.srfRespondIfInAddressSet ?
@@ -1078,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;
@@ -1121,9 +1152,6 @@
   legacy_request->config_disc_mac_addr_randomization = 1;
   legacy_request->disc_mac_addr_rand_interval_sec =
         hidl_request.macAddressRandomizationIntervalSec;
-  legacy_request->config_responder_auto_response = 1;
-  legacy_request->ranging_auto_response_cfg = hidl_request.acceptRangingRequests ?
-       legacy_hal::NAN_RANGING_AUTO_RESPONSE_ENABLE : legacy_hal::NAN_RANGING_AUTO_RESPONSE_DISABLE;
   /* TODO : missing
   legacy_request->config_2dot4g_rssi_close = 1;
   legacy_request->rssi_close_2dot4g_val =
@@ -1277,14 +1305,13 @@
   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;
   hidl_response->maxQueuedTransmitFollowupMsgs = legacy_response.max_queued_transmit_followup_msgs;
-  // TODO: b/34059183 to add to underlying HAL
-  hidl_response->maxSubscribeInterfaceAddresses = NAN_MAX_SUBSCRIBE_MAX_ADDRESS;
+  hidl_response->maxSubscribeInterfaceAddresses = legacy_response.max_subscribe_address;
   hidl_response->supportedCipherSuites = legacy_response.cipher_suites_supported;
 
   return true;
@@ -1302,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;
@@ -1313,8 +1342,8 @@
         legacy_ind.peer_sdea_params.security_cfg == legacy_hal::NAN_DP_CONFIG_SECURITY;
   hidl_ind->peerRequiresRanging =
         legacy_ind.peer_sdea_params.ranging_state == legacy_hal::NAN_RANGING_ENABLE;
-  hidl_ind->rangingMeasurementInCm = legacy_ind.range_result.range_measurement_cm;
-  hidl_ind->rangingIndicationType = legacy_ind.range_result.ranging_event_type;
+  hidl_ind->rangingMeasurementInCm = legacy_ind.range_info.range_measurement_cm;
+  hidl_ind->rangingIndicationType = legacy_ind.range_info.ranging_event_type;
 
   return true;
 }
@@ -1332,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;
 }
@@ -1749,6 +1781,7 @@
   hidl_capabilities->lcrSupported = legacy_capabilities.lcr_support;
   hidl_capabilities->responderSupported =
       legacy_capabilities.responder_supported;
+  hidl_capabilities->preambleSupport = 0;
   for (const auto flag : {legacy_hal::WIFI_RTT_PREAMBLE_LEGACY,
                           legacy_hal::WIFI_RTT_PREAMBLE_HT,
                           legacy_hal::WIFI_RTT_PREAMBLE_VHT}) {
@@ -1758,6 +1791,7 @@
               convertLegacyRttPreambleToHidl(flag));
     }
   }
+  hidl_capabilities->bwSupport = 0;
   for (const auto flag : {legacy_hal::WIFI_RTT_BW_5,
                           legacy_hal::WIFI_RTT_BW_10,
                           legacy_hal::WIFI_RTT_BW_20,
diff --git a/wifi/1.0/default/wifi.cpp b/wifi/1.0/default/wifi.cpp
index 8feb836..3d482b4 100644
--- a/wifi/1.0/default/wifi.cpp
+++ b/wifi/1.0/default/wifi.cpp
@@ -85,8 +85,9 @@
 
 WifiStatus Wifi::registerEventCallbackInternal(
     const sp<IWifiEventCallback>& event_callback) {
-  // TODO(b/31632518): remove the callback when the client is destroyed
-  event_callbacks_.emplace_back(event_callback);
+  if (!event_cb_handler_.addCallback(event_callback)) {
+    return createWifiStatus(WifiStatusCode::ERROR_UNKNOWN);
+  }
   return createWifiStatus(WifiStatusCode::SUCCESS);
 }
 
@@ -102,13 +103,13 @@
     // Create the chip instance once the HAL is started.
     chip_ = new WifiChip(kChipId, legacy_hal_, mode_controller_);
     run_state_ = RunState::STARTED;
-    for (const auto& callback : event_callbacks_) {
+    for (const auto& callback : event_cb_handler_.getCallbacks()) {
       if (!callback->onStart().isOk()) {
         LOG(ERROR) << "Failed to invoke onStart callback";
       };
     }
   } else {
-    for (const auto& callback : event_callbacks_) {
+    for (const auto& callback : event_cb_handler_.getCallbacks()) {
       if (!callback->onFailure(wifi_status).isOk()) {
         LOG(ERROR) << "Failed to invoke onFailure callback";
       }
@@ -126,13 +127,13 @@
   }
   WifiStatus wifi_status = stopLegacyHalAndDeinitializeModeController();
   if (wifi_status.code == WifiStatusCode::SUCCESS) {
-    for (const auto& callback : event_callbacks_) {
+    for (const auto& callback : event_cb_handler_.getCallbacks()) {
       if (!callback->onStop().isOk()) {
         LOG(ERROR) << "Failed to invoke onStop callback";
       };
     }
   } else {
-    for (const auto& callback : event_callbacks_) {
+    for (const auto& callback : event_cb_handler_.getCallbacks()) {
       if (!callback->onFailure(wifi_status).isOk()) {
         LOG(ERROR) << "Failed to invoke onFailure callback";
       }
diff --git a/wifi/1.0/default/wifi.h b/wifi/1.0/default/wifi.h
index 40d3552..c6fa84c 100644
--- a/wifi/1.0/default/wifi.h
+++ b/wifi/1.0/default/wifi.h
@@ -23,6 +23,7 @@
 #include <android/hardware/wifi/1.0/IWifi.h>
 #include <utils/Looper.h>
 
+#include "hidl_callback_util.h"
 #include "wifi_chip.h"
 #include "wifi_legacy_hal.h"
 #include "wifi_mode_controller.h"
@@ -71,8 +72,8 @@
   std::shared_ptr<legacy_hal::WifiLegacyHal> legacy_hal_;
   std::shared_ptr<mode_controller::WifiModeController> mode_controller_;
   RunState run_state_;
-  std::vector<sp<IWifiEventCallback>> event_callbacks_;
   sp<WifiChip> chip_;
+  hidl_callback_util::HidlCallbackHandler<IWifiEventCallback> event_cb_handler_;
 
   DISALLOW_COPY_AND_ASSIGN(Wifi);
 };
diff --git a/wifi/1.0/default/wifi_chip.cpp b/wifi/1.0/default/wifi_chip.cpp
index 0e2d54e..6aeedf8 100644
--- a/wifi/1.0/default/wifi_chip.cpp
+++ b/wifi/1.0/default/wifi_chip.cpp
@@ -63,7 +63,7 @@
 void WifiChip::invalidate() {
   invalidateAndRemoveAllIfaces();
   legacy_hal_.reset();
-  event_callbacks_.clear();
+  event_cb_handler_.invalidate();
   is_valid_ = false;
 }
 
@@ -71,8 +71,8 @@
   return is_valid_;
 }
 
-std::vector<sp<IWifiChipEventCallback>> WifiChip::getEventCallbacks() {
-  return event_callbacks_;
+std::set<sp<IWifiChipEventCallback>> WifiChip::getEventCallbacks() {
+  return event_cb_handler_.getCallbacks();
 }
 
 Return<void> WifiChip::getId(getId_cb hidl_status_cb) {
@@ -353,8 +353,9 @@
 
 WifiStatus WifiChip::registerEventCallbackInternal(
     const sp<IWifiChipEventCallback>& event_callback) {
-  // TODO(b/31632518): remove the callback when the client is destroyed
-  event_callbacks_.emplace_back(event_callback);
+  if (!event_cb_handler_.addCallback(event_callback)) {
+    return createWifiStatus(WifiStatusCode::ERROR_UNKNOWN);
+  }
   return createWifiStatus(WifiStatusCode::SUCCESS);
 }
 
@@ -414,14 +415,14 @@
   }
   WifiStatus status = handleChipConfiguration(mode_id);
   if (status.code != WifiStatusCode::SUCCESS) {
-    for (const auto& callback : event_callbacks_) {
+    for (const auto& callback : event_cb_handler_.getCallbacks()) {
       if (!callback->onChipReconfigureFailure(status).isOk()) {
         LOG(ERROR) << "Failed to invoke onChipReconfigureFailure callback";
       }
     }
     return status;
   }
-  for (const auto& callback : event_callbacks_) {
+  for (const auto& callback : event_cb_handler_.getCallbacks()) {
     if (!callback->onChipReconfigured(mode_id).isOk()) {
       LOG(ERROR) << "Failed to invoke onChipReconfigured callback";
     }
@@ -503,7 +504,7 @@
   }
   std::string ifname = legacy_hal_.lock()->getApIfaceName();
   ap_iface_ = new WifiApIface(ifname, legacy_hal_);
-  for (const auto& callback : event_callbacks_) {
+  for (const auto& callback : event_cb_handler_.getCallbacks()) {
     if (!callback->onIfaceAdded(IfaceType::AP, ifname).isOk()) {
       LOG(ERROR) << "Failed to invoke onIfaceAdded callback";
     }
@@ -533,7 +534,7 @@
     return createWifiStatus(WifiStatusCode::ERROR_INVALID_ARGS);
   }
   invalidateAndClear(ap_iface_);
-  for (const auto& callback : event_callbacks_) {
+  for (const auto& callback : event_cb_handler_.getCallbacks()) {
     if (!callback->onIfaceRemoved(IfaceType::AP, ifname).isOk()) {
       LOG(ERROR) << "Failed to invoke onIfaceRemoved callback";
     }
@@ -549,7 +550,7 @@
   }
   std::string ifname = legacy_hal_.lock()->getNanIfaceName();
   nan_iface_ = new WifiNanIface(ifname, legacy_hal_);
-  for (const auto& callback : event_callbacks_) {
+  for (const auto& callback : event_cb_handler_.getCallbacks()) {
     if (!callback->onIfaceAdded(IfaceType::NAN, ifname).isOk()) {
       LOG(ERROR) << "Failed to invoke onIfaceAdded callback";
     }
@@ -579,7 +580,7 @@
     return createWifiStatus(WifiStatusCode::ERROR_INVALID_ARGS);
   }
   invalidateAndClear(nan_iface_);
-  for (const auto& callback : event_callbacks_) {
+  for (const auto& callback : event_cb_handler_.getCallbacks()) {
     if (!callback->onIfaceRemoved(IfaceType::NAN, ifname).isOk()) {
       LOG(ERROR) << "Failed to invoke onIfaceAdded callback";
     }
@@ -595,7 +596,7 @@
   }
   std::string ifname = legacy_hal_.lock()->getP2pIfaceName();
   p2p_iface_ = new WifiP2pIface(ifname, legacy_hal_);
-  for (const auto& callback : event_callbacks_) {
+  for (const auto& callback : event_cb_handler_.getCallbacks()) {
     if (!callback->onIfaceAdded(IfaceType::P2P, ifname).isOk()) {
       LOG(ERROR) << "Failed to invoke onIfaceAdded callback";
     }
@@ -625,7 +626,7 @@
     return createWifiStatus(WifiStatusCode::ERROR_INVALID_ARGS);
   }
   invalidateAndClear(p2p_iface_);
-  for (const auto& callback : event_callbacks_) {
+  for (const auto& callback : event_cb_handler_.getCallbacks()) {
     if (!callback->onIfaceRemoved(IfaceType::P2P, ifname).isOk()) {
       LOG(ERROR) << "Failed to invoke onIfaceRemoved callback";
     }
@@ -639,7 +640,7 @@
   }
   std::string ifname = legacy_hal_.lock()->getStaIfaceName();
   sta_iface_ = new WifiStaIface(ifname, legacy_hal_);
-  for (const auto& callback : event_callbacks_) {
+  for (const auto& callback : event_cb_handler_.getCallbacks()) {
     if (!callback->onIfaceAdded(IfaceType::STA, ifname).isOk()) {
       LOG(ERROR) << "Failed to invoke onIfaceAdded callback";
     }
@@ -669,7 +670,7 @@
     return createWifiStatus(WifiStatusCode::ERROR_INVALID_ARGS);
   }
   invalidateAndClear(sta_iface_);
-  for (const auto& callback : event_callbacks_) {
+  for (const auto& callback : event_cb_handler_.getCallbacks()) {
     if (!callback->onIfaceRemoved(IfaceType::STA, ifname).isOk()) {
       LOG(ERROR) << "Failed to invoke onIfaceRemoved callback";
     }
diff --git a/wifi/1.0/default/wifi_chip.h b/wifi/1.0/default/wifi_chip.h
index 938b180..e1c2344 100644
--- a/wifi/1.0/default/wifi_chip.h
+++ b/wifi/1.0/default/wifi_chip.h
@@ -22,6 +22,7 @@
 #include <android-base/macros.h>
 #include <android/hardware/wifi/1.0/IWifiChip.h>
 
+#include "hidl_callback_util.h"
 #include "wifi_ap_iface.h"
 #include "wifi_legacy_hal.h"
 #include "wifi_mode_controller.h"
@@ -62,7 +63,7 @@
   // valid before processing them.
   void invalidate();
   bool isValid();
-  std::vector<sp<IWifiChipEventCallback>> getEventCallbacks();
+  std::set<sp<IWifiChipEventCallback>> getEventCallbacks();
 
   // HIDL methods exposed.
   Return<void> getId(getId_cb hidl_status_cb) override;
@@ -179,7 +180,6 @@
   ChipId chip_id_;
   std::weak_ptr<legacy_hal::WifiLegacyHal> legacy_hal_;
   std::weak_ptr<mode_controller::WifiModeController> mode_controller_;
-  std::vector<sp<IWifiChipEventCallback>> event_callbacks_;
   sp<WifiApIface> ap_iface_;
   sp<WifiNanIface> nan_iface_;
   sp<WifiP2pIface> p2p_iface_;
@@ -191,6 +191,8 @@
   // registration mechanism. Use this to check if we have already
   // registered a callback.
   bool debug_ring_buffer_cb_registered_;
+  hidl_callback_util::HidlCallbackHandler<IWifiChipEventCallback>
+      event_cb_handler_;
 
   DISALLOW_COPY_AND_ASSIGN(WifiChip);
 };
diff --git a/wifi/1.0/default/wifi_legacy_hal.cpp b/wifi/1.0/default/wifi_legacy_hal.cpp
index cd89acc..7d58254 100644
--- a/wifi/1.0/default/wifi_legacy_hal.cpp
+++ b/wifi/1.0/default/wifi_legacy_hal.cpp
@@ -289,6 +289,24 @@
     on_nan_event_transmit_follow_up_user_callback(*event);
   }
 }
+
+std::function<void(const NanRangeRequestInd&)>
+    on_nan_event_range_request_user_callback;
+void onAysncNanEventRangeRequest(NanRangeRequestInd* event) {
+  const auto lock = hidl_sync_util::acquireGlobalLock();
+  if (on_nan_event_range_request_user_callback && event) {
+    on_nan_event_range_request_user_callback(*event);
+  }
+}
+
+std::function<void(const NanRangeReportInd&)>
+    on_nan_event_range_report_user_callback;
+void onAysncNanEventRangeReport(NanRangeReportInd* event) {
+  const auto lock = hidl_sync_util::acquireGlobalLock();
+  if (on_nan_event_range_report_user_callback && event) {
+    on_nan_event_range_report_user_callback(*event);
+  }
+}
 // End of the free-standing "C" style callbacks.
 
 WifiLegacyHal::WifiLegacyHal()
@@ -1023,6 +1041,10 @@
       user_callbacks.on_event_data_path_end;
   on_nan_event_transmit_follow_up_user_callback =
       user_callbacks.on_event_transmit_follow_up;
+  on_nan_event_range_request_user_callback =
+      user_callbacks.on_event_range_request;
+  on_nan_event_range_report_user_callback =
+      user_callbacks.on_event_range_report;
 
   return global_func_table_.wifi_nan_register_handler(
       wlan_interface_handle_,
@@ -1039,7 +1061,9 @@
        onAysncNanEventDataPathRequest,
        onAysncNanEventDataPathConfirm,
        onAysncNanEventDataPathEnd,
-       onAysncNanEventTransmitFollowUp});
+       onAysncNanEventTransmitFollowUp,
+       onAysncNanEventRangeRequest,
+       onAysncNanEventRangeReport});
 }
 
 wifi_error WifiLegacyHal::nanEnableRequest(transaction_id id,
@@ -1261,6 +1285,8 @@
   on_nan_event_data_path_confirm_user_callback = nullptr;
   on_nan_event_data_path_end_user_callback = nullptr;
   on_nan_event_transmit_follow_up_user_callback = nullptr;
+  on_nan_event_range_request_user_callback = nullptr;
+  on_nan_event_range_report_user_callback = nullptr;
 }
 
 }  // namespace legacy_hal
diff --git a/wifi/1.0/default/wifi_legacy_hal.h b/wifi/1.0/default/wifi_legacy_hal.h
index e65b79b..ed020b0 100644
--- a/wifi/1.0/default/wifi_legacy_hal.h
+++ b/wifi/1.0/default/wifi_legacy_hal.h
@@ -89,6 +89,10 @@
   std::function<void(const NanDataPathEndInd&)> on_event_data_path_end;
   std::function<void(const NanTransmitFollowupInd&)>
       on_event_transmit_follow_up;
+  std::function<void(const NanRangeRequestInd&)>
+      on_event_range_request;
+  std::function<void(const NanRangeReportInd&)>
+      on_event_range_report;
 };
 
 // Full scan results contain IE info and are hence passed by reference, to
diff --git a/wifi/1.0/default/wifi_nan_iface.cpp b/wifi/1.0/default/wifi_nan_iface.cpp
index 8d76f91..68be2a7 100644
--- a/wifi/1.0/default/wifi_nan_iface.cpp
+++ b/wifi/1.0/default/wifi_nan_iface.cpp
@@ -55,7 +55,7 @@
 
     switch (msg.response_type) {
     case legacy_hal::NAN_RESPONSE_ENABLED: {
-        for (const auto& callback : shared_ptr_this->event_callbacks_) {
+        for (const auto& callback : shared_ptr_this->getEventCallbacks()) {
           if (!callback->notifyEnableResponse(id, wifiNanStatus).isOk()) {
             LOG(ERROR) << "Failed to invoke the callback";
           }
@@ -63,7 +63,7 @@
         break;
     }
     case legacy_hal::NAN_RESPONSE_DISABLED: {
-        for (const auto& callback : shared_ptr_this->event_callbacks_) {
+        for (const auto& callback : shared_ptr_this->getEventCallbacks()) {
           if (!callback->notifyDisableResponse(id, wifiNanStatus).isOk()) {
             LOG(ERROR) << "Failed to invoke the callback";
           }
@@ -71,7 +71,7 @@
         break;
     }
     case legacy_hal::NAN_RESPONSE_PUBLISH: {
-        for (const auto& callback : shared_ptr_this->event_callbacks_) {
+        for (const auto& callback : shared_ptr_this->getEventCallbacks()) {
           if (!callback->notifyStartPublishResponse(id, wifiNanStatus,
                         msg.body.publish_response.publish_id).isOk()) {
             LOG(ERROR) << "Failed to invoke the callback";
@@ -80,7 +80,7 @@
         break;
     }
     case legacy_hal::NAN_RESPONSE_PUBLISH_CANCEL: {
-        for (const auto& callback : shared_ptr_this->event_callbacks_) {
+        for (const auto& callback : shared_ptr_this->getEventCallbacks()) {
           if (!callback->notifyStopPublishResponse(id, wifiNanStatus).isOk()) {
             LOG(ERROR) << "Failed to invoke the callback";
           }
@@ -88,7 +88,7 @@
         break;
     }
     case legacy_hal::NAN_RESPONSE_TRANSMIT_FOLLOWUP: {
-        for (const auto& callback : shared_ptr_this->event_callbacks_) {
+        for (const auto& callback : shared_ptr_this->getEventCallbacks()) {
           if (!callback->notifyTransmitFollowupResponse(id, wifiNanStatus).isOk()) {
             LOG(ERROR) << "Failed to invoke the callback";
           }
@@ -96,7 +96,7 @@
         break;
     }
     case legacy_hal::NAN_RESPONSE_SUBSCRIBE: {
-        for (const auto& callback : shared_ptr_this->event_callbacks_) {
+        for (const auto& callback : shared_ptr_this->getEventCallbacks()) {
           if (!callback->notifyStartSubscribeResponse(id, wifiNanStatus,
                         msg.body.subscribe_response.subscribe_id).isOk()) {
             LOG(ERROR) << "Failed to invoke the callback";
@@ -105,7 +105,7 @@
         break;
     }
     case legacy_hal::NAN_RESPONSE_SUBSCRIBE_CANCEL: {
-        for (const auto& callback : shared_ptr_this->event_callbacks_) {
+        for (const auto& callback : shared_ptr_this->getEventCallbacks()) {
           if (!callback->notifyStopSubscribeResponse(id, wifiNanStatus).isOk()) {
             LOG(ERROR) << "Failed to invoke the callback";
           }
@@ -113,7 +113,7 @@
         break;
     }
     case legacy_hal::NAN_RESPONSE_CONFIG: {
-        for (const auto& callback : shared_ptr_this->event_callbacks_) {
+        for (const auto& callback : shared_ptr_this->getEventCallbacks()) {
           if (!callback->notifyConfigResponse(id, wifiNanStatus).isOk()) {
             LOG(ERROR) << "Failed to invoke the callback";
           }
@@ -127,7 +127,7 @@
             LOG(ERROR) << "Failed to convert nan capabilities response";
             return;
         }
-        for (const auto& callback : shared_ptr_this->event_callbacks_) {
+        for (const auto& callback : shared_ptr_this->getEventCallbacks()) {
           if (!callback->notifyCapabilitiesResponse(id, wifiNanStatus,
                                                     hidl_struct).isOk()) {
             LOG(ERROR) << "Failed to invoke the callback";
@@ -136,7 +136,7 @@
         break;
     }
     case legacy_hal::NAN_DP_INTERFACE_CREATE: {
-        for (const auto& callback : shared_ptr_this->event_callbacks_) {
+        for (const auto& callback : shared_ptr_this->getEventCallbacks()) {
           if (!callback->notifyCreateDataInterfaceResponse(id, wifiNanStatus).isOk()) {
             LOG(ERROR) << "Failed to invoke the callback";
           }
@@ -144,7 +144,7 @@
         break;
     }
     case legacy_hal::NAN_DP_INTERFACE_DELETE: {
-        for (const auto& callback : shared_ptr_this->event_callbacks_) {
+        for (const auto& callback : shared_ptr_this->getEventCallbacks()) {
           if (!callback->notifyDeleteDataInterfaceResponse(id, wifiNanStatus).isOk()) {
             LOG(ERROR) << "Failed to invoke the callback";
           }
@@ -152,7 +152,7 @@
         break;
     }
     case legacy_hal::NAN_DP_INITIATOR_RESPONSE: {
-        for (const auto& callback : shared_ptr_this->event_callbacks_) {
+        for (const auto& callback : shared_ptr_this->getEventCallbacks()) {
           if (!callback->notifyInitiateDataPathResponse(id, wifiNanStatus,
                 msg.body.data_request_response.ndp_instance_id).isOk()) {
             LOG(ERROR) << "Failed to invoke the callback";
@@ -161,14 +161,14 @@
         break;
     }
     case legacy_hal::NAN_DP_RESPONDER_RESPONSE: {
-        for (const auto& callback : shared_ptr_this->event_callbacks_) {
+        for (const auto& callback : shared_ptr_this->getEventCallbacks()) {
           if (!callback->notifyRespondToDataPathIndicationResponse(id, wifiNanStatus).isOk()) {
             LOG(ERROR) << "Failed to invoke the callback";
           }
         }
     }
     case legacy_hal::NAN_DP_END: {
-        for (const auto& callback : shared_ptr_this->event_callbacks_) {
+        for (const auto& callback : shared_ptr_this->getEventCallbacks()) {
           if (!callback->notifyTerminateDataPathResponse(id, wifiNanStatus).isOk()) {
             LOG(ERROR) << "Failed to invoke the callback";
           }
@@ -201,7 +201,7 @@
       hidl_struct.eventType = (NanClusterEventType) msg.event_type;
       hidl_struct.addr = msg.data.mac_addr.addr;
 
-      for (const auto& callback : shared_ptr_this->event_callbacks_) {
+      for (const auto& callback : shared_ptr_this->getEventCallbacks()) {
         if (!callback->eventClusterEvent(hidl_struct).isOk()) {
             LOG(ERROR) << "Failed to invoke the callback";
         }
@@ -219,7 +219,7 @@
       status.status = hidl_struct_util::convertLegacyNanStatusTypeToHidl(msg.reason);
       status.description = msg.nan_reason;
 
-      for (const auto& callback : shared_ptr_this->event_callbacks_) {
+      for (const auto& callback : shared_ptr_this->getEventCallbacks()) {
         if (!callback->eventDisabled(status).isOk()) {
             LOG(ERROR) << "Failed to invoke the callback";
         }
@@ -237,7 +237,7 @@
       status.status = hidl_struct_util::convertLegacyNanStatusTypeToHidl(msg.reason);
       status.description = msg.nan_reason;
 
-      for (const auto& callback : shared_ptr_this->event_callbacks_) {
+      for (const auto& callback : shared_ptr_this->getEventCallbacks()) {
         if (!callback->eventPublishTerminated(msg.publish_id, status).isOk()) {
             LOG(ERROR) << "Failed to invoke the callback";
         }
@@ -255,7 +255,7 @@
       status.status = hidl_struct_util::convertLegacyNanStatusTypeToHidl(msg.reason);
       status.description = msg.nan_reason;
 
-      for (const auto& callback : shared_ptr_this->event_callbacks_) {
+      for (const auto& callback : shared_ptr_this->getEventCallbacks()) {
         if (!callback->eventSubscribeTerminated(msg.subscribe_id, status).isOk()) {
             LOG(ERROR) << "Failed to invoke the callback";
         }
@@ -276,7 +276,7 @@
           return;
       }
 
-      for (const auto& callback : shared_ptr_this->event_callbacks_) {
+      for (const auto& callback : shared_ptr_this->getEventCallbacks()) {
         if (!callback->eventMatch(hidl_struct).isOk()) {
             LOG(ERROR) << "Failed to invoke the callback";
         }
@@ -290,7 +290,7 @@
         LOG(ERROR) << "Callback invoked on an invalid object";
         return;
       }
-      for (const auto& callback : shared_ptr_this->event_callbacks_) {
+      for (const auto& callback : shared_ptr_this->getEventCallbacks()) {
         if (!callback->eventMatchExpired(msg.publish_subscribe_id,
                 msg.requestor_instance_id).isOk()) {
             LOG(ERROR) << "Failed to invoke the callback";
@@ -312,7 +312,7 @@
           return;
       }
 
-      for (const auto& callback : shared_ptr_this->event_callbacks_) {
+      for (const auto& callback : shared_ptr_this->getEventCallbacks()) {
         if (!callback->eventFollowupReceived(hidl_struct).isOk()) {
             LOG(ERROR) << "Failed to invoke the callback";
         }
@@ -330,7 +330,7 @@
       status.status = hidl_struct_util::convertLegacyNanStatusTypeToHidl(msg.reason);
       status.description = msg.nan_reason;
 
-      for (const auto& callback : shared_ptr_this->event_callbacks_) {
+      for (const auto& callback : shared_ptr_this->getEventCallbacks()) {
         if (!callback->eventTransmitFollowup(msg.id, status).isOk()) {
             LOG(ERROR) << "Failed to invoke the callback";
         }
@@ -351,7 +351,7 @@
           return;
       }
 
-      for (const auto& callback : shared_ptr_this->event_callbacks_) {
+      for (const auto& callback : shared_ptr_this->getEventCallbacks()) {
         if (!callback->eventDataPathRequest(hidl_struct).isOk()) {
             LOG(ERROR) << "Failed to invoke the callback";
         }
@@ -372,7 +372,7 @@
           return;
       }
 
-      for (const auto& callback : shared_ptr_this->event_callbacks_) {
+      for (const auto& callback : shared_ptr_this->getEventCallbacks()) {
         if (!callback->eventDataPathConfirm(hidl_struct).isOk()) {
             LOG(ERROR) << "Failed to invoke the callback";
         }
@@ -386,7 +386,7 @@
         LOG(ERROR) << "Callback invoked on an invalid object";
         return;
       }
-      for (const auto& callback : shared_ptr_this->event_callbacks_) {
+      for (const auto& callback : shared_ptr_this->getEventCallbacks()) {
         for (int i = 0; i < msg.num_ndp_instances; ++i) {
             if (!callback->eventDataPathTerminated(msg.ndp_instance_id[i]).isOk()) {
                 LOG(ERROR) << "Failed to invoke the callback";
@@ -400,6 +400,16 @@
       LOG(ERROR) << "on_event_beacon_sdf_payload - should not be called";
   };
 
+  callback_handlers.on_event_range_request = [weak_ptr_this](
+        const legacy_hal::NanRangeRequestInd& /* msg */) {
+      LOG(ERROR) << "on_event_range_request - should not be called";
+  };
+
+  callback_handlers.on_event_range_report = [weak_ptr_this](
+        const legacy_hal::NanRangeReportInd& /* msg */) {
+      LOG(ERROR) << "on_event_range_report - should not be called";
+  };
+
   legacy_hal::wifi_error legacy_status =
       legacy_hal_.lock()->nanRegisterCallbackHandlers(callback_handlers);
   if (legacy_status != legacy_hal::WIFI_SUCCESS) {
@@ -410,7 +420,7 @@
 
 void WifiNanIface::invalidate() {
   legacy_hal_.reset();
-  event_callbacks_.clear();
+  event_cb_handler_.invalidate();
   is_valid_ = false;
 }
 
@@ -418,6 +428,10 @@
   return is_valid_;
 }
 
+std::set<sp<IWifiNanIfaceEventCallback>> WifiNanIface::getEventCallbacks() {
+  return event_cb_handler_.getCallbacks();
+}
+
 Return<void> WifiNanIface::getName(getName_cb hidl_status_cb) {
   return validateAndCall(this,
                          WifiStatusCode::ERROR_WIFI_IFACE_INVALID,
@@ -609,11 +623,9 @@
 
 WifiStatus WifiNanIface::registerEventCallbackInternal(
     const sp<IWifiNanIfaceEventCallback>& callback) {
-  // TODO(b/31632518): remove the callback when the client is destroyed and/or
-  // make sure that the same callback is only registered once (i.e. detect duplicates)
-  // OR: consider having a single listener - not clear why multiple listeners (managers) are
-  // necessary, nor how they would coordinate (at least command IDs).
-  event_callbacks_.emplace_back(callback);
+  if (!event_cb_handler_.addCallback(callback)) {
+    return createWifiStatus(WifiStatusCode::ERROR_UNKNOWN);
+  }
   return createWifiStatus(WifiStatusCode::SUCCESS);
 }
 
diff --git a/wifi/1.0/default/wifi_nan_iface.h b/wifi/1.0/default/wifi_nan_iface.h
index d1da60e..e1edd29 100644
--- a/wifi/1.0/default/wifi_nan_iface.h
+++ b/wifi/1.0/default/wifi_nan_iface.h
@@ -21,6 +21,7 @@
 #include <android/hardware/wifi/1.0/IWifiNanIface.h>
 #include <android/hardware/wifi/1.0/IWifiNanIfaceEventCallback.h>
 
+#include "hidl_callback_util.h"
 #include "wifi_legacy_hal.h"
 
 namespace android {
@@ -119,10 +120,13 @@
   WifiStatus terminateDataPathRequestInternal(
       uint16_t cmd_id, uint32_t ndpInstanceId);
 
+  std::set<sp<IWifiNanIfaceEventCallback>> getEventCallbacks();
+
   std::string ifname_;
   std::weak_ptr<legacy_hal::WifiLegacyHal> legacy_hal_;
-  std::vector<sp<IWifiNanIfaceEventCallback>> event_callbacks_;
   bool is_valid_;
+  hidl_callback_util::HidlCallbackHandler<IWifiNanIfaceEventCallback>
+      event_cb_handler_;
 
   DISALLOW_COPY_AND_ASSIGN(WifiNanIface);
 };
diff --git a/wifi/1.0/default/wifi_sta_iface.cpp b/wifi/1.0/default/wifi_sta_iface.cpp
index 6100334..55c9cf7 100644
--- a/wifi/1.0/default/wifi_sta_iface.cpp
+++ b/wifi/1.0/default/wifi_sta_iface.cpp
@@ -35,7 +35,7 @@
 
 void WifiStaIface::invalidate() {
   legacy_hal_.reset();
-  event_callbacks_.clear();
+  event_cb_handler_.invalidate();
   is_valid_ = false;
 }
 
@@ -43,8 +43,8 @@
   return is_valid_;
 }
 
-std::vector<sp<IWifiStaIfaceEventCallback>> WifiStaIface::getEventCallbacks() {
-  return event_callbacks_;
+std::set<sp<IWifiStaIfaceEventCallback>> WifiStaIface::getEventCallbacks() {
+  return event_cb_handler_.getCallbacks();
 }
 
 Return<void> WifiStaIface::getName(getName_cb hidl_status_cb) {
@@ -293,8 +293,9 @@
 
 WifiStatus WifiStaIface::registerEventCallbackInternal(
     const sp<IWifiStaIfaceEventCallback>& callback) {
-  // TODO(b/31632518): remove the callback when the client is destroyed
-  event_callbacks_.emplace_back(callback);
+  if (!event_cb_handler_.addCallback(callback)) {
+    return createWifiStatus(WifiStatusCode::ERROR_UNKNOWN);
+  }
   return createWifiStatus(WifiStatusCode::SUCCESS);
 }
 
@@ -570,7 +571,8 @@
   return createWifiStatusFromLegacyError(legacy_status);
 }
 
-WifiStatus WifiStaIface::setScanningMacOuiInternal(const std::array<uint8_t, 3>& oui) {
+WifiStatus WifiStaIface::setScanningMacOuiInternal(
+    const std::array<uint8_t, 3>& oui) {
   legacy_hal::wifi_error legacy_status =
       legacy_hal_.lock()->setScanningMacOui(oui);
   return createWifiStatusFromLegacyError(legacy_status);
diff --git a/wifi/1.0/default/wifi_sta_iface.h b/wifi/1.0/default/wifi_sta_iface.h
index bc2d75f..5f0ffe9 100644
--- a/wifi/1.0/default/wifi_sta_iface.h
+++ b/wifi/1.0/default/wifi_sta_iface.h
@@ -21,6 +21,7 @@
 #include <android/hardware/wifi/1.0/IWifiStaIface.h>
 #include <android/hardware/wifi/1.0/IWifiStaIfaceEventCallback.h>
 
+#include "hidl_callback_util.h"
 #include "wifi_legacy_hal.h"
 
 namespace android {
@@ -39,7 +40,7 @@
   // Refer to |WifiChip::invalidate()|.
   void invalidate();
   bool isValid();
-  std::vector<sp<IWifiStaIfaceEventCallback>> getEventCallbacks();
+  std::set<sp<IWifiStaIfaceEventCallback>> getEventCallbacks();
 
   // HIDL methods exposed.
   Return<void> getName(getName_cb hidl_status_cb) override;
@@ -151,8 +152,9 @@
 
   std::string ifname_;
   std::weak_ptr<legacy_hal::WifiLegacyHal> legacy_hal_;
-  std::vector<sp<IWifiStaIfaceEventCallback>> event_callbacks_;
   bool is_valid_;
+  hidl_callback_util::HidlCallbackHandler<IWifiStaIfaceEventCallback>
+      event_cb_handler_;
 
   DISALLOW_COPY_AND_ASSIGN(WifiStaIface);
 };
diff --git a/wifi/1.0/types.hal b/wifi/1.0/types.hal
index 1c6d0e0..30e8943 100644
--- a/wifi/1.0/types.hal
+++ b/wifi/1.0/types.hal
@@ -844,11 +844,6 @@
    */
   uint32_t macAddressRandomizationIntervalSec;
   /**
-   * Accept (if true) or not (if false) ranging requests from peers - whether in the context of
-   * discovery or otherwise.
-   */
-  bool acceptRangingRequests;
-  /**
    * Additional configuration provided per band: indexed by |NanBandIndex|.
    */
   NanBandSpecificConfig[2] bandSpecificConfig;
@@ -1014,7 +1009,22 @@
   bool securityEnabledInNdp;
   /**
    * Specifies whether or not there is a ranging requirement in this discovery session.
-   * Note that 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.
+   * 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/functional/Android.bp b/wifi/1.0/vts/functional/Android.bp
index 8a5d7e0..01eeef5 100644
--- a/wifi/1.0/vts/functional/Android.bp
+++ b/wifi/1.0/vts/functional/Android.bp
@@ -15,10 +15,10 @@
 //
 
 cc_test {
-    name: "wifi_hidl_test",
+    name: "VtsHalWifiV1_0TargetTest",
     gtest: true,
     srcs: [
-        "main.cpp",
+        "VtsHalWifiV1_0TargetTest.cpp",
         "wifi_ap_iface_hidl_test.cpp",
         "wifi_chip_hidl_test.cpp",
         "wifi_hidl_call_util_selftest.cpp",
diff --git a/wifi/1.0/vts/functional/main.cpp b/wifi/1.0/vts/functional/VtsHalWifiV1_0TargetTest.cpp
similarity index 100%
rename from wifi/1.0/vts/functional/main.cpp
rename to wifi/1.0/vts/functional/VtsHalWifiV1_0TargetTest.cpp
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/ISupplicantStaIfaceCallback.hal b/wifi/supplicant/1.0/ISupplicantStaIfaceCallback.hal
index 34237f0..dd1d1c4 100644
--- a/wifi/supplicant/1.0/ISupplicantStaIfaceCallback.hal
+++ b/wifi/supplicant/1.0/ISupplicantStaIfaceCallback.hal
@@ -214,45 +214,46 @@
    * Used to indicate the result of ANQP (either for IEEE 802.11u Interworking
    * or Hotspot 2.0) query.
    *
-   * @param macAddress MAC address of the access point.
+   * @param bssid BSSID of the access point.
    * @param data ANQP data fetched from the access point.
    *        All the fields in this struct must be empty if the query failed.
    * @param hs20Data ANQP data fetched from the Hotspot 2.0 access point.
    *        All the fields in this struct must be empty if the query failed.
    */
-  oneway onAnqpQueryDone(MacAddress macAddress,
-                         AnqpData data,
-                         Hs20AnqpData hs20Data);
+  oneway onAnqpQueryDone(Bssid bssid, AnqpData data, Hs20AnqpData hs20Data);
 
   /**
    * Used to indicate the result of Hotspot 2.0 Icon query.
    *
-   * @param macAddress MAC address of the access point.
+   * @param bssid BSSID of the access point.
    * @param fileName Name of the file that was requested.
    * @param data Icon data fetched from the access point.
    *        Must be empty if the query failed.
    */
-  oneway onHs20IconQueryDone(MacAddress macAddress,
-                             string fileName,
-                             vec<uint8_t> data);
+  oneway onHs20IconQueryDone(Bssid bssid, string fileName, vec<uint8_t> data);
 
   /**
    * Used to indicate a Hotspot 2.0 subscription remediation event.
    *
+   * @param bssid BSSID of the access point.
    * @param osuMethod OSU method.
    * @param url URL of the server.
    */
-  oneway onHs20SubscriptionRemediation(OsuMethod osuMethod, string url);
+  oneway onHs20SubscriptionRemediation(Bssid bssid,
+                                       OsuMethod osuMethod,
+                                       string url);
 
   /**
    * Used to indicate a Hotspot 2.0 imminent deauth notice.
    *
+   * @param bssid BSSID of the access point.
    * @param reasonCode Code to indicate the deauth reason.
    *        Refer to section 3.2.1.2 of the Hotspot 2.0 spec.
    * @param reAuthDelayInSec Delay before reauthenticating.
    * @param url URL of the server.
    */
-  oneway onHs20DeauthImminentNotice(uint32_t reasonCode,
+  oneway onHs20DeauthImminentNotice(Bssid bssid,
+                                    uint32_t reasonCode,
                                     uint32_t reAuthDelayInSec,
                                     string url);
 
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/functional/Android.mk b/wifi/supplicant/1.0/vts/functional/Android.mk
index 8fa649f..52fecc2 100644
--- a/wifi/supplicant/1.0/vts/functional/Android.mk
+++ b/wifi/supplicant/1.0/vts/functional/Android.mk
@@ -16,10 +16,10 @@
 LOCAL_PATH := $(call my-dir)
 
 include $(CLEAR_VARS)
-LOCAL_MODULE := supplicant_hidl_test
+LOCAL_MODULE := VtsHalWifiSupplicantV1_0TargetTest
 LOCAL_CPPFLAGS := -Wall -Werror -Wextra
 LOCAL_SRC_FILES := \
-    main.cpp \
+    VtsHalWifiSupplicantV1_0TargetTest.cpp \
     supplicant_hidl_test.cpp \
     supplicant_hidl_test_utils.cpp \
     supplicant_p2p_iface_hidl_test.cpp \
diff --git a/wifi/supplicant/1.0/vts/functional/main.cpp b/wifi/supplicant/1.0/vts/functional/VtsHalWifiSupplicantV1_0TargetTest.cpp
similarity index 100%
rename from wifi/supplicant/1.0/vts/functional/main.cpp
rename to wifi/supplicant/1.0/vts/functional/VtsHalWifiSupplicantV1_0TargetTest.cpp
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
-        }
-    }
-}
-