meta-intel/common/recipes-core/microcode/intel-microcode_20140624.bb
Ross Burton 1a3291f7b4 intel-microcode: Mark as x86-specific
Previously iucode-tool was marked as x86-specific but this recipe also
needs to be marked as it depends on iucode-tool.

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com>
2015-01-07 09:13:12 -06:00

68 lines
2.3 KiB
BlitzBasic

SUMMARY = "Intel Processor Microcode Datafile for Linux"
HOMEPAGE = "http://www.intel.com/"
DESCRIPTION = "The microcode data file contains the latest microcode\
definitions for all Intel processors. Intel releases microcode updates\
to correct processor behavior as documented in the respective processor\
specification updates. While the regular 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.\
For example, this file will be used by the operating system mechanism\
if the file is placed in the /etc/firmware directory of the Linux system."
LICENSE = "Intel-Microcode-License"
LIC_FILES_CHKSUM = "file://microcode.dat;md5=3c3b208607a00a3d70aad3af5629f7c7"
SRC_URI = "http://downloadmirror.intel.com/23984/eng/microcode-20140624.tgz"
SRC_URI[md5sum] = "eec20032e6bef99dc4282c0ca317e100"
SRC_URI[sha256sum] = "b4662ac780438a7b2d87e6d26a7066feb807f37c6e5b6fa147089f4edb02ea37"
RDEPENDS_${PN} = "iucode-tool"
DEPENDS = "iucode-tool-native"
S = "${WORKDIR}"
COMPATIBLE_HOST = "(i.86|x86_64).*-linux"
PACKAGE_ARCH = "${MACHINE_ARCH}"
inherit deploy
# Use any of the iucode_tool parameters to filter specific microcodes from the data file
# For further information, check the iucode-tool's manpage : http://manned.org/iucode-tool
UCODE_FILTER_PARAMETERS ?= ""
do_compile() {
mkdir -p ${WORKDIR}/ucode/kernel/x86/microcode
${STAGING_DIR_NATIVE}${sbindir_native}/iucode_tool \
${UCODE_FILTER_PARAMETERS} \
--overwrite \
--write-to=${WORKDIR}/microcode_${PV}.bin \
${WORKDIR}/microcode.dat
${STAGING_DIR_NATIVE}${sbindir_native}/iucode_tool \
${UCODE_FILTER_PARAMETERS} \
--overwrite \
--write-earlyfw=${WORKDIR}/microcode_${PV}.cpio \
${WORKDIR}/microcode.dat
}
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
}
do_deploy() {
install -d ${DEPLOYDIR}
install ${S}/microcode_${PV}.cpio ${DEPLOYDIR}/
cd ${DEPLOYDIR}
rm -f microcode.cpio
ln -sf microcode_${PV}.cpio microcode.cpio
}
addtask deploy before do_build after do_compile
PACKAGES = "${PN}"
FILES_${PN} = "${base_libdir}"