diff --git a/server/cros/tradefed/generate_controlfiles_VTS.py b/server/cros/tradefed/generate_controlfiles_VTS.py
new file mode 100755
index 0000000..044f73d
--- /dev/null
+++ b/server/cros/tradefed/generate_controlfiles_VTS.py
@@ -0,0 +1,131 @@
+#!/usr/bin/env python2
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+import collections
+
+from generate_controlfiles_common import main
+
+
+_ALL = 'all'
+
+CONFIG = {}
+
+CONFIG['TEST_NAME'] = 'cheets_VTS'
+CONFIG['DOC_TITLE'] = \
+    'Vendor Test Suite (VTS)'
+CONFIG['MOBLAB_SUITE_NAME'] = 'suite:android-vts'
+CONFIG['COPYRIGHT_YEAR'] = 2020
+CONFIG['AUTHKEY'] = ''
+
+CONFIG['LARGE_MAX_RESULT_SIZE'] = 1000 * 1024
+CONFIG['NORMAL_MAX_RESULT_SIZE'] = 500 * 1024
+
+CONFIG['TRADEFED_CTS_COMMAND'] = 'vts'
+CONFIG['TRADEFED_RETRY_COMMAND'] = 'retry'
+CONFIG['TRADEFED_DISABLE_REBOOT'] = False
+CONFIG['TRADEFED_DISABLE_REBOOT_ON_COLLECTION'] = True
+CONFIG['TRADEFED_MAY_SKIP_DEVICE_INFO'] = False
+CONFIG['TRADEFED_EXECUTABLE_PATH'] = 'android-vts/tools/vts-tradefed'
+
+CONFIG['TRADEFED_IGNORE_BUSINESS_LOGIC_FAILURE'] = False
+
+CONFIG['INTERNAL_SUITE_NAMES'] = ['suite:arc-vts']
+
+CONFIG['CONTROLFILE_TEST_FUNCTION_NAME'] = 'run_TS'
+CONFIG['CONTROLFILE_WRITE_SIMPLE_QUAL_AND_REGRESS'] = False # True
+CONFIG['CONTROLFILE_WRITE_CAMERA'] = False
+CONFIG['CONTROLFILE_WRITE_EXTRA'] = False
+
+# Do not change the name/tag without adjusting the dashboard.
+_COLLECT = 'tradefed-run-collect-tests-only-internal'
+_PUBLIC_COLLECT = 'tradefed-run-collect-tests-only'
+
+CONFIG['LAB_DEPENDENCY'] = {}
+
+CONFIG['CTS_JOB_RETRIES_IN_PUBLIC'] = 1
+CONFIG['CTS_QUAL_RETRIES'] = 9
+CONFIG['CTS_MAX_RETRIES'] = {}
+
+# Timeout in hours.
+CONFIG['CTS_TIMEOUT_DEFAULT'] = 1.0
+CONFIG['CTS_TIMEOUT'] = {
+    _ALL: 5.0,
+    _COLLECT: 2.0,
+    _PUBLIC_COLLECT: 2.0,
+}
+
+# Any test that runs as part as blocking BVT needs to be stable and fast. For
+# this reason we enforce a tight timeout on these modules/jobs.
+# Timeout in hours. (0.1h = 6 minutes)
+CONFIG['BVT_TIMEOUT'] = 0.1
+
+CONFIG['QUAL_TIMEOUT'] = 5
+
+CONFIG['QUAL_BOOKMARKS'] = []
+
+CONFIG['SMOKE'] = []
+
+CONFIG['BVT_ARC'] = []
+
+CONFIG['BVT_PERBUILD'] = []
+
+CONFIG['NEEDS_POWER_CYCLE'] = []
+
+CONFIG['HARDWARE_DEPENDENT_MODULES'] = []
+
+# The suite is divided based on the run-time hint in the *.config file.
+CONFIG['VMTEST_INFO_SUITES'] = collections.OrderedDict()
+
+# Modules that are known to download and/or push media file assets.
+CONFIG['MEDIA_MODULES'] = []
+CONFIG['NEEDS_PUSH_MEDIA'] = []
+
+CONFIG['ENABLE_DEFAULT_APPS'] = []
+
+# Preconditions applicable to public and internal tests.
+CONFIG['PRECONDITION'] = {}
+CONFIG['LOGIN_PRECONDITION'] = {}
+
+# Preconditions applicable to public tests.
+CONFIG['PUBLIC_PRECONDITION'] = {}
+
+CONFIG['PUBLIC_DEPENDENCIES'] = {}
+
+# This information is changed based on regular analysis of the failure rate on
+# partner moblabs.
+CONFIG['PUBLIC_MODULE_RETRY_COUNT'] = {
+    _PUBLIC_COLLECT: 0,
+}
+
+CONFIG['PUBLIC_OVERRIDE_TEST_PRIORITY'] = {
+    _PUBLIC_COLLECT: 70,
+}
+
+# This information is changed based on regular analysis of the job run time on
+# partner moblabs.
+
+CONFIG['OVERRIDE_TEST_LENGTH'] = {
+    # Even though collect tests doesn't run very long, it must be the very first
+    # job executed inside of the suite. Hence it is the only 'LENGTHY' test.
+    _COLLECT: 5,  # LENGTHY
+}
+
+CONFIG['DISABLE_LOGCAT_ON_FAILURE'] = set()
+CONFIG['EXTRA_MODULES'] = {}
+CONFIG['PUBLIC_EXTRA_MODULES'] = {}
+CONFIG['EXTRA_SUBMODULE_OVERRIDE'] = {}
+
+CONFIG['EXTRA_COMMANDLINE'] = {}
+
+CONFIG['EXTRA_ATTRIBUTES'] = {
+    'tradefed-run-collect-tests-only-internal': ['suite:arc-vts'],
+}
+
+CONFIG['EXTRA_ARTIFACTS'] = {}
+
+
+if __name__ == '__main__':
+        main(CONFIG)
+
diff --git a/server/cros/tradefed/generate_controlfiles_common.py b/server/cros/tradefed/generate_controlfiles_common.py
index 7446817..94993ea 100755
--- a/server/cros/tradefed/generate_controlfiles_common.py
+++ b/server/cros/tradefed/generate_controlfiles_common.py
@@ -190,9 +190,9 @@
     In this case we chose to guess by filename, but we could also parse the
     xml files in the module. (Maybe this needs to be done in the future.)
     """
-    if filename.endswith('_x86-arm.zip'):
+    if filename.endswith('arm.zip'):
         return 'arm'
-    if filename.endswith('_x86-x86.zip'):
+    if filename.endswith('x86.zip'):
         return 'x86'
 
     assert(CONFIG['TRADEFED_CTS_COMMAND'] =='gts'), 'Only GTS has empty ABI'
@@ -397,7 +397,8 @@
         retry = 3
     # During qualification we want at least 9 retries, possibly more.
     # TODO(kinaba&yoshiki): do not abuse suite names
-    if set(CONFIG['QUAL_SUITE_NAMES']) & set(suites):
+    if CONFIG.get('QUAL_SUITE_NAMES') and \
+            set(CONFIG['QUAL_SUITE_NAMES']) & set(suites):
         retry = max(retry, CONFIG['CTS_QUAL_RETRIES'])
     # Collection should never have a retry. This needs to be last.
     if modules.intersection(get_collect_modules(is_public)):
@@ -654,7 +655,8 @@
     """
     if 'suite:bvt-arc' in suites:
         return int(3600 * CONFIG['BVT_TIMEOUT'])
-    if ((set(CONFIG['QUAL_SUITE_NAMES']) & set(suites)) and
+    if CONFIG.get('QUAL_SUITE_NAMES') and \
+            ((set(CONFIG['QUAL_SUITE_NAMES']) & set(suites)) and \
             not (_COLLECT in modules or _PUBLIC_COLLECT in modules)):
         return int(3600 * CONFIG['QUAL_TIMEOUT'])
 
@@ -805,6 +807,8 @@
         elif line.startswith('Gts'):
             # Older GTS plainly lists the module names
             modules.add(line)
+        elif line.startswith('Vts'):
+            modules.add(line)
         elif line.startswith('cts-'):
             modules.add(line)
         elif line.startswith('signed-Cts'):
@@ -1026,7 +1030,7 @@
     combined = combine_modules_by_bookmark(set(modules))
     for key in combined:
         write_controlfile('all.' + key, combined[key], abi, revision, build,
-                          uri, CONFIG['QUAL_SUITE_NAMES'], is_public)
+                          uri, CONFIG.get('QUAL_SUITE_NAMES'), is_public)
 
 
 def write_qualification_and_regression_controlfile(abi, revision, build, uri,
@@ -1048,7 +1052,8 @@
     if is_public:
         suites = [CONFIG['MOBLAB_SUITE_NAME']]
     else:
-        suites = CONFIG['INTERNAL_SUITE_NAMES'] + CONFIG['QUAL_SUITE_NAMES']
+        suites = CONFIG['INTERNAL_SUITE_NAMES'] \
+               + CONFIG.get('QUAL_SUITE_NAMES', [])
     for module in get_collect_modules(is_public):
         write_controlfile(module, set([module]), abi, revision, build, uri,
                           suites, is_public)
diff --git a/server/site_tests/cheets_VTS/cheets_VTS.py b/server/site_tests/cheets_VTS/cheets_VTS.py
new file mode 100644
index 0000000..caef53d
--- /dev/null
+++ b/server/site_tests/cheets_VTS/cheets_VTS.py
@@ -0,0 +1,118 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+# repohooks/pre-upload.py currently does not run pylint. But for developers who
+# want to check their code manually we disable several harmless pylint warnings
+# which just distract from more serious remaining issues.
+#
+# The instance variable _android_vts is not defined in __init__().
+# pylint: disable=attribute-defined-outside-init
+#
+# Many short variable names don't follow the naming convention.
+# pylint: disable=invalid-name
+
+import logging
+import os
+
+from autotest_lib.server import utils
+from autotest_lib.server.cros.tradefed import tradefed_test
+
+# Maximum default time allowed for each individual CTS module.
+_CTS_TIMEOUT_SECONDS = 3600
+
+# Internal download locations for android vtas bundles.
+_INTERNAL_VTS = 'gs://chromeos-arc-images/vts'
+_VTS_URI = {
+    'arm': _INTERNAL_VTS + 'VTS-9_r11_arm.zip',
+    'x86': _INTERNAL_VTS + 'VTS-9_r11_x86.zip',
+}
+
+
+class cheets_VTS(tradefed_test.TradefedTest):
+    """Sets up tradefed to run VTS tests."""
+    version = 1
+
+    _SHARD_CMD = '--shard-count'
+
+    def _tradefed_retry_command(self, template, session_id):
+        """Build tradefed 'retry' command from template."""
+        cmd = []
+        for arg in template:
+            cmd.append(arg.format(session_id=session_id))
+        return cmd
+
+    def _tradefed_run_command(self, template):
+        """Build tradefed 'run' command from template."""
+        cmd = template[:]
+        # If we are running outside of the lab we can collect more data.
+        if not utils.is_in_container():
+            logging.info('Running outside of lab, adding extra debug options.')
+            cmd.append('--log-level-display=DEBUG')
+        return cmd
+
+    def _get_default_bundle_url(self, bundle):
+        return _VTS_URI[bundle]
+
+    def _get_tradefed_base_dir(self):
+        return 'android-vts'
+
+    def _tradefed_cmd_path(self):
+        return os.path.join(self._repository, 'tools', 'vts-tradefed')
+
+    def _should_skip_test(self, bundle):
+        """Some tests are expected to fail and are skipped."""
+        # novato* are x86 VMs without binary translation. Skip the ARM tests.
+        no_ARM_ABI_test_boards = ('novato', 'novato-arc64', 'novato-arcnext')
+        if self._get_board_name() in no_ARM_ABI_test_boards and bundle == 'arm':
+            return True
+        return False
+
+    def run_once(self,
+                 test_name,
+                 run_template,
+                 retry_template=None,
+                 target_module=None,
+                 target_plan=None,
+                 target_class=None,
+                 target_method=None,
+                 needs_push_media=False,
+                 bundle=None,
+                 precondition_commands=[],
+                 login_precondition_commands=[],
+                 timeout=_CTS_TIMEOUT_SECONDS):
+        """Runs the specified CTS once, but with several retries.
+
+        Run an arbitrary tradefed command.
+
+        @param test_name: the name of test. Used for logging.
+        @param run_template: the template to construct the run command.
+                             Example: ['run', 'commandAndExit', 'cts',
+                                       '--skip-media-download']
+        @param retry_template: the template to construct the retry command.
+                               Example: ['run', 'commandAndExit', 'retry',
+                                         '--skip-media-download', '--retry',
+                                         '{session_id}']
+        @param target_module: the name of test module to run.
+        @param target_plan: the name of the test plan to run.
+        @param target_class: the name of the class to be tested.
+        @param target_method: the name of the method to be tested.
+        @param needs_push_media: need to push test media streams.
+        @param bundle: the type of the CTS bundle: 'arm' or 'x86'
+        @param precondition_commands: a list of scripts to be run on the
+        dut before the test is run, the scripts must already be installed.
+        @param login_precondition_commands: a list of scripts to be run on the
+        dut before the log-in for the test is performed.
+        @param timeout: time after which tradefed can be interrupted.
+        """
+        self._run_tradefed_with_retries(
+            test_name=test_name,
+            run_template=run_template,
+            retry_template=retry_template,
+            timeout=timeout,
+            target_module=target_module,
+            target_plan=target_plan,
+            bundle=bundle,
+            cts_uri=_VTS_URI,
+            login_precondition_commands=login_precondition_commands,
+            precondition_commands=precondition_commands)
diff --git a/server/site_tests/cheets_VTS/control.9_r11.arm.VtsAppWifiNativeTest b/server/site_tests/cheets_VTS/control.9_r11.arm.VtsAppWifiNativeTest
new file mode 100644
index 0000000..e67509c
--- /dev/null
+++ b/server/site_tests/cheets_VTS/control.9_r11.arm.VtsAppWifiNativeTest
@@ -0,0 +1,33 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+# This file has been automatically generated. Do not edit!
+
+AUTHOR = 'ARC++ Team'
+NAME = 'cheets_VTS.9_r11.arm.VtsAppWifiNativeTest'
+ATTRIBUTES = 'suite:arc-vts'
+DEPENDENCIES = 'arc'
+JOB_RETRIES = 1
+TEST_TYPE = 'server'
+TIME = 'MEDIUM'
+MAX_RESULT_SIZE_KB = 512000
+DOC = 'Run module VtsAppWifiNativeTest of the Vendor Test Suite (VTS) using arm ABI in the ARC++ container.'
+
+def run_TS(machine):
+    host_list = [hosts.create_host(machine)]
+    job.run_test(
+        'cheets_VTS',
+        hosts=host_list,
+        iterations=1,
+        tag='9_r11.arm.VtsAppWifiNativeTest',
+        test_name='cheets_VTS.9_r11.arm.VtsAppWifiNativeTest',
+        run_template=['run', 'commandAndExit', 'vts', '--module', 'VtsAppWifiNativeTest', '--logcat-on-failure'],
+        retry_template=['run', 'commandAndExit', 'retry', '--retry', '{session_id}'],
+        target_module='VtsAppWifiNativeTest',
+        target_plan=None,
+        bundle='arm',
+        uri='gs://chromeos-arc-images/vts/VTS-9_r11_arm.zip',
+        timeout=3600)
+
+parallel_simple(run_TS, machines)
diff --git a/server/site_tests/cheets_VTS/control.9_r11.arm.VtsCodelab b/server/site_tests/cheets_VTS/control.9_r11.arm.VtsCodelab
new file mode 100644
index 0000000..de603e3
--- /dev/null
+++ b/server/site_tests/cheets_VTS/control.9_r11.arm.VtsCodelab
@@ -0,0 +1,33 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+# This file has been automatically generated. Do not edit!
+
+AUTHOR = 'ARC++ Team'
+NAME = 'cheets_VTS.9_r11.arm.VtsCodelab'
+ATTRIBUTES = 'suite:arc-vts'
+DEPENDENCIES = 'arc'
+JOB_RETRIES = 1
+TEST_TYPE = 'server'
+TIME = 'MEDIUM'
+MAX_RESULT_SIZE_KB = 512000
+DOC = 'Run module VtsCodelabHelloWorldMultiDeviceTest, VtsCodelabHelloWorldSl4aTest, VtsCodelabHelloWorldStagingTest, VtsCodelabHelloWorldTest, VtsCodelabHostDrivenMultiHalTest, VtsCodelabTargetBinary of the Vendor Test Suite (VTS) using arm ABI in the ARC++ container.'
+
+def run_TS(machine):
+    host_list = [hosts.create_host(machine)]
+    job.run_test(
+        'cheets_VTS',
+        hosts=host_list,
+        iterations=1,
+        tag='9_r11.arm.VtsCodelab',
+        test_name='cheets_VTS.9_r11.arm.VtsCodelab',
+        run_template=['run', 'commandAndExit', 'vts', '--include-filter', 'VtsCodelabHelloWorldMultiDeviceTest', '--include-filter', 'VtsCodelabHelloWorldSl4aTest', '--include-filter', 'VtsCodelabHelloWorldStagingTest', '--include-filter', 'VtsCodelabHelloWorldTest', '--include-filter', 'VtsCodelabHostDrivenMultiHalTest', '--include-filter', 'VtsCodelabTargetBinary', '--logcat-on-failure'],
+        retry_template=['run', 'commandAndExit', 'retry', '--retry', '{session_id}'],
+        target_module='VtsCodelab',
+        target_plan=None,
+        bundle='arm',
+        uri='gs://chromeos-arc-images/vts/VTS-9_r11_arm.zip',
+        timeout=12600)
+
+parallel_simple(run_TS, machines)
diff --git a/server/site_tests/cheets_VTS/control.9_r11.arm.VtsDeviceHealth b/server/site_tests/cheets_VTS/control.9_r11.arm.VtsDeviceHealth
new file mode 100644
index 0000000..bf73066
--- /dev/null
+++ b/server/site_tests/cheets_VTS/control.9_r11.arm.VtsDeviceHealth
@@ -0,0 +1,33 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+# This file has been automatically generated. Do not edit!
+
+AUTHOR = 'ARC++ Team'
+NAME = 'cheets_VTS.9_r11.arm.VtsDeviceHealth'
+ATTRIBUTES = 'suite:arc-vts'
+DEPENDENCIES = 'arc'
+JOB_RETRIES = 1
+TEST_TYPE = 'server'
+TIME = 'MEDIUM'
+MAX_RESULT_SIZE_KB = 512000
+DOC = 'Run module VtsDeviceHealth of the Vendor Test Suite (VTS) using arm ABI in the ARC++ container.'
+
+def run_TS(machine):
+    host_list = [hosts.create_host(machine)]
+    job.run_test(
+        'cheets_VTS',
+        hosts=host_list,
+        iterations=1,
+        tag='9_r11.arm.VtsDeviceHealth',
+        test_name='cheets_VTS.9_r11.arm.VtsDeviceHealth',
+        run_template=['run', 'commandAndExit', 'vts', '--module', 'VtsDeviceHealth', '--logcat-on-failure'],
+        retry_template=['run', 'commandAndExit', 'retry', '--retry', '{session_id}'],
+        target_module='VtsDeviceHealth',
+        target_plan=None,
+        bundle='arm',
+        uri='gs://chromeos-arc-images/vts/VTS-9_r11_arm.zip',
+        timeout=3600)
+
+parallel_simple(run_TS, machines)
diff --git a/server/site_tests/cheets_VTS/control.9_r11.arm.VtsFirmware b/server/site_tests/cheets_VTS/control.9_r11.arm.VtsFirmware
new file mode 100644
index 0000000..c57b8df
--- /dev/null
+++ b/server/site_tests/cheets_VTS/control.9_r11.arm.VtsFirmware
@@ -0,0 +1,33 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+# This file has been automatically generated. Do not edit!
+
+AUTHOR = 'ARC++ Team'
+NAME = 'cheets_VTS.9_r11.arm.VtsFirmware'
+ATTRIBUTES = 'suite:arc-vts'
+DEPENDENCIES = 'arc'
+JOB_RETRIES = 1
+TEST_TYPE = 'server'
+TIME = 'MEDIUM'
+MAX_RESULT_SIZE_KB = 512000
+DOC = 'Run module VtsFirmwareBootHeaderVerification, VtsFirmwareDtboVerification of the Vendor Test Suite (VTS) using arm ABI in the ARC++ container.'
+
+def run_TS(machine):
+    host_list = [hosts.create_host(machine)]
+    job.run_test(
+        'cheets_VTS',
+        hosts=host_list,
+        iterations=1,
+        tag='9_r11.arm.VtsFirmware',
+        test_name='cheets_VTS.9_r11.arm.VtsFirmware',
+        run_template=['run', 'commandAndExit', 'vts', '--include-filter', 'VtsFirmwareBootHeaderVerification', '--include-filter', 'VtsFirmwareDtboVerification', '--logcat-on-failure'],
+        retry_template=['run', 'commandAndExit', 'retry', '--retry', '{session_id}'],
+        target_module='VtsFirmware',
+        target_plan=None,
+        bundle='arm',
+        uri='gs://chromeos-arc-images/vts/VTS-9_r11_arm.zip',
+        timeout=5400)
+
+parallel_simple(run_TS, machines)
diff --git a/server/site_tests/cheets_VTS/control.9_r11.arm.VtsFmqUnitTests b/server/site_tests/cheets_VTS/control.9_r11.arm.VtsFmqUnitTests
new file mode 100644
index 0000000..c7a2157
--- /dev/null
+++ b/server/site_tests/cheets_VTS/control.9_r11.arm.VtsFmqUnitTests
@@ -0,0 +1,33 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+# This file has been automatically generated. Do not edit!
+
+AUTHOR = 'ARC++ Team'
+NAME = 'cheets_VTS.9_r11.arm.VtsFmqUnitTests'
+ATTRIBUTES = 'suite:arc-vts'
+DEPENDENCIES = 'arc'
+JOB_RETRIES = 1
+TEST_TYPE = 'server'
+TIME = 'MEDIUM'
+MAX_RESULT_SIZE_KB = 512000
+DOC = 'Run module VtsFmqUnitTests of the Vendor Test Suite (VTS) using arm ABI in the ARC++ container.'
+
+def run_TS(machine):
+    host_list = [hosts.create_host(machine)]
+    job.run_test(
+        'cheets_VTS',
+        hosts=host_list,
+        iterations=1,
+        tag='9_r11.arm.VtsFmqUnitTests',
+        test_name='cheets_VTS.9_r11.arm.VtsFmqUnitTests',
+        run_template=['run', 'commandAndExit', 'vts', '--module', 'VtsFmqUnitTests', '--logcat-on-failure'],
+        retry_template=['run', 'commandAndExit', 'retry', '--retry', '{session_id}'],
+        target_module='VtsFmqUnitTests',
+        target_plan=None,
+        bundle='arm',
+        uri='gs://chromeos-arc-images/vts/VTS-9_r11_arm.zip',
+        timeout=3600)
+
+parallel_simple(run_TS, machines)
diff --git a/server/site_tests/cheets_VTS/control.9_r11.arm.VtsHal b/server/site_tests/cheets_VTS/control.9_r11.arm.VtsHal
new file mode 100644
index 0000000..c5198ad
--- /dev/null
+++ b/server/site_tests/cheets_VTS/control.9_r11.arm.VtsHal
@@ -0,0 +1,33 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+# This file has been automatically generated. Do not edit!
+
+AUTHOR = 'ARC++ Team'
+NAME = 'cheets_VTS.9_r11.arm.VtsHal'
+ATTRIBUTES = 'suite:arc-vts'
+DEPENDENCIES = 'arc'
+JOB_RETRIES = 1
+TEST_TYPE = 'server'
+TIME = 'MEDIUM'
+MAX_RESULT_SIZE_KB = 512000
+DOC = 'Run module VtsHalAudioCommonV2_0IfaceFuzzer, VtsHalAudioCommonV4_0IfaceFuzzer, VtsHalAudioEffectV2_0IfaceFuzzer, VtsHalAudioEffectV2_0Target, VtsHalAudioEffectV2_0TargetProfiling, VtsHalAudioEffectV2_0TargetReplay, VtsHalAudioEffectV4_0IfaceFuzzer, VtsHalAudioEffectV4_0Target, VtsHalAudioEffectV4_0TargetProfiling, VtsHalAudioV2_0IfaceFuzzer, VtsHalAudioV2_0Target, VtsHalAudioV2_0TargetProfiling, VtsHalAudioV4_0IfaceFuzzer, VtsHalAudioV4_0Target, VtsHalAudioV4_0TargetProfiling, VtsHalAuthSecretV1_0Target, VtsHalAuthsecretV1_0IfaceFuzzer, VtsHalAutomotiveAudiocontrolV1_0IfaceFuzzer, VtsHalAutomotiveEvsV1_0IfaceFuzzer, VtsHalAutomotiveVehicleV2_0Host, VtsHalAutomotiveVehicleV2_0HostProfiling, VtsHalAutomotiveVehicleV2_0IfaceFuzzer, VtsHalBaseV1_0TargetTest, VtsHalBiometricsFingerprintV2_1IfaceFuzzer, VtsHalBiometricsFingerprintV2_1Target, VtsHalBiometricsFingerprintV2_1TargetProfiling, VtsHalBiometricsFingerprintV2_1TargetReplay, VtsHalBluetoothA2DpV1_0IfaceFuzzer, VtsHalBluetoothV1_0IfaceFuzzer, VtsHalBluetoothV1_0Target, VtsHalBluetoothV1_0TargetProfiling, VtsHalBluetoothV1_0TargetReplay, VtsHalBootV1_0IfaceFuzzer, VtsHalBootV1_0Target, VtsHalBootV1_0TargetProfiling, VtsHalBroadcastradioV1_0IfaceFuzzer, VtsHalBroadcastradioV1_0Target, VtsHalBroadcastradioV1_0TargetProfiling, VtsHalBroadcastradioV1_1Adapter, VtsHalBroadcastradioV1_1IfaceFuzzer, VtsHalBroadcastradioV1_1Target, VtsHalBroadcastradioV1_1TargetProfiling, VtsHalBroadcastradioV2_0IfaceFuzzer, VtsHalBroadcastradioV2_0Target, VtsHalBroadcastradioV2_0TargetProfiling, VtsHalCameraCommonV1_0IfaceFuzzer, VtsHalCameraDeviceV1_0IfaceFuzzer, VtsHalCameraDeviceV3_2IfaceFuzzer, VtsHalCameraDeviceV3_3Adapter, VtsHalCameraDeviceV3_3IfaceFuzzer, VtsHalCameraDeviceV3_4Adapter, VtsHalCameraDeviceV3_4IfaceFuzzer, VtsHalCameraMetadataV3_2IfaceFuzzer, VtsHalCameraMetadataV3_3Adapter, VtsHalCameraMetadataV3_3IfaceFuzzer, VtsHalCameraProviderV2_4IfaceFuzzer, VtsHalCameraProviderV2_4Target, VtsHalCameraProviderV2_4TargetProfiling, VtsHalCasNativeV1_0IfaceFuzzer, VtsHalCasV1_0IfaceFuzzer, VtsHalCasV1_0Target, VtsHalConfigstoreV1_0IfaceFuzzer, VtsHalConfigstoreV1_0Target, VtsHalConfigstoreV1_0TargetProfiling, VtsHalConfigstoreV1_0TargetReplay, VtsHalConfigstoreV1_1IfaceFuzzer, VtsHalConfirmationuiV1_0IfaceFuzzer, VtsHalContexthubV1_0Host, VtsHalContexthubV1_0IfaceFuzzer, VtsHalContexthubV1_0Target, VtsHalContexthubV1_0TargetProfiling, VtsHalContexthubV1_0TargetReplay, VtsHalCoverageMeasurement, VtsHalDrmV1_0IfaceFuzzer, VtsHalDrmV1_0Target, VtsHalDrmV1_0TargetProfiling, VtsHalDrmV1_1Adapter, VtsHalDrmV1_1IfaceFuzzer, VtsHalDrmV1_1Target, VtsHalDrmV1_1TargetProfiling, VtsHalDumpstateV1_0IfaceFuzzer, VtsHalDumpstateV1_0Target, VtsHalEvsV1_0Target, VtsHalEvsV1_0TargetProfiling, VtsHalGatekeeperV1_0IfaceFuzzer, VtsHalGatekeeperV1_0Target, VtsHalGatekeeperV1_0TargetProfiling, VtsHalGatekeeperV1_0TargetReplay, VtsHalGnssV1_0HostBinderize, VtsHalGnssV1_0IfaceFuzzer, VtsHalGnssV1_0Target, VtsHalGnssV1_0TargetProfiling, VtsHalGnssV1_1Adapter, VtsHalGnssV1_1IfaceFuzzer, VtsHalGnssV1_1Target, VtsHalGraphicsAllocatorV2_0IfaceFuzzer, VtsHalGraphicsBufferqueueV1_0IfaceFuzzer, VtsHalGraphicsCommonV1_0IfaceFuzzer, VtsHalGraphicsCommonV1_1Adapter, VtsHalGraphicsCommonV1_1IfaceFuzzer, VtsHalGraphicsComposerV2_1IfaceFuzzer, VtsHalGraphicsComposerV2_1Target, VtsHalGraphicsComposerV2_1TargetProfiling, VtsHalGraphicsComposerV2_2Adapter, VtsHalGraphicsComposerV2_2IfaceFuzzer, VtsHalGraphicsComposerV2_2Target, VtsHalGraphicsMapperV2_0IfaceFuzzer, VtsHalGraphicsMapperV2_0Target, VtsHalGraphicsMapperV2_0TargetProfiling, VtsHalGraphicsMapperV2_1Adapter, VtsHalGraphicsMapperV2_1IfaceFuzzer, VtsHalGraphicsMapperV2_1Target, VtsHalGraphicsMapperV2_1TargetProfiling, VtsHalHealthV1_0IfaceFuzzer, VtsHalHealthV1_0Target, VtsHalHealthV1_0TargetProfiling, VtsHalHealthV2_0IfaceFuzzer, VtsHalHealthV2_0Target, VtsHalIrV1_0IfaceFuzzer, VtsHalIrV1_0Target, VtsHalIrV1_0TargetProfiling, VtsHalKeymasterV3_0IfaceFuzzer, VtsHalKeymasterV3_0Target, VtsHalKeymasterV3_0TargetProfiling, VtsHalKeymasterV3_0TargetReplay, VtsHalKeymasterV4_0IfaceFuzzer, VtsHalKeymasterV4_0Target, VtsHalKeymasterV4_0TargetProfiling, VtsHalLightV2_0IfaceFuzzer, VtsHalLightV2_0Target, VtsHalLightV2_0TargetProfiling, VtsHalLightV2_0TargetReplay, VtsHalLightsTestCases, VtsHalMediaBufferpoolV1_0IfaceFuzzer, VtsHalMediaOmxStoreV1_0Host, VtsHalMediaOmxV1_0Host, VtsHalMediaOmxV1_0IfaceFuzzer, VtsHalMediaV1_0IfaceFuzzer, VtsHalMemtrackV1_0IfaceFuzzer, VtsHalMemtrackV1_0Target, VtsHalMemtrackV1_0TargetProfiling, VtsHalMemtrackV1_0TargetReplay, VtsHalNetNetdV1_0Target, VtsHalNetNetdV1_0TargetProfiling, VtsHalNetNetdV1_1Target, VtsHalNetNetdV1_1TargetProfiling, VtsHalNeuralnetworksV1_0IfaceFuzzer, VtsHalNeuralnetworksV1_0Target, VtsHalNeuralnetworksV1_0TargetProfiling, VtsHalNeuralnetworksV1_1Adapter, VtsHalNeuralnetworksV1_1IfaceFuzzer, VtsHalNeuralnetworksV1_1Target, VtsHalNeuralnetworksV1_1TargetProfiling, VtsHalNfcV1_0HostBinderize, VtsHalNfcV1_0HostPassthrough, VtsHalNfcV1_0HostProfiling, VtsHalNfcV1_0IfaceFuzzer, VtsHalNfcV1_0Target, VtsHalNfcV1_0TargetProfiling, VtsHalNfcV1_0TargetReplay, VtsHalNfcV1_1Adapter, VtsHalNfcV1_1IfaceFuzzer, VtsHalNfcV1_1Target, VtsHalNfcV1_1TargetProfiling, VtsHalOemLockV1_0Target, VtsHalOemLockV1_0TargetProfiling, VtsHalOemlockV1_0IfaceFuzzer, VtsHalPowerTestCases, VtsHalPowerV1_0IfaceFuzzer, VtsHalPowerV1_0Target, VtsHalPowerV1_0TargetProfiling, VtsHalPowerV1_0TargetReplay, VtsHalPowerV1_1Adapter, VtsHalPowerV1_1IfaceFuzzer, VtsHalPowerV1_1Target, VtsHalPowerV1_1TargetProfiling, VtsHalPowerV1_2Adapter, VtsHalPowerV1_2IfaceFuzzer, VtsHalPowerV1_2Target, VtsHalPowerV1_3Target, VtsHalRadioConfigV1_0IfaceFuzzer, VtsHalRadioDeprecatedV1_0IfaceFuzzer, VtsHalRadioV1_0Host, VtsHalRadioV1_0IfaceFuzzer, VtsHalRadioV1_0Target, VtsHalRadioV1_0TargetProfiling, VtsHalRadioV1_1Adapter, VtsHalRadioV1_1IfaceFuzzer, VtsHalRadioV1_1Target, VtsHalRadioV1_2Adapter, VtsHalRadioV1_2IfaceFuzzer, VtsHalRadioV1_2Target, VtsHalRenderscriptV1_0IfaceFuzzer, VtsHalRenderscriptV1_0Target, VtsHalRenderscriptV1_0TargetProfiling, VtsHalSapV1_0Target, VtsHalSapV1_0TargetProfiling, VtsHalSecureElementV1_0Target, VtsHalSecureElementV1_0TargetProfiling, VtsHalSecure_ElementV1_0IfaceFuzzer, VtsHalSensorsV1_0Host, VtsHalSensorsV1_0HostProfiling, VtsHalSensorsV1_0IfaceFuzzer, VtsHalSensorsV1_0Target, VtsHalSensorsV1_0TargetProfiling, VtsHalSoundtriggerV2_0IfaceFuzzer, VtsHalSoundtriggerV2_0Target, VtsHalSoundtriggerV2_0TargetProfiling, VtsHalSoundtriggerV2_1Adapter, VtsHalSoundtriggerV2_1IfaceFuzzer, VtsHalSoundtriggerV2_1Target, VtsHalSoundtriggerV2_1TargetProfiling, VtsHalTetherOffloadConfigV1_0Target, VtsHalTetherOffloadConfigV1_0TargetProfiling, VtsHalTetherOffloadControlV1_0Target, VtsHalTetherOffloadControlV1_0TargetProfiling, VtsHalTetheroffloadConfigV1_0IfaceFuzzer, VtsHalTetheroffloadControlV1_0IfaceFuzzer, VtsHalThermalV1_0IfaceFuzzer, VtsHalThermalV1_0Target, VtsHalThermalV1_0TargetProfiling, VtsHalThermalV1_0TargetReplay, VtsHalThermalV1_1Adapter, VtsHalThermalV1_1IfaceFuzzer, VtsHalThermalV1_1Target, VtsHalThermalV1_1TargetProfiling, VtsHalTvCecV1_0Host, VtsHalTvCecV1_0HostProfiling, VtsHalTvCecV1_0IfaceFuzzer, VtsHalTvInputV1_0Host, VtsHalTvInputV1_0HostProfiling, VtsHalTvInputV1_0IfaceFuzzer, VtsHalTvInputV1_0Target, VtsHalTvInputV1_0TargetProfiling, VtsHalUsbGadgetV1_0Host, VtsHalUsbGadgetV1_0IfaceFuzzer, VtsHalUsbV1_0IfaceFuzzer, VtsHalUsbV1_0Target, VtsHalUsbV1_0TargetProfiling, VtsHalUsbV1_0TargetReplay, VtsHalUsbV1_1Adapter, VtsHalUsbV1_1IfaceFuzzer, VtsHalUsbV1_1Target, VtsHalVibratorV1_0Host, VtsHalVibratorV1_0HostProfiling, VtsHalVibratorV1_0IfaceFuzzer, VtsHalVibratorV1_0Target, VtsHalVibratorV1_0TargetProfiling, VtsHalVibratorV1_0TargetReplay, VtsHalVibratorV1_1Adapter, VtsHalVibratorV1_1IfaceFuzzer, VtsHalVibratorV1_1Target, VtsHalVibratorV1_2Adapter, VtsHalVibratorV1_2IfaceFuzzer, VtsHalVibratorV1_2Target, VtsHalVrV1_0Host, VtsHalVrV1_0IfaceFuzzer, VtsHalVrV1_0Target, VtsHalVrV1_0TargetProfiling, VtsHalVrV1_0TargetReplay, VtsHalWeaverV1_0IfaceFuzzer, VtsHalWeaverV1_0Target, VtsHalWeaverV1_0TargetProfiling, VtsHalWifiHostapdV1_0IfaceFuzzer, VtsHalWifiNanV1_0Target, VtsHalWifiNanV1_0TargetProfiling, VtsHalWifiOffloadV1_0IfaceFuzzer, VtsHalWifiOffloadV1_0Target, VtsHalWifiSupplicantV1_0IfaceFuzzer, VtsHalWifiSupplicantV1_0Target, VtsHalWifiSupplicantV1_0TargetProfiling, VtsHalWifiSupplicantV1_1Adapter, VtsHalWifiSupplicantV1_1IfaceFuzzer, VtsHalWifiSupplicantV1_1Target, VtsHalWifiSupplicantV1_1TargetProfiling, VtsHalWifiV1_0Host, VtsHalWifiV1_0IfaceFuzzer, VtsHalWifiV1_0TargetProfiling, VtsHalWifiV1_1Adapter, VtsHalWifiV1_1IfaceFuzzer, VtsHalWifiV1_1Target, VtsHalWifiV1_1TargetProfiling, VtsHalWifiV1_2Adapter, VtsHalWifiV1_2IfaceFuzzer, VtsHalWifiV1_2Target, VtsHalWifiV1_2TargetProfiling of the Vendor Test Suite (VTS) using arm ABI in the ARC++ container.'
+
+def run_TS(machine):
+    host_list = [hosts.create_host(machine)]
+    job.run_test(
+        'cheets_VTS',
+        hosts=host_list,
+        iterations=1,
+        tag='9_r11.arm.VtsHal',
+        test_name='cheets_VTS.9_r11.arm.VtsHal',
+        run_template=['run', 'commandAndExit', 'vts', '--include-filter', 'VtsHalAudioCommonV2_0IfaceFuzzer', '--include-filter', 'VtsHalAudioCommonV4_0IfaceFuzzer', '--include-filter', 'VtsHalAudioEffectV2_0IfaceFuzzer', '--include-filter', 'VtsHalAudioEffectV2_0Target', '--include-filter', 'VtsHalAudioEffectV2_0TargetProfiling', '--include-filter', 'VtsHalAudioEffectV2_0TargetReplay', '--include-filter', 'VtsHalAudioEffectV4_0IfaceFuzzer', '--include-filter', 'VtsHalAudioEffectV4_0Target', '--include-filter', 'VtsHalAudioEffectV4_0TargetProfiling', '--include-filter', 'VtsHalAudioV2_0IfaceFuzzer', '--include-filter', 'VtsHalAudioV2_0Target', '--include-filter', 'VtsHalAudioV2_0TargetProfiling', '--include-filter', 'VtsHalAudioV4_0IfaceFuzzer', '--include-filter', 'VtsHalAudioV4_0Target', '--include-filter', 'VtsHalAudioV4_0TargetProfiling', '--include-filter', 'VtsHalAuthSecretV1_0Target', '--include-filter', 'VtsHalAuthsecretV1_0IfaceFuzzer', '--include-filter', 'VtsHalAutomotiveAudiocontrolV1_0IfaceFuzzer', '--include-filter', 'VtsHalAutomotiveEvsV1_0IfaceFuzzer', '--include-filter', 'VtsHalAutomotiveVehicleV2_0Host', '--include-filter', 'VtsHalAutomotiveVehicleV2_0HostProfiling', '--include-filter', 'VtsHalAutomotiveVehicleV2_0IfaceFuzzer', '--include-filter', 'VtsHalBaseV1_0TargetTest', '--include-filter', 'VtsHalBiometricsFingerprintV2_1IfaceFuzzer', '--include-filter', 'VtsHalBiometricsFingerprintV2_1Target', '--include-filter', 'VtsHalBiometricsFingerprintV2_1TargetProfiling', '--include-filter', 'VtsHalBiometricsFingerprintV2_1TargetReplay', '--include-filter', 'VtsHalBluetoothA2DpV1_0IfaceFuzzer', '--include-filter', 'VtsHalBluetoothV1_0IfaceFuzzer', '--include-filter', 'VtsHalBluetoothV1_0Target', '--include-filter', 'VtsHalBluetoothV1_0TargetProfiling', '--include-filter', 'VtsHalBluetoothV1_0TargetReplay', '--include-filter', 'VtsHalBootV1_0IfaceFuzzer', '--include-filter', 'VtsHalBootV1_0Target', '--include-filter', 'VtsHalBootV1_0TargetProfiling', '--include-filter', 'VtsHalBroadcastradioV1_0IfaceFuzzer', '--include-filter', 'VtsHalBroadcastradioV1_0Target', '--include-filter', 'VtsHalBroadcastradioV1_0TargetProfiling', '--include-filter', 'VtsHalBroadcastradioV1_1Adapter', '--include-filter', 'VtsHalBroadcastradioV1_1IfaceFuzzer', '--include-filter', 'VtsHalBroadcastradioV1_1Target', '--include-filter', 'VtsHalBroadcastradioV1_1TargetProfiling', '--include-filter', 'VtsHalBroadcastradioV2_0IfaceFuzzer', '--include-filter', 'VtsHalBroadcastradioV2_0Target', '--include-filter', 'VtsHalBroadcastradioV2_0TargetProfiling', '--include-filter', 'VtsHalCameraCommonV1_0IfaceFuzzer', '--include-filter', 'VtsHalCameraDeviceV1_0IfaceFuzzer', '--include-filter', 'VtsHalCameraDeviceV3_2IfaceFuzzer', '--include-filter', 'VtsHalCameraDeviceV3_3Adapter', '--include-filter', 'VtsHalCameraDeviceV3_3IfaceFuzzer', '--include-filter', 'VtsHalCameraDeviceV3_4Adapter', '--include-filter', 'VtsHalCameraDeviceV3_4IfaceFuzzer', '--include-filter', 'VtsHalCameraMetadataV3_2IfaceFuzzer', '--include-filter', 'VtsHalCameraMetadataV3_3Adapter', '--include-filter', 'VtsHalCameraMetadataV3_3IfaceFuzzer', '--include-filter', 'VtsHalCameraProviderV2_4IfaceFuzzer', '--include-filter', 'VtsHalCameraProviderV2_4Target', '--include-filter', 'VtsHalCameraProviderV2_4TargetProfiling', '--include-filter', 'VtsHalCasNativeV1_0IfaceFuzzer', '--include-filter', 'VtsHalCasV1_0IfaceFuzzer', '--include-filter', 'VtsHalCasV1_0Target', '--include-filter', 'VtsHalConfigstoreV1_0IfaceFuzzer', '--include-filter', 'VtsHalConfigstoreV1_0Target', '--include-filter', 'VtsHalConfigstoreV1_0TargetProfiling', '--include-filter', 'VtsHalConfigstoreV1_0TargetReplay', '--include-filter', 'VtsHalConfigstoreV1_1IfaceFuzzer', '--include-filter', 'VtsHalConfirmationuiV1_0IfaceFuzzer', '--include-filter', 'VtsHalContexthubV1_0Host', '--include-filter', 'VtsHalContexthubV1_0IfaceFuzzer', '--include-filter', 'VtsHalContexthubV1_0Target', '--include-filter', 'VtsHalContexthubV1_0TargetProfiling', '--include-filter', 'VtsHalContexthubV1_0TargetReplay', '--include-filter', 'VtsHalCoverageMeasurement', '--include-filter', 'VtsHalDrmV1_0IfaceFuzzer', '--include-filter', 'VtsHalDrmV1_0Target', '--include-filter', 'VtsHalDrmV1_0TargetProfiling', '--include-filter', 'VtsHalDrmV1_1Adapter', '--include-filter', 'VtsHalDrmV1_1IfaceFuzzer', '--include-filter', 'VtsHalDrmV1_1Target', '--include-filter', 'VtsHalDrmV1_1TargetProfiling', '--include-filter', 'VtsHalDumpstateV1_0IfaceFuzzer', '--include-filter', 'VtsHalDumpstateV1_0Target', '--include-filter', 'VtsHalEvsV1_0Target', '--include-filter', 'VtsHalEvsV1_0TargetProfiling', '--include-filter', 'VtsHalGatekeeperV1_0IfaceFuzzer', '--include-filter', 'VtsHalGatekeeperV1_0Target', '--include-filter', 'VtsHalGatekeeperV1_0TargetProfiling', '--include-filter', 'VtsHalGatekeeperV1_0TargetReplay', '--include-filter', 'VtsHalGnssV1_0HostBinderize', '--include-filter', 'VtsHalGnssV1_0IfaceFuzzer', '--include-filter', 'VtsHalGnssV1_0Target', '--include-filter', 'VtsHalGnssV1_0TargetProfiling', '--include-filter', 'VtsHalGnssV1_1Adapter', '--include-filter', 'VtsHalGnssV1_1IfaceFuzzer', '--include-filter', 'VtsHalGnssV1_1Target', '--include-filter', 'VtsHalGraphicsAllocatorV2_0IfaceFuzzer', '--include-filter', 'VtsHalGraphicsBufferqueueV1_0IfaceFuzzer', '--include-filter', 'VtsHalGraphicsCommonV1_0IfaceFuzzer', '--include-filter', 'VtsHalGraphicsCommonV1_1Adapter', '--include-filter', 'VtsHalGraphicsCommonV1_1IfaceFuzzer', '--include-filter', 'VtsHalGraphicsComposerV2_1IfaceFuzzer', '--include-filter', 'VtsHalGraphicsComposerV2_1Target', '--include-filter', 'VtsHalGraphicsComposerV2_1TargetProfiling', '--include-filter', 'VtsHalGraphicsComposerV2_2Adapter', '--include-filter', 'VtsHalGraphicsComposerV2_2IfaceFuzzer', '--include-filter', 'VtsHalGraphicsComposerV2_2Target', '--include-filter', 'VtsHalGraphicsMapperV2_0IfaceFuzzer', '--include-filter', 'VtsHalGraphicsMapperV2_0Target', '--include-filter', 'VtsHalGraphicsMapperV2_0TargetProfiling', '--include-filter', 'VtsHalGraphicsMapperV2_1Adapter', '--include-filter', 'VtsHalGraphicsMapperV2_1IfaceFuzzer', '--include-filter', 'VtsHalGraphicsMapperV2_1Target', '--include-filter', 'VtsHalGraphicsMapperV2_1TargetProfiling', '--include-filter', 'VtsHalHealthV1_0IfaceFuzzer', '--include-filter', 'VtsHalHealthV1_0Target', '--include-filter', 'VtsHalHealthV1_0TargetProfiling', '--include-filter', 'VtsHalHealthV2_0IfaceFuzzer', '--include-filter', 'VtsHalHealthV2_0Target', '--include-filter', 'VtsHalIrV1_0IfaceFuzzer', '--include-filter', 'VtsHalIrV1_0Target', '--include-filter', 'VtsHalIrV1_0TargetProfiling', '--include-filter', 'VtsHalKeymasterV3_0IfaceFuzzer', '--include-filter', 'VtsHalKeymasterV3_0Target', '--include-filter', 'VtsHalKeymasterV3_0TargetProfiling', '--include-filter', 'VtsHalKeymasterV3_0TargetReplay', '--include-filter', 'VtsHalKeymasterV4_0IfaceFuzzer', '--include-filter', 'VtsHalKeymasterV4_0Target', '--include-filter', 'VtsHalKeymasterV4_0TargetProfiling', '--include-filter', 'VtsHalLightV2_0IfaceFuzzer', '--include-filter', 'VtsHalLightV2_0Target', '--include-filter', 'VtsHalLightV2_0TargetProfiling', '--include-filter', 'VtsHalLightV2_0TargetReplay', '--include-filter', 'VtsHalLightsTestCases', '--include-filter', 'VtsHalMediaBufferpoolV1_0IfaceFuzzer', '--include-filter', 'VtsHalMediaOmxStoreV1_0Host', '--include-filter', 'VtsHalMediaOmxV1_0Host', '--include-filter', 'VtsHalMediaOmxV1_0IfaceFuzzer', '--include-filter', 'VtsHalMediaV1_0IfaceFuzzer', '--include-filter', 'VtsHalMemtrackV1_0IfaceFuzzer', '--include-filter', 'VtsHalMemtrackV1_0Target', '--include-filter', 'VtsHalMemtrackV1_0TargetProfiling', '--include-filter', 'VtsHalMemtrackV1_0TargetReplay', '--include-filter', 'VtsHalNetNetdV1_0Target', '--include-filter', 'VtsHalNetNetdV1_0TargetProfiling', '--include-filter', 'VtsHalNetNetdV1_1Target', '--include-filter', 'VtsHalNetNetdV1_1TargetProfiling', '--include-filter', 'VtsHalNeuralnetworksV1_0IfaceFuzzer', '--include-filter', 'VtsHalNeuralnetworksV1_0Target', '--include-filter', 'VtsHalNeuralnetworksV1_0TargetProfiling', '--include-filter', 'VtsHalNeuralnetworksV1_1Adapter', '--include-filter', 'VtsHalNeuralnetworksV1_1IfaceFuzzer', '--include-filter', 'VtsHalNeuralnetworksV1_1Target', '--include-filter', 'VtsHalNeuralnetworksV1_1TargetProfiling', '--include-filter', 'VtsHalNfcV1_0HostBinderize', '--include-filter', 'VtsHalNfcV1_0HostPassthrough', '--include-filter', 'VtsHalNfcV1_0HostProfiling', '--include-filter', 'VtsHalNfcV1_0IfaceFuzzer', '--include-filter', 'VtsHalNfcV1_0Target', '--include-filter', 'VtsHalNfcV1_0TargetProfiling', '--include-filter', 'VtsHalNfcV1_0TargetReplay', '--include-filter', 'VtsHalNfcV1_1Adapter', '--include-filter', 'VtsHalNfcV1_1IfaceFuzzer', '--include-filter', 'VtsHalNfcV1_1Target', '--include-filter', 'VtsHalNfcV1_1TargetProfiling', '--include-filter', 'VtsHalOemLockV1_0Target', '--include-filter', 'VtsHalOemLockV1_0TargetProfiling', '--include-filter', 'VtsHalOemlockV1_0IfaceFuzzer', '--include-filter', 'VtsHalPowerTestCases', '--include-filter', 'VtsHalPowerV1_0IfaceFuzzer', '--include-filter', 'VtsHalPowerV1_0Target', '--include-filter', 'VtsHalPowerV1_0TargetProfiling', '--include-filter', 'VtsHalPowerV1_0TargetReplay', '--include-filter', 'VtsHalPowerV1_1Adapter', '--include-filter', 'VtsHalPowerV1_1IfaceFuzzer', '--include-filter', 'VtsHalPowerV1_1Target', '--include-filter', 'VtsHalPowerV1_1TargetProfiling', '--include-filter', 'VtsHalPowerV1_2Adapter', '--include-filter', 'VtsHalPowerV1_2IfaceFuzzer', '--include-filter', 'VtsHalPowerV1_2Target', '--include-filter', 'VtsHalPowerV1_3Target', '--include-filter', 'VtsHalRadioConfigV1_0IfaceFuzzer', '--include-filter', 'VtsHalRadioDeprecatedV1_0IfaceFuzzer', '--include-filter', 'VtsHalRadioV1_0Host', '--include-filter', 'VtsHalRadioV1_0IfaceFuzzer', '--include-filter', 'VtsHalRadioV1_0Target', '--include-filter', 'VtsHalRadioV1_0TargetProfiling', '--include-filter', 'VtsHalRadioV1_1Adapter', '--include-filter', 'VtsHalRadioV1_1IfaceFuzzer', '--include-filter', 'VtsHalRadioV1_1Target', '--include-filter', 'VtsHalRadioV1_2Adapter', '--include-filter', 'VtsHalRadioV1_2IfaceFuzzer', '--include-filter', 'VtsHalRadioV1_2Target', '--include-filter', 'VtsHalRenderscriptV1_0IfaceFuzzer', '--include-filter', 'VtsHalRenderscriptV1_0Target', '--include-filter', 'VtsHalRenderscriptV1_0TargetProfiling', '--include-filter', 'VtsHalSapV1_0Target', '--include-filter', 'VtsHalSapV1_0TargetProfiling', '--include-filter', 'VtsHalSecureElementV1_0Target', '--include-filter', 'VtsHalSecureElementV1_0TargetProfiling', '--include-filter', 'VtsHalSecure_ElementV1_0IfaceFuzzer', '--include-filter', 'VtsHalSensorsV1_0Host', '--include-filter', 'VtsHalSensorsV1_0HostProfiling', '--include-filter', 'VtsHalSensorsV1_0IfaceFuzzer', '--include-filter', 'VtsHalSensorsV1_0Target', '--include-filter', 'VtsHalSensorsV1_0TargetProfiling', '--include-filter', 'VtsHalSoundtriggerV2_0IfaceFuzzer', '--include-filter', 'VtsHalSoundtriggerV2_0Target', '--include-filter', 'VtsHalSoundtriggerV2_0TargetProfiling', '--include-filter', 'VtsHalSoundtriggerV2_1Adapter', '--include-filter', 'VtsHalSoundtriggerV2_1IfaceFuzzer', '--include-filter', 'VtsHalSoundtriggerV2_1Target', '--include-filter', 'VtsHalSoundtriggerV2_1TargetProfiling', '--include-filter', 'VtsHalTetherOffloadConfigV1_0Target', '--include-filter', 'VtsHalTetherOffloadConfigV1_0TargetProfiling', '--include-filter', 'VtsHalTetherOffloadControlV1_0Target', '--include-filter', 'VtsHalTetherOffloadControlV1_0TargetProfiling', '--include-filter', 'VtsHalTetheroffloadConfigV1_0IfaceFuzzer', '--include-filter', 'VtsHalTetheroffloadControlV1_0IfaceFuzzer', '--include-filter', 'VtsHalThermalV1_0IfaceFuzzer', '--include-filter', 'VtsHalThermalV1_0Target', '--include-filter', 'VtsHalThermalV1_0TargetProfiling', '--include-filter', 'VtsHalThermalV1_0TargetReplay', '--include-filter', 'VtsHalThermalV1_1Adapter', '--include-filter', 'VtsHalThermalV1_1IfaceFuzzer', '--include-filter', 'VtsHalThermalV1_1Target', '--include-filter', 'VtsHalThermalV1_1TargetProfiling', '--include-filter', 'VtsHalTvCecV1_0Host', '--include-filter', 'VtsHalTvCecV1_0HostProfiling', '--include-filter', 'VtsHalTvCecV1_0IfaceFuzzer', '--include-filter', 'VtsHalTvInputV1_0Host', '--include-filter', 'VtsHalTvInputV1_0HostProfiling', '--include-filter', 'VtsHalTvInputV1_0IfaceFuzzer', '--include-filter', 'VtsHalTvInputV1_0Target', '--include-filter', 'VtsHalTvInputV1_0TargetProfiling', '--include-filter', 'VtsHalUsbGadgetV1_0Host', '--include-filter', 'VtsHalUsbGadgetV1_0IfaceFuzzer', '--include-filter', 'VtsHalUsbV1_0IfaceFuzzer', '--include-filter', 'VtsHalUsbV1_0Target', '--include-filter', 'VtsHalUsbV1_0TargetProfiling', '--include-filter', 'VtsHalUsbV1_0TargetReplay', '--include-filter', 'VtsHalUsbV1_1Adapter', '--include-filter', 'VtsHalUsbV1_1IfaceFuzzer', '--include-filter', 'VtsHalUsbV1_1Target', '--include-filter', 'VtsHalVibratorV1_0Host', '--include-filter', 'VtsHalVibratorV1_0HostProfiling', '--include-filter', 'VtsHalVibratorV1_0IfaceFuzzer', '--include-filter', 'VtsHalVibratorV1_0Target', '--include-filter', 'VtsHalVibratorV1_0TargetProfiling', '--include-filter', 'VtsHalVibratorV1_0TargetReplay', '--include-filter', 'VtsHalVibratorV1_1Adapter', '--include-filter', 'VtsHalVibratorV1_1IfaceFuzzer', '--include-filter', 'VtsHalVibratorV1_1Target', '--include-filter', 'VtsHalVibratorV1_2Adapter', '--include-filter', 'VtsHalVibratorV1_2IfaceFuzzer', '--include-filter', 'VtsHalVibratorV1_2Target', '--include-filter', 'VtsHalVrV1_0Host', '--include-filter', 'VtsHalVrV1_0IfaceFuzzer', '--include-filter', 'VtsHalVrV1_0Target', '--include-filter', 'VtsHalVrV1_0TargetProfiling', '--include-filter', 'VtsHalVrV1_0TargetReplay', '--include-filter', 'VtsHalWeaverV1_0IfaceFuzzer', '--include-filter', 'VtsHalWeaverV1_0Target', '--include-filter', 'VtsHalWeaverV1_0TargetProfiling', '--include-filter', 'VtsHalWifiHostapdV1_0IfaceFuzzer', '--include-filter', 'VtsHalWifiNanV1_0Target', '--include-filter', 'VtsHalWifiNanV1_0TargetProfiling', '--include-filter', 'VtsHalWifiOffloadV1_0IfaceFuzzer', '--include-filter', 'VtsHalWifiOffloadV1_0Target', '--include-filter', 'VtsHalWifiSupplicantV1_0IfaceFuzzer', '--include-filter', 'VtsHalWifiSupplicantV1_0Target', '--include-filter', 'VtsHalWifiSupplicantV1_0TargetProfiling', '--include-filter', 'VtsHalWifiSupplicantV1_1Adapter', '--include-filter', 'VtsHalWifiSupplicantV1_1IfaceFuzzer', '--include-filter', 'VtsHalWifiSupplicantV1_1Target', '--include-filter', 'VtsHalWifiSupplicantV1_1TargetProfiling', '--include-filter', 'VtsHalWifiV1_0Host', '--include-filter', 'VtsHalWifiV1_0IfaceFuzzer', '--include-filter', 'VtsHalWifiV1_0TargetProfiling', '--include-filter', 'VtsHalWifiV1_1Adapter', '--include-filter', 'VtsHalWifiV1_1IfaceFuzzer', '--include-filter', 'VtsHalWifiV1_1Target', '--include-filter', 'VtsHalWifiV1_1TargetProfiling', '--include-filter', 'VtsHalWifiV1_2Adapter', '--include-filter', 'VtsHalWifiV1_2IfaceFuzzer', '--include-filter', 'VtsHalWifiV1_2Target', '--include-filter', 'VtsHalWifiV1_2TargetProfiling', '--logcat-on-failure'],
+        retry_template=['run', 'commandAndExit', 'retry', '--retry', '{session_id}'],
+        target_module='VtsHal',
+        target_plan=None,
+        bundle='arm',
+        uri='gs://chromeos-arc-images/vts/VTS-9_r11_arm.zip',
+        timeout=516600)
+
+parallel_simple(run_TS, machines)
diff --git a/server/site_tests/cheets_VTS/control.9_r11.arm.VtsHidlUnitTests b/server/site_tests/cheets_VTS/control.9_r11.arm.VtsHidlUnitTests
new file mode 100644
index 0000000..652afeb
--- /dev/null
+++ b/server/site_tests/cheets_VTS/control.9_r11.arm.VtsHidlUnitTests
@@ -0,0 +1,33 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+# This file has been automatically generated. Do not edit!
+
+AUTHOR = 'ARC++ Team'
+NAME = 'cheets_VTS.9_r11.arm.VtsHidlUnitTests'
+ATTRIBUTES = 'suite:arc-vts'
+DEPENDENCIES = 'arc'
+JOB_RETRIES = 1
+TEST_TYPE = 'server'
+TIME = 'MEDIUM'
+MAX_RESULT_SIZE_KB = 512000
+DOC = 'Run module VtsHidlUnitTests of the Vendor Test Suite (VTS) using arm ABI in the ARC++ container.'
+
+def run_TS(machine):
+    host_list = [hosts.create_host(machine)]
+    job.run_test(
+        'cheets_VTS',
+        hosts=host_list,
+        iterations=1,
+        tag='9_r11.arm.VtsHidlUnitTests',
+        test_name='cheets_VTS.9_r11.arm.VtsHidlUnitTests',
+        run_template=['run', 'commandAndExit', 'vts', '--module', 'VtsHidlUnitTests', '--logcat-on-failure'],
+        retry_template=['run', 'commandAndExit', 'retry', '--retry', '{session_id}'],
+        target_module='VtsHidlUnitTests',
+        target_plan=None,
+        bundle='arm',
+        uri='gs://chromeos-arc-images/vts/VTS-9_r11_arm.zip',
+        timeout=3600)
+
+parallel_simple(run_TS, machines)
diff --git a/server/site_tests/cheets_VTS/control.9_r11.arm.VtsKernel b/server/site_tests/cheets_VTS/control.9_r11.arm.VtsKernel
new file mode 100644
index 0000000..cc29a20
--- /dev/null
+++ b/server/site_tests/cheets_VTS/control.9_r11.arm.VtsKernel
@@ -0,0 +1,33 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+# This file has been automatically generated. Do not edit!
+
+AUTHOR = 'ARC++ Team'
+NAME = 'cheets_VTS.9_r11.arm.VtsKernel'
+ATTRIBUTES = 'suite:arc-vts'
+DEPENDENCIES = 'arc'
+JOB_RETRIES = 1
+TEST_TYPE = 'server'
+TIME = 'MEDIUM'
+MAX_RESULT_SIZE_KB = 512000
+DOC = 'Run module VtsKernelApiSysfsTest, VtsKernelBinderTest, VtsKernelConfig, VtsKernelDeviceTreeEarlyMount, VtsKernelFuzzTest, VtsKernelHwBinder, VtsKernelLibcutilsTest, VtsKernelLinuxKselftest, VtsKernelLinuxKselftestPresubmit, VtsKernelLinuxKselftestStaging, VtsKernelLtp, VtsKernelLtpStaging, VtsKernelNetBpfTest, VtsKernelNetTest, VtsKernelNetdTest, VtsKernelProcFileApi, VtsKernelQtaguidTest, VtsKernelRootDir, VtsKernelSelinuxFileApi, VtsKernelSyscallExistence, VtsKernelSystemAsRoot, VtsKernelTunTest, VtsKernelVersion of the Vendor Test Suite (VTS) using arm ABI in the ARC++ container.'
+
+def run_TS(machine):
+    host_list = [hosts.create_host(machine)]
+    job.run_test(
+        'cheets_VTS',
+        hosts=host_list,
+        iterations=1,
+        tag='9_r11.arm.VtsKernel',
+        test_name='cheets_VTS.9_r11.arm.VtsKernel',
+        run_template=['run', 'commandAndExit', 'vts', '--include-filter', 'VtsKernelApiSysfsTest', '--include-filter', 'VtsKernelBinderTest', '--include-filter', 'VtsKernelConfig', '--include-filter', 'VtsKernelDeviceTreeEarlyMount', '--include-filter', 'VtsKernelFuzzTest', '--include-filter', 'VtsKernelHwBinder', '--include-filter', 'VtsKernelLibcutilsTest', '--include-filter', 'VtsKernelLinuxKselftest', '--include-filter', 'VtsKernelLinuxKselftestPresubmit', '--include-filter', 'VtsKernelLinuxKselftestStaging', '--include-filter', 'VtsKernelLtp', '--include-filter', 'VtsKernelLtpStaging', '--include-filter', 'VtsKernelNetBpfTest', '--include-filter', 'VtsKernelNetTest', '--include-filter', 'VtsKernelNetdTest', '--include-filter', 'VtsKernelProcFileApi', '--include-filter', 'VtsKernelQtaguidTest', '--include-filter', 'VtsKernelRootDir', '--include-filter', 'VtsKernelSelinuxFileApi', '--include-filter', 'VtsKernelSyscallExistence', '--include-filter', 'VtsKernelSystemAsRoot', '--include-filter', 'VtsKernelTunTest', '--include-filter', 'VtsKernelVersion', '--logcat-on-failure'],
+        retry_template=['run', 'commandAndExit', 'retry', '--retry', '{session_id}'],
+        target_module='VtsKernel',
+        target_plan=None,
+        bundle='arm',
+        uri='gs://chromeos-arc-images/vts/VTS-9_r11_arm.zip',
+        timeout=43200)
+
+parallel_simple(run_TS, machines)
diff --git a/server/site_tests/cheets_VTS/control.9_r11.arm.VtsNbu b/server/site_tests/cheets_VTS/control.9_r11.arm.VtsNbu
new file mode 100644
index 0000000..0fb9b80
--- /dev/null
+++ b/server/site_tests/cheets_VTS/control.9_r11.arm.VtsNbu
@@ -0,0 +1,33 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+# This file has been automatically generated. Do not edit!
+
+AUTHOR = 'ARC++ Team'
+NAME = 'cheets_VTS.9_r11.arm.VtsNbu'
+ATTRIBUTES = 'suite:arc-vts'
+DEPENDENCIES = 'arc'
+JOB_RETRIES = 1
+TEST_TYPE = 'server'
+TIME = 'MEDIUM'
+MAX_RESULT_SIZE_KB = 512000
+DOC = 'Run module VtsNbu of the Vendor Test Suite (VTS) using arm ABI in the ARC++ container.'
+
+def run_TS(machine):
+    host_list = [hosts.create_host(machine)]
+    job.run_test(
+        'cheets_VTS',
+        hosts=host_list,
+        iterations=1,
+        tag='9_r11.arm.VtsNbu',
+        test_name='cheets_VTS.9_r11.arm.VtsNbu',
+        run_template=['run', 'commandAndExit', 'vts', '--module', 'VtsNbu', '--logcat-on-failure'],
+        retry_template=['run', 'commandAndExit', 'retry', '--retry', '{session_id}'],
+        target_module='VtsNbu',
+        target_plan=None,
+        bundle='arm',
+        uri='gs://chromeos-arc-images/vts/VTS-9_r11_arm.zip',
+        timeout=3600)
+
+parallel_simple(run_TS, machines)
diff --git a/server/site_tests/cheets_VTS/control.9_r11.arm.VtsSelfTest b/server/site_tests/cheets_VTS/control.9_r11.arm.VtsSelfTest
new file mode 100644
index 0000000..87d8e42
--- /dev/null
+++ b/server/site_tests/cheets_VTS/control.9_r11.arm.VtsSelfTest
@@ -0,0 +1,33 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+# This file has been automatically generated. Do not edit!
+
+AUTHOR = 'ARC++ Team'
+NAME = 'cheets_VTS.9_r11.arm.VtsSelfTest'
+ATTRIBUTES = 'suite:arc-vts'
+DEPENDENCIES = 'arc'
+JOB_RETRIES = 1
+TEST_TYPE = 'server'
+TIME = 'MEDIUM'
+MAX_RESULT_SIZE_KB = 512000
+DOC = 'Run module VtsSelfTestBaseTest, VtsSelfTestFlakyHidlTest, VtsSelfTestFlakyTest, VtsSelfTestPythonVirtualenvPreparerTestPart1, VtsSelfTestPythonVirtualenvPreparerTestPart2, VtsSelfTestShellPerformance, VtsSelfTestZeroTestCaseBinaryTest of the Vendor Test Suite (VTS) using arm ABI in the ARC++ container.'
+
+def run_TS(machine):
+    host_list = [hosts.create_host(machine)]
+    job.run_test(
+        'cheets_VTS',
+        hosts=host_list,
+        iterations=1,
+        tag='9_r11.arm.VtsSelfTest',
+        test_name='cheets_VTS.9_r11.arm.VtsSelfTest',
+        run_template=['run', 'commandAndExit', 'vts', '--include-filter', 'VtsSelfTestBaseTest', '--include-filter', 'VtsSelfTestFlakyHidlTest', '--include-filter', 'VtsSelfTestFlakyTest', '--include-filter', 'VtsSelfTestPythonVirtualenvPreparerTestPart1', '--include-filter', 'VtsSelfTestPythonVirtualenvPreparerTestPart2', '--include-filter', 'VtsSelfTestShellPerformance', '--include-filter', 'VtsSelfTestZeroTestCaseBinaryTest', '--logcat-on-failure'],
+        retry_template=['run', 'commandAndExit', 'retry', '--retry', '{session_id}'],
+        target_module='VtsSelfTest',
+        target_plan=None,
+        bundle='arm',
+        uri='gs://chromeos-arc-images/vts/VTS-9_r11_arm.zip',
+        timeout=14400)
+
+parallel_simple(run_TS, machines)
diff --git a/server/site_tests/cheets_VTS/control.9_r11.arm.VtsTreble b/server/site_tests/cheets_VTS/control.9_r11.arm.VtsTreble
new file mode 100644
index 0000000..f9f7211
--- /dev/null
+++ b/server/site_tests/cheets_VTS/control.9_r11.arm.VtsTreble
@@ -0,0 +1,33 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+# This file has been automatically generated. Do not edit!
+
+AUTHOR = 'ARC++ Team'
+NAME = 'cheets_VTS.9_r11.arm.VtsTreble'
+ATTRIBUTES = 'suite:arc-vts'
+DEPENDENCIES = 'arc'
+JOB_RETRIES = 1
+TEST_TYPE = 'server'
+TIME = 'MEDIUM'
+MAX_RESULT_SIZE_KB = 512000
+DOC = 'Run module VtsTrebleFrameworkVintfTest, VtsTreblePlatformVersionTest, VtsTrebleSysProp, VtsTrebleVendorVintfTest, VtsTrebleVintfTestOMr1 of the Vendor Test Suite (VTS) using arm ABI in the ARC++ container.'
+
+def run_TS(machine):
+    host_list = [hosts.create_host(machine)]
+    job.run_test(
+        'cheets_VTS',
+        hosts=host_list,
+        iterations=1,
+        tag='9_r11.arm.VtsTreble',
+        test_name='cheets_VTS.9_r11.arm.VtsTreble',
+        run_template=['run', 'commandAndExit', 'vts', '--include-filter', 'VtsTrebleFrameworkVintfTest', '--include-filter', 'VtsTreblePlatformVersionTest', '--include-filter', 'VtsTrebleSysProp', '--include-filter', 'VtsTrebleVendorVintfTest', '--include-filter', 'VtsTrebleVintfTestOMr1', '--logcat-on-failure'],
+        retry_template=['run', 'commandAndExit', 'retry', '--retry', '{session_id}'],
+        target_module='VtsTreble',
+        target_plan=None,
+        bundle='arm',
+        uri='gs://chromeos-arc-images/vts/VTS-9_r11_arm.zip',
+        timeout=10800)
+
+parallel_simple(run_TS, machines)
diff --git a/server/site_tests/cheets_VTS/control.9_r11.arm.VtsVndk b/server/site_tests/cheets_VTS/control.9_r11.arm.VtsVndk
new file mode 100644
index 0000000..55bbc9e
--- /dev/null
+++ b/server/site_tests/cheets_VTS/control.9_r11.arm.VtsVndk
@@ -0,0 +1,33 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+# This file has been automatically generated. Do not edit!
+
+AUTHOR = 'ARC++ Team'
+NAME = 'cheets_VTS.9_r11.arm.VtsVndk'
+ATTRIBUTES = 'suite:arc-vts'
+DEPENDENCIES = 'arc'
+JOB_RETRIES = 1
+TEST_TYPE = 'server'
+TIME = 'MEDIUM'
+MAX_RESULT_SIZE_KB = 512000
+DOC = 'Run module VtsVndkAbi, VtsVndkDependency, VtsVndkFiles, VtsVndkHidlBufferpoolV1_0Target, VtsVndkOpenLibraries of the Vendor Test Suite (VTS) using arm ABI in the ARC++ container.'
+
+def run_TS(machine):
+    host_list = [hosts.create_host(machine)]
+    job.run_test(
+        'cheets_VTS',
+        hosts=host_list,
+        iterations=1,
+        tag='9_r11.arm.VtsVndk',
+        test_name='cheets_VTS.9_r11.arm.VtsVndk',
+        run_template=['run', 'commandAndExit', 'vts', '--include-filter', 'VtsVndkAbi', '--include-filter', 'VtsVndkDependency', '--include-filter', 'VtsVndkFiles', '--include-filter', 'VtsVndkHidlBufferpoolV1_0Target', '--include-filter', 'VtsVndkOpenLibraries', '--logcat-on-failure'],
+        retry_template=['run', 'commandAndExit', 'retry', '--retry', '{session_id}'],
+        target_module='VtsVndk',
+        target_plan=None,
+        bundle='arm',
+        uri='gs://chromeos-arc-images/vts/VTS-9_r11_arm.zip',
+        timeout=10800)
+
+parallel_simple(run_TS, machines)
diff --git a/server/site_tests/cheets_VTS/control.9_r11.arm.tradefed-run-collect-tests-only-internal b/server/site_tests/cheets_VTS/control.9_r11.arm.tradefed-run-collect-tests-only-internal
new file mode 100644
index 0000000..2d2e482
--- /dev/null
+++ b/server/site_tests/cheets_VTS/control.9_r11.arm.tradefed-run-collect-tests-only-internal
@@ -0,0 +1,34 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+# This file has been automatically generated. Do not edit!
+
+AUTHOR = 'ARC++ Team'
+NAME = 'cheets_VTS.9_r11.arm.tradefed-run-collect-tests-only-internal'
+ATTRIBUTES = 'suite:arc-vts'
+DEPENDENCIES = 'arc'
+JOB_RETRIES = 0
+TEST_TYPE = 'server'
+TIME = 'LENGTHY'
+MAX_RESULT_SIZE_KB = 1024000
+DOC = 'Run all of the Vendor Test Suite (VTS) using arm ABI in the ARC++ container.'
+
+def run_TS(machine):
+    host_list = [hosts.create_host(machine)]
+    job.run_test(
+        'cheets_VTS',
+        hosts=host_list,
+        iterations=1,
+        max_retry=0,
+        tag='9_r11.arm.tradefed-run-collect-tests-only-internal',
+        test_name='cheets_VTS.9_r11.arm.tradefed-run-collect-tests-only-internal',
+        run_template=['run', 'commandAndExit', 'collect-tests-only', '--disable-reboot'],
+        retry_template=None,
+        target_module=None,
+        target_plan=None,
+        bundle='arm',
+        uri='gs://chromeos-arc-images/vts/VTS-9_r11_arm.zip',
+        timeout=7200)
+
+parallel_simple(run_TS, machines)
diff --git a/server/site_tests/cheets_VTS/control.9_r11.arm.vm-tests-tf b/server/site_tests/cheets_VTS/control.9_r11.arm.vm-tests-tf
new file mode 100644
index 0000000..4de6248
--- /dev/null
+++ b/server/site_tests/cheets_VTS/control.9_r11.arm.vm-tests-tf
@@ -0,0 +1,33 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+# This file has been automatically generated. Do not edit!
+
+AUTHOR = 'ARC++ Team'
+NAME = 'cheets_VTS.9_r11.arm.vm-tests-tf'
+ATTRIBUTES = 'suite:arc-vts'
+DEPENDENCIES = 'arc'
+JOB_RETRIES = 1
+TEST_TYPE = 'server'
+TIME = 'MEDIUM'
+MAX_RESULT_SIZE_KB = 512000
+DOC = 'Run module vm-tests-tf of the Vendor Test Suite (VTS) using arm ABI in the ARC++ container.'
+
+def run_TS(machine):
+    host_list = [hosts.create_host(machine)]
+    job.run_test(
+        'cheets_VTS',
+        hosts=host_list,
+        iterations=1,
+        tag='9_r11.arm.vm-tests-tf',
+        test_name='cheets_VTS.9_r11.arm.vm-tests-tf',
+        run_template=['run', 'commandAndExit', 'vts', '--module', 'vm-tests-tf', '--logcat-on-failure'],
+        retry_template=['run', 'commandAndExit', 'retry', '--retry', '{session_id}'],
+        target_module='vm-tests-tf',
+        target_plan=None,
+        bundle='arm',
+        uri='gs://chromeos-arc-images/vts/VTS-9_r11_arm.zip',
+        timeout=3600)
+
+parallel_simple(run_TS, machines)
diff --git a/server/site_tests/cheets_VTS/control.9_r11.x86.VtsAppWifiNativeTest b/server/site_tests/cheets_VTS/control.9_r11.x86.VtsAppWifiNativeTest
new file mode 100644
index 0000000..2f6607b
--- /dev/null
+++ b/server/site_tests/cheets_VTS/control.9_r11.x86.VtsAppWifiNativeTest
@@ -0,0 +1,33 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+# This file has been automatically generated. Do not edit!
+
+AUTHOR = 'ARC++ Team'
+NAME = 'cheets_VTS.9_r11.x86.VtsAppWifiNativeTest'
+ATTRIBUTES = 'suite:arc-vts'
+DEPENDENCIES = 'arc'
+JOB_RETRIES = 1
+TEST_TYPE = 'server'
+TIME = 'MEDIUM'
+MAX_RESULT_SIZE_KB = 512000
+DOC = 'Run module VtsAppWifiNativeTest of the Vendor Test Suite (VTS) using x86 ABI in the ARC++ container.'
+
+def run_TS(machine):
+    host_list = [hosts.create_host(machine)]
+    job.run_test(
+        'cheets_VTS',
+        hosts=host_list,
+        iterations=1,
+        tag='9_r11.x86.VtsAppWifiNativeTest',
+        test_name='cheets_VTS.9_r11.x86.VtsAppWifiNativeTest',
+        run_template=['run', 'commandAndExit', 'vts', '--module', 'VtsAppWifiNativeTest', '--logcat-on-failure'],
+        retry_template=['run', 'commandAndExit', 'retry', '--retry', '{session_id}'],
+        target_module='VtsAppWifiNativeTest',
+        target_plan=None,
+        bundle='x86',
+        uri='gs://chromeos-arc-images/vts/VTS-9_r11_x86.zip',
+        timeout=3600)
+
+parallel_simple(run_TS, machines)
diff --git a/server/site_tests/cheets_VTS/control.9_r11.x86.VtsCodelab b/server/site_tests/cheets_VTS/control.9_r11.x86.VtsCodelab
new file mode 100644
index 0000000..6f408c5
--- /dev/null
+++ b/server/site_tests/cheets_VTS/control.9_r11.x86.VtsCodelab
@@ -0,0 +1,33 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+# This file has been automatically generated. Do not edit!
+
+AUTHOR = 'ARC++ Team'
+NAME = 'cheets_VTS.9_r11.x86.VtsCodelab'
+ATTRIBUTES = 'suite:arc-vts'
+DEPENDENCIES = 'arc'
+JOB_RETRIES = 1
+TEST_TYPE = 'server'
+TIME = 'MEDIUM'
+MAX_RESULT_SIZE_KB = 512000
+DOC = 'Run module VtsCodelabHelloWorldMultiDeviceTest, VtsCodelabHelloWorldSl4aTest, VtsCodelabHelloWorldStagingTest, VtsCodelabHelloWorldTest, VtsCodelabHostDrivenMultiHalTest, VtsCodelabTargetBinary of the Vendor Test Suite (VTS) using x86 ABI in the ARC++ container.'
+
+def run_TS(machine):
+    host_list = [hosts.create_host(machine)]
+    job.run_test(
+        'cheets_VTS',
+        hosts=host_list,
+        iterations=1,
+        tag='9_r11.x86.VtsCodelab',
+        test_name='cheets_VTS.9_r11.x86.VtsCodelab',
+        run_template=['run', 'commandAndExit', 'vts', '--include-filter', 'VtsCodelabHelloWorldMultiDeviceTest', '--include-filter', 'VtsCodelabHelloWorldSl4aTest', '--include-filter', 'VtsCodelabHelloWorldStagingTest', '--include-filter', 'VtsCodelabHelloWorldTest', '--include-filter', 'VtsCodelabHostDrivenMultiHalTest', '--include-filter', 'VtsCodelabTargetBinary', '--logcat-on-failure'],
+        retry_template=['run', 'commandAndExit', 'retry', '--retry', '{session_id}'],
+        target_module='VtsCodelab',
+        target_plan=None,
+        bundle='x86',
+        uri='gs://chromeos-arc-images/vts/VTS-9_r11_x86.zip',
+        timeout=12600)
+
+parallel_simple(run_TS, machines)
diff --git a/server/site_tests/cheets_VTS/control.9_r11.x86.VtsDeviceHealth b/server/site_tests/cheets_VTS/control.9_r11.x86.VtsDeviceHealth
new file mode 100644
index 0000000..8a26064
--- /dev/null
+++ b/server/site_tests/cheets_VTS/control.9_r11.x86.VtsDeviceHealth
@@ -0,0 +1,33 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+# This file has been automatically generated. Do not edit!
+
+AUTHOR = 'ARC++ Team'
+NAME = 'cheets_VTS.9_r11.x86.VtsDeviceHealth'
+ATTRIBUTES = 'suite:arc-vts'
+DEPENDENCIES = 'arc'
+JOB_RETRIES = 1
+TEST_TYPE = 'server'
+TIME = 'MEDIUM'
+MAX_RESULT_SIZE_KB = 512000
+DOC = 'Run module VtsDeviceHealth of the Vendor Test Suite (VTS) using x86 ABI in the ARC++ container.'
+
+def run_TS(machine):
+    host_list = [hosts.create_host(machine)]
+    job.run_test(
+        'cheets_VTS',
+        hosts=host_list,
+        iterations=1,
+        tag='9_r11.x86.VtsDeviceHealth',
+        test_name='cheets_VTS.9_r11.x86.VtsDeviceHealth',
+        run_template=['run', 'commandAndExit', 'vts', '--module', 'VtsDeviceHealth', '--logcat-on-failure'],
+        retry_template=['run', 'commandAndExit', 'retry', '--retry', '{session_id}'],
+        target_module='VtsDeviceHealth',
+        target_plan=None,
+        bundle='x86',
+        uri='gs://chromeos-arc-images/vts/VTS-9_r11_x86.zip',
+        timeout=3600)
+
+parallel_simple(run_TS, machines)
diff --git a/server/site_tests/cheets_VTS/control.9_r11.x86.VtsFirmware b/server/site_tests/cheets_VTS/control.9_r11.x86.VtsFirmware
new file mode 100644
index 0000000..d00a775
--- /dev/null
+++ b/server/site_tests/cheets_VTS/control.9_r11.x86.VtsFirmware
@@ -0,0 +1,33 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+# This file has been automatically generated. Do not edit!
+
+AUTHOR = 'ARC++ Team'
+NAME = 'cheets_VTS.9_r11.x86.VtsFirmware'
+ATTRIBUTES = 'suite:arc-vts'
+DEPENDENCIES = 'arc'
+JOB_RETRIES = 1
+TEST_TYPE = 'server'
+TIME = 'MEDIUM'
+MAX_RESULT_SIZE_KB = 512000
+DOC = 'Run module VtsFirmwareBootHeaderVerification, VtsFirmwareDtboVerification of the Vendor Test Suite (VTS) using x86 ABI in the ARC++ container.'
+
+def run_TS(machine):
+    host_list = [hosts.create_host(machine)]
+    job.run_test(
+        'cheets_VTS',
+        hosts=host_list,
+        iterations=1,
+        tag='9_r11.x86.VtsFirmware',
+        test_name='cheets_VTS.9_r11.x86.VtsFirmware',
+        run_template=['run', 'commandAndExit', 'vts', '--include-filter', 'VtsFirmwareBootHeaderVerification', '--include-filter', 'VtsFirmwareDtboVerification', '--logcat-on-failure'],
+        retry_template=['run', 'commandAndExit', 'retry', '--retry', '{session_id}'],
+        target_module='VtsFirmware',
+        target_plan=None,
+        bundle='x86',
+        uri='gs://chromeos-arc-images/vts/VTS-9_r11_x86.zip',
+        timeout=5400)
+
+parallel_simple(run_TS, machines)
diff --git a/server/site_tests/cheets_VTS/control.9_r11.x86.VtsFmqUnitTests b/server/site_tests/cheets_VTS/control.9_r11.x86.VtsFmqUnitTests
new file mode 100644
index 0000000..c58d352
--- /dev/null
+++ b/server/site_tests/cheets_VTS/control.9_r11.x86.VtsFmqUnitTests
@@ -0,0 +1,33 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+# This file has been automatically generated. Do not edit!
+
+AUTHOR = 'ARC++ Team'
+NAME = 'cheets_VTS.9_r11.x86.VtsFmqUnitTests'
+ATTRIBUTES = 'suite:arc-vts'
+DEPENDENCIES = 'arc'
+JOB_RETRIES = 1
+TEST_TYPE = 'server'
+TIME = 'MEDIUM'
+MAX_RESULT_SIZE_KB = 512000
+DOC = 'Run module VtsFmqUnitTests of the Vendor Test Suite (VTS) using x86 ABI in the ARC++ container.'
+
+def run_TS(machine):
+    host_list = [hosts.create_host(machine)]
+    job.run_test(
+        'cheets_VTS',
+        hosts=host_list,
+        iterations=1,
+        tag='9_r11.x86.VtsFmqUnitTests',
+        test_name='cheets_VTS.9_r11.x86.VtsFmqUnitTests',
+        run_template=['run', 'commandAndExit', 'vts', '--module', 'VtsFmqUnitTests', '--logcat-on-failure'],
+        retry_template=['run', 'commandAndExit', 'retry', '--retry', '{session_id}'],
+        target_module='VtsFmqUnitTests',
+        target_plan=None,
+        bundle='x86',
+        uri='gs://chromeos-arc-images/vts/VTS-9_r11_x86.zip',
+        timeout=3600)
+
+parallel_simple(run_TS, machines)
diff --git a/server/site_tests/cheets_VTS/control.9_r11.x86.VtsHal b/server/site_tests/cheets_VTS/control.9_r11.x86.VtsHal
new file mode 100644
index 0000000..84a66f1
--- /dev/null
+++ b/server/site_tests/cheets_VTS/control.9_r11.x86.VtsHal
@@ -0,0 +1,33 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+# This file has been automatically generated. Do not edit!
+
+AUTHOR = 'ARC++ Team'
+NAME = 'cheets_VTS.9_r11.x86.VtsHal'
+ATTRIBUTES = 'suite:arc-vts'
+DEPENDENCIES = 'arc'
+JOB_RETRIES = 1
+TEST_TYPE = 'server'
+TIME = 'MEDIUM'
+MAX_RESULT_SIZE_KB = 512000
+DOC = 'Run module VtsHalAudioCommonV2_0IfaceFuzzer, VtsHalAudioCommonV4_0IfaceFuzzer, VtsHalAudioEffectV2_0IfaceFuzzer, VtsHalAudioEffectV2_0Target, VtsHalAudioEffectV2_0TargetProfiling, VtsHalAudioEffectV2_0TargetReplay, VtsHalAudioEffectV4_0IfaceFuzzer, VtsHalAudioEffectV4_0Target, VtsHalAudioEffectV4_0TargetProfiling, VtsHalAudioV2_0IfaceFuzzer, VtsHalAudioV2_0Target, VtsHalAudioV2_0TargetProfiling, VtsHalAudioV4_0IfaceFuzzer, VtsHalAudioV4_0Target, VtsHalAudioV4_0TargetProfiling, VtsHalAuthSecretV1_0Target, VtsHalAuthsecretV1_0IfaceFuzzer, VtsHalAutomotiveAudiocontrolV1_0IfaceFuzzer, VtsHalAutomotiveEvsV1_0IfaceFuzzer, VtsHalAutomotiveVehicleV2_0Host, VtsHalAutomotiveVehicleV2_0HostProfiling, VtsHalAutomotiveVehicleV2_0IfaceFuzzer, VtsHalBaseV1_0TargetTest, VtsHalBiometricsFingerprintV2_1IfaceFuzzer, VtsHalBiometricsFingerprintV2_1Target, VtsHalBiometricsFingerprintV2_1TargetProfiling, VtsHalBiometricsFingerprintV2_1TargetReplay, VtsHalBluetoothA2DpV1_0IfaceFuzzer, VtsHalBluetoothV1_0IfaceFuzzer, VtsHalBluetoothV1_0Target, VtsHalBluetoothV1_0TargetProfiling, VtsHalBluetoothV1_0TargetReplay, VtsHalBootV1_0IfaceFuzzer, VtsHalBootV1_0Target, VtsHalBootV1_0TargetProfiling, VtsHalBroadcastradioV1_0IfaceFuzzer, VtsHalBroadcastradioV1_0Target, VtsHalBroadcastradioV1_0TargetProfiling, VtsHalBroadcastradioV1_1Adapter, VtsHalBroadcastradioV1_1IfaceFuzzer, VtsHalBroadcastradioV1_1Target, VtsHalBroadcastradioV1_1TargetProfiling, VtsHalBroadcastradioV2_0IfaceFuzzer, VtsHalBroadcastradioV2_0Target, VtsHalBroadcastradioV2_0TargetProfiling, VtsHalCameraCommonV1_0IfaceFuzzer, VtsHalCameraDeviceV1_0IfaceFuzzer, VtsHalCameraDeviceV3_2IfaceFuzzer, VtsHalCameraDeviceV3_3Adapter, VtsHalCameraDeviceV3_3IfaceFuzzer, VtsHalCameraDeviceV3_4Adapter, VtsHalCameraDeviceV3_4IfaceFuzzer, VtsHalCameraMetadataV3_2IfaceFuzzer, VtsHalCameraMetadataV3_3Adapter, VtsHalCameraMetadataV3_3IfaceFuzzer, VtsHalCameraProviderV2_4IfaceFuzzer, VtsHalCameraProviderV2_4Target, VtsHalCameraProviderV2_4TargetProfiling, VtsHalCasNativeV1_0IfaceFuzzer, VtsHalCasV1_0IfaceFuzzer, VtsHalCasV1_0Target, VtsHalConfigstoreV1_0IfaceFuzzer, VtsHalConfigstoreV1_0Target, VtsHalConfigstoreV1_0TargetProfiling, VtsHalConfigstoreV1_0TargetReplay, VtsHalConfigstoreV1_1IfaceFuzzer, VtsHalConfirmationuiV1_0IfaceFuzzer, VtsHalContexthubV1_0Host, VtsHalContexthubV1_0IfaceFuzzer, VtsHalContexthubV1_0Target, VtsHalContexthubV1_0TargetProfiling, VtsHalContexthubV1_0TargetReplay, VtsHalCoverageMeasurement, VtsHalDrmV1_0IfaceFuzzer, VtsHalDrmV1_0Target, VtsHalDrmV1_0TargetProfiling, VtsHalDrmV1_1Adapter, VtsHalDrmV1_1IfaceFuzzer, VtsHalDrmV1_1Target, VtsHalDrmV1_1TargetProfiling, VtsHalDumpstateV1_0IfaceFuzzer, VtsHalDumpstateV1_0Target, VtsHalEvsV1_0Target, VtsHalEvsV1_0TargetProfiling, VtsHalGatekeeperV1_0IfaceFuzzer, VtsHalGatekeeperV1_0Target, VtsHalGatekeeperV1_0TargetProfiling, VtsHalGatekeeperV1_0TargetReplay, VtsHalGnssV1_0HostBinderize, VtsHalGnssV1_0IfaceFuzzer, VtsHalGnssV1_0Target, VtsHalGnssV1_0TargetProfiling, VtsHalGnssV1_1Adapter, VtsHalGnssV1_1IfaceFuzzer, VtsHalGnssV1_1Target, VtsHalGraphicsAllocatorV2_0IfaceFuzzer, VtsHalGraphicsBufferqueueV1_0IfaceFuzzer, VtsHalGraphicsCommonV1_0IfaceFuzzer, VtsHalGraphicsCommonV1_1Adapter, VtsHalGraphicsCommonV1_1IfaceFuzzer, VtsHalGraphicsComposerV2_1IfaceFuzzer, VtsHalGraphicsComposerV2_1Target, VtsHalGraphicsComposerV2_1TargetProfiling, VtsHalGraphicsComposerV2_2Adapter, VtsHalGraphicsComposerV2_2IfaceFuzzer, VtsHalGraphicsComposerV2_2Target, VtsHalGraphicsMapperV2_0IfaceFuzzer, VtsHalGraphicsMapperV2_0Target, VtsHalGraphicsMapperV2_0TargetProfiling, VtsHalGraphicsMapperV2_1Adapter, VtsHalGraphicsMapperV2_1IfaceFuzzer, VtsHalGraphicsMapperV2_1Target, VtsHalGraphicsMapperV2_1TargetProfiling, VtsHalHealthV1_0IfaceFuzzer, VtsHalHealthV1_0Target, VtsHalHealthV1_0TargetProfiling, VtsHalHealthV2_0IfaceFuzzer, VtsHalHealthV2_0Target, VtsHalIrV1_0IfaceFuzzer, VtsHalIrV1_0Target, VtsHalIrV1_0TargetProfiling, VtsHalKeymasterV3_0IfaceFuzzer, VtsHalKeymasterV3_0Target, VtsHalKeymasterV3_0TargetProfiling, VtsHalKeymasterV3_0TargetReplay, VtsHalKeymasterV4_0IfaceFuzzer, VtsHalKeymasterV4_0Target, VtsHalKeymasterV4_0TargetProfiling, VtsHalLightV2_0IfaceFuzzer, VtsHalLightV2_0Target, VtsHalLightV2_0TargetProfiling, VtsHalLightV2_0TargetReplay, VtsHalLightsTestCases, VtsHalMediaBufferpoolV1_0IfaceFuzzer, VtsHalMediaOmxStoreV1_0Host, VtsHalMediaOmxV1_0Host, VtsHalMediaOmxV1_0IfaceFuzzer, VtsHalMediaV1_0IfaceFuzzer, VtsHalMemtrackV1_0IfaceFuzzer, VtsHalMemtrackV1_0Target, VtsHalMemtrackV1_0TargetProfiling, VtsHalMemtrackV1_0TargetReplay, VtsHalNetNetdV1_0Target, VtsHalNetNetdV1_0TargetProfiling, VtsHalNetNetdV1_1Target, VtsHalNetNetdV1_1TargetProfiling, VtsHalNeuralnetworksV1_0IfaceFuzzer, VtsHalNeuralnetworksV1_0Target, VtsHalNeuralnetworksV1_0TargetProfiling, VtsHalNeuralnetworksV1_1Adapter, VtsHalNeuralnetworksV1_1IfaceFuzzer, VtsHalNeuralnetworksV1_1Target, VtsHalNeuralnetworksV1_1TargetProfiling, VtsHalNfcV1_0HostBinderize, VtsHalNfcV1_0HostPassthrough, VtsHalNfcV1_0HostProfiling, VtsHalNfcV1_0IfaceFuzzer, VtsHalNfcV1_0Target, VtsHalNfcV1_0TargetProfiling, VtsHalNfcV1_0TargetReplay, VtsHalNfcV1_1Adapter, VtsHalNfcV1_1IfaceFuzzer, VtsHalNfcV1_1Target, VtsHalNfcV1_1TargetProfiling, VtsHalOemLockV1_0Target, VtsHalOemLockV1_0TargetProfiling, VtsHalOemlockV1_0IfaceFuzzer, VtsHalPowerTestCases, VtsHalPowerV1_0IfaceFuzzer, VtsHalPowerV1_0Target, VtsHalPowerV1_0TargetProfiling, VtsHalPowerV1_0TargetReplay, VtsHalPowerV1_1Adapter, VtsHalPowerV1_1IfaceFuzzer, VtsHalPowerV1_1Target, VtsHalPowerV1_1TargetProfiling, VtsHalPowerV1_2Adapter, VtsHalPowerV1_2IfaceFuzzer, VtsHalPowerV1_2Target, VtsHalPowerV1_3Target, VtsHalRadioConfigV1_0IfaceFuzzer, VtsHalRadioDeprecatedV1_0IfaceFuzzer, VtsHalRadioV1_0Host, VtsHalRadioV1_0IfaceFuzzer, VtsHalRadioV1_0Target, VtsHalRadioV1_0TargetProfiling, VtsHalRadioV1_1Adapter, VtsHalRadioV1_1IfaceFuzzer, VtsHalRadioV1_1Target, VtsHalRadioV1_2Adapter, VtsHalRadioV1_2IfaceFuzzer, VtsHalRadioV1_2Target, VtsHalRenderscriptV1_0IfaceFuzzer, VtsHalRenderscriptV1_0Target, VtsHalRenderscriptV1_0TargetProfiling, VtsHalSapV1_0Target, VtsHalSapV1_0TargetProfiling, VtsHalSecureElementV1_0Target, VtsHalSecureElementV1_0TargetProfiling, VtsHalSecure_ElementV1_0IfaceFuzzer, VtsHalSensorsV1_0Host, VtsHalSensorsV1_0HostProfiling, VtsHalSensorsV1_0IfaceFuzzer, VtsHalSensorsV1_0Target, VtsHalSensorsV1_0TargetProfiling, VtsHalSoundtriggerV2_0IfaceFuzzer, VtsHalSoundtriggerV2_0Target, VtsHalSoundtriggerV2_0TargetProfiling, VtsHalSoundtriggerV2_1Adapter, VtsHalSoundtriggerV2_1IfaceFuzzer, VtsHalSoundtriggerV2_1Target, VtsHalSoundtriggerV2_1TargetProfiling, VtsHalTetherOffloadConfigV1_0Target, VtsHalTetherOffloadConfigV1_0TargetProfiling, VtsHalTetherOffloadControlV1_0Target, VtsHalTetherOffloadControlV1_0TargetProfiling, VtsHalTetheroffloadConfigV1_0IfaceFuzzer, VtsHalTetheroffloadControlV1_0IfaceFuzzer, VtsHalThermalV1_0IfaceFuzzer, VtsHalThermalV1_0Target, VtsHalThermalV1_0TargetProfiling, VtsHalThermalV1_0TargetReplay, VtsHalThermalV1_1Adapter, VtsHalThermalV1_1IfaceFuzzer, VtsHalThermalV1_1Target, VtsHalThermalV1_1TargetProfiling, VtsHalTvCecV1_0Host, VtsHalTvCecV1_0HostProfiling, VtsHalTvCecV1_0IfaceFuzzer, VtsHalTvInputV1_0Host, VtsHalTvInputV1_0HostProfiling, VtsHalTvInputV1_0IfaceFuzzer, VtsHalTvInputV1_0Target, VtsHalTvInputV1_0TargetProfiling, VtsHalUsbGadgetV1_0Host, VtsHalUsbGadgetV1_0IfaceFuzzer, VtsHalUsbV1_0IfaceFuzzer, VtsHalUsbV1_0Target, VtsHalUsbV1_0TargetProfiling, VtsHalUsbV1_0TargetReplay, VtsHalUsbV1_1Adapter, VtsHalUsbV1_1IfaceFuzzer, VtsHalUsbV1_1Target, VtsHalVibratorV1_0Host, VtsHalVibratorV1_0HostProfiling, VtsHalVibratorV1_0IfaceFuzzer, VtsHalVibratorV1_0Target, VtsHalVibratorV1_0TargetProfiling, VtsHalVibratorV1_0TargetReplay, VtsHalVibratorV1_1Adapter, VtsHalVibratorV1_1IfaceFuzzer, VtsHalVibratorV1_1Target, VtsHalVibratorV1_2Adapter, VtsHalVibratorV1_2IfaceFuzzer, VtsHalVibratorV1_2Target, VtsHalVrV1_0Host, VtsHalVrV1_0IfaceFuzzer, VtsHalVrV1_0Target, VtsHalVrV1_0TargetProfiling, VtsHalVrV1_0TargetReplay, VtsHalWeaverV1_0IfaceFuzzer, VtsHalWeaverV1_0Target, VtsHalWeaverV1_0TargetProfiling, VtsHalWifiHostapdV1_0IfaceFuzzer, VtsHalWifiNanV1_0Target, VtsHalWifiNanV1_0TargetProfiling, VtsHalWifiOffloadV1_0IfaceFuzzer, VtsHalWifiOffloadV1_0Target, VtsHalWifiSupplicantV1_0IfaceFuzzer, VtsHalWifiSupplicantV1_0Target, VtsHalWifiSupplicantV1_0TargetProfiling, VtsHalWifiSupplicantV1_1Adapter, VtsHalWifiSupplicantV1_1IfaceFuzzer, VtsHalWifiSupplicantV1_1Target, VtsHalWifiSupplicantV1_1TargetProfiling, VtsHalWifiV1_0Host, VtsHalWifiV1_0IfaceFuzzer, VtsHalWifiV1_0TargetProfiling, VtsHalWifiV1_1Adapter, VtsHalWifiV1_1IfaceFuzzer, VtsHalWifiV1_1Target, VtsHalWifiV1_1TargetProfiling, VtsHalWifiV1_2Adapter, VtsHalWifiV1_2IfaceFuzzer, VtsHalWifiV1_2Target, VtsHalWifiV1_2TargetProfiling of the Vendor Test Suite (VTS) using x86 ABI in the ARC++ container.'
+
+def run_TS(machine):
+    host_list = [hosts.create_host(machine)]
+    job.run_test(
+        'cheets_VTS',
+        hosts=host_list,
+        iterations=1,
+        tag='9_r11.x86.VtsHal',
+        test_name='cheets_VTS.9_r11.x86.VtsHal',
+        run_template=['run', 'commandAndExit', 'vts', '--include-filter', 'VtsHalAudioCommonV2_0IfaceFuzzer', '--include-filter', 'VtsHalAudioCommonV4_0IfaceFuzzer', '--include-filter', 'VtsHalAudioEffectV2_0IfaceFuzzer', '--include-filter', 'VtsHalAudioEffectV2_0Target', '--include-filter', 'VtsHalAudioEffectV2_0TargetProfiling', '--include-filter', 'VtsHalAudioEffectV2_0TargetReplay', '--include-filter', 'VtsHalAudioEffectV4_0IfaceFuzzer', '--include-filter', 'VtsHalAudioEffectV4_0Target', '--include-filter', 'VtsHalAudioEffectV4_0TargetProfiling', '--include-filter', 'VtsHalAudioV2_0IfaceFuzzer', '--include-filter', 'VtsHalAudioV2_0Target', '--include-filter', 'VtsHalAudioV2_0TargetProfiling', '--include-filter', 'VtsHalAudioV4_0IfaceFuzzer', '--include-filter', 'VtsHalAudioV4_0Target', '--include-filter', 'VtsHalAudioV4_0TargetProfiling', '--include-filter', 'VtsHalAuthSecretV1_0Target', '--include-filter', 'VtsHalAuthsecretV1_0IfaceFuzzer', '--include-filter', 'VtsHalAutomotiveAudiocontrolV1_0IfaceFuzzer', '--include-filter', 'VtsHalAutomotiveEvsV1_0IfaceFuzzer', '--include-filter', 'VtsHalAutomotiveVehicleV2_0Host', '--include-filter', 'VtsHalAutomotiveVehicleV2_0HostProfiling', '--include-filter', 'VtsHalAutomotiveVehicleV2_0IfaceFuzzer', '--include-filter', 'VtsHalBaseV1_0TargetTest', '--include-filter', 'VtsHalBiometricsFingerprintV2_1IfaceFuzzer', '--include-filter', 'VtsHalBiometricsFingerprintV2_1Target', '--include-filter', 'VtsHalBiometricsFingerprintV2_1TargetProfiling', '--include-filter', 'VtsHalBiometricsFingerprintV2_1TargetReplay', '--include-filter', 'VtsHalBluetoothA2DpV1_0IfaceFuzzer', '--include-filter', 'VtsHalBluetoothV1_0IfaceFuzzer', '--include-filter', 'VtsHalBluetoothV1_0Target', '--include-filter', 'VtsHalBluetoothV1_0TargetProfiling', '--include-filter', 'VtsHalBluetoothV1_0TargetReplay', '--include-filter', 'VtsHalBootV1_0IfaceFuzzer', '--include-filter', 'VtsHalBootV1_0Target', '--include-filter', 'VtsHalBootV1_0TargetProfiling', '--include-filter', 'VtsHalBroadcastradioV1_0IfaceFuzzer', '--include-filter', 'VtsHalBroadcastradioV1_0Target', '--include-filter', 'VtsHalBroadcastradioV1_0TargetProfiling', '--include-filter', 'VtsHalBroadcastradioV1_1Adapter', '--include-filter', 'VtsHalBroadcastradioV1_1IfaceFuzzer', '--include-filter', 'VtsHalBroadcastradioV1_1Target', '--include-filter', 'VtsHalBroadcastradioV1_1TargetProfiling', '--include-filter', 'VtsHalBroadcastradioV2_0IfaceFuzzer', '--include-filter', 'VtsHalBroadcastradioV2_0Target', '--include-filter', 'VtsHalBroadcastradioV2_0TargetProfiling', '--include-filter', 'VtsHalCameraCommonV1_0IfaceFuzzer', '--include-filter', 'VtsHalCameraDeviceV1_0IfaceFuzzer', '--include-filter', 'VtsHalCameraDeviceV3_2IfaceFuzzer', '--include-filter', 'VtsHalCameraDeviceV3_3Adapter', '--include-filter', 'VtsHalCameraDeviceV3_3IfaceFuzzer', '--include-filter', 'VtsHalCameraDeviceV3_4Adapter', '--include-filter', 'VtsHalCameraDeviceV3_4IfaceFuzzer', '--include-filter', 'VtsHalCameraMetadataV3_2IfaceFuzzer', '--include-filter', 'VtsHalCameraMetadataV3_3Adapter', '--include-filter', 'VtsHalCameraMetadataV3_3IfaceFuzzer', '--include-filter', 'VtsHalCameraProviderV2_4IfaceFuzzer', '--include-filter', 'VtsHalCameraProviderV2_4Target', '--include-filter', 'VtsHalCameraProviderV2_4TargetProfiling', '--include-filter', 'VtsHalCasNativeV1_0IfaceFuzzer', '--include-filter', 'VtsHalCasV1_0IfaceFuzzer', '--include-filter', 'VtsHalCasV1_0Target', '--include-filter', 'VtsHalConfigstoreV1_0IfaceFuzzer', '--include-filter', 'VtsHalConfigstoreV1_0Target', '--include-filter', 'VtsHalConfigstoreV1_0TargetProfiling', '--include-filter', 'VtsHalConfigstoreV1_0TargetReplay', '--include-filter', 'VtsHalConfigstoreV1_1IfaceFuzzer', '--include-filter', 'VtsHalConfirmationuiV1_0IfaceFuzzer', '--include-filter', 'VtsHalContexthubV1_0Host', '--include-filter', 'VtsHalContexthubV1_0IfaceFuzzer', '--include-filter', 'VtsHalContexthubV1_0Target', '--include-filter', 'VtsHalContexthubV1_0TargetProfiling', '--include-filter', 'VtsHalContexthubV1_0TargetReplay', '--include-filter', 'VtsHalCoverageMeasurement', '--include-filter', 'VtsHalDrmV1_0IfaceFuzzer', '--include-filter', 'VtsHalDrmV1_0Target', '--include-filter', 'VtsHalDrmV1_0TargetProfiling', '--include-filter', 'VtsHalDrmV1_1Adapter', '--include-filter', 'VtsHalDrmV1_1IfaceFuzzer', '--include-filter', 'VtsHalDrmV1_1Target', '--include-filter', 'VtsHalDrmV1_1TargetProfiling', '--include-filter', 'VtsHalDumpstateV1_0IfaceFuzzer', '--include-filter', 'VtsHalDumpstateV1_0Target', '--include-filter', 'VtsHalEvsV1_0Target', '--include-filter', 'VtsHalEvsV1_0TargetProfiling', '--include-filter', 'VtsHalGatekeeperV1_0IfaceFuzzer', '--include-filter', 'VtsHalGatekeeperV1_0Target', '--include-filter', 'VtsHalGatekeeperV1_0TargetProfiling', '--include-filter', 'VtsHalGatekeeperV1_0TargetReplay', '--include-filter', 'VtsHalGnssV1_0HostBinderize', '--include-filter', 'VtsHalGnssV1_0IfaceFuzzer', '--include-filter', 'VtsHalGnssV1_0Target', '--include-filter', 'VtsHalGnssV1_0TargetProfiling', '--include-filter', 'VtsHalGnssV1_1Adapter', '--include-filter', 'VtsHalGnssV1_1IfaceFuzzer', '--include-filter', 'VtsHalGnssV1_1Target', '--include-filter', 'VtsHalGraphicsAllocatorV2_0IfaceFuzzer', '--include-filter', 'VtsHalGraphicsBufferqueueV1_0IfaceFuzzer', '--include-filter', 'VtsHalGraphicsCommonV1_0IfaceFuzzer', '--include-filter', 'VtsHalGraphicsCommonV1_1Adapter', '--include-filter', 'VtsHalGraphicsCommonV1_1IfaceFuzzer', '--include-filter', 'VtsHalGraphicsComposerV2_1IfaceFuzzer', '--include-filter', 'VtsHalGraphicsComposerV2_1Target', '--include-filter', 'VtsHalGraphicsComposerV2_1TargetProfiling', '--include-filter', 'VtsHalGraphicsComposerV2_2Adapter', '--include-filter', 'VtsHalGraphicsComposerV2_2IfaceFuzzer', '--include-filter', 'VtsHalGraphicsComposerV2_2Target', '--include-filter', 'VtsHalGraphicsMapperV2_0IfaceFuzzer', '--include-filter', 'VtsHalGraphicsMapperV2_0Target', '--include-filter', 'VtsHalGraphicsMapperV2_0TargetProfiling', '--include-filter', 'VtsHalGraphicsMapperV2_1Adapter', '--include-filter', 'VtsHalGraphicsMapperV2_1IfaceFuzzer', '--include-filter', 'VtsHalGraphicsMapperV2_1Target', '--include-filter', 'VtsHalGraphicsMapperV2_1TargetProfiling', '--include-filter', 'VtsHalHealthV1_0IfaceFuzzer', '--include-filter', 'VtsHalHealthV1_0Target', '--include-filter', 'VtsHalHealthV1_0TargetProfiling', '--include-filter', 'VtsHalHealthV2_0IfaceFuzzer', '--include-filter', 'VtsHalHealthV2_0Target', '--include-filter', 'VtsHalIrV1_0IfaceFuzzer', '--include-filter', 'VtsHalIrV1_0Target', '--include-filter', 'VtsHalIrV1_0TargetProfiling', '--include-filter', 'VtsHalKeymasterV3_0IfaceFuzzer', '--include-filter', 'VtsHalKeymasterV3_0Target', '--include-filter', 'VtsHalKeymasterV3_0TargetProfiling', '--include-filter', 'VtsHalKeymasterV3_0TargetReplay', '--include-filter', 'VtsHalKeymasterV4_0IfaceFuzzer', '--include-filter', 'VtsHalKeymasterV4_0Target', '--include-filter', 'VtsHalKeymasterV4_0TargetProfiling', '--include-filter', 'VtsHalLightV2_0IfaceFuzzer', '--include-filter', 'VtsHalLightV2_0Target', '--include-filter', 'VtsHalLightV2_0TargetProfiling', '--include-filter', 'VtsHalLightV2_0TargetReplay', '--include-filter', 'VtsHalLightsTestCases', '--include-filter', 'VtsHalMediaBufferpoolV1_0IfaceFuzzer', '--include-filter', 'VtsHalMediaOmxStoreV1_0Host', '--include-filter', 'VtsHalMediaOmxV1_0Host', '--include-filter', 'VtsHalMediaOmxV1_0IfaceFuzzer', '--include-filter', 'VtsHalMediaV1_0IfaceFuzzer', '--include-filter', 'VtsHalMemtrackV1_0IfaceFuzzer', '--include-filter', 'VtsHalMemtrackV1_0Target', '--include-filter', 'VtsHalMemtrackV1_0TargetProfiling', '--include-filter', 'VtsHalMemtrackV1_0TargetReplay', '--include-filter', 'VtsHalNetNetdV1_0Target', '--include-filter', 'VtsHalNetNetdV1_0TargetProfiling', '--include-filter', 'VtsHalNetNetdV1_1Target', '--include-filter', 'VtsHalNetNetdV1_1TargetProfiling', '--include-filter', 'VtsHalNeuralnetworksV1_0IfaceFuzzer', '--include-filter', 'VtsHalNeuralnetworksV1_0Target', '--include-filter', 'VtsHalNeuralnetworksV1_0TargetProfiling', '--include-filter', 'VtsHalNeuralnetworksV1_1Adapter', '--include-filter', 'VtsHalNeuralnetworksV1_1IfaceFuzzer', '--include-filter', 'VtsHalNeuralnetworksV1_1Target', '--include-filter', 'VtsHalNeuralnetworksV1_1TargetProfiling', '--include-filter', 'VtsHalNfcV1_0HostBinderize', '--include-filter', 'VtsHalNfcV1_0HostPassthrough', '--include-filter', 'VtsHalNfcV1_0HostProfiling', '--include-filter', 'VtsHalNfcV1_0IfaceFuzzer', '--include-filter', 'VtsHalNfcV1_0Target', '--include-filter', 'VtsHalNfcV1_0TargetProfiling', '--include-filter', 'VtsHalNfcV1_0TargetReplay', '--include-filter', 'VtsHalNfcV1_1Adapter', '--include-filter', 'VtsHalNfcV1_1IfaceFuzzer', '--include-filter', 'VtsHalNfcV1_1Target', '--include-filter', 'VtsHalNfcV1_1TargetProfiling', '--include-filter', 'VtsHalOemLockV1_0Target', '--include-filter', 'VtsHalOemLockV1_0TargetProfiling', '--include-filter', 'VtsHalOemlockV1_0IfaceFuzzer', '--include-filter', 'VtsHalPowerTestCases', '--include-filter', 'VtsHalPowerV1_0IfaceFuzzer', '--include-filter', 'VtsHalPowerV1_0Target', '--include-filter', 'VtsHalPowerV1_0TargetProfiling', '--include-filter', 'VtsHalPowerV1_0TargetReplay', '--include-filter', 'VtsHalPowerV1_1Adapter', '--include-filter', 'VtsHalPowerV1_1IfaceFuzzer', '--include-filter', 'VtsHalPowerV1_1Target', '--include-filter', 'VtsHalPowerV1_1TargetProfiling', '--include-filter', 'VtsHalPowerV1_2Adapter', '--include-filter', 'VtsHalPowerV1_2IfaceFuzzer', '--include-filter', 'VtsHalPowerV1_2Target', '--include-filter', 'VtsHalPowerV1_3Target', '--include-filter', 'VtsHalRadioConfigV1_0IfaceFuzzer', '--include-filter', 'VtsHalRadioDeprecatedV1_0IfaceFuzzer', '--include-filter', 'VtsHalRadioV1_0Host', '--include-filter', 'VtsHalRadioV1_0IfaceFuzzer', '--include-filter', 'VtsHalRadioV1_0Target', '--include-filter', 'VtsHalRadioV1_0TargetProfiling', '--include-filter', 'VtsHalRadioV1_1Adapter', '--include-filter', 'VtsHalRadioV1_1IfaceFuzzer', '--include-filter', 'VtsHalRadioV1_1Target', '--include-filter', 'VtsHalRadioV1_2Adapter', '--include-filter', 'VtsHalRadioV1_2IfaceFuzzer', '--include-filter', 'VtsHalRadioV1_2Target', '--include-filter', 'VtsHalRenderscriptV1_0IfaceFuzzer', '--include-filter', 'VtsHalRenderscriptV1_0Target', '--include-filter', 'VtsHalRenderscriptV1_0TargetProfiling', '--include-filter', 'VtsHalSapV1_0Target', '--include-filter', 'VtsHalSapV1_0TargetProfiling', '--include-filter', 'VtsHalSecureElementV1_0Target', '--include-filter', 'VtsHalSecureElementV1_0TargetProfiling', '--include-filter', 'VtsHalSecure_ElementV1_0IfaceFuzzer', '--include-filter', 'VtsHalSensorsV1_0Host', '--include-filter', 'VtsHalSensorsV1_0HostProfiling', '--include-filter', 'VtsHalSensorsV1_0IfaceFuzzer', '--include-filter', 'VtsHalSensorsV1_0Target', '--include-filter', 'VtsHalSensorsV1_0TargetProfiling', '--include-filter', 'VtsHalSoundtriggerV2_0IfaceFuzzer', '--include-filter', 'VtsHalSoundtriggerV2_0Target', '--include-filter', 'VtsHalSoundtriggerV2_0TargetProfiling', '--include-filter', 'VtsHalSoundtriggerV2_1Adapter', '--include-filter', 'VtsHalSoundtriggerV2_1IfaceFuzzer', '--include-filter', 'VtsHalSoundtriggerV2_1Target', '--include-filter', 'VtsHalSoundtriggerV2_1TargetProfiling', '--include-filter', 'VtsHalTetherOffloadConfigV1_0Target', '--include-filter', 'VtsHalTetherOffloadConfigV1_0TargetProfiling', '--include-filter', 'VtsHalTetherOffloadControlV1_0Target', '--include-filter', 'VtsHalTetherOffloadControlV1_0TargetProfiling', '--include-filter', 'VtsHalTetheroffloadConfigV1_0IfaceFuzzer', '--include-filter', 'VtsHalTetheroffloadControlV1_0IfaceFuzzer', '--include-filter', 'VtsHalThermalV1_0IfaceFuzzer', '--include-filter', 'VtsHalThermalV1_0Target', '--include-filter', 'VtsHalThermalV1_0TargetProfiling', '--include-filter', 'VtsHalThermalV1_0TargetReplay', '--include-filter', 'VtsHalThermalV1_1Adapter', '--include-filter', 'VtsHalThermalV1_1IfaceFuzzer', '--include-filter', 'VtsHalThermalV1_1Target', '--include-filter', 'VtsHalThermalV1_1TargetProfiling', '--include-filter', 'VtsHalTvCecV1_0Host', '--include-filter', 'VtsHalTvCecV1_0HostProfiling', '--include-filter', 'VtsHalTvCecV1_0IfaceFuzzer', '--include-filter', 'VtsHalTvInputV1_0Host', '--include-filter', 'VtsHalTvInputV1_0HostProfiling', '--include-filter', 'VtsHalTvInputV1_0IfaceFuzzer', '--include-filter', 'VtsHalTvInputV1_0Target', '--include-filter', 'VtsHalTvInputV1_0TargetProfiling', '--include-filter', 'VtsHalUsbGadgetV1_0Host', '--include-filter', 'VtsHalUsbGadgetV1_0IfaceFuzzer', '--include-filter', 'VtsHalUsbV1_0IfaceFuzzer', '--include-filter', 'VtsHalUsbV1_0Target', '--include-filter', 'VtsHalUsbV1_0TargetProfiling', '--include-filter', 'VtsHalUsbV1_0TargetReplay', '--include-filter', 'VtsHalUsbV1_1Adapter', '--include-filter', 'VtsHalUsbV1_1IfaceFuzzer', '--include-filter', 'VtsHalUsbV1_1Target', '--include-filter', 'VtsHalVibratorV1_0Host', '--include-filter', 'VtsHalVibratorV1_0HostProfiling', '--include-filter', 'VtsHalVibratorV1_0IfaceFuzzer', '--include-filter', 'VtsHalVibratorV1_0Target', '--include-filter', 'VtsHalVibratorV1_0TargetProfiling', '--include-filter', 'VtsHalVibratorV1_0TargetReplay', '--include-filter', 'VtsHalVibratorV1_1Adapter', '--include-filter', 'VtsHalVibratorV1_1IfaceFuzzer', '--include-filter', 'VtsHalVibratorV1_1Target', '--include-filter', 'VtsHalVibratorV1_2Adapter', '--include-filter', 'VtsHalVibratorV1_2IfaceFuzzer', '--include-filter', 'VtsHalVibratorV1_2Target', '--include-filter', 'VtsHalVrV1_0Host', '--include-filter', 'VtsHalVrV1_0IfaceFuzzer', '--include-filter', 'VtsHalVrV1_0Target', '--include-filter', 'VtsHalVrV1_0TargetProfiling', '--include-filter', 'VtsHalVrV1_0TargetReplay', '--include-filter', 'VtsHalWeaverV1_0IfaceFuzzer', '--include-filter', 'VtsHalWeaverV1_0Target', '--include-filter', 'VtsHalWeaverV1_0TargetProfiling', '--include-filter', 'VtsHalWifiHostapdV1_0IfaceFuzzer', '--include-filter', 'VtsHalWifiNanV1_0Target', '--include-filter', 'VtsHalWifiNanV1_0TargetProfiling', '--include-filter', 'VtsHalWifiOffloadV1_0IfaceFuzzer', '--include-filter', 'VtsHalWifiOffloadV1_0Target', '--include-filter', 'VtsHalWifiSupplicantV1_0IfaceFuzzer', '--include-filter', 'VtsHalWifiSupplicantV1_0Target', '--include-filter', 'VtsHalWifiSupplicantV1_0TargetProfiling', '--include-filter', 'VtsHalWifiSupplicantV1_1Adapter', '--include-filter', 'VtsHalWifiSupplicantV1_1IfaceFuzzer', '--include-filter', 'VtsHalWifiSupplicantV1_1Target', '--include-filter', 'VtsHalWifiSupplicantV1_1TargetProfiling', '--include-filter', 'VtsHalWifiV1_0Host', '--include-filter', 'VtsHalWifiV1_0IfaceFuzzer', '--include-filter', 'VtsHalWifiV1_0TargetProfiling', '--include-filter', 'VtsHalWifiV1_1Adapter', '--include-filter', 'VtsHalWifiV1_1IfaceFuzzer', '--include-filter', 'VtsHalWifiV1_1Target', '--include-filter', 'VtsHalWifiV1_1TargetProfiling', '--include-filter', 'VtsHalWifiV1_2Adapter', '--include-filter', 'VtsHalWifiV1_2IfaceFuzzer', '--include-filter', 'VtsHalWifiV1_2Target', '--include-filter', 'VtsHalWifiV1_2TargetProfiling', '--logcat-on-failure'],
+        retry_template=['run', 'commandAndExit', 'retry', '--retry', '{session_id}'],
+        target_module='VtsHal',
+        target_plan=None,
+        bundle='x86',
+        uri='gs://chromeos-arc-images/vts/VTS-9_r11_x86.zip',
+        timeout=516600)
+
+parallel_simple(run_TS, machines)
diff --git a/server/site_tests/cheets_VTS/control.9_r11.x86.VtsHidlUnitTests b/server/site_tests/cheets_VTS/control.9_r11.x86.VtsHidlUnitTests
new file mode 100644
index 0000000..ef0b9f0
--- /dev/null
+++ b/server/site_tests/cheets_VTS/control.9_r11.x86.VtsHidlUnitTests
@@ -0,0 +1,33 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+# This file has been automatically generated. Do not edit!
+
+AUTHOR = 'ARC++ Team'
+NAME = 'cheets_VTS.9_r11.x86.VtsHidlUnitTests'
+ATTRIBUTES = 'suite:arc-vts'
+DEPENDENCIES = 'arc'
+JOB_RETRIES = 1
+TEST_TYPE = 'server'
+TIME = 'MEDIUM'
+MAX_RESULT_SIZE_KB = 512000
+DOC = 'Run module VtsHidlUnitTests of the Vendor Test Suite (VTS) using x86 ABI in the ARC++ container.'
+
+def run_TS(machine):
+    host_list = [hosts.create_host(machine)]
+    job.run_test(
+        'cheets_VTS',
+        hosts=host_list,
+        iterations=1,
+        tag='9_r11.x86.VtsHidlUnitTests',
+        test_name='cheets_VTS.9_r11.x86.VtsHidlUnitTests',
+        run_template=['run', 'commandAndExit', 'vts', '--module', 'VtsHidlUnitTests', '--logcat-on-failure'],
+        retry_template=['run', 'commandAndExit', 'retry', '--retry', '{session_id}'],
+        target_module='VtsHidlUnitTests',
+        target_plan=None,
+        bundle='x86',
+        uri='gs://chromeos-arc-images/vts/VTS-9_r11_x86.zip',
+        timeout=3600)
+
+parallel_simple(run_TS, machines)
diff --git a/server/site_tests/cheets_VTS/control.9_r11.x86.VtsKernel b/server/site_tests/cheets_VTS/control.9_r11.x86.VtsKernel
new file mode 100644
index 0000000..a300e1c
--- /dev/null
+++ b/server/site_tests/cheets_VTS/control.9_r11.x86.VtsKernel
@@ -0,0 +1,33 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+# This file has been automatically generated. Do not edit!
+
+AUTHOR = 'ARC++ Team'
+NAME = 'cheets_VTS.9_r11.x86.VtsKernel'
+ATTRIBUTES = 'suite:arc-vts'
+DEPENDENCIES = 'arc'
+JOB_RETRIES = 1
+TEST_TYPE = 'server'
+TIME = 'MEDIUM'
+MAX_RESULT_SIZE_KB = 512000
+DOC = 'Run module VtsKernelApiSysfsTest, VtsKernelBinderTest, VtsKernelConfig, VtsKernelDeviceTreeEarlyMount, VtsKernelFuzzTest, VtsKernelHwBinder, VtsKernelLibcutilsTest, VtsKernelLinuxKselftest, VtsKernelLinuxKselftestPresubmit, VtsKernelLinuxKselftestStaging, VtsKernelLtp, VtsKernelLtpStaging, VtsKernelNetBpfTest, VtsKernelNetTest, VtsKernelNetdTest, VtsKernelProcFileApi, VtsKernelQtaguidTest, VtsKernelRootDir, VtsKernelSelinuxFileApi, VtsKernelSyscallExistence, VtsKernelSystemAsRoot, VtsKernelTunTest, VtsKernelVersion of the Vendor Test Suite (VTS) using x86 ABI in the ARC++ container.'
+
+def run_TS(machine):
+    host_list = [hosts.create_host(machine)]
+    job.run_test(
+        'cheets_VTS',
+        hosts=host_list,
+        iterations=1,
+        tag='9_r11.x86.VtsKernel',
+        test_name='cheets_VTS.9_r11.x86.VtsKernel',
+        run_template=['run', 'commandAndExit', 'vts', '--include-filter', 'VtsKernelApiSysfsTest', '--include-filter', 'VtsKernelBinderTest', '--include-filter', 'VtsKernelConfig', '--include-filter', 'VtsKernelDeviceTreeEarlyMount', '--include-filter', 'VtsKernelFuzzTest', '--include-filter', 'VtsKernelHwBinder', '--include-filter', 'VtsKernelLibcutilsTest', '--include-filter', 'VtsKernelLinuxKselftest', '--include-filter', 'VtsKernelLinuxKselftestPresubmit', '--include-filter', 'VtsKernelLinuxKselftestStaging', '--include-filter', 'VtsKernelLtp', '--include-filter', 'VtsKernelLtpStaging', '--include-filter', 'VtsKernelNetBpfTest', '--include-filter', 'VtsKernelNetTest', '--include-filter', 'VtsKernelNetdTest', '--include-filter', 'VtsKernelProcFileApi', '--include-filter', 'VtsKernelQtaguidTest', '--include-filter', 'VtsKernelRootDir', '--include-filter', 'VtsKernelSelinuxFileApi', '--include-filter', 'VtsKernelSyscallExistence', '--include-filter', 'VtsKernelSystemAsRoot', '--include-filter', 'VtsKernelTunTest', '--include-filter', 'VtsKernelVersion', '--logcat-on-failure'],
+        retry_template=['run', 'commandAndExit', 'retry', '--retry', '{session_id}'],
+        target_module='VtsKernel',
+        target_plan=None,
+        bundle='x86',
+        uri='gs://chromeos-arc-images/vts/VTS-9_r11_x86.zip',
+        timeout=43200)
+
+parallel_simple(run_TS, machines)
diff --git a/server/site_tests/cheets_VTS/control.9_r11.x86.VtsNbu b/server/site_tests/cheets_VTS/control.9_r11.x86.VtsNbu
new file mode 100644
index 0000000..6981bed
--- /dev/null
+++ b/server/site_tests/cheets_VTS/control.9_r11.x86.VtsNbu
@@ -0,0 +1,33 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+# This file has been automatically generated. Do not edit!
+
+AUTHOR = 'ARC++ Team'
+NAME = 'cheets_VTS.9_r11.x86.VtsNbu'
+ATTRIBUTES = 'suite:arc-vts'
+DEPENDENCIES = 'arc'
+JOB_RETRIES = 1
+TEST_TYPE = 'server'
+TIME = 'MEDIUM'
+MAX_RESULT_SIZE_KB = 512000
+DOC = 'Run module VtsNbu of the Vendor Test Suite (VTS) using x86 ABI in the ARC++ container.'
+
+def run_TS(machine):
+    host_list = [hosts.create_host(machine)]
+    job.run_test(
+        'cheets_VTS',
+        hosts=host_list,
+        iterations=1,
+        tag='9_r11.x86.VtsNbu',
+        test_name='cheets_VTS.9_r11.x86.VtsNbu',
+        run_template=['run', 'commandAndExit', 'vts', '--module', 'VtsNbu', '--logcat-on-failure'],
+        retry_template=['run', 'commandAndExit', 'retry', '--retry', '{session_id}'],
+        target_module='VtsNbu',
+        target_plan=None,
+        bundle='x86',
+        uri='gs://chromeos-arc-images/vts/VTS-9_r11_x86.zip',
+        timeout=3600)
+
+parallel_simple(run_TS, machines)
diff --git a/server/site_tests/cheets_VTS/control.9_r11.x86.VtsSelfTest b/server/site_tests/cheets_VTS/control.9_r11.x86.VtsSelfTest
new file mode 100644
index 0000000..9b997b6
--- /dev/null
+++ b/server/site_tests/cheets_VTS/control.9_r11.x86.VtsSelfTest
@@ -0,0 +1,33 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+# This file has been automatically generated. Do not edit!
+
+AUTHOR = 'ARC++ Team'
+NAME = 'cheets_VTS.9_r11.x86.VtsSelfTest'
+ATTRIBUTES = 'suite:arc-vts'
+DEPENDENCIES = 'arc'
+JOB_RETRIES = 1
+TEST_TYPE = 'server'
+TIME = 'MEDIUM'
+MAX_RESULT_SIZE_KB = 512000
+DOC = 'Run module VtsSelfTestBaseTest, VtsSelfTestFlakyHidlTest, VtsSelfTestFlakyTest, VtsSelfTestPythonVirtualenvPreparerTestPart1, VtsSelfTestPythonVirtualenvPreparerTestPart2, VtsSelfTestShellPerformance, VtsSelfTestZeroTestCaseBinaryTest of the Vendor Test Suite (VTS) using x86 ABI in the ARC++ container.'
+
+def run_TS(machine):
+    host_list = [hosts.create_host(machine)]
+    job.run_test(
+        'cheets_VTS',
+        hosts=host_list,
+        iterations=1,
+        tag='9_r11.x86.VtsSelfTest',
+        test_name='cheets_VTS.9_r11.x86.VtsSelfTest',
+        run_template=['run', 'commandAndExit', 'vts', '--include-filter', 'VtsSelfTestBaseTest', '--include-filter', 'VtsSelfTestFlakyHidlTest', '--include-filter', 'VtsSelfTestFlakyTest', '--include-filter', 'VtsSelfTestPythonVirtualenvPreparerTestPart1', '--include-filter', 'VtsSelfTestPythonVirtualenvPreparerTestPart2', '--include-filter', 'VtsSelfTestShellPerformance', '--include-filter', 'VtsSelfTestZeroTestCaseBinaryTest', '--logcat-on-failure'],
+        retry_template=['run', 'commandAndExit', 'retry', '--retry', '{session_id}'],
+        target_module='VtsSelfTest',
+        target_plan=None,
+        bundle='x86',
+        uri='gs://chromeos-arc-images/vts/VTS-9_r11_x86.zip',
+        timeout=14400)
+
+parallel_simple(run_TS, machines)
diff --git a/server/site_tests/cheets_VTS/control.9_r11.x86.VtsTreble b/server/site_tests/cheets_VTS/control.9_r11.x86.VtsTreble
new file mode 100644
index 0000000..6474677
--- /dev/null
+++ b/server/site_tests/cheets_VTS/control.9_r11.x86.VtsTreble
@@ -0,0 +1,33 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+# This file has been automatically generated. Do not edit!
+
+AUTHOR = 'ARC++ Team'
+NAME = 'cheets_VTS.9_r11.x86.VtsTreble'
+ATTRIBUTES = 'suite:arc-vts'
+DEPENDENCIES = 'arc'
+JOB_RETRIES = 1
+TEST_TYPE = 'server'
+TIME = 'MEDIUM'
+MAX_RESULT_SIZE_KB = 512000
+DOC = 'Run module VtsTrebleFrameworkVintfTest, VtsTreblePlatformVersionTest, VtsTrebleSysProp, VtsTrebleVendorVintfTest, VtsTrebleVintfTestOMr1 of the Vendor Test Suite (VTS) using x86 ABI in the ARC++ container.'
+
+def run_TS(machine):
+    host_list = [hosts.create_host(machine)]
+    job.run_test(
+        'cheets_VTS',
+        hosts=host_list,
+        iterations=1,
+        tag='9_r11.x86.VtsTreble',
+        test_name='cheets_VTS.9_r11.x86.VtsTreble',
+        run_template=['run', 'commandAndExit', 'vts', '--include-filter', 'VtsTrebleFrameworkVintfTest', '--include-filter', 'VtsTreblePlatformVersionTest', '--include-filter', 'VtsTrebleSysProp', '--include-filter', 'VtsTrebleVendorVintfTest', '--include-filter', 'VtsTrebleVintfTestOMr1', '--logcat-on-failure'],
+        retry_template=['run', 'commandAndExit', 'retry', '--retry', '{session_id}'],
+        target_module='VtsTreble',
+        target_plan=None,
+        bundle='x86',
+        uri='gs://chromeos-arc-images/vts/VTS-9_r11_x86.zip',
+        timeout=10800)
+
+parallel_simple(run_TS, machines)
diff --git a/server/site_tests/cheets_VTS/control.9_r11.x86.VtsVndk b/server/site_tests/cheets_VTS/control.9_r11.x86.VtsVndk
new file mode 100644
index 0000000..2b9422d
--- /dev/null
+++ b/server/site_tests/cheets_VTS/control.9_r11.x86.VtsVndk
@@ -0,0 +1,33 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+# This file has been automatically generated. Do not edit!
+
+AUTHOR = 'ARC++ Team'
+NAME = 'cheets_VTS.9_r11.x86.VtsVndk'
+ATTRIBUTES = 'suite:arc-vts'
+DEPENDENCIES = 'arc'
+JOB_RETRIES = 1
+TEST_TYPE = 'server'
+TIME = 'MEDIUM'
+MAX_RESULT_SIZE_KB = 512000
+DOC = 'Run module VtsVndkAbi, VtsVndkDependency, VtsVndkFiles, VtsVndkHidlBufferpoolV1_0Target, VtsVndkOpenLibraries of the Vendor Test Suite (VTS) using x86 ABI in the ARC++ container.'
+
+def run_TS(machine):
+    host_list = [hosts.create_host(machine)]
+    job.run_test(
+        'cheets_VTS',
+        hosts=host_list,
+        iterations=1,
+        tag='9_r11.x86.VtsVndk',
+        test_name='cheets_VTS.9_r11.x86.VtsVndk',
+        run_template=['run', 'commandAndExit', 'vts', '--include-filter', 'VtsVndkAbi', '--include-filter', 'VtsVndkDependency', '--include-filter', 'VtsVndkFiles', '--include-filter', 'VtsVndkHidlBufferpoolV1_0Target', '--include-filter', 'VtsVndkOpenLibraries', '--logcat-on-failure'],
+        retry_template=['run', 'commandAndExit', 'retry', '--retry', '{session_id}'],
+        target_module='VtsVndk',
+        target_plan=None,
+        bundle='x86',
+        uri='gs://chromeos-arc-images/vts/VTS-9_r11_x86.zip',
+        timeout=10800)
+
+parallel_simple(run_TS, machines)
diff --git a/server/site_tests/cheets_VTS/control.9_r11.x86.tradefed-run-collect-tests-only-internal b/server/site_tests/cheets_VTS/control.9_r11.x86.tradefed-run-collect-tests-only-internal
new file mode 100644
index 0000000..c2995e6
--- /dev/null
+++ b/server/site_tests/cheets_VTS/control.9_r11.x86.tradefed-run-collect-tests-only-internal
@@ -0,0 +1,34 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+# This file has been automatically generated. Do not edit!
+
+AUTHOR = 'ARC++ Team'
+NAME = 'cheets_VTS.9_r11.x86.tradefed-run-collect-tests-only-internal'
+ATTRIBUTES = 'suite:arc-vts'
+DEPENDENCIES = 'arc'
+JOB_RETRIES = 0
+TEST_TYPE = 'server'
+TIME = 'LENGTHY'
+MAX_RESULT_SIZE_KB = 1024000
+DOC = 'Run all of the Vendor Test Suite (VTS) using x86 ABI in the ARC++ container.'
+
+def run_TS(machine):
+    host_list = [hosts.create_host(machine)]
+    job.run_test(
+        'cheets_VTS',
+        hosts=host_list,
+        iterations=1,
+        max_retry=0,
+        tag='9_r11.x86.tradefed-run-collect-tests-only-internal',
+        test_name='cheets_VTS.9_r11.x86.tradefed-run-collect-tests-only-internal',
+        run_template=['run', 'commandAndExit', 'collect-tests-only', '--disable-reboot'],
+        retry_template=None,
+        target_module=None,
+        target_plan=None,
+        bundle='x86',
+        uri='gs://chromeos-arc-images/vts/VTS-9_r11_x86.zip',
+        timeout=7200)
+
+parallel_simple(run_TS, machines)
diff --git a/server/site_tests/cheets_VTS/control.9_r11.x86.vm-tests-tf b/server/site_tests/cheets_VTS/control.9_r11.x86.vm-tests-tf
new file mode 100644
index 0000000..6a04143
--- /dev/null
+++ b/server/site_tests/cheets_VTS/control.9_r11.x86.vm-tests-tf
@@ -0,0 +1,33 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+# This file has been automatically generated. Do not edit!
+
+AUTHOR = 'ARC++ Team'
+NAME = 'cheets_VTS.9_r11.x86.vm-tests-tf'
+ATTRIBUTES = 'suite:arc-vts'
+DEPENDENCIES = 'arc'
+JOB_RETRIES = 1
+TEST_TYPE = 'server'
+TIME = 'MEDIUM'
+MAX_RESULT_SIZE_KB = 512000
+DOC = 'Run module vm-tests-tf of the Vendor Test Suite (VTS) using x86 ABI in the ARC++ container.'
+
+def run_TS(machine):
+    host_list = [hosts.create_host(machine)]
+    job.run_test(
+        'cheets_VTS',
+        hosts=host_list,
+        iterations=1,
+        tag='9_r11.x86.vm-tests-tf',
+        test_name='cheets_VTS.9_r11.x86.vm-tests-tf',
+        run_template=['run', 'commandAndExit', 'vts', '--module', 'vm-tests-tf', '--logcat-on-failure'],
+        retry_template=['run', 'commandAndExit', 'retry', '--retry', '{session_id}'],
+        target_module='vm-tests-tf',
+        target_plan=None,
+        bundle='x86',
+        uri='gs://chromeos-arc-images/vts/VTS-9_r11_x86.zip',
+        timeout=3600)
+
+parallel_simple(run_TS, machines)
diff --git a/server/site_tests/cheets_VTS/generate_controlfiles.py b/server/site_tests/cheets_VTS/generate_controlfiles.py
new file mode 100755
index 0000000..e180f42
--- /dev/null
+++ b/server/site_tests/cheets_VTS/generate_controlfiles.py
@@ -0,0 +1,15 @@
+#!/usr/bin/env python2
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+# This is a trampoline script to invoke the actual generator script.
+
+import os
+import sys
+
+target_script_name = 'generate_controlfiles_VTS.py'
+target_script_path = os.path.abspath(os.path.join(os.path.dirname(__file__),
+    '..', '..', 'cros', 'tradefed', target_script_name))
+
+os.execv(target_script_path, sys.argv)
diff --git a/site_utils/attribute_whitelist.txt b/site_utils/attribute_whitelist.txt
index 1e73574..0b025ba 100644
--- a/site_utils/attribute_whitelist.txt
+++ b/site_utils/attribute_whitelist.txt
@@ -41,6 +41,7 @@
 suite:arc-gts-tot
 suite:arc-gts-test
 suite:arc-unit-test
+suite:arc-vts
 suite:audio
 suite:audio_advanced
 suite:audio_basic
