faft: Increase the ec boot delays and reduce unnecessary waiting
To reflect the recent change which makes the EC cold reset from 0.2s to 1s:
https://gerrit.chromium.org/gerrit/#/c/39519/
The ec_boot_to_console should increase from 0.4s to 1.2s.
The ec_reboot_cmd should increase from 1s to 1.8s.
For emulating the long recovery combo, reduce the unnecessary waiting.
BUG=chrome-os-partner:16668
TEST=run DevMode and RONormalBoot tests passed on Link .133 firmware.
Change-Id: I7d28d5b1ba2c51b3ac59add35bf845fe3446d5a5
Reviewed-on: https://gerrit.chromium.org/gerrit/39533
Reviewed-by: Yusuf Mohsinally <mohsinally@chromium.org>
Reviewed-by: Randall Spangler <rspangler@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/faft_delay_constants.py b/server/cros/faft_delay_constants.py
index a59008b..d10e3b4 100644
--- a/server/cros/faft_delay_constants.py
+++ b/server/cros/faft_delay_constants.py
@@ -27,9 +27,9 @@
# Delay for waiting client to shutdown
shutdown = 30
# Delay for waiting client to return before sending EC reboot command
- ec_reboot_cmd = 1
+ ec_reboot_cmd = 1.8
# Delay between EC boot and ChromeEC console functional
- ec_boot_to_console = 0.4
+ ec_boot_to_console = 1.2
# Delay between EC boot and pressing power button
ec_boot_to_pwr_button = 0.5
# Delay of EC software sync hash calculating time
@@ -62,3 +62,7 @@
if platform == 'Link':
self.firmware_screen = 7
self.dev_screen = 4
+
+ if platform == 'Snow':
+ self.ec_reboot_cmd = 1
+ self.ec_boot_to_console = 0.4
diff --git a/server/cros/faftsequence.py b/server/cros/faftsequence.py
index 77b95e5..23d824d 100644
--- a/server/cros/faftsequence.py
+++ b/server/cros/faftsequence.py
@@ -964,12 +964,13 @@
if self.client_attr.chrome_ec:
# Reset twice to emulate a long recovery-key-combo hold.
cold_reset_num = 2 if self.client_attr.long_rec_combo else 1
- for _ in range(cold_reset_num):
+ for i in range(cold_reset_num):
+ if i:
+ time.sleep(self.delay.ec_boot_to_console)
# Cold reset to clear EC_IN_RW signal
self.servo.set('cold_reset', 'on')
time.sleep(self.delay.hold_cold_reset)
self.servo.set('cold_reset', 'off')
- time.sleep(self.delay.ec_boot_to_console)
self.ec.reboot("ap-off")
time.sleep(self.delay.ec_boot_to_console)
self.ec.set_hostevent(chrome_ec.HOSTEVENT_KEYBOARD_RECOVERY)