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>
This commit is contained in:
parent
8fb3476345
commit
01020bc74d
1 changed files with 49 additions and 0 deletions
49
package/firmware/intel-microcode/Makefile
Normal file
49
package/firmware/intel-microcode/Makefile
Normal file
|
@ -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))
|
Loading…
Reference in a new issue