[PATCH 14/15] doc: bcm283x: add initial docs for Raspberry Pi 4 support
Ahmad Fatoum
a.fatoum at pengutronix.de
Thu May 5 01:01:51 PDT 2022
Separate out the barebox-dt-2nd documentation. There's much duplication
that way, but as we intend to remove the board-specific raspberry pi
images, this is ok for now.
Signed-off-by: Ahmad Fatoum <a.fatoum at pengutronix.de>
---
Documentation/boards/bcm2835.rst | 61 +++++++++++++++++++++++++++++---
1 file changed, 56 insertions(+), 5 deletions(-)
diff --git a/Documentation/boards/bcm2835.rst b/Documentation/boards/bcm2835.rst
index 0b5299a34078..b27c6f34a50b 100644
--- a/Documentation/boards/bcm2835.rst
+++ b/Documentation/boards/bcm2835.rst
@@ -4,6 +4,17 @@ Broadcom BCM283x
Raspberry Pi
------------
+barebox supports has support for BCM283x-based Raspberry Pi single board
+computers. Support is most extensive for BCM283[567]. Forthe newer BCM2711
+used in the Raspberry Pi 4, only basic support is available currently
+(Serial Port @115200 Baud, Pinctrl, SD-Card).
+
+Legacy Raspberry Pi Images
+~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+This format will be eventually phased out in favor of using the generic
+``barebox-dt-2nd.img`` binary for all configurations.
+
1. Prepare an SD or microSD card with a FAT filesystem of at least 30 MB in size.
2. Download the `Raspberry Pi firmware`_ (120 MB), unzip it, and copy the
@@ -19,11 +30,6 @@ Raspberry Pi
Copy the respective image for your model to your SD card and name it
``barebox.img``.
- Alternatively, ``images/barebox-dt-2nd.img`` can be used as single bootloader for all
- supported 32-bit boards. In this case the device tree supplied by the video core
- is directly used by barebox to probe. The device trees in ``arch/arm/dts/*.dtb``
- will need to be renamed for alignment with the naming scheme expected by the videocore.
-
4. Create a text file ``config.txt`` on the SD card with the following content::
kernel=barebox.img
@@ -53,5 +59,50 @@ The original command-line from VideoCore device tree is available to the Barebox
global linux.bootargs.vc="$global.vc.bootargs"
+Generic DT image
+~~~~~~~~~~~~~~~~
+
+ 1. Prepare an SD or microSD card with a FAT filesystem of at least 30 MB in size.
+
+ 2. Download the `Raspberry Pi firmware`_ (120 MB), unzip it, and copy the
+ contents of the ``boot/`` folder to your card.
+
+ 3. Use ``make rpi_defconfig; make`` to build barebox for 32-Bit or ``make rpi_v8a_defconfig; make`` to build it for 64-Bit
+
+ This will create ``images/barebox-dt-2nd.img``, which can be used as single bootloader
+ for all supported boards. In this case the device tree supplied by the video core
+ is directly used by barebox to probe. The device trees in ``arch/arm/dts/*.dtb``
+ will need to be renamed for alignment with the naming scheme expected by the videocore.
+ (left is name in FAT, right is name used by barebox, here in genimage syntax)::
+
+ file bcm2836-rpi-2-b.dtb { image = bcm2836-rpi-2.dtb }
+ file bcm2836-rpi-2-b.dtb { image = bcm2836-rpi-2.dtb }
+ file bcm2837-rpi-3-b.dtb { image = bcm2837-rpi-3.dtb }
+ file bcm2837-rpi-3-a-plus.dtb { image = bcm2837-rpi-3.dtb }
+ file bcm2837-rpi-3-b-plus.dtb { image = bcm2837-rpi-3.dtb }
+ file bcm2837-rpi-cm3-io3.dtb { image = bcm2837-rpi-cm3.dtb }
+ file bcm2711-rpi-4-b.dtb { image = bcm2711-rpi-4-b.dtb }
+
+ 4. Create a text file ``config.txt`` on the SD card with the following content::
+
+ kernel=barebox-dt-2nd.img
+ arm_64bit=1 # remove for 32-bit mode
+ upstream_kernel=1 # use upstream DT file names
+ enable_uart=1
+
+ If you want to use the mini-uart instead of the PL011, you may need to additionally set::
+
+ uart_2ndstage=1
+
+ This is required on boards, like the Raspberry Pi Zero W, that use the mini-uart as the
+ primary UART. It is needed on boards like the CM3 as well if the mini-uart is to be used.
+
+ (For more information, refer to the `documentation for config.txt`_.)
+
+ 5. Connect to board's UART (115200 8N1);
+ Use PIN6 (GND), PIN8 (UART_TX), PIN10 (UART_RX) pins.
+
+ 6. Turn board's power on.
+
.. _Raspberry Pi firmware: https://codeload.github.com/raspberrypi/firmware/zip/80e1fbeb78f9df06701d28c0ed3a3060a3f557ef
.. _documentation for config.txt: https://www.raspberrypi.org/documentation/configuration/config-txt/
--
2.30.2
More information about the barebox
mailing list