Index: sysutils/devcpu-data/Makefile =================================================================== --- sysutils/devcpu-data/Makefile +++ sysutils/devcpu-data/Makefile @@ -2,12 +2,12 @@ # $FreeBSD$ PORTNAME= data -PORTVERSION= 1.12 +PORTVERSION= 1.13 CATEGORIES= sysutils -MASTER_SITES= https://downloadmirror.intel.com/27337/eng/:intel \ +MASTER_SITES= https://downloadmirror.intel.com/27431/eng/:intel \ LOCAL/sbruno:amd PKGNAMEPREFIX= devcpu- -DISTFILES= microcode-20171117.tgz:intel amd-ucode-2014-12-01.tar.bz2:amd +DISTFILES= microcode-20180108.tgz:intel amd-ucode-2014-12-01.tar.bz2:amd MAINTAINER= clarkjc@runbox.com COMMENT= Intel and AMD CPUs microcode updates Index: sysutils/devcpu-data/distinfo =================================================================== --- sysutils/devcpu-data/distinfo +++ sysutils/devcpu-data/distinfo @@ -1,5 +1,5 @@ -TIMESTAMP = 1515095259 -SHA256 (microcode-20171117.tgz) = 93bd1da9fa58ece0016702e657f708b7e496e56da637a3fe9a6d21f1d6f524dc -SIZE (microcode-20171117.tgz) = 3594762 +TIMESTAMP = 1515528256 +SHA256 (microcode-20180108.tgz) = 063f1aa3a546cb49323a5e0b516894e4b040007107b8c8ff017aca8a86204130 +SIZE (microcode-20180108.tgz) = 3676678 SHA256 (amd-ucode-2014-12-01.tar.bz2) = e8f37ed12955585a625ee7cd48d89f9a04ceb2afa36081b52cc59d08a3bb8293 SIZE (amd-ucode-2014-12-01.tar.bz2) = 20585 Index: sysutils/devcpu-data/files/microcode_update.in =================================================================== --- sysutils/devcpu-data/files/microcode_update.in +++ sysutils/devcpu-data/files/microcode_update.in @@ -42,7 +42,7 @@ microcode_update_start() { - echo "Updating cpucodes..." + echo "Updating CPU Microcode..." if [ "${microcode_cpus}" = "ALL" ]; then ncpu=`/sbin/sysctl -n hw.ncpu` cpus=`jot ${ncpu} 0`; @@ -52,8 +52,19 @@ for i in ${cpus}; do ${CMT} -u ${microcode_update_flags} \ -d "${microcode_update_datadir}" /dev/cpuctl${i} || \ - (echo "Failed." && exit 1) + (echo "Microcode Update Failed." && exit 1) done + if [ "${microcode_cpus}" = "ALL" ]; then + for i in ${cpus}; do + ${CMT} -e /dev/cpuctl${i} + # EX_USAGE == 64, means it doesn't support the -e flag. + if [ $? -eq 64 ]; then + (echo "cpucontrol lacks ability to reload CPU flags." && exit 1) + elif [ $? -ne 0 ]; then + (echo "Re-evalutation of CPU flags Failed." && exit 1) + fi + done + fi echo "Done." } Index: sysutils/devcpu-data/pkg-message =================================================================== --- /dev/null +++ sysutils/devcpu-data/pkg-message @@ -0,0 +1,21 @@ +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: + +microcode_update_enable="YES" + +To ensure the update is applied, reboot the system or start the microcode update +service via: + +# service microcode_update start + +If the CPU requires a microcode update, a console message such as the following +will appear: + +cpuctl: access to MSR registers/cpuid info. +Updating cpucodes... +/usr/local/share/cpucontrol/m32306c3_00000022.fw: updating cpu /dev/cpuctl0 from rev 0x17 to rev 0x22... done. +/usr/local/share/cpucontrol/m32306c3_00000022.fw: updating cpu /dev/cpuctl2 from rev 0x17 to rev 0x22... done. +/usr/local/share/cpucontrol/m32306c3_00000022.fw: updating cpu /dev/cpuctl4 from rev 0x17 to rev 0x22... done. +/usr/local/share/cpucontrol/m32306c3_00000022.fw: updating cpu /dev/cpuctl6 from rev 0x17 to rev 0x22... done. +Done. Index: sysutils/devcpu-data/pkg-plist =================================================================== --- sysutils/devcpu-data/pkg-plist +++ sysutils/devcpu-data/pkg-plist @@ -73,7 +73,7 @@ %%DATADIR%%/m01f6402.fw %%DATADIR%%/m01f6508.fw %%DATADIR%%/m021066142.fw -%%DATADIR%%/m02906eb_00000071_00000072.fw +%%DATADIR%%/m02906eb_0000007f_00000080.fw %%DATADIR%%/m02f0a15.fw %%DATADIR%%/m02f241f.fw %%DATADIR%%/m02f252a.fw @@ -102,8 +102,8 @@ %%DATADIR%%/m0df330c.fw %%DATADIR%%/m101067660F.fw %%DATADIR%%/m101067770A.fw -%%DATADIR%%/m1050662_0000000f.fw -%%DATADIR%%/m1050663_0700000d.fw +%%DATADIR%%/m1050662_00000014.fw +%%DATADIR%%/m1050663_07000011.fw %%DATADIR%%/m1050664_0f00000a.fw %%DATADIR%%/m1069507.fw %%DATADIR%%/m106f76a.fw @@ -127,14 +127,14 @@ %%DATADIR%%/m206f6d1.fw %%DATADIR%%/m206fbBA.fw %%DATADIR%%/m206fda4.fw -%%DATADIR%%/m2240671_00000017.fw -%%DATADIR%%/m22906ea_0000006f_00000070.fw +%%DATADIR%%/m2240671_0000001b.fw +%%DATADIR%%/m22906ea_00000080.fw %%DATADIR%%/m22f6809.fw -%%DATADIR%%/m2a906e9_0000005d_0000005e.fw -%%DATADIR%%/m32306c3_00000022.fw -%%DATADIR%%/m3240661_00000017.fw +%%DATADIR%%/m2a906e9_0000007f_00000080.fw +%%DATADIR%%/m32306c3_00000023.fw +%%DATADIR%%/m3240661_00000018.fw %%DATADIR%%/m34f6404.fw -%%DATADIR%%/m36506e3_000000b9_000000ba.fw +%%DATADIR%%/m36506e3_000000c1_000000c2.fw %%DATADIR%%/m401067660F.fw %%DATADIR%%/m406f76b.fw %%DATADIR%%/m406fbBC.fw @@ -145,11 +145,11 @@ %%DATADIR%%/m5ff4807.fw %%DATADIR%%/m6d206d6_00000619.fw %%DATADIR%%/m6d206d7_00000710.fw -%%DATADIR%%/m6f306f2_0000003a.fw -%%DATADIR%%/m7240651_00000020.fw +%%DATADIR%%/m6f306f2_0000003b.fw +%%DATADIR%%/m7240651_00000021.fw %%DATADIR%%/m801066144.fw %%DATADIR%%/m801067660F.fw -%%DATADIR%%/m80306f4_0000000f.fw +%%DATADIR%%/m80306f4_00000010.fw %%DATADIR%%/m8069547.fw %%DATADIR%%/m806ec59.fw %%DATADIR%%/m806fa95.fw @@ -160,16 +160,16 @@ %%DATADIR%%/m9df4406.fw %%DATADIR%%/m9df4703.fw %%DATADIR%%/mA01067AA0B.fw -%%DATADIR%%/m_01_706a1_0000001e.fw +%%DATADIR%%/m_01_706a1_00000022.fw %%DATADIR%%/m_03_506c9_0000002c.fw -%%DATADIR%%/mb750654_02000035.fw +%%DATADIR%%/mb750654_0200003c.fw %%DATADIR%%/mbdf4117.fw %%DATADIR%%/mbdf4903.fw -%%DATADIR%%/mc0306d4_00000025.fw -%%DATADIR%%/mc0406e3_000000b9_000000ba.fw -%%DATADIR%%/mc0806e9_00000061_00000062.fw -%%DATADIR%%/mc0806ea_0000006f_00000070.fw -%%DATADIR%%/med306e4_00000428.fw +%%DATADIR%%/mc0306d4_00000028.fw +%%DATADIR%%/mc0406e3_000000c1_000000c2.fw +%%DATADIR%%/mc0806e9_0000007f_00000080.fw +%%DATADIR%%/mc0806ea_0000007f_00000080.fw +%%DATADIR%%/med306e4_0000042a.fw %%DATADIR%%/med306e6_00000600.fw %%DATADIR%%/med306e7_0000070d.fw %%DATADIR%%/mef406f1_0b000021.fw