Microdroid: Add support for android16-6.12 GKI as guest kernel

Bug: 392725856
Test: Boot Microdroid
Change-Id: I0cbb3b31d7eac3f0c2f8b9cf729e7dfb8b97e202
Merged-In: I0cbb3b31d7eac3f0c2f8b9cf729e7dfb8b97e202
diff --git a/build/microdroid/initrd/Android.bp b/build/microdroid/initrd/Android.bp
index 7331e0b..d9aa108 100644
--- a/build/microdroid/initrd/Android.bp
+++ b/build/microdroid/initrd/Android.bp
@@ -52,6 +52,17 @@
 }
 
 java_genrule {
+    name: "microdroid_gki-android16-6.12_initrd_gen_arm64",
+    srcs: [
+        ":microdroid_ramdisk",
+        ":microdroid_first_stage_ramdisk",
+        ":microdroid_gki_modules-android16-6.12-arm64",
+    ],
+    out: ["microdroid_initrd.img"],
+    cmd: "cat $(in) > $(out)",
+}
+
+java_genrule {
     name: "microdroid_gki-android15-6.6_initrd_gen_x86_64",
     srcs: [
         ":microdroid_ramdisk",
@@ -62,6 +73,17 @@
     cmd: "cat $(in) > $(out)",
 }
 
+java_genrule {
+    name: "microdroid_gki-android16-6.12_initrd_gen_x86_64",
+    srcs: [
+        ":microdroid_ramdisk",
+        ":microdroid_first_stage_ramdisk",
+        ":microdroid_gki_modules-android16-6.12-x86_64",
+    ],
+    out: ["microdroid_initrd.img"],
+    cmd: "cat $(in) > $(out)",
+}
+
 // This contains vbmeta hashes & related (boot)configs which are passed to kernel/init
 java_genrule {
     name: "microdroid_vbmeta_bootconfig_gen",
@@ -111,6 +133,17 @@
 }
 
 java_genrule {
+    name: "microdroid_gki-android16-6.12_initrd_debuggable_arm64",
+    tools: ["initrd_bootconfig"],
+    srcs: [
+        ":microdroid_gki-android16-6.12_initrd_gen_arm64",
+        ":microdroid_bootconfig_debuggable_src",
+    ] + bootconfigs_arm64,
+    out: ["microdroid_gki-android16-6.12_initrd_debuggable_arm64"],
+    cmd: "$(location initrd_bootconfig) attach --output $(out) $(in)",
+}
+
+java_genrule {
     name: "microdroid_initrd_debuggable_x86_64",
     tools: ["initrd_bootconfig"],
     srcs: [
@@ -144,6 +177,17 @@
 }
 
 java_genrule {
+    name: "microdroid_gki-android16-6.12_initrd_debuggable_x86_64",
+    tools: ["initrd_bootconfig"],
+    srcs: [
+        ":microdroid_gki-android16-6.12_initrd_gen_x86_64",
+        ":microdroid_bootconfig_debuggable_src",
+    ] + bootconfigs_x86_64,
+    out: ["microdroid_gki-android16-6.12_initrd_debuggable_x86_64"],
+    cmd: "$(location initrd_bootconfig) attach --output $(out) $(in)",
+}
+
+java_genrule {
     name: "microdroid_initrd_normal_arm64",
     tools: ["initrd_bootconfig"],
     srcs: [
@@ -166,6 +210,17 @@
 }
 
 java_genrule {
+    name: "microdroid_gki-android16-6.12_initrd_normal_arm64",
+    tools: ["initrd_bootconfig"],
+    srcs: [
+        ":microdroid_gki-android16-6.12_initrd_gen_arm64",
+        ":microdroid_bootconfig_normal_src",
+    ] + bootconfigs_arm64,
+    out: ["microdroid_gki-android16-6.12_initrd_normal_arm64"],
+    cmd: "$(location initrd_bootconfig) attach --output $(out) $(in)",
+}
+
+java_genrule {
     name: "microdroid_initrd_normal_x86_64",
     tools: ["initrd_bootconfig"],
     srcs: [
@@ -198,6 +253,17 @@
     cmd: "$(location initrd_bootconfig) attach --output $(out) $(in)",
 }
 
+java_genrule {
+    name: "microdroid_gki-android16-6.12_initrd_normal_x86_64",
+    tools: ["initrd_bootconfig"],
+    srcs: [
+        ":microdroid_gki-android16-6.12_initrd_gen_x86_64",
+        ":microdroid_bootconfig_normal_src",
+    ] + bootconfigs_x86_64,
+    out: ["microdroid_gki-android16-6.12_initrd_normal_x86_64"],
+    cmd: "$(location initrd_bootconfig) attach --output $(out) $(in)",
+}
+
 prebuilt_etc {
     name: "microdroid_initrd_debuggable",
     // We don't have ramdisk for architectures other than x86_64 & arm64
@@ -247,6 +313,21 @@
 }
 
 prebuilt_etc {
+    name: "microdroid_gki-android16-6.12_initrd_debuggable",
+    // We don't have ramdisk for architectures other than x86_64 & arm64
+    src: ":empty_file",
+    arch: {
+        arm64: {
+            src: ":microdroid_gki-android16-6.12_initrd_debuggable_arm64",
+        },
+        x86_64: {
+            src: ":microdroid_gki-android16-6.12_initrd_debuggable_x86_64",
+        },
+    },
+    filename: "microdroid_gki-android16-6.12_initrd_debuggable.img",
+}
+
+prebuilt_etc {
     name: "microdroid_initrd_normal",
     // We don't have ramdisk for architectures other than x86_64 & arm64
     src: ":empty_file",
@@ -293,3 +374,18 @@
     },
     filename: "microdroid_gki-android15-6.6_initrd_normal.img",
 }
+
+prebuilt_etc {
+    name: "microdroid_gki-android16-6.12_initrd_normal",
+    // We don't have ramdisk for architectures other than x86_64 & arm64
+    src: ":empty_file",
+    arch: {
+        arm64: {
+            src: ":microdroid_gki-android16-6.12_initrd_normal_arm64",
+        },
+        x86_64: {
+            src: ":microdroid_gki-android16-6.12_initrd_normal_x86_64",
+        },
+    },
+    filename: "microdroid_gki-android16-6.12_initrd_normal.img",
+}