112 lines
2.0 KiB
Bash
Executable File
112 lines
2.0 KiB
Bash
Executable File
#!/bin/bash
|
|
#
|
|
# Copyright (C) 2020 Rockchip Electronics Co., Ltd
|
|
#
|
|
# SPDX-License-Identifier: GPL-2.0+
|
|
#
|
|
|
|
# Process args and auto set variables
|
|
source ./${srctree}/arch/arm/mach-rockchip/fit_args.sh
|
|
|
|
if [ ! -f ${srctree}/images/ramdisk ]; then
|
|
touch ${srctree}/images/ramdisk
|
|
fi
|
|
|
|
if [ "${COMPRESSION}" == "gzip" ]; then
|
|
gzip -k -f -9 ${srctree}/images/kernel
|
|
SUFFIX=".gz"
|
|
elif [ "${COMPRESSION}" == "lz4" ]; then
|
|
${srctree}/scripts/compress.sh lz4 ${srctree}/images/kernel
|
|
SUFFIX=".lz4"
|
|
else
|
|
COMPRESSION="none"
|
|
SUFFIX=
|
|
fi
|
|
|
|
if grep -q '^CONFIG_FIT_ENABLE_RSASSA_PSS_SUPPORT=y' .config ; then
|
|
ALGO_PADDING=" padding = \"pss\";"
|
|
fi
|
|
|
|
cat << EOF
|
|
/*
|
|
* Copyright (C) 2020 Fuzhou Rockchip Electronics Co., Ltd
|
|
*
|
|
* Minimal dts for a FIT image.
|
|
*
|
|
* SPDX-License-Identifier: GPL-2.0
|
|
*/
|
|
|
|
/dts-v1/;
|
|
/ {
|
|
description = "FIT source file for Linux";
|
|
#address-cells = <1>;
|
|
|
|
images {
|
|
fdt {
|
|
data = /incbin/("./images/dtb");
|
|
type = "flat_dt";
|
|
arch = "${ARCH}";
|
|
compression = "none";
|
|
load = <0xffffff00>;
|
|
hash {
|
|
algo = "sha256";
|
|
};
|
|
};
|
|
|
|
kernel {
|
|
data = /incbin/("./images/kernel${SUFFIX}");
|
|
compression = "${COMPRESSION}";
|
|
type = "kernel";
|
|
arch = "${ARCH}";
|
|
os = "linux";
|
|
entry = <0xffffff01>;
|
|
load = <0xffffff01>;
|
|
hash {
|
|
algo = "sha256";
|
|
};
|
|
};
|
|
|
|
ramdisk {
|
|
data = /incbin/("./images/ramdisk");
|
|
compression = "none";
|
|
type = "ramdisk";
|
|
arch = "${ARCH}";
|
|
os = "linux";
|
|
load = <0xffffff02>;
|
|
hash {
|
|
algo = "sha256";
|
|
};
|
|
};
|
|
|
|
resource {
|
|
data = /incbin/("./images/second");
|
|
type = "multi";
|
|
arch = "${ARCH}";
|
|
compression = "none";
|
|
hash {
|
|
algo = "sha256";
|
|
};
|
|
};
|
|
};
|
|
|
|
configurations {
|
|
default = "conf";
|
|
conf {
|
|
description = "Boot Linux kernel with FDT blob";
|
|
rollback-index = <0x0>;
|
|
fdt = "fdt";
|
|
kernel = "kernel";
|
|
ramdisk = "ramdisk";
|
|
multi = "resource";
|
|
signature {
|
|
algo = "sha256,rsa2048";
|
|
${ALGO_PADDING}
|
|
key-name-hint = "dev";
|
|
sign-images = "fdt", "kernel", "ramdisk", "multi";
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
EOF
|