[PATCH 1/2] board: amlogic: move boards doc into doc/board/amlogic

Neil Armstrong narmstrong at baylibre.com
Tue Jun 16 09:40:25 CEST 2020


Hi,

On 16/06/2020 06:35, Anand Moon wrote:
> Hi Neil,
> 
> On Thu, 11 Jun 2020 at 19:20, Neil Armstrong <narmstrong at baylibre.com> wrote:
>>
>> Move the natural text Amlogic board README files to doc/board/amlogic
>> into reStructuredText and :
>> - add reStructuredText markup for bash code
>> - fix secondary titles markup
>> - move board support into global support matrix
>>
>> Signed-off-by: Neil Armstrong <narmstrong at baylibre.com>
> 
> Can you also update the following information for flashing u-boot image for eMMC
> 
> # Binaries should be available in fip directory :
> fip/
>  | ...
>  |------ u-boot.bin (for eMMC)
>  |------ u-boot.bin.sd.bin (for SDCard)
> 
> And the following for eMMC
> 
> [0] https://github.com/BayLibre/u-boot/tree/readme#install-on-emmc
> 
> So that it's clear which image should be used for particular booting device.

Sure, I'll send it as an update after the V2 of this patchset.

Neil

> 
> -Anand
> 
>> ---
>>  doc/board/amlogic/index.rst                   |  95 +++++++++
>>  .../board/amlogic/khadas-vim.rst              | 138 +++++++------
>>  .../board/amlogic/khadas-vim2.rst             | 138 ++++++-------
>>  .../board/amlogic/khadas-vim3.rst             | 189 +++++++++--------
>>  .../board/amlogic/khadas-vim3l.rst            | 189 +++++++++--------
>>  .../board/amlogic/libretech-ac.rst            | 142 ++++++-------
>>  .../board/amlogic/libretech-cc.rst            | 139 +++++++------
>>  .../board/amlogic/nanopi-k2.rst               | 136 +++++++------
>>  .../board/amlogic/odroid-c2.rst               |  50 +++--
>>  .../board/amlogic/odroid-n2.rst               | 187 +++++++++--------
>>  .../README.p200 => doc/board/amlogic/p200.rst | 136 ++++++-------
>>  .../README.p201 => doc/board/amlogic/p201.rst | 136 ++++++-------
>>  .../README.p212 => doc/board/amlogic/p212.rst | 136 ++++++-------
>>  .../README.q200 => doc/board/amlogic/q200.rst | 136 ++++++-------
>>  .../s400/README => doc/board/amlogic/s400.rst | 150 +++++++-------
>>  .../README => doc/board/amlogic/sei510.rst    | 190 ++++++++---------
>>  .../README => doc/board/amlogic/sei610.rst    | 185 +++++++++--------
>>  .../u200/README => doc/board/amlogic/u200.rst | 188 ++++++++---------
>>  .../README.w400 => doc/board/amlogic/w400.rst | 192 +++++++++---------
>>  doc/board/index.rst                           |   1 +
>>  20 files changed, 1484 insertions(+), 1369 deletions(-)
>>  create mode 100644 doc/board/amlogic/index.rst
>>  rename board/amlogic/p212/README.khadas-vim => doc/board/amlogic/khadas-vim.rst (24%)
>>  rename board/amlogic/q200/README.khadas-vim2 => doc/board/amlogic/khadas-vim2.rst (26%)
>>  rename board/amlogic/w400/README.khadas-vim3 => doc/board/amlogic/khadas-vim3.rst (20%)
>>  rename board/amlogic/w400/README.khadas-vim3l => doc/board/amlogic/khadas-vim3l.rst (19%)
>>  rename board/amlogic/p212/README.libretech-ac => doc/board/amlogic/libretech-ac.rst (21%)
>>  rename board/amlogic/p212/README.libretech-cc => doc/board/amlogic/libretech-cc.rst (46%)
>>  rename board/amlogic/p200/README.nanopi-k2 => doc/board/amlogic/nanopi-k2.rst (24%)
>>  rename board/amlogic/p200/README.odroid-c2 => doc/board/amlogic/odroid-c2.rst (56%)
>>  rename board/amlogic/w400/README.odroid-n2 => doc/board/amlogic/odroid-n2.rst (19%)
>>  rename board/amlogic/p200/README.p200 => doc/board/amlogic/p200.rst (24%)
>>  rename board/amlogic/p201/README.p201 => doc/board/amlogic/p201.rst (24%)
>>  rename board/amlogic/p212/README.p212 => doc/board/amlogic/p212.rst (24%)
>>  rename board/amlogic/q200/README.q200 => doc/board/amlogic/q200.rst (24%)
>>  rename board/amlogic/s400/README => doc/board/amlogic/s400.rst (21%)
>>  rename board/amlogic/sei510/README => doc/board/amlogic/sei510.rst (14%)
>>  rename board/amlogic/sei610/README => doc/board/amlogic/sei610.rst (16%)
>>  rename board/amlogic/u200/README => doc/board/amlogic/u200.rst (17%)
>>  rename board/amlogic/w400/README.w400 => doc/board/amlogic/w400.rst (17%)
>>
>> diff --git a/doc/board/amlogic/index.rst b/doc/board/amlogic/index.rst
>> new file mode 100644
>> index 0000000000..3730419167
>> --- /dev/null
>> +++ b/doc/board/amlogic/index.rst
>> @@ -0,0 +1,95 @@
>> +.. SPDX-License-Identifier: GPL-2.0+
>> +
>> +Amlogic
>> +=======
>> +
>> +Hardware Support Matrix
>> +-----------------------
>> +
>> +An up-do-date matrix is also available on: http://linux-meson.com
>> +
>> +This matrix concerns the actual source code version.
>> +
>> ++-------------------------------+-----------+--------------+--------------+------------+------------+-------------+--------------+
>> +|                              | S905      | S905X        | S912         | A113X      | S905X2     | S922X       | S905X3       |
>> +|                              |           | S805X        | S905D        |            | S905D2     | A311D       | S905D3       |
>> +|                              |           |              |              |            | S905Y2     |             |              |
>> ++===============================+===========+==============+==============+============+============+=============+==============+
>> +| Boards                               | Odroid-C2 | P212         | Khadas VIM2  | S400       | U200       | Odroid-N2   | SEI610       |
>> +|                              | Nanopi-K2 | Khadas-VIM   | Libretech-PC |            | SEI510     | Khadas-VIM3 | Khadas-VIM3L |
>> +|                              | P200      | LibreTech-CC |              |            |            |             |              |
>> +|                              | P201      | LibreTech-AC |              |            |            |             |              |
>> ++-------------------------------+-----------+--------------+--------------+------------+------------+-------------+--------------+
>> +| UART                         | **Yes**   | **Yes**      | **Yes**      | **Yes**    | **Yes**    | **Yes**     | **Yes**      |
>> ++-------------------------------+-----------+--------------+--------------+------------+------------+-------------+--------------+
>> +| Pinctrl/GPIO                 | **Yes**   | **Yes**      | **Yes**      | **Yes**    | **Yes**    | **Yes**     | **Yes**      |
>> ++-------------------------------+-----------+--------------+--------------+------------+------------+-------------+--------------+
>> +| Clock Control                | **Yes**   | **Yes**      | **Yes**      | **Yes**    | **Yes**    | **Yes**     | **Yes**      |
>> ++-------------------------------+-----------+--------------+--------------+------------+------------+-------------+--------------+
>> +| PWM                          | No        | No           | No           | No         | No         | No          | No           |
>> ++-------------------------------+-----------+--------------+--------------+------------+------------+-------------+--------------+
>> +| Reset Control                | **Yes**   | **Yes**      | **Yes**      | **Yes**    | **Yes**    | **Yes**     | **Yes**      |
>> ++-------------------------------+-----------+--------------+--------------+------------+------------+-------------+--------------+
>> +| Infrared Decoder             | No        | No           | No           | No         | No         | No          | No           |
>> ++-------------------------------+-----------+--------------+--------------+------------+------------+-------------+--------------+
>> +| Ethernet                     | **Yes**   | **Yes**      | **Yes**      | **Yes**    | **Yes**    | **Yes**     | **Yes**      |
>> ++-------------------------------+-----------+--------------+--------------+------------+------------+-------------+--------------+
>> +| Multi-core                   | **Yes**   | **Yes**      | **Yes**      | **Yes**    | **Yes**    | **Yes**     | **Yes**      |
>> ++-------------------------------+-----------+--------------+--------------+------------+------------+-------------+--------------+
>> +| Fuse access                  | **Yes**   | **Yes**      |**Yes**       |**Yes**     |**Yes**     |**Yes**      | **Yes**      |
>> ++-------------------------------+-----------+--------------+--------------+------------+------------+-------------+--------------+
>> +| SPI (FC)                     | **Yes**   | **Yes**      | **Yes**      | **Yes**    |**Yes**     | **Yes**     | No           |
>> ++-------------------------------+-----------+--------------+--------------+------------+------------+-------------+--------------+
>> +| SPI (CC)                     | No        | No           | No           | No         | No         | No          | No           |
>> ++-------------------------------+-----------+--------------+--------------+------------+------------+-------------+--------------+
>> +| I2C                          | **Yes**   | **Yes**      | **Yes**      | **Yes**    | **Yes**    | **Yes**     | **Yes**      |
>> ++-------------------------------+-----------+--------------+--------------+------------+------------+-------------+--------------+
>> +| USB                          | **Yes**   | **Yes**      | **Yes**      | No         | **Yes**    | **Yes**     | **Yes**      |
>> ++-------------------------------+-----------+--------------+--------------+------------+------------+-------------+--------------+
>> +| USB OTG                      | No        | **Yes**      | **Yes**      | No         | **Yes**    | **Yes**     | **Yes**      |
>> ++-------------------------------+-----------+--------------+--------------+------------+------------+-------------+--------------+
>> +| eMMC                         | **Yes**   | **Yes**      | **Yes**      | **Yes**    | **Yes**    | **Yes**     | **Yes**      |
>> ++-------------------------------+-----------+--------------+--------------+------------+------------+-------------+--------------+
>> +| SDCard                       | **Yes**   | **Yes**      | **Yes**      | **Yes**    | **Yes**    | **Yes**     | **Yes**      |
>> ++-------------------------------+-----------+--------------+--------------+------------+------------+-------------+--------------+
>> +| NAND                         | No        | No           | No           | No         | No         | No          | No           |
>> ++-------------------------------+-----------+--------------+--------------+------------+------------+-------------+--------------+
>> +| ADC                          | **Yes**   | **Yes**      | **Yes**      | No         | No         | No          | No           |
>> ++-------------------------------+-----------+--------------+--------------+------------+------------+-------------+--------------+
>> +| CVBS Output                  | **Yes**   | **Yes**      | **Yes**      | *N/A*      | **Yes**    | **Yes**     | **Yes**      |
>> ++-------------------------------+-----------+--------------+--------------+------------+------------+-------------+--------------+
>> +| HDMI Output                  | **Yes**   | **Yes**      | **Yes**      | *N/A*      | **Yes**    | **Yes**     | **Yes**      |
>> ++-------------------------------+-----------+--------------+--------------+------------+------------+-------------+--------------+
>> +| CEC                          | No        | No           | No           | *N/A*      | No         | No          | No           |
>> ++-------------------------------+-----------+--------------+--------------+------------+------------+-------------+--------------+
>> +| Thermal Sensor               | No        | No           | No           | No         | No         | No          | No           |
>> ++-------------------------------+-----------+--------------+--------------+------------+------------+-------------+--------------+
>> +| LCD/LVDS Output              | No        | *N/A*        | No           | No         | No         | No          | No           |
>> ++-------------------------------+-----------+--------------+--------------+------------+------------+-------------+--------------+
>> +| SoC (version) information            | **Yes**   | **Yes**      | **Yes**      | **Yes**    | **Yes**    | **Yes**     | **Yes**      |
>> ++-------------------------------+-----------+--------------+--------------+------------+------------+-------------+--------------+
>> +
>> +Board Documentation
>> +-------------------
>> +
>> +.. toctree::
>> +   :maxdepth: 1
>> +
>> +   khadas-vim2
>> +   khadas-vim3l
>> +   khadas-vim3
>> +   khadas-vim
>> +   libretech-ac
>> +   libretech-cc
>> +   nanopi-k2
>> +   odroid-c2
>> +   odroid-n2
>> +   p200
>> +   p201
>> +   p212
>> +   q200
>> +   s400
>> +   sei510
>> +   sei610
>> +   u200
>> +   w400
>> diff --git a/board/amlogic/p212/README.khadas-vim b/doc/board/amlogic/khadas-vim.rst
>> similarity index 24%
>> rename from board/amlogic/p212/README.khadas-vim
>> rename to doc/board/amlogic/khadas-vim.rst
>> index ccf933861b..397382c375 100644
>> --- a/board/amlogic/p212/README.khadas-vim
>> +++ b/doc/board/amlogic/khadas-vim.rst
>> @@ -1,5 +1,5 @@
>>  U-Boot for Khadas VIM
>> -=======================
>> +======================
>>
>>  Khadas VIM is an Open Source DIY Box manufactured by Shenzhen Wesion
>>  Technology Co., Ltd with the following specifications:
>> @@ -16,86 +16,84 @@ Technology Co., Ltd with the following specifications:
>>   - SDIO Wifi Module, Bluetooth
>>   - Two channels IR receiver
>>
>> -Currently the u-boot port supports the following devices:
>> - - serial
>> - - eMMC, microSD
>> - - Ethernet
>> - - I2C
>> - - Regulators
>> - - Reset controller
>> - - Clock controller
>> - - USB Host
>> - - ADC
>> -
>>  U-Boot compilation
>> -==================
>> +------------------
>> +
>> +.. code-block:: bash
>>
>> - > export CROSS_COMPILE=aarch64-none-elf-
>> - > make khadas-vim_defconfig
>> - > make
>> +    $ export CROSS_COMPILE=aarch64-none-elf-
>> +    $ make khadas-vim_defconfig
>> +    $ make
>>
>>  Image creation
>> -==============
>> +--------------
>>
>>  Amlogic doesn't provide sources for the firmware and for tools needed
>>  to create the bootloader image, so it is necessary to obtain them from
>>  the git tree published by the board vendor:
>>
>> - > wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> - > wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> - > tar xvfJ gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> - > tar xvfJ gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> - > export PATH=$PWD/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux/bin:$PWD/gcc-linaro-arm-none-eabi-4.8-2013.11_linux/bin:$PATH
>> - > git clone https://github.com/khadas/u-boot -b Vim vim-u-boot
>> - > cd vim-u-boot
>> - > make kvim_defconfig
>> - > make CROSS_COMPILE=aarch64-none-elf-
>> - > export FIPDIR=$PWD/fip
>> +.. code-block:: bash
>> +
>> +    $ wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> +    $ wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> +    $ tar xvfJ gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> +    $ tar xvfJ gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> +    $ export PATH=$PWD/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux/bin:$PWD/gcc-linaro-arm-none-eabi-4.8-2013.11_linux/bin:$PATH
>> +    $ git clone https://github.com/khadas/u-boot -b Vim vim-u-boot
>> +    $ cd vim-u-boot
>> +    $ make kvim_defconfig
>> +    $ make CROSS_COMPILE=aarch64-none-elf-
>> +    $ export FIPDIR=$PWD/fip
>>
>>  Go back to mainline U-Boot source tree then :
>> - > mkdir fip
>> -
>> - > cp $FIPDIR/gxl/bl2.bin fip/
>> - > cp $FIPDIR/gxl/acs.bin fip/
>> - > cp $FIPDIR/gxl/bl21.bin fip/
>> - > cp $FIPDIR/gxl/bl30.bin fip/
>> - > cp $FIPDIR/gxl/bl301.bin fip/
>> - > cp $FIPDIR/gxl/bl31.img fip/
>> - > cp u-boot.bin fip/bl33.bin
>> -
>> - > $FIPDIR/blx_fix.sh \
>> -       fip/bl30.bin \
>> -       fip/zero_tmp \
>> -       fip/bl30_zero.bin \
>> -       fip/bl301.bin \
>> -       fip/bl301_zero.bin \
>> -       fip/bl30_new.bin \
>> -       bl30
>> -
>> - > python $FIPDIR/acs_tool.pyc fip/bl2.bin fip/bl2_acs.bin fip/acs.bin 0
>> -
>> - > $FIPDIR/blx_fix.sh \
>> -       fip/bl2_acs.bin \
>> -       fip/zero_tmp \
>> -       fip/bl2_zero.bin \
>> -       fip/bl21.bin \
>> -       fip/bl21_zero.bin \
>> -       fip/bl2_new.bin \
>> -       bl2
>> -
>> - > $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl30_new.bin
>> - > $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl31.img
>> - > $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl33.bin
>> - > $FIPDIR/gxl/aml_encrypt_gxl --bl2sig --input fip/bl2_new.bin --output fip/bl2.n.bin.sig
>> - > $FIPDIR/gxl/aml_encrypt_gxl --bootmk \
>> -               --output fip/u-boot.bin \
>> -               --bl2 fip/bl2.n.bin.sig \
>> -               --bl30 fip/bl30_new.bin.enc \
>> -               --bl31 fip/bl31.img.enc \
>> -               --bl33 fip/bl33.bin.enc
>> +
>> +.. code-block:: bash
>> +
>> +    $ mkdir fip
>> +
>> +    $ cp $FIPDIR/gxl/bl2.bin fip/
>> +    $ cp $FIPDIR/gxl/acs.bin fip/
>> +    $ cp $FIPDIR/gxl/bl21.bin fip/
>> +    $ cp $FIPDIR/gxl/bl30.bin fip/
>> +    $ cp $FIPDIR/gxl/bl301.bin fip/
>> +    $ cp $FIPDIR/gxl/bl31.img fip/
>> +    $ cp u-boot.bin fip/bl33.bin
>> +
>> +    $ $FIPDIR/blx_fix.sh \
>> +       fip/bl30.bin \
>> +       fip/zero_tmp \
>> +       fip/bl30_zero.bin \
>> +       fip/bl301.bin \
>> +       fip/bl301_zero.bin \
>> +       fip/bl30_new.bin \
>> +       bl30
>> +
>> +    $ python $FIPDIR/acs_tool.pyc fip/bl2.bin fip/bl2_acs.bin fip/acs.bin 0
>> +
>> +    $ $FIPDIR/blx_fix.sh \
>> +       fip/bl2_acs.bin \
>> +       fip/zero_tmp \
>> +       fip/bl2_zero.bin \
>> +       fip/bl21.bin \
>> +       fip/bl21_zero.bin \
>> +       fip/bl2_new.bin \
>> +       bl2
>> +
>> +    $ $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl30_new.bin
>> +    $ $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl31.img
>> +    $ $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl33.bin
>> +    $ $FIPDIR/gxl/aml_encrypt_gxl --bl2sig --input fip/bl2_new.bin --output fip/bl2.n.bin.sig
>> +    $ $FIPDIR/gxl/aml_encrypt_gxl --bootmk \
>> +               --output fip/u-boot.bin \
>> +               --bl2 fip/bl2.n.bin.sig \
>> +               --bl30 fip/bl30_new.bin.enc \
>> +               --bl31 fip/bl31.img.enc \
>> +               --bl33 fip/bl33.bin.enc
>>
>>  and then write the image to SD with:
>>
>> - > DEV=/dev/your_sd_device
>> - > dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=512 skip=1 seek=1
>> - > dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=1 count=444
>> +.. code-block:: bash
>> +
>> +    $ DEV=/dev/your_sd_device
>> +    $ dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=512 skip=1 seek=1
>> +    $ dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=1 count=444
>> diff --git a/board/amlogic/q200/README.khadas-vim2 b/doc/board/amlogic/khadas-vim2.rst
>> similarity index 26%
>> rename from board/amlogic/q200/README.khadas-vim2
>> rename to doc/board/amlogic/khadas-vim2.rst
>> index 595998c4fa..c57d96d8b0 100644
>> --- a/board/amlogic/q200/README.khadas-vim2
>> +++ b/doc/board/amlogic/khadas-vim2.rst
>> @@ -1,3 +1,5 @@
>> +.. SPDX-License-Identifier: GPL-2.0+
>> +
>>  U-Boot for Khadas VIM2
>>  =======================
>>
>> @@ -17,86 +19,84 @@ Technology Co., Ltd with the following specifications:
>>   - SDIO Wifi Module, Bluetooth
>>   - Two channels IR receiver
>>
>> -Currently the u-boot port supports the following devices:
>> - - serial
>> - - eMMC, microSD
>> - - Ethernet
>> - - I2C
>> - - Regulators
>> - - Reset controller
>> - - Clock controller
>> - - USB Host
>> - - ADC
>> -
>>  U-Boot compilation
>> -==================
>> +------------------
>> +
>> +.. code-block:: bash
>>
>> - > export CROSS_COMPILE=aarch64-none-elf-
>> - > make khadas-vim2_defconfig
>> - > make
>> +    $ export CROSS_COMPILE=aarch64-none-elf-
>> +    $ make khadas-vim2_defconfig
>> +    $ make
>>
>>  Image creation
>> -==============
>> +--------------
>>
>>  Amlogic doesn't provide sources for the firmware and for tools needed
>>  to create the bootloader image, so it is necessary to obtain them from
>>  the git tree published by the board vendor:
>>
>> - > wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> - > wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> - > tar xvfJ gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> - > tar xvfJ gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> - > export PATH=$PWD/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux/bin:$PWD/gcc-linaro-arm-none-eabi-4.8-2013.11_linux/bin:$PATH
>> - > git clone https://github.com/khadas/u-boot -b khadas-vim-v2015.01 vim-u-boot
>> - > cd vim-u-boot
>> - > make kvim2_defconfig
>> - > make
>> - > export FIPDIR=$PWD/fip
>> +.. code-block:: bash
>> +
>> +    $ wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> +    $ wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> +    $ tar xvfJ gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> +    $ tar xvfJ gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> +    $ export PATH=$PWD/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux/bin:$PWD/gcc-linaro-arm-none-eabi-4.8-2013.11_linux/bin:$PATH
>> +    $ git clone https://github.com/khadas/u-boot -b khadas-vim-v2015.01 vim-u-boot
>> +    $ cd vim-u-boot
>> +    $ make kvim2_defconfig
>> +    $ make
>> +    $ export FIPDIR=$PWD/fip
>>
>>  Go back to mainline U-Boot source tree then :
>> - > mkdir fip
>> -
>> - > cp $FIPDIR/gxl/bl2.bin fip/
>> - > cp $FIPDIR/gxl/acs.bin fip/
>> - > cp $FIPDIR/gxl/bl21.bin fip/
>> - > cp $FIPDIR/gxl/bl30.bin fip/
>> - > cp $FIPDIR/gxl/bl301.bin fip/
>> - > cp $FIPDIR/gxl/bl31.img fip/
>> - > cp u-boot.bin fip/bl33.bin
>> -
>> - > $FIPDIR/blx_fix.sh \
>> -       fip/bl30.bin \
>> -       fip/zero_tmp \
>> -       fip/bl30_zero.bin \
>> -       fip/bl301.bin \
>> -       fip/bl301_zero.bin \
>> -       fip/bl30_new.bin \
>> -       bl30
>> -
>> - > python $FIPDIR/acs_tool.pyc fip/bl2.bin fip/bl2_acs.bin fip/acs.bin 0
>> -
>> - > $FIPDIR/blx_fix.sh \
>> -       fip/bl2_acs.bin \
>> -       fip/zero_tmp \
>> -       fip/bl2_zero.bin \
>> -       fip/bl21.bin \
>> -       fip/bl21_zero.bin \
>> -       fip/bl2_new.bin \
>> -       bl2
>> -
>> - > $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl30_new.bin
>> - > $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl31.img
>> - > $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl33.bin
>> - > $FIPDIR/gxl/aml_encrypt_gxl --bl2sig --input fip/bl2_new.bin --output fip/bl2.n.bin.sig
>> - > $FIPDIR/gxl/aml_encrypt_gxl --bootmk \
>> -               --output fip/u-boot.bin \
>> -               --bl2 fip/bl2.n.bin.sig \
>> -               --bl30 fip/bl30_new.bin.enc \
>> -               --bl31 fip/bl31.img.enc \
>> -               --bl33 fip/bl33.bin.enc
>> +
>> +.. code-block:: bash
>> +
>> +    $ mkdir fip
>> +
>> +    $ cp $FIPDIR/gxl/bl2.bin fip/
>> +    $ cp $FIPDIR/gxl/acs.bin fip/
>> +    $ cp $FIPDIR/gxl/bl21.bin fip/
>> +    $ cp $FIPDIR/gxl/bl30.bin fip/
>> +    $ cp $FIPDIR/gxl/bl301.bin fip/
>> +    $ cp $FIPDIR/gxl/bl31.img fip/
>> +    $ cp u-boot.bin fip/bl33.bin
>> +
>> +    $ $FIPDIR/blx_fix.sh \
>> +       fip/bl30.bin \
>> +       fip/zero_tmp \
>> +       fip/bl30_zero.bin \
>> +       fip/bl301.bin \
>> +       fip/bl301_zero.bin \
>> +       fip/bl30_new.bin \
>> +       bl30
>> +
>> +    $ python $FIPDIR/acs_tool.pyc fip/bl2.bin fip/bl2_acs.bin fip/acs.bin 0
>> +
>> +    $ $FIPDIR/blx_fix.sh \
>> +       fip/bl2_acs.bin \
>> +       fip/zero_tmp \
>> +       fip/bl2_zero.bin \
>> +       fip/bl21.bin \
>> +       fip/bl21_zero.bin \
>> +       fip/bl2_new.bin \
>> +       bl2
>> +
>> +    $ $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl30_new.bin
>> +    $ $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl31.img
>> +    $ $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl33.bin
>> +    $ $FIPDIR/gxl/aml_encrypt_gxl --bl2sig --input fip/bl2_new.bin --output fip/bl2.n.bin.sig
>> +    $ $FIPDIR/gxl/aml_encrypt_gxl --bootmk \
>> +               --output fip/u-boot.bin \
>> +               --bl2 fip/bl2.n.bin.sig \
>> +               --bl30 fip/bl30_new.bin.enc \
>> +               --bl31 fip/bl31.img.enc \
>> +               --bl33 fip/bl33.bin.enc
>>
>>  and then write the image to SD with:
>>
>> - > DEV=/dev/your_sd_device
>> - > dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=512 skip=1 seek=1
>> - > dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=1 count=444
>> +.. code-block:: bash
>> +
>> +    $ DEV=/dev/your_sd_device
>> +    $ dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=512 skip=1 seek=1
>> +    $ dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=1 count=444
>> diff --git a/board/amlogic/w400/README.khadas-vim3 b/doc/board/amlogic/khadas-vim3.rst
>> similarity index 20%
>> rename from board/amlogic/w400/README.khadas-vim3
>> rename to doc/board/amlogic/khadas-vim3.rst
>> index 399bf49295..161ccc3ca3 100644
>> --- a/board/amlogic/w400/README.khadas-vim3
>> +++ b/doc/board/amlogic/khadas-vim3.rst
>> @@ -16,116 +16,115 @@ Technology Co., Ltd. with the following specifications:
>>
>>  Schematics are available on the manufacturer website.
>>
>> -Currently the U-Boot port supports the following devices:
>> - - serial
>> - - eMMC, microSD
>> - - Ethernet
>> - - I2C
>> - - Regulators
>> - - Reset controller
>> - - Clock controller
>> - - ADC
>> +U-Boot compilation
>> +------------------
>>
>> -u-boot compilation
>> -==================
>> +.. code-block:: bash
>>
>> - > export CROSS_COMPILE=aarch64-none-elf-
>> - > make khadas-vim3_defconfig
>> - > make
>> +    $ export CROSS_COMPILE=aarch64-none-elf-
>> +    $ make khadas-vim3_defconfig
>> +    $ make
>>
>>  Image creation
>> -==============
>> +--------------
>>
>>  Amlogic doesn't provide sources for the firmware and for tools needed
>>  to create the bootloader image, so it is necessary to obtain them from
>>  the git tree published by the board vendor:
>>
>> - > wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> - > wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> - > tar xvfJ gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> - > tar xvfJ gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> - > export PATH=$PWD/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux/bin:$PWD/gcc-linaro-arm-none-eabi-4.8-2013.11_linux/bin:$PATH
>> +.. code-block:: bash
>> +
>> +    $ wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> +    $ wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> +    $ tar xvfJ gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> +    $ tar xvfJ gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> +    $ export PATH=$PWD/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux/bin:$PWD/gcc-linaro-arm-none-eabi-4.8-2013.11_linux/bin:$PATH
>>
>> - > DIR=vim3-u-boot
>> - > git clone --depth 1 \
>> +    $ DIR=vim3-u-boot
>> +    $ git clone --depth 1 \
>>         https://github.com/khadas/u-boot.git -b khadas-vims-v2015.01 \
>>         $DIR
>>
>> - > cd vim3-u-boot
>> - > make kvim3_defconfig
>> - > make
>> - > export UBOOTDIR=$PWD
>> +    $ cd vim3-u-boot
>> +    $ make kvim3_defconfig
>> +    $ make
>> +    $ export UBOOTDIR=$PWD
>>
>>   Go back to mainline U-Boot source tree then :
>> - > mkdir fip
>> -
>> - > cp $UBOOTDIR/build/scp_task/bl301.bin fip/
>> - > cp $UBOOTDIR/build/board/khadas/kvim3/firmware/acs.bin fip/
>> - > cp $UBOOTDIR/fip/g12b/bl2.bin fip/
>> - > cp $UBOOTDIR/fip/g12b/bl30.bin fip/
>> - > cp $UBOOTDIR/fip/g12b/bl31.img fip/
>> - > cp $UBOOTDIR/fip/g12b/ddr3_1d.fw fip/
>> - > cp $UBOOTDIR/fip/g12b/ddr4_1d.fw fip/
>> - > cp $UBOOTDIR/fip/g12b/ddr4_2d.fw fip/
>> - > cp $UBOOTDIR/fip/g12b/diag_lpddr4.fw fip/
>> - > cp $UBOOTDIR/fip/g12b/lpddr3_1d.fw fip/
>> - > cp $UBOOTDIR/fip/g12b/lpddr4_1d.fw fip/
>> - > cp $UBOOTDIR/fip/g12b/lpddr4_2d.fw fip/
>> - > cp $UBOOTDIR/fip/g12b/piei.fw fip/
>> - > cp $UBOOTDIR/fip/g12b/aml_ddr.fw fip/
>> - > cp u-boot.bin fip/bl33.bin
>> -
>> - > sh fip/blx_fix.sh \
>> -       fip/bl30.bin \
>> -       fip/zero_tmp \
>> -       fip/bl30_zero.bin \
>> -       fip/bl301.bin \
>> -       fip/bl301_zero.bin \
>> -       fip/bl30_new.bin \
>> -       bl30
>> -
>> - > sh fip/blx_fix.sh \
>> -       fip/bl2.bin \
>> -       fip/zero_tmp \
>> -       fip/bl2_zero.bin \
>> -       fip/acs.bin \
>> -       fip/bl21_zero.bin \
>> -       fip/bl2_new.bin \
>> -       bl2
>> -
>> - > $UBOOTDIR/fip/g12b/aml_encrypt_g12b --bl30sig --input fip/bl30_new.bin \
>> -                                       --output fip/bl30_new.bin.g12a.enc \
>> -                                       --level v3
>> - > $UBOOTDIR/fip/g12b/aml_encrypt_g12b --bl3sig --input fip/bl30_new.bin.g12a.enc \
>> -                                       --output fip/bl30_new.bin.enc \
>> -                                       --level v3 --type bl30
>> - > $UBOOTDIR/fip/g12b/aml_encrypt_g12b --bl3sig --input fip/bl31.img \
>> -                                       --output fip/bl31.img.enc \
>> -                                       --level v3 --type bl31
>> - > $UBOOTDIR/fip/g12b/aml_encrypt_g12b --bl3sig --input fip/bl33.bin --compress lz4 \
>> -                                       --output fip/bl33.bin.enc \
>> -                                       --level v3 --type bl33 --compress lz4
>> - > $UBOOTDIR/fip/g12b/aml_encrypt_g12b --bl2sig --input fip/bl2_new.bin \
>> -                                       --output fip/bl2.n.bin.sig
>> - > $UBOOTDIR/fip/g12b/aml_encrypt_g12b --bootmk \
>> -               --output fip/u-boot.bin \
>> -               --bl2 fip/bl2.n.bin.sig \
>> -               --bl30 fip/bl30_new.bin.enc \
>> -               --bl31 fip/bl31.img.enc \
>> -               --bl33 fip/bl33.bin.enc \
>> -               --ddrfw1 fip/ddr4_1d.fw \
>> -               --ddrfw2 fip/ddr4_2d.fw \
>> -               --ddrfw3 fip/ddr3_1d.fw \
>> -               --ddrfw4 fip/piei.fw \
>> -               --ddrfw5 fip/lpddr4_1d.fw \
>> -               --ddrfw6 fip/lpddr4_2d.fw \
>> -               --ddrfw7 fip/diag_lpddr4.fw \
>> -               --ddrfw8 fip/aml_ddr.fw \
>> -               --ddrfw9 fip/lpddr3_1d.fw \
>> -               --level v3
>> +
>> +.. code-block:: bash
>> +
>> +    $ mkdir fip
>> +
>> +    $ cp $UBOOTDIR/build/scp_task/bl301.bin fip/
>> +    $ cp $UBOOTDIR/build/board/khadas/kvim3/firmware/acs.bin fip/
>> +    $ cp $UBOOTDIR/fip/g12b/bl2.bin fip/
>> +    $ cp $UBOOTDIR/fip/g12b/bl30.bin fip/
>> +    $ cp $UBOOTDIR/fip/g12b/bl31.img fip/
>> +    $ cp $UBOOTDIR/fip/g12b/ddr3_1d.fw fip/
>> +    $ cp $UBOOTDIR/fip/g12b/ddr4_1d.fw fip/
>> +    $ cp $UBOOTDIR/fip/g12b/ddr4_2d.fw fip/
>> +    $ cp $UBOOTDIR/fip/g12b/diag_lpddr4.fw fip/
>> +    $ cp $UBOOTDIR/fip/g12b/lpddr3_1d.fw fip/
>> +    $ cp $UBOOTDIR/fip/g12b/lpddr4_1d.fw fip/
>> +    $ cp $UBOOTDIR/fip/g12b/lpddr4_2d.fw fip/
>> +    $ cp $UBOOTDIR/fip/g12b/piei.fw fip/
>> +    $ cp $UBOOTDIR/fip/g12b/aml_ddr.fw fip/
>> +    $ cp u-boot.bin fip/bl33.bin
>> +
>> +    $ sh fip/blx_fix.sh \
>> +       fip/bl30.bin \
>> +       fip/zero_tmp \
>> +       fip/bl30_zero.bin \
>> +       fip/bl301.bin \
>> +       fip/bl301_zero.bin \
>> +       fip/bl30_new.bin \
>> +       bl30
>> +
>> +    $ sh fip/blx_fix.sh \
>> +       fip/bl2.bin \
>> +       fip/zero_tmp \
>> +       fip/bl2_zero.bin \
>> +       fip/acs.bin \
>> +       fip/bl21_zero.bin \
>> +       fip/bl2_new.bin \
>> +       bl2
>> +
>> +    $ $UBOOTDIR/fip/g12b/aml_encrypt_g12b --bl30sig --input fip/bl30_new.bin \
>> +                                       --output fip/bl30_new.bin.g12a.enc \
>> +                                       --level v3
>> +    $ $UBOOTDIR/fip/g12b/aml_encrypt_g12b --bl3sig --input fip/bl30_new.bin.g12a.enc \
>> +                                       --output fip/bl30_new.bin.enc \
>> +                                       --level v3 --type bl30
>> +    $ $UBOOTDIR/fip/g12b/aml_encrypt_g12b --bl3sig --input fip/bl31.img \
>> +                                       --output fip/bl31.img.enc \
>> +                                       --level v3 --type bl31
>> +    $ $UBOOTDIR/fip/g12b/aml_encrypt_g12b --bl3sig --input fip/bl33.bin --compress lz4 \
>> +                                       --output fip/bl33.bin.enc \
>> +                                       --level v3 --type bl33 --compress lz4
>> +    $ $UBOOTDIR/fip/g12b/aml_encrypt_g12b --bl2sig --input fip/bl2_new.bin \
>> +                                       --output fip/bl2.n.bin.sig
>> +    $ $UBOOTDIR/fip/g12b/aml_encrypt_g12b --bootmk \
>> +               --output fip/u-boot.bin \
>> +               --bl2 fip/bl2.n.bin.sig \
>> +               --bl30 fip/bl30_new.bin.enc \
>> +               --bl31 fip/bl31.img.enc \
>> +               --bl33 fip/bl33.bin.enc \
>> +               --ddrfw1 fip/ddr4_1d.fw \
>> +               --ddrfw2 fip/ddr4_2d.fw \
>> +               --ddrfw3 fip/ddr3_1d.fw \
>> +               --ddrfw4 fip/piei.fw \
>> +               --ddrfw5 fip/lpddr4_1d.fw \
>> +               --ddrfw6 fip/lpddr4_2d.fw \
>> +               --ddrfw7 fip/diag_lpddr4.fw \
>> +               --ddrfw8 fip/aml_ddr.fw \
>> +               --ddrfw9 fip/lpddr3_1d.fw \
>> +               --level v3
>>
>>  and then write the image to SD with:
>>
>> - > DEV=/dev/your_sd_device
>> - > dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=512 skip=1 seek=1
>> - > dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=1 count=444
>> +.. code-block:: bash
>> +
>> +    $ DEV=/dev/your_sd_device
>> +    $ dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=512 skip=1 seek=1
>> +    $ dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=1 count=444
>> diff --git a/board/amlogic/w400/README.khadas-vim3l b/doc/board/amlogic/khadas-vim3l.rst
>> similarity index 19%
>> rename from board/amlogic/w400/README.khadas-vim3l
>> rename to doc/board/amlogic/khadas-vim3l.rst
>> index b2d9abbfd9..9368359d5b 100644
>> --- a/board/amlogic/w400/README.khadas-vim3l
>> +++ b/doc/board/amlogic/khadas-vim3l.rst
>> @@ -16,116 +16,113 @@ Technology Co., Ltd. with the following specifications:
>>
>>  Schematics are available on the manufacturer website.
>>
>> -Currently the U-Boot port supports the following devices:
>> - - serial
>> - - eMMC, microSD
>> - - Ethernet
>> - - I2C
>> - - Regulators
>> - - Reset controller
>> - - Clock controller
>> - - ADC
>> -
>> -u-boot compilation
>> -==================
>> +U-Boot compilation
>> +------------------
>>
>> - > export CROSS_COMPILE=aarch64-none-elf-
>> - > make khadas-vim3l_defconfig
>> - > make
>> +    $ export CROSS_COMPILE=aarch64-none-elf-
>> +    $ make khadas-vim3l_defconfig
>> +    $ make
>>
>>  Image creation
>> -==============
>> +--------------
>>
>>  Amlogic doesn't provide sources for the firmware and for tools needed
>>  to create the bootloader image, so it is necessary to obtain them from
>>  the git tree published by the board vendor:
>>
>> - > wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> - > wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> - > tar xvfJ gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> - > tar xvfJ gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> - > export PATH=$PWD/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux/bin:$PWD/gcc-linaro-arm-none-eabi-4.8-2013.11_linux/bin:$PATH
>> +.. code-block:: bash
>> +
>> +    $ wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> +    $ wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> +    $ tar xvfJ gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> +    $ tar xvfJ gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> +    $ export PATH=$PWD/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux/bin:$PWD/gcc-linaro-arm-none-eabi-4.8-2013.11_linux/bin:$PATH
>>
>> - > DIR=vim3l-u-boot
>> - > git clone --depth 1 \
>> +    $ DIR=vim3l-u-boot
>> +    $ git clone --depth 1 \
>>         https://github.com/khadas/u-boot.git -b khadas-vims-v2015.01 \
>>         $DIR
>>
>> - > cd vim3l-u-boot
>> - > make kvim3l_defconfig
>> - > make
>> - > export UBOOTDIR=$PWD
>> +    $ cd vim3l-u-boot
>> +    $ make kvim3l_defconfig
>> +    $ make
>> +    $ export UBOOTDIR=$PWD
>>
>>   Go back to mainline U-Boot source tree then :
>> - > mkdir fip
>> -
>> - > cp $UBOOTDIR/build/scp_task/bl301.bin fip/
>> - > cp $UBOOTDIR/build/board/khadas/kvim3l/firmware/acs.bin fip/
>> - > cp $UBOOTDIR/fip/g12a/bl2.bin fip/
>> - > cp $UBOOTDIR/fip/g12a/bl30.bin fip/
>> - > cp $UBOOTDIR/fip/g12a/bl31.img fip/
>> - > cp $UBOOTDIR/fip/g12a/ddr3_1d.fw fip/
>> - > cp $UBOOTDIR/fip/g12a/ddr4_1d.fw fip/
>> - > cp $UBOOTDIR/fip/g12a/ddr4_2d.fw fip/
>> - > cp $UBOOTDIR/fip/g12a/diag_lpddr4.fw fip/
>> - > cp $UBOOTDIR/fip/g12a/lpddr3_1d.fw fip/
>> - > cp $UBOOTDIR/fip/g12a/lpddr4_1d.fw fip/
>> - > cp $UBOOTDIR/fip/g12a/lpddr4_2d.fw fip/
>> - > cp $UBOOTDIR/fip/g12a/piei.fw fip/
>> - > cp $UBOOTDIR/fip/g12a/aml_ddr.fw fip/
>> - > cp u-boot.bin fip/bl33.bin
>> -
>> - > sh fip/blx_fix.sh \
>> -       fip/bl30.bin \
>> -       fip/zero_tmp \
>> -       fip/bl30_zero.bin \
>> -       fip/bl301.bin \
>> -       fip/bl301_zero.bin \
>> -       fip/bl30_new.bin \
>> -       bl30
>> -
>> - > sh fip/blx_fix.sh \
>> -       fip/bl2.bin \
>> -       fip/zero_tmp \
>> -       fip/bl2_zero.bin \
>> -       fip/acs.bin \
>> -       fip/bl21_zero.bin \
>> -       fip/bl2_new.bin \
>> -       bl2
>> -
>> - > $UBOOTDIR/fip/g12a/aml_encrypt_g12a --bl30sig --input fip/bl30_new.bin \
>> -                                       --output fip/bl30_new.bin.g12a.enc \
>> -                                       --level v3
>> - > $UBOOTDIR/fip/g12a/aml_encrypt_g12a --bl3sig --input fip/bl30_new.bin.g12a.enc \
>> -                                       --output fip/bl30_new.bin.enc \
>> -                                       --level v3 --type bl30
>> - > $UBOOTDIR/fip/g12a/aml_encrypt_g12a --bl3sig --input fip/bl31.img \
>> -                                       --output fip/bl31.img.enc \
>> -                                       --level v3 --type bl31
>> - > $UBOOTDIR/fip/g12a/aml_encrypt_g12a --bl3sig --input fip/bl33.bin --compress lz4 \
>> -                                       --output fip/bl33.bin.enc \
>> -                                       --level v3 --type bl33 --compress lz4
>> - > $UBOOTDIR/fip/g12a/aml_encrypt_g12a --bl2sig --input fip/bl2_new.bin \
>> -                                       --output fip/bl2.n.bin.sig
>> - > $UBOOTDIR/fip/g12a/aml_encrypt_g12a --bootmk \
>> -               --output fip/u-boot.bin \
>> -               --bl2 fip/bl2.n.bin.sig \
>> -               --bl30 fip/bl30_new.bin.enc \
>> -               --bl31 fip/bl31.img.enc \
>> -               --bl33 fip/bl33.bin.enc \
>> -               --ddrfw1 fip/ddr4_1d.fw \
>> -               --ddrfw2 fip/ddr4_2d.fw \
>> -               --ddrfw3 fip/ddr3_1d.fw \
>> -               --ddrfw4 fip/piei.fw \
>> -               --ddrfw5 fip/lpddr4_1d.fw \
>> -               --ddrfw6 fip/lpddr4_2d.fw \
>> -               --ddrfw7 fip/diag_lpddr4.fw \
>> -               --ddrfw8 fip/aml_ddr.fw \
>> -               --ddrfw9 fip/lpddr3_1d.fw \
>> -               --level v3
>> +
>> +.. code-block:: bash
>> +
>> +    $ mkdir fip
>> +
>> +    $ cp $UBOOTDIR/build/scp_task/bl301.bin fip/
>> +    $ cp $UBOOTDIR/build/board/khadas/kvim3l/firmware/acs.bin fip/
>> +    $ cp $UBOOTDIR/fip/g12a/bl2.bin fip/
>> +    $ cp $UBOOTDIR/fip/g12a/bl30.bin fip/
>> +    $ cp $UBOOTDIR/fip/g12a/bl31.img fip/
>> +    $ cp $UBOOTDIR/fip/g12a/ddr3_1d.fw fip/
>> +    $ cp $UBOOTDIR/fip/g12a/ddr4_1d.fw fip/
>> +    $ cp $UBOOTDIR/fip/g12a/ddr4_2d.fw fip/
>> +    $ cp $UBOOTDIR/fip/g12a/diag_lpddr4.fw fip/
>> +    $ cp $UBOOTDIR/fip/g12a/lpddr3_1d.fw fip/
>> +    $ cp $UBOOTDIR/fip/g12a/lpddr4_1d.fw fip/
>> +    $ cp $UBOOTDIR/fip/g12a/lpddr4_2d.fw fip/
>> +    $ cp $UBOOTDIR/fip/g12a/piei.fw fip/
>> +    $ cp $UBOOTDIR/fip/g12a/aml_ddr.fw fip/
>> +    $ cp u-boot.bin fip/bl33.bin
>> +
>> +    $ sh fip/blx_fix.sh \
>> +       fip/bl30.bin \
>> +       fip/zero_tmp \
>> +       fip/bl30_zero.bin \
>> +       fip/bl301.bin \
>> +       fip/bl301_zero.bin \
>> +       fip/bl30_new.bin \
>> +       bl30
>> +
>> +    $ sh fip/blx_fix.sh \
>> +       fip/bl2.bin \
>> +       fip/zero_tmp \
>> +       fip/bl2_zero.bin \
>> +       fip/acs.bin \
>> +       fip/bl21_zero.bin \
>> +       fip/bl2_new.bin \
>> +       bl2
>> +
>> +    $ $UBOOTDIR/fip/g12a/aml_encrypt_g12a --bl30sig --input fip/bl30_new.bin \
>> +                                       --output fip/bl30_new.bin.g12a.enc \
>> +                                       --level v3
>> +    $ $UBOOTDIR/fip/g12a/aml_encrypt_g12a --bl3sig --input fip/bl30_new.bin.g12a.enc \
>> +                                       --output fip/bl30_new.bin.enc \
>> +                                       --level v3 --type bl30
>> +    $ $UBOOTDIR/fip/g12a/aml_encrypt_g12a --bl3sig --input fip/bl31.img \
>> +                                       --output fip/bl31.img.enc \
>> +                                       --level v3 --type bl31
>> +    $ $UBOOTDIR/fip/g12a/aml_encrypt_g12a --bl3sig --input fip/bl33.bin --compress lz4 \
>> +                                       --output fip/bl33.bin.enc \
>> +                                       --level v3 --type bl33 --compress lz4
>> +    $ $UBOOTDIR/fip/g12a/aml_encrypt_g12a --bl2sig --input fip/bl2_new.bin \
>> +                                       --output fip/bl2.n.bin.sig
>> +    $ $UBOOTDIR/fip/g12a/aml_encrypt_g12a --bootmk \
>> +               --output fip/u-boot.bin \
>> +               --bl2 fip/bl2.n.bin.sig \
>> +               --bl30 fip/bl30_new.bin.enc \
>> +               --bl31 fip/bl31.img.enc \
>> +               --bl33 fip/bl33.bin.enc \
>> +               --ddrfw1 fip/ddr4_1d.fw \
>> +               --ddrfw2 fip/ddr4_2d.fw \
>> +               --ddrfw3 fip/ddr3_1d.fw \
>> +               --ddrfw4 fip/piei.fw \
>> +               --ddrfw5 fip/lpddr4_1d.fw \
>> +               --ddrfw6 fip/lpddr4_2d.fw \
>> +               --ddrfw7 fip/diag_lpddr4.fw \
>> +               --ddrfw8 fip/aml_ddr.fw \
>> +               --ddrfw9 fip/lpddr3_1d.fw \
>> +               --level v3
>>
>>  and then write the image to SD with:
>>
>> - > DEV=/dev/your_sd_device
>> - > dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=512 skip=1 seek=1
>> - > dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=1 count=444
>> +.. code-block:: bash
>> +
>> +    $ DEV=/dev/your_sd_device
>> +    $ dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=512 skip=1 seek=1
>> +    $ dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=1 count=444
>> diff --git a/board/amlogic/p212/README.libretech-ac b/doc/board/amlogic/libretech-ac.rst
>> similarity index 21%
>> rename from board/amlogic/p212/README.libretech-ac
>> rename to doc/board/amlogic/libretech-ac.rst
>> index 3f713ec326..31fe4985e7 100644
>> --- a/board/amlogic/p212/README.libretech-ac
>> +++ b/doc/board/amlogic/libretech-ac.rst
>> @@ -16,87 +16,93 @@ with the following specifications:
>>
>>  Schematics are available on the manufacturer website.
>>
>> -Currently the U-Boot port supports the following devices:
>> - - serial
>> - - eMMC
>> - - Ethernet
>> - - USB
>> -
>>  U-Boot compilation
>> -==================
>> +------------------
>> +
>> +.. code-block:: bash
>>
>> - > export CROSS_COMPILE=aarch64-none-elf-
>> - > make libretech-ac_defconfig
>> - > make
>> +    $ export CROSS_COMPILE=aarch64-none-elf-
>> +    $ make libretech-ac_defconfig
>> +    $ make
>>
>>  Image creation
>> -==============
>> +--------------
>>
>>  Amlogic doesn't provide sources for the firmware and for tools needed
>>  to create the bootloader image, so it is necessary to obtain them from
>>  the git tree published by the board vendor:
>>
>> - > wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> - > wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> - > tar xvfJ gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> - > tar xvfJ gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> - > export PATH=$PWD/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux/bin:$PWD/gcc-linaro-arm-none-eabi-4.8-2013.11_linux/bin:$PATH
>> - > git clone https://github.com/BayLibre/u-boot.git -b libretech-ac amlogic-u-boot
>> - > cd amlogic-u-boot
>> - > wget https://raw.githubusercontent.com/BayLibre/u-boot/libretech-cc/fip/blx_fix.sh
>> - > make libretech_ac_defconfig
>> - > make
>> - > export UBOOTDIR=$PWD
>> +.. code-block:: bash
>> +
>> +    $ wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> +    $ wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> +    $ tar xvfJ gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> +    $ tar xvfJ gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> +    $ export PATH=$PWD/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux/bin:$PWD/gcc-linaro-arm-none-eabi-4.8-2013.11_linux/bin:$PATH
>> +    $ git clone https://github.com/BayLibre/u-boot.git -b libretech-ac amlogic-u-boot
>> +    $ cd amlogic-u-boot
>> +    $ wget https://raw.githubusercontent.com/BayLibre/u-boot/libretech-cc/fip/blx_fix.sh
>> +    $ make libretech_ac_defconfig
>> +    $ make
>> +    $ export UBOOTDIR=$PWD
>>
>>  Download the latest Amlogic Buildroot package, and extract it :
>> - > wget http://openlinux2.amlogic.com:8000/ARM/filesystem/Linux_BSP/buildroot_openlinux_kernel_4.9_fbdev_20180418.tar.gz
>> - > tar xfz buildroot_openlinux_kernel_4.9_fbdev_20180418.tar.gz buildroot_openlinux_kernel_4.9_fbdev_20180418/bootloader
>> - > export BRDIR=$PWD/buildroot_openlinux_kernel_4.9_fbdev_20180418
>> +
>> +.. code-block:: bash
>> +
>> +    $ wget http://openlinux2.amlogic.com:8000/ARM/filesystem/Linux_BSP/buildroot_openlinux_kernel_4.9_fbdev_20180418.tar.gz
>> +    $ tar xfz buildroot_openlinux_kernel_4.9_fbdev_20180418.tar.gz buildroot_openlinux_kernel_4.9_fbdev_20180418/bootloader
>> +    $ export BRDIR=$PWD/buildroot_openlinux_kernel_4.9_fbdev_20180418
>>
>>  Go back to mainline U-Boot source tree then :
>> - > mkdir fip
>> -
>> - > cp $UBOOTDIR/build/scp_task/bl301.bin fip/
>> - > cp $UBOOTDIR/build/board/amlogic/libretech_ac/firmware/bl21.bin fip/
>> - > cp $UBOOTDIR/build/board/amlogic/libretech_ac/firmware/acs.bin fip/
>> - > cp $BRDIR/bootloader/uboot-repo/bl2/bin/gxl/bl2.bin fip/
>> - > cp $BRDIR/bootloader/uboot-repo/bl30/bin/gxl/bl30.bin fip/
>> - > cp $BRDIR/bootloader/uboot-repo/bl31/bin/gxl/bl31.img fip/
>> - > cp u-boot.bin fip/bl33.bin
>> -
>> - > sh $UBOOTDIR/blx_fix.sh \
>> -       fip/bl30.bin \
>> -       fip/zero_tmp \
>> -       fip/bl30_zero.bin \
>> -       fip/bl301.bin \
>> -       fip/bl301_zero.bin \
>> -       fip/bl30_new.bin \
>> -       bl30
>> -
>> - > $BRDIR/bootloader/uboot-repo/fip/acs_tool.pyc fip/bl2.bin fip/bl2_acs.bin fip/acs.bin 0
>> -
>> - > sh $UBOOTDIR/blx_fix.sh \
>> -       fip/bl2_acs.bin \
>> -       fip/zero_tmp \
>> -       fip/bl2_zero.bin \
>> -       fip/bl21.bin \
>> -       fip/bl21_zero.bin \
>> -       fip/bl2_new.bin \
>> -       bl2
>> -
>> - > $BRDIR/bootloader/uboot-repo/fip/gxl/aml_encrypt_gxl --bl3enc --input fip/bl30_new.bin
>> - > $BRDIR/bootloader/uboot-repo/fip/gxl/aml_encrypt_gxl --bl3enc --input fip/bl31.img
>> - > $BRDIR/bootloader/uboot-repo/fip/gxl/aml_encrypt_gxl --bl3enc --input fip/bl33.bin
>> - > $BRDIR/bootloader/uboot-repo/fip/gxl/aml_encrypt_gxl --bl2sig --input fip/bl2_new.bin --output fip/bl2.n.bin.sig
>> - > $BRDIR/bootloader/uboot-repo/fip/gxl/aml_encrypt_gxl --bootmk \
>> -               --output fip/u-boot.bin \
>> -               --bl2 fip/bl2.n.bin.sig \
>> -               --bl30 fip/bl30_new.bin.enc \
>> -               --bl31 fip/bl31.img.enc \
>> -               --bl33 fip/bl33.bin.enc
>> +
>> +.. code-block:: bash
>> +
>> +    $ mkdir fip
>> +
>> +    $ cp $UBOOTDIR/build/scp_task/bl301.bin fip/
>> +    $ cp $UBOOTDIR/build/board/amlogic/libretech_ac/firmware/bl21.bin fip/
>> +    $ cp $UBOOTDIR/build/board/amlogic/libretech_ac/firmware/acs.bin fip/
>> +    $ cp $BRDIR/bootloader/uboot-repo/bl2/bin/gxl/bl2.bin fip/
>> +    $ cp $BRDIR/bootloader/uboot-repo/bl30/bin/gxl/bl30.bin fip/
>> +    $ cp $BRDIR/bootloader/uboot-repo/bl31/bin/gxl/bl31.img fip/
>> +    $ cp u-boot.bin fip/bl33.bin
>> +
>> +    $ sh $UBOOTDIR/blx_fix.sh \
>> +       fip/bl30.bin \
>> +       fip/zero_tmp \
>> +       fip/bl30_zero.bin \
>> +       fip/bl301.bin \
>> +       fip/bl301_zero.bin \
>> +       fip/bl30_new.bin \
>> +       bl30
>> +
>> +    $ $BRDIR/bootloader/uboot-repo/fip/acs_tool.pyc fip/bl2.bin fip/bl2_acs.bin fip/acs.bin 0
>> +
>> +    $ sh $UBOOTDIR/blx_fix.sh \
>> +       fip/bl2_acs.bin \
>> +       fip/zero_tmp \
>> +       fip/bl2_zero.bin \
>> +       fip/bl21.bin \
>> +       fip/bl21_zero.bin \
>> +       fip/bl2_new.bin \
>> +       bl2
>> +
>> +    $ $BRDIR/bootloader/uboot-repo/fip/gxl/aml_encrypt_gxl --bl3enc --input fip/bl30_new.bin
>> +    $ $BRDIR/bootloader/uboot-repo/fip/gxl/aml_encrypt_gxl --bl3enc --input fip/bl31.img
>> +    $ $BRDIR/bootloader/uboot-repo/fip/gxl/aml_encrypt_gxl --bl3enc --input fip/bl33.bin
>> +    $ $BRDIR/bootloader/uboot-repo/fip/gxl/aml_encrypt_gxl --bl2sig --input fip/bl2_new.bin --output fip/bl2.n.bin.sig
>> +    $ $BRDIR/bootloader/uboot-repo/fip/gxl/aml_encrypt_gxl --bootmk \
>> +               --output fip/u-boot.bin \
>> +               --bl2 fip/bl2.n.bin.sig \
>> +               --bl30 fip/bl30_new.bin.enc \
>> +               --bl31 fip/bl31.img.enc \
>> +               --bl33 fip/bl33.bin.enc
>>
>>  and then write the image to SD with:
>>
>> - > DEV=/dev/your_sd_device
>> - > dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=512 skip=1 seek=1
>> - > dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=1 count=444
>> +.. code-block:: bash
>> +
>> +    $ DEV=/dev/your_sd_device
>> +    $ dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=512 skip=1 seek=1
>> +    $ dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=1 count=444
>> diff --git a/board/amlogic/p212/README.libretech-cc b/doc/board/amlogic/libretech-cc.rst
>> similarity index 46%
>> rename from board/amlogic/p212/README.libretech-cc
>> rename to doc/board/amlogic/libretech-cc.rst
>> index 74434d4435..5657f2c887 100644
>> --- a/board/amlogic/p212/README.libretech-cc
>> +++ b/doc/board/amlogic/libretech-cc.rst
>> @@ -16,26 +16,17 @@ with the following specifications:
>>
>>  Schematics are available on the manufacturer website.
>>
>> -Currently the U-Boot port supports the following devices:
>> - - serial
>> - - eMMC, microSD
>> - - Ethernet
>> - - I2C
>> - - Regulators
>> - - Reset controller
>> - - Clock controller
>> - - USB Host
>> - - ADC
>> -
>>  U-Boot compilation
>> -==================
>> +------------------
>> +
>> +.. code-block:: bash
>>
>> - > export CROSS_COMPILE=aarch64-none-elf-
>> - > make libretech-cc_defconfig
>> - > make
>> +    $ export CROSS_COMPILE=aarch64-none-elf-
>> +    $ make libretech-cc_defconfig
>> +    $ make
>>
>>  Image creation
>> -==============
>> +--------------
>>
>>  To boot the system, u-boot must be combined with several earlier stage
>>  bootloaders:
>> @@ -53,74 +44,82 @@ for convenience at <https://github.com/BayLibre/u-boot/releases/>
>>  Download and extract the libretech-cc release from there, and set FIPDIR to
>>  point to the `fip` subdirectory.
>>
>> - > export FIPDIR=/path/to/extracted/fip
>> +.. code-block:: bash
>> +
>> +    $ export FIPDIR=/path/to/extracted/fip
>>
>>  Alternatively, you can obtain the original vendor u-boot tree which
>>  contains the required blobs and sources, and build yourself.
>>  Note that old compilers are required for this to build. The compilers here
>>  are suggested by Amlogic, and they are 32-bit x86 binaries.
>>
>> - > wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> - > wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> - > tar xvfJ gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> - > tar xvfJ gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> - > export PATH=$PWD/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux/bin:$PWD/gcc-linaro-arm-none-eabi-4.8-2013.11_linux/bin:$PATH
>> - > git clone https://github.com/BayLibre/u-boot.git -b libretech-cc amlogic-u-boot
>> - > cd amlogic-u-boot
>> - > make libretech_cc_defconfig
>> - > make
>> - > export FIPDIR=$PWD/fip
>> +.. code-block:: bash
>> +
>> +    $ wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> +    $ wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> +    $ tar xvfJ gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> +    $ tar xvfJ gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> +    $ export PATH=$PWD/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux/bin:$PWD/gcc-linaro-arm-none-eabi-4.8-2013.11_linux/bin:$PATH
>> +    $ git clone https://github.com/BayLibre/u-boot.git -b libretech-cc amlogic-u-boot
>> +    $ cd amlogic-u-boot
>> +    $ make libretech_cc_defconfig
>> +    $ make
>> +    $ export FIPDIR=$PWD/fip
>>
>>  Once you have the binaries available (either through the prebuilt download,
>>  or having built the vendor u-boot yourself), you can then proceed to glue
>>  everything together. Go back to mainline U-Boot source tree then :
>>
>> - > mkdir fip
>> -
>> - > cp $FIPDIR/gxl/bl2.bin fip/
>> - > cp $FIPDIR/gxl/acs.bin fip/
>> - > cp $FIPDIR/gxl/bl21.bin fip/
>> - > cp $FIPDIR/gxl/bl30.bin fip/
>> - > cp $FIPDIR/gxl/bl301.bin fip/
>> - > cp $FIPDIR/gxl/bl31.img fip/
>> - > cp u-boot.bin fip/bl33.bin
>> -
>> - > $FIPDIR/blx_fix.sh \
>> -       fip/bl30.bin \
>> -       fip/zero_tmp \
>> -       fip/bl30_zero.bin \
>> -       fip/bl301.bin \
>> -       fip/bl301_zero.bin \
>> -       fip/bl30_new.bin \
>> -       bl30
>> -
>> - > $FIPDIR/acs_tool.pyc fip/bl2.bin fip/bl2_acs.bin fip/acs.bin 0
>> -
>> - > $FIPDIR/blx_fix.sh \
>> -       fip/bl2_acs.bin \
>> -       fip/zero_tmp \
>> -       fip/bl2_zero.bin \
>> -       fip/bl21.bin \
>> -       fip/bl21_zero.bin \
>> -       fip/bl2_new.bin \
>> -       bl2
>> -
>> - > $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl30_new.bin
>> - > $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl31.img
>> - > $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl33.bin
>> - > $FIPDIR/gxl/aml_encrypt_gxl --bl2sig --input fip/bl2_new.bin --output fip/bl2.n.bin.sig
>> - > $FIPDIR/gxl/aml_encrypt_gxl --bootmk \
>> -               --output fip/u-boot.bin \
>> -               --bl2 fip/bl2.n.bin.sig \
>> -               --bl30 fip/bl30_new.bin.enc \
>> -               --bl31 fip/bl31.img.enc \
>> -               --bl33 fip/bl33.bin.enc
>> +.. code-block:: bash
>> +
>> +    $ mkdir fip
>> +
>> +    $ cp $FIPDIR/gxl/bl2.bin fip/
>> +    $ cp $FIPDIR/gxl/acs.bin fip/
>> +    $ cp $FIPDIR/gxl/bl21.bin fip/
>> +    $ cp $FIPDIR/gxl/bl30.bin fip/
>> +    $ cp $FIPDIR/gxl/bl301.bin fip/
>> +    $ cp $FIPDIR/gxl/bl31.img fip/
>> +    $ cp u-boot.bin fip/bl33.bin
>> +
>> +    $ $FIPDIR/blx_fix.sh \
>> +       fip/bl30.bin \
>> +       fip/zero_tmp \
>> +       fip/bl30_zero.bin \
>> +       fip/bl301.bin \
>> +       fip/bl301_zero.bin \
>> +       fip/bl30_new.bin \
>> +       bl30
>> +
>> +    $ $FIPDIR/acs_tool.pyc fip/bl2.bin fip/bl2_acs.bin fip/acs.bin 0
>> +
>> +    $ $FIPDIR/blx_fix.sh \
>> +       fip/bl2_acs.bin \
>> +       fip/zero_tmp \
>> +       fip/bl2_zero.bin \
>> +       fip/bl21.bin \
>> +       fip/bl21_zero.bin \
>> +       fip/bl2_new.bin \
>> +       bl2
>> +
>> +    $ $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl30_new.bin
>> +    $ $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl31.img
>> +    $ $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl33.bin
>> +    $ $FIPDIR/gxl/aml_encrypt_gxl --bl2sig --input fip/bl2_new.bin --output fip/bl2.n.bin.sig
>> +    $ $FIPDIR/gxl/aml_encrypt_gxl --bootmk \
>> +               --output fip/u-boot.bin \
>> +               --bl2 fip/bl2.n.bin.sig \
>> +               --bl30 fip/bl30_new.bin.enc \
>> +               --bl31 fip/bl31.img.enc \
>> +               --bl33 fip/bl33.bin.enc
>>
>>  and then write the image to SD with:
>>
>> - > DEV=/dev/your_sd_device
>> - > dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=512 skip=1 seek=1
>> - > dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=1 count=444
>> +.. code-block:: bash
>> +
>> +    $ DEV=/dev/your_sd_device
>> +    $ dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=512 skip=1 seek=1
>> +    $ dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=1 count=444
>>
>>  Note that Amlogic provides aml_encrypt_gxl as a 32-bit x86 binary with no
>>  source code. Should you prefer to avoid that, there are open source reverse
>> diff --git a/board/amlogic/p200/README.nanopi-k2 b/doc/board/amlogic/nanopi-k2.rst
>> similarity index 24%
>> rename from board/amlogic/p200/README.nanopi-k2
>> rename to doc/board/amlogic/nanopi-k2.rst
>> index c8dec3569b..b8147de61c 100644
>> --- a/board/amlogic/p200/README.nanopi-k2
>> +++ b/doc/board/amlogic/nanopi-k2.rst
>> @@ -16,83 +16,87 @@ with the following specifications:
>>
>>  Schematics are available on the manufacturer website.
>>
>> -Currently the u-boot port supports the following devices:
>> - - serial
>> - - eMMC, microSD
>> - - Ethernet
>> +U-Boot compilation
>> +------------------
>>
>> -u-boot compilation
>> -==================
>> +.. code-block:: bash
>>
>> - > export CROSS_COMPILE=aarch64-none-elf-
>> - > make nanopi-k2_defconfig
>> - > make
>> +    $ export CROSS_COMPILE=aarch64-none-elf-
>> +    $ make nanopi-k2_defconfig
>> +    $ make
>>
>>  Image creation
>> -==============
>> +--------------
>>
>>  Amlogic doesn't provide sources for the firmware and for tools needed
>>  to create the bootloader image, so it is necessary to obtain them from
>>  the git tree published by the board vendor:
>>
>> - > wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> - > wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> - > tar xvfJ gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> - > tar xvfJ gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> - > export PATH=$PWD/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux/bin:$PWD/gcc-linaro-arm-none-eabi-4.8-2013.11_linux/bin:$PATH
>> - > git clone https://github.com/BayLibre/u-boot.git -b libretech-cc amlogic-u-boot
>> - > git clone https://github.com/friendlyarm/u-boot.git -b nanopi-k2-v2015.01 amlogic-u-boot
>> - > cd amlogic-u-boot
>> - > sed -i 's/aarch64-linux-gnu-/aarch64-none-elf-/' Makefile
>> - > sed -i 's/arm-linux-/arm-none-eabi-/' arch/arm/cpu/armv8/gxb/firmware/scp_task/Makefile
>> - > make nanopi-k2_defconfig
>> - > make
>> - > export FIPDIR=$PWD/fip
>> +.. code-block:: bash
>> +
>> +    $ wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> +    $ wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> +    $ tar xvfJ gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> +    $ tar xvfJ gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> +    $ export PATH=$PWD/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux/bin:$PWD/gcc-linaro-arm-none-eabi-4.8-2013.11_linux/bin:$PATH
>> +    $ git clone https://github.com/BayLibre/u-boot.git -b libretech-cc amlogic-u-boot
>> +    $ git clone https://github.com/friendlyarm/u-boot.git -b nanopi-k2-v2015.01 amlogic-u-boot
>> +    $ cd amlogic-u-boot
>> +    $ sed -i 's/aarch64-linux-gnu-/aarch64-none-elf-/' Makefile
>> +    $ sed -i 's/arm-linux-/arm-none-eabi-/' arch/arm/cpu/armv8/gxb/firmware/scp_task/Makefile
>> +    $ make nanopi-k2_defconfig
>> +    $ make
>> +    $ export FIPDIR=$PWD/fip
>>
>>  Go back to mainline U-Boot source tree then :
>> - > mkdir fip
>> -
>> - > cp $FIPDIR/gxb/bl2.bin fip/
>> - > cp $FIPDIR/gxb/acs.bin fip/
>> - > cp $FIPDIR/gxb/bl21.bin fip/
>> - > cp $FIPDIR/gxb/bl30.bin fip/
>> - > cp $FIPDIR/gxb/bl301.bin fip/
>> - > cp $FIPDIR/gxb/bl31.img fip/
>> - > cp u-boot.bin fip/bl33.bin
>> -
>> - > $FIPDIR/blx_fix.sh \
>> -       fip/bl30.bin \
>> -       fip/zero_tmp \
>> -       fip/bl30_zero.bin \
>> -       fip/bl301.bin \
>> -       fip/bl301_zero.bin \
>> -       fip/bl30_new.bin \
>> -       bl30
>> -
>> - > $FIPDIR/fip_create \
>> -        --bl30 fip/bl30_new.bin \
>> -        --bl31 fip/bl31.img \
>> -        --bl33 fip/bl33.bin \
>> -        fip/fip.bin
>> -
>> - > python $FIPDIR/acs_tool.pyc fip/bl2.bin fip/bl2_acs.bin fip/acs.bin 0
>> -
>> - > $FIPDIR/blx_fix.sh \
>> -       fip/bl2_acs.bin \
>> -       fip/zero_tmp \
>> -       fip/bl2_zero.bin \
>> -       fip/bl21.bin \
>> -       fip/bl21_zero.bin \
>> -       fip/bl2_new.bin \
>> -       bl2
>> -
>> - > cat fip/bl2_new.bin fip/fip.bin > fip/boot_new.bin
>> -
>> - > $FIPDIR/gxb/aml_encrypt_gxb --bootsig \
>> -               --input fip/boot_new.bin
>> -               --output fip/u-boot.bin
>> +
>> +.. code-block:: bash
>> +
>> +    $ mkdir fip
>> +
>> +    $ cp $FIPDIR/gxb/bl2.bin fip/
>> +    $ cp $FIPDIR/gxb/acs.bin fip/
>> +    $ cp $FIPDIR/gxb/bl21.bin fip/
>> +    $ cp $FIPDIR/gxb/bl30.bin fip/
>> +    $ cp $FIPDIR/gxb/bl301.bin fip/
>> +    $ cp $FIPDIR/gxb/bl31.img fip/
>> +    $ cp u-boot.bin fip/bl33.bin
>> +
>> +    $ $FIPDIR/blx_fix.sh \
>> +       fip/bl30.bin \
>> +       fip/zero_tmp \
>> +       fip/bl30_zero.bin \
>> +       fip/bl301.bin \
>> +       fip/bl301_zero.bin \
>> +       fip/bl30_new.bin \
>> +       bl30
>> +
>> +    $ $FIPDIR/fip_create \
>> +        --bl30 fip/bl30_new.bin \
>> +        --bl31 fip/bl31.img \
>> +        --bl33 fip/bl33.bin \
>> +        fip/fip.bin
>> +
>> +    $ python $FIPDIR/acs_tool.pyc fip/bl2.bin fip/bl2_acs.bin fip/acs.bin 0
>> +
>> +    $ $FIPDIR/blx_fix.sh \
>> +       fip/bl2_acs.bin \
>> +       fip/zero_tmp \
>> +       fip/bl2_zero.bin \
>> +       fip/bl21.bin \
>> +       fip/bl21_zero.bin \
>> +       fip/bl2_new.bin \
>> +       bl2
>> +
>> +    $ cat fip/bl2_new.bin fip/fip.bin > fip/boot_new.bin
>> +
>> +    $ $FIPDIR/gxb/aml_encrypt_gxb --bootsig \
>> +               --input fip/boot_new.bin
>> +               --output fip/u-boot.bin
>>
>>  and then write the image to SD with:
>>
>> - > DEV=/dev/your_sd_device
>> - > dd if=fip/u-boot.bin of=$DEV conv=fsync,notrunc bs=512 seek=1
>> +.. code-block:: bash
>> +
>> +    $ DEV=/dev/your_sd_device
>> +    $ dd if=fip/u-boot.bin of=$DEV conv=fsync,notrunc bs=512 seek=1
>> diff --git a/board/amlogic/p200/README.odroid-c2 b/doc/board/amlogic/odroid-c2.rst
>> similarity index 56%
>> rename from board/amlogic/p200/README.odroid-c2
>> rename to doc/board/amlogic/odroid-c2.rst
>> index 3b9f80df29..7b518fc26a 100644
>> --- a/board/amlogic/p200/README.odroid-c2
>> +++ b/doc/board/amlogic/odroid-c2.rst
>> @@ -16,50 +16,46 @@ Co. Ltd with the following specifications:
>>
>>  Schematics are available on the manufacturer website.
>>
>> -Currently the u-boot port supports the following devices:
>> - - serial
>> - - eMMC, microSD
>> - - Ethernet
>> - - I2C
>> - - Regulators
>> - - Reset controller
>> - - Clock controller
>> - - ADC
>> +U-Boot compilation
>> +------------------
>>
>> -u-boot compilation
>> -==================
>> +.. code-block:: bash
>>
>> - > export CROSS_COMPILE=aarch64-none-elf-
>> - > make odroid-c2_defconfig
>> - > make
>> +    $ export CROSS_COMPILE=aarch64-none-elf-
>> +    $ make odroid-c2_defconfig
>> +    $ make
>>
>>  Image creation
>> -==============
>> +--------------
>>
>>  Amlogic doesn't provide sources for the firmware and for tools needed
>>  to create the bootloader image, so it is necessary to obtain them from
>>  the git tree published by the board vendor:
>>
>> - > DIR=odroid-c2
>> - > git clone --depth 1 \
>> +.. code-block:: bash
>> +
>> +    $ DIR=odroid-c2
>> +    $ git clone --depth 1 \
>>         https://github.com/hardkernel/u-boot.git -b odroidc2-v2015.01 \
>>         $DIR
>> - > $DIR/fip/fip_create --bl30  $DIR/fip/gxb/bl30.bin \
>> +    $ $DIR/fip/fip_create --bl30  $DIR/fip/gxb/bl30.bin \
>>                         --bl301 $DIR/fip/gxb/bl301.bin \
>>                         --bl31  $DIR/fip/gxb/bl31.bin \
>>                         --bl33  u-boot.bin \
>>                         $DIR/fip.bin
>> - > $DIR/fip/fip_create --dump $DIR/fip.bin
>> - > cat $DIR/fip/gxb/bl2.package $DIR/fip.bin > $DIR/boot_new.bin
>> - > $DIR/fip/gxb/aml_encrypt_gxb --bootsig \
>> +    $ $DIR/fip/fip_create --dump $DIR/fip.bin
>> +    $ cat $DIR/fip/gxb/bl2.package $DIR/fip.bin > $DIR/boot_new.bin
>> +    $ $DIR/fip/gxb/aml_encrypt_gxb --bootsig \
>>                                  --input $DIR/boot_new.bin \
>>                                  --output $DIR/u-boot.img
>> - > dd if=$DIR/u-boot.img of=$DIR/u-boot.gxbb bs=512 skip=96
>> +    $ dd if=$DIR/u-boot.img of=$DIR/u-boot.gxbb bs=512 skip=96
>>
>>  and then write the image to SD with:
>>
>> - > DEV=/dev/your_sd_device
>> - > BL1=$DIR/sd_fuse/bl1.bin.hardkernel
>> - > dd if=$BL1 of=$DEV conv=fsync bs=1 count=442
>> - > dd if=$BL1 of=$DEV conv=fsync bs=512 skip=1 seek=1
>> - > dd if=$DIR/u-boot.gxbb of=$DEV conv=fsync bs=512 seek=97
>> +.. code-block:: bash
>> +
>> +    $ DEV=/dev/your_sd_device
>> +    $ BL1=$DIR/sd_fuse/bl1.bin.hardkernel
>> +    $ dd if=$BL1 of=$DEV conv=fsync bs=1 count=442
>> +    $ dd if=$BL1 of=$DEV conv=fsync bs=512 skip=1 seek=1
>> +    $ dd if=$DIR/u-boot.gxbb of=$DEV conv=fsync bs=512 seek=97
>> diff --git a/board/amlogic/w400/README.odroid-n2 b/doc/board/amlogic/odroid-n2.rst
>> similarity index 19%
>> rename from board/amlogic/w400/README.odroid-n2
>> rename to doc/board/amlogic/odroid-n2.rst
>> index 8142eebea0..b7b9cccfa8 100644
>> --- a/board/amlogic/w400/README.odroid-n2
>> +++ b/doc/board/amlogic/odroid-n2.rst
>> @@ -15,115 +15,114 @@ Co. Ltd with the following specifications:
>>
>>  Schematics are available on the manufacturer website.
>>
>> -Currently the u-boot port supports the following devices:
>> - - serial
>> - - eMMC, microSD
>> - - Ethernet
>> - - I2C
>> - - Regulators
>> - - Reset controller
>> - - Clock controller
>> - - ADC
>> +U-Boot compilation
>> +------------------
>>
>> -u-boot compilation
>> -==================
>> +.. code-block:: bash
>>
>> - > export CROSS_COMPILE=aarch64-none-elf-
>> - > make odroid-n2_defconfig
>> - > make
>> +    $ export CROSS_COMPILE=aarch64-none-elf-
>> +    $ make odroid-n2_defconfig
>> +    $ make
>>
>>  Image creation
>> -==============
>> +--------------
>>
>>  Amlogic doesn't provide sources for the firmware and for tools needed
>>  to create the bootloader image, so it is necessary to obtain them from
>>  the git tree published by the board vendor:
>>
>> - > wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> - > wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> - > tar xvfJ gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> - > tar xvfJ gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> - > export PATH=$PWD/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux/bin:$PWD/gcc-linaro-arm-none-eabi-4.8-2013.11_linux/bin:$PATH
>> +.. code-block:: bash
>> +
>> +    $ wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> +    $ wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> +    $ tar xvfJ gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> +    $ tar xvfJ gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> +    $ export PATH=$PWD/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux/bin:$PWD/gcc-linaro-arm-none-eabi-4.8-2013.11_linux/bin:$PATH
>>
>> - > DIR=odroid-n2
>> - > git clone --depth 1 \
>> +    $ DIR=odroid-n2
>> +    $ git clone --depth 1 \
>>         https://github.com/hardkernel/u-boot.git -b odroidn2-v2015.01 \
>>         $DIR
>>
>> - > cd odroid-n2
>> - > make odroidn2_defconfig
>> - > make
>> - > export UBOOTDIR=$PWD
>> +    $ cd odroid-n2
>> +    $ make odroidn2_defconfig
>> +    $ make
>> +    $ export UBOOTDIR=$PWD
>>
>>   Go back to mainline U-Boot source tree then :
>> - > mkdir fip
>> -
>> - > wget https://github.com/BayLibre/u-boot/releases/download/v2017.11-libretech-cc/blx_fix_g12a.sh -O fip/blx_fix.sh
>> - > cp $UBOOTDIR/build/scp_task/bl301.bin fip/
>> - > cp $UBOOTDIR/build/board/hardkernel/odroidn2/firmware/acs.bin fip/
>> - > cp $UBOOTDIR/fip/g12b/bl2.bin fip/
>> - > cp $UBOOTDIR/fip/g12b/bl30.bin fip/
>> - > cp $UBOOTDIR/fip/g12b/bl31.img fip/
>> - > cp $UBOOTDIR/fip/g12b/ddr3_1d.fw fip/
>> - > cp $UBOOTDIR/fip/g12b/ddr4_1d.fw fip/
>> - > cp $UBOOTDIR/fip/g12b/ddr4_2d.fw fip/
>> - > cp $UBOOTDIR/fip/g12b/diag_lpddr4.fw fip/
>> - > cp $UBOOTDIR/fip/g12b/lpddr4_1d.fw fip/
>> - > cp $UBOOTDIR/fip/g12b/lpddr4_2d.fw fip/
>> - > cp $UBOOTDIR/fip/g12b/piei.fw fip/
>> - > cp $UBOOTDIR/fip/g12b/aml_ddr.fw fip/
>> - > cp u-boot.bin fip/bl33.bin
>> -
>> - > sh fip/blx_fix.sh \
>> -       fip/bl30.bin \
>> -       fip/zero_tmp \
>> -       fip/bl30_zero.bin \
>> -       fip/bl301.bin \
>> -       fip/bl301_zero.bin \
>> -       fip/bl30_new.bin \
>> -       bl30
>> -
>> - > sh fip/blx_fix.sh \
>> -       fip/bl2.bin \
>> -       fip/zero_tmp \
>> -       fip/bl2_zero.bin \
>> -       fip/acs.bin \
>> -       fip/bl21_zero.bin \
>> -       fip/bl2_new.bin \
>> -       bl2
>> -
>> - > $UBOOTDIR/fip/g12b/aml_encrypt_g12b --bl30sig --input fip/bl30_new.bin \
>> -                                       --output fip/bl30_new.bin.g12a.enc \
>> -                                       --level v3
>> - > $UBOOTDIR/fip/g12b/aml_encrypt_g12b --bl3sig --input fip/bl30_new.bin.g12a.enc \
>> -                                       --output fip/bl30_new.bin.enc \
>> -                                       --level v3 --type bl30
>> - > $UBOOTDIR/fip/g12b/aml_encrypt_g12b --bl3sig --input fip/bl31.img \
>> -                                       --output fip/bl31.img.enc \
>> -                                       --level v3 --type bl31
>> - > $UBOOTDIR/fip/g12b/aml_encrypt_g12b --bl3sig --input fip/bl33.bin --compress lz4 \
>> -                                       --output fip/bl33.bin.enc \
>> -                                       --level v3 --type bl33 --compress lz4
>> - > $UBOOTDIR/fip/g12b/aml_encrypt_g12b --bl2sig --input fip/bl2_new.bin \
>> -                                       --output fip/bl2.n.bin.sig
>> - > $UBOOTDIR/fip/g12b/aml_encrypt_g12b --bootmk \
>> -               --output fip/u-boot.bin \
>> -               --bl2 fip/bl2.n.bin.sig \
>> -               --bl30 fip/bl30_new.bin.enc \
>> -               --bl31 fip/bl31.img.enc \
>> -               --bl33 fip/bl33.bin.enc \
>> -               --ddrfw1 fip/ddr4_1d.fw \
>> -               --ddrfw2 fip/ddr4_2d.fw \
>> -               --ddrfw3 fip/ddr3_1d.fw \
>> -               --ddrfw4 fip/piei.fw \
>> -               --ddrfw5 fip/lpddr4_1d.fw \
>> -               --ddrfw6 fip/lpddr4_2d.fw \
>> -               --ddrfw7 fip/diag_lpddr4.fw \
>> -               --ddrfw8 fip/aml_ddr.fw \
>> -               --level v3
>> +
>> +.. code-block:: bash
>> +
>> +    $ mkdir fip
>> +
>> +    $ wget https://github.com/BayLibre/u-boot/releases/download/v2017.11-libretech-cc/blx_fix_g12a.sh -O fip/blx_fix.sh
>> +    $ cp $UBOOTDIR/build/scp_task/bl301.bin fip/
>> +    $ cp $UBOOTDIR/build/board/hardkernel/odroidn2/firmware/acs.bin fip/
>> +    $ cp $UBOOTDIR/fip/g12b/bl2.bin fip/
>> +    $ cp $UBOOTDIR/fip/g12b/bl30.bin fip/
>> +    $ cp $UBOOTDIR/fip/g12b/bl31.img fip/
>> +    $ cp $UBOOTDIR/fip/g12b/ddr3_1d.fw fip/
>> +    $ cp $UBOOTDIR/fip/g12b/ddr4_1d.fw fip/
>> +    $ cp $UBOOTDIR/fip/g12b/ddr4_2d.fw fip/
>> +    $ cp $UBOOTDIR/fip/g12b/diag_lpddr4.fw fip/
>> +    $ cp $UBOOTDIR/fip/g12b/lpddr4_1d.fw fip/
>> +    $ cp $UBOOTDIR/fip/g12b/lpddr4_2d.fw fip/
>> +    $ cp $UBOOTDIR/fip/g12b/piei.fw fip/
>> +    $ cp $UBOOTDIR/fip/g12b/aml_ddr.fw fip/
>> +    $ cp u-boot.bin fip/bl33.bin
>> +
>> +    $ sh fip/blx_fix.sh \
>> +       fip/bl30.bin \
>> +       fip/zero_tmp \
>> +       fip/bl30_zero.bin \
>> +       fip/bl301.bin \
>> +       fip/bl301_zero.bin \
>> +       fip/bl30_new.bin \
>> +       bl30
>> +
>> +    $ sh fip/blx_fix.sh \
>> +       fip/bl2.bin \
>> +       fip/zero_tmp \
>> +       fip/bl2_zero.bin \
>> +       fip/acs.bin \
>> +       fip/bl21_zero.bin \
>> +       fip/bl2_new.bin \
>> +       bl2
>> +
>> +    $ $UBOOTDIR/fip/g12b/aml_encrypt_g12b --bl30sig --input fip/bl30_new.bin \
>> +                                       --output fip/bl30_new.bin.g12a.enc \
>> +                                       --level v3
>> +    $ $UBOOTDIR/fip/g12b/aml_encrypt_g12b --bl3sig --input fip/bl30_new.bin.g12a.enc \
>> +                                       --output fip/bl30_new.bin.enc \
>> +                                       --level v3 --type bl30
>> +    $ $UBOOTDIR/fip/g12b/aml_encrypt_g12b --bl3sig --input fip/bl31.img \
>> +                                       --output fip/bl31.img.enc \
>> +                                       --level v3 --type bl31
>> +    $ $UBOOTDIR/fip/g12b/aml_encrypt_g12b --bl3sig --input fip/bl33.bin --compress lz4 \
>> +                                       --output fip/bl33.bin.enc \
>> +                                       --level v3 --type bl33 --compress lz4
>> +    $ $UBOOTDIR/fip/g12b/aml_encrypt_g12b --bl2sig --input fip/bl2_new.bin \
>> +                                       --output fip/bl2.n.bin.sig
>> +    $ $UBOOTDIR/fip/g12b/aml_encrypt_g12b --bootmk \
>> +               --output fip/u-boot.bin \
>> +               --bl2 fip/bl2.n.bin.sig \
>> +               --bl30 fip/bl30_new.bin.enc \
>> +               --bl31 fip/bl31.img.enc \
>> +               --bl33 fip/bl33.bin.enc \
>> +               --ddrfw1 fip/ddr4_1d.fw \
>> +               --ddrfw2 fip/ddr4_2d.fw \
>> +               --ddrfw3 fip/ddr3_1d.fw \
>> +               --ddrfw4 fip/piei.fw \
>> +               --ddrfw5 fip/lpddr4_1d.fw \
>> +               --ddrfw6 fip/lpddr4_2d.fw \
>> +               --ddrfw7 fip/diag_lpddr4.fw \
>> +               --ddrfw8 fip/aml_ddr.fw \
>> +               --level v3
>>
>>  and then write the image to SD with:
>>
>> - > DEV=/dev/your_sd_device
>> - > dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=512 skip=1 seek=1
>> - > dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=1 count=444
>> +.. code-block:: bash
>> +
>> +    $ DEV=/dev/your_sd_device
>> +    $ dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=512 skip=1 seek=1
>> +    $ dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=1 count=444
>> diff --git a/board/amlogic/p200/README.p200 b/doc/board/amlogic/p200.rst
>> similarity index 24%
>> rename from board/amlogic/p200/README.p200
>> rename to doc/board/amlogic/p200.rst
>> index 84d5ca5356..b6103b25fe 100644
>> --- a/board/amlogic/p200/README.p200
>> +++ b/doc/board/amlogic/p200.rst
>> @@ -17,86 +17,84 @@ specifications:
>>
>>  Schematics are available from Amlogic on demand.
>>
>> -Currently the u-boot port supports the following devices:
>> - - serial
>> - - eMMC, microSD
>> - - Ethernet
>> - - I2C
>> - - Regulators
>> - - Reset controller
>> - - Clock controller
>> - - USB Host
>> - - ADC
>> +U-Boot compilation
>> +------------------
>>
>> -u-boot compilation
>> -==================
>> +.. code-block:: bash
>>
>> - > export CROSS_COMPILE=aarch64-none-elf-
>> - > make p200_defconfig
>> - > make
>> +    $ export CROSS_COMPILE=aarch64-none-elf-
>> +    $ make p200_defconfig
>> +    $ make
>>
>>  Image creation
>> -==============
>> +--------------
>>
>>  Amlogic doesn't provide sources for the firmware and for tools needed
>>  to create the bootloader image, so it is necessary to obtain them from
>>  the git tree published by the board vendor:
>>
>> - > wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> - > wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> - > tar xvfJ gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> - > tar xvfJ gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> - > export PATH=$PWD/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux/bin:$PWD/gcc-linaro-arm-none-eabi-4.8-2013.11_linux/bin:$PATH
>> - > git clone https://github.com/BayLibre/u-boot.git -b n-amlogic-openlinux-20170606 amlogic-u-boot
>> - > cd amlogic-u-boot
>> - > make gxb_p200_v1_defconfig
>> - > make
>> - > export FIPDIR=$PWD/fip
>> +.. code-block:: bash
>> +
>> +    $ wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> +    $ wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> +    $ tar xvfJ gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> +    $ tar xvfJ gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> +    $ export PATH=$PWD/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux/bin:$PWD/gcc-linaro-arm-none-eabi-4.8-2013.11_linux/bin:$PATH
>> +    $ git clone https://github.com/BayLibre/u-boot.git -b n-amlogic-openlinux-20170606 amlogic-u-boot
>> +    $ cd amlogic-u-boot
>> +    $ make gxb_p200_v1_defconfig
>> +    $ make
>> +    $ export FIPDIR=$PWD/fip
>>
>>  Go back to mainline U-boot source tree then :
>> - > mkdir fip
>> -
>> - > cp $FIPDIR/gxl/bl2.bin fip/
>> - > cp $FIPDIR/gxl/acs.bin fip/
>> - > cp $FIPDIR/gxl/bl21.bin fip/
>> - > cp $FIPDIR/gxl/bl30.bin fip/
>> - > cp $FIPDIR/gxl/bl301.bin fip/
>> - > cp $FIPDIR/gxl/bl31.img fip/
>> - > cp u-boot.bin fip/bl33.bin
>> -
>> - > $FIPDIR/blx_fix.sh \
>> -       fip/bl30.bin \
>> -       fip/zero_tmp \
>> -       fip/bl30_zero.bin \
>> -       fip/bl301.bin \
>> -       fip/bl301_zero.bin \
>> -       fip/bl30_new.bin \
>> -       bl30
>> -
>> - > $FIPDIR/acs_tool.pyc fip/bl2.bin fip/bl2_acs.bin fip/acs.bin 0
>> -
>> - > $FIPDIR/blx_fix.sh \
>> -       fip/bl2_acs.bin \
>> -       fip/zero_tmp \
>> -       fip/bl2_zero.bin \
>> -       fip/bl21.bin \
>> -       fip/bl21_zero.bin \
>> -       fip/bl2_new.bin \
>> -       bl2
>> -
>> - > $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl30_new.bin
>> - > $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl31.img
>> - > $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl33.bin
>> - > $FIPDIR/gxl/aml_encrypt_gxl --bl2sig --input fip/bl2_new.bin --output fip/bl2.n.bin.sig
>> - > $FIPDIR/gxl/aml_encrypt_gxl --bootmk \
>> -               --output fip/u-boot.bin \
>> -               --bl2 fip/bl2.n.bin.sig \
>> -               --bl30 fip/bl30_new.bin.enc \
>> -               --bl31 fip/bl31.img.enc \
>> -               --bl33 fip/bl33.bin.enc
>> +
>> +.. code-block:: bash
>> +
>> +    $ mkdir fip
>> +
>> +    $ cp $FIPDIR/gxl/bl2.bin fip/
>> +    $ cp $FIPDIR/gxl/acs.bin fip/
>> +    $ cp $FIPDIR/gxl/bl21.bin fip/
>> +    $ cp $FIPDIR/gxl/bl30.bin fip/
>> +    $ cp $FIPDIR/gxl/bl301.bin fip/
>> +    $ cp $FIPDIR/gxl/bl31.img fip/
>> +    $ cp u-boot.bin fip/bl33.bin
>> +
>> +    $ $FIPDIR/blx_fix.sh \
>> +       fip/bl30.bin \
>> +       fip/zero_tmp \
>> +       fip/bl30_zero.bin \
>> +       fip/bl301.bin \
>> +       fip/bl301_zero.bin \
>> +       fip/bl30_new.bin \
>> +       bl30
>> +
>> +    $ $FIPDIR/acs_tool.pyc fip/bl2.bin fip/bl2_acs.bin fip/acs.bin 0
>> +
>> +    $ $FIPDIR/blx_fix.sh \
>> +       fip/bl2_acs.bin \
>> +       fip/zero_tmp \
>> +       fip/bl2_zero.bin \
>> +       fip/bl21.bin \
>> +       fip/bl21_zero.bin \
>> +       fip/bl2_new.bin \
>> +       bl2
>> +
>> +    $ $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl30_new.bin
>> +    $ $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl31.img
>> +    $ $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl33.bin
>> +    $ $FIPDIR/gxl/aml_encrypt_gxl --bl2sig --input fip/bl2_new.bin --output fip/bl2.n.bin.sig
>> +    $ $FIPDIR/gxl/aml_encrypt_gxl --bootmk \
>> +               --output fip/u-boot.bin \
>> +               --bl2 fip/bl2.n.bin.sig \
>> +               --bl30 fip/bl30_new.bin.enc \
>> +               --bl31 fip/bl31.img.enc \
>> +               --bl33 fip/bl33.bin.enc
>>
>>  and then write the image to SD with:
>>
>> - > DEV=/dev/your_sd_device
>> - > dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=512 skip=1 seek=1
>> - > dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=1 count=444
>> +.. code-block:: bash
>> +
>> +    $ DEV=/dev/your_sd_device
>> +    $ dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=512 skip=1 seek=1
>> +    $ dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=1 count=444
>> diff --git a/board/amlogic/p201/README.p201 b/doc/board/amlogic/p201.rst
>> similarity index 24%
>> rename from board/amlogic/p201/README.p201
>> rename to doc/board/amlogic/p201.rst
>> index 4bb5e95905..da14f84ac2 100644
>> --- a/board/amlogic/p201/README.p201
>> +++ b/doc/board/amlogic/p201.rst
>> @@ -17,86 +17,84 @@ specifications:
>>
>>  Schematics are available from Amlogic on demand.
>>
>> -Currently the u-boot port supports the following devices:
>> - - serial
>> - - eMMC, microSD
>> - - Ethernet
>> - - I2C
>> - - Regulators
>> - - Reset controller
>> - - Clock controller
>> - - USB Host
>> - - ADC
>> +U-Boot compilation
>> +------------------
>>
>> -u-boot compilation
>> -==================
>> +.. code-block:: bash
>>
>> - > export CROSS_COMPILE=aarch64-none-elf-
>> - > make p201_defconfig
>> - > make
>> +    $ export CROSS_COMPILE=aarch64-none-elf-
>> +    $ make p201_defconfig
>> +    $ make
>>
>>  Image creation
>> -==============
>> +--------------
>>
>>  Amlogic doesn't provide sources for the firmware and for tools needed
>>  to create the bootloader image, so it is necessary to obtain them from
>>  the git tree published by the board vendor:
>>
>> - > wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> - > wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> - > tar xvfJ gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> - > tar xvfJ gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> - > export PATH=$PWD/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux/bin:$PWD/gcc-linaro-arm-none-eabi-4.8-2013.11_linux/bin:$PATH
>> - > git clone https://github.com/BayLibre/u-boot.git -b n-amlogic-openlinux-20170606 amlogic-u-boot
>> - > cd amlogic-u-boot
>> - > make gxb_p201_v1_defconfig
>> - > make
>> - > export FIPDIR=$PWD/fip
>> +.. code-block:: bash
>> +
>> +    $ wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> +    $ wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> +    $ tar xvfJ gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> +    $ tar xvfJ gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> +    $ export PATH=$PWD/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux/bin:$PWD/gcc-linaro-arm-none-eabi-4.8-2013.11_linux/bin:$PATH
>> +    $ git clone https://github.com/BayLibre/u-boot.git -b n-amlogic-openlinux-20170606 amlogic-u-boot
>> +    $ cd amlogic-u-boot
>> +    $ make gxb_p201_v1_defconfig
>> +    $ make
>> +    $ export FIPDIR=$PWD/fip
>>
>>  Go back to mainline U-boot source tree then :
>> - > mkdir fip
>> -
>> - > cp $FIPDIR/gxl/bl2.bin fip/
>> - > cp $FIPDIR/gxl/acs.bin fip/
>> - > cp $FIPDIR/gxl/bl21.bin fip/
>> - > cp $FIPDIR/gxl/bl30.bin fip/
>> - > cp $FIPDIR/gxl/bl301.bin fip/
>> - > cp $FIPDIR/gxl/bl31.img fip/
>> - > cp u-boot.bin fip/bl33.bin
>> -
>> - > $FIPDIR/blx_fix.sh \
>> -       fip/bl30.bin \
>> -       fip/zero_tmp \
>> -       fip/bl30_zero.bin \
>> -       fip/bl301.bin \
>> -       fip/bl301_zero.bin \
>> -       fip/bl30_new.bin \
>> -       bl30
>> -
>> - > $FIPDIR/acs_tool.pyc fip/bl2.bin fip/bl2_acs.bin fip/acs.bin 0
>> -
>> - > $FIPDIR/blx_fix.sh \
>> -       fip/bl2_acs.bin \
>> -       fip/zero_tmp \
>> -       fip/bl2_zero.bin \
>> -       fip/bl21.bin \
>> -       fip/bl21_zero.bin \
>> -       fip/bl2_new.bin \
>> -       bl2
>> -
>> - > $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl30_new.bin
>> - > $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl31.img
>> - > $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl33.bin
>> - > $FIPDIR/gxl/aml_encrypt_gxl --bl2sig --input fip/bl2_new.bin --output fip/bl2.n.bin.sig
>> - > $FIPDIR/gxl/aml_encrypt_gxl --bootmk \
>> -               --output fip/u-boot.bin \
>> -               --bl2 fip/bl2.n.bin.sig \
>> -               --bl30 fip/bl30_new.bin.enc \
>> -               --bl31 fip/bl31.img.enc \
>> -               --bl33 fip/bl33.bin.enc
>> +
>> +.. code-block:: bash
>> +
>> +    $ mkdir fip
>> +
>> +    $ cp $FIPDIR/gxl/bl2.bin fip/
>> +    $ cp $FIPDIR/gxl/acs.bin fip/
>> +    $ cp $FIPDIR/gxl/bl21.bin fip/
>> +    $ cp $FIPDIR/gxl/bl30.bin fip/
>> +    $ cp $FIPDIR/gxl/bl301.bin fip/
>> +    $ cp $FIPDIR/gxl/bl31.img fip/
>> +    $ cp u-boot.bin fip/bl33.bin
>> +
>> +    $ $FIPDIR/blx_fix.sh \
>> +       fip/bl30.bin \
>> +       fip/zero_tmp \
>> +       fip/bl30_zero.bin \
>> +       fip/bl301.bin \
>> +       fip/bl301_zero.bin \
>> +       fip/bl30_new.bin \
>> +       bl30
>> +
>> +    $ $FIPDIR/acs_tool.pyc fip/bl2.bin fip/bl2_acs.bin fip/acs.bin 0
>> +
>> +    $ $FIPDIR/blx_fix.sh \
>> +       fip/bl2_acs.bin \
>> +       fip/zero_tmp \
>> +       fip/bl2_zero.bin \
>> +       fip/bl21.bin \
>> +       fip/bl21_zero.bin \
>> +       fip/bl2_new.bin \
>> +       bl2
>> +
>> +    $ $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl30_new.bin
>> +    $ $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl31.img
>> +    $ $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl33.bin
>> +    $ $FIPDIR/gxl/aml_encrypt_gxl --bl2sig --input fip/bl2_new.bin --output fip/bl2.n.bin.sig
>> +    $ $FIPDIR/gxl/aml_encrypt_gxl --bootmk \
>> +               --output fip/u-boot.bin \
>> +               --bl2 fip/bl2.n.bin.sig \
>> +               --bl30 fip/bl30_new.bin.enc \
>> +               --bl31 fip/bl31.img.enc \
>> +               --bl33 fip/bl33.bin.enc
>>
>>  and then write the image to SD with:
>>
>> - > DEV=/dev/your_sd_device
>> - > dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=512 skip=1 seek=1
>> - > dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=1 count=444
>> +.. code-block:: bash
>> +
>> +    $ DEV=/dev/your_sd_device
>> +    $ dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=512 skip=1 seek=1
>> +    $ dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=1 count=444
>> diff --git a/board/amlogic/p212/README.p212 b/doc/board/amlogic/p212.rst
>> similarity index 24%
>> rename from board/amlogic/p212/README.p212
>> rename to doc/board/amlogic/p212.rst
>> index 3776f24493..c6c375077d 100644
>> --- a/board/amlogic/p212/README.p212
>> +++ b/doc/board/amlogic/p212.rst
>> @@ -17,86 +17,84 @@ specifications:
>>
>>  Schematics are available from Amlogic on demand.
>>
>> -Currently the u-boot port supports the following devices:
>> - - serial
>> - - eMMC, microSD
>> - - Ethernet
>> - - I2C
>> - - Regulators
>> - - Reset controller
>> - - Clock controller
>> - - USB Host
>> - - ADC
>> +U-Boot compilation
>> +------------------
>>
>> -u-boot compilation
>> -==================
>> +.. code-block:: bash
>>
>> - > export CROSS_COMPILE=aarch64-none-elf-
>> - > make p212_defconfig
>> - > make
>> +    $ export CROSS_COMPILE=aarch64-none-elf-
>> +    $ make p212_defconfig
>> +    $ make
>>
>>  Image creation
>> -==============
>> +--------------
>>
>>  Amlogic doesn't provide sources for the firmware and for tools needed
>>  to create the bootloader image, so it is necessary to obtain them from
>>  the git tree published by the board vendor:
>>
>> - > wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> - > wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> - > tar xvfJ gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> - > tar xvfJ gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> - > export PATH=$PWD/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux/bin:$PWD/gcc-linaro-arm-none-eabi-4.8-2013.11_linux/bin:$PATH
>> - > git clone https://github.com/BayLibre/u-boot.git -b n-amlogic-openlinux-20170606 amlogic-u-boot
>> - > cd amlogic-u-boot
>> - > make gxl_p212_v1_defconfig
>> - > make
>> - > export FIPDIR=$PWD/fip
>> +.. code-block:: bash
>> +
>> +    $ wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> +    $ wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> +    $ tar xvfJ gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> +    $ tar xvfJ gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> +    $ export PATH=$PWD/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux/bin:$PWD/gcc-linaro-arm-none-eabi-4.8-2013.11_linux/bin:$PATH
>> +    $ git clone https://github.com/BayLibre/u-boot.git -b n-amlogic-openlinux-20170606 amlogic-u-boot
>> +    $ cd amlogic-u-boot
>> +    $ make gxl_p212_v1_defconfig
>> +    $ make
>> +    $ export FIPDIR=$PWD/fip
>>
>>  Go back to mainline U-boot source tree then :
>> - > mkdir fip
>> -
>> - > cp $FIPDIR/gxl/bl2.bin fip/
>> - > cp $FIPDIR/gxl/acs.bin fip/
>> - > cp $FIPDIR/gxl/bl21.bin fip/
>> - > cp $FIPDIR/gxl/bl30.bin fip/
>> - > cp $FIPDIR/gxl/bl301.bin fip/
>> - > cp $FIPDIR/gxl/bl31.img fip/
>> - > cp u-boot.bin fip/bl33.bin
>> -
>> - > $FIPDIR/blx_fix.sh \
>> -       fip/bl30.bin \
>> -       fip/zero_tmp \
>> -       fip/bl30_zero.bin \
>> -       fip/bl301.bin \
>> -       fip/bl301_zero.bin \
>> -       fip/bl30_new.bin \
>> -       bl30
>> -
>> - > $FIPDIR/acs_tool.pyc fip/bl2.bin fip/bl2_acs.bin fip/acs.bin 0
>> -
>> - > $FIPDIR/blx_fix.sh \
>> -       fip/bl2_acs.bin \
>> -       fip/zero_tmp \
>> -       fip/bl2_zero.bin \
>> -       fip/bl21.bin \
>> -       fip/bl21_zero.bin \
>> -       fip/bl2_new.bin \
>> -       bl2
>> -
>> - > $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl30_new.bin
>> - > $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl31.img
>> - > $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl33.bin
>> - > $FIPDIR/gxl/aml_encrypt_gxl --bl2sig --input fip/bl2_new.bin --output fip/bl2.n.bin.sig
>> - > $FIPDIR/gxl/aml_encrypt_gxl --bootmk \
>> -               --output fip/u-boot.bin \
>> -               --bl2 fip/bl2.n.bin.sig \
>> -               --bl30 fip/bl30_new.bin.enc \
>> -               --bl31 fip/bl31.img.enc \
>> -               --bl33 fip/bl33.bin.enc
>> +
>> +.. code-block:: bash
>> +
>> +    $ mkdir fip
>> +
>> +    $ cp $FIPDIR/gxl/bl2.bin fip/
>> +    $ cp $FIPDIR/gxl/acs.bin fip/
>> +    $ cp $FIPDIR/gxl/bl21.bin fip/
>> +    $ cp $FIPDIR/gxl/bl30.bin fip/
>> +    $ cp $FIPDIR/gxl/bl301.bin fip/
>> +    $ cp $FIPDIR/gxl/bl31.img fip/
>> +    $ cp u-boot.bin fip/bl33.bin
>> +
>> +    $ $FIPDIR/blx_fix.sh \
>> +       fip/bl30.bin \
>> +       fip/zero_tmp \
>> +       fip/bl30_zero.bin \
>> +       fip/bl301.bin \
>> +       fip/bl301_zero.bin \
>> +       fip/bl30_new.bin \
>> +       bl30
>> +
>> +    $ $FIPDIR/acs_tool.pyc fip/bl2.bin fip/bl2_acs.bin fip/acs.bin 0
>> +
>> +    $ $FIPDIR/blx_fix.sh \
>> +       fip/bl2_acs.bin \
>> +       fip/zero_tmp \
>> +       fip/bl2_zero.bin \
>> +       fip/bl21.bin \
>> +       fip/bl21_zero.bin \
>> +       fip/bl2_new.bin \
>> +       bl2
>> +
>> +    $ $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl30_new.bin
>> +    $ $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl31.img
>> +    $ $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl33.bin
>> +    $ $FIPDIR/gxl/aml_encrypt_gxl --bl2sig --input fip/bl2_new.bin --output fip/bl2.n.bin.sig
>> +    $ $FIPDIR/gxl/aml_encrypt_gxl --bootmk \
>> +               --output fip/u-boot.bin \
>> +               --bl2 fip/bl2.n.bin.sig \
>> +               --bl30 fip/bl30_new.bin.enc \
>> +               --bl31 fip/bl31.img.enc \
>> +               --bl33 fip/bl33.bin.enc
>>
>>  and then write the image to SD with:
>>
>> - > DEV=/dev/your_sd_device
>> - > dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=512 skip=1 seek=1
>> - > dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=1 count=444
>> +.. code-block:: bash
>> +
>> +    $ DEV=/dev/your_sd_device
>> +    $ dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=512 skip=1 seek=1
>> +    $ dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=1 count=444
>> diff --git a/board/amlogic/q200/README.q200 b/doc/board/amlogic/q200.rst
>> similarity index 24%
>> rename from board/amlogic/q200/README.q200
>> rename to doc/board/amlogic/q200.rst
>> index d4142c88bd..58ebe52a2a 100644
>> --- a/board/amlogic/q200/README.q200
>> +++ b/doc/board/amlogic/q200.rst
>> @@ -16,86 +16,84 @@ specifications:
>>   - SDIO Wifi Module, Bluetooth
>>   - IR receiver
>>
>> -Currently the u-boot port supports the following devices:
>> - - serial
>> - - eMMC, microSD
>> - - Ethernet
>> - - I2C
>> - - Regulators
>> - - Reset controller
>> - - Clock controller
>> - - USB Host
>> - - ADC
>> -
>>  U-Boot compilation
>> -==================
>> +------------------
>> +
>> +.. code-block:: bash
>>
>> - > export CROSS_COMPILE=aarch64-none-elf-
>> - > make khadas-vim2_defconfig
>> - > make
>> +    $ export CROSS_COMPILE=aarch64-none-elf-
>> +    $ make khadas-vim2_defconfig
>> +    $ make
>>
>>  Image creation
>> -==============
>> +--------------
>>
>>  Amlogic doesn't provide sources for the firmware and for tools needed
>>  to create the bootloader image, so it is necessary to obtain them from
>>  the git tree published by the board vendor:
>>
>> - > wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> - > wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> - > tar xvfJ gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> - > tar xvfJ gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> - > export PATH=$PWD/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux/bin:$PWD/gcc-linaro-arm-none-eabi-4.8-2013.11_linux/bin:$PATH
>> - > git clone https://github.com/BayLibre/u-boot.git -b n-amlogic-openlinux-20170606 amlogic-u-boot
>> - > cd amlogic-u-boot
>> - > make gxm_q200_v1_defconfig
>> - > make
>> - > export FIPDIR=$PWD/fip
>> +.. code-block:: bash
>> +
>> +    $ wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> +    $ wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> +    $ tar xvfJ gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> +    $ tar xvfJ gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> +    $ export PATH=$PWD/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux/bin:$PWD/gcc-linaro-arm-none-eabi-4.8-2013.11_linux/bin:$PATH
>> +    $ git clone https://github.com/BayLibre/u-boot.git -b n-amlogic-openlinux-20170606 amlogic-u-boot
>> +    $ cd amlogic-u-boot
>> +    $ make gxm_q200_v1_defconfig
>> +    $ make
>> +    $ export FIPDIR=$PWD/fip
>>
>>  Go back to mainline U-Boot source tree then :
>> - > mkdir fip
>> -
>> - > cp $FIPDIR/gxl/bl2.bin fip/
>> - > cp $FIPDIR/gxl/acs.bin fip/
>> - > cp $FIPDIR/gxl/bl21.bin fip/
>> - > cp $FIPDIR/gxl/bl30.bin fip/
>> - > cp $FIPDIR/gxl/bl301.bin fip/
>> - > cp $FIPDIR/gxl/bl31.img fip/
>> - > cp u-boot.bin fip/bl33.bin
>> -
>> - > $FIPDIR/blx_fix.sh \
>> -       fip/bl30.bin \
>> -       fip/zero_tmp \
>> -       fip/bl30_zero.bin \
>> -       fip/bl301.bin \
>> -       fip/bl301_zero.bin \
>> -       fip/bl30_new.bin \
>> -       bl30
>> -
>> - > python $FIPDIR/acs_tool.pyc fip/bl2.bin fip/bl2_acs.bin fip/acs.bin 0
>> -
>> - > $FIPDIR/blx_fix.sh \
>> -       fip/bl2_acs.bin \
>> -       fip/zero_tmp \
>> -       fip/bl2_zero.bin \
>> -       fip/bl21.bin \
>> -       fip/bl21_zero.bin \
>> -       fip/bl2_new.bin \
>> -       bl2
>> -
>> - > $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl30_new.bin
>> - > $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl31.img
>> - > $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl33.bin
>> - > $FIPDIR/gxl/aml_encrypt_gxl --bl2sig --input fip/bl2_new.bin --output fip/bl2.n.bin.sig
>> - > $FIPDIR/gxl/aml_encrypt_gxl --bootmk \
>> -               --output fip/u-boot.bin \
>> -               --bl2 fip/bl2.n.bin.sig \
>> -               --bl30 fip/bl30_new.bin.enc \
>> -               --bl31 fip/bl31.img.enc \
>> -               --bl33 fip/bl33.bin.enc
>> +
>> +.. code-block:: bash
>> +
>> +    $ mkdir fip
>> +
>> +    $ cp $FIPDIR/gxl/bl2.bin fip/
>> +    $ cp $FIPDIR/gxl/acs.bin fip/
>> +    $ cp $FIPDIR/gxl/bl21.bin fip/
>> +    $ cp $FIPDIR/gxl/bl30.bin fip/
>> +    $ cp $FIPDIR/gxl/bl301.bin fip/
>> +    $ cp $FIPDIR/gxl/bl31.img fip/
>> +    $ cp u-boot.bin fip/bl33.bin
>> +
>> +    $ $FIPDIR/blx_fix.sh \
>> +       fip/bl30.bin \
>> +       fip/zero_tmp \
>> +       fip/bl30_zero.bin \
>> +       fip/bl301.bin \
>> +       fip/bl301_zero.bin \
>> +       fip/bl30_new.bin \
>> +       bl30
>> +
>> +    $ python $FIPDIR/acs_tool.pyc fip/bl2.bin fip/bl2_acs.bin fip/acs.bin 0
>> +
>> +    $ $FIPDIR/blx_fix.sh \
>> +       fip/bl2_acs.bin \
>> +       fip/zero_tmp \
>> +       fip/bl2_zero.bin \
>> +       fip/bl21.bin \
>> +       fip/bl21_zero.bin \
>> +       fip/bl2_new.bin \
>> +       bl2
>> +
>> +    $ $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl30_new.bin
>> +    $ $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl31.img
>> +    $ $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl33.bin
>> +    $ $FIPDIR/gxl/aml_encrypt_gxl --bl2sig --input fip/bl2_new.bin --output fip/bl2.n.bin.sig
>> +    $ $FIPDIR/gxl/aml_encrypt_gxl --bootmk \
>> +               --output fip/u-boot.bin \
>> +               --bl2 fip/bl2.n.bin.sig \
>> +               --bl30 fip/bl30_new.bin.enc \
>> +               --bl31 fip/bl31.img.enc \
>> +               --bl33 fip/bl33.bin.enc
>>
>>  and then write the image to SD with:
>>
>> - > DEV=/dev/your_sd_device
>> - > dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=512 skip=1 seek=1
>> - > dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=1 count=444
>> +.. code-block:: bash
>> +
>> +    $ DEV=/dev/your_sd_device
>> +    $ dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=512 skip=1 seek=1
>> +    $ dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=1 count=444
>> diff --git a/board/amlogic/s400/README b/doc/board/amlogic/s400.rst
>> similarity index 21%
>> rename from board/amlogic/s400/README
>> rename to doc/board/amlogic/s400.rst
>> index a48db22a42..a1d5cac633 100644
>> --- a/board/amlogic/s400/README
>> +++ b/doc/board/amlogic/s400.rst
>> @@ -17,93 +17,91 @@ specifications:
>>
>>  Schematics are available from Amlogic on demand.
>>
>> -Currently the u-boot port supports the following devices:
>> - - serial
>> - - eMMC
>> - - Ethernet
>> - - I2C
>> - - Regulators
>> - - Reset controller
>> - - Clock controller
>> - - USB Host
>> - - ADC
>> +U-Boot compilation
>> +------------------
>>
>> -u-boot compilation
>> -==================
>> +.. code-block:: bash
>>
>> - > export CROSS_COMPILE=aarch64-none-elf-
>> - > make s400_defconfig
>> - > make
>> +    $ export CROSS_COMPILE=aarch64-none-elf-
>> +    $ make s400_defconfig
>> +    $ make
>>
>>  Image creation
>> -==============
>> +--------------
>>
>>  Amlogic doesn't provide sources for the firmware and for tools needed
>>  to create the bootloader image, so it is necessary to obtain them from
>>  the git tree published by the board vendor:
>>
>> - > wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> - > wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> - > tar xvfJ gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> - > tar xvfJ gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> - > export PATH=$PWD/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux/bin:$PWD/gcc-linaro-arm-none-eabi-4.8-2013.11_linux/bin:$PATH
>> - > git clone https://github.com/BayLibre/u-boot.git -b n-amlogic-openlinux-20170606 amlogic-u-boot
>> - > cd amlogic-u-boot
>> - > make axg_s400_v1_defconfig
>> - > make
>> - > export FIPDIR=$PWD/fip
>> +.. code-block:: bash
>> +
>> +    $ wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> +    $ wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> +    $ tar xvfJ gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
>> +    $ tar xvfJ gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
>> +    $ export PATH=$PWD/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux/bin:$PWD/gcc-linaro-arm-none-eabi-4.8-2013.11_linux/bin:$PATH
>> +    $ git clone https://github.com/BayLibre/u-boot.git -b n-amlogic-openlinux-20170606 amlogic-u-boot
>> +    $ cd amlogic-u-boot
>> +    $ make axg_s400_v1_defconfig
>> +    $ make
>> +    $ export FIPDIR=$PWD/fip
>>
>>  Go back to mainline U-boot source tree then :
>> - > mkdir fip
>> -
>> - > cp $FIPDIR/axg/bl2.bin fip/
>> - > cp $FIPDIR/axg/acs.bin fip/
>> - > cp $FIPDIR/axg/bl21.bin fip/
>> - > cp $FIPDIR/axg/bl30.bin fip/
>> - > cp $FIPDIR/axg/bl301.bin fip/
>> - > cp $FIPDIR/axg/bl31.img fip/
>> - > cp u-boot.bin fip/bl33.bin
>> -
>> - > $FIPDIR/blx_fix.sh \
>> -       fip/bl30.bin \
>> -       fip/zero_tmp \
>> -       fip/bl30_zero.bin \
>> -       fip/bl301.bin \
>> -       fip/bl301_zero.bin \
>> -       fip/bl30_new.bin \
>> -       bl30
>> -
>> - > $FIPDIR/acs_tool.pyc fip/bl2.bin fip/bl2_acs.bin fip/acs.bin 0
>> -
>> - > $FIPDIR/blx_fix.sh \
>> -       fip/bl2_acs.bin \
>> -       fip/zero_tmp \
>> -       fip/bl2_zero.bin \
>> -       fip/bl21.bin \
>> -       fip/bl21_zero.bin \
>> -       fip/bl2_new.bin \
>> -       bl2
>> -
>> - > $FIPDIR/axg/aml_encrypt_axg --bl3sig --input fip/bl30_new.bin \
>> -                                       --output fip/bl30_new.bin.enc \
>> -                                       --level v3 --type bl30
>> - > $FIPDIR/axg/aml_encrypt_axg --bl3sig --input fip/bl31.img \
>> -                                       --output fip/bl31.img.enc \
>> -                                       --level v3 --type bl31
>> - > $FIPDIR/axg/aml_encrypt_axg --bl3sig --input fip/bl33.bin --compress lz4 \
>> -                                       --output fip/bl33.bin.enc \
>> -                                       --level v3 --type bl33
>> - > $FIPDIR/axg/aml_encrypt_axg --bl2sig --input fip/bl2_new.bin \
>> -                                       --output f



More information about the U-Boot mailing list