firmware_Cr50RMAOpen: use ccd_lockout
We can't open cr50 if ccd is locked out. Modify init to check
ccd_lockout before trying to open cr50. If we can't set all capabilities
to default during init, raise an error before running the test.
BUG=none
BRANCH=none
TEST=run firmware_Cr50RMAOpen on mp and premp image. Set a capability to
Always and make sure the test fails if it can't set it to Default.
Change-Id: I48ac6a9e61c5db43100c6af4ff77d8d01216f23b
Signed-off-by: Mary Ruthven <mruthven@google.com>
Reviewed-on: https://chromium-review.googlesource.com/1096364
Tested-by: Mary Ruthven <mruthven@chromium.org>
Reviewed-by: Kevin Shelton <kmshelton@chromium.org>
diff --git a/server/site_tests/firmware_Cr50RMAOpen/control b/server/site_tests/firmware_Cr50RMAOpen/control
index 7585ff2..db10575 100644
--- a/server/site_tests/firmware_Cr50RMAOpen/control
+++ b/server/site_tests/firmware_Cr50RMAOpen/control
@@ -35,8 +35,9 @@
host = hosts.create_host(machine, servo_args=servo_args)
iterations = int(args_dict.get("iterations", 1))
+ ccd_lockout = args_dict.get("ccd_lockout", "").lower() == "true"
job.run_test("firmware_Cr50RMAOpen", host=host, cmdline_args=args,
- iterations=iterations)
+ iterations=iterations, ccd_lockout=ccd_lockout)
parallel_simple(run, machines)
diff --git a/server/site_tests/firmware_Cr50RMAOpen/firmware_Cr50RMAOpen.py b/server/site_tests/firmware_Cr50RMAOpen/firmware_Cr50RMAOpen.py
index 156271f..70597b6 100644
--- a/server/site_tests/firmware_Cr50RMAOpen/firmware_Cr50RMAOpen.py
+++ b/server/site_tests/firmware_Cr50RMAOpen/firmware_Cr50RMAOpen.py
@@ -46,7 +46,7 @@
# behave the same and be interchangeable
CMD_INTERFACES = ['ap', 'cli']
- def initialize(self, host, cmdline_args):
+ def initialize(self, host, cmdline_args, ccd_lockout):
"""Initialize the test"""
super(firmware_Cr50RMAOpen, self).initialize(host, cmdline_args)
self.host = host
@@ -72,10 +72,17 @@
ignore_status=True))
# Disable all capabilities at the start of the test. Go ahead and enable
# testlab mode if it isn't enabled.
- self.cr50.fast_open(enable_testlab=True)
- self.cr50.send_command('ccd reset')
- self.cr50.set_ccd_level('lock')
- self.check_ccd_cap_settings(False)
+ if not ccd_lockout:
+ self.cr50.fast_open(enable_testlab=True)
+ self.cr50.send_command('ccd reset')
+ self.cr50.set_ccd_level('lock')
+ self.check_ccd_cap_settings(False)
+
+ # Make sure all capabilities are set to default.
+ try:
+ self.check_ccd_cap_settings(False)
+ except error.TestFail:
+ raise error.TestError('Could not disable rma mode')
self.is_prod_mp = self.get_prod_mp_status()