36 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			36 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
# Copyright (c) 2013 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 = "Chrome OS Team"
 | 
						|
NAME = "firmware_ECHash"
 | 
						|
PURPOSE = "Servo based EC hash recompute test"
 | 
						|
CRITERIA = "This test will fail if EC failed to recompute its hash."
 | 
						|
ATTRIBUTES = "suite:faft_ec, suite:faft_ec_fw_qual, suite:faft_ec3po, suite:faft_ec_tot"
 | 
						|
TIME = "SHORT"
 | 
						|
TEST_CATEGORY = "Functional"
 | 
						|
TEST_CLASS = "firmware"
 | 
						|
TEST_TYPE = "server"
 | 
						|
DEPENDENCIES = "ec:cros, servo_state:WORKING"
 | 
						|
JOB_RETRIES = 4
 | 
						|
 | 
						|
DOC = """
 | 
						|
This test ensures that the AP will ask the EC to recompute the hash if
 | 
						|
the current hash isn't the right size/offset. Use 'ectool echash' command
 | 
						|
to request the hash of some other part of EC EEPROM, then warm-reboot
 | 
						|
the AP and use 'ectool echash' to see what hash the EC has after booting.
 | 
						|
AP-RW should have requested the EC recompute the hash of EC-RW.
 | 
						|
"""
 | 
						|
 | 
						|
args_dict = utils.args_to_dict(args)
 | 
						|
servo_args = hosts.CrosHost.get_servo_arguments(args_dict)
 | 
						|
 | 
						|
def run_echash(machine):
 | 
						|
    host = hosts.create_host(machine, servo_args=servo_args)
 | 
						|
    job.run_test("firmware_ECHash", host=host, cmdline_args=args,
 | 
						|
                 disable_sysinfo=True)
 | 
						|
 | 
						|
parallel_simple(run_echash, machines)
 |