diff options
author | Zoltan HERPAI <wigyori@uid0.hu> | 2018-02-10 21:19:41 +0100 |
---|---|---|
committer | Zoltan HERPAI <wigyori@uid0.hu> | 2018-03-04 17:37:15 +0100 |
commit | 681aaaf719ecae48126ea3be0fe6e150c5ee3b31 (patch) | |
tree | 4f696ad76e83543f81a8c6f4203e1ed431ea6802 /package | |
parent | c6314ee06f944173522766656d51147f924dd898 (diff) | |
download | upstream-681aaaf719ecae48126ea3be0fe6e150c5ee3b31.tar.gz upstream-681aaaf719ecae48126ea3be0fe6e150c5ee3b31.tar.bz2 upstream-681aaaf719ecae48126ea3be0fe6e150c5ee3b31.zip |
firmware: add microcode package for Intel
Compiling the Intel microcode package results in a
microcode.bin and a microcode-64.bin. As we can
decide based on the subtarget which should be used,
we'll only split the required .bin file with
iucode-tool.
x64 will get the intel-microcode-64.bin
All other variants will get intel-microcode.bin
The microcodes will be updated from preinit via a common
script - that's the earliest place where we can do it.
Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
Diffstat (limited to 'package')
-rw-r--r-- | package/firmware/intel-microcode/Makefile | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/package/firmware/intel-microcode/Makefile b/package/firmware/intel-microcode/Makefile new file mode 100644 index 0000000000..b5ebddd7b9 --- /dev/null +++ b/package/firmware/intel-microcode/Makefile @@ -0,0 +1,49 @@ +# +# Copyright (C) 2018 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=intel-microcode +PKG_VERSION:=20170707 +PKG_RELEASE:=1~deb9u1 + +PKG_SOURCE:=intel-microcode_3.$(PKG_VERSION).$(PKG_RELEASE).tar.xz +PKG_SOURCE_URL:=http://ftp.debian.org/debian/pool/non-free/i/intel-microcode/ +PKG_HASH:=6e288b687077cbb678c90a1c2ab0cfba43ee46e8645dc3791884278f6453e927 +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-3.$(PKG_VERSION).$(PKG_RELEASE) + +PKG_BUILD_DEPENDS:=iucode-tool/host + +ifdef CONFIG_TARGET_x86_64 + MICROCODE:="intel-microcode-64" +else + MICROCODE:="intel-microcode" +endif + +include $(INCLUDE_DIR)/package.mk + +define Package/intel-microcode + SECTION:=firmware + CATEGORY:=Firmware + URL:=$(PKG_SOURCE_URL) + DEPENDS:=@TARGET_x86 +iucode-tool + TITLE:=Intel x86 CPU microcode +endef + +define Build/Compile + IUCODE_TOOL=$(STAGING_DIR)/../host/bin/iucode_tool $(MAKE) -C $(PKG_BUILD_DIR) + mkdir $(PKG_BUILD_DIR)/intel-ucode + $(STAGING_DIR)/../host/bin/iucode_tool -q \ + --write-firmware=$(PKG_BUILD_DIR)/intel-ucode $(PKG_BUILD_DIR)/$(MICROCODE).bin +endef + +define Package/intel-microcode/install + $(INSTALL_DIR) $(1)/lib/firmware/intel-ucode + $(INSTALL_DATA) $(PKG_BUILD_DIR)/intel-ucode/* $(1)/lib/firmware/intel-ucode +endef + +$(eval $(call BuildPackage,intel-microcode)) |