hdctools: servod: Support a new control to send multiple UART commands

We now have 'uart_cmd' control which can only send one command to UART.
When we emulate a key (press and release), two separated commands should
be issued.

As emulating key is time-sensitive, we saw an issue that in the Beaglebone
setup, the network connection between autoserv and servod have some latency,
like 20ms. This latency between press and release results double press's.

So we need a new control to send multiple UART commands such that the press
and release can be done in short time.

BUG=chrome-os-partner:18045
TEST=manual
Emulate a long latency in the connection between autoserv and servod,
run the firmware_ECKeyboard test, over 50 time, all passed.

Change-Id: Ic14722b6240be833d56978df3421c92359c7979d
Reviewed-on: https://gerrit.chromium.org/gerrit/44165
Reviewed-by: Todd Broch <tbroch@chromium.org>
Commit-Queue: Tom Wai-Hong Tam <waihong@chromium.org>
Tested-by: Tom Wai-Hong Tam <waihong@chromium.org>
3 files changed