diff options
| author | Todor Minchev <todor.minchev@linux.intel.com> | 2016-12-13 14:56:49 -0800 |
|---|---|---|
| committer | California Sullivan <california.l.sullivan@intel.com> | 2016-12-15 10:27:18 -0800 |
| commit | 48c335a46e03b46540a83a365fea76b92940927b (patch) | |
| tree | 6099fbb24fea8271eb63569903a755e34193211e | |
| parent | 3d218385a7d8509fbb66b6aa92efef185d1cfcde (diff) | |
| download | meta-intel-48c335a46e03b46540a83a365fea76b92940927b.tar.gz | |
rmc: add support for alternative EFI bootloaders
RMC was previously configured to work only with the systemd-boot EFI
bootloader. With this commit we can specify alternative bootloaders by
setting the RMC_BOOTLOADER variable in local.conf. If RMC_BOOTLOADER is
not set systemd-boot will be used by default.
Signed-off-by: Todor Minchev <todor.minchev@linux.intel.com>
Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
| -rw-r--r-- | classes/rmc-boot.bbclass (renamed from classes/rmc-systemd-boot.bbclass) | 5 | ||||
| -rw-r--r-- | conf/machine/include/meta-intel.inc | 2 | ||||
| -rw-r--r-- | documentation/rmc/README | 16 |
3 files changed, 17 insertions, 6 deletions
diff --git a/classes/rmc-systemd-boot.bbclass b/classes/rmc-boot.bbclass index ad2cf106..a1f2093f 100644 --- a/classes/rmc-systemd-boot.bbclass +++ b/classes/rmc-boot.bbclass | |||
| @@ -1,9 +1,10 @@ | |||
| 1 | # rmc-systemd-boot bbclass | 1 | # rmc-boot bbclass |
| 2 | # Deploy central RMC database file to ESP | 2 | # Deploy central RMC database file to ESP |
| 3 | 3 | ||
| 4 | IMAGE_INSTALL_append = " rmc" | 4 | IMAGE_INSTALL_append = " rmc" |
| 5 | RMC_BOOTLOADER ?= "systemd-boot" | ||
| 5 | 6 | ||
| 6 | inherit systemd-boot | 7 | inherit ${RMC_BOOTLOADER} |
| 7 | 8 | ||
| 8 | do_bootimg[depends] += "${MLPREFIX}rmc-db:do_deploy" | 9 | do_bootimg[depends] += "${MLPREFIX}rmc-db:do_deploy" |
| 9 | 10 | ||
diff --git a/conf/machine/include/meta-intel.inc b/conf/machine/include/meta-intel.inc index c7555ce9..fd0a792a 100644 --- a/conf/machine/include/meta-intel.inc +++ b/conf/machine/include/meta-intel.inc | |||
| @@ -32,7 +32,7 @@ MACHINE_ESSENTIAL_EXTRA_RDEPENDS_append = "${@bb.utils.contains('MACHINE_FEATURE | |||
| 32 | # merge the microcode data in the final initrd image. | 32 | # merge the microcode data in the final initrd image. |
| 33 | INITRD_LIVE_prepend = "${@bb.utils.contains('MACHINE_FEATURES', 'intel-ucode', '${DEPLOY_DIR_IMAGE}/microcode.cpio ', '', d)}" | 33 | INITRD_LIVE_prepend = "${@bb.utils.contains('MACHINE_FEATURES', 'intel-ucode', '${DEPLOY_DIR_IMAGE}/microcode.cpio ', '', d)}" |
| 34 | 34 | ||
| 35 | EFI_PROVIDER ?= "rmc-systemd-boot" | 35 | EFI_PROVIDER ?= "rmc-boot" |
| 36 | 36 | ||
| 37 | # Add general MACHINEOVERRIDE for meta-intel | 37 | # Add general MACHINEOVERRIDE for meta-intel |
| 38 | MACHINEOVERRIDES =. "intel-x86-common:" | 38 | MACHINEOVERRIDES =. "intel-x86-common:" |
diff --git a/documentation/rmc/README b/documentation/rmc/README index 2427ffd2..dbee6b6d 100644 --- a/documentation/rmc/README +++ b/documentation/rmc/README | |||
| @@ -165,14 +165,24 @@ steps still can override results from this hook for boot entries and KBOOTPARAM. | |||
| 165 | 165 | ||
| 166 | Enable RMC Feature | 166 | Enable RMC Feature |
| 167 | -------------------------------------------------------------------------------- | 167 | -------------------------------------------------------------------------------- |
| 168 | To Enable RMC feature in build, add the below lines in a conf file: | 168 | To enable the RMC feature please add the following variables to your local.conf. |
| 169 | |||
| 169 | DISTRO_FEATURES_append = " rmc" | 170 | DISTRO_FEATURES_append = " rmc" |
| 170 | EFI_PROVIDER = "rmc-systemd-boot" | 171 | EFI_PROVIDER = "rmc-boot" |
| 172 | |||
| 173 | The default EFI bootloader used with RMC is systemd-boot. To change the default | ||
| 174 | bootloader please overwrite the RMC_BOOTLOADER variable in your local.conf | ||
| 171 | 175 | ||
| 172 | Note: | 176 | Note: |
| 173 | Image could be still bootable if you only have either of two lines, but RMC | 177 | Image could be still bootable if you only have either of two lines, but RMC |
| 174 | feature won't be fully functional. | 178 | feature won't be fully functional. |
| 175 | 179 | ||
| 180 | To install only the RMC client with the systemd-boot bootloader without | ||
| 181 | including a default RMC database file, add the following lines to your | ||
| 182 | local.conf: | ||
| 183 | |||
| 184 | EFI_PROVIDER = "systemd-boot" | ||
| 185 | IMAGE_INSTALL_append = " rmc" | ||
| 176 | 186 | ||
| 177 | 187 | ||
| 178 | Examples | 188 | Examples |
| @@ -190,7 +200,7 @@ EXAMPLE 1: Support a new board type: | |||
| 190 | (1) enable the feature and do a build to get a live-boot image by adding these | 200 | (1) enable the feature and do a build to get a live-boot image by adding these |
| 191 | lines in conf/local.conf: | 201 | lines in conf/local.conf: |
| 192 | DISTRO_FEATURES_append = " rmc" | 202 | DISTRO_FEATURES_append = " rmc" |
| 193 | EFI_PROVIDER = "rmc-systemd-boot" | 203 | EFI_PROVIDER = "rmc-boot" |
| 194 | 204 | ||
| 195 | (2) flash the image to a USB stick and boot it on your board | 205 | (2) flash the image to a USB stick and boot it on your board |
| 196 | 206 | ||
