ANDROID: build: Add ability to build init_boot.img from ramdisk

Currently, the Bazel build does not have any hooks to supply a
ramdisk to the init_boot.img build.

Add the hook and feed the output to the kernel_images rule to
generate init_boot.img.

Change-Id: I2fbfda609fde6842aede3e9d16c02923a2368eb0
Signed-off-by: John Moon <quic_johmoo@quicinc.com>
This commit is contained in:
John Moon 2023-01-19 17:34:29 -08:00
parent 515dc189be
commit a1505002f0
2 changed files with 9 additions and 1 deletions

View File

@ -18,3 +18,6 @@ def get_dtstree(target):
def get_vendor_ramdisk_binaries(target):
return None
def get_gki_ramdisk_prebuilt_binary():
return None

View File

@ -19,6 +19,7 @@ load(
"get_dtbo_list",
"get_dtstree",
"get_vendor_ramdisk_binaries",
"get_gki_ramdisk_prebuilt_binary",
)
load(":msm_common.bzl", "define_top_level_config", "gen_config_without_source_lines", "get_out_dir")
load(":msm_dtc.bzl", "define_dtc_dist")
@ -195,6 +196,7 @@ def _define_image_build(
boot_image_outs = None,
dtbo_list = [],
vendor_ramdisk_binaries = None,
gki_ramdisk_prebuilt_binary = None,
in_tree_module_list = []):
"""Creates a `kernel_images` target which will generate bootable device images
@ -245,6 +247,7 @@ def _define_image_build(
vendor_dlkm_modules_blocklist = "modules.vendor_blocklist.msm.{}".format(msm_target),
dtbo_srcs = [":{}/".format(target) + d for d in dtbo_list] if dtbo_list else None,
vendor_ramdisk_binaries = vendor_ramdisk_binaries,
gki_ramdisk_prebuilt_binary = gki_ramdisk_prebuilt_binary,
boot_image_outs = boot_image_outs,
deps = [
"modules.list.msm.{}".format(msm_target),
@ -369,6 +372,7 @@ def define_msm_la(
dtbo_list = get_dtbo_list(msm_target)
dtstree = get_dtstree(msm_target)
vendor_ramdisk_binaries = get_vendor_ramdisk_binaries(msm_target)
gki_ramdisk_prebuilt_binary = get_gki_ramdisk_prebuilt_binary()
build_config_fragments = get_build_config_fragments(msm_target)
_define_build_config(
@ -401,7 +405,8 @@ def define_msm_la(
build_vendor_boot = True if dtbo_list else False,
dtbo_list = dtbo_list,
vendor_ramdisk_binaries = vendor_ramdisk_binaries,
boot_image_outs = None if dtb_list else ["boot.img"],
gki_ramdisk_prebuilt_binary = gki_ramdisk_prebuilt_binary,
boot_image_outs = None if dtb_list else ["boot.img", "init_boot.img"],
in_tree_module_list = in_tree_module_list,
)