History log of /external/autotest/server/site_tests/firmware_Cr50Update/firmware_Cr50Update.py
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
3a074d4f5bc5b4318d79120f82588d49494291fb 13-Feb-2018 Mary Ruthven <mruthven@chromium.org> firmware_Cr50Update: specify path in InstallImage

There are two paths that may be used by cr50-update. Get the path being
used by the device and reuse that path in InstallImage to make sure that
the device picks up the update.

BUG=none
BRANCH=none
TEST=run firmware_Cr50Update with prepvt and mp flags.

Change-Id: Ibf55c9eb8fb73bf734d17bdddfe9faa3cc07f8d5
Signed-off-by: Mary Ruthven <mruthven@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/916720
Reviewed-by: Wai-Hong Tam <waihong@google.com>
/external/autotest/server/site_tests/firmware_Cr50Update/firmware_Cr50Update.py
fa9975fdfa1e07591a5d00e20aad8c1d4bf937d6 14-Nov-2017 Mary Ruthven <mruthven@chromium.org> firmware_Cr50Update: use cr50_test to remove rootfs verification

BUG=none
BRANCH=none
TEST=run firwmare_Cr50Update

Change-Id: I544a58940065f6cf77671314b79d67f255bcf79a
Signed-off-by: Mary Ruthven <mruthven@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/769430
Reviewed-by: Kevin Shelton <kmshelton@chromium.org>
/external/autotest/server/site_tests/firmware_Cr50Update/firmware_Cr50Update.py
a06fff8958a5a654001e138f6b797d2cb22d53a5 26-Sep-2017 Mary Ruthven <mruthven@chromium.org> firmware_Cr50Update: set board id during rollback

When cr50 rollsback, the test erases the infomap. We need to set the
chip board id during rollback, so the board id isn't erased. This change
makes the test set the chip board id info during rollback.

BUG=none
BRANCH=none
TEST=set the chip board id to ZZAF:7f00 and run firmware_Cr50Update
--args="release_ver=0.0.24/ZZAF:ffffffff:7f00"

Change-Id: I5b6ebba416e40410f33c454d1e40397e8023d9b1
Signed-off-by: Mary Ruthven <mruthven@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/683246
Reviewed-by: Kevin Shelton <kmshelton@chromium.org>
/external/autotest/server/site_tests/firmware_Cr50Update/firmware_Cr50Update.py
aae92c2b3795a585b71b0b8d5911c8a7b7aedde5 20-Sep-2017 Mary Ruthven <mruthven@chromium.org> firmware_Cr50Update: add image bid support

Add support for downloading release images that are board id locked.

BUG=none
BRANCH=none
TEST=firmware_Cr50Update --args="release_ver=0.0.23/ZZAF:ffffffff:7f00"

Change-Id: Ie953d569f8cd9ed6e8df994da0315ca0c04f04ae
Signed-off-by: Mary Ruthven <mruthven@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/674123
Reviewed-by: Wai-Hong Tam <waihong@google.com>
/external/autotest/server/site_tests/firmware_Cr50Update/firmware_Cr50Update.py
00f8b4a9c7d0fffe67e2ed8c6c5230f90a9ec179 16-Aug-2017 Kevin Shelton <kmshelton@chromium.org> firmware_Cr50Update: specify valid path for copy

Specifies a path for an image copy that should exist on the servo host.

BUG=b:64449350
TEST=passed against an electro with arguments of "release_ver=0.0.22
old_release_ver=0.0.21"

Change-Id: Id47c786ada63030e15d073b5587141cdb0f519eb
Reviewed-on: https://chromium-review.googlesource.com/617461
Commit-Ready: Kevin Shelton <kmshelton@chromium.org>
Tested-by: Kevin Shelton <kmshelton@chromium.org>
Reviewed-by: Mary Ruthven <mruthven@chromium.org>
/external/autotest/server/site_tests/firmware_Cr50Update/firmware_Cr50Update.py
be720684ef0cee7626550cff3b7cbf473c9b7fec 11-Aug-2017 Mary Ruthven <mruthven@chromium.org> cr50_test: check board id and version after downloading image

We can download the debug or release images with the given version and
board id. This change adds a check to verify that the downloaded image
actually has the right board id and version.

BUG=none
BRANCH=none
TEST=run firmware_Cr50Update and firmware_Cr50BID

Change-Id: I8bbd60a518270aa57022ae4ce29e565e38308635
Signed-off-by: Mary Ruthven <mruthven@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/611972
/external/autotest/server/site_tests/firmware_Cr50Update/firmware_Cr50Update.py
4d3a77ad119fb8f4449d3e619a5cfe9e40222dac 11-Aug-2017 Mary Ruthven <mruthven@chromium.org> cr50_test: wait 60s before updates

Cr50 won't accept updates for 60 seconds after it rebooted. Wait until
cr50 'gettime' is greater than 60 before trying to send any updates.

BUG=none
BRANCH=none
TEST=run firmware_Cr50Update with version 0.0.22

Change-Id: I3b081c6947504efae81b647c557f58e92a1bef5f
Signed-off-by: Mary Ruthven <mruthven@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/611969
Reviewed-by: Aseda Aboagye <aaboagye@chromium.org>
/external/autotest/server/site_tests/firmware_Cr50Update/firmware_Cr50Update.py
2180f92f67ca6a19456677ec0dbeec34baef5c28 08-Aug-2017 Mary Ruthven <mruthven@chromium.org> firmware_Cr50Update: use cr50_test to restore the state

There may be a lot more things to restore than just the cr50 version.
Use cr50_test to restore all of the cr50 state during cleanup.

BUG=none
BRANCH=none
TEST=run firmware_Cr50Update

Change-Id: I727f1fbfa2e4e515089ca600313aeaec3cf50083
Signed-off-by: Mary Ruthven <mruthven@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/607237
Reviewed-by: Aseda Aboagye <aaboagye@chromium.org>
/external/autotest/server/site_tests/firmware_Cr50Update/firmware_Cr50Update.py
c6193d70a7997348b864841099b0e291c53d2eff 08-Aug-2017 Mary Ruthven <mruthven@chromium.org> firmware_Cr50Update: wait for cr50-update to finish

cr50-update now uses -s to update cr50. This has significantly increased
the time it takes cr50-update to finish running after the reboot. This
changes firmware_Cr50Update to wait until cr50-update has finished and
waits for cr50 to reboot before running any commands.

BUG=b:64449350
BRANCH=none
TEST=run firmware_Cr50Update with recent ChromeOS image.

Change-Id: I15281c50299d186b1be1421ceaf5debfdcae9d01
Signed-off-by: Mary Ruthven <mruthven@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/605010
Reviewed-by: Aseda Aboagye <aaboagye@chromium.org>
/external/autotest/server/site_tests/firmware_Cr50Update/firmware_Cr50Update.py
f8adf94a8ebf79cba3505823749ba5a00b8ea69f 07-Aug-2017 Mary Ruthven <mruthven@chromium.org> cr50_utils: run UsbUpdate commands with -s

Only use /dev/tpm0/ to run usb_update commands. We are removing the cr50
to AP usb connection.

BUG=none
BRANCH=none
TEST=none

Change-Id: I328f3dda15bd8607fd9eb6807e8762036f50faa6
Signed-off-by: Mary Ruthven <mruthven@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/605008
Reviewed-by: Aseda Aboagye <aaboagye@chromium.org>
/external/autotest/server/site_tests/firmware_Cr50Update/firmware_Cr50Update.py
324427078c812f4bc7f5899070a81fdcae51d7cf 08-Aug-2017 Mary Ruthven <mruthven@chromium.org> firmware_Cr50Update: fix lint errors

BUG=none
BRANCH=none
TEST=none

Change-Id: I1b2961f63dfaeabaf2f416577c225e17fb3bcd80
Signed-off-by: Mary Ruthven <mruthven@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/605007
Reviewed-by: Aseda Aboagye <aaboagye@chromium.org>
/external/autotest/server/site_tests/firmware_Cr50Update/firmware_Cr50Update.py
7853147fa30a220ac5c633fa689f36544044dd20 29-Jun-2017 Mary Ruthven <mruthven@chromium.org> firmware_Cr50Update: use Cr50Test

Use Cr50Test to get the cr50 dev and release images and to restore the
original image.

BUG=none
BRANCH=none
TEST=firmware_Cr50Update

Change-Id: I64e304a41a75aa581d041d9a1c82e1ca9e764e9d
Signed-off-by: Mary Ruthven <mruthven@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/558651
Reviewed-by: Aseda Aboagye <aaboagye@chromium.org>
/external/autotest/server/site_tests/firmware_Cr50Update/firmware_Cr50Update.py
5f0442d3daab45adf7d0dafd14075f8b3ac1ef41 07-Jul-2017 Mary Ruthven <mruthven@chromium.org> cr50_utils: change UsbUpdate to UsbUpdater

the cr50 utility is usb_updater. This changes the cr50_utils utility
from UsbUpdate to UsbUpdater to match the name of the cr50 updater.

BUG=none
BRANCH=none
TEST=none

Change-Id: Ia39b4087162aa0890c5ce8991adc1d89be5bb562
Signed-off-by: Mary Ruthven <mruthven@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/563510
Reviewed-by: Aseda Aboagye <aaboagye@chromium.org>
/external/autotest/server/site_tests/firmware_Cr50Update/firmware_Cr50Update.py
8cca3069f984e5dd9ac9752e78ad128662e37b53 20-Jun-2017 Mary Ruthven <mruthven@chromium.org> firmware_Cr50Update: check mainfw_type after update

I was running firmware_Cr50Update overnight and when I came back in the
morning I saw that the ssh command timed out. I couldn't tell if it is
because the device booted into recovery or the command timed out for
some other reason. I am changing the test to check that the main fw type
is normal after the update. Now if the device boots into recovery, we
should be able to tell.

BUG=none
BRANCH=none
TEST=run firmware_Cr50Update and see if I can detect the device booting
into recovery mode.

Change-Id: I4f8eecda73128a01af3aff6b58fe808b52993ca5
Signed-off-by: Mary Ruthven <mruthven@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/541597
Reviewed-by: Aseda Aboagye <aaboagye@chromium.org>
Reviewed-by: Vadim Bendebury <vbendeb@chromium.org>
/external/autotest/server/site_tests/firmware_Cr50Update/firmware_Cr50Update.py
c92efed1d1c1b84d10c157e634de06580f630602 17-May-2017 Mary Ruthven <mruthven@chromium.org> firmware_Cr50Update: move the update code to cr50_utils

More tests will need to run usb_update to new images. This change moves
the usb_update to cr50_utils.

BUG=none
BRANCH=none
TEST=test_that $DUT_IP -b reef --args="release_ver=0.0.19
old_release_ver=0.0.18" firmware_Cr50Update

Change-Id: I6353ad7273e61348369002fbf37318950337831e
Signed-off-by: Mary Ruthven <mruthven@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/522881
/external/autotest/server/site_tests/firmware_Cr50Update/firmware_Cr50Update.py
b9581ec08dc78fe8ebab6496ff2d2e331be4779a 02-Jun-2017 Mary Ruthven <mruthven@chromium.org> firmware_Cr50Update: cleanup original image handling

BUG=none
BRANCH=none
TEST=firmware_Cr50Update

Change-Id: Ie080b13686a6116c03680d07a4c9548b5b995266
Signed-off-by: Mary Ruthven <mruthven@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/522880
Reviewed-by: Aseda Aboagye <aaboagye@chromium.org>
/external/autotest/server/site_tests/firmware_Cr50Update/firmware_Cr50Update.py
18d90810e4483229a95a2f9c9a21c91eb4cefd07 02-Jun-2017 Mary Ruthven <mruthven@chromium.org> firmware_Cr50Update: fix ccd compatibility issues

ccd needs to be enabled before getting cr50_devid this change enables
it.

BUG=none
BRANCH=none
TEST=run using ccd

Change-Id: I88f738a918d8a4ce6d219c25a78160c2fb3f697f
Signed-off-by: Mary Ruthven <mruthven@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/522879
Reviewed-by: Aseda Aboagye <aaboagye@chromium.org>
/external/autotest/server/site_tests/firmware_Cr50Update/firmware_Cr50Update.py
67b48a43580ee8f8d4af2bff2efa7e696cec7933 02-Jun-2017 Mary Ruthven <mruthven@chromium.org> firmware_Cr50Update: remove unused arg

BUG=none
BRANCH=none
TEST=none

Change-Id: Ie61a7373d81f11e163d352e5373bd51b6a3b14cb
Signed-off-by: Mary Ruthven <mruthven@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/522877
Reviewed-by: Aseda Aboagye <aaboagye@chromium.org>
/external/autotest/server/site_tests/firmware_Cr50Update/firmware_Cr50Update.py
8a6e367fac6589ad4f46a0bb8bbc520807981a1a 02-Jun-2017 Mary Ruthven <mruthven@chromium.org> firmware_Cr50Update: change restore original image for loop

We want to raise TestError if restore_original_image failed every time.
We break out of the loop on the first restore_original_image success.
This adds an else clause for the for loop to raise an error if we never
broke out of the loop.

BUG=none
BRANCH=none
TEST=none

Change-Id: I9a6c0e9bf85e41b1aac526fbaf59b3e1bc3610c1
Signed-off-by: Mary Ruthven <mruthven@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/522876
Reviewed-by: Aseda Aboagye <aaboagye@chromium.org>
/external/autotest/server/site_tests/firmware_Cr50Update/firmware_Cr50Update.py
2357ea2261d98840058022b2309d0dd9e70e3aa7 02-Jun-2017 Mary Ruthven <mruthven@chromium.org> firmware_Cr50Update: fix running release_path

The if statement checking that release_ver or release_path exist was
wrong. This change fixes it.

BUG=none
BRANCH=none
TEST=firmware_Cr50Update --args="release_path=$LOCAL_PATH"

Change-Id: I6ff84f400d051836abfcf6420bfe8c349de9e162
Signed-off-by: Mary Ruthven <mruthven@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/522875
Reviewed-by: Aseda Aboagye <aaboagye@chromium.org>
/external/autotest/server/site_tests/firmware_Cr50Update/firmware_Cr50Update.py
7116de7a539f229f360eeae3d5614243a3d6126e 02-May-2017 Mary Ruthven <mruthven@chromium.org> firmware_Cr50Update: get images from gs://

This change adds support for fetching the release and dbg images from
google storage. If a local path is not specified for the image then it
will be retrieved from google storage.

The prod images are in gs://chromeos-localmirror/distfiles/ and the dev
signed debug images are stored in.
gs://chromeos-localmirror-private/distfiles/chromeos-cr50-debug. The
version string is needed to select the correct prod image. For the debug
image, the test will get the devids from cr50 and then find the right
debug image.

BUG=none
BRANCH=none
TEST=test_that $DUT_IP -b reef firmware_Cr50Update.erase_nvmem
--args="release_ver=0.0.18"

Change-Id: Ifc4b02aa647c4cca70fb4b3b7c84469a404df51f
Signed-off-by: Mary Ruthven <mruthven@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/494286
Reviewed-by: Wai-Hong Tam <waihong@google.com>
/external/autotest/server/site_tests/firmware_Cr50Update/firmware_Cr50Update.py
9f6102c97a5a4020971fa67d7255396343156970 02-May-2017 Mary Ruthven <mruthven@chromium.org> firmware_Cr50Update: simplify update_order

Change update_order to only have the image key. The version can easily
be looked up.

BUG=none
BRANCH=none
TEST=none

Change-Id: Ic9544a4eae4c42d2314438a4d1bd0fbc6bb4bbbe
Signed-off-by: Mary Ruthven <mruthven@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/493613
Reviewed-by: Wai-Hong Tam <waihong@google.com>
/external/autotest/server/site_tests/firmware_Cr50Update/firmware_Cr50Update.py
e7774d8373234754985a2b08dd5e1853f2ccd5f3 02-May-2017 Mary Ruthven <mruthven@chromium.org> firmware_Cr50Update: make erase_nvmem a test attribute

Make erase_nvmem a test attribute instead of passing it as an arg.

BUG=none
TEST=none
BRANCH=none

Change-Id: I7c6f7a7a566809df40469c816483123b60128c61
Signed-off-by: Mary Ruthven <mruthven@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/493834
Reviewed-by: Wai-Hong Tam <waihong@google.com>
/external/autotest/server/site_tests/firmware_Cr50Update/firmware_Cr50Update.py
f57418337b652ab8580f7a4d87876fc5e3e2902b 08-Apr-2017 Mary Ruthven <mruthven@chromium.org> firmware_Cr50Update: fix handling of usb_update result

If cr50 reboots after the update then result will be None. If this is
the case set exit_status as ok.

BUG=none
BRANCH=none
TEST=manual
build a cr50 dev image TOT verify firmware_Cr50Update passes
using usb_updater from TOT

build a dev image from a366047d verify firmware_Cr50Update
passes using usb_updater from a366047d

Change-Id: I2518096f091fe6fa76da5b91ab88e2f7aca59164
Signed-off-by: Mary Ruthven <mruthven@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/472129
Reviewed-by: Aseda Aboagye <aaboagye@chromium.org>
/external/autotest/server/site_tests/firmware_Cr50Update/firmware_Cr50Update.py
d6f12e5b2d6deae32a678c50e503ece2753e5e1d 07-Apr-2017 Mary Ruthven <mruthven@chromium.org> firmware_Cr50Update: change rollback header checks

The header enable/disable changes when the headers can be read. There
may be a valid header in the inactive RW slot, but 'ver' may show it as
an error. This changes firmware_Cr50Update to stop checking that the
version in the inactive RW slot is equal to the target version. It will
attempt the rollback and if the inactive slot is actually corrupt then
Cr50 will choose the dev image again, so it is fine to attempt a
rollback when the other image is corrupt.

To validate the rollback, it will check that we did change partitions
and cr50 is running the right version.

BUG=none
BRANCH=none
TEST=firmware_Cr50Update.erase_nvmem

Change-Id: I220877255e43ebdc293f86a7473d0015435cb4d9
Signed-off-by: Mary Ruthven <mruthven@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/471931
Reviewed-by: Aseda Aboagye <aaboagye@chromium.org>
/external/autotest/server/site_tests/firmware_Cr50Update/firmware_Cr50Update.py
194818b7cac744e961ea5b0379a121ff0c67c3de 06-Apr-2017 Mary Ruthven <mruthven@chromium.org> firmware_Cr50Update: handle ignored posted resets

For cr50 images 0.0.19 and beyond cr50 rebooting relies on the firmware
to enable the invalid RW header. On each boot the firmware will try to
enable any invalidated RW headers and if there is an invalid one Cr50
will enable it, wait 1000ms and then reboot. Cr50 will no longer reboot
on its own after usb_update is run.

The support for enabling the invalid cr50 RW header is not in firmware
yet. This changes firmware_Cr50Update so the test not care if cr50 does
not reboot immediately after usb_update is run for rollback updates. We
force the rollback ourselves and reboot, so it is ok if cr50 does not
reboot immediately on its own.

BUG=none
BRANCH=none
TEST=build a cr50 dbg image from TOT and then use it as a 'dev_image'
while running the test.

Change-Id: Ie2acafb4e163ba2697cd4e1421f0f37daf9f2758
Signed-off-by: Mary Ruthven <mruthven@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/469075
Reviewed-by: Aseda Aboagye <aaboagye@chromium.org>
Reviewed-by: Tyler Reid <twreid@google.com>
/external/autotest/server/site_tests/firmware_Cr50Update/firmware_Cr50Update.py
0136313edeee40b491d3a5131b391b7499de57b8 07-Apr-2017 Mary Ruthven <mruthven@chromium.org> firmware_Cr50Update: clear tpm owner during init

If the tpm is owned, the checking if rootfs verification is enabled will
fail. This change clears the tpm owner before querying the rootfs
verification state.

BUG=none
BRANCH=none
TEST=Login to the dut. Then run firmware_Cr50Update

Change-Id: I22e9740cb551adc72fd33e6d41df260fba50ed0f
Signed-off-by: Mary Ruthven <mruthven@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/471028
Reviewed-by: Aseda Aboagye <aaboagye@chromium.org>
/external/autotest/server/site_tests/firmware_Cr50Update/firmware_Cr50Update.py
70b80cf0fc5ecd653b22aa06503c9462d94e014f 05-Apr-2017 Mary Ruthven <mruthven@chromium.org> Cr50Update: raise consistent error if the state isn't restored

Raise 'Could not restore the original image' when the test did not
restore the original image. It is better if we raise the same error
every time we don't restore the image. If we don't restore the original
cr50 image, something may need to be done to restore the device to the
original state.

BUG=none
BRANCH=none
TEST=none

Change-Id: I43407b8cb9471e8f7fe34c979c36d6d8f002713d
Signed-off-by: Mary Ruthven <mruthven@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/469070
Reviewed-by: Aseda Aboagye <aaboagye@chromium.org>
/external/autotest/server/site_tests/firmware_Cr50Update/firmware_Cr50Update.py
162a032f5f848d4a530eae1c314259076258bcd4 15-Mar-2017 Mary Ruthven <mruthven@chromium.org> add test to verify Cr50 update and recovery from erased nvmem

This test can be used to verify the cr50-update process, or recovery
from erased nvmem.

This test will update to the given dev image. After that, each iteration
of the test will start by rolling back to the oldest release image. It
will then use the cr50-update script to update to each image in order of
lowest to highest version. After all of the iterations are complete, the
test will reflash the Cr50 image that the dut had at the start of the
test.

This test verifies that the device updated and the update script did not
exit with any unexpected exit codes.

If erase_nvmem is being tested then nvmem will also be erased during
rollback.

There are four parameters in each control file: test_type, dev_image
release_image, and old_release_image. The image parameters are the
locations of the test images. If the test type is erase_nvmem then cr50
will erase nvmem before rolling back to the release image. The
old_release_image needs to have the oldest version if it is being used.
dev_image needs to have a version higher than release_image,
old_release_image, and whatever image is running on the DUT. If this is
not the case, the test cannot guarantee the original state of the dut is
restored.

There are two control files: control and control.erase_nvmem.
control.erase_nvmem will ignore 'old_release_image' and make sure the
test_type is set to 'erase_nvmem'.

CQ-DEPEND=CL:456624
BUG=b:35833679
BUG=b:35833781
BRANCH=none
TEST=test_that $DUT_IP firmware_Cr50Update
--args="iterations=3 old_release_image=$OLD_RELEASE
release_image=$RELEASE_IMAGE dev_image=$DEV_IMAGE"

Change-Id: I4e2f6c3a720f873e44caa6426f251fe0119cba30
Signed-off-by: Mary Ruthven <mruthven@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/456523
Reviewed-by: Wai-Hong Tam <waihong@google.com>
/external/autotest/server/site_tests/firmware_Cr50Update/firmware_Cr50Update.py