Sumit Garg | b35aa4f | 2024-04-12 15:24:38 +0530 | [diff] [blame] | 1 | .. SPDX-License-Identifier: GPL-2.0+ |
| 2 | .. sectionauthor:: Sumit Garg <sumit.garg@linaro.org> |
| 3 | |
| 4 | HMIBSC |
| 5 | ====== |
| 6 | |
| 7 | The HMIBSC is an IIoT Edge Box Core board based on the Qualcomm APQ8016E SoC. |
| 8 | More information can be found on the `SE product page`_. |
| 9 | |
| 10 | U-Boot can be used as a replacement for Qualcomm's original Android bootloader |
| 11 | (a fork of Little Kernel/LK). Like LK, it is installed directly into the ``aboot`` |
| 12 | partition. Note that the U-Boot port used to be loaded as an Android boot image |
| 13 | through LK. This is no longer the case, now U-Boot can replace LK entirely. |
| 14 | |
| 15 | .. _SE product page: https://www.se.com/us/en/product/HMIBSCEA53D1L0T/iiot-edge-box-core-harmony-ipc-emmc-dc-linux-tpm/ |
| 16 | |
| 17 | Build steps |
| 18 | ----------- |
| 19 | |
| 20 | First, setup ``CROSS_COMPILE`` for aarch64. Then, build U-Boot for ``hmibsc``:: |
| 21 | |
| 22 | $ export CROSS_COMPILE=<aarch64 toolchain prefix> |
| 23 | $ make hmibsc_defconfig |
| 24 | $ make |
| 25 | |
| 26 | This will build ``u-boot.elf`` in the configured output directory. |
| 27 | |
| 28 | Installation |
| 29 | ------------ |
| 30 | |
| 31 | Although the HMIBSC does not have secure boot set up by default, the firmware |
| 32 | still expects firmware ELF images to be "signed". The signature does not provide |
| 33 | any security in this case, but it provides the firmware with some required |
| 34 | metadata. |
| 35 | |
| 36 | To "sign" ``u-boot.elf`` you can use e.g. `qtestsign`_:: |
| 37 | |
| 38 | $ ./qtestsign.py aboot u-boot.elf |
| 39 | |
| 40 | Then install the resulting ``u-boot-test-signed.mbn`` to the ``aboot`` partition |
| 41 | on your device, e.g. with ``fastboot flash aboot u-boot-test-signed.mbn``. |
| 42 | |
| 43 | U-Boot should be running after a reboot (``fastboot reboot``). |
| 44 | |
| 45 | .. _qtestsign: https://github.com/msm8916-mainline/qtestsign |