blob: 12121fe148c96ad502ba10881ae3655e302010f3 [file] [log] [blame]
# Copyright 2016 The ChromiumOS Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
from autotest_lib.server import utils
AUTHOR = "ChromeOS Team"
NAME = "firmware_TPMNotCorruptedDevMode"
METADATA = {
"contacts": ["chromeos-faft@google.com", "jbettis@chromium.org"],
"bug_component": "b:792402", # ChromeOS > Platform > Enablement > Firmware > FAFT
"criteria": "Ensure kernel and fw version in TPM isn't corrupted in dev mode.",
"requirements": ["sys-fw-0021-v01", "sys-fw-0024-v01", "sys-fw-0025-v01"],
}
ATTRIBUTES = "suite:faft_bios, suite:faft_bios_ro_qual, suite:faft_bios_rw_qual, suite:faft_lv2"
DEPENDENCIES = "servo_state:WORKING, servo_usb_state:NORMAL"
TIME = "SHORT"
TEST_TYPE = "server"
JOB_RETRIES = 0
DOC = """
This test requires a USB disk plugged-in, which contains a ChromeOS test
image (built by "build_image test"). On runtime, this test first switches
DUT to developer mode. It then checks the kernel and firmware version stored in
the TPM. It then boots into normal mode and checks the kernel and firmware
version in the TPM to ensure they weren't corrupted.
"""
args_dict = utils.args_to_dict(args)
servo_args = hosts.CrosHost.get_servo_arguments(args_dict)
def run_tpm_not_corrupted_dev_mode(machine):
host = hosts.create_host(machine, servo_args=servo_args)
job.run_test("firmware_TPMNotCorruptedDevMode", host=host, cmdline_args=args,
disable_sysinfo=True, dev_mode=True)
parallel_simple(run_tpm_not_corrupted_dev_mode, machines)