blob: 4240606224f5b36968277792dfd5dc93a762fdfa [file] [log] [blame]
Caleb Connollyf3353a12024-08-21 15:41:52 +02001.. SPDX-License-Identifier: GPL-2.0+
2.. sectionauthor:: Caleb Connolly <caleb.connolly@linaro.org>
3
4Qualcomm Robotics RB3 Gen 2
5===========================
6
7The RB3 Gen 2 is a development board based on the Qualcomm QCM6490 SoC (a derivative
8of SC7280). More information can be found on `Qualcomm's product page`_.
9
10U-Boot can be used as a replacement for Qualcomm's original EDK2 bootloader by
11flashing it directly to the uefi_a (or _b) partition.
12
13.. _Qualcomm's product page: https://www.qualcomm.com/developer/hardware/rb3-gen-2-development-kit
14
15Installation
16------------
17First, setup ``CROSS_COMPILE`` for aarch64. Then, build U-Boot for ``qcm6490``::
18
19 $ export CROSS_COMPILE=<aarch64 toolchain prefix>
20 $ make qcm6490_defconfig
21 $ make -j8
22
23This will build ``u-boot.elf`` in the configured output directory.
24
25Although the RB3 Gen 2 does not have secure boot set up by default,
26the firmware still expects firmware ELF images to be "signed". The signature
27does not provide any security in this case, but it provides the firmware with
28some required metadata.
29
30To "sign" ``u-boot.elf`` you can use e.g. `qtestsign`_::
31
32 $ qtestsign -v6 aboot -o u-boot.mbn u-boot.elf
33
34Then install the resulting ``u-boot.mbn`` to the ``uefi_a`` partition
35on your device with ``fastboot flash uefi_a u-boot.mbn``.
36
37U-Boot should be running after a reboot (``fastboot reboot``).
38
39Note that fastboot is not yet supported in U-Boot on this board, as a result,
40to flash back the original firmware, or new versoins of the U-Boot, EDL mode
41must be used. This can be accessed by pressing the EDL mode button as described
42in the Qualcomm Linux documentation. A tool like bkerler's `edl`_ can be used
43for flashing with the firehose loader binary appropriate for the board.
44
45.. _qtestsign: https://github.com/msm8916-mainline/qtestsign
46.. _edl: https://github.com/bkerler/edl
47
48Usage
49-----
50
51The USB Type-A ports are connected via a PCIe USB hub, which is not supported yet.
52However, the Type-C port can be used with a powered USB dock to connect peripherals
53like a USB stick.