3-key stroke control failed by using Servo V4 on Cave |
||||||||
Issue description3-key stroke control to enable Cave DUTs boot to dev mode failed by using Servo V4. dut-control kbd_en:off kbd_m2_a1:0 kbd_m2_a0:0 kbd_m1_a1:0 kbd_m1_a0:1 kbd_en:on sleep:0.5 kbd_en:off It failed on chromeos2-servov4labstation. But works on my personal workstation.
,
Jan 23 2017
Generally, you should use the wrapper to send ctrl-d or whatever rather than poking the underlying keyboard rails. However servo micro should support this. Can you check if only this function is failing or the servo micro is completely unresponsive?
,
Jan 23 2017
power_state is not a valid argument to Servo V4.
,
Jan 23 2017
localhost ~ # dut-control warm_reset warm_reset:off localhost ~ # dut-control warm_reset:on <bd_en:off kbd_m2_a1:0 kbd_m2_a0:0 kbd_m1_a1:0 kbd_m <m2_a0:0 kbd_m1_a1:0 kbd_m1_a0:1 kbd_en:on sleep:0.5 kbd_en:off Problem with ['kbd_en:off', 'kbd_m2_a1:0', 'kbd_m2_a0:0', 'kbd_m1_a1:0', 'kbd_m1_a0:1', 'kbd_en:on', 'sleep:0.5', 'kbd_en:off'] :: No control named "kbd_en" <_m1_a1:0 kbd_m1_a0:1 kbd_en:on sleep:0.5 kbd_en:off Problem with ['kbd_en:off', 'kbd_m2_a1:0', 'kbd_m2_a0:0', 'kbd_m1_a1:0', 'kbd_m1_a0:1', 'kbd_en:on', 'sleep:0.5', 'kbd_en:off'] :: No control named "kbd_en" localhost ~ # dut-control warm_reset:off5 kbd_en:off localhost ~ # dut-control warm_reset warm_reset:off localhost ~ # dut-control warm_reset:on <_m1_a1:0 kbd_m1_a0:1 kbd_en:on sleep:0.5 kbd_en:off localhost ~ # dut-control warm_reset:off5 kbd_en:off
,
Jan 23 2017
> power_state is not a valid argument to Servo V4. If that statement were true as a general matter, the deployment script would fail. (So I don't believe that this is generally true.) Can you provide more information about what error you saw, specifically?
,
Jan 23 2017
Here is the original error of cave deployment. gs://chromeos-install-logs/2017-01-23T10:37:45.660407-08:00-cave/chromeos2-row1-rack11-host1.log gsutil cat gs://chromeos-install-logs/2017-01-23T10:37:45.660407-08:00-cave/report.log
,
Jan 25 2017
,
Feb 9 2017
,
Feb 9 2017
@ nsanders@chromium.org - does this give you what you need to triage?
,
Feb 10 2017
power_state is absolutely supported on servo v4/micro and is the only way this functionality is supported on servo v4. It's not expected that keyboard bitbanging will work under CCD. Can you attach the result of dut-control power_state:off power_state:rec From your cut and paste it looks like some other task is calling dut-control and stomping on things while you are running? I'm not sure what's going on. Unfortunately I don't have any system to repro this, possibly kevin can take a look.
,
Feb 10 2017
How did you start servod? The power_state control is usually defined in the CrOS board overlay, like servo_glados_overlay.xml. Should start servod like "servod -b glados" argument. Starting it like "servod -c servo_v4.xml" will loss the power_state control. I am a bit confused. So it failed to boot into recovery screen, or failed to press Ctrl-D to switch to dev mode? If it failed to press Ctrl-D, better to check the EC log to see if the keys are sent or not.
,
Apr 9 2018
Bulk-edit, reassigning to Aviv to assign to someone.
,
Apr 19 2018
Gathered onto a servo v4 hotlist, removing self as owner.
,
Apr 20 2018
,
May 14 2018
|
||||||||
►
Sign in to add a comment |
||||||||
Comment 1 by jrbarnette@chromium.org
, Jan 23 2017> dut-control kbd_en:off kbd_m2_a1:0 kbd_m2_a0:0 kbd_m1_a1:0 kbd_m1_a0:1 kbd_en:on sleep:0.5 kbd_en:off I'm uncertain how fully supported that command is. In particular, if it works for some boards or some versions of servo, but not others, it may or may not qualify as a bug worth fixing. There's a platform independent 'dut-control' command that's required to work: dut-control power_state:off power_state:rec If that command doesn't reliably force a device into recovery mode regardless of board or servo version, it's a high priority bug.