[PATCH 2/2] ARM: mvebu: document some general mvebu stuff and the rn2120 board

Uwe Kleine-König u.kleine-koenig at pengutronix.de
Tue Oct 4 12:13:06 PDT 2016

Signed-off-by: Uwe Kleine-König <u.kleine-koenig at pengutronix.de>
 Documentation/boards/mvebu.rst                     | 50 ++++++++++++++++++++++
 .../boards/mvebu/Netgear-ReadyNAS-2120.rst         | 19 ++++++++
 2 files changed, 69 insertions(+)
 create mode 100644 Documentation/boards/mvebu.rst
 create mode 100644 Documentation/boards/mvebu/Netgear-ReadyNAS-2120.rst

diff --git a/Documentation/boards/mvebu.rst b/Documentation/boards/mvebu.rst
new file mode 100644
index 000000000000..b4f8e6043dac
--- /dev/null
+++ b/Documentation/boards/mvebu.rst
@@ -0,0 +1,50 @@
+Marvell Embedded Business Unit (mvebu)
+Move of the Register Window
+When an mvebu SoC comes up the internal registers are mapped at 0xd0000000 in
+the address space. To make it possible to have more than 3.25 GiB of continuous
+RAM in Linux this window is moved to 0xf1000000.
+Unfortunately the register to configure the location of the registers is located
+in this window, so there is no way to determine the location afterwards.
+RAM initialisation
+Traditionally the RAM initialisation happens with a binary blob that have to be
+extracted from the vendor U-Boot::
+  scripts/kwbimage -x -i /dev/mtdblock0 -o .
+This creates among others a file "binary.0" that has to be put into the board
+directory. For license reasons this is usually not included in the barebox
+Note that in the meantime U-Boot has open source code to do the RAM
+initialisation that could be taken.
+Booting second stage
+This is currently not possible because barebox assumes the registers are mapped
+at 0xd0000000 as is the case when the boot ROM gives control to the bootloader.
+Booting from UART
+The mvebu SoCs support booting from UART. For this there is a tool available in
+barebox called kwboot.
+mvebu boards
+Not all supported boards have a description here.
+.. toctree::
+  :glob:
+  :numbered:
+  :maxdepth: 1
+  mvebu/*
diff --git a/Documentation/boards/mvebu/Netgear-ReadyNAS-2120.rst b/Documentation/boards/mvebu/Netgear-ReadyNAS-2120.rst
new file mode 100644
index 000000000000..5bee03af9d38
--- /dev/null
+++ b/Documentation/boards/mvebu/Netgear-ReadyNAS-2120.rst
@@ -0,0 +1,19 @@
+Netgear ReadyNAS 2120
+This is a rack mountable 4 bay NAS using an Armada XP dual-core processor.
+UART booting
+The first UART hides behind a sticker on 4 pins.
+The machine seems to do two resets at power on which makes UART booting hard. A
+trick to work around this is::
+  scripts/kwboot -d /dev/ttyUSB0; kwboot -b images/barebox-netgear-rn2120.img -t /dev/ttyUSB0
+This way the first window in which the CPU accepts the magic string is taken by
+the first invokation which blocks until the second reset happens. The second
+window is then hit with the image to boot. This is not 100% reliable but works
+most of the time.

More information about the barebox mailing list