summaryrefslogtreecommitdiffstats
path: root/meta-intel-extras/classes/image_dd_efi.bbclass
diff options
context:
space:
mode:
Diffstat (limited to 'meta-intel-extras/classes/image_dd_efi.bbclass')
-rw-r--r--meta-intel-extras/classes/image_dd_efi.bbclass53
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
30DESCRIPTION = "Extends image_dd class to boot via GRUB-EFI and initramfs."
31LICENSE = "CLOSED"
32
33inherit image_dd
34
35EXTRA_IMAGECMD_ext3 += "-L rootfs"
36IMAGE_DEPENDS_ext3 += "initramfs-basic:do_rootfs"
37
38IMAGE_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
46do_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