-%define rel 1
+%define rel 2
%define ver 20240410
Summary: Firmware files used by the Linux kernel
Summary(pl.UTF-8): Pliki firmware'u używane przez jądro Linuksa
Name: linux-firmware
Version: %{ver}
-Release: %{rel}
+Release: %{rel}%{?tld}
License: GPL+ and GPL v2+ and MIT and Redistributable, no modification permitted
Group: Base/Kernel
# in case git snapshot is needed
Source0: https://www.kernel.org/pub/linux/kernel/firmware/%{name}-%{version}.tar.xz
# Source0-md5: 6bed71700265b8508ef77fe697223120
URL: https://git.kernel.org/cgit/linux/kernel/git/firmware/linux-firmware.git/
+BuildRequires: rdfind
BuildRequires: tar >= 1:1.22
BuildRequires: xz
-Requires: microcode-data-amd
-Requires: microcode-data-intel
+Suggests: microcode-data-amd
+Suggests: microcode-data-intel
BuildArch: noarch
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description -n intel-sound-firmware
Firmware for Intel sound cards
+%package -n intel-vsc-firmware
+Summary: Firmware for Intel Visual Sensing Controller (IVSC)
+License: Redistributable, no modification permitted
+Group: Base/Kernel
+
+%description -n intel-vsc-firmware
+Firmware for Intel Visual Sensing Controller (IVSC)
+
%package -n iwl100-firmware
Summary: Firmware for Intel(R) Wireless WiFi Link 100 Series Adapters
License: Redistributable, no modification permitted
%description -n netronome-firmware
Firmware for Netronome Smart NICs
+%package -n nxp
+Summary: Firmware for NXP devices
+License: Redistributable, no modification permitted
+Group: Base/Kernel
+
+%description -n nxp
+Firmware for NXP devices
+
%package -n nvidia-gpu-firmware
Summary: Firmware for NVIDIA graphics chips
License: Redistributable, no modification permitted
This package contains the binary firmware for QLogic Infiniband,
SCSI, Fibre Channel/FCoE adapters and Converged Network Adapters
-%package -n ti-connectivity-firmware
-Summary: Firmware for Texas Instruments wireless network chips
+%package -n realtek-firmware
+Summary: Firmware for Realtek WiFi/Bluetooth adapters
License: Redistributable, no modification permitted
Group: Base/Kernel
-%description -n ti-connectivity-firmware
-Firmware for Texas Instruments wireless network chips
+%description -n realtek-firmware
+Firmware for Realtek WiFi/Bluetooth adapters
+
+%package -n ti-firmware
+Summary: Firmware for Texas Instruments devices
+License: Redistributable, no modification permitted
+Group: Base/Kernel
+
+%description -n ti-firmware
+Firmware for Texas Instruments devices
%define no_install_post_strip 1
%prep
-%setup -qc
-%{__mv} linux-firmware-*/* .
-%{__rm} -r linux-firmware-*
+%setup -q
+#%{__mv} linux-firmware-*/* .
+#%{__rm} -r linux-firmware-*
# Remove source files we don't need to install
%{__rm} */*.asm dsp56k/{Makefile,concat-bootstrap.pl} isci/{Makefile,README,*.[ch]}
-%{__rm} -r carl9170fw usbdux contrib
-%{__rm} Makefile configure build_packages.py copy-firmware.sh Dockerfile
+%{__rm} -r carl9170fw usbdux
+%{__rm} Makefile configure
+
+%{__mv} rtw88/README README.rtw88
%install
rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT/lib/firmware
-cp -a . $RPM_BUILD_ROOT/lib/firmware
-%{__rm} $RPM_BUILD_ROOT/lib/firmware/{GPL-2,GPL-3,LICENCE.*,LICENSE.*,README.md,WHENCE,check_whence.py}
-# Symlink for ice package required by firmware and kernel driver
-ln -s $(basename $RPM_BUILD_ROOT/lib/firmware/intel/ice/ddp/ice-*.pkg) $RPM_BUILD_ROOT/lib/firmware/intel/ice/ddp/ice.pkg
+
+./copy-firmware.sh $RPM_BUILD_ROOT/lib/firmware
%clean
rm -rf $RPM_BUILD_ROOT
/lib/firmware/ctspeq.bin
/lib/firmware/cypress
/lib/firmware/dabusb
-/lib/firmware/dpaa2
/lib/firmware/dsp56k
/lib/firmware/dvb-fe-xc4000-*.fw
/lib/firmware/dvb-fe-xc5000c-*.fw
/lib/firmware/hfi1_fabric.fw
/lib/firmware/hfi1_pcie.fw
/lib/firmware/hfi1_sbus.fw
-/lib/firmware/htc_7010.fw
-/lib/firmware/htc_9271.fw
/lib/firmware/imx
/lib/firmware/inside-secure
%dir /lib/firmware/intel
/lib/firmware/intel/ice
-/lib/firmware/intel/ipu
-/lib/firmware/intel/vsc
/lib/firmware/isci
/lib/firmware/isdbt_*.inp
/lib/firmware/ixp4xx
/lib/firmware/mts_*.fw
/lib/firmware/myri10ge_*.dat
/lib/firmware/myricom
-/lib/firmware/nxp
/lib/firmware/ositech
/lib/firmware/phanfw.bin
/lib/firmware/powervr
/lib/firmware/qat_c3xxx_mmp.bin
/lib/firmware/qat_c62x.bin
/lib/firmware/qat_c62x_mmp.bin
-/lib/firmware/qca
+/lib/firmware/qat_mmp.bin
/lib/firmware/r8a779x_usb3_v1.dlmem
/lib/firmware/r8a779x_usb3_v2.dlmem
/lib/firmware/r8a779x_usb3_v3.dlmem
/lib/firmware/rt2661.bin
/lib/firmware/rt2860.bin
/lib/firmware/rt2870.bin
+/lib/firmware/rt3070.bin
/lib/firmware/rt3071.bin
+/lib/firmware/rt3090.bin
/lib/firmware/rt3290.bin
/lib/firmware/rt73.bin
-/lib/firmware/rtl_bt
-/lib/firmware/rtl_nic
-/lib/firmware/rtlwifi
-/lib/firmware/rtw88
-/lib/firmware/rtw89
+/lib/firmware/s2250.fw
+/lib/firmware/s2250_loader.fw
/lib/firmware/s5p-mfc.fw
/lib/firmware/s5p-mfc-v6.fw
/lib/firmware/s5p-mfc-v6-v2.fw
/lib/firmware/sxg
/lib/firmware/tdmb_nova_12mhz.inp
/lib/firmware/tehuti
-/lib/firmware/ti
-/lib/firmware/ti_3410.fw
-/lib/firmware/ti_5052.fw
/lib/firmware/tigon
-/lib/firmware/ti-keystone
/lib/firmware/tlg2300_firmware.bin
/lib/firmware/tsse_firmware.bin
/lib/firmware/ttusb-budget
/lib/firmware/vxge
/lib/firmware/wfx
/lib/firmware/whiteheat*.fw
-/lib/firmware/wil6210.brd
-/lib/firmware/wil6210.fw
/lib/firmware/wsm_22.bin
/lib/firmware/xe
/lib/firmware/yam
/lib/firmware/ath3k-1.fw
/lib/firmware/ath6k
/lib/firmware/ath9k_htc
+/lib/firmware/htc_7010.fw
+/lib/firmware/htc_9271.fw
+/lib/firmware/qca
+/lib/firmware/wil6210.brd
+/lib/firmware/wil6210.fw
%files -n bnx2-firmware
%defattr(644,root,root,755)
/lib/firmware/intel/catpt
/lib/firmware/intel/dsp_fw_*
/lib/firmware/intel/fw_sst_*
+/lib/firmware/intel/IntcSST2.bin
+
+%files -n intel-vsc-firmware
+%defattr(644,root,root,755)
+%doc WHENCE LICENSE.ivsc
+%dir /lib/firmware/intel
+/lib/firmware/intel/ipu
+/lib/firmware/intel/vsc
+/lib/firmware/intel/ipu3-fw.bin
+/lib/firmware/intel/irci_irci_ecr-master_20161208_0213_20170112_1500.bin
%files -n iwl100-firmware
%defattr(644,root,root,755)
%defattr(644,root,root,755)
%doc WHENCE LICENCE.ralink_a_mediatek_company_firmware LICENCE.mediatek
/lib/firmware/mediatek
+/lib/firmware/mt7601u.bin
+/lib/firmware/mt7650.bin
+/lib/firmware/mt7662.bin
+/lib/firmware/mt7662_rom_patch.bin
+/lib/firmware/vpu_d.bin
+/lib/firmware/vpu_p.bin
%files -n mellanox-firmware
%defattr(644,root,root,755)
%defattr(644,root,root,755)
%doc WHENCE
/lib/firmware/netronome
+%files -n nxp
+%defattr(644,root,root,755)
+%doc WHENCE LICENSE.nxp_mc_firmware
+/lib/firmware/dpaa2
+/lib/firmware/nxp
%files -n nvidia-gpu-firmware
%defattr(644,root,root,755)
%files -n qualcomm-firmware
%defattr(644,root,root,755)
%doc WHENCE LICENSE.qcom
+/lib/firmware/a300_pfp.fw
+/lib/firmware/a300_pm4.fw
/lib/firmware/qcom
%files -n qlogic-firmware
/lib/firmware/ql2400_fw.bin
/lib/firmware/ql2500_fw.bin
-%files -n ti-connectivity-firmware
+%files -n realtek-firmware
+%defattr(644,root,root,755)
+%doc WHENCE
+/lib/firmware/rtl_bt
+/lib/firmware/rtl_nic
+/lib/firmware/rtlwifi
+/lib/firmware/rtw88
+/lib/firmware/rtw89
+
+%files -n ti-firmware
%defattr(644,root,root,755)
%doc WHENCE
+/lib/firmware/ti
+/lib/firmware/ti_3410.fw
+/lib/firmware/ti_5052.fw
/lib/firmware/ti-connectivity
+/lib/firmware/ti-keystone
+/lib/firmware/INT8866RCA2.bin
+/lib/firmware/TAS2XXX3870.bin
+/lib/firmware/TAS2XXX387D.bin
+/lib/firmware/TAS2XXX387E.bin
+/lib/firmware/TAS2XXX387F.bin
+/lib/firmware/TAS2XXX3880.bin
+/lib/firmware/TAS2XXX3881.bin
+/lib/firmware/TAS2XXX3882.bin
+/lib/firmware/TAS2XXX3884.bin
+/lib/firmware/TAS2XXX3886.bin
+/lib/firmware/TAS2XXX38A5.bin
+/lib/firmware/TAS2XXX38A7.bin
+/lib/firmware/TAS2XXX38A8.bin
+/lib/firmware/TAS2XXX38B8.bin
+/lib/firmware/TAS2XXX38B9.bin
+/lib/firmware/TAS2XXX38BA.bin
+/lib/firmware/TAS2XXX38BB.bin
+/lib/firmware/TAS2XXX38BE.bin
+/lib/firmware/TAS2XXX38BF.bin
+/lib/firmware/TAS2XXX38C3.bin
+/lib/firmware/TAS2XXX38CB.bin
+/lib/firmware/TAS2XXX38CD.bin
+/lib/firmware/TAS2XXX38D3.bin
+/lib/firmware/TAS2XXX38D4.bin
+/lib/firmware/TAS2XXX38D5.bin
+/lib/firmware/TAS2XXX38D6.bin
+/lib/firmware/TAS2XXX38DF.bin
+/lib/firmware/TAS2XXX38E0.bin
+/lib/firmware/TIAS2781RCA2.bin
+/lib/firmware/TIAS2781RCA4.bin