From e2158041dc104d9ffa02440919bf48602c0d6bdf Mon Sep 17 00:00:00 2001 From: Andrew Jeddeloh Date: Tue, 16 Jan 2018 17:22:15 -0800 Subject: [PATCH] sys-kernel/coreos-kernel: include microcode Include microcode via the CONFIG_EXTRA_FIRMWARE option since prepending a cpio archive to bootengine.cpio doesn't work (needs to be a seperate initrd). --- ...4.14.14.ebuild => coreos-kernel-4.14.14-r1.ebuild} | 11 +++++++++-- ....14.14.ebuild => coreos-modules-4.14.14-r1.ebuild} | 0 2 files changed, 9 insertions(+), 2 deletions(-) rename sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-kernel/{coreos-kernel-4.14.14.ebuild => coreos-kernel-4.14.14-r1.ebuild} (84%) rename sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-modules/{coreos-modules-4.14.14.ebuild => coreos-modules-4.14.14-r1.ebuild} (100%) diff --git a/sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-kernel/coreos-kernel-4.14.14.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-kernel/coreos-kernel-4.14.14-r1.ebuild similarity index 84% rename from sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-kernel/coreos-kernel-4.14.14.ebuild rename to sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-kernel/coreos-kernel-4.14.14-r1.ebuild index abc3b4ff57..8e6f61c1ee 100644 --- a/sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-kernel/coreos-kernel-4.14.14.ebuild +++ b/sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-kernel/coreos-kernel-4.14.14-r1.ebuild @@ -26,10 +26,11 @@ DEPEND="${RDEPEND} sys-fs/e2fsprogs sys-fs/mdadm sys-fs/xfsprogs - >=sys-kernel/coreos-firmware-20160331-r1:= + >=sys-kernel/coreos-firmware-20180103-r1:= >=sys-kernel/bootengine-0.0.4:= sys-kernel/dracut - virtual/udev" + virtual/udev + amd64? ( sys-firmware/intel-microcode )" # We are bad, we want to get around the sandbox. So do the creation of the # cpio image in pkg_setup() where we are free to mount filesystems, chroot, @@ -60,6 +61,12 @@ src_prepare() { # Symlink to bootengine.cpio so we can stick with relative paths in .config ln -sv "${ROOT}"/usr/share/bootengine/bootengine.cpio build/ || die config_update 'CONFIG_INITRAMFS_SOURCE="bootengine.cpio"' + + # include all intel and amd microcode files, avoiding the signatures + local fw_dir="${ROOT}lib/firmware" + use amd64 && config_update "CONFIG_EXTRA_FIRMWARE=\"$(find ${fw_dir} -type f \ + \( -path ${fw_dir}'/intel-ucode/*' -o -path ${fw_dir}'/amd-ucode/*' \) -printf '%P ')\"" + use amd64 && config_update "CONFIG_EXTRA_FIRMWARE_DIR=\"${fw_dir}\"" } src_compile() { diff --git a/sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-modules/coreos-modules-4.14.14.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-modules/coreos-modules-4.14.14-r1.ebuild similarity index 100% rename from sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-modules/coreos-modules-4.14.14.ebuild rename to sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-modules/coreos-modules-4.14.14-r1.ebuild