From 82e730e5104e0480b77c819bd0e24e4206e16c94 Mon Sep 17 00:00:00 2001 From: Andrzej Telszewski Date: Mon, 25 Jul 2016 17:19:58 +0700 Subject: system/intel-microcode: Updated for version 20160607. Signed-off-by: Willy Sudiarto Raharjo --- system/intel-microcode/README | 45 +++++++++++++---------- system/intel-microcode/intel-microcode.SlackBuild | 8 ++-- system/intel-microcode/intel-microcode.info | 6 +-- system/intel-microcode/slack-desc | 2 +- 4 files changed, 34 insertions(+), 27 deletions(-) diff --git a/system/intel-microcode/README b/system/intel-microcode/README index fef45f24af..9eb300f9c0 100644 --- a/system/intel-microcode/README +++ b/system/intel-microcode/README @@ -7,25 +7,30 @@ approach to getting this microcode update is via a BIOS upgrade, Intel realizes that this can be an administrative hassle. The Linux operating system and VMware ESX products have a mechanism to update the microcode after booting. -This SlackBuild repackages the official Intel microcode tarball, placing the -microcode.dat file under /lib/firmware/microcode.dat, which can be later -uploaded using microcode_ctl utility (available from SlackBuilds.org). +This SlackBuild repackages the official Intel microcode archive. + +The "microcode.dat" file is placed under /lib/firmware/microcode.dat and can be +later uploaded using microcode_ctl utility (available from SlackBuilds.org). +This approach (microcode.dat + microcode_ctl) is kept for compatibility reasons +and should be avoided whenever possible. * Use the solution described below. * If the iucode_tool (available from SlackBuilds.org) is installed on the system, -this SlackBuild writes the microcodes with the file names expected by the Linux -kernel firmware loader and places them under /lib/firmware/intel-ucode -directory. In that case, the correct microcode is uploaded when the Intel -microcode kernel's module is loaded. - -Please note that the method using the iucode_tool is preferred for multiple -reasons, one being the deprecation of the kernel's interface used by the -microcode_ctl utility. - -If you need to load the microcode early during the boot: -1) read https://www.kernel.org/doc/Documentation/x86/early-microcode.txt -2) read the manual for iucode_tool, especially about --write-earlyfw option -3) make sure your kernel has the followings: - CONFIG_MICROCODE=y - CONFIG_MICROCODE_EARLY=y - CONFIG_MICROCODE_INTEL=y - CONFIG_MICROCODE_INTEL_EARLY=y +this SlackBuild will: + +1) write the microcodes with the file names as expected by the Linux kernel + firmware loader and place them under /lib/firmware/intel-ucode directory. + The correct microcode is uploaded when the Intel microcode kernel's module + is loaded. + +2) write the microcodes to an early initramfs archive: /boot/intel-ucode.cpio + This archive should be prepended to the regular initramfs to allow + the kernel to update processor microcode very early during system boot. + +To get started with early microcode loading, please have a look at: +1) https://www.kernel.org/doc/Documentation/x86/early-microcode.txt +2) iucode_tool man page, especially about --write-earlyfw option. + +For example, on my system that uses syslinux, to load the microcode early +during the boot process, the configuration file reads something like that: + + INITRD /boot/intel-ucode.cpio,/boot/initrd-generic-4.4.x.gz diff --git a/system/intel-microcode/intel-microcode.SlackBuild b/system/intel-microcode/intel-microcode.SlackBuild index dfb9c2cd2a..7fa2c2c984 100644 --- a/system/intel-microcode/intel-microcode.SlackBuild +++ b/system/intel-microcode/intel-microcode.SlackBuild @@ -2,7 +2,7 @@ # Slackware build script for intel-microcode -# Copyright 2014 Andrzej Telszewski, Sabadell +# Copyright 2016 Andrzej Telszewski, Banie # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -24,7 +24,7 @@ PRGNAM=intel-microcode SRCNAM=microcode -VERSION=${VERSION:-20151106} +VERSION=${VERSION:-20160607} BUILD=${BUILD:-1} TAG=${TAG:-_SBo} ARCH=noarch @@ -52,7 +52,9 @@ cp -a microcode.dat $PKG/lib/firmware if [ -x /usr/sbin/iucode_tool ]; then mkdir -p $PKG/lib/firmware/intel-ucode - /usr/sbin/iucode_tool -v -L -K$PKG/lib/firmware/intel-ucode microcode.dat + /usr/sbin/iucode_tool -v --list-all -K$PKG/lib/firmware/intel-ucode microcode.dat + mkdir -p $PKG/boot + /usr/sbin/iucode_tool -v --write-earlyfw=$PKG/boot/intel-ucode.cpio microcode.dat fi mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION diff --git a/system/intel-microcode/intel-microcode.info b/system/intel-microcode/intel-microcode.info index 2f17fd8954..2e9f240d44 100644 --- a/system/intel-microcode/intel-microcode.info +++ b/system/intel-microcode/intel-microcode.info @@ -1,8 +1,8 @@ PRGNAM="intel-microcode" -VERSION="20151106" +VERSION="20160607" HOMEPAGE="https://downloadcenter.intel.com/" -DOWNLOAD="https://downloadmirror.intel.com/25512/eng/microcode-20151106.tgz" -MD5SUM="288dc721fb39d71457ef2f5a49161f57" +DOWNLOAD="https://downloadmirror.intel.com/26083/eng/microcode-20160607.tgz" +MD5SUM="9be17f4afe5ee97e81659751e856af50" DOWNLOAD_x86_64="" MD5SUM_x86_64="" REQUIRES="" diff --git a/system/intel-microcode/slack-desc b/system/intel-microcode/slack-desc index c2460440f0..ec16178973 100644 --- a/system/intel-microcode/slack-desc +++ b/system/intel-microcode/slack-desc @@ -13,7 +13,7 @@ intel-microcode: for all Intel processors. Intel releases microcode updates to intel-microcode: correct processor behavior as documented in the respective processor intel-microcode: specification updates. intel-microcode: +intel-microcode: Homepage: https://downloadcenter.intel.com/ intel-microcode: intel-microcode: -intel-microcode: Homepage: https://downloadcenter.intel.com/ intel-microcode: -- cgit v1.2.3-65-gdbad