Add fstab for microdroid & add more kernel commandline params
The vendor_boot.img now has fstab file in it. It currently mounts the
system.img to /system, but eventually we will use the dynamic partitions
in super.img.
A few more essential kernel commandline params are added. Eventually,
these androidboot.* parameters will be given via /proc/bootconfig.
Bug: 178562528
Test: build microdroid-* modules. push microdroid-boot-5.10.img as
boot.img, microdroid-vendor-boot-5.10.img as vendor_boot.img,
micrdroid.img as super.img.
Run assemble_cvd on the device.
Push microdroid-uboot_env.img as uboot_env.img
Run crosvm with the generated composite image. VM goes through the
bootloader, kernel, first stage init, and then second stage init.
Change-Id: Id1ce4f33f912bb80cd280060ecd9cabe57675660
diff --git a/microdroid/Android.bp b/microdroid/Android.bp
index dc9a4bb..8ff2b36 100644
--- a/microdroid/Android.bp
+++ b/microdroid/Android.bp
@@ -158,7 +158,28 @@
deps: ["virt_device_prebuilts_kernel_modules-5.10-x86_64"],
},
},
+ deps: [
+ "microdroid_fstab",
+ ],
+ base_dir: "first_stage_ramdisk",
type: "compressed_cpio",
+ symlinks: [
+ {
+ target: "etc/fstab",
+ name: "first_stage_ramdisk/fstab.microdroid",
+ },
+ {
+ target: "first_stage_ramdisk/lib",
+ name: "lib",
+ },
+ ],
+}
+
+prebuilt_etc {
+ name: "microdroid_fstab",
+ src: "fstab",
+ filename: "fstab",
+ installable: false,
}
prebuilt_etc {
diff --git a/microdroid/fstab b/microdroid/fstab
new file mode 100644
index 0000000..5887451
--- /dev/null
+++ b/microdroid/fstab
@@ -0,0 +1 @@
+/dev/block/by-name/super /system ext4 noatime,ro,errors=panic wait,first_stage_mount
diff --git a/microdroid/uboot-env.txt b/microdroid/uboot-env.txt
index 0ef66b8..cdd2c19 100644
--- a/microdroid/uboot-env.txt
+++ b/microdroid/uboot-env.txt
@@ -1,7 +1,11 @@
# Static u-boot environment variables for microdroid. See b/180481192
+# Boot the device following the Android boot procedure
bootcmd=boot_android virtio -
+# Kernel commandlines
+bootargs=rdinit=/bin/init_vendor panic=-1 androidboot.first_stage_console=1 androidboot.hardware=microdroid androidboot.boot_devices=10000.pci
+
# 0:2 is the misc partition
bootdevice=0:2
bootdelay=0