[Buildroot] [PATCH v5 00/10] Add RV64 NOMMU and Canaan K210 SoC support
Damien Le Moal
damien.lemoal at wdc.com
Tue Oct 26 07:17:18 UTC 2021
This series adds support for building 64-bits RISC-V NOMMU kernel
bootable images for boards using the dual-core RISC-V 64-bits Cannan
Kendryte K210 SoC.
The first patch fixes invocation of elf2flt with NOMMU builds to fit the
requirements of RV64 builds. The second patch adds support for RV64 to
the elf2flt package. Patch 3 changes the base name of the toolchain
cross-compilation executables to avoid build errors. With these
preparatory patches in place, patch 4 makes MMU builds optional for
RISC-V 64-bits architecture.
The following 5 patches add default build configuration files for
various boards based on the Canaan K210 SoC: MAIX-bit, MAIX-go,
MAIX-dock (Dan Dock) and MAIXDUINO from Sipeed and the Canaan KD233
development board.
Finally, patch 10 documents how to build and install images for these
boards.
Changes from v4:
* Added patch 1 to address build options specification common to all
packages.
* Removed busybox additional CFLAGS and LDFLAGS options from the
busybox-tiny config file.
Changes from v3:
* Rebased on latest tree
Changes from v2:
* Reorder patches: former patch 1 is now patch 3.
* Clearly state in the first 3 patch commit messages that the NOMMU
support introduced is for RISC-V 64-bits only and does not affect
RV32.
* Modify patch 3 to allow NOMMU builds only for RV64 as opposed to both
RV32 and RV64 before.
* Add reference to upstream elf2flt pull request in patch 1.
* Simplify the configurations for all boards, keeping default settings
when a special value is not needed (e.g. gcc version).
* Dropped busybox-tiny-initramfs.config configuration and replaced it
with a busybox fragment configuration file updating the default
busybox-minimal.config configuration (used now for all boards).
* Changed common k210 rootfs overlay to replace the default /init script
with a symbolic link pointing to the overlay provided /sbin/init
script.
Changes from v1:
* Rebased on latest master
* Simplified patch 3 as suggested by Baruch
* Fixed typos in documentation (patch 9)
* Added reviewed-by tags
Christoph Hellwig (1):
package/Makefile.in: Fix NOMMU RISC-V 64-bits toolchain base name
Damien Le Moal (9):
package: Makefile.in: fix elf2flt invocation options
package/elf2flt: add RISC-V 64-bits support
arch/config: Make RISC-V 64-bits MMU optional
board: Add Sipeed MAIX-bit support
board: Add Sipeed MAIX-Go support
board: Add Sipeed MAIXDUINO support
board: Add Sipeed MAIX-Dock support
board: Add Canaan KD233 support
board: Document Canaan K210 based boards support
arch/Config.in | 1 -
arch/Config.in.riscv | 2 +
board/canaan/k210-common/README.md | 318 ++++++++++++++++++
board/canaan/k210-common/busybox-tiny.config | 241 +++++++++++++
board/canaan/k210-common/rootfs_overlay/init | 1 +
.../k210-common/rootfs_overlay/sbin/init | 27 ++
board/canaan/kd233/README.md | 4 +
board/canaan/kd233/linux-dtb.config | 2 +
board/sipeed/maix-bit/README.md | 4 +
board/sipeed/maix-bit/linux-dtb.config | 2 +
board/sipeed/maix-dock/README.md | 4 +
board/sipeed/maix-dock/linux-dtb.config | 2 +
board/sipeed/maix-go/README.md | 4 +
board/sipeed/maix-go/linux-dtb.config | 2 +
board/sipeed/maixduino/README.md | 4 +
board/sipeed/maixduino/linux-dtb.config | 2 +
configs/canaan_kd233_defconfig | 14 +
configs/canaan_kd233_sdcard_defconfig | 13 +
configs/sipeed_maix_bit_defconfig | 14 +
configs/sipeed_maix_bit_sdcard_defconfig | 13 +
configs/sipeed_maix_dock_defconfig | 14 +
configs/sipeed_maix_dock_sdcard_defconfig | 13 +
configs/sipeed_maix_go_defconfig | 14 +
configs/sipeed_maix_go_sdcard_defconfig | 13 +
configs/sipeed_maixduino_defconfig | 14 +
configs/sipeed_maixduino_sdcard_defconfig | 13 +
package/Makefile.in | 26 +-
...04-elf2flt-add-riscv-64-bits-support.patch | 137 ++++++++
package/elf2flt/Config.in.host | 2 +-
29 files changed, 910 insertions(+), 10 deletions(-)
create mode 100644 board/canaan/k210-common/README.md
create mode 100644 board/canaan/k210-common/busybox-tiny.config
create mode 120000 board/canaan/k210-common/rootfs_overlay/init
create mode 100755 board/canaan/k210-common/rootfs_overlay/sbin/init
create mode 100644 board/canaan/kd233/README.md
create mode 100644 board/canaan/kd233/linux-dtb.config
create mode 100644 board/sipeed/maix-bit/README.md
create mode 100644 board/sipeed/maix-bit/linux-dtb.config
create mode 100644 board/sipeed/maix-dock/README.md
create mode 100644 board/sipeed/maix-dock/linux-dtb.config
create mode 100644 board/sipeed/maix-go/README.md
create mode 100644 board/sipeed/maix-go/linux-dtb.config
create mode 100644 board/sipeed/maixduino/README.md
create mode 100644 board/sipeed/maixduino/linux-dtb.config
create mode 100644 configs/canaan_kd233_defconfig
create mode 100644 configs/canaan_kd233_sdcard_defconfig
create mode 100644 configs/sipeed_maix_bit_defconfig
create mode 100644 configs/sipeed_maix_bit_sdcard_defconfig
create mode 100644 configs/sipeed_maix_dock_defconfig
create mode 100644 configs/sipeed_maix_dock_sdcard_defconfig
create mode 100644 configs/sipeed_maix_go_defconfig
create mode 100644 configs/sipeed_maix_go_sdcard_defconfig
create mode 100644 configs/sipeed_maixduino_defconfig
create mode 100644 configs/sipeed_maixduino_sdcard_defconfig
create mode 100644 package/elf2flt/0004-elf2flt-add-riscv-64-bits-support.patch
--
2.31.1
More information about the buildroot
mailing list