To build the AP Firmware for foo: cros build-ap -b foo
To build the AP Firmware only for foo-variant: cros build-ap -b foo --fw-name foo-variant
Requires servod process to be running if flashing via servo
To flash your zork DUT with an IP of 1.1.1.1 via SSH: cros flash-ap -b zork -i /path/to/image.bin -d ssh://1.1.1.1
To flash your volteer DUT via SERVO on the default port (9999): cros flash-ap -d servo:port -b volteer -i /path/to/image.bin
To flash your volteer DUT via SERVO on port 1234: cros flash-ap -d servo:port:1234 -b volteer -i /path/to/image.bin
Create ${BOARD}.py in chromite/lib/firmware/ap_firmware_config. The __template.py file can be copied into place, it contains a skeleton config.
Define the following variables:
BUILD_WORKON_PACKAGES as a list of all packages that should be cros_workon'd before building. BUILD_PACKAGES as a list of all packages that should be emerged during the build process.
Define the following functions:
is_fast_required: Only required if it needs to return True for any cases! Returns true if --fast is necessary to flash successfully. Args: use_futility (bool): True if futility is to be used, False if flashrom. servo (str): The type name of the servo device being used. Returns: bool: True if fast is necessary, False otherwise. get_commands: Get specific flash commands for this board Each board needs specific commands including the voltage for Vref, to turn on and turn off the SPI flash. These commands can be found in the care and feeding doc for your board, any command that needs to be run before flashing should be included in dut_control_on and anything run after flashing should be in dut_control_off. Args: servo (servo_lib.Servo): The servo connected to the target DUT. Returns: list: [dut_control_on, dut_control_off, flashrom_cmd, futility_cmd] dut_control*=2d arrays formmated like [["cmd1", "arg1", "arg2"], ["cmd2", "arg3", "arg4"]] where cmd1 will be run before cmd2 flashrom_cmd=command to flash via flashrom futility_cmd=command to flash via futility
See dedede.py for examples of each function/variable.