[Buildroot] [git commit] boot/sun20i-d1-spl: new package

Peter Korsgaard peter at korsgaard.com
Mon Nov 8 08:45:40 UTC 2021


commit: https://git.buildroot.net/buildroot/commit/?id=87b06f3a803a26b4d6822646ef3c2be0210ba163
branch: https://git.buildroot.net/buildroot/commit/?id=refs/heads/master

U-Boot does not yet have SPL code to initialize the DDR controller on the
Allwinner D1 - So instead package the sun20i-d1-spl bootloader, which is
based on boot0 from the Allwinner BSP with some modifications to build it
separately from the BSP and boot mainline U-Boot as explained on the
linux-sunxi wiki:

https://linux-sunxi.org/Allwinner_Nezha

Signed-off-by: Peter Korsgaard <peter at korsgaard.com>
---
 DEVELOPERS                            |  1 +
 boot/Config.in                        |  1 +
 boot/sun20i-d1-spl/Config.in          |  8 ++++++++
 boot/sun20i-d1-spl/sun20i-d1-spl.hash |  2 ++
 boot/sun20i-d1-spl/sun20i-d1-spl.mk   | 23 +++++++++++++++++++++++
 5 files changed, 35 insertions(+)

diff --git a/DEVELOPERS b/DEVELOPERS
index a2d34fdcc7..19d527b396 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -2112,6 +2112,7 @@ F:	board/orangepi/
 F:	board/pandaboard/
 F:	board/roseapplepi/
 F:	boot/shim/
+F:	boot/sun20i-d1-spl/
 F:	configs/avenger96_defconfig
 F:	configs/beagleboneai_defconfig
 F:	configs/lafrite_defconfig
diff --git a/boot/Config.in b/boot/Config.in
index ff98a49796..40472ae07d 100644
--- a/boot/Config.in
+++ b/boot/Config.in
@@ -20,6 +20,7 @@ source "boot/optee-os/Config.in"
 source "boot/opensbi/Config.in"
 source "boot/s500-bootloader/Config.in"
 source "boot/shim/Config.in"
+source "boot/sun20i-d1-spl/Config.in"
 source "boot/syslinux/Config.in"
 source "boot/uboot/Config.in"
 source "boot/vexpress-firmware/Config.in"
diff --git a/boot/sun20i-d1-spl/Config.in b/boot/sun20i-d1-spl/Config.in
new file mode 100644
index 0000000000..9d94d87b1c
--- /dev/null
+++ b/boot/sun20i-d1-spl/Config.in
@@ -0,0 +1,8 @@
+config BR2_TARGET_SUN20I_D1_SPL
+	bool "sun20-d1-spl"
+	depends on BR2_RISCV_64
+	help
+	  Allwinner D1 boot0 code with modifications to use as U-Boot
+	  SPL.
+
+	  https://github.com/smaeul/sun20i_d1_spl
diff --git a/boot/sun20i-d1-spl/sun20i-d1-spl.hash b/boot/sun20i-d1-spl/sun20i-d1-spl.hash
new file mode 100644
index 0000000000..6ca60e5278
--- /dev/null
+++ b/boot/sun20i-d1-spl/sun20i-d1-spl.hash
@@ -0,0 +1,2 @@
+# Locally computed
+sha256  69063601239a7254fb72e486b138d88a6f2b5c645b24cdfe9792123f975d4a8f  sun20i-d1-spl-771192d0b3737798d7feca87263c8fa74a449787.tar.gz
diff --git a/boot/sun20i-d1-spl/sun20i-d1-spl.mk b/boot/sun20i-d1-spl/sun20i-d1-spl.mk
new file mode 100644
index 0000000000..2462ce2322
--- /dev/null
+++ b/boot/sun20i-d1-spl/sun20i-d1-spl.mk
@@ -0,0 +1,23 @@
+################################################################################
+#
+# sun20i-d1-spl
+#
+################################################################################
+
+# Commit on the 'mainline' branch
+SUN20I_D1_SPL_VERSION = 771192d0b3737798d7feca87263c8fa74a449787
+SUN20I_D1_SPL_SITE = $(call github,smaeul,sun20i_d1_spl,$(SUN20I_D1_SPL_VERSION))
+SUN20I_D1_SPL_INSTALL_TARGET = NO
+SUN20I_D1_SPL_INSTALL_IMAGES = YES
+SUN20I_D1_SPL_LICENSE = GPL-2.0+
+
+define SUN20I_D1_SPL_BUILD_CMDS
+	$(MAKE) -C $(@D) CROSS_COMPILE="$(TARGET_CROSS)" p=sun20iw1p1 mmc
+endef
+
+define SUN20I_D1_SPL_INSTALL_IMAGES_CMDS
+	$(INSTALL) -D -m 0644 $(@D)/nboot/boot0_sdcard_sun20iw1p1.bin \
+		$(BINARIES_DIR)/boot0_sdcard_sun20iw1p1.bin
+endef
+
+$(eval $(generic-package))



More information about the buildroot mailing list