path: root/classes
diff options
authorJianxun Zhang <>2016-08-03 18:04:16 (GMT)
committerTom Zanussi <>2016-08-03 22:37:41 (GMT)
commit96cd0d74286d98a26e34adcfc2bfa7c691c65a97 (patch)
tree82bf08c4fa54e6ffe6f033bd9692e052924edd5a /classes
parentdaa587ed5c950cdcbc3a4b2561fb92209c0784ec (diff)
rmc: Add recipe and bbclass for RMC feature
RMC Feature is based on RMC project, systemd-boot, EFI installer to enable a single generic image, built for multiple platforms, automatically applies customization and quirks specific to a type of boards at runtime. In another word, you will see a single image behaves differently and intelligently according to the type of board it is running on. To Enable this feature: add the two lines in conf file: DISTRO_FEATURES_append = " rmc" EFI_PROVIDER = "rmc-systemd-boot" Based on Saul Wold's initial work on a feature switch, RMC patches in systemd-boot, installer and gnu-efi aren't built unless the feature is enabled. For a supported board, this feature can : () show and boot with board-specific boot entries in boot menu in live-boot and post-installation. () apply a kernel cmdline fragment to the end of cmdline to boot Linux kernel. This is effective for any boot entry user chooses in boot menu. () create directory and deploy files only for the type of the running board to target's file systems. What left on target after installation is just same as the result from installing a conventional image customized for a single type of hardware. To add support of new boards, a new variable RMC_BOARD_DATA_DIRS is the interface to developers. How-to information will be provided with examples in following patches. Signed-off-by: Jianxun Zhang <> Reviewed-by: Saul Wold <> Signed-off-by: Tom Zanussi <>
Diffstat (limited to 'classes')
1 files changed, 12 insertions, 0 deletions
diff --git a/classes/rmc-systemd-boot.bbclass b/classes/rmc-systemd-boot.bbclass
new file mode 100644
index 0000000..ad2cf10
--- /dev/null
+++ b/classes/rmc-systemd-boot.bbclass
@@ -0,0 +1,12 @@
1# rmc-systemd-boot bbclass
2# Deploy central RMC database file to ESP
4IMAGE_INSTALL_append = " rmc"
6inherit systemd-boot
8do_bootimg[depends] += "${MLPREFIX}rmc-db:do_deploy"
10efi_populate_append() {
11 install -m 0400 ${DEPLOY_DIR_IMAGE}/rmc.db ${DEST}/rmc.db