blob: 93f53df71f6db4ade076c416b59a442682fecfef [file] [log] [blame]
Wai-Hong Tam0b9af492017-12-08 13:25:52 -08001# Copyright 2017 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 = "Chrome OS Team"
8NAME = "firmware_ECUpdateId"
9PURPOSE = "Servo based EC test for updating EC ID for verifying EC EFS"
10CRITERIA = "This test will fail if EC EFS misbehaves"
Brent Peterson06710672020-10-27 14:54:05 +000011ATTRIBUTES = "suite:faft_ec, suite:faft_ec_fw_qual, suite:faft_ec_tot"
Wai-Hong Tam0b9af492017-12-08 13:25:52 -080012TIME = "SHORT"
13TEST_CATEGORY = "Functional"
14TEST_CLASS = "firmware"
15TEST_TYPE = "server"
Patrick Georgice528842021-01-28 22:13:16 +010016JOB_RETRIES = 0
Brent Peterson61eccb52020-09-10 09:37:42 -070017DEPENDENCIES = "ec:cros, servo_state:WORKING"
Kshitij Shah1243ee52021-09-28 07:59:18 +000018PY_VERSION = 3
Wai-Hong Tam0b9af492017-12-08 13:25:52 -080019
20DOC = """
21This test modifies the EC ID in AP firmware, reboots EC, and checks the next
22boot that software sync and EFS works as intended or not. It also corrupts
23one RW slot and checks if it is recovered.
24"""
25
26args_dict = utils.args_to_dict(args)
27servo_args = hosts.CrosHost.get_servo_arguments(args_dict)
28
29def run_ecupdateid(machine):
30 host = hosts.create_host(machine, servo_args=servo_args)
31 job.run_test("firmware_ECUpdateId", host=host, cmdline_args=args,
32 disable_sysinfo=True, dev_mode=False, tag="normal")
33
34parallel_simple(run_ecupdateid, machines)