#!/bin/sh # # SPDX-License-Identifier: GPL-2.0+ # # Copyright (C) 2019 Jagan Teki # # Based on the board/sunxi/mksunxi_fit_atf.sh # # Script to generate FIT image source for 64-bit puma boards with # U-Boot proper, ATF, PMU firmware and devicetree. # # usage: $0 [ [&2 echo "Please read Building section in doc/README.rockchip" >&2 BL31=/dev/null fi [ -z "$PMUM0" ] && PMUM0="rk3399m0.bin" if [ ! -f $PMUM0 ]; then echo "WARNING: PMUM0 file $PMUM0 NOT found, resulting binary is non-functional" >&2 echo "Please read Building section in doc/README.rockchip" >&2 PMUM0=/dev/null fi cat << __HEADER_EOF /* SPDX-License-Identifier: GPL-2.0+ OR X11 */ /* * Copyright (C) 2017 Theobroma Systems Design und Consulting GmbH * * Minimal dts for a SPL FIT image payload. */ /dts-v1/; / { description = "FIT image with U-Boot proper, ATF bl31, M0 Firmware, DTB"; #address-cells = <1>; images { uboot { description = "U-Boot (64-bit)"; data = /incbin/("u-boot-nodtb.bin"); type = "standalone"; arch = "arm64"; compression = "none"; load = <0x4a000000>; }; atf { description = "ARM Trusted Firmware"; data = /incbin/("$BL31"); type = "firmware"; arch = "arm64"; os = "arm-trusted-firmware"; compression = "none"; load = <0x1000>; entry = <0x1000>; }; pmu { description = "Cortex-M0 firmware"; data = /incbin/("$PMUM0"); type = "pmu-firmware"; compression = "none"; load = <0x180000>; }; fdt { description = "RK3399-Q7 (Puma) flat device-tree"; data = /incbin/("u-boot.dtb"); type = "flat_dt"; compression = "none"; }; __HEADER_EOF cat << __CONF_HEADER_EOF }; configurations { default = "conf"; conf { description = "Theobroma Systems RK3399-Q7 (Puma) SoM"; firmware = "atf"; loadables = "uboot", "pmu"; fdt = "fdt"; }; __CONF_HEADER_EOF cat << __ITS_EOF }; }; __ITS_EOF