diff --git a/0001-Work-around-absense-of-rdfind-during-build.patch b/0001-Work-around-absense-of-rdfind-during-build.patch new file mode 100644 index 0000000000000000000000000000000000000000..b059e813c914e0625655298fd93e4ea7a1d89e66 --- /dev/null +++ b/0001-Work-around-absense-of-rdfind-during-build.patch @@ -0,0 +1,43 @@ +From 7d6fd433a494d923a4d299a31da9ccee8470d26a Mon Sep 17 00:00:00 2001 +From: rpm-build +Date: Fri, 15 Mar 2024 08:31:08 +0800 +Subject: [PATCH] Work around absense of rdfind during build + +--- + copy-firmware.sh | 13 ------------- + 1 file changed, 13 deletions(-) + +diff --git a/copy-firmware.sh b/copy-firmware.sh +index f9b1f0f..de28e88 100755 +--- a/copy-firmware.sh ++++ b/copy-firmware.sh +@@ -69,11 +69,6 @@ if [ -z "$destdir" ]; then + exit 1 + fi + +-if ! which rdfind 2>/dev/null >/dev/null; then +- echo "ERROR: rdfind is not installed" +- exit 1 +-fi +- + # shellcheck disable=SC2162 # file/folder name can include escaped symbols + grep -E '^(RawFile|File):' WHENCE | sed -E -e 's/^(RawFile|File): */\1 /;s/"//g' | while read k f; do + test -f "$f" || continue +@@ -87,14 +82,6 @@ grep -E '^(RawFile|File):' WHENCE | sed -E -e 's/^(RawFile|File): */\1 /;s/"//g' + fi + done + +-$verbose "Finding duplicate files" +-rdfind -makesymlinks true -makeresultsfile false "$destdir" >/dev/null +-find "$destdir" -type l | while read -r l; do +- target="$(realpath "$l")" +- $verbose "Correcting path for $l" +- ln -fs "$(realpath --relative-to="$(dirname "$(realpath -s "$l")")" "$target")" "$l" +-done +- + # shellcheck disable=SC2162 # file/folder name can include escaped symbols + grep -E '^Link:' WHENCE | sed -e 's/^Link: *//g;s/-> //g' | while read f d; do + if test -L "$f$compext"; then +-- +2.31.1 + diff --git a/download b/download new file mode 100644 index 0000000000000000000000000000000000000000..12eaff9c1a4a2efea59049f0a35aa18222631abc --- /dev/null +++ b/download @@ -0,0 +1 @@ +4e1b62642d8882781d66847133d2f0f0 linux-firmware-20231111.tar.gz diff --git a/linux-firmware-20221214.tar.xz b/linux-firmware-20221214.tar.xz deleted file mode 100644 index 44cb3f4d8f5ab0fc4ba01c7da4bd0fc27c9fee7c..0000000000000000000000000000000000000000 Binary files a/linux-firmware-20221214.tar.xz and /dev/null differ diff --git a/linux-firmware.spec b/linux-firmware.spec index f4257e5886d6ff33c1402277e4594ada29328d31..0b9269fe9b748b43ecbd735494f34972f5b96011 100644 --- a/linux-firmware.spec +++ b/linux-firmware.spec @@ -1,162 +1,323 @@ -# don't set anolis_release=1, which could cause version conflict -%global anolis_release 3 +%define anolis_release 1 %global _prefix_firmware /usr/lib/firmware +%define _binaries_in_noarch_packages_terminate_build 0 Name: linux-firmware -Version: 20221214 +Version: 20231111 Release: %{anolis_release}%{?dist} Summary: Firmware files used by the Linux kernel License: GPL+ and GPLv2+ and MIT and Redistributable, no modification permitted URL: http://www.kernel.org/ BuildArch: noarch -Source0: https://www.kernel.org/pub/linux/kernel/firmware/%{name}-%{version}.tar.xz +Source0: https://www.kernel.org/pub/linux/kernel/firmware/%{name}-%{version}.tar.gz +Patch0: 0001-Work-around-absense-of-rdfind-during-build.patch BuildRequires: make +BuildRequires: git-core + Requires: linux-firmware-whence Provides: kernel-firmware = %{version} Obsoletes: kernel-firmware < %{version} Conflicts: microcode_ctl < 2.1-0 +Recommends: amd-gpu-firmware +Recommends: intel-gpu-firmware +Recommends: nvidia-gpu-firmware +Requires: amd-ucode-firmware +Requires: atheros-firmware +Requires: brcmfmac-firmware +Requires: mt7xxx-firmware +Requires: realtek-firmware + %description This package includes firmware files required for some devices to operate. -%package doc -Summary: Documentation files for %{name} -Requires: %{name} = %{version}-%{release} -BuildArch: noarch - -%description doc -The %{name}-doc package contains documentation files for %{name}. - %package whence Summary: WHENCE License file License: GPL+ and GPLv2+ and MIT and Redistributable, no modification permitted %description whence This package contains the WHENCE license file which documents the vendor license details. -%define intel_wireless_pkg() \ -%package -n %1-firmware \ -Summary: Firmware for %3 \ -License: Redistributableni djno modification permitted \ -Version: %2 \ -Release: %{anolis_release}%{?dist} \ -Requires: linux-firmware-whence \ -%description -n %1-firmware \ -This package contains the essential firmware for Intel wireless drivers to \ -support %3 hardware on Linux systems. Users should read the terms \ -and conditions contained inside carefully before any usage of the firmware, as \ -it is subject to these terms and conditions. - -%intel_wireless_pkg iwl100 39.31.5.1 "Intel(R) Wireless WiFi Link 100 Series Adapters" -%intel_wireless_pkg iwl105 18.168.6.1 "Intel(R) Wireless WiFi Link 105 Series Adapters" -%intel_wireless_pkg iwl135 18.168.6.1 "Intel(R) Wireless WiFi Link 135 Series Adapters" -%intel_wireless_pkg iwl1000 39.31.5.1 "Intel® PRO/Wireless 1000 B/G/N network adaptors" -%intel_wireless_pkg iwl2000 18.168.6.1 "Intel(R) Centrino Wireless-N 2000 Series Adapters" -%intel_wireless_pkg iwl2030 18.168.6.1 "Intel(R) Centrino Wireless-N 2030 Series Adapters" -%intel_wireless_pkg iwl3160 25.30.13.0 "Intel(R) Wireless WiFi Link 3160 Series Adapters" -%intel_wireless_pkg iwl3945 15.32.2.9 "Intel® PRO/Wireless 3945 A/B/G network adaptors" -%intel_wireless_pkg iwl4965 228.61.2.24 "Intel® PRO/Wireless 4965 A/G/N network adaptors" -%intel_wireless_pkg iwl5000 8.83.5.1_1 "Intel® PRO/Wireless 5000 A/G/N network adaptors" -%intel_wireless_pkg iwl5150 8.24.2.2 "Intel® PRO/Wireless 5150 A/G/N network adaptors" -%intel_wireless_pkg iwl6000 9.221.4.1 "Intel(R) Wireless WiFi Link 6000 AGN Adapter" -%intel_wireless_pkg iwl6000g2a 18.168.6.1 "Intel(R) Wireless WiFi Link 6005 Series Adapters" -%intel_wireless_pkg iwl6000g2b 18.168.6.1 "Intel(R) Wireless WiFi Link 6030 Series Adapters" -%intel_wireless_pkg iwl6050 41.28.5.1 "Intel(R) Wireless WiFi Link 6050 Series Adapters" -%intel_wireless_pkg iwl7260 25.30.13.0 "Intel(R) Intel(R) Wireless WiFi Link 726x/8000/9000 Series Adapters" -%intel_wireless_pkg iwlax2xx %{version} "Intel(R) Wireless WiFi Link AX2xx Series Adapters" - -%package -n libertas-usb8388-firmware -Summary: Firmware for Marvell Libertas USB 8388 Network Adapter +# GPU firmwares +%package -n amd-gpu-firmware +Summary: Firmware for AMD GPUs License: Redistributable, no modification permitted -Epoch: 2 -Release: %{anolis_release}%{?dist} Requires: linux-firmware-whence -%description -n libertas-usb8388-firmware -This package provides firmware for Marvell Libertas USB 8388 Network Adapter +%description -n amd-gpu-firmware +Firmware for AMD amdgpu and radeon GPUs. -%package -n libertas-usb8388-olpc-firmware -Summary: OLPC firmware for Marvell Libertas USB 8388 Network Adapter +%package -n intel-gpu-firmware +Summary: Firmware for Intel GPUs License: Redistributable, no modification permitted -Release: %{anolis_release}%{?dist} Requires: linux-firmware-whence -%description -n libertas-usb8388-olpc-firmware -This package provides firmware for Marvell Libertas USB 8388 Network Adapter -with OLPC mesh network support. +%description -n intel-gpu-firmware +Firmware for Intel GPUs including GuC (Graphics Microcontroller), HuC (HEVC/H.265 +Microcontroller) and DMC (Display Microcontroller) firmware for Skylake and later +platforms. -%package -n libertas-sd8686-firmware -Summary: Firmware for Marvell Libertas SD 8686 Network Adapter +%package -n nvidia-gpu-firmware +Summary: Firmware for NVIDIA GPUs License: Redistributable, no modification permitted -Release: %{anolis_release}%{?dist} Requires: linux-firmware-whence -%description -n libertas-sd8686-firmware -This package provides firmware for Marvell Libertas SD 8686 Network Adapter +%description -n nvidia-gpu-firmware +Firmware for NVIDIA GPUs. -%package -n libertas-sd8787-firmware -Summary: Firmware for Marvell Libertas SD 8787 Network Adapter +# Microcode updates +%package -n amd-ucode-firmware +Summary: Microcode updates for AMD CPUs +License: Redistributable, no modification permitted +Requires: linux-firmware-whence +%description -n amd-ucode-firmware +Microcode updates for AMD CPUs, ARM SEV amd TEE. + +# WiFi/Bluetooth firmwares +%package -n atheros-firmware +Summary: Firmware for Qualcomm Atheros WiFi/Bluetooth adapters +License: Redistributable, no modification permitted +Requires: linux-firmware-whence +%description -n atheros-firmware +Firmware for Qualcomm Atheros ath6k/ath9k/ath10k/ath11k WiFi adapters. + +%package -n brcmfmac-firmware +Summary: Firmware for Broadcom/Cypress brcmfmac WiFi/Bluetooth adapters +License: Redistributable, no modification permitted +Requires: linux-firmware-whence +%description -n brcmfmac-firmware +Firmware for Broadcom/Cypress brcmfmac WiFi/Bluetooth adapters. + +%package -n iwlegacy-firmware +Summary: Firmware for Intel(R) Wireless WiFi Link 3945(A)BG and 4965AGN adapters +License: Redistributable, no modification permitted +Requires: linux-firmware-whence +Obsoletes: iwl3945-firmware < %{version}-%{release} +Obsoletes: iwl4965-firmware < %{version}-%{release} +Provides: iwl3945-firmware = %{version}-%{release} +Provides: iwl4965-firmware = %{version}-%{release} +%description -n iwlegacy-firmware +This package contains the firmware required by the iwlegacy driver +for Linux. This includes the 3945(A)BG and 4965AGN WiFi NICs. Usage +of the firmware is subject to the terms and conditions contained +inside the provided LICENSE file. Please read it carefully. + +%package -n iwlwifi-dvm-firmware +Summary: DVM Firmware for Intel(R) Wireless WiFi adapters +License: Redistributable, no modification permitted +Requires: linux-firmware-whence +Obsoletes: iwl100-firmware < %{version}-%{release} +Obsoletes: iwl105-firmware < %{version}-%{release} +Obsoletes: iwl135-firmware < %{version}-%{release} +Obsoletes: iwl1000-firmware < 1:%{version}-%{release} +Obsoletes: iwl2000-firmware < %{version}-%{release} +Obsoletes: iwl2030-firmware < %{version}-%{release} +Obsoletes: iwl5000-firmware < %{version}-%{release} +Obsoletes: iwl5150-firmware < %{version}-%{release} +Obsoletes: iwl6000-firmware < %{version}-%{release} +Obsoletes: iwl6000g2a-firmware < %{version}-%{release} +Obsoletes: iwl6000g2b-firmware < %{version}-%{release} +Obsoletes: iwl6050-firmware < %{version}-%{release} +Provides: iwl100-firmware = %{version}-%{release} +Provides: iwl105-firmware = %{version}-%{release} +Provides: iwl135-firmware = %{version}-%{release} +Provides: iwl1000-firmware = 1:%{version}-%{release} +Provides: iwl2000-firmware = %{version}-%{release} +Provides: iwl2030-firmware = %{version}-%{release} +Provides: iwl5000-firmware = %{version}-%{release} +Provides: iwl5150-firmware = %{version}-%{release} +Provides: iwl6000-firmware = %{version}-%{release} +Provides: iwl6000g2a-firmware = %{version}-%{release} +Provides: iwl6000g2b-firmware = %{version}-%{release} +Provides: iwl6050-firmware = %{version}-%{release} +%description -n iwlwifi-dvm-firmware +This package contains the firmware required by the iwlwifi driver +for Linux built with DVM firmware support (CONFIG_IWLDVM=y/m). Usage of +the firmware is subject to the terms and conditions contained inside the +provided LICENSE file. Please read it carefully. + +%package -n iwlwifi-mvm-firmware +Summary: MVM Firmware for Intel(R) Wireless WiFi adapters +License: Redistributable, no modification permitted +Requires: linux-firmware-whence +Obsoletes: iwl3160-firmware < 1:%{version}-%{release} +Obsoletes: iwl7260-firmware < 1:%{version}-%{release} +Obsoletes: iwlax2xx-firmware < %{version}-%{release} +Provides: iwl3160-firmware = 1:%{version}-%{release} +Provides: iwl7260-firmware = 1:%{version}-%{release} +Provides: iwlax2xx-firmware = %{version}-%{release} +%description -n iwlwifi-mvm-firmware +This package contains the firmware required by the iwlwifi driver +for Linux built with MVM firmware support (CONFIG_IWLMVM=y/m). Usage of +the firmware is subject to the terms and conditions contained inside the +provided LICENSE file. Please read it carefully. + +%package -n libertas-firmware +Summary: Firmware for Marvell Libertas SD/USB WiFi Network Adapters +License: Redistributable, no modification permitted +Requires: linux-firmware-whence +Obsoletes: libertas-sd8686-firmware < %{version}-%{release} +Obsoletes: libertas-sd8787-firmware < %{version}-%{release} +Obsoletes: libertas-usb8388-firmware < 2:%{version}-%{release} +Obsoletes: libertas-usb8388-olpc-firmware < %{version}-%{release} +Provides: libertas-sd8686-firmware < %{version}-%{release} +Provides: libertas-sd8787-firmware < %{version}-%{release} +Provides: libertas-usb8388-firmware < 2:%{version}-%{release} +Provides: libertas-usb8388-olpc-firmware < %{version}-%{release} +%description -n libertas-firmware +Firmware for the Marvell Libertas series of WiFi Network Adapters +Including the SD 8686/8787 and USB 8388/8388. + +%package -n mt7xxx-firmware +Summary: Firmware for Mediatek 7600/7900 series WiFi/Bluetooth adapters License: Redistributable, no modification permitted -Release: %{anolis_release}%{?dist} Requires: linux-firmware-whence -%description -n libertas-sd8787-firmware -This package provides firmware for Marvell Libertas SD 8787 Network Adapter +%description -n mt7xxx-firmware +Firmware for Mediatek 7600/7900 series WiFi/Bluetooth adapters +%package -n realtek-firmware +Summary: Firmware for Realtek WiFi/Bluetooth adapters +License: Redistributable, no modification permitted +Requires: linux-firmware-whence +%description -n realtek-firmware +Firmware for Realtek WiFi/Bluetooth adapters + +# SMART NIC and network switch firmwares %package -n liquidio-firmware Summary: Firmware for Cavium LiquidIO Intelligent Server Adapter License: Redistributable, no modification permitted -Release: %{anolis_release}%{?dist} Requires: linux-firmware-whence %description -n liquidio-firmware -This package provides firmware for Cavium LiquidIO Intelligent Server Adapter +Firmware for Cavium LiquidIO Intelligent Server Adapter -%package -n netronome-firmware -Summary: Firmware for Netronome Smart NICs +%package -n mlxsw_spectrum-firmware +Summary: Firmware for Mellanox Spectrum 1/2/3 Switches License: Redistributable, no modification permitted -Release: %{anolis_release}%{?dist} Requires: linux-firmware-whence -%description -n netronome-firmware -This package provides firmware for Netronome Smart NICs +%description -n mlxsw_spectrum-firmware +Firmware for Mellanox Spectrumi series 1/2/3 ethernet switches. %package -n mrvlprestera-firmware Summary: Firmware for Marvell Prestera Switchdev/ASIC devices License: Redistributable, no modification permitted -Release: %{anolis_release}%{?dist} Requires: linux-firmware-whence %description -n mrvlprestera-firmware -This package provides firmware for Marvell Prestera Switchdev/ASIC devices +Firmware for Marvell Prestera Switchdev/ASIC devices -%prep -%autosetup -p1 +%package -n netronome-firmware +Summary: Firmware for Netronome Smart NICs +License: Redistributable, no modification permitted +Requires: linux-firmware-whence +%description -n netronome-firmware +Firmware for Netronome Smart NICs +%package -n qcom-firmware +Summary: Firmware for Qualcomm SoCs +License: Redistributable, no modification permitted +Requires: linux-firmware-whence +Requires: atheros-firmware = %{version}-%{release} +%description -n qcom-firmware +Firmware for various compoents in Qualcomm SoCs including Adreno +GPUs, Venus video encode/decode, Audio DSP, Compute DSP, WWAN +modem, Sensor DSPs. + +# Random other hardware +%package -n dvb-firmware +Summary: Firmware for various DVB broadcast receivers +License: Redistributable, no modification permitted +Requires: linux-firmware-whence +%description -n dvb-firmware +Firmware for various DVB broadcast receivers. These include the +Siano DTV devices, devices based on Conexant chipsets (cx18, +cx23885, cx23840, cx231xx), Xceive xc4000/xc5000, DiBcom dib0700, +Terratec H5 DRX-K, ITEtech IT9135 Ax and Bx, and av7110. + +%prep +%autosetup -p1 %build %install +mkdir -p %{buildroot}/%{_prefix_firmware} mkdir -p %{buildroot}/%{_prefix_firmware}/updates make DESTDIR=%{buildroot}/ FIRMWAREDIR=%{_prefix_firmware} install +#Cleanup files we don't want to ship pushd %{buildroot}/%{_prefix_firmware} -rm -rf ess korg sb16 yamaha carl9170fw cis/{src,Makefile} atusb/ChangeLog -rm -f av7110/{Boot.S,Makefile} dsp56k/{bootstrap.asm,concat-bootstrap.pl,Makefile} -rm -f iscis/{*.c,*.h,README,Makefile} keyspan_pda/{keyspan_pda.S,xircom_pgs.S,Makefile} -rm -f usbdux/*dux */*.asm libertas/sd8686_v8* libertas/usb8388_v5.bin* -rm -f ctefx.bin* ctspeq.bin* check_whence.py configure Makefile README -find . -type f -executable -exec chmod -x {} \; +# Remove firmware shipped in separate packages already +# Perhaps these should be built as subpackages of linux-firmware? +rm -rf ess korg sb16 yamaha + +# Remove source files we don't need to install +rm -rf carl9170fw +rm -rf cis/{src,Makefile} +rm -f atusb/ChangeLog +rm -f av7110/{Boot.S,Makefile} +rm -f dsp56k/{bootstrap.asm,concat-bootstrap.pl,Makefile} +rm -f iscis/{*.c,*.h,README,Makefile} +rm -f keyspan_pda/{keyspan_pda.S,xircom_pgs.S,Makefile} +rm -f usbdux/*dux */*.asm + +# No need to install old firmware versions where we also provide newer versions +# which are preferred and support the same (or more) hardware +rm -f libertas/sd8686_v8* +rm -f libertas/usb8388_v5.bin* + +# Remove firmware for Creative CA0132 HD as it's in alsa-firmware +rm -f ctefx.bin* ctspeq.bin* + +# Remove superfluous infra files +rm -f check_whence.py configure Makefile README popd -FILEDIR=$PWD +# Create file list but exclude firmwares that we place in subpackages +FILEDIR=`pwd` pushd %{buildroot}/%{_prefix_firmware} find . \! -type d > $FILEDIR/linux-firmware.files find . -type d | sed -e '/^.$/d' > $FILEDIR/linux-firmware.dirs popd sed -i -e 's:^./::' linux-firmware.{files,dirs} -sed -i -e '/^iwlwifi/d' \ +sed \ + -i -e '/^amdgpu/d' \ + -i -e '/^amd/d' \ + -i -e '/^amdtee/d' \ + -i -e '/^amd-ucode/d' \ + -i -e '/^ar3k/d' \ + -i -e '/^ath6k/d' \ + -i -e '/^ath9k_htc/d' \ + -i -e '/^ath10k/d' \ + -i -e '/^ath11k/d' \ + -i -e '/^av7110/d' \ + -i -e '/^brcm/d' \ + -i -e '/^cmmb/d' \ + -i -e '/^cypress/d' \ + -i -e '/^dvb/d' \ + -i -e '/^i915/d' \ + -i -e '/^isdbt/d' \ + -i -e '/^iwlwifi/d' \ + -i -e '/^nvidia\/g/d' \ + -i -e '/^nvidia\/tu/d' \ + -i -e '/^lgs8g75/d' \ -i -e '/^libertas\/sd8686/d' \ -i -e '/^libertas\/usb8388/d' \ -i -e '/^liquidio/d' \ + -i -e '/^mellanox/d' \ + -i -e '/^mediatek\/mt76/d' \ + -i -e '/^mediatek\/mt79/d' \ + -i -e '/^mediatek\/BT/d' \ + -i -e '/^mediatek\/WIFI/d' \ -i -e '/^mrvl\/prestera/d' \ -i -e '/^mrvl\/sd8787/d' \ -i -e '/^netronome/d' \ + -i -e '/^qca/d' \ + -i -e '/^qcom/d' \ + -i -e '/^radeon/d' \ + -i -e '/^rtl_bt/d' \ + -i -e '/^rtlwifi/d' \ + -i -e '/^rtw88/d' \ + -i -e '/^rtw89/d' \ + -i -e '/^sms1xxx/d' \ + -i -e '/^tdmb/d' \ + -i -e '/^v4l-cx2/d' \ linux-firmware.files sed -i -e 's!^!/usr/lib/firmware/!' linux-firmware.{files,dirs} sed -i -e 's/^/"/;s/$/"/' linux-firmware.files @@ -170,33 +331,73 @@ sed -e 's/^/%%dir /' linux-firmware.dirs >> linux-firmware.files %files whence %license WHENCE -%define iwl_firmware_files()\ -%files -n iwl%1-firmware \ -%license LICENCE.iwlwifi_firmware \ -%{_prefix_firmware}/iwlwifi-%1-*.ucode* - -%iwl_firmware_files 100 -%iwl_firmware_files 105 -%iwl_firmware_files 135 -%iwl_firmware_files 1000 -%iwl_firmware_files 2000 -%iwl_firmware_files 2030 -%iwl_firmware_files 3945 -%iwl_firmware_files 4965 -%iwl_firmware_files 5000 -%iwl_firmware_files 5150 -%iwl_firmware_files 6000 -%iwl_firmware_files 6000g2a -%iwl_firmware_files 6000g2b -%iwl_firmware_files 6050 - -%files -n iwl3160-firmware +# GPU firmwares +%files -n amd-gpu-firmware +%license LICENSE.radeon LICENSE.amdgpu +%{_prefix_firmware}/amdgpu/ +%{_prefix_firmware}/radeon/ + +%files -n intel-gpu-firmware +%license LICENSE.i915 +%{_prefix_firmware}/i915/ + +%files -n nvidia-gpu-firmware +%license LICENCE.nvidia +%dir %{_prefix_firmware}/nvidia +%{_prefix_firmware}/nvidia/g*/ +%{_prefix_firmware}/nvidia/tu*/ + +# Microcode updates +%files -n amd-ucode-firmware +%license LICENSE.amd-ucode +%{_prefix_firmware}/amd/ +%{_prefix_firmware}/amdtee/ +%{_prefix_firmware}/amd-ucode/ + +# WiFi/Bluetooth firmwares +%files -n atheros-firmware +%license LICENCE.atheros_firmware +%license LICENSE.QualcommAtheros_ar3k +%license LICENSE.QualcommAtheros_ath10k +%license LICENCE.open-ath9k-htc-firmware +%license qca/NOTICE.txt +%{_prefix_firmware}/ar3k/ +%{_prefix_firmware}/ath6k/ +%{_prefix_firmware}/ath9k_htc/ +%{_prefix_firmware}/ath10k/ +%{_prefix_firmware}/ath11k/ +%{_prefix_firmware}/qca/ + +%files -n brcmfmac-firmware +%license LICENCE.broadcom_bcm43xx +%license LICENCE.cypress +%{_prefix_firmware}/brcm/ +%{_prefix_firmware}/cypress/ + +%files -n iwlegacy-firmware %license LICENCE.iwlwifi_firmware -%{_prefix_firmware}/iwlwifi-3160-*.ucode* -%{_prefix_firmware}/iwlwifi-3168-*.ucode* +%{_prefix_firmware}/iwlwifi-3945-*.ucode* +%{_prefix_firmware}/iwlwifi-4965-*.ucode* -%files -n iwl7260-firmware +%files -n iwlwifi-dvm-firmware %license LICENCE.iwlwifi_firmware +%{_prefix_firmware}/iwlwifi-100-*.ucode* +%{_prefix_firmware}/iwlwifi-105-*.ucode* +%{_prefix_firmware}/iwlwifi-135-*.ucode* +%{_prefix_firmware}/iwlwifi-1000-*.ucode* +%{_prefix_firmware}/iwlwifi-2000-*.ucode* +%{_prefix_firmware}/iwlwifi-2030-*.ucode* +%{_prefix_firmware}/iwlwifi-5000-*.ucode* +%{_prefix_firmware}/iwlwifi-5150-*.ucode* +%{_prefix_firmware}/iwlwifi-6000-*.ucode* +%{_prefix_firmware}/iwlwifi-6000g2a-*.ucode* +%{_prefix_firmware}/iwlwifi-6000g2b-*.ucode* +%{_prefix_firmware}/iwlwifi-6050-*.ucode* + +%files -n iwlwifi-mvm-firmware +%license LICENCE.iwlwifi_firmware +%{_prefix_firmware}/iwlwifi-3160-*.ucode* +%{_prefix_firmware}/iwlwifi-3168-*.ucode* %{_prefix_firmware}/iwlwifi-7260-*.ucode* %{_prefix_firmware}/iwlwifi-7265-*.ucode* %{_prefix_firmware}/iwlwifi-7265D-*.ucode* @@ -204,53 +405,82 @@ sed -e 's/^/%%dir /' linux-firmware.dirs >> linux-firmware.files %{_prefix_firmware}/iwlwifi-8265-*.ucode* %{_prefix_firmware}/iwlwifi-9000-*.ucode* %{_prefix_firmware}/iwlwifi-9260-*.ucode* - -%files -n iwlax2xx-firmware -%license LICENCE.iwlwifi_firmware %{_prefix_firmware}/iwlwifi-cc-a0-*.ucode* +%{_prefix_firmware}/iwlwifi-gl-c0* +%{_prefix_firmware}/iwlwifi-ma-b0* %{_prefix_firmware}/iwlwifi-Qu*.ucode* %{_prefix_firmware}/iwlwifi-ty-a0* %{_prefix_firmware}/iwlwifi-so-a0* -%files -n libertas-usb8388-firmware -%license LICENCE.Marvell -%dir %{_prefix_firmware}/libertas -%{_prefix_firmware}/libertas/usb8388_v9.bin* - -%files -n libertas-usb8388-olpc-firmware +%files -n libertas-firmware %license LICENCE.Marvell %dir %{_prefix_firmware}/libertas -%{_prefix_firmware}/libertas/usb8388_olpc.bin* - -%files -n libertas-sd8686-firmware -%license LICENCE.Marvell -%dir %{_prefix_firmware}/libertas -%{_prefix_firmware}/libertas/sd8686* - -%files -n libertas-sd8787-firmware -%license LICENCE.Marvell %dir %{_prefix_firmware}/mrvl +%{_prefix_firmware}/libertas/sd8686* +%{_prefix_firmware}/libertas/usb8388_olpc.bin* +%{_prefix_firmware}/libertas/usb8388_v9.bin* %{_prefix_firmware}/mrvl/sd8787* +%files -n mt7xxx-firmware +%license LICENCE.mediatek +%license LICENCE.ralink_a_mediatek_company_firmware +%dir %{_prefix_firmware}/mediatek +%{_prefix_firmware}/mediatek/mt76* +%{_prefix_firmware}/mediatek/mt79* +%{_prefix_firmware}/mediatek/BT* +%{_prefix_firmware}/mediatek/WIFI* + +%files -n realtek-firmware +%license LICENCE.rtlwifi_firmware.txt +%{_prefix_firmware}/rtl_bt/ +%{_prefix_firmware}/rtlwifi/ +%{_prefix_firmware}/rtw88/ +%{_prefix_firmware}/rtw89/ + +# SMART NIC and network switch firmwares %files -n liquidio-firmware %license LICENCE.cavium_liquidio %dir %{_prefix_firmware}/liquidio %{_prefix_firmware}/liquidio/* -%files -n netronome-firmware -%license LICENCE.Netronome -%dir %{_prefix_firmware}/netronome -%{_prefix_firmware}/netronome/* - %files -n mrvlprestera-firmware %license LICENCE.Marvell %dir %{_prefix_firmware}/mrvl/prestera %{_prefix_firmware}/mrvl/prestera/* -%files doc -%doc README +%files -n mlxsw_spectrum-firmware +%dir %{_prefix_firmware}/mellanox/ +%{_prefix_firmware}/mellanox/* + +%files -n netronome-firmware +%license LICENCE.Netronome +%dir %{_prefix_firmware}/netronome +%{_prefix_firmware}/netronome/* + +# Silicon Vendor specific +%files -n qcom-firmware +%license LICENSE.qcom LICENSE.qcom_yamato qcom/NOTICE.txt +%dir %{_prefix_firmware}/qcom +%{_prefix_firmware}/qcom/* + +# Random other hardware +%files -n dvb-firmware +%license LICENSE.dib0700 LICENCE.it913x LICENCE.siano +%license LICENCE.xc4000 LICENCE.xc5000 LICENCE.xc5000c +%dir %{_prefix_firmware}/av7110/ +%{_prefix_firmware}/av7110/* +%{_prefix_firmware}/cmmb* +%{_prefix_firmware}/dvb* +%{_prefix_firmware}/isdbt* +%{_prefix_firmware}/lgs8g75* +%{_prefix_firmware}/sms1xxx* +%{_prefix_firmware}/tdmb* +%{_prefix_firmware}/v4l-cx2* %changelog +* Fri Mar 15 2024 Kaiqiang Wang - 20231111-1 +- update to 20231111 + * Tue Apr 11 2023 Zhongling - 20221214-3 - Refactor rpm spec