Fix filters for unrelated paths in audio effects coverage report. am: 2229c5ab8e am: c0e26b057b
am: 9f29764af3

Change-Id: Id272e134caf0bd21fbf1efa182d881e0a111c819
diff --git a/audio/OWNERS b/audio/OWNERS
new file mode 100644
index 0000000..6fdc97c
--- /dev/null
+++ b/audio/OWNERS
@@ -0,0 +1,3 @@
+elaurent@google.com
+krocard@google.com
+mnaganov@google.com
diff --git a/audio/V2_0/target/AndroidTest.xml b/audio/V2_0/target/AndroidTest.xml
index 9e84170..a223cef 100644
--- a/audio/V2_0/target/AndroidTest.xml
+++ b/audio/V2_0/target/AndroidTest.xml
@@ -33,7 +33,7 @@
         <option name="exclude-coverage-path" value="hardware/qcom/audio/visualizer" />
         <option name="exclude-coverage-path" value="hardware/qcom/audio/voice_processing/" />
         <option name="precondition-lshal" value="android.hardware.audio@2.0"/>
-        <option name="test-timeout" value="60m"/>
-        <option name="runtime-hint" value="10m"/>
+        <option name="test-timeout" value="30m"/>
+        <option name="gtest-batch-mode" value="true"/>
     </test>
 </configuration>
diff --git a/audio/V2_0/target_profiling/AndroidTest.xml b/audio/V2_0/target_profiling/AndroidTest.xml
index 89391bb..de978f1 100644
--- a/audio/V2_0/target_profiling/AndroidTest.xml
+++ b/audio/V2_0/target_profiling/AndroidTest.xml
@@ -39,6 +39,7 @@
         <option name="exclude-coverage-path" value="hardware/qcom/audio/visualizer" />
         <option name="exclude-coverage-path" value="hardware/qcom/audio/voice_processing/" />
         <option name="precondition-lshal" value="android.hardware.audio@2.0"/>
-        <option name="test-timeout" value="120m"/>
+        <option name="test-timeout" value="60m"/>
+        <option name="gtest-batch-mode" value="true"/>
     </test>
 </configuration>
diff --git a/automotive/vehicle/V2_0/host/VtsHalAutomotiveVehicleV2_0HostTest.py b/automotive/vehicle/V2_0/host/VtsHalAutomotiveVehicleV2_0HostTest.py
index 67043a7..af406dd 100644
--- a/automotive/vehicle/V2_0/host/VtsHalAutomotiveVehicleV2_0HostTest.py
+++ b/automotive/vehicle/V2_0/host/VtsHalAutomotiveVehicleV2_0HostTest.py
@@ -324,7 +324,6 @@
             self.vtypes.VehicleProperty.INFO_MODEL_YEAR,
             self.vtypes.VehicleProperty.INFO_FUEL_CAPACITY,
             self.vtypes.VehicleProperty.HVAC_FAN_DIRECTION_AVAILABLE,
-            self.vtypes.VehicleProperty.AUDIO_HW_VARIANT,
             self.vtypes.VehicleProperty.AP_POWER_BOOTUP_REASON,
         ])
         for c in self.configList:
diff --git a/media/omx/V1_0/host_basic/Android.mk b/bluetooth/V1_0/app/Android.mk
similarity index 86%
rename from media/omx/V1_0/host_basic/Android.mk
rename to bluetooth/V1_0/app/Android.mk
index 16535d5..32c4fdc 100644
--- a/media/omx/V1_0/host_basic/Android.mk
+++ b/bluetooth/V1_0/app/Android.mk
@@ -18,6 +18,7 @@
 
 include $(CLEAR_VARS)
 
-LOCAL_MODULE := VtsHalMediaOmxV1_0HostBasic
-VTS_CONFIG_SRC_DIR := testcases/hal/media/omx/V1_0/host_basic
+LOCAL_MODULE := VtsAppBluetooth
+VTS_CONFIG_SRC_DIR := testcases/hal/bluetooth/V1_0/app
 include test/vts/tools/build/Android.host_config.mk
+
diff --git a/bluetooth/V1_0/app/AndroidTest.xml b/bluetooth/V1_0/app/AndroidTest.xml
new file mode 100644
index 0000000..148666c
--- /dev/null
+++ b/bluetooth/V1_0/app/AndroidTest.xml
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- 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.
+-->
+<configuration description="Config for VTS VtsAppBluetooth test cases">
+    <option name="config-descriptor:metadata" key="plan" value="vts-misc" />
+    <multi_target_preparer class="com.android.tradefed.targetprep.VtsPythonVirtualenvPreparer">
+        <option name="no-dep-module" value="enum" />
+        <option name="dep-module" value="enum34" />
+        <option name="dep-module" value="pyserial" />
+        <option name="dep-module" value="shellescape" />
+        <option name="dep-module" value="statistics" />
+        <option name="dep-module" value="subprocess32" />
+    </multi_target_preparer>
+
+    <test class="com.android.tradefed.testtype.VtsMultiDeviceTest">
+        <option name="test-module-name" value="VtsAppBluetooth"/>
+        <option name="test-case-path" value="vts/testcases/acts/bt/BtAirplaneModeTest"/>
+        <option name="test-case-path-type" value="file"/>
+        <option name="test-timeout" value="10m"/>
+        <option name="test-config-path" value="vts/testcases/hal/bluetooth/V1_0/app/VtsAppBluetooth.config" />
+    </test>
+</configuration>
diff --git a/bluetooth/V1_0/app/VtsAppBluetooth.config b/bluetooth/V1_0/app/VtsAppBluetooth.config
new file mode 100644
index 0000000..af0bb9b
--- /dev/null
+++ b/bluetooth/V1_0/app/VtsAppBluetooth.config
@@ -0,0 +1,22 @@
+{
+    "test_bed":
+    [
+        {
+            "name": "VtsAppBluetooth",
+            "AndroidDevice":
+            [
+                {
+                    "enable_sl4a": true,
+                    "enable_sl4a_ed": true,
+                    "enable_vts_agent": false
+                },
+                {
+                    "enable_sl4a": true,
+                    "enable_sl4a_ed": true,
+                    "enable_vts_agent": false
+                }
+            ]
+        }
+    ],
+    "aware_default_power_mode": "INTERACTIVE"
+}
diff --git a/broadcastradio/V1_0/OWNERS b/broadcastradio/V1_0/OWNERS
new file mode 100644
index 0000000..b159083
--- /dev/null
+++ b/broadcastradio/V1_0/OWNERS
@@ -0,0 +1,4 @@
+elaurent@google.com
+krocard@google.com
+mnaganov@google.com
+twasilczyk@google.com
diff --git a/media/omx/V1_0/host_basic/Android.mk b/gnss/V1_1/target/Android.mk
similarity index 86%
copy from media/omx/V1_0/host_basic/Android.mk
copy to gnss/V1_1/target/Android.mk
index 16535d5..3b546e4 100644
--- a/media/omx/V1_0/host_basic/Android.mk
+++ b/gnss/V1_1/target/Android.mk
@@ -18,6 +18,6 @@
 
 include $(CLEAR_VARS)
 
-LOCAL_MODULE := VtsHalMediaOmxV1_0HostBasic
-VTS_CONFIG_SRC_DIR := testcases/hal/media/omx/V1_0/host_basic
+LOCAL_MODULE := VtsHalGnssV1_1Target
+VTS_CONFIG_SRC_DIR := testcases/hal/gnss/V1_1/target
 include test/vts/tools/build/Android.host_config.mk
diff --git a/gnss/V1_1/target/AndroidTest.xml b/gnss/V1_1/target/AndroidTest.xml
new file mode 100644
index 0000000..959fb27
--- /dev/null
+++ b/gnss/V1_1/target/AndroidTest.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- 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.
+-->
+<configuration description="Config for VTS VtsHalGnssV1_1Target test cases">
+    <option name="config-descriptor:metadata" key="plan" value="vts-hal" />
+    <target_preparer class="com.android.compatibility.common.tradefed.targetprep.VtsFilePusher">
+        <option name="abort-on-push-failure" value="false"/>
+        <option name="push-group" value="HalHidlTargetTest.push"/>
+    </target_preparer>
+    <multi_target_preparer class="com.android.tradefed.targetprep.VtsPythonVirtualenvPreparer" />
+    <test class="com.android.tradefed.testtype.VtsMultiDeviceTest">
+        <option name="test-module-name" value="VtsHalGnssV1_1Target"/>
+        <option name="binary-test-source" value="_32bit::DATA/nativetest/VtsHalGnssV1_1TargetTest/VtsHalGnssV1_1TargetTest"/>
+        <option name="binary-test-source" value="_64bit::DATA/nativetest64/VtsHalGnssV1_1TargetTest/VtsHalGnssV1_1TargetTest"/>
+        <option name="binary-test-type" value="hal_hidl_gtest"/>
+        <option name="binary-test-disable-framework" value="true"/>
+        <option name="binary-test-stop-native-servers" value="true"/>
+        <option name="precondition-lshal" value="android.hardware.gnss@1.1"/>
+        <option name="test-timeout" value="15m"/>
+    </test>
+</configuration>
diff --git a/graphics/common/V1_1/build/Android.bp b/graphics/common/V1_1/build/Android.bp
new file mode 100644
index 0000000..6950b93
--- /dev/null
+++ b/graphics/common/V1_1/build/Android.bp
@@ -0,0 +1,94 @@
+// This file was auto-generated. Do not edit manually.
+// Use test/vts-testcase/hal/script/update_makefiles.py to generate this file.
+
+// Generate .vts spec files.
+hal2vts {
+    name: "android.hardware.graphics.common@1.1-vts.spec",
+    srcs: [
+        ":android.hardware.graphics.common@1.1_hal",
+    ],
+    out: [
+        "android/hardware/graphics/common/1.1/types.vts",
+    ],
+}
+
+// Build VTS driver.
+genrule {
+    name: "android.hardware.graphics.common@1.1-vts.driver_genc++",
+    tools: ["hidl-gen", "vtsc"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lvts -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.graphics.common@1.1 && $(location vtsc) -mDRIVER -tSOURCE -b$(genDir) android/hardware/graphics/common/1.1/ $(genDir)/android/hardware/graphics/common/1.1/",
+    srcs: [
+        ":android.hardware.graphics.common@1.1_hal",
+    ],
+    out: [
+        "android/hardware/graphics/common/1.1/types.vts.cpp",
+    ],
+}
+
+genrule {
+    name: "android.hardware.graphics.common@1.1-vts.driver_genc++_headers",
+    tools: ["hidl-gen", "vtsc"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lvts -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.graphics.common@1.1 && $(location vtsc) -mDRIVER -tHEADER -b$(genDir) android/hardware/graphics/common/1.1/ $(genDir)/android/hardware/graphics/common/1.1/",
+    srcs: [
+        ":android.hardware.graphics.common@1.1_hal",
+    ],
+    out: [
+        "android/hardware/graphics/common/1.1/types.vts.h",
+    ],
+}
+
+cc_library_shared {
+    name: "android.hardware.graphics.common@1.1-vts.driver",
+    generated_sources: ["android.hardware.graphics.common@1.1-vts.driver_genc++"],
+    generated_headers: ["android.hardware.graphics.common@1.1-vts.driver_genc++_headers"],
+    export_generated_headers: ["android.hardware.graphics.common@1.1-vts.driver_genc++_headers"],
+    defaults: ["VtsHalDriverDefaults"],
+    shared_libs: [
+        "android.hardware.graphics.common@1.0-vts.driver",
+    ],
+    static_libs: [
+        "android.hardware.graphics.common@1.0",
+        "android.hardware.graphics.common@1.1",
+    ],
+}
+
+// Build VTS profiler.
+genrule {
+    name: "android.hardware.graphics.common@1.1-vts.profiler_genc++",
+    tools: ["hidl-gen", "vtsc"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lvts -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.graphics.common@1.1 && $(location vtsc) -mPROFILER -tSOURCE -b$(genDir) android/hardware/graphics/common/1.1/ $(genDir)/android/hardware/graphics/common/1.1/",
+    srcs: [
+        ":android.hardware.graphics.common@1.1_hal",
+    ],
+    out: [
+        "android/hardware/graphics/common/1.1/types.vts.cpp",
+    ],
+}
+
+genrule {
+    name: "android.hardware.graphics.common@1.1-vts.profiler_genc++_headers",
+    tools: ["hidl-gen", "vtsc"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lvts -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.graphics.common@1.1 && $(location vtsc) -mPROFILER -tHEADER -b$(genDir) android/hardware/graphics/common/1.1/ $(genDir)/android/hardware/graphics/common/1.1/",
+    srcs: [
+        ":android.hardware.graphics.common@1.1_hal",
+    ],
+    out: [
+        "android/hardware/graphics/common/1.1/types.vts.h",
+    ],
+}
+
+cc_library_shared {
+    name: "android.hardware.graphics.common@1.1-vts.profiler",
+    generated_sources: ["android.hardware.graphics.common@1.1-vts.profiler_genc++"],
+    generated_headers: ["android.hardware.graphics.common@1.1-vts.profiler_genc++_headers"],
+    export_generated_headers: ["android.hardware.graphics.common@1.1-vts.profiler_genc++_headers"],
+    defaults: ["VtsHalProfilerDefaults"],
+    shared_libs: [
+        "android.hardware.graphics.common@1.0-vts.profiler",
+    ],
+    static_libs: [
+        "android.hardware.graphics.common@1.0",
+        "android.hardware.graphics.common@1.1",
+    ],
+}
+
diff --git a/graphics/mapper/V2_1/build/Android.bp b/graphics/mapper/V2_1/build/Android.bp
new file mode 100644
index 0000000..7454f2d
--- /dev/null
+++ b/graphics/mapper/V2_1/build/Android.bp
@@ -0,0 +1,102 @@
+// This file was auto-generated. Do not edit manually.
+// Use test/vts-testcase/hal/script/update_makefiles.py to generate this file.
+
+// Generate .vts spec files.
+hal2vts {
+    name: "android.hardware.graphics.mapper@2.1-vts.spec",
+    srcs: [
+        ":android.hardware.graphics.mapper@2.1_hal",
+    ],
+    out: [
+        "android/hardware/graphics/mapper/2.1/Mapper.vts",
+    ],
+}
+
+// Build VTS driver.
+genrule {
+    name: "android.hardware.graphics.mapper@2.1-vts.driver_genc++",
+    tools: ["hidl-gen", "vtsc"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lvts -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.graphics.mapper@2.1 && $(location vtsc) -mDRIVER -tSOURCE -b$(genDir) android/hardware/graphics/mapper/2.1/ $(genDir)/android/hardware/graphics/mapper/2.1/",
+    srcs: [
+        ":android.hardware.graphics.mapper@2.1_hal",
+    ],
+    out: [
+        "android/hardware/graphics/mapper/2.1/Mapper.vts.cpp",
+    ],
+}
+
+genrule {
+    name: "android.hardware.graphics.mapper@2.1-vts.driver_genc++_headers",
+    tools: ["hidl-gen", "vtsc"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lvts -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.graphics.mapper@2.1 && $(location vtsc) -mDRIVER -tHEADER -b$(genDir) android/hardware/graphics/mapper/2.1/ $(genDir)/android/hardware/graphics/mapper/2.1/",
+    srcs: [
+        ":android.hardware.graphics.mapper@2.1_hal",
+    ],
+    out: [
+        "android/hardware/graphics/mapper/2.1/Mapper.vts.h",
+    ],
+}
+
+cc_library_shared {
+    name: "android.hardware.graphics.mapper@2.1-vts.driver",
+    generated_sources: ["android.hardware.graphics.mapper@2.1-vts.driver_genc++"],
+    generated_headers: ["android.hardware.graphics.mapper@2.1-vts.driver_genc++_headers"],
+    export_generated_headers: ["android.hardware.graphics.mapper@2.1-vts.driver_genc++_headers"],
+    defaults: ["VtsHalDriverDefaults"],
+    shared_libs: [
+        "android.hardware.graphics.common@1.0-vts.driver",
+        "android.hardware.graphics.common@1.1-vts.driver",
+        "android.hardware.graphics.mapper@2.0-vts.driver",
+    ],
+    static_libs: [
+        "android.hardware.graphics.common@1.0",
+        "android.hardware.graphics.common@1.1",
+        "android.hardware.graphics.mapper@2.0",
+        "android.hardware.graphics.mapper@2.1",
+    ],
+}
+
+// Build VTS profiler.
+genrule {
+    name: "android.hardware.graphics.mapper@2.1-vts.profiler_genc++",
+    tools: ["hidl-gen", "vtsc"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lvts -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.graphics.mapper@2.1 && $(location vtsc) -mPROFILER -tSOURCE -b$(genDir) android/hardware/graphics/mapper/2.1/ $(genDir)/android/hardware/graphics/mapper/2.1/",
+    srcs: [
+        ":android.hardware.graphics.mapper@2.1_hal",
+    ],
+    out: [
+        "android/hardware/graphics/mapper/2.1/Mapper.vts.cpp",
+    ],
+}
+
+genrule {
+    name: "android.hardware.graphics.mapper@2.1-vts.profiler_genc++_headers",
+    tools: ["hidl-gen", "vtsc"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lvts -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.graphics.mapper@2.1 && $(location vtsc) -mPROFILER -tHEADER -b$(genDir) android/hardware/graphics/mapper/2.1/ $(genDir)/android/hardware/graphics/mapper/2.1/",
+    srcs: [
+        ":android.hardware.graphics.mapper@2.1_hal",
+    ],
+    out: [
+        "android/hardware/graphics/mapper/2.1/Mapper.vts.h",
+    ],
+}
+
+cc_library_shared {
+    name: "android.hardware.graphics.mapper@2.1-vts.profiler",
+    generated_sources: ["android.hardware.graphics.mapper@2.1-vts.profiler_genc++"],
+    generated_headers: ["android.hardware.graphics.mapper@2.1-vts.profiler_genc++_headers"],
+    export_generated_headers: ["android.hardware.graphics.mapper@2.1-vts.profiler_genc++_headers"],
+    defaults: ["VtsHalProfilerDefaults"],
+    shared_libs: [
+        "android.hardware.graphics.common@1.0-vts.profiler",
+        "android.hardware.graphics.common@1.1-vts.profiler",
+        "android.hardware.graphics.mapper@2.0-vts.profiler",
+    ],
+    static_libs: [
+        "android.hardware.graphics.common@1.0",
+        "android.hardware.graphics.common@1.1",
+        "android.hardware.graphics.mapper@2.0",
+        "android.hardware.graphics.mapper@2.1",
+    ],
+}
+
diff --git a/media/omx/V1_0/host_basic/Android.mk b/graphics/mapper/V2_1/target/Android.mk
similarity index 86%
copy from media/omx/V1_0/host_basic/Android.mk
copy to graphics/mapper/V2_1/target/Android.mk
index 16535d5..c12cc9a 100644
--- a/media/omx/V1_0/host_basic/Android.mk
+++ b/graphics/mapper/V2_1/target/Android.mk
@@ -18,6 +18,6 @@
 
 include $(CLEAR_VARS)
 
-LOCAL_MODULE := VtsHalMediaOmxV1_0HostBasic
-VTS_CONFIG_SRC_DIR := testcases/hal/media/omx/V1_0/host_basic
+LOCAL_MODULE := VtsHalGraphicsMapperV2_1Target
+VTS_CONFIG_SRC_DIR := testcases/hal/graphics/mapper/V2_1/target
 include test/vts/tools/build/Android.host_config.mk
diff --git a/graphics/mapper/V2_1/target/AndroidTest.xml b/graphics/mapper/V2_1/target/AndroidTest.xml
new file mode 100644
index 0000000..2e9d11e
--- /dev/null
+++ b/graphics/mapper/V2_1/target/AndroidTest.xml
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- 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.
+-->
+<configuration description="Config for VTS VtsHalGraphicsMapperV2_1Target test cases">
+    <option name="config-descriptor:metadata" key="plan" value="vts-hal" />
+    <target_preparer class="com.android.compatibility.common.tradefed.targetprep.VtsFilePusher">
+        <option name="abort-on-push-failure" value="false"/>
+        <option name="push-group" value="HalHidlTargetTest.push"/>
+    </target_preparer>
+    <multi_target_preparer class="com.android.tradefed.targetprep.VtsPythonVirtualenvPreparer" />
+    <test class="com.android.tradefed.testtype.VtsMultiDeviceTest">
+        <option name="test-module-name" value="VtsHalGraphicsMapperV2_1Target"/>
+        <option name="binary-test-working-directory" value="_32bit::/data/nativetest/" />
+        <option name="binary-test-working-directory" value="_64bit::/data/nativetest64/" />
+        <option name="binary-test-source" value="_32bit::DATA/nativetest/VtsHalGraphicsMapperV2_1TargetTest/VtsHalGraphicsMapperV2_1TargetTest"/>
+        <option name="binary-test-source" value="_64bit::DATA/nativetest64/VtsHalGraphicsMapperV2_1TargetTest/VtsHalGraphicsMapperV2_1TargetTest"/>
+        <option name="binary-test-type" value="hal_hidl_gtest"/>
+        <option name="binary-test-disable-framework" value="true"/>
+        <option name="binary-test-stop-native-servers" value="true"/>
+        <option name="precondition-lshal" value="android.hardware.graphics.mapper@2.1"/>
+        <option name="test-timeout" value="5m"/>
+    </test>
+</configuration>
diff --git a/media/omx/V1_0/host_basic/Android.mk b/graphics/mapper/V2_1/target_profiling/Android.mk
similarity index 84%
copy from media/omx/V1_0/host_basic/Android.mk
copy to graphics/mapper/V2_1/target_profiling/Android.mk
index 16535d5..4d884d8 100644
--- a/media/omx/V1_0/host_basic/Android.mk
+++ b/graphics/mapper/V2_1/target_profiling/Android.mk
@@ -18,6 +18,6 @@
 
 include $(CLEAR_VARS)
 
-LOCAL_MODULE := VtsHalMediaOmxV1_0HostBasic
-VTS_CONFIG_SRC_DIR := testcases/hal/media/omx/V1_0/host_basic
+LOCAL_MODULE := VtsHalGraphicsMapperV2_1TargetProfiling
+VTS_CONFIG_SRC_DIR := testcases/hal/graphics/mapper/V2_1/target_profiling
 include test/vts/tools/build/Android.host_config.mk
diff --git a/graphics/mapper/V2_1/target_profiling/AndroidTest.xml b/graphics/mapper/V2_1/target_profiling/AndroidTest.xml
new file mode 100644
index 0000000..016c91c
--- /dev/null
+++ b/graphics/mapper/V2_1/target_profiling/AndroidTest.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- 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.
+-->
+<configuration description="Config for VTS VtsHalGraphicsMapperV2_1TargetProfiling test cases">
+    <option name="config-descriptor:metadata" key="plan" value="vts-hal-profiling" />
+    <target_preparer class="com.android.compatibility.common.tradefed.targetprep.VtsFilePusher">
+        <option name="abort-on-push-failure" value="false"/>
+        <option name="push-group" value="HalHidlTargetProfilingTest.push"/>
+        <option name="cleanup" value="true"/>
+        <option name="push" value="DATA/lib/android.hardware.graphics.common@1.0-vts.profiler.so->/data/local/tmp/32/android.hardware.graphics.common@1.0-vts.profiler.so"/>
+        <option name="push" value="DATA/lib64/android.hardware.graphics.common@1.0-vts.profiler.so->/data/local/tmp/64/android.hardware.graphics.common@1.0-vts.profiler.so"/>
+        <option name="push" value="DATA/lib/android.hardware.graphics.common@1.1-vts.profiler.so->/data/local/tmp/32/android.hardware.graphics.common@1.1-vts.profiler.so"/>
+        <option name="push" value="DATA/lib64/android.hardware.graphics.common@1.1-vts.profiler.so->/data/local/tmp/64/android.hardware.graphics.common@1.1-vts.profiler.so"/>
+        <option name="push" value="DATA/lib/android.hardware.graphics.mapper@2.0-vts.profiler.so->/data/local/tmp/32/android.hardware.graphics.mapper@2.0-vts.profiler.so"/>
+        <option name="push" value="DATA/lib64/android.hardware.graphics.mapper@2.0-vts.profiler.so->/data/local/tmp/64/android.hardware.graphics.mapper@2.0-vts.profiler.so"/>
+        <option name="push" value="DATA/lib/android.hardware.graphics.mapper@2.1-vts.profiler.so->/data/local/tmp/32/android.hardware.graphics.mapper@2.1-vts.profiler.so"/>
+        <option name="push" value="DATA/lib64/android.hardware.graphics.mapper@2.1-vts.profiler.so->/data/local/tmp/64/android.hardware.graphics.mapper@2.1-vts.profiler.so"/>
+    </target_preparer>
+    <multi_target_preparer class="com.android.tradefed.targetprep.VtsPythonVirtualenvPreparer" />
+    <test class="com.android.tradefed.testtype.VtsMultiDeviceTest">
+        <option name="test-module-name" value="VtsHalGraphicsMapperV2_1TargetProfiling"/>
+        <option name="binary-test-source" value="_32bit::DATA/nativetest/VtsHalGraphicsMapperV2_1TargetTest/VtsHalGraphicsMapperV2_1TargetTest"/>
+        <option name="binary-test-source" value="_64bit::DATA/nativetest64/VtsHalGraphicsMapperV2_1TargetTest/VtsHalGraphicsMapperV2_1TargetTest"/>
+        <option name="binary-test-type" value="hal_hidl_gtest"/>
+        <option name="binary-test-disable-framework" value="true"/>
+        <option name="binary-test-stop-native-servers" value="true"/>
+        <option name="enable-profiling" value="true"/>
+        <option name="precondition-lshal" value="android.hardware.graphics.mapper@2.1"/>
+        <option name="test-timeout" value="5m"/>
+    </test>
+</configuration>
diff --git a/media/omx/V1_0/host_basic/Android.mk b/health/V2_0/target/Android.mk
similarity index 86%
copy from media/omx/V1_0/host_basic/Android.mk
copy to health/V2_0/target/Android.mk
index 16535d5..9724c2d 100644
--- a/media/omx/V1_0/host_basic/Android.mk
+++ b/health/V2_0/target/Android.mk
@@ -18,6 +18,6 @@
 
 include $(CLEAR_VARS)
 
-LOCAL_MODULE := VtsHalMediaOmxV1_0HostBasic
-VTS_CONFIG_SRC_DIR := testcases/hal/media/omx/V1_0/host_basic
+LOCAL_MODULE := VtsHalHealthV2_0Target
+VTS_CONFIG_SRC_DIR := testcases/hal/health/V2_0/target
 include test/vts/tools/build/Android.host_config.mk
diff --git a/health/V2_0/target/AndroidTest.xml b/health/V2_0/target/AndroidTest.xml
new file mode 100644
index 0000000..da96a9e
--- /dev/null
+++ b/health/V2_0/target/AndroidTest.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- 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.
+-->
+<configuration description="Config for VTS VtsHalHealthV2_0Target test cases">
+    <option name="config-descriptor:metadata" key="plan" value="vts-hal" />
+    <target_preparer class="com.android.compatibility.common.tradefed.targetprep.VtsFilePusher">
+        <option name="abort-on-push-failure" value="false"/>
+        <option name="push-group" value="HalHidlTargetTest.push"/>
+    </target_preparer>
+    <multi_target_preparer class="com.android.tradefed.targetprep.VtsPythonVirtualenvPreparer" />
+    <test class="com.android.tradefed.testtype.VtsMultiDeviceTest">
+        <option name="test-module-name" value="VtsHalHealthV2_0Target"/>
+        <option name="binary-test-source" value="_32bit::DATA/nativetest/VtsHalHealthV2_0TargetTest/VtsHalHealthV2_0TargetTest"/>
+        <option name="binary-test-source" value="_64bit::DATA/nativetest64/VtsHalHealthV2_0TargetTest/VtsHalHealthV2_0TargetTest"/>
+        <option name="binary-test-type" value="hal_hidl_gtest"/>
+        <option name="binary-test-disable-framework" value="true"/>
+        <option name="binary-test-stop-native-servers" value="true"/>
+        <option name="precondition-lshal" value="android.hardware.health@2.0"/>
+        <option name="test-timeout" value="1m"/>
+    </test>
+</configuration>
diff --git a/keymaster/V3_0/target_profiling/AndroidTest.xml b/keymaster/V3_0/target_profiling/AndroidTest.xml
index 6030552..87d6cb6 100644
--- a/keymaster/V3_0/target_profiling/AndroidTest.xml
+++ b/keymaster/V3_0/target_profiling/AndroidTest.xml
@@ -17,7 +17,7 @@
     <option name="config-descriptor:metadata" key="plan" value="vts-hal-profiling" />
     <target_preparer class="com.android.compatibility.common.tradefed.targetprep.VtsFilePusher">
         <option name="abort-on-push-failure" value="false"/>
-        <option name="push-group" value="HalHidlHostTest.push"/>
+        <option name="push-group" value="HalHidlTargetProfilingTest.push"/>
         <option name="push" value="DATA/lib/android.hardware.keymaster@3.0-vts.profiler.so->/data/local/tmp/32/android.hardware.keymaster@3.0-vts.profiler.so"/>
         <option name="push" value="DATA/lib64/android.hardware.keymaster@3.0-vts.profiler.so->/data/local/tmp/64/android.hardware.keymaster@3.0-vts.profiler.so"/>
     </target_preparer>
diff --git a/media/omx/V1_0/host_basic/AndroidTest.xml b/media/omx/V1_0/host_basic/AndroidTest.xml
deleted file mode 100644
index 0b866fe..0000000
--- a/media/omx/V1_0/host_basic/AndroidTest.xml
+++ /dev/null
@@ -1,48 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- 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.
--->
-<configuration description="Config for VTS VtsHalMediaOmxV1_0HostBasic test cases">
-    <option name="config-descriptor:metadata" key="plan" value="vts-misc" />
-    <target_preparer class="com.android.compatibility.common.tradefed.targetprep.VtsFilePusher">
-        <option name="abort-on-push-failure" value="true"/>
-        <option name="push-group" value="HalHidlHostTest.push"/>
-        <option name="cleanup" value="true"/>
-        <option name="push" value="spec/hardware/interfaces/media/omx/1.0/vts/GraphicBufferSource.vts->/data/local/tmp/spec/android/hardware/media/omx/1.0/GraphicBufferSource.vts"/>
-        <option name="push" value="spec/hardware/interfaces/media/omx/1.0/vts/Omx.vts->/data/local/tmp/spec/android/hardware/media/omx/1.0/Omx.vts"/>
-        <option name="push" value="spec/hardware/interfaces/media/omx/1.0/vts/OmxBufferSource.vts->/data/local/tmp/spec/android/hardware/media/omx/1.0/OmxBufferSource.vts"/>
-        <option name="push" value="spec/hardware/interfaces/media/omx/1.0/vts/OmxNode.vts->/data/local/tmp/spec/android/hardware/media/omx/1.0/OmxNode.vts"/>
-        <option name="push" value="spec/hardware/interfaces/media/omx/1.0/vts/OmxObserver.vts->/data/local/tmp/spec/android/hardware/media/omx/1.0/OmxObserver.vts"/>
-        <option name="push" value="spec/hardware/interfaces/media/omx/1.0/vts/OmxStore.vts->/data/local/tmp/spec/android/hardware/media/omx/1.0/OmxStore.vts"/>
-        <option name="push" value="spec/hardware/interfaces/media/omx/1.0/vts/types.vts->/data/local/tmp/spec/android/hardware/media/omx/1.0/types.vts"/>
-        <option name="push" value="spec/hardware/interfaces/graphics/common/1.0/vts/types.vts->/data/local/tmp/spec/android/hardware/graphics/common/1.0/types.vts"/>
-        <option name="push" value="spec/hardware/interfaces/media/1.0/vts/types.vts->/data/local/tmp/spec/android/hardware/media/1.0/types.vts"/>
-        <option name="push" value="DATA/lib/android.hardware.graphics.bufferqueue@1.0-vts.driver.so->/data/local/tmp/32/android.hardware.graphics.bufferqueue@1.0-vts.driver.so"/>
-        <option name="push" value="DATA/lib64/android.hardware.graphics.bufferqueue@1.0-vts.driver.so->/data/local/tmp/64/android.hardware.graphics.bufferqueue@1.0-vts.driver.so"/>
-        <option name="push" value="DATA/lib/android.hardware.graphics.common@1.0-vts.driver.so->/data/local/tmp/32/android.hardware.graphics.common@1.0-vts.driver.so"/>
-        <option name="push" value="DATA/lib64/android.hardware.graphics.common@1.0-vts.driver.so->/data/local/tmp/64/android.hardware.graphics.common@1.0-vts.driver.so"/>
-        <option name="push" value="DATA/lib/android.hardware.media@1.0-vts.driver.so->/data/local/tmp/32/android.hardware.media@1.0-vts.driver.so"/>
-        <option name="push" value="DATA/lib64/android.hardware.media@1.0-vts.driver.so->/data/local/tmp/64/android.hardware.media@1.0-vts.driver.so"/>
-        <option name="push" value="DATA/lib/android.hardware.media.omx@1.0-vts.driver.so->/data/local/tmp/32/android.hardware.media.omx@1.0-vts.driver.so"/>
-        <option name="push" value="DATA/lib64/android.hardware.media.omx@1.0-vts.driver.so->/data/local/tmp/64/android.hardware.media.omx@1.0-vts.driver.so"/>
-    </target_preparer>
-    <multi_target_preparer class="com.android.tradefed.targetprep.VtsPythonVirtualenvPreparer" />
-    <test class="com.android.tradefed.testtype.VtsMultiDeviceTest">
-        <option name="test-module-name" value="VtsHalMediaOmxV1_0HostBasic"/>
-        <option name="test-case-path" value="vts/testcases/hal/media/omx/V1_0/host_basic/VtsHalMediaOmxV1_0HostBasicTest"/>
-        <option name="hal-hidl-package-name" value="android.hardware.media.omx@1.0"/>
-        <option name="precondition-lshal" value="android.hardware.media.omx@1.0"/>
-        <option name="test-timeout" value="1m"/>
-    </test>
-</configuration>
diff --git a/media/omx/V1_0/host_basic/VtsHalMediaOmxV1_0HostBasicTest.py b/media/omx/V1_0/host_basic/VtsHalMediaOmxV1_0HostBasicTest.py
deleted file mode 100644
index 0175368..0000000
--- a/media/omx/V1_0/host_basic/VtsHalMediaOmxV1_0HostBasicTest.py
+++ /dev/null
@@ -1,70 +0,0 @@
-#!/usr/bin/env python
-#
-# 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.
-#
-
-import logging
-import time
-
-from vts.runners.host import asserts
-from vts.runners.host import base_test
-from vts.runners.host import keys
-from vts.runners.host import test_runner
-from vts.utils.python.controllers import android_device
-from vts.utils.python.precondition import precondition_utils
-
-class VtsHalMediaOmxV1_0HostBasic(base_test.BaseTestClass):
-    """Host test class to run the Media_Omx HAL."""
-
-    def setUpClass(self):
-        self.dut = self.registerController(android_device)[0]
-
-        self.dut.shell.InvokeTerminal("one")
-        self.dut.shell.one.Execute("setenforce 0")  # SELinux permissive mode
-        if not precondition_utils.CanRunHidlHalTest(
-            self, self.dut, self.dut.shell.one):
-            self._skip_all_testcases = True
-            return
-
-        self.dut.hal.InitHidlHal(
-            target_type="media_omx",
-            target_basepaths=self.dut.libPaths,
-            target_version=1.0,
-            target_package="android.hardware.media.omx",
-            target_component_name="IOmxStore",
-            bits=int(self.abi_bitness))
-
-        if self.coverage.enabled:
-            self.coverage.LoadArtifacts()
-            self.coverage.InitializeDeviceCoverage(self.dut)
-
-    def testIOmxStoreBase(self):
-        """A simple test case which just calls each registered function."""
-
-        self.vtypes = self.dut.hal.media_omx.GetHidlTypeInterface("types")
-        status, attributes = self.dut.hal.media_omx.listServiceAttributes()
-        asserts.assertEqual(self.vtypes.Status.OK, status)
-
-        prefix = self.dut.hal.media_omx.getNodePrefix()
-        logging.info("getNodePrefix: %s", prefix)
-
-        roles = self.dut.hal.media_omx.listRoles()
-        logging.info("roles: %s", roles)
-
-        omx = self.dut.hal.media_omx.getOmx("default")
-        logging.info("omx: %s", omx)
-
-if __name__ == "__main__":
-    test_runner.main()
diff --git a/media/omx/V1_0/host_basic/__init__.py b/media/omx/V1_0/host_basic/__init__.py
deleted file mode 100644
index e69de29..0000000
--- a/media/omx/V1_0/host_basic/__init__.py
+++ /dev/null
diff --git a/media/omx/V1_0/host_omxstore/VtsHalMediaOmxStoreV1_0HostTest.py b/media/omx/V1_0/host_omxstore/VtsHalMediaOmxStoreV1_0HostTest.py
index 5dab0c2..5246651 100644
--- a/media/omx/V1_0/host_omxstore/VtsHalMediaOmxStoreV1_0HostTest.py
+++ b/media/omx/V1_0/host_omxstore/VtsHalMediaOmxStoreV1_0HostTest.py
@@ -29,24 +29,18 @@
 import re
 
 from vts.runners.host import asserts
-from vts.runners.host import base_test
 from vts.runners.host import test_runner
-from vts.utils.python.controllers import android_device
-from vts.utils.python.precondition import precondition_utils
+from vts.testcases.template.hal_hidl_host_test import hal_hidl_host_test
 
 
-class VtsHalMediaOmxStoreV1_0Host(base_test.BaseTestClass):
+class VtsHalMediaOmxStoreV1_0Host(hal_hidl_host_test.HalHidlHostTest):
     """Host test class to run the Media_OmxStore HAL."""
+    TEST_HAL_SERVICES = {
+        "android.hardware.media.omx@1.0::IOmxStore",
+    }
 
     def setUpClass(self):
-        self.dut = self.registerController(android_device)[0]
-
-        self.dut.shell.InvokeTerminal('one')
-        self.dut.shell.one.Execute('setenforce 0')  # SELinux permissive mode
-        if not precondition_utils.CanRunHidlHalTest(
-            self, self.dut, self.dut.shell.one):
-            self._skip_all_testcases = True
-            return
+        super(VtsHalMediaOmxStoreV1_0Host, self).setUpClass()
 
         self.dut.hal.InitHidlHal(
             target_type='media_omx',
@@ -59,10 +53,6 @@
         self.omxstore = self.dut.hal.media_omx
         self.vtypes = self.omxstore.GetHidlTypeInterface('types')
 
-        if self.coverage.enabled:
-            self.coverage.LoadArtifacts()
-            self.coverage.InitializeDeviceCoverage(self.dut)
-
     def testListServiceAttributes(self):
         """Test IOmxStore::listServiceAttributes().
 
diff --git a/media/omx/V1_0/host_basic/Android.mk b/power/V1_2/target/Android.mk
similarity index 80%
copy from media/omx/V1_0/host_basic/Android.mk
copy to power/V1_2/target/Android.mk
index 16535d5..1ce85cf 100644
--- a/media/omx/V1_0/host_basic/Android.mk
+++ b/power/V1_2/target/Android.mk
@@ -1,5 +1,5 @@
 #
-# Copyright (C) 2017 The Android Open Source Project
+# Copyright (C) 2018 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.
@@ -18,6 +18,6 @@
 
 include $(CLEAR_VARS)
 
-LOCAL_MODULE := VtsHalMediaOmxV1_0HostBasic
-VTS_CONFIG_SRC_DIR := testcases/hal/media/omx/V1_0/host_basic
+LOCAL_MODULE := VtsHalPowerV1_2Target
+VTS_CONFIG_SRC_DIR := testcases/hal/power/V1_2/target
 include test/vts/tools/build/Android.host_config.mk
diff --git a/power/V1_2/target/AndroidTest.xml b/power/V1_2/target/AndroidTest.xml
new file mode 100644
index 0000000..4ec3342
--- /dev/null
+++ b/power/V1_2/target/AndroidTest.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2018 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.
+-->
+<configuration description="Config for VTS VtsHalPowerV1_2Target test cases">
+    <option name="config-descriptor:metadata" key="plan" value="vts-hal" />
+    <target_preparer class="com.android.compatibility.common.tradefed.targetprep.VtsFilePusher">
+        <option name="abort-on-push-failure" value="false"/>
+        <option name="push-group" value="HalHidlTargetTest.push"/>
+    </target_preparer>
+    <multi_target_preparer class="com.android.tradefed.targetprep.VtsPythonVirtualenvPreparer"/>
+    <test class="com.android.tradefed.testtype.VtsMultiDeviceTest">
+        <option name="test-module-name" value="VtsHalPowerV1_2Target"/>
+        <option name="binary-test-source" value="_32bit::DATA/nativetest/VtsHalPowerV1_2TargetTest/VtsHalPowerV1_2TargetTest"/>
+        <option name="binary-test-source" value="_64bit::DATA/nativetest64/VtsHalPowerV1_2TargetTest/VtsHalPowerV1_2TargetTest"/>
+        <option name="binary-test-type" value="hal_hidl_gtest"/>
+        <option name="binary-test-disable-framework" value="true"/>
+        <option name="binary-test-stop-native-servers" value="true"/>
+        <option name="precondition-lshal" value="android.hardware.power@1.2"/>
+        <option name="test-timeout" value="1m"/>
+    </test>
+</configuration>
diff --git a/media/omx/V1_0/host_basic/Android.mk b/radio/V1_0/adapter/CtsAdminTestCases/Android.mk
similarity index 84%
copy from media/omx/V1_0/host_basic/Android.mk
copy to radio/V1_0/adapter/CtsAdminTestCases/Android.mk
index 16535d5..21eb252 100644
--- a/media/omx/V1_0/host_basic/Android.mk
+++ b/radio/V1_0/adapter/CtsAdminTestCases/Android.mk
@@ -18,6 +18,6 @@
 
 include $(CLEAR_VARS)
 
-LOCAL_MODULE := VtsHalMediaOmxV1_0HostBasic
-VTS_CONFIG_SRC_DIR := testcases/hal/media/omx/V1_0/host_basic
+LOCAL_MODULE := VtsHalRadioV1_0AdapterCtsAdminTestCases
+VTS_CONFIG_SRC_DIR := testcases/hal/radio/V1_0/adapter/CtsAdminTestCases
 include test/vts/tools/build/Android.host_config.mk
diff --git a/radio/V1_0/adapter/CtsAdminTestCases/AndroidTest.xml b/radio/V1_0/adapter/CtsAdminTestCases/AndroidTest.xml
new file mode 100644
index 0000000..d55d5a6
--- /dev/null
+++ b/radio/V1_0/adapter/CtsAdminTestCases/AndroidTest.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- 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.
+-->
+<configuration description="Config for VTS VtsHalRadioV1_0Adapter test cases">
+    <option name="config-descriptor:metadata" key="component" value="framework" />
+
+    <target_preparer class="com.android.compatibility.common.tradefed.targetprep.VtsFilePusher">
+        <option name="abort-on-push-failure" value="false"/>
+        <option name="push" value="DATA/nativetest/android.hardware.radio@1.0-adapter/android.hardware.radio@1.0-adapter->/data/nativetest/android.hardware.radio@1.0-adapter"/>
+        <option name="push" value="DATA/nativetest64/android.hardware.radio@1.0-adapter/android.hardware.radio@1.0-adapter->/data/nativetest64/android.hardware.radio@1.0-adapter"/>
+        <option name="push" value="DATA/lib/android.hardware.radio@1.0-adapter-helper.so->/data/nativetest/lib/android.hardware.radio@1.0-adapter-helper.so"/>
+        <option name="push" value="DATA/lib64/android.hardware.radio@1.0-adapter-helper.so->/data/nativetest64/lib/android.hardware.radio@1.0-adapter-helper.so"/>
+    </target_preparer>
+
+    <target_preparer class="com.android.tradefed.targetprep.VtsHalAdapterPreparer">
+        <option name="adapter-binary-name" value="android.hardware.radio@1.0-adapter"/>
+        <option name="interface-name" value="IRadio"/>
+        <option name="service-name" value="default"/>
+        <option name="thread-count" value="1"/>
+    </target_preparer>
+
+    <target_preparer class="com.android.tradefed.targetprep.suite.SuiteApkInstaller">
+        <option name="cleanup-apks" value="true" />
+        <option name="install-arg" value="-t" />
+        <option name="test-file-name" value="CtsAdminApp.apk" />
+        <option name="test-file-name" value="CtsAdminTestCases.apk" />
+    </target_preparer>
+
+    <target_preparer class="com.android.tradefed.targetprep.RunCommandTargetPreparer">
+        <option name="run-command" value="dpm set-active-admin --user cur android.admin.app/.CtsDeviceAdminReceiver" />
+        <option name="run-command" value="dpm set-active-admin --user cur android.admin.app/.CtsDeviceAdminReceiver2" />
+        <option name="run-command" value="dpm set-profile-owner --user cur android.admin.app/.CtsDeviceAdminProfileOwner" />
+        <option name="teardown-command" value="dpm remove-active-admin --user cur android.admin.app/.CtsDeviceAdminProfileOwner" />
+        <option name="teardown-command" value="dpm remove-active-admin --user cur android.admin.app/.CtsDeviceAdminReceiver" />
+        <option name="teardown-command" value="dpm remove-active-admin --user cur android.admin.app/.CtsDeviceAdminReceiver2" />
+    </target_preparer>
+
+    <test class="com.android.tradefed.testtype.AndroidJUnitTest" >
+        <option name="package" value="android.admin.cts" />
+        <option name="runtime-hint" value="17m" />
+    </test>
+</configuration>
diff --git a/media/omx/V1_0/host_basic/Android.mk b/radio/V1_0/adapter/CtsTelephonyTestCases/Android.mk
similarity index 83%
copy from media/omx/V1_0/host_basic/Android.mk
copy to radio/V1_0/adapter/CtsTelephonyTestCases/Android.mk
index 16535d5..79b112d 100644
--- a/media/omx/V1_0/host_basic/Android.mk
+++ b/radio/V1_0/adapter/CtsTelephonyTestCases/Android.mk
@@ -18,6 +18,6 @@
 
 include $(CLEAR_VARS)
 
-LOCAL_MODULE := VtsHalMediaOmxV1_0HostBasic
-VTS_CONFIG_SRC_DIR := testcases/hal/media/omx/V1_0/host_basic
+LOCAL_MODULE := VtsHalRadioV1_0AdapterCtsTelephonyTestCases
+VTS_CONFIG_SRC_DIR := testcases/hal/radio/V1_0/adapter/CtsTelephonyTestCases
 include test/vts/tools/build/Android.host_config.mk
diff --git a/radio/V1_0/adapter/CtsTelephonyTestCases/AndroidTest.xml b/radio/V1_0/adapter/CtsTelephonyTestCases/AndroidTest.xml
new file mode 100644
index 0000000..ed1b964
--- /dev/null
+++ b/radio/V1_0/adapter/CtsTelephonyTestCases/AndroidTest.xml
@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- 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.
+-->
+<configuration description="Config for VTS VtsHalRadioV1_0Adapter test cases">
+    <target_preparer class="com.android.compatibility.common.tradefed.targetprep.VtsFilePusher">
+        <option name="abort-on-push-failure" value="false"/>
+        <option name="push" value="DATA/nativetest/android.hardware.radio@1.0-adapter/android.hardware.radio@1.0-adapter->/data/nativetest/android.hardware.radio@1.0-adapter"/>
+        <option name="push" value="DATA/nativetest64/android.hardware.radio@1.0-adapter/android.hardware.radio@1.0-adapter->/data/nativetest64/android.hardware.radio@1.0-adapter"/>
+        <option name="push" value="DATA/lib/android.hardware.radio@1.0-adapter-helper.so->/data/nativetest/lib/android.hardware.radio@1.0-adapter-helper.so"/>
+        <option name="push" value="DATA/lib64/android.hardware.radio@1.0-adapter-helper.so->/data/nativetest64/lib/android.hardware.radio@1.0-adapter-helper.so"/>
+    </target_preparer>
+
+    <target_preparer class="com.android.tradefed.targetprep.VtsHalAdapterPreparer">
+        <option name="adapter-binary-name" value="android.hardware.radio@1.0-adapter"/>
+        <option name="interface-name" value="IRadio"/>
+        <option name="service-name" value="default"/>
+        <option name="thread-count" value="1"/>
+    </target_preparer>
+
+    <target_preparer class="android.telephony.cts.preconditions.TelephonyPreparer">
+        <option name="apk" value="CtsTelephonyPreparerApp.apk" />
+        <option name="package" value="android.telephony.cts.preconditions.app" />
+    </target_preparer>
+    <option name="config-descriptor:metadata" key="component" value="telecom" />
+    <target_preparer class="com.android.compatibility.common.tradefed.targetprep.TokenRequirement">
+        <option name="token" value="sim-card" />
+    </target_preparer>
+    <target_preparer class="com.android.tradefed.targetprep.suite.SuiteApkInstaller">
+        <option name="cleanup-apks" value="true" />
+        <option name="test-file-name" value="CtsTelephonyTestCases.apk" />
+        <option name="test-file-name" value="EmbmsMiddlewareCtsTestApp.apk"/>
+    </target_preparer>
+    <test class="com.android.tradefed.testtype.AndroidJUnitTest" >
+        <option name="package" value="android.telephony.cts" />
+    </test>
+    <target_preparer class="com.android.tradefed.targetprep.RunCommandTargetPreparer">
+        <option name="run-command" value="pm disable com.google.android.dialer/com.android.voicemail.impl.StatusCheckJobService" />
+        <option name="run-command" value="pm disable com.google.android.dialer/com.android.voicemail.impl.OmtpService" />
+        <option name="teardown-command" value="pm enable com.google.android.dialer/com.android.voicemail.impl.StatusCheckJobService" />
+        <option name="teardown-command" value="pm enable com.google.android.dialer/com.android.voicemail.impl.OmtpService" />
+        <option name="run-command" value="pm disable com.android.dialer/com.android.voicemail.impl.StatusCheckJobService" />
+        <option name="run-command" value="pm disable com.android.dialer/com.android.voicemail.impl.OmtpService" />
+        <option name="teardown-command" value="pm enable com.android.dialer/com.android.voicemail.impl.StatusCheckJobService" />
+        <option name="teardown-command" value="pm enable com.android.dialer/com.android.voicemail.impl.OmtpService" />
+    </target_preparer>
+</configuration>
diff --git a/soundtrigger/V2_0/OWNERS b/soundtrigger/V2_0/OWNERS
new file mode 100644
index 0000000..6fdc97c
--- /dev/null
+++ b/soundtrigger/V2_0/OWNERS
@@ -0,0 +1,3 @@
+elaurent@google.com
+krocard@google.com
+mnaganov@google.com
diff --git a/soundtrigger/V2_1/OWNERS b/soundtrigger/V2_1/OWNERS
new file mode 100644
index 0000000..6fdc97c
--- /dev/null
+++ b/soundtrigger/V2_1/OWNERS
@@ -0,0 +1,3 @@
+elaurent@google.com
+krocard@google.com
+mnaganov@google.com
diff --git a/soundtrigger/V2_1/build/Android.bp b/soundtrigger/V2_1/build/Android.bp
new file mode 100644
index 0000000..ed34c18
--- /dev/null
+++ b/soundtrigger/V2_1/build/Android.bp
@@ -0,0 +1,102 @@
+// This file was auto-generated. Do not edit manually.
+// Use test/vts-testcase/hal/script/update_makefiles.py to generate this file.
+
+// Generate .vts spec files.
+hal2vts {
+    name: "android.hardware.soundtrigger@2.1-vts.spec",
+    srcs: [
+        ":android.hardware.soundtrigger@2.1_hal",
+    ],
+    out: [
+        "android/hardware/soundtrigger/2.1/SoundTriggerHw.vts",
+        "android/hardware/soundtrigger/2.1/SoundTriggerHwCallback.vts",
+    ],
+}
+
+// Build VTS driver.
+genrule {
+    name: "android.hardware.soundtrigger@2.1-vts.driver_genc++",
+    tools: ["hidl-gen", "vtsc"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lvts -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.soundtrigger@2.1 && $(location vtsc) -mDRIVER -tSOURCE -b$(genDir) android/hardware/soundtrigger/2.1/ $(genDir)/android/hardware/soundtrigger/2.1/",
+    srcs: [
+        ":android.hardware.soundtrigger@2.1_hal",
+    ],
+    out: [
+        "android/hardware/soundtrigger/2.1/SoundTriggerHw.vts.cpp",
+        "android/hardware/soundtrigger/2.1/SoundTriggerHwCallback.vts.cpp",
+    ],
+}
+
+genrule {
+    name: "android.hardware.soundtrigger@2.1-vts.driver_genc++_headers",
+    tools: ["hidl-gen", "vtsc"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lvts -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.soundtrigger@2.1 && $(location vtsc) -mDRIVER -tHEADER -b$(genDir) android/hardware/soundtrigger/2.1/ $(genDir)/android/hardware/soundtrigger/2.1/",
+    srcs: [
+        ":android.hardware.soundtrigger@2.1_hal",
+    ],
+    out: [
+        "android/hardware/soundtrigger/2.1/SoundTriggerHw.vts.h",
+        "android/hardware/soundtrigger/2.1/SoundTriggerHwCallback.vts.h",
+    ],
+}
+
+cc_library_shared {
+    name: "android.hardware.soundtrigger@2.1-vts.driver",
+    generated_sources: ["android.hardware.soundtrigger@2.1-vts.driver_genc++"],
+    generated_headers: ["android.hardware.soundtrigger@2.1-vts.driver_genc++_headers"],
+    export_generated_headers: ["android.hardware.soundtrigger@2.1-vts.driver_genc++_headers"],
+    defaults: ["VtsHalDriverDefaults"],
+    shared_libs: [
+        "android.hardware.audio.common@2.0-vts.driver",
+        "android.hardware.soundtrigger@2.0-vts.driver",
+    ],
+    static_libs: [
+        "android.hardware.audio.common@2.0",
+        "android.hardware.soundtrigger@2.0",
+        "android.hardware.soundtrigger@2.1",
+    ],
+}
+
+// Build VTS profiler.
+genrule {
+    name: "android.hardware.soundtrigger@2.1-vts.profiler_genc++",
+    tools: ["hidl-gen", "vtsc"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lvts -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.soundtrigger@2.1 && $(location vtsc) -mPROFILER -tSOURCE -b$(genDir) android/hardware/soundtrigger/2.1/ $(genDir)/android/hardware/soundtrigger/2.1/",
+    srcs: [
+        ":android.hardware.soundtrigger@2.1_hal",
+    ],
+    out: [
+        "android/hardware/soundtrigger/2.1/SoundTriggerHw.vts.cpp",
+        "android/hardware/soundtrigger/2.1/SoundTriggerHwCallback.vts.cpp",
+    ],
+}
+
+genrule {
+    name: "android.hardware.soundtrigger@2.1-vts.profiler_genc++_headers",
+    tools: ["hidl-gen", "vtsc"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lvts -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.soundtrigger@2.1 && $(location vtsc) -mPROFILER -tHEADER -b$(genDir) android/hardware/soundtrigger/2.1/ $(genDir)/android/hardware/soundtrigger/2.1/",
+    srcs: [
+        ":android.hardware.soundtrigger@2.1_hal",
+    ],
+    out: [
+        "android/hardware/soundtrigger/2.1/SoundTriggerHw.vts.h",
+        "android/hardware/soundtrigger/2.1/SoundTriggerHwCallback.vts.h",
+    ],
+}
+
+cc_library_shared {
+    name: "android.hardware.soundtrigger@2.1-vts.profiler",
+    generated_sources: ["android.hardware.soundtrigger@2.1-vts.profiler_genc++"],
+    generated_headers: ["android.hardware.soundtrigger@2.1-vts.profiler_genc++_headers"],
+    export_generated_headers: ["android.hardware.soundtrigger@2.1-vts.profiler_genc++_headers"],
+    defaults: ["VtsHalProfilerDefaults"],
+    shared_libs: [
+        "android.hardware.audio.common@2.0-vts.profiler",
+        "android.hardware.soundtrigger@2.0-vts.profiler",
+    ],
+    static_libs: [
+        "android.hardware.audio.common@2.0",
+        "android.hardware.soundtrigger@2.0",
+        "android.hardware.soundtrigger@2.1",
+    ],
+}
diff --git a/media/omx/V1_0/host_basic/Android.mk b/soundtrigger/V2_1/target/Android.mk
similarity index 80%
copy from media/omx/V1_0/host_basic/Android.mk
copy to soundtrigger/V2_1/target/Android.mk
index 16535d5..e567520 100644
--- a/media/omx/V1_0/host_basic/Android.mk
+++ b/soundtrigger/V2_1/target/Android.mk
@@ -1,5 +1,5 @@
 #
-# Copyright (C) 2017 The Android Open Source Project
+# Copyright (C) 2018 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.
@@ -18,6 +18,6 @@
 
 include $(CLEAR_VARS)
 
-LOCAL_MODULE := VtsHalMediaOmxV1_0HostBasic
-VTS_CONFIG_SRC_DIR := testcases/hal/media/omx/V1_0/host_basic
+LOCAL_MODULE := VtsHalSoundtriggerV2_1Target
+VTS_CONFIG_SRC_DIR := testcases/hal/soundtrigger/V2_1/target
 include test/vts/tools/build/Android.host_config.mk
diff --git a/soundtrigger/V2_1/target/AndroidTest.xml b/soundtrigger/V2_1/target/AndroidTest.xml
new file mode 100644
index 0000000..56d1546
--- /dev/null
+++ b/soundtrigger/V2_1/target/AndroidTest.xml
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2018 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.
+-->
+<configuration description="Config for VTS VtsHalSoundtriggerV2_1Target test cases">
+    <option name="config-descriptor:metadata" key="plan" value="vts-hal" />
+    <target_preparer class="com.android.compatibility.common.tradefed.targetprep.VtsFilePusher">
+        <option name="abort-on-push-failure" value="false"/>
+        <option name="push-group" value="HalHidlTargetTest.push"/>
+    </target_preparer>
+    <multi_target_preparer class="com.android.tradefed.targetprep.VtsPythonVirtualenvPreparer" />
+    <test class="com.android.tradefed.testtype.VtsMultiDeviceTest">
+        <option name="test-module-name" value="VtsHalSoundtriggerV2_1Target"/>
+        <option name="binary-test-source" value="_32bit::DATA/nativetest/VtsHalSoundtriggerV2_1TargetTest/VtsHalSoundtriggerV2_1TargetTest"/>
+        <option name="binary-test-source" value="_64bit::DATA/nativetest64/VtsHalSoundtriggerV2_1TargetTest/VtsHalSoundtriggerV2_1TargetTest"/>
+        <option name="binary-test-type" value="hal_hidl_gtest"/>
+        <option name="binary-test-disable-framework" value="true"/>
+        <option name="binary-test-stop-native-servers" value="true"/>
+        <option name="precondition-lshal" value="android.hardware.soundtrigger@2.1"/>
+        <option name="precondition-file-path-prefix" value="/*/lib/hw/sound_trigger.primary." />
+        <option name="test-timeout" value="5m"/>
+    </test>
+</configuration>
diff --git a/media/omx/V1_0/host_basic/Android.mk b/soundtrigger/V2_1/target_profiling/Android.mk
similarity index 78%
copy from media/omx/V1_0/host_basic/Android.mk
copy to soundtrigger/V2_1/target_profiling/Android.mk
index 16535d5..13a95bf 100644
--- a/media/omx/V1_0/host_basic/Android.mk
+++ b/soundtrigger/V2_1/target_profiling/Android.mk
@@ -1,5 +1,5 @@
 #
-# Copyright (C) 2017 The Android Open Source Project
+# Copyright (C) 2018 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.
@@ -18,6 +18,6 @@
 
 include $(CLEAR_VARS)
 
-LOCAL_MODULE := VtsHalMediaOmxV1_0HostBasic
-VTS_CONFIG_SRC_DIR := testcases/hal/media/omx/V1_0/host_basic
+LOCAL_MODULE := VtsHalSoundtriggerV2_1TargetProfiling
+VTS_CONFIG_SRC_DIR := testcases/hal/soundtrigger/V2_1/target_profiling
 include test/vts/tools/build/Android.host_config.mk
diff --git a/soundtrigger/V2_1/target_profiling/AndroidTest.xml b/soundtrigger/V2_1/target_profiling/AndroidTest.xml
new file mode 100644
index 0000000..d9f00f2
--- /dev/null
+++ b/soundtrigger/V2_1/target_profiling/AndroidTest.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2018 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.
+-->
+<configuration description="Config for VTS VtsHalSoundtriggerV2_1TargetProfiling test cases">
+    <option name="config-descriptor:metadata" key="plan" value="vts-hal-profiling" />
+    <target_preparer class="com.android.compatibility.common.tradefed.targetprep.VtsFilePusher">
+        <option name="abort-on-push-failure" value="false"/>
+        <option name="push-group" value="HalHidlTargetProfilingTest.push"/>
+        <option name="cleanup" value="true"/>
+        <option name="push" value="DATA/lib/android.hardware.audio.common@2.0-vts.profiler.so->/data/local/tmp/32/android.hardware.audio.common@2.0-vts.profiler.so"/>
+        <option name="push" value="DATA/lib64/android.hardware.audio.common@2.0-vts.profiler.so->/data/local/tmp/64/android.hardware.audio.common@2.0-vts.profiler.so"/>
+        <option name="push" value="DATA/lib/android.hardware.soundtrigger@2.0-vts.profiler.so->/data/local/tmp/32/android.hardware.soundtrigger@2.0-vts.profiler.so"/>
+        <option name="push" value="DATA/lib64/android.hardware.soundtrigger@2.0-vts.profiler.so->/data/local/tmp/64/android.hardware.soundtrigger@2.0-vts.profiler.so"/>
+        <option name="push" value="DATA/lib/android.hardware.soundtrigger@2.1-vts.profiler.so->/data/local/tmp/32/android.hardware.soundtrigger@2.1-vts.profiler.so"/>
+        <option name="push" value="DATA/lib64/android.hardware.soundtrigger@2.1-vts.profiler.so->/data/local/tmp/64/android.hardware.soundtrigger@2.1-vts.profiler.so"/>
+    </target_preparer>
+    <multi_target_preparer class="com.android.tradefed.targetprep.VtsPythonVirtualenvPreparer" />
+    <test class="com.android.tradefed.testtype.VtsMultiDeviceTest">
+        <option name="test-module-name" value="VtsHalSoundtriggerV2_1TargetProfiling"/>
+        <option name="binary-test-source" value="_32bit::DATA/nativetest/VtsHalSoundtriggerV2_1TargetTest/VtsHalSoundtriggerV2_1TargetTest"/>
+        <option name="binary-test-source" value="_64bit::DATA/nativetest64/VtsHalSoundtriggerV2_1TargetTest/VtsHalSoundtriggerV2_1TargetTest"/>
+        <option name="binary-test-type" value="hal_hidl_gtest"/>
+        <option name="binary-test-disable-framework" value="true"/>
+        <option name="binary-test-stop-native-servers" value="true"/>
+        <option name="enable-profiling" value="true"/>
+        <option name="precondition-lshal" value="android.hardware.soundtrigger@2.1"/>
+        <option name="precondition-file-path-prefix" value="/*/lib/hw/sound_trigger.primary." />
+        <option name="test-timeout" value="5m"/>
+    </test>
+</configuration>
diff --git a/thermal/V1_0/target_replay/AndroidTest.xml b/thermal/V1_0/target_replay/AndroidTest.xml
index 10deeac..333517b 100644
--- a/thermal/V1_0/target_replay/AndroidTest.xml
+++ b/thermal/V1_0/target_replay/AndroidTest.xml
@@ -29,8 +29,9 @@
         <option name="test-module-name" value="VtsHalThermalV1_0TargetReplay"/>
         <option name="binary-test-type" value="hal_hidl_replay_test"/>
         <option name="hal-hidl-replay-test-trace-path" value="test/vts-testcase/hal-trace/thermal/V1_0/android.hardware.thermal_1.0_414823138144.vts.trace"/>
-        <option name="hal-hidl-package-name" value="android.hardware.thermal@1.0"/>
+        <option name="hal-hidl-replay-test-trace-path" value="test/vts-testcase/hal-trace/thermal/V1_0/android.hardware.thermal_1.0_42653587163.vts.trace"/>
         <option name="precondition-lshal" value="android.hardware.thermal@1.0"/>
+        <option name="binary-test-disable-framework" value="true"/>
         <option name="test-timeout" value="5m"/>
     </test>
 </configuration>
diff --git a/treble/platform_version/VtsTreblePlatformVersionTest.py b/treble/platform_version/VtsTreblePlatformVersionTest.py
index 53130d9..54dbf57 100644
--- a/treble/platform_version/VtsTreblePlatformVersionTest.py
+++ b/treble/platform_version/VtsTreblePlatformVersionTest.py
@@ -24,6 +24,7 @@
 from vts.utils.python.controllers import android_device
 
 ANDROID_O_API_VERSION = 26
+ANDROID_O_MR1_API_VERSION = 27
 
 class VtsTreblePlatformVersionTest(base_test.BaseTestClass):
     """VTS should run on devices launched with O or later."""
@@ -35,8 +36,7 @@
     def getProp(self, prop, required=True):
         """Helper to retrieve a property from device."""
 
-        results = self.dut.shell.VtsTreblePlatformVersionTest.Execute(
-            "getprop " + prop)
+        results = self.dut.shell.Execute("getprop " + prop)
         if required:
             asserts.assertEqual(results[const.EXIT_CODE][0], 0,
                 "getprop must succeed")
@@ -54,19 +54,38 @@
 
         return result
 
-    def testFirstApiLevel(self):
-        """Test that device launched with O or later."""
+    def getEnv(self, env):
+        """Helper to retrieve an environment varable from device."""
+
+        results = self.dut.shell.Execute("printenv " + env)
+        if (results[const.EXIT_CODE][0] != 0 or
+            len(results[const.STDOUT][0].strip()) == 0):
+            logging.info("environment variable %s undefined", env)
+            return None
+
+        result = results[const.STDOUT][0].strip()
+
+        logging.info("printenv {}:{}".format(env, result))
+
+        return result
+
+    def getFirstApiLevel(self):
+        """Helper to retrieve the ro.product.first_api_level property."""
         try:
             firstApiLevel = self.getProp("ro.product.first_api_level",
                                          required=False)
             if firstApiLevel is None:
                 asserts.skip("ro.product.first_api_level undefined")
-            firstApiLevel = int(firstApiLevel)
-            asserts.assertTrue(firstApiLevel >= ANDROID_O_API_VERSION,
-                "VTS can only be run for new launches in O or above")
+            return int(firstApiLevel)
         except ValueError as e:
             asserts.fail("Unexpected value returned from getprop: %s" % e)
 
+    def testFirstApiLevel(self):
+        """Test that device launched with O or later."""
+        firstApiLevel = self.getFirstApiLevel()
+        asserts.assertTrue(firstApiLevel >= ANDROID_O_API_VERSION,
+            "VTS can only be run for new launches in O or above")
+
     def testTrebleEnabled(self):
         """Test that device has Treble enabled."""
         trebleIsEnabledStr = self.getProp("ro.treble.enabled")
@@ -82,5 +101,23 @@
         except ValueError as e:
             asserts.fail("Unexpected value returned from getprop: %s" % e)
 
+    def testVndkVersion(self):
+        """Test that VNDK version is specified.
+
+        If ro.vndk.version is not defined on boot, GSI sets LD_CONFIG_FILE to
+        temporary configuration file and ro.vndk.version to default value.
+        """
+        firstApiLevel = self.getFirstApiLevel()
+        if firstApiLevel > ANDROID_O_MR1_API_VERSION:
+            vndkVersion = self.getProp("ro.vndk.version")
+            envLdConfigFile = self.getEnv("LD_CONFIG_FILE")
+            if vndkVersion is None:
+                asserts.fail("VNDK version is not defined")
+            if envLdConfigFile is not None:
+                asserts.fail("LD_CONFIG_FILE is defined as %s" % envLdConfigFile)
+        else:
+            asserts.skip(
+                "VndkVersion can only be run for new launches in P or above")
+
 if __name__ == "__main__":
     test_runner.main()
diff --git a/media/omx/V1_0/host_basic/Android.mk b/vibrator/V1_1/adapter/CtsOsTestCases/Android.mk
similarity index 78%
copy from media/omx/V1_0/host_basic/Android.mk
copy to vibrator/V1_1/adapter/CtsOsTestCases/Android.mk
index 16535d5..ad2d86b 100644
--- a/media/omx/V1_0/host_basic/Android.mk
+++ b/vibrator/V1_1/adapter/CtsOsTestCases/Android.mk
@@ -1,5 +1,5 @@
 #
-# Copyright (C) 2017 The Android Open Source Project
+# Copyright (C) 2018 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.
@@ -18,6 +18,6 @@
 
 include $(CLEAR_VARS)
 
-LOCAL_MODULE := VtsHalMediaOmxV1_0HostBasic
-VTS_CONFIG_SRC_DIR := testcases/hal/media/omx/V1_0/host_basic
+LOCAL_MODULE := VtsHalVibratorV1_1AdapterCtsOsTestCases
+VTS_CONFIG_SRC_DIR := testcases/hal/vibrator/V1_1/adapter/CtsOsTestCases
 include test/vts/tools/build/Android.host_config.mk
diff --git a/vibrator/V1_1/adapter/CtsOsTestCases/AndroidTest.xml b/vibrator/V1_1/adapter/CtsOsTestCases/AndroidTest.xml
new file mode 100644
index 0000000..89d6ba6
--- /dev/null
+++ b/vibrator/V1_1/adapter/CtsOsTestCases/AndroidTest.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2018 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.
+-->
+<configuration description="Config for VTS VtsHalVibratorV1_1Adapter test cases">
+    <option name="config-descriptor:metadata" key="component" value="framework" />
+
+    <target_preparer class="com.android.compatibility.common.tradefed.targetprep.VtsFilePusher">
+        <option name="abort-on-push-failure" value="false"/>
+        <option name="push" value="DATA/nativetest/android.hardware.vibrator@1.0-adapter/android.hardware.thermal@1.0-adapter->/data/nativetest/android.hardware.vibrator@1.0-adapter"/>
+        <option name="push" value="DATA/nativetest64/android.hardware.vibrator@1.0-adapter/android.hardware.thermal@1.0-adapter->/data/nativetest64/android.hardware.vibrator@1.0-adapter"/>
+        <option name="push" value="DATA/lib/android.hardware.vibrator@1.0-adapter-helper.so->/data/nativetest/lib/android.hardware.vibrator@1.0-adapter-helper.so"/>
+        <option name="push" value="DATA/lib64/android.hardware.vibrator@1.0-adapter-helper.so->/data/nativetest64/lib/android.hardware.vibrator@1.0-adapter-helper.so"/>
+        <option name="push" value="DATA/lib64/android.hardware.vibrator@1.0-adapter-helper.so->/data/nativetest64/lib/android.hardware.vibrator@1.0-adapter-helper.so"/>
+        <option name="push" value="script/target/vts_adapter.sh->/data/local/tmp/vts_adapter.sh"/>
+    </target_preparer>
+
+    <target_preparer class="com.android.tradefed.targetprep.VtsHalAdapterPreparer">
+        <option name="adapter-binary-name" value="android.hardware.vibrator@1.0-adapter"/>
+        <option name="interface-name" value="IVibrator"/>
+        <option name="service-name" value="default"/>
+        <option name="thread-count" value="1"/>
+    </target_preparer>
+
+    <target_preparer class="com.android.tradefed.targetprep.suite.SuiteApkInstaller">
+        <option name="cleanup-apks" value="true" />
+        <option name="test-file-name" value="CtsOsTestCases.apk" />
+    </target_preparer>
+    <test class="com.android.tradefed.testtype.AndroidJUnitTest" >
+        <option name="package" value="android.os.cts" />
+        <option name="runtime-hint" value="3m15s" />
+    </test>
+
+</configuration>
diff --git a/wifi/Android.bp b/wifi/Android.bp
deleted file mode 100644
index 7bfd01f..0000000
--- a/wifi/Android.bp
+++ /dev/null
@@ -1,9 +0,0 @@
-// This file was auto-generated. Do not edit manually.
-// Use test/vts-testcase/hal/script/update_makefiles.py to generate this file.
-
-subdirs = [
-    "V1_0",
-    "V1_1",
-    "offload/V1_0",
-    "supplicant/V1_0",
-]
diff --git a/media/omx/V1_0/host_basic/Android.mk b/wifi/V1_0/app/wifi_native_test/Android.mk
similarity index 86%
copy from media/omx/V1_0/host_basic/Android.mk
copy to wifi/V1_0/app/wifi_native_test/Android.mk
index 16535d5..5ee16cb 100644
--- a/media/omx/V1_0/host_basic/Android.mk
+++ b/wifi/V1_0/app/wifi_native_test/Android.mk
@@ -18,6 +18,7 @@
 
 include $(CLEAR_VARS)
 
-LOCAL_MODULE := VtsHalMediaOmxV1_0HostBasic
-VTS_CONFIG_SRC_DIR := testcases/hal/media/omx/V1_0/host_basic
+LOCAL_MODULE := VtsAppWifiNativeTest
+VTS_CONFIG_SRC_DIR := testcases/hal/wifi/V1_0/app/wifi_native_test
 include test/vts/tools/build/Android.host_config.mk
+
diff --git a/wifi/V1_0/app/wifi_native_test/AndroidTest.xml b/wifi/V1_0/app/wifi_native_test/AndroidTest.xml
new file mode 100644
index 0000000..b06c1ab
--- /dev/null
+++ b/wifi/V1_0/app/wifi_native_test/AndroidTest.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- 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.
+-->
+<configuration description="Config for VTS VtsAppWifiAwarePerformanceThroughput test cases">
+    <option name="config-descriptor:metadata" key="plan" value="vts-misc" />
+    <multi_target_preparer class="com.android.tradefed.targetprep.VtsPythonVirtualenvPreparer">
+        <option name="no-dep-module" value="enum" />
+        <option name="dep-module" value="enum34" />
+        <option name="dep-module" value="pyserial" />
+        <option name="dep-module" value="shellescape" />
+        <option name="dep-module" value="statistics" />
+        <option name="dep-module" value="subprocess32" />
+    </multi_target_preparer>
+
+    <target_preparer class="com.android.compatibility.common.tradefed.targetprep.VtsFilePusher">
+        <option name="abort-on-push-failure" value="true"/>
+        <option name="push-group" value="HalHidlHostTest.push"/>
+        <option name="cleanup" value="true"/>
+    </target_preparer>
+
+    <target_preparer class="com.android.compatibility.common.tradefed.targetprep.ApkInstaller">
+        <option name="test-file-name" value="DATA/app/sl4a/sl4a.apk" />
+        <option name="cleanup-apks" value="true" />
+        <option name="install-arg" value="-r" />
+      </target_preparer>
+
+    <test class="com.android.tradefed.testtype.VtsMultiDeviceTest">
+        <option name="test-module-name" value="VtsAppWifiNativeTest"/>
+        <option name="test-case-path" value="vts/testcases/acts/wifi/WifiNativeTest"/>
+        <option name="test-case-path-type" value="file"/>
+        <option name="test-timeout" value="10m"/>
+        <option name="test-config-path" value="vts/testcases/hal/wifi/V1_0/app/wifi_native_test/VtsAppWifiNativeTest.config" />
+    </test>
+</configuration>
diff --git a/wifi/V1_0/app/wifi_native_test/VtsAppWifiNativeTest.config b/wifi/V1_0/app/wifi_native_test/VtsAppWifiNativeTest.config
new file mode 100644
index 0000000..bb9c041
--- /dev/null
+++ b/wifi/V1_0/app/wifi_native_test/VtsAppWifiNativeTest.config
@@ -0,0 +1,16 @@
+{
+    "test_bed":
+    [
+        {
+            "name": "VtsAppWifiNativeTest",
+            "AndroidDevice":
+            [
+                {
+                    "enable_sl4a": true,
+                    "enable_vts_agent": false
+                }
+            ]
+        }
+    ],
+    "aware_default_power_mode": "INTERACTIVE"
+}
diff --git a/wifi/V1_0/host/AndroidTest.xml b/wifi/V1_0/host/AndroidTest.xml
index 522345c..c929504 100644
--- a/wifi/V1_0/host/AndroidTest.xml
+++ b/wifi/V1_0/host/AndroidTest.xml
@@ -19,6 +19,22 @@
         <option name="abort-on-push-failure" value="true"/>
         <option name="push-group" value="HalHidlHostTest.push"/>
         <option name="cleanup" value="true"/>
+        <option name="push" value="spec/hardware/interfaces/wifi/1.0/vts/Wifi.vts->/data/local/tmp/spec/android/hardware/wifi/1.0/Wifi.vts"/>
+        <option name="push" value="spec/hardware/interfaces/wifi/1.0/vts/WifiApIface.vts->/data/local/tmp/spec/android/hardware/wifi/1.0/WifiApIface.vts"/>
+        <option name="push" value="spec/hardware/interfaces/wifi/1.0/vts/WifiChip.vts->/data/local/tmp/spec/android/hardware/wifi/1.0/WifiChip.vts"/>
+        <option name="push" value="spec/hardware/interfaces/wifi/1.0/vts/WifiChipEventCallback.vts->/data/local/tmp/spec/android/hardware/wifi/1.0/WifiChipEventCallback.vts"/>
+        <option name="push" value="spec/hardware/interfaces/wifi/1.0/vts/WifiEventCallback.vts->/data/local/tmp/spec/android/hardware/wifi/1.0/WifiEventCallback.vts"/>
+        <option name="push" value="spec/hardware/interfaces/wifi/1.0/vts/WifiIface.vts->/data/local/tmp/spec/android/hardware/wifi/1.0/WifiIface.vts"/>
+        <option name="push" value="spec/hardware/interfaces/wifi/1.0/vts/WifiNanIface.vts->/data/local/tmp/spec/android/hardware/wifi/1.0/WifiNanIface.vts"/>
+        <option name="push" value="spec/hardware/interfaces/wifi/1.0/vts/WifiNanIfaceEventCallback.vts->/data/local/tmp/spec/android/hardware/wifi/1.0/WifiNanIfaceEventCallback.vts"/>
+        <option name="push" value="spec/hardware/interfaces/wifi/1.0/vts/WifiP2pIface.vts->/data/local/tmp/spec/android/hardware/wifi/1.0/WifiP2pIface.vts"/>
+        <option name="push" value="spec/hardware/interfaces/wifi/1.0/vts/WifiRttController.vts->/data/local/tmp/spec/android/hardware/wifi/1.0/WifiRttController.vts"/>
+        <option name="push" value="spec/hardware/interfaces/wifi/1.0/vts/WifiRttControllerEventCallback.vts->/data/local/tmp/spec/android/hardware/wifi/1.0/WifiRttControllerEventCallback.vts"/>
+        <option name="push" value="spec/hardware/interfaces/wifi/1.0/vts/WifiStaIface.vts->/data/local/tmp/spec/android/hardware/wifi/1.0/WifiStaIface.vts"/>
+        <option name="push" value="spec/hardware/interfaces/wifi/1.0/vts/WifiStaIfaceEventCallback.vts->/data/local/tmp/spec/android/hardware/wifi/1.0/WifiStaIfaceEventCallback.vts"/>
+        <option name="push" value="spec/hardware/interfaces/wifi/1.0/vts/types.vts->/data/local/tmp/spec/android/hardware/wifi/1.0/types.vts"/>
+        <option name="push" value="DATA/lib/android.hardware.wifi@1.0-vts.driver.so->/data/local/tmp/32/android.hardware.wifi@1.0-vts.driver.so"/>
+        <option name="push" value="DATA/lib64/android.hardware.wifi@1.0-vts.driver.so->/data/local/tmp/64/android.hardware.wifi@1.0-vts.driver.so"/>
     </target_preparer>
     <multi_target_preparer class="com.android.tradefed.targetprep.VtsPythonVirtualenvPreparer" />
     <test class="com.android.tradefed.testtype.VtsMultiDeviceTest">
diff --git a/wifi/V1_2/build/Android.bp b/wifi/V1_2/build/Android.bp
new file mode 100644
index 0000000..70f1a60
--- /dev/null
+++ b/wifi/V1_2/build/Android.bp
@@ -0,0 +1,123 @@
+// This file was auto-generated. Do not edit manually.
+// Use test/vts-testcase/hal/script/update_makefiles.py to generate this file.
+
+// Generate .vts spec files.
+hal2vts {
+    name: "android.hardware.wifi@1.2-vts.spec",
+    srcs: [
+        ":android.hardware.wifi@1.2_hal",
+    ],
+    out: [
+        "android/hardware/wifi/1.2/Wifi.vts",
+        "android/hardware/wifi/1.2/WifiChip.vts",
+        "android/hardware/wifi/1.2/WifiChipEventCallback.vts",
+        "android/hardware/wifi/1.2/WifiNanIface.vts",
+        "android/hardware/wifi/1.2/WifiNanIfaceEventCallback.vts",
+        "android/hardware/wifi/1.2/types.vts",
+    ],
+}
+
+// Build VTS driver.
+genrule {
+    name: "android.hardware.wifi@1.2-vts.driver_genc++",
+    tools: ["hidl-gen", "vtsc"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lvts -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.wifi@1.2 && $(location vtsc) -mDRIVER -tSOURCE -b$(genDir) android/hardware/wifi/1.2/ $(genDir)/android/hardware/wifi/1.2/",
+    srcs: [
+        ":android.hardware.wifi@1.2_hal",
+    ],
+    out: [
+        "android/hardware/wifi/1.2/Wifi.vts.cpp",
+        "android/hardware/wifi/1.2/WifiChip.vts.cpp",
+        "android/hardware/wifi/1.2/WifiChipEventCallback.vts.cpp",
+        "android/hardware/wifi/1.2/WifiNanIface.vts.cpp",
+        "android/hardware/wifi/1.2/WifiNanIfaceEventCallback.vts.cpp",
+        "android/hardware/wifi/1.2/types.vts.cpp",
+    ],
+}
+
+genrule {
+    name: "android.hardware.wifi@1.2-vts.driver_genc++_headers",
+    tools: ["hidl-gen", "vtsc"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lvts -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.wifi@1.2 && $(location vtsc) -mDRIVER -tHEADER -b$(genDir) android/hardware/wifi/1.2/ $(genDir)/android/hardware/wifi/1.2/",
+    srcs: [
+        ":android.hardware.wifi@1.2_hal",
+    ],
+    out: [
+        "android/hardware/wifi/1.2/Wifi.vts.h",
+        "android/hardware/wifi/1.2/WifiChip.vts.h",
+        "android/hardware/wifi/1.2/WifiChipEventCallback.vts.h",
+        "android/hardware/wifi/1.2/WifiNanIface.vts.h",
+        "android/hardware/wifi/1.2/WifiNanIfaceEventCallback.vts.h",
+        "android/hardware/wifi/1.2/types.vts.h",
+    ],
+}
+
+cc_library_shared {
+    name: "android.hardware.wifi@1.2-vts.driver",
+    generated_sources: ["android.hardware.wifi@1.2-vts.driver_genc++"],
+    generated_headers: ["android.hardware.wifi@1.2-vts.driver_genc++_headers"],
+    export_generated_headers: ["android.hardware.wifi@1.2-vts.driver_genc++_headers"],
+    defaults: ["VtsHalDriverDefaults"],
+    shared_libs: [
+        "android.hardware.wifi@1.0-vts.driver",
+        "android.hardware.wifi@1.1-vts.driver",
+    ],
+    static_libs: [
+        "android.hardware.wifi@1.0",
+        "android.hardware.wifi@1.1",
+        "android.hardware.wifi@1.2",
+    ],
+}
+
+// Build VTS profiler.
+genrule {
+    name: "android.hardware.wifi@1.2-vts.profiler_genc++",
+    tools: ["hidl-gen", "vtsc"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lvts -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.wifi@1.2 && $(location vtsc) -mPROFILER -tSOURCE -b$(genDir) android/hardware/wifi/1.2/ $(genDir)/android/hardware/wifi/1.2/",
+    srcs: [
+        ":android.hardware.wifi@1.2_hal",
+    ],
+    out: [
+        "android/hardware/wifi/1.2/Wifi.vts.cpp",
+        "android/hardware/wifi/1.2/WifiChip.vts.cpp",
+        "android/hardware/wifi/1.2/WifiChipEventCallback.vts.cpp",
+        "android/hardware/wifi/1.2/WifiNanIface.vts.cpp",
+        "android/hardware/wifi/1.2/WifiNanIfaceEventCallback.vts.cpp",
+        "android/hardware/wifi/1.2/types.vts.cpp",
+    ],
+}
+
+genrule {
+    name: "android.hardware.wifi@1.2-vts.profiler_genc++_headers",
+    tools: ["hidl-gen", "vtsc"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lvts -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.wifi@1.2 && $(location vtsc) -mPROFILER -tHEADER -b$(genDir) android/hardware/wifi/1.2/ $(genDir)/android/hardware/wifi/1.2/",
+    srcs: [
+        ":android.hardware.wifi@1.2_hal",
+    ],
+    out: [
+        "android/hardware/wifi/1.2/Wifi.vts.h",
+        "android/hardware/wifi/1.2/WifiChip.vts.h",
+        "android/hardware/wifi/1.2/WifiChipEventCallback.vts.h",
+        "android/hardware/wifi/1.2/WifiNanIface.vts.h",
+        "android/hardware/wifi/1.2/WifiNanIfaceEventCallback.vts.h",
+        "android/hardware/wifi/1.2/types.vts.h",
+    ],
+}
+
+cc_library_shared {
+    name: "android.hardware.wifi@1.2-vts.profiler",
+    generated_sources: ["android.hardware.wifi@1.2-vts.profiler_genc++"],
+    generated_headers: ["android.hardware.wifi@1.2-vts.profiler_genc++_headers"],
+    export_generated_headers: ["android.hardware.wifi@1.2-vts.profiler_genc++_headers"],
+    defaults: ["VtsHalProfilerDefaults"],
+    shared_libs: [
+        "android.hardware.wifi@1.0-vts.profiler",
+        "android.hardware.wifi@1.1-vts.profiler",
+    ],
+    static_libs: [
+        "android.hardware.wifi@1.0",
+        "android.hardware.wifi@1.1",
+        "android.hardware.wifi@1.2",
+    ],
+}
+
diff --git a/wifi/hostapd/V1_0/build/Android.bp b/wifi/hostapd/V1_0/build/Android.bp
new file mode 100644
index 0000000..377e80f
--- /dev/null
+++ b/wifi/hostapd/V1_0/build/Android.bp
@@ -0,0 +1,99 @@
+// This file was auto-generated. Do not edit manually.
+// Use test/vts-testcase/hal/script/update_makefiles.py to generate this file.
+
+// Generate .vts spec files.
+hal2vts {
+    name: "android.hardware.wifi.hostapd@1.0-vts.spec",
+    srcs: [
+        ":android.hardware.wifi.hostapd@1.0_hal",
+    ],
+    out: [
+        "android/hardware/wifi/hostapd/1.0/Hostapd.vts",
+        "android/hardware/wifi/hostapd/1.0/types.vts",
+    ],
+}
+
+// Build VTS driver.
+genrule {
+    name: "android.hardware.wifi.hostapd@1.0-vts.driver_genc++",
+    tools: ["hidl-gen", "vtsc"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lvts -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.wifi.hostapd@1.0 && $(location vtsc) -mDRIVER -tSOURCE -b$(genDir) android/hardware/wifi/hostapd/1.0/ $(genDir)/android/hardware/wifi/hostapd/1.0/",
+    srcs: [
+        ":android.hardware.wifi.hostapd@1.0_hal",
+    ],
+    out: [
+        "android/hardware/wifi/hostapd/1.0/Hostapd.vts.cpp",
+        "android/hardware/wifi/hostapd/1.0/types.vts.cpp",
+    ],
+}
+
+genrule {
+    name: "android.hardware.wifi.hostapd@1.0-vts.driver_genc++_headers",
+    tools: ["hidl-gen", "vtsc"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lvts -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.wifi.hostapd@1.0 && $(location vtsc) -mDRIVER -tHEADER -b$(genDir) android/hardware/wifi/hostapd/1.0/ $(genDir)/android/hardware/wifi/hostapd/1.0/",
+    srcs: [
+        ":android.hardware.wifi.hostapd@1.0_hal",
+    ],
+    out: [
+        "android/hardware/wifi/hostapd/1.0/Hostapd.vts.h",
+        "android/hardware/wifi/hostapd/1.0/types.vts.h",
+    ],
+}
+
+cc_library_shared {
+    name: "android.hardware.wifi.hostapd@1.0-vts.driver",
+    generated_sources: ["android.hardware.wifi.hostapd@1.0-vts.driver_genc++"],
+    generated_headers: ["android.hardware.wifi.hostapd@1.0-vts.driver_genc++_headers"],
+    export_generated_headers: ["android.hardware.wifi.hostapd@1.0-vts.driver_genc++_headers"],
+    defaults: ["VtsHalDriverDefaults"],
+    shared_libs: [
+        "android.hardware.wifi.supplicant@1.0-vts.driver",
+    ],
+    static_libs: [
+        "android.hardware.wifi.hostapd@1.0",
+        "android.hardware.wifi.supplicant@1.0",
+    ],
+}
+
+// Build VTS profiler.
+genrule {
+    name: "android.hardware.wifi.hostapd@1.0-vts.profiler_genc++",
+    tools: ["hidl-gen", "vtsc"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lvts -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.wifi.hostapd@1.0 && $(location vtsc) -mPROFILER -tSOURCE -b$(genDir) android/hardware/wifi/hostapd/1.0/ $(genDir)/android/hardware/wifi/hostapd/1.0/",
+    srcs: [
+        ":android.hardware.wifi.hostapd@1.0_hal",
+    ],
+    out: [
+        "android/hardware/wifi/hostapd/1.0/Hostapd.vts.cpp",
+        "android/hardware/wifi/hostapd/1.0/types.vts.cpp",
+    ],
+}
+
+genrule {
+    name: "android.hardware.wifi.hostapd@1.0-vts.profiler_genc++_headers",
+    tools: ["hidl-gen", "vtsc"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lvts -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.wifi.hostapd@1.0 && $(location vtsc) -mPROFILER -tHEADER -b$(genDir) android/hardware/wifi/hostapd/1.0/ $(genDir)/android/hardware/wifi/hostapd/1.0/",
+    srcs: [
+        ":android.hardware.wifi.hostapd@1.0_hal",
+    ],
+    out: [
+        "android/hardware/wifi/hostapd/1.0/Hostapd.vts.h",
+        "android/hardware/wifi/hostapd/1.0/types.vts.h",
+    ],
+}
+
+cc_library_shared {
+    name: "android.hardware.wifi.hostapd@1.0-vts.profiler",
+    generated_sources: ["android.hardware.wifi.hostapd@1.0-vts.profiler_genc++"],
+    generated_headers: ["android.hardware.wifi.hostapd@1.0-vts.profiler_genc++_headers"],
+    export_generated_headers: ["android.hardware.wifi.hostapd@1.0-vts.profiler_genc++_headers"],
+    defaults: ["VtsHalProfilerDefaults"],
+    shared_libs: [
+        "android.hardware.wifi.supplicant@1.0-vts.profiler",
+    ],
+    static_libs: [
+        "android.hardware.wifi.hostapd@1.0",
+        "android.hardware.wifi.supplicant@1.0",
+    ],
+}
+
diff --git a/media/omx/V1_0/host_basic/Android.mk b/wifi/supplicant/V1_1/target/Android.mk
similarity index 86%
copy from media/omx/V1_0/host_basic/Android.mk
copy to wifi/supplicant/V1_1/target/Android.mk
index 16535d5..812b23b 100644
--- a/media/omx/V1_0/host_basic/Android.mk
+++ b/wifi/supplicant/V1_1/target/Android.mk
@@ -18,6 +18,6 @@
 
 include $(CLEAR_VARS)
 
-LOCAL_MODULE := VtsHalMediaOmxV1_0HostBasic
-VTS_CONFIG_SRC_DIR := testcases/hal/media/omx/V1_0/host_basic
+LOCAL_MODULE := VtsHalWifiSupplicantV1_1Target
+VTS_CONFIG_SRC_DIR := testcases/hal/wifi/supplicant/V1_1/target
 include test/vts/tools/build/Android.host_config.mk
diff --git a/wifi/supplicant/V1_1/target/AndroidTest.xml b/wifi/supplicant/V1_1/target/AndroidTest.xml
new file mode 100644
index 0000000..9f07e87
--- /dev/null
+++ b/wifi/supplicant/V1_1/target/AndroidTest.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- 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.
+-->
+<configuration description="Config for VTS VtsHalWifiSupplicantV1_1Target test cases">
+    <option name="config-descriptor:metadata" key="plan" value="vts-hal" />
+    <target_preparer class="com.android.compatibility.common.tradefed.targetprep.VtsFilePusher">
+        <option name="abort-on-push-failure" value="false"/>
+        <option name="push-group" value="HalHidlTargetTest.push"/>
+    </target_preparer>
+    <multi_target_preparer class="com.android.tradefed.targetprep.VtsPythonVirtualenvPreparer" />
+    <test class="com.android.tradefed.testtype.VtsMultiDeviceTest">
+        <option name="test-module-name" value="VtsHalWifiSupplicantV1_1Target"/>
+        <option name="binary-test-source" value="_32bit::DATA/nativetest/VtsHalWifiSupplicantV1_1TargetTest/VtsHalWifiSupplicantV1_1TargetTest"/>
+        <option name="binary-test-source" value="_64bit::DATA/nativetest64/VtsHalWifiSupplicantV1_1TargetTest/VtsHalWifiSupplicantV1_1TargetTest"/>
+        <option name="binary-test-type" value="hal_hidl_gtest"/>
+        <option name="binary-test-disable-framework" value="true"/>
+        <option name="binary-test-stop-native-servers" value="true"/>
+        <option name="precondition-lshal" value="android.hardware.wifi.supplicant@1.1"/>
+        <option name="test-timeout" value="30m"/>
+    </test>
+</configuration>
diff --git a/media/omx/V1_0/host_basic/Android.mk b/wifi/supplicant/V1_1/target_profiling/Android.mk
similarity index 84%
copy from media/omx/V1_0/host_basic/Android.mk
copy to wifi/supplicant/V1_1/target_profiling/Android.mk
index 16535d5..751bf92 100644
--- a/media/omx/V1_0/host_basic/Android.mk
+++ b/wifi/supplicant/V1_1/target_profiling/Android.mk
@@ -18,6 +18,6 @@
 
 include $(CLEAR_VARS)
 
-LOCAL_MODULE := VtsHalMediaOmxV1_0HostBasic
-VTS_CONFIG_SRC_DIR := testcases/hal/media/omx/V1_0/host_basic
+LOCAL_MODULE := VtsHalWifiSupplicantV1_1TargetProfiling
+VTS_CONFIG_SRC_DIR := testcases/hal/wifi/supplicant/V1_1/target_profiling
 include test/vts/tools/build/Android.host_config.mk
diff --git a/wifi/supplicant/V1_1/target_profiling/AndroidTest.xml b/wifi/supplicant/V1_1/target_profiling/AndroidTest.xml
new file mode 100644
index 0000000..5506c8d
--- /dev/null
+++ b/wifi/supplicant/V1_1/target_profiling/AndroidTest.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- 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.
+-->
+<configuration description="Config for VTS VtsHalWifiSupplicantV1_1TargetProfiling test cases">
+    <option name="config-descriptor:metadata" key="plan" value="vts-hal-profiling" />
+    <target_preparer class="com.android.compatibility.common.tradefed.targetprep.VtsFilePusher">
+        <option name="abort-on-push-failure" value="false"/>
+        <option name="push-group" value="HalHidlTargetProfilingTest.push"/>
+        <option name="cleanup" value="true"/>
+        <option name="push" value="DATA/lib/android.hardware.wifi.supplicant@1.0-vts.profiler.so->/data/local/tmp/32/android.hardware.wifi.supplicant@1.0-vts.profiler.so"/>
+        <option name="push" value="DATA/lib64/android.hardware.wifi.supplicant@1.0-vts.profiler.so->/data/local/tmp/64/android.hardware.wifi.supplicant@1.0-vts.profiler.so"/>
+        <option name="push" value="DATA/lib/android.hardware.wifi.supplicant@1.1-vts.profiler.so->/data/local/tmp/32/android.hardware.wifi.supplicant@1.1-vts.profiler.so"/>
+        <option name="push" value="DATA/lib64/android.hardware.wifi.supplicant@1.1-vts.profiler.so->/data/local/tmp/64/android.hardware.wifi.supplicant@1.1-vts.profiler.so"/>
+    </target_preparer>
+    <multi_target_preparer class="com.android.tradefed.targetprep.VtsPythonVirtualenvPreparer" />
+    <test class="com.android.tradefed.testtype.VtsMultiDeviceTest">
+        <option name="test-module-name" value="VtsHalWifiSupplicantV1_1TargetProfiling"/>
+        <option name="binary-test-source" value="_32bit::DATA/nativetest/VtsHalWifiSupplicantV1_1TargetTest/VtsHalWifiSupplicantV1_1TargetTest"/>
+        <option name="binary-test-source" value="_64bit::DATA/nativetest64/VtsHalWifiSupplicantV1_1TargetTest/VtsHalWifiSupplicantV1_1TargetTest"/>
+        <option name="binary-test-type" value="hal_hidl_gtest"/>
+        <option name="binary-test-disable-framework" value="true"/>
+        <option name="binary-test-stop-native-servers" value="true"/>
+        <option name="enable-profiling" value="true"/>
+        <option name="precondition-lshal" value="android.hardware.wifi.supplicant@1.1"/>
+        <option name="test-timeout" value="30m"/>
+    </test>
+</configuration>