diff options
Diffstat (limited to 'meta-intel-extras/classes/image_dd_efi.bbclass')
-rw-r--r-- | meta-intel-extras/classes/image_dd_efi.bbclass | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/meta-intel-extras/classes/image_dd_efi.bbclass b/meta-intel-extras/classes/image_dd_efi.bbclass new file mode 100644 index 0000000..9cb2075 --- /dev/null +++ b/meta-intel-extras/classes/image_dd_efi.bbclass | |||
@@ -0,0 +1,53 @@ | |||
1 | ############################################################################ | ||
2 | ## | ||
3 | ## Copyright (C) 2016 The Qt Company Ltd. | ||
4 | ## Contact: https://www.qt.io/licensing/ | ||
5 | ## | ||
6 | ## This file is part of the Boot to Qt meta layer. | ||
7 | ## | ||
8 | ## $QT_BEGIN_LICENSE:GPL$ | ||
9 | ## Commercial License Usage | ||
10 | ## Licensees holding valid commercial Qt licenses may use this file in | ||
11 | ## accordance with the commercial license agreement provided with the | ||
12 | ## Software or, alternatively, in accordance with the terms contained in | ||
13 | ## a written agreement between you and The Qt Company. For licensing terms | ||
14 | ## and conditions see https://www.qt.io/terms-conditions. For further | ||
15 | ## information use the contact form at https://www.qt.io/contact-us. | ||
16 | ## | ||
17 | ## GNU General Public License Usage | ||
18 | ## Alternatively, this file may be used under the terms of the GNU | ||
19 | ## General Public License version 3 or (at your option) any later version | ||
20 | ## approved by the KDE Free Qt Foundation. The licenses are as published by | ||
21 | ## the Free Software Foundation and appearing in the file LICENSE.GPL3 | ||
22 | ## included in the packaging of this file. Please review the following | ||
23 | ## information to ensure the GNU General Public License requirements will | ||
24 | ## be met: https://www.gnu.org/licenses/gpl-3.0.html. | ||
25 | ## | ||
26 | ## $QT_END_LICENSE$ | ||
27 | ## | ||
28 | ############################################################################ | ||
29 | |||
30 | DESCRIPTION = "Extends image_dd class to boot via GRUB-EFI and initramfs." | ||
31 | LICENSE = "CLOSED" | ||
32 | |||
33 | inherit image_dd | ||
34 | |||
35 | EXTRA_IMAGECMD_ext3 += "-L rootfs" | ||
36 | IMAGE_DEPENDS_ext3 += "initramfs-basic:do_rootfs" | ||
37 | |||
38 | IMAGE_CMD_ext3_prepend() { | ||
39 | |||
40 | # https://www.kernel.org/doc/Documentation/x86/early-microcode.txt | ||
41 | microcode="${@bb.utils.contains('MACHINE_FEATURES', 'intel-ucode', '${DEPLOY_DIR_IMAGE}/microcode.cpio ', '', d)}" | ||
42 | cat ${microcode} ${DEPLOY_DIR_IMAGE}/${INITRAMFS_IMAGE}-${MACHINE}.cpio.gz > ${IMAGE_ROOTFS}/boot/initramfs | ||
43 | chmod 0644 ${IMAGE_ROOTFS}/boot/initramfs | ||
44 | } | ||
45 | |||
46 | do_populate_boot() { | ||
47 | |||
48 | mkdir -p ${WORKDIR}/EFI/BOOT/ | ||
49 | # Path where EFI firmware searches for EFI executable | ||
50 | cp ${DEPLOY_DIR_IMAGE}/bootx64.efi ${WORKDIR}/EFI/BOOT/ | ||
51 | mcopy -s -i ${WORKDIR}/boot.img ${WORKDIR}/EFI ::/EFI | ||
52 | } | ||
53 | |||