#GIT_CMT=17dba0ca5f1f082b28751099c2c04e039fe94c3b %global debug_package %{nil} %global firmware_release 999.14 %global fwdir /usr/lib/firmware %define _binaries_in_noarch_packages_terminate_build 0 %global __os_install_post %{nil} %global checkout 2f2f0181 %global fw_rpm_version 20220907 Name: linux-firmware Version: %{fw_rpm_version} Release: 999.14.git2f2f0181.el9 Summary: Firmware files used by the Linux kernel License: GPL+ and GPLv2+ and MIT and Redistributable, no modification permitted URL: https://git.kernel.org/cgit/linux/kernel/git/firmware/linux-firmware.git/ BuildArch: noarch Group: System Environment/Kernel # Source0 creation: "git archive --format=tar [gitid] | gzip > [srcdir]/%%{name}-%%{version}.tar.gz" Source0: linux-firmware-20220907.tar.bz2 Patch1: 0001-Add-support-for-compressing-firmware-in-copy-firmwar.patch BuildRequires: make BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) Requires: linux-firmware-whence Provides: kernel-firmware = %{version} Obsoletes: kernel-firmware < %{version} Conflicts: microcode_ctl < 2.1-0 Requires: coreutils Epoch: 999 Source1: core.list Requires: linux-firmware-core = %{epoch}:%{version}-%{release} %description This package includes firmware files required for some devices to operate. %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. %package -n linux-firmware-core Summary: Firmware files for Oracle kernel-uek-core RPM License: GPL+ and GPLv2+ and MIT and Redistributable, no modification permitted Version: %{fw_rpm_version} Release: %{firmware_release}.git%{checkout}%{?dist} Provides: linux-nano-firmware = 999:%{version}-%{release} Conflicts: linux-firmware <= 999:20211203-999.10.gitb0e898fb.el9 Obsoletes: linux-nano-firmware <= 999:20211203-999.10.gitb0e898fb.el9 Requires: linux-firmware-whence Epoch: 999 %description -n linux-firmware-core This package contains the firmware required by the kernel-uek-core package %package -n iwl100-firmware Summary: Firmware for Intel(R) Wireless WiFi Link 100 Series Adapters License: Redistributable, no modification permitted Version: 39.31.5.1 Release: %{firmware_release}%{?dist} Obsoletes: iwl100-firmware < 39.31.5.1-4 Requires: linux-firmware-whence Epoch: 999 %description -n iwl100-firmware This package contains the firmware required by the Intel wireless drivers for Linux to support the iwl100 hardware. Usage of the firmware is subject to the terms and conditions contained inside the provided LICENSE file. Please read it carefully. %package -n iwl105-firmware Summary: Firmware for Intel(R) Centrino Wireless-N 105 Series Adapters License: Redistributable, no modification permitted Version: 18.168.6.1 Release: %{firmware_release}%{?dist} Requires: linux-firmware-whence Epoch: 999 %description -n iwl105-firmware This package contains the firmware required by the Intel wireless drivers for Linux to support the iwl105 hardware. Usage of the firmware is subject to the terms and conditions contained inside the provided LICENSE file. Please read it carefully. %package -n iwl135-firmware Summary: Firmware for Intel(R) Centrino Wireless-N 135 Series Adapters License: Redistributable, no modification permitted Version: 18.168.6.1 Release: %{firmware_release}%{?dist} Requires: linux-firmware-whence Epoch: 999 %description -n iwl135-firmware This package contains the firmware required by the Intel wireless drivers for Linux to support the iwl135 hardware. Usage of the firmware is subject to the terms and conditions contained inside the provided LICENSE file. Please read it carefully. %package -n iwl1000-firmware Summary: Firmware for Intel® PRO/Wireless 1000 B/G/N network adaptors License: Redistributable, no modification permitted Version: 39.31.5.1 Release: %{firmware_release}%{?dist} Obsoletes: iwl1000-firmware < 1:39.31.5.1-3 Requires: linux-firmware-whence Epoch: 999 %description -n iwl1000-firmware This package contains the firmware required by the Intel wireless drivers for Linux to support the iwl1000 hardware. Usage of the firmware is subject to the terms and conditions contained inside the provided LICENSE file. Please read it carefully. %package -n iwl2000-firmware Summary: Firmware for Intel(R) Centrino Wireless-N 2000 Series Adapters License: Redistributable, no modification permitted Version: 18.168.6.1 Release: %{firmware_release}%{?dist} Requires: linux-firmware-whence Epoch: 999 %description -n iwl2000-firmware This package contains the firmware required by the Intel wireless drivers for Linux to support the iwl2000 hardware. Usage of the firmware is subject to the terms and conditions contained inside the provided LICENSE file. Please read it carefully. %package -n iwl2030-firmware Summary: Firmware for Intel(R) Centrino Wireless-N 2030 Series Adapters License: Redistributable, no modification permitted Version: 18.168.6.1 Release: %{firmware_release}%{?dist} Requires: linux-firmware-whence Epoch: 999 %description -n iwl2030-firmware This package contains the firmware required by the Intel wireless drivers for Linux to support the iwl2030 hardware. Usage of the firmware is subject to the terms and conditions contained inside the provided LICENSE file. Please read it carefully. %package -n iwl3160-firmware Summary: Firmware for Intel(R) Wireless WiFi Link 3160 Series Adapters License: Redistributable, no modification permitted Version: 25.30.13.0 Release: %{firmware_release}%{?dist} Requires: linux-firmware-whence Epoch: 999 %description -n iwl3160-firmware This package contains the firmware required by the Intel wireless drivers for Linux. Usage of the firmware is subject to the terms and conditions contained inside the provided LICENSE file. Please read it carefully. %package -n iwl3945-firmware Summary: Firmware for Intel® PRO/Wireless 3945 A/B/G network adaptors License: Redistributable, no modification permitted Version: 15.32.2.9 Release: %{firmware_release}%{?dist} Obsoletes: iwl3945-firmware < 15.32.2.9-7 Requires: linux-firmware-whence Epoch: 999 %description -n iwl3945-firmware This package contains the firmware required by the iwl3945 driver for Linux. Usage of the firmware is subject to the terms and conditions contained inside the provided LICENSE file. Please read it carefully. %package -n iwl4965-firmware Summary: Firmware for Intel® PRO/Wireless 4965 A/G/N network adaptors License: Redistributable, no modification permitted Version: 228.61.2.24 Release: %{firmware_release}%{?dist} Obsoletes: iwl4965-firmware < 228.61.2.24-5 Requires: linux-firmware-whence Epoch: 999 %description -n iwl4965-firmware This package contains the firmware required by the iwl4965 driver for Linux. Usage of the firmware is subject to the terms and conditions contained inside the provided LICENSE file. Please read it carefully. %package -n iwl5000-firmware Summary: Firmware for Intel® PRO/Wireless 5000 A/G/N network adaptors License: Redistributable, no modification permitted Version: 8.83.5.1_1 Release: %{firmware_release}%{?dist} Obsoletes: iwl5000-firmware < 8.83.5.1_1-3 Requires: linux-firmware-whence Epoch: 999 %description -n iwl5000-firmware This package contains the firmware required by the iwl5000 driver for Linux. Usage of the firmware is subject to the terms and conditions contained inside the provided LICENSE file. Please read it carefully. %package -n iwl5150-firmware Summary: Firmware for Intel® PRO/Wireless 5150 A/G/N network adaptors License: Redistributable, no modification permitted Version: 8.24.2.2 Release: %{firmware_release}%{?dist} Obsoletes: iwl5150-firmware < 8.24.2.2-4 Requires: linux-firmware-whence Epoch: 999 %description -n iwl5150-firmware This package contains the firmware required by the iwl5150 driver for Linux. Usage of the firmware is subject to the terms and conditions contained inside the provided LICENSE file. Please read it carefully. %package -n iwl6000-firmware Summary: Firmware for Intel(R) Wireless WiFi Link 6000 AGN Adapter License: Redistributable, no modification permitted Version: 9.221.4.1 Release: %{firmware_release}%{?dist} Obsoletes: iwl6000-firmware < 9.221.4.1-4 Requires: linux-firmware-whence Epoch: 999 %description -n iwl6000-firmware This package contains the firmware required by the Intel wireless drivers for Linux. Usage of the firmware is subject to the terms and conditions contained inside the provided LICENSE file. Please read it carefully. %package -n iwl6000g2a-firmware Summary: Firmware for Intel(R) Wireless WiFi Link 6005 Series Adapters License: Redistributable, no modification permitted Version: 18.168.6.1 Release: %{firmware_release}%{?dist} Obsoletes: iwl6000g2a-firmware < 17.168.5.3-3 Requires: linux-firmware-whence Epoch: 999 %description -n iwl6000g2a-firmware This package contains the firmware required by the Intel wireless drivers for Linux. Usage of the firmware is subject to the terms and conditions contained inside the provided LICENSE file. Please read it carefully. %package -n iwl6000g2b-firmware Summary: Firmware for Intel(R) Wireless WiFi Link 6030 Series Adapters License: Redistributable, no modification permitted Version: 18.168.6.1 Release: %{firmware_release}%{?dist} Obsoletes: iwl6000g2b-firmware < 17.168.5.2-3 Requires: linux-firmware-whence Epoch: 999 %description -n iwl6000g2b-firmware This package contains the firmware required by the Intel wireless drivers for Linux. Usage of the firmware is subject to the terms and conditions contained inside the provided LICENSE file. Please read it carefully. %package -n iwl6050-firmware Summary: Firmware for Intel(R) Wireless WiFi Link 6050 Series Adapters License: Redistributable, no modification permitted Version: 41.28.5.1 Release: %{firmware_release}%{?dist} Obsoletes: iwl6050-firmware < 41.28.5.1-5 Requires: linux-firmware-whence Epoch: 999 %description -n iwl6050-firmware This package contains the firmware required by the Intel wireless drivers for Linux. Usage of the firmware is subject to the terms and conditions contained inside the provided LICENSE file. Please read it carefully. %package -n iwl7260-firmware Summary: Firmware for Intel(R) Wireless WiFi Link 726x/8000/9000 Series Adapters License: Redistributable, no modification permitted Version: 25.30.13.0 Release: %{firmware_release}%{?dist} Recommends: iwlax2xx-firmware Requires: linux-firmware-whence Epoch: 999 %description -n iwl7260-firmware This package contains the firmware required by the Intel wireless drivers for Linux. Usage of the firmware is subject to the terms and conditions contained inside the provided LICENSE file. Please read it carefully. %package -n iwlax2xx-firmware Summary: Firmware for Intel(R) Wireless WiFi Link AX2xx Series Adapters License: Redistributable, no modification permitted Release: %{firmware_release}%{?dist} Recommends: iwl7260-firmware Requires: linux-firmware-whence Epoch: 999 %description -n iwlax2xx-firmware This package contains the firmware required by the Intel wireless drivers for Linux. Usage of the firmware is subject to the terms and conditions contained inside the provided LICENSE file. Please read it carefully. %package -n libertas-usb8388-firmware Summary: Firmware for Marvell Libertas USB 8388 Network Adapter License: Redistributable, no modification permitted Requires: linux-firmware-whence Epoch: 999 Obsoletes: libertas-usb8388-firmware < 2:5.110.22.p23-8 %description -n libertas-usb8388-firmware Firmware for Marvell Libertas USB 8388 Network Adapter %package -n libertas-usb8388-olpc-firmware Summary: OLPC firmware for Marvell Libertas USB 8388 Network Adapter License: Redistributable, no modification permitted Requires: linux-firmware-whence Epoch: 999 %description -n libertas-usb8388-olpc-firmware Firmware for Marvell Libertas USB 8388 Network Adapter with OLPC mesh network support. %package -n libertas-sd8686-firmware Summary: Firmware for Marvell Libertas SD 8686 Network Adapter License: Redistributable, no modification permitted Obsoletes: libertas-sd8686-firmware < 9.70.20.p0-4 Requires: linux-firmware-whence Epoch: 999 %description -n libertas-sd8686-firmware Firmware for Marvell Libertas SD 8686 Network Adapter %package -n libertas-sd8787-firmware Summary: Firmware for Marvell Libertas SD 8787 Network Adapter License: Redistributable, no modification permitted Requires: linux-firmware-whence Epoch: 999 %description -n libertas-sd8787-firmware Firmware for Marvell Libertas SD 8787 Network Adapter %package -n liquidio-firmware Summary: Firmware for Cavium LiquidIO Intelligent Server Adapter License: Redistributable, no modification permitted Requires: linux-firmware-whence %description -n liquidio-firmware Firmware for Cavium LiquidIO Intelligent Server Adapter %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 %prep %autosetup -p1 %build cp -f %{SOURCE1} core.list %install rm -rf $RPM_BUILD_ROOT mkdir -p $RPM_BUILD_ROOT%{fwdir} mkdir -p $RPM_BUILD_ROOT%{fwdir}/updates # Install firmware files and setup symlinks based on WHENCE list. make DESTDIR=$RPM_BUILD_ROOT FIRMWAREDIR=%{fwdir} installcompress # Cleanup files we don't want to ship pushd $RPM_BUILD_ROOT%{fwdir} # 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 # Remove executable bits from random firmware find . -type f -executable -exec chmod -x {} \; popd # Create file list but exclude firmwares that we place in subpackages FILEDIR=`pwd` pushd $RPM_BUILD_ROOT/%{fwdir} 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' \ -i -e '/^libertas\/sd8686/d' \ -i -e '/^libertas\/usb8388/d' \ -i -e '/^mrvl\/sd8787/d' \ -i -e '/^liquidio/d' \ -i -e '/^netronome/d' \ linux-firmware.files sed -i -e 's!^!/usr/lib/firmware/!' linux-firmware.{files,dirs} sed -i -e 's/^/"/;s/$/"/' linux-firmware.files # remove core files from this list cat core.list | while read file do sed -i "\@$file@d" linux-firmware.files done sed -e 's/^/%%dir /' linux-firmware.dirs >> linux-firmware.files %clean rm -rf $RPM_BUILD_ROOT rm -rf linux-firmware.{files,dirs} %files -n linux-firmware-core -f core.list %dir %{fwdir} %license LICENCE.* LICENSE.* GPL* %files -f linux-firmware.files %dir %{fwdir} %license LICENCE.* LICENSE.* GPL* %files whence %license WHENCE %files -n iwl100-firmware %license LICENCE.iwlwifi_firmware %{fwdir}/iwlwifi-100-5.ucode* %files -n iwl105-firmware %license LICENCE.iwlwifi_firmware %{fwdir}/iwlwifi-105-*.ucode* %files -n iwl135-firmware %license LICENCE.iwlwifi_firmware %{fwdir}/iwlwifi-135-*.ucode* %files -n iwl1000-firmware %license LICENCE.iwlwifi_firmware %{fwdir}/iwlwifi-1000-*.ucode* %files -n iwl2000-firmware %license LICENCE.iwlwifi_firmware %{fwdir}/iwlwifi-2000-*.ucode* %files -n iwl2030-firmware %license LICENCE.iwlwifi_firmware %{fwdir}/iwlwifi-2030-*.ucode* %files -n iwl3160-firmware %license LICENCE.iwlwifi_firmware %{fwdir}/iwlwifi-3160-*.ucode* %{fwdir}/iwlwifi-3168-*.ucode* %files -n iwl3945-firmware %license LICENCE.iwlwifi_firmware %{fwdir}/iwlwifi-3945-*.ucode* %files -n iwl4965-firmware %license LICENCE.iwlwifi_firmware %{fwdir}/iwlwifi-4965-*.ucode* %files -n iwl5000-firmware %license LICENCE.iwlwifi_firmware %{fwdir}/iwlwifi-5000-*.ucode* %files -n iwl5150-firmware %license LICENCE.iwlwifi_firmware %{fwdir}/iwlwifi-5150-*.ucode* %files -n iwl6000-firmware %license LICENCE.iwlwifi_firmware %{fwdir}/iwlwifi-6000-*.ucode* %files -n iwl6000g2a-firmware %license LICENCE.iwlwifi_firmware %{fwdir}/iwlwifi-6000g2a-*.ucode* %files -n iwl6000g2b-firmware %license LICENCE.iwlwifi_firmware %{fwdir}/iwlwifi-6000g2b-*.ucode* %files -n iwl6050-firmware %license LICENCE.iwlwifi_firmware %{fwdir}/iwlwifi-6050-*.ucode* %files -n iwl7260-firmware %license LICENCE.iwlwifi_firmware %{fwdir}/iwlwifi-7260-*.ucode* %{fwdir}/iwlwifi-7265-*.ucode* %{fwdir}/iwlwifi-7265D-*.ucode* %{fwdir}/iwlwifi-8000C-*.ucode* %{fwdir}/iwlwifi-8265-*.ucode* %{fwdir}/iwlwifi-9000-*.ucode* %{fwdir}/iwlwifi-9260-*.ucode* %files -n iwlax2xx-firmware %license LICENCE.iwlwifi_firmware %{fwdir}/iwlwifi-Qu*.ucode* %{fwdir}/iwlwifi-cc-a0-*.ucode* %{fwdir}/iwlwifi-ty-a0* %{fwdir}/iwlwifi-so-a0* %files -n libertas-usb8388-firmware %license LICENCE.Marvell %dir %{fwdir}/libertas %{fwdir}/libertas/usb8388_v9.bin* %files -n libertas-usb8388-olpc-firmware %license LICENCE.Marvell %dir %{fwdir}/libertas %{fwdir}/libertas/usb8388_olpc.bin* %files -n libertas-sd8686-firmware %license LICENCE.Marvell %dir %{fwdir}/libertas %{fwdir}/libertas/sd8686* %files -n libertas-sd8787-firmware %license LICENCE.Marvell %dir %{fwdir}/mrvl %{fwdir}/mrvl/sd8787* %files -n liquidio-firmware %license LICENCE.cavium_liquidio %dir %{fwdir}/liquidio %{fwdir}/liquidio/* %files -n netronome-firmware %license LICENCE.Netronome %dir %{fwdir}/netronome %{fwdir}/netronome/* %changelog * Wed Sep 07 2022 Somasundaram Krishnasamy - 20220907-999.14.git2f2f0181.el9 - Rebase to upstream * Fri Mar 04 2022 Somasundaram Krishnasamy - 20220304-999.13.gitf011ccb4.el9 - Update linux-firmware-core rpm files list based latest UEK core rpm. * Fri Mar 04 2022 Somasundaram Krishnasamy - 20220304-999.12.gitf011ccb4.el9 - Rebase to upstream (Orabug: 33850583) * Mon Feb 14 2022 Somasundaram Krishnasamy - 20220214-999.11.git6342082c.el9 - Split linux-firmware rpm to linux-firmware-core and linux-firmware - Rebase to upstream * Fri Dec 03 2021 Somasundaram Krishnasamy - 20211203-999.10.gitb0e898fb.el9 - Move WHENCE to separate rpm * Fri Dec 03 2021 Somasundaram Krishnasamy - 20211203-999.9.gitb0e898fb.el9 - Create rpms for OL9.