Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 28 Aug 2018 21:51:59 +0000 (UTC)
From:      Mark Johnston <markj@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r478330 - head/sysutils/devcpu-data
Message-ID:  <201808282151.w7SLpxvW011168@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: markj (src committer)
Date: Tue Aug 28 21:51:59 2018
New Revision: 478330
URL: https://svnweb.freebsd.org/changeset/ports/478330

Log:
  sysutils/devcpu-data: Provide a file for loading Intel updates at boot
  
  Extend the port so that users may easily apply microcode updates using
  the method implemented in src r337715.  For now, this just consists of
  providing all Intel microcode update files concatenated together as a
  single blob in /boot/firmware.
  
  Approved by:	sbruno
  Sponsored by:	The FreeBSD Foundation
  Differential Revision:	https://reviews.freebsd.org/D16924

Modified:
  head/sysutils/devcpu-data/Makefile
  head/sysutils/devcpu-data/pkg-message
  head/sysutils/devcpu-data/pkg-plist

Modified: head/sysutils/devcpu-data/Makefile
==============================================================================
--- head/sysutils/devcpu-data/Makefile	Tue Aug 28 21:01:27 2018	(r478329)
+++ head/sysutils/devcpu-data/Makefile	Tue Aug 28 21:51:59 2018	(r478330)
@@ -2,7 +2,7 @@
 # $FreeBSD$
 
 PORTNAME=	data
-PORTVERSION=	1.19
+PORTVERSION=	1.20
 CATEGORIES=	sysutils
 MASTER_SITES=	https://downloadmirror.intel.com/28039/eng/:intel \
 		LOCAL/sbruno:amd
@@ -23,11 +23,13 @@ NO_ARCH=	yes
 NO_WRKSUBDIR=	yes
 
 DATADIR=	${PREFIX}/share/cpucontrol
+FWDIR=		/boot/firmware
 
 USE_RC_SUBR=	microcode_update
 
 post-extract:
 	${CP} -p ${FILESDIR}/Makefile ${FILESDIR}/ucode-split.c ${WRKSRC}
+	${CAT} ${WRKSRC}/intel-ucode/* ${WRKSRC}/intel-ucode-with-caveats/* > ${WRKSRC}/intel-ucode.bin
 
 do-install:
 	${MKDIR} ${STAGEDIR}${DATADIR}/
@@ -36,5 +38,7 @@ do-install:
 	${INSTALL_DATA} ${WRKSRC}/microcode_amd_fam16h.bin ${STAGEDIR}${DATADIR}/
 	${INSTALL_DATA} ${WRKSRC}/microcode_amd_fam17h.bin ${STAGEDIR}${DATADIR}/
 	${INSTALL_DATA} ${WRKSRC}/mcodes/* ${STAGEDIR}${DATADIR}/
+	${MKDIR} ${STAGEDIR}${FWDIR}
+	${INSTALL_DATA} ${WRKSRC}/intel-ucode.bin ${STAGEDIR}${FWDIR}/
 
 .include <bsd.port.mk>

Modified: head/sysutils/devcpu-data/pkg-message
==============================================================================
--- head/sysutils/devcpu-data/pkg-message	Tue Aug 28 21:01:27 2018	(r478329)
+++ head/sysutils/devcpu-data/pkg-message	Tue Aug 28 21:51:59 2018	(r478330)
@@ -1,11 +1,31 @@
 Installing this port will allow host startup to update the CPU microcode on 
-a FreeBSD system automatically.  In order to enable this feature, add the
-following to the system's /etc/rc.conf:
+a FreeBSD system automatically.  There are two methods for updating CPU
+microcode: the first methods loads and applies the update before the kernel
+begins booting, and the second method loads and applies updates using an
+rc script.  The first method is preferred, but is currently only supported
+on Intel i386 and amd64 processors running FreeBSD 12.0.  It is safe to
+enable both methods.
 
+The first method ensures that any CPU features introduced by a microcode
+update are visible to the kernel.  In other words, the update is loaded
+before the kernel performs CPU feature detection.
+
+To enable updates using the first method, add the following lines to
+the system's /boot/loader.conf:
+
+cpu_microcode_load="YES"
+cpu_microcode_name="/boot/firmware/intel-ucode.bin"
+
+This method will not load the microcode update until the system is
+rebooted.
+
+To enable updates using the second method, add the following line to
+the system's /etc/rc.conf:
+
 microcode_update_enable="YES"
 
-To ensure the update is applied, reboot the system or start the microcode update
-service via:
+Then, to ensure the update is applied, reboot the system or start the
+microcode update service via:
 
 # service microcode_update start
 

Modified: head/sysutils/devcpu-data/pkg-plist
==============================================================================
--- head/sysutils/devcpu-data/pkg-plist	Tue Aug 28 21:01:27 2018	(r478329)
+++ head/sysutils/devcpu-data/pkg-plist	Tue Aug 28 21:51:59 2018	(r478330)
@@ -172,3 +172,4 @@
 %%DATADIR%%/microcode_amd_fam15h.bin
 %%DATADIR%%/microcode_amd_fam16h.bin
 %%DATADIR%%/microcode_amd_fam17h.bin
+/boot/firmware/intel-ucode.bin



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201808282151.w7SLpxvW011168>