firmware: add Intel VPU/NPU firmware

This package is for NPU/VPU firmware.

Details in https://github.com/intel/linux-npu-driver

Intel VPU firmware is now part of linux-firmware.

The current FW file names in linux-firmware do not match intel vpu
driver, create links to fix it.

Signed-off-by: Joe Zheng <joe.zheng@intel.com>
Signed-off-by: Robert Marko <robimarko@gmail.com>
This commit is contained in:
Joe Zheng 2025-02-08 01:18:03 +00:00
parent 12749793ab
commit fc02b412fc
3 changed files with 13 additions and 42 deletions

View File

@ -1,41 +0,0 @@
#
# Copyright (C) 2022 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:=ivpu-firmware
PKG_VERSION:=1.10.1
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL_FILE:=v$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://github.com/intel/linux-npu-driver/archive/refs/tags
PKG_HASH:=a756de38cde7bd5a0402854d08429d271a33784835b80db3be672ade80570900
PKG_BUILD_DIR:=$(BUILD_DIR)/linux-npu-driver-$(PKG_VERSION)
include $(INCLUDE_DIR)/package.mk
define Package/ivpu-firmware
SECTION:=firmware
CATEGORY:=Firmware
TITLE:=Intel VPU firmware
URL:=$(PKG_SOURCE_URL)
DEPENDS:=
endef
define Build/Compile
true
endef
define Package/ivpu-firmware/install
$(INSTALL_DIR) $(1)/lib/firmware/intel/vpu
$(INSTALL_DATA) \
$(PKG_BUILD_DIR)/firmware/bin/*.bin \
$(1)/lib/firmware/intel/vpu
endef
$(eval $(call BuildPackage,ivpu-firmware))

View File

@ -279,3 +279,15 @@ define Package/i915-firmware-gsc/install
done
endef
$(eval $(call BuildPackage,i915-firmware-gsc))
Package/ivpu-firmware = $(call Package/firmware-default,Intel VPU firmware)
define Package/ivpu-firmware/install
$(INSTALL_DIR) $(1)/lib/firmware/intel/vpu
$(INSTALL_DATA) $(PKG_BUILD_DIR)/intel/vpu/*.bin $(1)/lib/firmware/intel/vpu
for t in `cd $(1)/lib/firmware/intel/vpu && ls vpu_*.bin | cut -d. -f1 | cut -d_ -f2 | sort | uniq`; do \
source=`cd $(1)/lib/firmware && ls intel/vpu/vpu_$$$${t}_v*.bin | sort | tail -n1`; \
target=$(1)/lib/firmware/vpu_$$$${t}.bin; \
if [ -n "$$$$source" ]; then ln -sf $$$$source $$$$target; fi \
done
endef
$(eval $(call BuildPackage,ivpu-firmware))

View File

@ -546,7 +546,7 @@ $(eval $(call KernelPackage,drm-i915))
define KernelPackage/drm-ivpu
SUBMENU:=$(VIDEO_MENU)
TITLE:=Intel VPU DRM support
DEPENDS:=@TARGET_x86 +ivpu-firmware
DEPENDS:=@TARGET_x86_64 +ivpu-firmware
KCONFIG:=CONFIG_DRM_ACCEL_IVPU \
CONFIG_DRM_ACCEL_HABANALABS=n \
CONFIG_DRM_ACCEL_QAIC=n \