mirror of
https://source.denx.de/u-boot/u-boot.git
synced 2025-08-11 09:47:00 +02:00
doc: add DeepComputing FML13V01 documentation
Describe building U-Boot for the board and booting. Carve out common information for JH7110 boards into an include. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: E Shattow <e@freeshell.de>
This commit is contained in:
parent
26cd7afcce
commit
9b0a451b9e
80
doc/board/starfive/deepcomputing_fml13v01.rst
Normal file
80
doc/board/starfive/deepcomputing_fml13v01.rst
Normal file
@ -0,0 +1,80 @@
|
||||
.. SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
DeepComputing Framework Motherboard (FLM13V01)
|
||||
==============================================
|
||||
|
||||
The DeepComputing Framework motherboard (FLM13V01) can be combined with a
|
||||
13 inch Framework laptop chassis to provide a complete laptop.
|
||||
|
||||
U-Boot for the board uses the same binaries as the VisionFive 2 board.
|
||||
Currently only serial console output is supported by mainline U-Boot.
|
||||
|
||||
Building
|
||||
--------
|
||||
|
||||
Setup the cross compilation environment variable:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
export CROSS_COMPILE=riscv64-linux-gnu-
|
||||
|
||||
The M-mode software OpenSBI provides the supervisor binary interface (SBI) and
|
||||
is responsible for the switch to S-Mode. It is a prerequisite for building
|
||||
U-Boot. Support for the JH7110 was introduced in OpenSBI 1.2. It is recommended
|
||||
to use a current release.
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
git clone https://github.com/riscv/opensbi.git
|
||||
cd opensbi
|
||||
make PLATFORM=generic FW_TEXT_START=0x40000000 FW_OPTIONS=0
|
||||
export OPENSBI="$(pwd)/build/platform/generic/firmware/fw_dynamic.bin"
|
||||
|
||||
Now build U-Boot SPL and main U-Boot.
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
cd <U-Boot-dir>
|
||||
make starfive_visionfive2_defconfig
|
||||
make
|
||||
|
||||
This will generate the U-Boot SPL image (spl/u-boot-spl.bin.normal.out) as well
|
||||
as the FIT image (u-boot.itb) with OpenSBI, U-Boot, and device-trees.
|
||||
|
||||
Device-tree selection
|
||||
---------------------
|
||||
|
||||
The product ID stored in the board EEPROM is used by U-Boot SPL to select the
|
||||
right configuration and device-tree from the u-boot.itb FIT image.
|
||||
|
||||
Furthermore if variable $fdtfile has not been saved in the environment it is
|
||||
set based on the product ID to *starfive/jh7110-deepcomputing-fml13v01.dtb*.
|
||||
|
||||
To overrule this default the variable can be set manually and saved in the
|
||||
environment
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
setenv fdtfile my_device-tree.dtb
|
||||
env save
|
||||
|
||||
Power switch
|
||||
------------
|
||||
|
||||
A tiny power switch is located in right upper corner of the board.
|
||||
|
||||
Open case detection
|
||||
-------------------
|
||||
|
||||
The board has an open case detection switch. Red lights will flash and the
|
||||
board will not boot if the switch is not held down.
|
||||
|
||||
UART
|
||||
----
|
||||
|
||||
UART 0 is exposed via the side channel contacts SBU1 and SBU2 of the lower,
|
||||
right USB C connector. A USB C cable and a breakout board are needed for
|
||||
physical access. It depends on the cable orientation on which of SBU1 and SBU2
|
||||
you will find RX and TX. The signal voltage is 3.3 V. The baud rate is 115200.
|
||||
|
||||
.. include:: jh7110_common.rst
|
@ -6,6 +6,7 @@ StarFive
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
deepcomputing_fml13v01
|
||||
milk-v_mars
|
||||
pine64_star64
|
||||
visionfive2
|
||||
|
89
doc/board/starfive/jh7110_common.rst
Normal file
89
doc/board/starfive/jh7110_common.rst
Normal file
@ -0,0 +1,89 @@
|
||||
.. SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
Boot source selection
|
||||
---------------------
|
||||
|
||||
The board provides DIP switches to select the device for loading the boot
|
||||
firmware.
|
||||
|
||||
=========== === ===
|
||||
Boot source SW1 SW2
|
||||
=========== === ===
|
||||
UART OFF OFF
|
||||
SD-card ON OFF
|
||||
eMMC OFF ON
|
||||
SPI flash ON ON
|
||||
=========== === ===
|
||||
|
||||
Flashing a new U-Boot version
|
||||
-----------------------------
|
||||
|
||||
U-Boot SPL is provided as file spl/u-boot-spl.bin.normal.out. Main U-Boot is
|
||||
in file u-boot.itb.
|
||||
|
||||
Assuming your new U-Boot version is on partition 1 of an SD-card you could
|
||||
install it to the SPI flash with:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
sf probe
|
||||
load mmc 1:1 $kernel_addr_r u-boot-spl.bin.normal.out
|
||||
sf update $kernel_addr_r 0 $filesize
|
||||
load mmc 1:1 $kernel_addr_r u-boot.itb
|
||||
sf update $kernel_addr_r 0x100000 $filesize
|
||||
|
||||
For loading the files from a TFTP server refer to the dhcp and tftpboot
|
||||
commands.
|
||||
|
||||
After updating U-Boot you may want to erase a saved environment and reboot.
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
env erase
|
||||
reset
|
||||
|
||||
Booting from SD-Card
|
||||
--------------------
|
||||
|
||||
The device boot ROM loads U-Boot SPL (u-boot-spl.bin.normal.out) from the
|
||||
partition with type GUID 2E54B353-1271-4842-806F-E436D6AF6985. You are free
|
||||
to choose any partition number.
|
||||
|
||||
With the default configuration U-Boot SPL loads the U-Boot FIT image
|
||||
(u-boot.itb) from partition 2 (CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION=0x2).
|
||||
When formatting it is recommended to use GUID
|
||||
BC13C2FF-59E6-4262-A352-B275FD6F7172 for this partition.
|
||||
|
||||
Booting from eMMC
|
||||
-----------------
|
||||
|
||||
The device boot ROM tries to load U-Boot SPL (u-boot-spl.bin.normal.out) from
|
||||
sector 0 of the eMMC's main hardware partition. But this conflicts with GPT
|
||||
partitioning. Fortunately eMMC can alternatively load U-Boot SPL from a backup
|
||||
position.
|
||||
|
||||
For U-Boot SPL (u-boot-spl.bin.normal.out) starting at sector 2048 (position
|
||||
0x100000) write the following bytes to the eMMC device after GPT partitioning:
|
||||
|
||||
======= ========================
|
||||
Address Bytes
|
||||
======= ========================
|
||||
0x0000 40 02 00 00 00 00 10 00
|
||||
0x0290 40 02 00 00 00 00 10 00
|
||||
======= ========================
|
||||
|
||||
With the default configuration U-Boot SPL loads the U-Boot FIT image
|
||||
(u-boot.itb) from partition 2 (CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION=0x2).
|
||||
When formatting it is recommended to use GUID
|
||||
BC13C2FF-59E6-4262-A352-B275FD6F7172 for this partition.
|
||||
|
||||
Booting from UART
|
||||
-----------------
|
||||
|
||||
The boot ROM supports the X-modem protocol to upload
|
||||
spl/u-boot-spl.bin.normal.out. U-Boot SPL support loading the FIT image
|
||||
u-boot.itb via the Y-modem protocol.
|
||||
|
||||
Due to restrictions of the boot ROM not all X-modem implementations are
|
||||
compatible. The package tio (https://github.com/tio/tio) has been found to be
|
||||
usable.
|
Loading…
Reference in New Issue
Block a user