43 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			43 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
# Copyright (c) 2012 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_UpdateKernelVersion"
 | 
						|
PURPOSE = "Servo based kernel update test which checks the kernel version."
 | 
						|
CRITERIA = """
 | 
						|
This test will fail if one of the following conditions is met:
 | 
						|
1. In Normal Mode.
 | 
						|
2. After update, device restart with KERNEL A.
 | 
						|
3. Kernel version does not increase after update.
 | 
						|
4. After recovery, device can't successfully restart.
 | 
						|
5. Kernel version does not recover to original version after recovery.
 | 
						|
"""
 | 
						|
ATTRIBUTES = "suite:faft_bios, suite:faft_bios_ro_qual, suite:faft_bios_rw_qual, suite:faft_dev, suite:faft_lv5, suite:faft_bios_ec3po, suite:faft_bios_tot, suite:faft_smoke"
 | 
						|
DEPENDENCIES = "servo_state:WORKING"
 | 
						|
TIME = "SHORT"
 | 
						|
TEST_CATEGORY = "Functional"
 | 
						|
TEST_CLASS = "firmware"
 | 
						|
TEST_TYPE = "server"
 | 
						|
JOB_RETRIES = 4
 | 
						|
 | 
						|
DOC = """
 | 
						|
This test should run in developer mode. On runtime, this test modifies the
 | 
						|
kernel version of kernel b and modifies cgpt to reboot with kernel b. Check
 | 
						|
kernel version after reboot, and then recover kernel b version to original
 | 
						|
version. Here also tries to reboot with kernel b after recovery. If sccuess,
 | 
						|
reboot with kernel a.
 | 
						|
"""
 | 
						|
 | 
						|
args_dict = utils.args_to_dict(args)
 | 
						|
servo_args = hosts.CrosHost.get_servo_arguments(args_dict)
 | 
						|
 | 
						|
def run_updatekernelversion(machine):
 | 
						|
    host = hosts.create_host(machine, servo_args=servo_args)
 | 
						|
    job.run_test("firmware_UpdateKernelVersion", host=host, cmdline_args=args,
 | 
						|
                 disable_sysinfo=True, dev_mode=True, tag="dev")
 | 
						|
 | 
						|
parallel_simple(run_updatekernelversion, machines)
 |