summaryrefslogtreecommitdiffstats
path: root/recipes-core/microcode
diff options
context:
space:
mode:
authorSaul Wold <sgw@linux.intel.com>2017-11-07 10:32:26 -0800
committerSaul Wold <sgw@linux.intel.com>2017-11-20 15:33:02 -0800
commitd53dbb38c43da3fd04fed9a55e7b3b9e2c512b9a (patch)
treefbe372dba00d45bbf9fbfbb3726708dc2590daeb /recipes-core/microcode
parent5adbf6df4fd89e7531ccccfb9cec7a5314d635f0 (diff)
downloadmeta-intel-d53dbb38c43da3fd04fed9a55e7b3b9e2c512b9a.tar.gz
meta-intel: Reorganize the layout to remove common
Remove the concept of the common directory and move all the recipes-* dirs to the top level as a normal layer would be. layer.conf is updated appropriately Signed-off-by: Saul Wold <sgw@linux.intel.com>
Diffstat (limited to 'recipes-core/microcode')
-rw-r--r--recipes-core/microcode/intel-microcode_20170707.bb66
-rw-r--r--recipes-core/microcode/iucode-tool/0001-Makefile.am-Add-arg-parse-library-for-MUSL-support.patch29
-rw-r--r--recipes-core/microcode/iucode-tool_2.1.2.bb33
3 files changed, 128 insertions, 0 deletions
diff --git a/recipes-core/microcode/intel-microcode_20170707.bb b/recipes-core/microcode/intel-microcode_20170707.bb
new file mode 100644
index 00000000..2244088b
--- /dev/null
+++ b/recipes-core/microcode/intel-microcode_20170707.bb
@@ -0,0 +1,66 @@
1SUMMARY = "Intel Processor Microcode Datafile for Linux"
2HOMEPAGE = "http://www.intel.com/"
3DESCRIPTION = "The microcode data file contains the latest microcode\
4 definitions for all Intel processors. Intel releases microcode updates\
5 to correct processor behavior as documented in the respective processor\
6 specification updates. While the regular approach to getting this microcode\
7 update is via a BIOS upgrade, Intel realizes that this can be an\
8 administrative hassle. The Linux operating system and VMware ESX\
9 products have a mechanism to update the microcode after booting.\
10 For example, this file will be used by the operating system mechanism\
11 if the file is placed in the /etc/firmware directory of the Linux system."
12
13LICENSE = "Intel-Microcode-License"
14LIC_FILES_CHKSUM = "file://microcode.dat;md5=e5b1dc41901d2de706d4bccee94bbadc"
15
16SRC_URI = "https://downloadmirror.intel.com/26925/eng/microcode-${PV}.tgz"
17SRC_URI[md5sum] = "fe4bcb12e4600629a81fb65208c34248"
18SRC_URI[sha256sum] = "4fd44769bf52a7ac11e90651a307aa6e56ca6e1a814e50d750ba8207973bee93"
19
20DEPENDS = "iucode-tool-native"
21S = "${WORKDIR}"
22
23COMPATIBLE_HOST = "(i.86|x86_64).*-linux"
24PACKAGE_ARCH = "${MACHINE_ARCH}"
25
26inherit deploy
27
28# Use any of the iucode_tool parameters to filter specific microcodes from the data file
29# For further information, check the iucode-tool's manpage : http://manned.org/iucode-tool
30UCODE_FILTER_PARAMETERS ?= ""
31
32do_compile() {
33 mkdir -p ${WORKDIR}/ucode/kernel/x86/microcode
34 ${STAGING_DIR_NATIVE}${sbindir_native}/iucode_tool \
35 ${UCODE_FILTER_PARAMETERS} \
36 --overwrite \
37 --write-to=${WORKDIR}/microcode_${PV}.bin \
38 ${WORKDIR}/microcode.dat
39
40 ${STAGING_DIR_NATIVE}${sbindir_native}/iucode_tool \
41 ${UCODE_FILTER_PARAMETERS} \
42 --overwrite \
43 --write-earlyfw=${WORKDIR}/microcode_${PV}.cpio \
44 ${WORKDIR}/microcode.dat
45}
46
47do_install() {
48 install -d ${D}${base_libdir}/firmware/intel-ucode/
49 install ${WORKDIR}/microcode_${PV}.bin ${D}${base_libdir}/firmware/intel-ucode/
50 cd ${D}${base_libdir}/firmware/intel-ucode/
51 ln -sf microcode_${PV}.bin microcode.bin
52}
53
54do_deploy() {
55 install -d ${DEPLOYDIR}
56 install ${S}/microcode_${PV}.cpio ${DEPLOYDIR}/
57 cd ${DEPLOYDIR}
58 rm -f microcode.cpio
59 ln -sf microcode_${PV}.cpio microcode.cpio
60}
61
62addtask deploy before do_build after do_compile
63
64PACKAGES = "${PN}"
65
66FILES_${PN} = "${base_libdir}"
diff --git a/recipes-core/microcode/iucode-tool/0001-Makefile.am-Add-arg-parse-library-for-MUSL-support.patch b/recipes-core/microcode/iucode-tool/0001-Makefile.am-Add-arg-parse-library-for-MUSL-support.patch
new file mode 100644
index 00000000..ca97d2ab
--- /dev/null
+++ b/recipes-core/microcode/iucode-tool/0001-Makefile.am-Add-arg-parse-library-for-MUSL-support.patch
@@ -0,0 +1,29 @@
1From 5f6826b3a59dedf508d5a6122362d69a4813e8e6 Mon Sep 17 00:00:00 2001
2From: Saul Wold <sgw@linux.intel.com>
3Date: Fri, 3 Feb 2017 16:08:51 -0800
4Subject: [PATCH] Makefile.am: Add arg-parse library for MUSL support
5
6iucode-tool needs argp-standalone when used with MUSL, so add this
7patch to the Makefile to link with argp
8
9Upstream-Status: Pending
10Signed-off-by: Saul Wold <sgw@linux.intel.com>
11---
12 Makefile.am | 1 +
13 1 file changed, 1 insertion(+)
14
15diff --git a/Makefile.am b/Makefile.am
16index 415a241..764fb61 100644
17--- a/Makefile.am
18+++ b/Makefile.am
19@@ -5,6 +5,7 @@
20 sbin_PROGRAMS = iucode_tool
21 man_MANS = iucode_tool.8
22
23+iucode_tool_LDADD = -largp
24 iucode_tool_SOURCES = intel_microcode.h intel_microcode.c iucode_tool.c
25 EXTRA_DIST = autogen.sh CONTRIBUTING
26
27--
282.7.4
29
diff --git a/recipes-core/microcode/iucode-tool_2.1.2.bb b/recipes-core/microcode/iucode-tool_2.1.2.bb
new file mode 100644
index 00000000..e1fb56f4
--- /dev/null
+++ b/recipes-core/microcode/iucode-tool_2.1.2.bb
@@ -0,0 +1,33 @@
1SUMMARY = "Update Intel CPU microcode"
2
3DESCRIPTION = "iucode_tool is a program to manipulate Intel i686 and X86-64\
4 processor microcode update collections, and to use the kernel facilities to\
5 update the microcode on Intel system processors. It can load microcode data\
6 files in text and binary format, sort, list and filter the microcode updates\
7 contained in these files, write selected microcode updates to a new file in\
8 binary format, or upload them to the kernel. \
9 It operates on microcode data downloaded directly from Intel:\
10 http://feeds.downloadcenter.intel.com/rss/?p=2371\
11"
12HOMEPAGE = "https://gitlab.com/iucode-tool/"
13BUGTRACKER = "https://bugs.debian.org/cgi-bin/pkgreport.cgi?ordering=normal;archive=0;src=iucode-tool;repeatmerged=0"
14
15LICENSE = "GPLv2+"
16LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe \
17 file://iucode_tool.c;beginline=1;endline=15;md5=5d8e3639c3b6a80e7d5e0e073933da16"
18
19DEPENDS_append_libc-musl = " argp-standalone"
20
21SRC_URI = "https://gitlab.com/iucode-tool/releases/raw/master/iucode-tool_${PV}.tar.xz"
22SRC_URI_append_libc-musl = " file://0001-Makefile.am-Add-arg-parse-library-for-MUSL-support.patch"
23
24SRC_URI[md5sum] = "c6f131a0b69443f5498782a2335973fa"
25SRC_URI[sha256sum] = "01f1c02ba6935e0ac8440fb594c2ef57ce4437fcbce539e3ef329f55a6fd71ab"
26
27inherit autotools
28
29BBCLASSEXTEND = "native"
30
31COMPATIBLE_HOST = "(i.86|x86_64).*-linux"
32
33UPSTREAM_CHECK_URI = "https://gitlab.com/iucode-tool/releases"