faft: Implement a FAFT test for Ctrl-U developer boot USB

This test requires a USB disk plugged-in, which contains a Chrome OS test
image (built by "build_image test"). On runtime, this test first switches
DUT to developer mode. When dev_boot_usb=0, pressing Ctrl-U on developer
screen should not boot the USB disk. When dev_boot_usb=1, pressing Ctrl-U
should boot the USB disk.

Several helpful methods are added to FAFT infrastructure, like:
  FAFTClient:
    - get_dev_boot_usb: Get dev_boot_usb value
    - set_dev_boot_usb: Set dev_boot_usb value
    - is_removable_device_boot: Check the current boot device is removable
  FAFTSequence:
    - dev_boot_usb_checker: Check the current boot is from a developer USB

BUG=chromium-os:35255
TEST=run_remote_tests.sh --board daisy --remote dut firmware_DevBootUSB

Change-Id: I717a0c2bdc086031ad721ba915668416bd5a7256
Reviewed-on: https://gerrit.chromium.org/gerrit/35553
Reviewed-by: Vic Yang <victoryang@chromium.org>
Reviewed-by: Randall Spangler <rspangler@chromium.org>
Reviewed-by: Mike Truty <truty@chromium.org>
Commit-Ready: Tom Wai-Hong Tam <waihong@chromium.org>
Tested-by: Tom Wai-Hong Tam <waihong@chromium.org>
6 files changed