34 lines
1.3 KiB
Python
34 lines
1.3 KiB
Python
# Copyright 2016 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.
|
|
|
|
import common
|
|
from autotest_lib.server import test
|
|
|
|
class infra_FirmwareAutoupdate(test.test):
|
|
"""
|
|
Update RW firmware in the target DUT.
|
|
|
|
In production, consumer devices periodically update their read/write
|
|
firmware during auto-update cycles. This happens when the firmware
|
|
bundled with a newly update image is different from the firmware
|
|
currently installed on the device.
|
|
|
|
In the test lab, this step is suppressed, to prevent devices from
|
|
inadvertently updating to a new firmware version as a consequence of
|
|
installing a new Chrome OS build for testing. In particular,
|
|
because the firmware is updated whenever the bundled firmware is
|
|
_different_, and not merely _more recent_, suppressing the update
|
|
prevents unexpectedly downgrading the firmware.
|
|
|
|
Nonetheless, we sometimes want more recent firmware on a DUT than
|
|
the image that was delivered from the factory. This test allows
|
|
updating the firmware to the installed firmware bundle, using the
|
|
same procedure as is used during autoupdate.
|
|
"""
|
|
version = 1
|
|
|
|
def run_once(self, host):
|
|
host.run('chromeos-firmwareupdate --mode=autoupdate')
|
|
host.reboot()
|