Hi, Here are the 7th version of the patchset to enable kernel embedded bootconfig for non-initrd kernel boot environment. This version renames the Kconfig options, make the embedded data readonly, fixes some issues. Here is the previous version [1]. [1] https://lore.kernel.org/all/164870615889.127053.9055569952366814752.stgit@devnote2/T/#u You can embed a bootconfig file into the kernel as a default bootconfig, which will be used if there is no initrd or no bootconfig is attached to initrd. This needs 2 options: CONFIG_BOOT_CONFIG_EMBED=y and set the file path to CONFIG_BOOT_CONFIG_EMBED_FILE. Even if you embed the bootconfig file to the kernel, it will not be enabled unless you pass "bootconfig" kernel command line option at boot. Moreover, since this is just a "default" bootconfig, you can override it with a new bootconfig if you attach another bootconfig to the initrd (if possible). The CONFIG_BOOT_CONFIG_EMBED_FILE can take both absolute and relative path. This is requested by Padmanabha at the below thread[2]; [2] https://lore.kernel.org/all/20220307184011.GA2570@pswork/T/#u This had an issue about incremental build and LTO THIN mode issue because of using '.incbin' directive in inline asm. Now it is solved by separating it as an asm file. Thank you, --- Masami Hiramatsu (4): bootconfig: Make the bootconfig.o as a normal object file bootconfig: Check the checksum before removing the bootconfig from initrd bootconfig: Support embedding a bootconfig file in kernel docs: bootconfig: Add how to embed the bootconfig into kernel Documentation/admin-guide/bootconfig.rst | 31 ++++++++++++++++++++++-- MAINTAINERS | 1 + include/linux/bootconfig.h | 10 ++++++++ init/Kconfig | 21 ++++++++++++++++- init/main.c | 38 +++++++++++++++--------------- lib/.gitignore | 1 + lib/Makefile | 10 +++++++- lib/bootconfig-data.S | 10 ++++++++ lib/bootconfig.c | 13 ++++++++++ 9 files changed, 111 insertions(+), 24 deletions(-) create mode 100644 lib/bootconfig-data.S -- Masami Hiramatsu (Linaro) <mhiramat@xxxxxxxxxx>