mirror of
https://github.com/smaeul/u-boot.git
synced 2025-09-14 22:16:03 +01:00
Add document for Banana Pi F3 board which based on SpacemiT's K1 SoC. Signed-off-by: Kongyang Liu <seashell11234455@gmail.com> Signed-off-by: Huan Zhou <pericycle.cc@gmail.com> Tested-by: Marcel Ziswiler <marcel@ziswiler.com> Reviewed-by: Yixun Lan <dlan@gentoo.org>
107 lines
3.1 KiB
ReStructuredText
107 lines
3.1 KiB
ReStructuredText
.. SPDX-License-Identifier: GPL-2.0-or-later
|
|
|
|
Banana Pi BPI-F3
|
|
================
|
|
|
|
Building
|
|
~~~~~~~~
|
|
1. Install the SpacemiT riscv cross compile toolchain_, or skip it if riscv toolchain is installed.
|
|
|
|
.. _toolchain: https://archive.spacemit.com/toolchain/
|
|
|
|
2. Setup cross compilation environment variable:
|
|
|
|
.. code-block:: console
|
|
|
|
export CROSS_COMPILE=<riscv64 toolchain prefix, e.g /opt/spacemit/bin/riscv64-unknown-linux-gnu->
|
|
|
|
3. Before building U-Boot, OpenSBI should be built first. OpenSBI can be
|
|
built for SpacemiT K1 SoC as below:
|
|
|
|
.. code-block:: console
|
|
|
|
git clone https://github.com/cyyself/opensbi -b k1-opensbi
|
|
cd opensbi
|
|
make PLATFORM=generic
|
|
|
|
4. Then build U-Boot as following:
|
|
|
|
.. code-block:: console
|
|
|
|
cd <U-Boot-dir>
|
|
make bananapi-f3_defconfig
|
|
make OPENSBI=<OpenSBI-dir>/build/platform/generic/firmware/fw_dynamic.bin
|
|
|
|
This will generate u-boot.itb
|
|
|
|
Burning
|
|
~~~~~~~
|
|
Actually, we can replace the uboot partition of Bianbu Linux which is the bsp_ to validate this patch,
|
|
use `balena etcher` to burn the bianbu-minimal.img to the sd card,
|
|
and replace the /dev/sdx4 where places the uboot_ with the `u-boot.itb` generated from this patch.
|
|
Or use fastboot:
|
|
Collect FSBL.bin, u-boot.itb, partition_2M.json, bootinfo_spinor.bin
|
|
u-boot-env-default.bin, fw_dynamic.itb from vendor SDK
|
|
|
|
.. code-block:: console
|
|
|
|
fastboot stage FSBL.bin
|
|
fastboot continue
|
|
fastboot stage u-boot.itb-vendor # the itb from vendor uboot
|
|
fastboot continue
|
|
|
|
fastboot flash mtd partition_2M.json
|
|
fastboot flash bootinfo bootinfo_spinor.bin
|
|
fastboot flash fsbl FSBL.bin
|
|
fastboot flash env u-boot-env-default.bin
|
|
fastboot flash opensbi fw_dynamic.itb
|
|
|
|
fastboot flash uboot u-boot.itb-mainline # the itb from mainline uboot
|
|
|
|
.. _bsp: https://archive.spacemit.com/image/k1/version/bianbu/v2.0/
|
|
.. _uboot: https://bianbu-linux.spacemit.com/en/device/boot#21-firmware-layout
|
|
|
|
Booting
|
|
~~~~~~~
|
|
Sample boot log from Banana Pi BPI-F3 board
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
.. code-block:: none
|
|
|
|
try sd...
|
|
bm:3
|
|
j...
|
|
|
|
U-Boot SPL 2022.10spacemit-dirty (Oct 21 2024 - 09:01:13 +0000)
|
|
[ 0.279] DDR type LPDDR4X
|
|
[ 0.292] lpddr4_silicon_init consume 13ms
|
|
[ 0.293] Change DDR data rate to 2400MT/s
|
|
[ 0.430] ## Checking hash(es) for config conf-1 ... OK
|
|
[ 0.432] ## Checking hash(es) for Image opensbi ... OK
|
|
[ 0.437] ## Checking hash(es) for Image uboot ... OK
|
|
[ 0.443] ## Checking hash(es) for Image fdt-1 ... OK
|
|
[ 0.488] ## Checking hash(es) for config config_1 ... OK
|
|
[ 0.490] ## Checking hash(es) for Image opensbi ... crc32+ OK
|
|
|
|
|
|
U-Boot 2024.10-rc4-00462-g5b138cfcc587-dirty (Nov 28 2024 - 14:56:49 +0800)
|
|
|
|
DRAM: 4 GiB
|
|
Core: 19 devices, 8 uclasses, devicetree: separate
|
|
Loading Environment from nowhere... OK
|
|
In: serial@d4017000
|
|
Out: serial@d4017000
|
|
Err: serial@d4017000
|
|
Net: No ethernet found.
|
|
=> cpu list
|
|
0: cpu@0 spacemit,x60
|
|
1: cpu@1 spacemit,x60
|
|
2: cpu@2 spacemit,x60
|
|
3: cpu@3 spacemit,x60
|
|
4: cpu@4 spacemit,x60
|
|
5: cpu@5 spacemit,x60
|
|
6: cpu@6 spacemit,x60
|
|
7: cpu@7 spacemit,x60
|
|
=> test
|
|
=>
|
|
|