You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
40 lines
1.3 KiB
40 lines
1.3 KiB
7 months ago
|
# Copyright 2017 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.
|
||
|
|
||
|
from autotest_lib.server import utils
|
||
|
|
||
|
AUTHOR = "mruthven"
|
||
|
NAME = "firmware_Cr50DeviceState"
|
||
|
PURPOSE = "Verify Cr50 tracks the EC and AP state correctly"
|
||
|
ATTRIBUTES = "suite:faft_cr50_pvt, suite:faft_cr50_prepvt"
|
||
|
TIME = "SHORT"
|
||
|
TEST_TYPE = "server"
|
||
|
DEPENDENCIES = "servo_state:WORKING"
|
||
|
|
||
|
DOC = """
|
||
|
Verify Cr50 tracks the EC and AP state correctly.
|
||
|
|
||
|
Put the device through S0, S0ix, S3, and G3. Cr50 responds to these state
|
||
|
changes by enabling/disabling uart and changing its suspend type. Verify that
|
||
|
none of these cause any interrupt storms on Cr50. Make sure that there aren't
|
||
|
any interrupt storms and that Cr50 enters regular or deep sleep reasonable
|
||
|
amount of times.
|
||
|
"""
|
||
|
|
||
|
if 'args_dict' not in locals():
|
||
|
args_dict = {}
|
||
|
|
||
|
args_dict.update(utils.args_to_dict(args))
|
||
|
servo_args = hosts.CrosHost.get_servo_arguments(args_dict)
|
||
|
|
||
|
def run(machine):
|
||
|
host = hosts.create_host(machine, servo_args=servo_args)
|
||
|
|
||
|
iterations = int(args_dict.get("iterations", 1))
|
||
|
|
||
|
job.run_test("firmware_Cr50DeviceState", host=host, cmdline_args=args,
|
||
|
full_args=args_dict, iterations=iterations)
|
||
|
|
||
|
parallel_simple(run, machines)
|