diff options
author | Johannes Zink <j.zink@pengutronix.de> | 2022-09-05 18:36:11 +0200 |
---|---|---|
committer | Robert Schwebel <r.schwebel@pengutronix.de> | 2022-09-06 16:11:20 +0200 |
commit | 5bc0a6317a38d9752b9f67b0493ddfef7b16cf43 (patch) | |
tree | bc282d0aaf5aa3db22e41a984b7215bca1c77c57 | |
parent | 842455ae5f86964eb5c76f48382bfb53f43aec06 (diff) | |
download | DistroKit-5bc0a6317a38d9752b9f67b0493ddfef7b16cf43.tar.gz DistroKit-5bc0a6317a38d9752b9f67b0493ddfef7b16cf43.tar.xz |
v8a: rockchip: add Radxa Rock 3A image and blspec entry
Now that we have kernel, barebox and firmware in place, add rules for
building a bootspec-enabled image that's bootable on the Radxa ROCK-3A.
Signed-off-by: Johannes Zink <j.zink@pengutronix.de>
Signed-off-by: Michael Tretter <m.tretter@pengutronix.de>
Link: https://lore.pengutronix.de/20220905163615.2807729-17-m.tretter@pengutronix.de
Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
-rw-r--r-- | configs/platform-v8a/config/images/rock3a.config | 33 | ||||
-rw-r--r-- | configs/platform-v8a/platformconfig | 6 | ||||
-rw-r--r-- | configs/platform-v8a/platforms/blspec-rock3a.in | 5 | ||||
-rw-r--r-- | configs/platform-v8a/platforms/image-rock3a.in | 10 | ||||
-rw-r--r-- | configs/platform-v8a/projectroot/loader/entries/rock3a.conf | 6 | ||||
-rw-r--r-- | configs/platform-v8a/rules/blspec-rock3a.make | 38 | ||||
-rw-r--r-- | configs/platform-v8a/rules/image-rock3a.make | 32 |
7 files changed, 128 insertions, 2 deletions
diff --git a/configs/platform-v8a/config/images/rock3a.config b/configs/platform-v8a/config/images/rock3a.config new file mode 100644 index 0000000..27de5f8 --- /dev/null +++ b/configs/platform-v8a/config/images/rock3a.config @@ -0,0 +1,33 @@ +image @IMAGE@ { + hdimage { + align = 1M + disk-signature = 0xf5feaddc + } + partition boot1 { + offset = 32k + size = 2M + in-partition-table = false + image = "barebox-rock3a.img-rockchip" + } + partition boot2 { + offset = 2080k + size = 2M + in-partition-table = false + image = "barebox-rock3a.img-rockchip" + } + partition barebox_environment { + offset = 4128k + size = 128k + in-partition-table = false + image = /dev/null + } + partition root-A { + offset = 5M + image = "root.ext2" + partition-type = 0x83 + } + partition data { + partition-type = 0x83 + size = 512M + } +} diff --git a/configs/platform-v8a/platformconfig b/configs/platform-v8a/platformconfig index 78ec1aa..1057ba5 100644 --- a/configs/platform-v8a/platformconfig +++ b/configs/platform-v8a/platformconfig @@ -130,8 +130,8 @@ PTXCONF_KERNEL_IMAGE_RAW=y # PTXCONF_KERNEL_IMAGE_SIMPLE is not set PTXCONF_KERNEL_IMAGE="Image" PTXCONF_KERNEL_DTB=y -PTXCONF_KERNEL_DTS_PATH="${PTXDIST_PLATFORMCONFIG_SUBDIR}/dts:${KERNEL_DIR}/arch/${GENERIC_KERNEL_ARCH}/boot/dts:${KERNEL_DIR}/arch/${GENERIC_KERNEL_ARCH}/boot/dts/freescale" -PTXCONF_KERNEL_DTS="armada-3720-community.dts imx8mm-evk.dts imx8mp-evk.dts imx8mq-evk.dts" +PTXCONF_KERNEL_DTS_PATH="${PTXDIST_PLATFORMCONFIG_SUBDIR}/dts:${KERNEL_DIR}/arch/${GENERIC_KERNEL_ARCH}/boot/dts:${KERNEL_DIR}/arch/${GENERIC_KERNEL_ARCH}/boot/dts/freescale:${KERNEL_DIR}/arch/${GENERIC_KERNEL_ARCH}/boot/dts/rockchip" +PTXCONF_KERNEL_DTS="armada-3720-community.dts imx8mm-evk.dts imx8mp-evk.dts imx8mq-evk.dts rk3568-rock-3a.dts" # PTXCONF_KERNEL_DTBO is not set # PTXCONF_KERNEL_CODE_SIGNING is not set # PTXCONF_KERNEL_ZSTD is not set @@ -192,6 +192,7 @@ PTXCONF_IMX_ATF=y PTXCONF_BLSPEC_IMX8MM_EVK=y PTXCONF_BLSPEC_IMX8MP_EVK=y PTXCONF_BLSPEC_IMX8MQ_EVK=y +PTXCONF_BLSPEC_ROCK3A=y # end of bootloader spec entries # @@ -219,6 +220,7 @@ PTXCONF_IMAGE_KERNEL_INSTALL_EARLY=y # end of Generate images/linuximage # PTXCONF_IMAGE_RAUC is not set +PTXCONF_IMAGE_ROCK3A=y # PTXCONF_IMAGE_ROOT_CPIO is not set PTXCONF_IMAGE_ROOT_EXT=y PTXCONF_IMAGE_ROOT_EXT_SIZE="125%" diff --git a/configs/platform-v8a/platforms/blspec-rock3a.in b/configs/platform-v8a/platforms/blspec-rock3a.in new file mode 100644 index 0000000..e54a102 --- /dev/null +++ b/configs/platform-v8a/platforms/blspec-rock3a.in @@ -0,0 +1,5 @@ +## SECTION=blspec + +config BLSPEC_ROCK3A + tristate + prompt "/loader/entries/rock3a.conf bootloader spec entry" diff --git a/configs/platform-v8a/platforms/image-rock3a.in b/configs/platform-v8a/platforms/image-rock3a.in new file mode 100644 index 0000000..cd09d1e --- /dev/null +++ b/configs/platform-v8a/platforms/image-rock3a.in @@ -0,0 +1,10 @@ +## SECTION=image + +config IMAGE_ROCK3A + tristate + select HOST_GENIMAGE + select IMAGE_ROOT_EXT + select BAREBOX_ROCKCHIP + prompt "Generate images/rock3a.img" + help + Generate an image for the Radxa ROCK3 Model A. diff --git a/configs/platform-v8a/projectroot/loader/entries/rock3a.conf b/configs/platform-v8a/projectroot/loader/entries/rock3a.conf new file mode 100644 index 0000000..128e25a --- /dev/null +++ b/configs/platform-v8a/projectroot/loader/entries/rock3a.conf @@ -0,0 +1,6 @@ +title PTXdist - Pengutronix-DistroKit - ROCK-3A +version @VERSION@ +options rootwait +linux /boot/Image +devicetree /boot/rk3568-rock-3a.dtb +linux-appendroot true diff --git a/configs/platform-v8a/rules/blspec-rock3a.make b/configs/platform-v8a/rules/blspec-rock3a.make new file mode 100644 index 0000000..eeaf82b --- /dev/null +++ b/configs/platform-v8a/rules/blspec-rock3a.make @@ -0,0 +1,38 @@ +# -*-makefile-*- +# +# Copyright (C) 2020 by Sascha Hauer <s.hauer@pengutronix.de> +# +# For further information about the PTXdist project and license conditions +# see the README file. +# + +# +# We provide this package +# +PACKAGES-$(PTXCONF_BLSPEC_ROCK3A) += blspec-rock3a + +BLSPEC_ROCK3A_VERSION := 5.6.2 + +# ---------------------------------------------------------------------------- +# Target-Install +# ---------------------------------------------------------------------------- + +$(STATEDIR)/blspec-rock3a.targetinstall: + @$(call targetinfo) + + @$(call install_init, blspec-rock3a) + @$(call install_fixup,blspec-rock3a,PRIORITY,optional) + @$(call install_fixup,blspec-rock3a,SECTION,base) + @$(call install_fixup,blspec-rock3a,AUTHOR,"Sascha Hauer <s.hauer@pengutronix.de>") + @$(call install_fixup,blspec-rock3a,DESCRIPTION,missing) + + @$(call install_alternative, blspec-rock3a, 0, 0, 0644, \ + /loader/entries/rock3a.conf) + @$(call install_replace, blspec-rock3a, /loader/entries/rock3a.conf, \ + @VERSION@,'$(PTXDIST_BSP_AUTOVERSION)')$(ptx/nl) + + @$(call install_finish,blspec-rock3a) + + @$(call touch) + +# vim: syntax=make diff --git a/configs/platform-v8a/rules/image-rock3a.make b/configs/platform-v8a/rules/image-rock3a.make new file mode 100644 index 0000000..2f0107b --- /dev/null +++ b/configs/platform-v8a/rules/image-rock3a.make @@ -0,0 +1,32 @@ +# -*-makefile-*- +# +# Copyright (C) 2022 by Michael Riesch <michael.riesch@wolfvision.net> +# +# For further information about the PTXdist project and license conditions +# see the README file. +# + +# +# We provide this package +# +IMAGE_PACKAGES-$(PTXCONF_IMAGE_ROCK3A) += image-rock3a + +# +# Paths and names +# +IMAGE_ROCK3A := image-rock3a +IMAGE_ROCK3A_DIR := $(BUILDDIR)/$(IMAGE_ROCK3A) +IMAGE_ROCK3A_IMAGE := $(IMAGEDIR)/rock3a.img +IMAGE_ROCK3A_FILES := $(IMAGEDIR)/root.tgz +IMAGE_ROCK3A_CONFIG := rock3a.config + +# ---------------------------------------------------------------------------- +# Image +# ---------------------------------------------------------------------------- + +$(IMAGE_ROCK3A_IMAGE): + @$(call targetinfo) + @$(call image/genimage, IMAGE_ROCK3A) + @$(call finish) + +# vim: syntax=make |