faft: Implement Jetstream ModeSwitcher logic
This change adds the Jetstream ModeSwitcher implementation and
uses the new jetstream FAFT config as parent.
BUG=chrome-os-partner:16231,chrome-os-partner:39744
TEST=Ran suite:faft_lv1 and suite:faft_lv2 on Whirlwind. Some tests
failed and will be fixed by some future CLs.
Change-Id: I23c71ba86889a132cb54c7be169b0c9010880052
Reviewed-on: https://chromium-review.googlesource.com/272432
Tested-by: Tom Tam <waihong@google.com>
Reviewed-by: Yusuf Mohsinally <mohsinally@chromium.org>
Commit-Queue: Tom Tam <waihong@google.com>
diff --git a/server/cros/servo/servo.py b/server/cros/servo/servo.py
index e0dd832..1b3d87f 100644
--- a/server/cros/servo/servo.py
+++ b/server/cros/servo/servo.py
@@ -146,6 +146,9 @@
# Time to toggle recovery switch on and off.
REC_TOGGLE_DELAY = 0.1
+ # Time to toggle development switch on and off.
+ DEV_TOGGLE_DELAY = 0.1
+
# Time between an usb disk plugged-in and detected in the system.
USB_DETECTION_DELAY = 10
# Time to keep USB power off before and after USB mux direction is changed
@@ -362,6 +365,13 @@
self.set('rec_mode', 'off')
+ def toggle_development_switch(self):
+ """Toggle development switch on and off."""
+ self.enable_development_mode()
+ time.sleep(self.DEV_TOGGLE_DELAY)
+ self.disable_development_mode()
+
+
def enable_development_mode(self):
"""Enable development mode on device."""
self.set('dev_mode', 'on')