summaryrefslogtreecommitdiffstats
path: root/Documentation/boards/bcm2835.rst
blob: 95e910896b27ad2f155ff8aa21e117550aa4062e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
Broadcom BCM283x
================

Raspberry Pi
------------

  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. This will create the following images:

     - ``images/barebox-raspberry-pi-1.img`` for the BCM2835/ARM1176JZF-S (Raspberry Pi 1)
     - ``images/barebox-raspberry-pi-2.img`` for the BCM2836/CORTEX-A7 (Raspberry Pi 2)
     - ``images/barebox-raspberry-pi-3.img`` for the BCM2837/CORTEX-A53 (Raspberry Pi 3, Raspberry Pi Zero)

     Copy the respective image for your model to your SD card and name it
     ``barebox.img``.

  4. Create a text file ``config.txt`` on the SD card with the following content::

         kernel=barebox.img
         enable_uart=1

     (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.

VideoCore firmware creates a device tree based on the entries in ``config.txt``. This file is available to the Barebox environment in the file ``/vc.dtb``. For example, to boot a kernel shipped with Raspbian::

    bootm -o /vc.dtb /boot/kernel7.img

.. _Raspberry Pi firmware: https://codeload.github.com/raspberrypi/firmware/zip/80e1fbeb78f9df06701d28c0ed3a3060a3f557ef
.. _documentation for config.txt: https://www.raspberrypi.org/documentation/configuration/config-txt/