X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=scripts%2Fmkefi-agl.sh;h=f2480e2e36305b7ba623e6daeac479dad92c6dc8;hb=2be72a3834c128d223bdf99b5491050d5175ed42;hp=e3240a6e5ee4e8499bd75fb21222c44fd7277e89;hpb=265ef30adadc52204efbd8b61ec950c507b512ab;p=AGL%2Fmeta-agl.git diff --git a/scripts/mkefi-agl.sh b/scripts/mkefi-agl.sh index e3240a6e5..f2480e2e3 100755 --- a/scripts/mkefi-agl.sh +++ b/scripts/mkefi-agl.sh @@ -25,7 +25,7 @@ # - keep initrd if present # - create a grub config with PARTUID to ease boot from various devices automaticaly # - add a UEFI startup.nsh script for autoboot -# - does not allocate swap +# - remove any configured swap is fstab # - accept .hddimg, wic and wic.xz as sources LANG=C @@ -415,10 +415,14 @@ if [ -f $HDDIMG_MNT/vmlinuz ]; then debug "kernel is vmlinuz" fi if [ -f $HDDIMG_MNT/bzimage ]; then - cp $HDDIMG_MNT/bzimage $BOOTFS_MNT 1>&3 2>&1 || die "Failed to copy vmlinuz" + cp $HDDIMG_MNT/bzimage $BOOTFS_MNT 1>&3 2>&1 || die "Failed to copy bzimage" KERNEL_TYPE="BZIMAGE" debug "kernel is bzimage" fi +if [ -f $HDDIMG_MNT/microcode.cpio ]; then + cp $HDDIMG_MNT/microcode.cpio $BOOTFS_MNT 1>&3 2>&1 || die "Failed to copy microcode.cpio" + debug "microcode.cpio copied" +fi [ -z $KERNEL_TYPE ] && die "Linux kernel type in $HDDIMG is unsupported" if [ -f $HDDIMG_MNT/initrd ] @@ -450,7 +454,10 @@ if [ -e "$GRUB_CFG" ]; then sed -i "/menuentry 'install'/,/^}/d" $GRUB_CFG # Delete any LABEL= strings sed -i "s/ LABEL=[^ ]*/ /" $GRUB_CFG - + # detect config initrd=microcode.cpio + if grep -q microcode $GRUB_CFG; then + warn "initrd=microcode.cpio detected, might not work on all boot configurations" + fi sed -i "s@ root=[^ ]*@ @" $GRUB_CFG sed -i "s@vmlinuz @vmlinuz root=$ROOTFS_PARTUUID @" $GRUB_CFG fi @@ -470,7 +477,10 @@ if [ -e "$SYSTEMDBOOT_CFG" ]; then fi # Delete any LABEL= strings sed -i "s/ LABEL=[^ ]*/ /" $SYSTEMDBOOT_BOOT - + # detect config initrd=microcode.cpio + if grep -q microcode $SYSTEMDBOOT_BOOT; then + warn "initrd=microcode.cpio detected, might not work on all boot configurations" + fi sed -i "s@ root=[^ ]*@ @" $SYSTEMDBOOT_BOOT sed -i "s@options @options root=$ROOTFS_PARTUUID @" $SYSTEMDBOOT_BOOT fi @@ -488,6 +498,8 @@ if [ $DEBUG -eq 1 ] && [ $? -eq 0 ]; then else cp -a $HDDIMG_ROOTFS_MNT/* $ROOTFS_MNT 1>&3 2>&1 || die "Root FS copy failed" fi +debug "removing any swap entry in /etc/fstab" +sed --in-place '/swap/d' $ROOTFS_MNT/etc/fstab printf "flushing data on removable device. May take a while ... " sync --file-system $ROOTFS_MNT