[meta-intel] [PATCH] intel-microcode: fix microcode loading on newer kernels

Anuj Mittal anuj.mittal at intel.com
Sun Jun 30 16:17:06 PDT 2019


From: "Yong, Jonathan" <jonathan.yong at intel.com>

The /dev/microcode interface and microcode-ctl utility has
been deprecated in favor of the new kernel
/sys/devices/system/cpu/microcode/reload interface as documented in:
https://github.com/torvalds/linux/blob/master/Documentation/x86/microcode.rst

It expects the microcode binaries to be split out and loaded from
/lib/firmware, eg:
/lib/firmware/intel-ucode/06-01-01
/lib/firmware/intel-ucode/06-01-02
/lib/firmware/intel-ucode/06-01-06
/lib/firmware/intel-ucode/06-01-07
/lib/firmware/intel-ucode/06-01-09
...

This change does not affect the earlyfw cpio generated by inte-ucode.

Signed-off-by: Yong, Jonathan <jonathan.yong at intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal at intel.com>
---
 recipes-core/microcode/intel-microcode_20190618.bb | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/recipes-core/microcode/intel-microcode_20190618.bb b/recipes-core/microcode/intel-microcode_20190618.bb
index 2edf947..fd68230 100644
--- a/recipes-core/microcode/intel-microcode_20190618.bb
+++ b/recipes-core/microcode/intel-microcode_20190618.bb
@@ -45,10 +45,10 @@ do_compile() {
 }
 
 do_install() {
-	install -d ${D}${base_libdir}/firmware/intel-ucode/
-	install ${WORKDIR}/microcode_${PV}.bin ${D}${base_libdir}/firmware/intel-ucode/
-	cd ${D}${base_libdir}/firmware/intel-ucode/
-	ln -sf microcode_${PV}.bin microcode.bin
+	install -d ${D}${nonarch_base_libdir}/firmware/intel-ucode/
+	${STAGING_DIR_NATIVE}${sbindir_native}/iucode_tool \
+	--write-firmware=${D}${nonarch_base_libdir}/firmware/intel-ucode \
+	${S}/intel-ucode/* ${S}/intel-ucode-with-caveats/*
 }
 
 do_deploy() {
@@ -63,6 +63,6 @@ addtask deploy before do_build after do_compile
 
 PACKAGES = "${PN}"
 
-FILES_${PN} = "${base_libdir}"
+FILES_${PN} = "${nonarch_base_libdir}"
 
 UPSTREAM_CHECK_GITTAGREGEX = "^microcode-(?P<pver>(\d+)[a-z])$"
-- 
2.7.4



More information about the meta-intel mailing list