1# Copyright 2019 The Chromium OS Authors. All rights reserved. 2# Use of this source code is governed by a BSD-style license that can be 3# found in the LICENSE file. 4 5from autotest_lib.server import utils 6 7AUTHOR = "ChromeOS Team" 8NAME = "firmware_Fingerprint.RWNoUpdateRO" 9PURPOSE = """ 10Verify HW write protect prevents RO fingerprint firmware modification. 11""" 12CRITERIA = """ 13Fails if the RO firmware can be written while HW write protect is enabled. 14""" 15ATTRIBUTES = "suite:fingerprint" 16TIME = "SHORT" 17TEST_CATEGORY = "Functional" 18TEST_CLASS = "firmware" 19TEST_TYPE = "server" 20DEPENDENCIES = "servo_state:WORKING, fingerprint" 21JOB_RETRIES = 0 22PY_VERSION = 3 23 24# This test uses futility and dev keys from autotest/files/server/cros/faft. 25REQUIRE_SSP = True 26 27DOC = """ 28Enables hardware write protect, attempts to flash the RO fingerprint firmware, 29and verifies that the flashing fails. 30""" 31 32args_dict = utils.args_to_dict(args) 33servo_args = hosts.CrosHost.get_servo_arguments(args_dict) 34 35test_images = [ 'TEST_IMAGE_DEV' ] 36 37def run(machine): 38 host = hosts.create_host(machine, servo_args=servo_args) 39 job.run_test("firmware_Fingerprint", host=host, 40 test_exe="rw_no_update_ro.sh", test_exe_args=test_images) 41 42parallel_simple(run, machines) 43