-%define rel 1
-%define ver 20200316
+%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://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/snapshot/%{name}-%{version}.tar.gz
# upstream tarball
-Source0: https://mirrors.edge.kernel.org/pub/linux/kernel/firmware/%{name}-%{version}.tar.xz
-# Source0-md5: eb1ee1e95d6a104c63e115f4f4c676ae
+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)
+%define no_install_post_strip 1
+%define _enable_debug_packages 0
+%define _noautochrpath .*/lib/firmware/.*
+
%description
This package includes firmware files required for some devices to
operate.
Summary: Firmware for AMD/ATI graphics chips
License: Redistributable, no modification permitted
Group: Base/Kernel
+Provides: radeon-ucode
%description -n amd-gpu-firmware
Firmware for AMD/ATI graphics chips
%description -n chelsio-firmware
Firmware for Chelsio T3/T4/T5/T6
+%package -n intel-bluetooth-firmware
+Summary: Firmware for Intel Bluetooth adapters
+License: Redistributable, no modification permitted
+Group: Base/Kernel
+
+%description -n intel-bluetooth-firmware
+Firmware for Intel Bluetooth adapters
+
+%package -n intel-gpu-firmware
+Summary: Firmware for Intel i915 graphics chips
+License: Redistributable, no modification permitted
+Group: Base/Kernel
+
+%description -n intel-gpu-firmware
+Firmware for Intel i915 graphics chips
+
%package -n intel-sound-firmware
Summary: Firmware for Intel sound cards
License: Redistributable, no modification permitted
%description -n intel-sound-firmware
Firmware for Intel sound cards
-%package -n intel-bluetooth-firmware
-Summary: Firmware for Intel Bluetooth adapters
+%package -n intel-vsc-firmware
+Summary: Firmware for Intel Visual Sensing Controller (IVSC)
License: Redistributable, no modification permitted
Group: Base/Kernel
-%description -n intel-bluetooth-firmware
-Firmware for Intel Bluetooth adapters
+%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
firmware is subject to the terms and conditions contained inside the
provided LICENSE file. Please read it carefully.
-%package -n iwl22000-firmware
-Summary: Firmware for Intel(R) Centrino Wireless-N 22000 Series Adapters
+%package -n iwlax2xx-firmware
+Summary: Firmware for Intel(R) AX200/AX201/AX210/AX211
License: Redistributable, no modification permitted
Group: Base/Kernel
-%description -n iwl22000-firmware
+%description -n iwlax2xx-firmware
This package contains the firmware required by the Intel wireless
-drivers for Linux to support the iwl22000 hardware. Usage of the
-firmware is subject to the terms and conditions contained inside the
-provided LICENSE file. Please read it carefully.
-
-%package -n iwl22260-firmware
-Summary: Firmware for Intel(R) Centrino Wireless-N 22260 Series Adapters
-License: Redistributable, no modification permitted
-Group: Base/Kernel
-
-%description -n iwl22260-firmware
-This package contains the firmware required by the Intel wireless
-drivers for Linux to support the iwl22260 hardware. Usage of the
+drivers for Linux to support the iwlax2xx hardware. Usage of the
firmware is subject to the terms and conditions contained inside the
provided LICENSE file. Please read it carefully.
conditions contained inside the provided LICENSE file. Please read it
carefully.
-%package -n libertas-firmware
+%package -n marvell-firmware
Summary: Firmware for Marvell wirelsess network cards
License: Redistributable, no modification permitted
Group: Base/Kernel
-%description -n libertas-firmware
+%description -n marvell-firmware
Firmware for Marvell wireless network cards
+%package -n mediatek-firmware
+Summary: Firmware for MediaTek devices
+License: Redistributable, no modification permitted
+Group: Base/Kernel
+
+%description -n mediatek-firmware
+Firmware for MediaTek devices.
+
+%package -n mellanox-firmware
+Summary: Firmware for Mellanox Spectrum switches
+License: Redistributable, no modification permitted
+Group: Base/Kernel
+
+%description -n mellanox-firmware
+Firmware for Mellanox Spectrum switches
+
+%package -n microcode-data-amd
+Summary: Microcode definitions for AMD64 processors
+License: Redistributable, no modification permitted
+Group: Base/Kernel
+
+%description -n microcode-data-amd
+Microcode definitions for AMD64 processors
+
%package -n netronome-firmware
Summary: Firmware for Netronome Smart NICs
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
%description -n nvidia-gpu-firmware
Firmware for NVIDIA graphics chips
+%package -n qualcomm-firmware
+Summary: Firmware for Qualcomm SoCs
+License: Redistributable, no modification permitted
+Group: Base/Kernel
+
+%description -n qualcomm-firmware
+Firmware for Qualcomm SoCs
+
%package -n qlogic-firmware
Summary: Firmware for QLogic adapters
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 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-connectivity-firmware
-Firmware for Texas Instruments wireless network chips
+%description -n ti-firmware
+Firmware for Texas Instruments devices
%define no_install_post_strip 1
%prep
-%setup -qc
-mv linux-firmware-*/* .
-rmdir 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
%{__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,TDA7706_OM_v*_boot.txt,WHENCE,check_whence.py}
-# For AMD CPU microcode see microcode-data-amd.spec
-%{__rm} -r $RPM_BUILD_ROOT/lib/firmware/amd-ucode
-# 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
%files
%defattr(644,root,root,755)
-%doc WHENCE LICENCE.* LICENSE.* README TDA7706_OM_v*_boot.txt
+%doc WHENCE LICENCE.* LICENSE.* README.md
/lib/firmware/3com
/lib/firmware/acenic
/lib/firmware/adaptec
/lib/firmware/advansys
+/lib/firmware/airoha
/lib/firmware/agere_*_fw.bin
/lib/firmware/amd
+/lib/firmware/amdtee
+/lib/firmware/amlogic
+/lib/firmware/amphion
+/lib/firmware/arm
/lib/firmware/as102_data1_st.hex
/lib/firmware/as102_data2_st.hex
/lib/firmware/atmel
-/lib/firmware/atmsar11.fw
/lib/firmware/atusb
/lib/firmware/av7110
/lib/firmware/carl9170-1.fw
/lib/firmware/cadence
+/lib/firmware/cirrus
/lib/firmware/cis
/lib/firmware/cmmb_*_12mhz.inp
+/lib/firmware/cnm
/lib/firmware/cpia2
+/lib/firmware/cs42l43.bin
/lib/firmware/ctefx.bin
/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/i2400m-fw-usb-*.sbcf
-/lib/firmware/i6050-fw-usb-*.sbcf
-/lib/firmware/i915
/lib/firmware/imx
/lib/firmware/inside-secure
%dir /lib/firmware/intel
/lib/firmware/intel/ice
-/lib/firmware/intel/irci_irci_ecr-master_20161208_0213_20170112_1500.bin
-/lib/firmware/intelliport2.bin
/lib/firmware/isci
/lib/firmware/isdbt_*.inp
+/lib/firmware/ixp4xx
/lib/firmware/kaweth
/lib/firmware/keyspan
/lib/firmware/keyspan_pda
%dir /lib/firmware/korg
/lib/firmware/korg/k1212.dsp
/lib/firmware/lgs8g75.fw
+/lib/firmware/lt9611uxc_fw.bin
/lib/firmware/matrox
-/lib/firmware/mediatek
-/lib/firmware/mellanox
/lib/firmware/meson
/lib/firmware/microchip
/lib/firmware/moxa
-/lib/firmware/mt7601u.bin
-/lib/firmware/mt7650.bin
-/lib/firmware/mt7662*.bin
/lib/firmware/mts_*.fw
/lib/firmware/myri10ge_*.dat
/lib/firmware/myricom
/lib/firmware/ositech
/lib/firmware/phanfw.bin
+/lib/firmware/powervr
+/lib/firmware/qat_4xxx.bin
+/lib/firmware/qat_4xxx_mmp.bin
/lib/firmware/qat_895xcc.bin
/lib/firmware/qat_895xcc_mmp.bin
/lib/firmware/qat_c3xxx.bin
/lib/firmware/qat_c3xxx_mmp.bin
/lib/firmware/qat_c62x.bin
/lib/firmware/qat_c62x_mmp.bin
-/lib/firmware/qca
-/lib/firmware/qcom
+/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/RTL8192E
-/lib/firmware/rtl_bt
-/lib/firmware/rtl_nic
-/lib/firmware/rtlwifi
-/lib/firmware/rtw88
+/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/s5p-mfc-v7.fw
/lib/firmware/s5p-mfc-v8.fw
+/lib/firmware/s5p-mfc-v12.fw
%dir /lib/firmware/sb16
/lib/firmware/sb16/alaw_main.csp
/lib/firmware/sb16/ima_adpcm_capture.csp
/lib/firmware/sxg
/lib/firmware/tdmb_nova_12mhz.inp
/lib/firmware/tehuti
-/lib/firmware/ti_3410.fw
-/lib/firmware/ti_5052.fw
/lib/firmware/tigon
-/lib/firmware/ti-keystone
/lib/firmware/tlg2300_firmware.bin
-/lib/firmware/tr_smctr.bin
+/lib/firmware/tsse_firmware.bin
/lib/firmware/ttusb-budget
/lib/firmware/ueagle-atm
/lib/firmware/usbdux*_firmware.bin
/lib/firmware/vicam
/lib/firmware/vntwusb.fw
/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
%dir /lib/firmware/yamaha
/lib/firmware/yamaha/ds1_ctrl.fw
%files -n atheros-firmware
%defattr(644,root,root,755)
-%doc WHENCE LICENCE.atheros_firmware
+%doc WHENCE LICENCE.atheros_firmware LICENSE.QualcommAtheros_ar3k LICENSE.QualcommAtheros_ath10k LICENCE.open-ath9k-htc-firmware
/lib/firmware/ar3k
/lib/firmware/ar5523.bin
/lib/firmware/ar7010*.fw
/lib/firmware/ar9170-*.fw
/lib/firmware/ar9271.fw
/lib/firmware/ath10k
+/lib/firmware/ath11k
+/lib/firmware/ath12k
/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)
%defattr(644,root,root,755)
%doc WHENCE
/lib/firmware/bnx2x
-/lib/firmware/bnx2x-e1-*.fw
-/lib/firmware/bnx2x-e1h-*.fw
%files -n brcm-firmware
%defattr(644,root,root,755)
/lib/firmware/cxgb3
/lib/firmware/cxgb4
+%files -n intel-bluetooth-firmware
+%defattr(644,root,root,755)
+%doc WHENCE LICENCE.ibt_firmware
+%dir /lib/firmware/intel
+/lib/firmware/intel/ibt-*
+
+%files -n intel-gpu-firmware
+%defattr(644,root,root,755)
+%doc WHENCE LICENSE.i915
+/lib/firmware/i915
+
%files -n intel-sound-firmware
%defattr(644,root,root,755)
-%doc WHENCE
+%doc WHENCE LICENCE.adsp_sst LICENCE.fw_sst_0f28
%dir /lib/firmware/intel
-/lib/firmware/intel/IntcSST2.bin
+/lib/firmware/intel/avs
+/lib/firmware/intel/catpt
/lib/firmware/intel/dsp_fw_*
/lib/firmware/intel/fw_sst_*
+/lib/firmware/intel/IntcSST2.bin
-%files -n intel-bluetooth-firmware
+%files -n intel-vsc-firmware
%defattr(644,root,root,755)
-%doc WHENCE LICENCE.ibt_firmware
+%doc WHENCE LICENSE.ivsc
%dir /lib/firmware/intel
-/lib/firmware/intel/ibt-*
+/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)
%doc WHENCE LICENCE.iwlwifi_firmware
/lib/firmware/iwlwifi-2030-*.ucode
-%files -n iwl22000-firmware
+%files -n iwlax2xx-firmware
%defattr(644,root,root,755)
%doc WHENCE LICENCE.iwlwifi_firmware
/lib/firmware/iwlwifi-Qu-*.ucode
/lib/firmware/iwlwifi-QuZ-*.ucode
-
-%files -n iwl22260-firmware
-%defattr(644,root,root,755)
-%doc WHENCE LICENCE.iwlwifi_firmware
/lib/firmware/iwlwifi-cc-*.ucode
+/lib/firmware/iwlwifi-gl-*.pnvm
+/lib/firmware/iwlwifi-gl-*.ucode
+/lib/firmware/iwlwifi-ma-*.pnvm
+/lib/firmware/iwlwifi-ma-*.ucode
+/lib/firmware/iwlwifi-so-*.pnvm
+/lib/firmware/iwlwifi-so-*.ucode
+/lib/firmware/iwlwifi-ty-*.pnvm
+/lib/firmware/iwlwifi-ty-*.ucode
%files -n iwl3160-firmware
%defattr(644,root,root,755)
%doc WHENCE LICENCE.iwlwifi_firmware
/lib/firmware/iwlwifi-9260-*.ucode
-%files -n libertas-firmware
+%files -n marvell-firmware
%defattr(644,root,root,755)
-%doc WHENCE LICENCE.Marvell
+%doc WHENCE LICENCE.Marvell LICENCE.OLPC
/lib/firmware/lbtf_usb.bin
/lib/firmware/libertas
/lib/firmware/mrvl
/lib/firmware/mwl8k
/lib/firmware/mwlwifi
+%files -n mediatek-firmware
+%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)
+%doc WHENCE
+/lib/firmware/mellanox
+
+%files -n microcode-data-amd
+%defattr(644,root,root,755)
+%doc WHENCE LICENSE.amd-ucode amd-ucode/README
+/lib/firmware/amd-ucode
+
%files -n netronome-firmware
%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)
%doc WHENCE LICENCE.nvidia
/lib/firmware/nvidia
+%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
%defattr(644,root,root,755)
%doc WHENCE LICENCE.qla1280 LICENCE.qla2xxx
/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