diff options
author | AVazquez <avazquez.dev@gmail.com> | 2020-11-16 12:41:21 +0100 |
---|---|---|
committer | Michael Olbrich <m.olbrich@pengutronix.de> | 2020-11-20 08:59:10 +0100 |
commit | b5515256f0b1c49c28a2939a15e6b5401c78efc1 (patch) | |
tree | 209255cb7278bac80b3575583fb5e4f820fde6e4 | |
parent | 7be962ef8bf80145b57df5e4f5a8091e8f292f29 (diff) | |
download | ptxdist-b5515256f0b1c49c28a2939a15e6b5401c78efc1.tar.gz ptxdist-b5515256f0b1c49c28a2939a15e6b5401c78efc1.tar.xz |
ptxd_make_fit_image: Add support for kernel load/entry addresses
Make it possible to specify load/entry addresses for the kernel.
These are required by the FIT image specification, but in some cases
users may not want to include them, so they are made optional.
Also add mandatory "os" property for kernel and ramdisk.
Signed-off-by: AVazquez <avazquez.dev@gmail.com>
Message-Id: <1605526881-13215-1-git-send-email-avazquez.dev@gmail.com>
Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
-rw-r--r-- | platforms/kernel-fit.in | 12 | ||||
-rw-r--r-- | scripts/lib/ptxd_make_fit_image.sh | 14 |
2 files changed, 26 insertions, 0 deletions
diff --git a/platforms/kernel-fit.in b/platforms/kernel-fit.in index 8cbc1a85a..9585ce64a 100644 --- a/platforms/kernel-fit.in +++ b/platforms/kernel-fit.in @@ -17,6 +17,18 @@ menuconfig KERNEL_FIT if KERNEL_FIT +config KERNEL_FIT_LOAD + string + prompt "Kernel load address (optional)" + help + Required by most bootloaders. Optional for Barebox. + +config KERNEL_FIT_ENTRY + string + prompt "Kernel entry address (optional)" + help + Required by most bootloaders. Optional for Barebox. + config KERNEL_FIT_SIGNED bool prompt "sign FIT image" diff --git a/scripts/lib/ptxd_make_fit_image.sh b/scripts/lib/ptxd_make_fit_image.sh index 9754d1e84..af535665d 100644 --- a/scripts/lib/ptxd_make_fit_image.sh +++ b/scripts/lib/ptxd_make_fit_image.sh @@ -21,7 +21,20 @@ ptxd_make_image_fit_its() { data = /incbin/("${image_kernel}"); type = "kernel"; arch = "$(ptxd_get_ptxconf PTXCONF_ARCH_STRING)"; + os = "linux"; compression = "none"; +EOF + if [ -n "$(ptxd_get_ptxconf PTXCONF_KERNEL_FIT_LOAD)" ]; then + cat << EOF + load = <$(ptxd_get_ptxconf PTXCONF_KERNEL_FIT_LOAD)>; +EOF + fi + if [ -n "$(ptxd_get_ptxconf PTXCONF_KERNEL_FIT_ENTRY)" ]; then + cat << EOF + entry = <$(ptxd_get_ptxconf PTXCONF_KERNEL_FIT_ENTRY)>; +EOF + fi + cat << EOF hash-1 { algo = "sha256"; }; @@ -33,6 +46,7 @@ EOF description = "initramfs"; data = /incbin/("${image_initramfs}"); type = "ramdisk"; + os = "linux"; compression = "none"; hash-1 { algo = "sha256"; |