diff mbox series

[v7,2/2] doc: spacemit: bananapi_f3: document Banana Pi F3 board

Message ID 20241214-pickup-bpif3-v7-2-d0cd91146f7b@gmail.com
State Superseded
Delegated to: Andes
Headers show
Series riscv: spacemit: add support for bananapi-f3 | expand

Commit Message

Huan Zhou Dec. 14, 2024, 7:30 a.m. UTC
From: Kongyang Liu <seashell11234455@gmail.com>

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>
---
 doc/board/index.rst                |   1 +
 doc/board/spacemit/bananapi-f3.rst | 106 +++++++++++++++++++++++++++++++++++++
 doc/board/spacemit/index.rst       |   9 ++++
 3 files changed, 116 insertions(+)

Comments

Heinrich Schuchardt Dec. 14, 2024, 9:31 p.m. UTC | #1
Am 14. Dezember 2024 08:30:22 MEZ schrieb Huan Zhou <pericycle.cc@gmail.com>:
>From: Kongyang Liu <seashell11234455@gmail.com>
>
>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>
>---
> doc/board/index.rst                |   1 +
> doc/board/spacemit/bananapi-f3.rst | 106 +++++++++++++++++++++++++++++++++++++
> doc/board/spacemit/index.rst       |   9 ++++
> 3 files changed, 116 insertions(+)
>
>diff --git a/doc/board/index.rst b/doc/board/index.rst
>index b54c1748d57ece029f0f3ab829956dc893e7f5d7..b1c470eb2cbb1c07f907eb2282039520c219c72a 100644
>--- a/doc/board/index.rst
>+++ b/doc/board/index.rst
>@@ -55,6 +55,7 @@ Board-specific doc
>    sipeed/index
>    socionext/index
>    sophgo/index
>+   spacemit/index
>    st/index
>    starfive/index
>    ste/index
>diff --git a/doc/board/spacemit/bananapi-f3.rst b/doc/board/spacemit/bananapi-f3.rst
>new file mode 100644
>index 0000000000000000000000000000000000000000..54b412775e458ee7a8cd436d7a1f1c6ac70744f6
>--- /dev/null
>+++ b/doc/board/spacemit/bananapi-f3.rst
>@@ -0,0 +1,106 @@
>+.. 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.

Thanks a lot for providing the documentation. Just some nits:

%/spacemit/SpacemiT/

>+
>+.. _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 part

%s/part/partition/

 from bianbu linux which is the bsp_ to

%s/from bianbu linux/of Bianbu Linux/

Bianbu Linux may be a part of the board support package but it is not the complete BSP. So how about:

which is provided as part of the BSP

 validate  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

%s/sdk/SDK/

Best regards

Heinrich

>+
>+.. 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
>+   =>
>+
>diff --git a/doc/board/spacemit/index.rst b/doc/board/spacemit/index.rst
>new file mode 100644
>index 0000000000000000000000000000000000000000..e7d3d94e4599fbeb8da16c8a837e777a0be06227
>--- /dev/null
>+++ b/doc/board/spacemit/index.rst
>@@ -0,0 +1,9 @@
>+.. SPDX-License-Identifier: GPL-2.0-or-later
>+
>+SpacemiT
>+========
>+.. toctree::
>+   :maxdepth: 1
>+
>+   bananapi-f3
>+
>
Huan Zhou Dec. 15, 2024, 4:54 a.m. UTC | #2
On Sat, Dec 14, 2024 at 10:31:40PM +0100, Heinrich Schuchardt wrote:
> Am 14. Dezember 2024 08:30:22 MEZ schrieb Huan Zhou <pericycle.cc@gmail.com>:
> >From: Kongyang Liu <seashell11234455@gmail.com>
> >
> >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>
> >---
> > doc/board/index.rst                |   1 +
> > doc/board/spacemit/bananapi-f3.rst | 106 +++++++++++++++++++++++++++++++++++++
> > doc/board/spacemit/index.rst       |   9 ++++
> > 3 files changed, 116 insertions(+)
> >
> >diff --git a/doc/board/index.rst b/doc/board/index.rst
> >index b54c1748d57ece029f0f3ab829956dc893e7f5d7..b1c470eb2cbb1c07f907eb2282039520c219c72a 100644
> >--- a/doc/board/index.rst
> >+++ b/doc/board/index.rst
> >@@ -55,6 +55,7 @@ Board-specific doc
> >    sipeed/index
> >    socionext/index
> >    sophgo/index
> >+   spacemit/index
> >    st/index
> >    starfive/index
> >    ste/index
> >diff --git a/doc/board/spacemit/bananapi-f3.rst b/doc/board/spacemit/bananapi-f3.rst
> >new file mode 100644
> >index 0000000000000000000000000000000000000000..54b412775e458ee7a8cd436d7a1f1c6ac70744f6
> >--- /dev/null
> >+++ b/doc/board/spacemit/bananapi-f3.rst
> >@@ -0,0 +1,106 @@
> >+.. 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.
> 
> Thanks a lot for providing the documentation. Just some nits:
> 
> %/spacemit/SpacemiT/
fix, thx:)
> 
> >+
> >+.. _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 part
> 
> %s/part/partition/
> 
>  from bianbu linux which is the bsp_ to
> 
> %s/from bianbu linux/of Bianbu Linux/
> 
> Bianbu Linux may be a part of the board support package but it is not the complete BSP. So how about:
> 
> which is provided as part of the BSP
> 
From bianbu linux official link[1], it writes:
```
Bianbu Linux is the BSP (Board Support Package) for the Spacemit Stone series chips, including the SDK (Software Development Kit). 
```

Link: https://bianbu-linux.spacemit.com/en/ [1]
i think is should be the complete bsp(include linux, opensbi and u-boot in the img it provide)...

>  validate  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
> 
> %s/sdk/SDK/
Got it.
> 
> Best regards
> 
> Heinrich
> 
> >+
> >+.. 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
> >+   =>
> >+
> >diff --git a/doc/board/spacemit/index.rst b/doc/board/spacemit/index.rst
> >new file mode 100644
> >index 0000000000000000000000000000000000000000..e7d3d94e4599fbeb8da16c8a837e777a0be06227
> >--- /dev/null
> >+++ b/doc/board/spacemit/index.rst
> >@@ -0,0 +1,9 @@
> >+.. SPDX-License-Identifier: GPL-2.0-or-later
> >+
> >+SpacemiT
> >+========
> >+.. toctree::
> >+   :maxdepth: 1
> >+
> >+   bananapi-f3
> >+
> >
>
diff mbox series

Patch

diff --git a/doc/board/index.rst b/doc/board/index.rst
index b54c1748d57ece029f0f3ab829956dc893e7f5d7..b1c470eb2cbb1c07f907eb2282039520c219c72a 100644
--- a/doc/board/index.rst
+++ b/doc/board/index.rst
@@ -55,6 +55,7 @@  Board-specific doc
    sipeed/index
    socionext/index
    sophgo/index
+   spacemit/index
    st/index
    starfive/index
    ste/index
diff --git a/doc/board/spacemit/bananapi-f3.rst b/doc/board/spacemit/bananapi-f3.rst
new file mode 100644
index 0000000000000000000000000000000000000000..54b412775e458ee7a8cd436d7a1f1c6ac70744f6
--- /dev/null
+++ b/doc/board/spacemit/bananapi-f3.rst
@@ -0,0 +1,106 @@ 
+.. 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 part from 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
+   =>
+
diff --git a/doc/board/spacemit/index.rst b/doc/board/spacemit/index.rst
new file mode 100644
index 0000000000000000000000000000000000000000..e7d3d94e4599fbeb8da16c8a837e777a0be06227
--- /dev/null
+++ b/doc/board/spacemit/index.rst
@@ -0,0 +1,9 @@ 
+.. SPDX-License-Identifier: GPL-2.0-or-later
+
+SpacemiT
+========
+.. toctree::
+   :maxdepth: 1
+
+   bananapi-f3
+