Split the workflow of huddly updater depending on the mode.

This is to accommodate ChromeOS security enforcement of Permission Broker.
Now huddly-updater runs in two steps: prep and burn.

Prep step performs upgrade eligibility check, and switch to Bootloader mode
if upgrade eligibility is met. Otherwise bail out.
Burn step performs flashing action. This runs as if it is forced upgrade mode.

To accommodate the Permission Broke permission control, two command line
options are added:

 --prep: prep only, and skip burn step. This will be used in App mode.
 --burn: skip prep, and just burn. This will be used in Bootloader mode.

Additionally, to facilitate dev and test engineering, following options are added.

 --app: switch to app mode and reboot.
 --boot: switch to bootloader mode and reboot.

BUG=chromium:724200
TEST=Build package for Guado board. Run on CFM.

Change-Id: I6c8897bb3c5eb89daff3cacb4685c1bdc3001f6f
Reviewed-on: https://chromium-review.googlesource.com/509033
Commit-Ready: Jiwoong Lee <porce@chromium.org>
Tested-by: Jiwoong Lee <porce@chromium.org>
Reviewed-by: Simon Que <sque@chromium.org>
2 files changed
tree: 2c26df943f6574815e1e4f0b61bdcc6ec8c8857a
  1. conf/
  2. src/
  3. .gitignore
  4. common.mk
  5. LICENSE
  6. Makefile
  7. README.md
README.md

Huddly-updater is a utility to upgrade the huddly camera firmware.

Requirements

TODO: The GNU C library, libusb 1.0 and libudev are required.

Building

At the root of the repository,

$ make

Alternatively at Chromium OS development environment,

$ emerge-$${BOARD} huddly-updater

How to use

$ huddly-updater --help

TODO

It will also provide assistant tools to query the firmware version of the firmware installed in the huddly camera, that of a binary blob file.