faft: Clear the short delay GBB flag before running DevScreenTimeout FAFT
The short delay GBB flag is disabled in the release firmware. So the
DevScreenTimeout should only check this release case.
Clear this flag if presented before running the test.
BUG=chrome-os-partner:9190
TEST=run firmware_DevScreenTimeout on Link passed.
Change-Id: I4489913eadb9efe81a13121495629cb9316e5c8f
Reviewed-on: https://gerrit.chromium.org/gerrit/28583
Reviewed-by: Vic Yang <victoryang@chromium.org>
Commit-Ready: Tom Wai-Hong Tam <waihong@chromium.org>
Tested-by: Tom Wai-Hong Tam <waihong@chromium.org>
diff --git a/server/cros/faftsequence.py b/server/cros/faftsequence.py
index 4d639fe..fc9f13c 100644
--- a/server/cros/faftsequence.py
+++ b/server/cros/faftsequence.py
@@ -102,6 +102,9 @@
# Delay between sending keystroke to firmware
FIRMWARE_KEY_DELAY = 0.5
+ # The developer screen timeouts fit our spec.
+ DEV_SCREEN_TIMEOUT = 30
+
CHROMEOS_MAGIC = "CHROMEOS"
CORRUPTED_MAGIC = "CORRUPTD"
diff --git a/server/site_tests/firmware_DevScreenTimeout/firmware_DevScreenTimeout.py b/server/site_tests/firmware_DevScreenTimeout/firmware_DevScreenTimeout.py
index 6415c4f..9010017 100644
--- a/server/site_tests/firmware_DevScreenTimeout/firmware_DevScreenTimeout.py
+++ b/server/site_tests/firmware_DevScreenTimeout/firmware_DevScreenTimeout.py
@@ -28,13 +28,9 @@
CTRL_D_REPEAT_COUNT = 10
CTRL_D_REPEAT_DELAY = 0.5
- # The developer screen timeouts fit our spec.
- DEV_SCREEN_TIMEOUT_NORMAL = 30
- DEV_SCREEN_TIMEOUT_SHORT = 2
# We accept 3s timeout margin.
TIMEOUT_MARGIN = 3
- expected_timeout = DEV_SCREEN_TIMEOUT_NORMAL
fw_time_record = {}
@@ -75,23 +71,20 @@
self.fw_time_record['ctrl_d_boot'])
logging.info('Estimated developer firmware timeout: %s' % got_timeout)
- if got_timeout < self.expected_timeout - self.TIMEOUT_MARGIN or \
- got_timeout > self.expected_timeout + self.TIMEOUT_MARGIN:
+ if got_timeout < self.DEV_SCREEN_TIMEOUT - self.TIMEOUT_MARGIN or \
+ got_timeout > self.DEV_SCREEN_TIMEOUT + self.TIMEOUT_MARGIN:
raise error.TestFail(
'The developer firmware timeout does not match our spec: ' \
'expected %.2f +/- %.2f but got %.2f.' %
- (self.expected_timeout, self.TIMEOUT_MARGIN, got_timeout))
+ (self.DEV_SCREEN_TIMEOUT, self.TIMEOUT_MARGIN, got_timeout))
def setup(self):
super(firmware_DevScreenTimeout, self).setup()
# This test is run on developer mode only.
self.setup_dev_mode(dev_mode=True)
- if (self.faft_client.get_gbb_flags() &
- self.GBB_FLAG_DEV_SCREEN_SHORT_DELAY):
- logging.info('DEV_SCREEN_SHORT_DELAY flag is detected on GBB; '
- 'use 2 seconds timeout.')
- self.expected_timeout = self.DEV_SCREEN_TIMEOUT_SHORT
+ # Clear the short delay flag to verify the release behavior.
+ self.clear_gbb_flags(self.GBB_FLAG_DEV_SCREEN_SHORT_DELAY)
def run_once(self, host=None):