diff --git a/_servicedata b/_servicedata
index 0c0efce..650d9f2 100644
--- a/_servicedata
+++ b/_servicedata
@@ -1,4 +1,4 @@
https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git
- 02c69863c885db963f8c0121b533f2816ef5be3b
\ No newline at end of file
+ 9ed4d42c51aca99d70adc6738d7ea55c5e897835
\ No newline at end of file
diff --git a/aliases.list b/aliases.list
index d879d78..8a7f72a 100644
--- a/aliases.list
+++ b/aliases.list
@@ -1793,6 +1793,7 @@ io_ti: usb:v1608p030Ad*dc*dsc*dp*ic*isc*ip*in*
io_ti: usb:v1608p030Bd*dc*dsc*dp*ic*isc*ip*in*
io_ti: usb:v1608p030Cd*dc*dsc*dp*ic*isc*ip*in*
io_ti: usb:v1608p030Ed*dc*dsc*dp*ic*isc*ip*in*
+io_ti: usb:v1608p1A01d*dc*dsc*dp*ic*isc*ip*in*
ipu3_imgu: pci:v00008086d00001919sv*sd*bc*sc*i*
isci: pci:v00008086d00001D60sv*sd*bc*sc*i*
isci: pci:v00008086d00001D61sv*sd*bc*sc*i*
diff --git a/brcm-symlink-fixes.diff b/brcm-symlink-fixes.diff
new file mode 100644
index 0000000..d9921de
--- /dev/null
+++ b/brcm-symlink-fixes.diff
@@ -0,0 +1,19 @@
+diff --git a/WHENCE b/WHENCE
+index 8ac14500e4ea..90742a7eb1d2 100644
+--- a/WHENCE
++++ b/WHENCE
+@@ -2964,10 +2964,10 @@ Link: brcm/brcmfmac4356-sdio.firefly,firefly-rk3399.txt -> brcmfmac4356-sdio.AP6
+ Link: brcm/brcmfmac4356-sdio.khadas,vim2.txt -> brcmfmac4356-sdio.AP6356S.txt
+ Link: brcm/brcmfmac4356-sdio.vamrs,rock960.txt -> brcmfmac4356-sdio.AP6356S.txt
+ File: brcm/brcmfmac43455-sdio.AW-CM256SM.txt
+-Link: brcm/brcmfmac43455-sdio.AW-CM256SM.txt -> brcmfmac43455-sdio.beagle,am5729-beagleboneai.txt
+-Link: brcm/brcmfmac43455-sdio.AW-CM256SM.txt -> brcmfmac43455-sdio.pine64,pinebook-pro.txt
+-Link: brcm/brcmfmac43455-sdio.AW-CM256SM.txt -> brcmfmac43455-sdio.pine64,pinephone-pro.txt
+-Link: brcm/brcmfmac43455-sdio.AW-CM256SM.txt -> brcmfmac43455-sdio.pine64,quartz64-b.txt
++Link: brcm/brcmfmac43455-sdio.beagle,am5729-beagleboneai.txt -> brcmfmac43455-sdio.AW-CM256SM.txt
++Link: brcm/brcmfmac43455-sdio.pine64,pinebook-pro.txt -> brcmfmac43455-sdio.AW-CM256SM.txt
++Link: brcm/brcmfmac43455-sdio.pine64,pinephone-pro.txt -> brcmfmac43455-sdio.AW-CM256SM.txt
++Link: brcm/brcmfmac43455-sdio.pine64,quartz64-b.txt -> brcmfmac43455-sdio.AW-CM256SM.txt
+
+ Licence: GPLv2. See GPL-2 for details.
+
diff --git a/kernel-firmware-20220607.tar.xz b/kernel-firmware-20220607.tar.xz
deleted file mode 100644
index 0996d56..0000000
--- a/kernel-firmware-20220607.tar.xz
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:4ac37fcac4b8923be984a903031a012df5fa286dbb8e64a01874de981b83ac28
-size 243126532
diff --git a/kernel-firmware-20220622.tar.xz b/kernel-firmware-20220622.tar.xz
new file mode 100644
index 0000000..d7b5451
--- /dev/null
+++ b/kernel-firmware-20220622.tar.xz
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:821ecdc0f685822634c0010e1211527be5cbbcb3d4a3e8644ced558392444179
+size 244437108
diff --git a/kernel-firmware.changes b/kernel-firmware.changes
index f2b267e..94c3bd7 100644
--- a/kernel-firmware.changes
+++ b/kernel-firmware.changes
@@ -1,3 +1,27 @@
+-------------------------------------------------------------------
+Mon Jul 04 07:42:16 UTC 2022 - tiwai@suse.com
+
+- Update to version 20220622 (git commit 9ed4d42c51ac):
+ * amdgpu: update Yellow Carp VCN firmware
+ * linux-firmware: update firmware for MT7921 WiFi device
+ * linux-firmware: update firmware for mediatek bluetooth chip (MT7921)
+ * qed: update 8.59.1.0 firmware
+ * Link some devices that ship with the AW-CM256SM
+ * Add initial AzureWave AW-CM256SM NVRAM file
+ * Remove the Pine64 Quartz copy of the RPi NVRAM
+ * qca: Update firmware files for BT chip WCN6750.
+ * QCA: Update Bluetooth WCN685x 2.1 firmware to 2.1.0-00409
+ * WHENCE: add symlinks for StarFive based boards
+ * linux-firmware: wilc1000: update WILC1000 firmware to v15.6
+ * brcm: Add NVRAM file 43455 based Wifi/BT module as used on the Quartz64 Model B from Pine64. This file is based on the existing "brcm/brcmfmac43455-sdio.raspberrypi,4-model-b.txt" NVRAM file.
+ * iwlwifi: add new FWs from core70-87 release
+ * iwlwifi: update 9000-family firmwares to core70-87
+- Temporary fix for incorrect symlinks for brcm in WHENCE:
+ brcm-symlink-fixes.diff
+- Minor updates of scripts, sorting alphabetically and add version
+ to Provides/Obsoletes
+- Update alias
+
-------------------------------------------------------------------
Wed Jun 08 08:06:57 UTC 2022 - tiwai@suse.com
diff --git a/kernel-firmware.spec b/kernel-firmware.spec
index 938a8c2..1a8b350 100644
--- a/kernel-firmware.spec
+++ b/kernel-firmware.spec
@@ -23,10 +23,10 @@
%endif
%define __ksyms_path ^%{_firmwaredir}
-%define version_unconverted 20220607
+%define version_unconverted 20220622
Name: kernel-firmware
-Version: 20220607
+Version: 20220622
Release: 0
Summary: Linux kernel firmware files
License: GPL-2.0-only AND SUSE-Firmware AND GPL-2.0-or-later AND MIT
@@ -61,38 +61,39 @@ Source1013: update-aliases.py
Source1014: README.build
# temporary fix
Patch1: wfx-WHENCE-fix.diff
+Patch2: brcm-symlink-fixes.diff
BuildRequires: fdupes
BuildRequires: suse-module-tools
Requires(post): /usr/bin/mkdir /usr/bin/touch
Requires(postun):/usr/bin/mkdir /usr/bin/touch
BuildArch: noarch
-Provides: ath3k-firmware
-Obsoletes: ath3k-firmware
+Provides: ath3k-firmware = %{version}
+Obsoletes: ath3k-firmware < %{version}
Provides: bcm43xx-firmware:/lib/firmware/brcm/brcmfmac43430-sdio.bin
-Provides: cxgb3-firmware
-Obsoletes: cxgb3-firmware
-Provides: iwl1000-ucode
-Obsoletes: iwl1000-ucode
-Provides: iwl3945-ucode
-Obsoletes: iwl3945-ucode
-Provides: iwl4965-ucode
-Obsoletes: iwl4965-ucode
-Provides: iwl5000-ucode
-Obsoletes: iwl5000-ucode
-Provides: iwl5150-ucode
-Obsoletes: iwl5150-ucode
-Provides: iwl100-ucode
-Obsoletes: iwl100-ucode
-Provides: iwl6000-ucode
-Obsoletes: iwl6000-ucode
-Provides: iwl6050-ucode
-Obsoletes: iwl6050-ucode
-Provides: iwl6000g2-ucode
-Obsoletes: iwl6000g2-ucode
-Provides: ralink-firmware
-Obsoletes: ralink-firmware
-Provides: qlogic-firmware
-Obsoletes: qlogic-firmware
+Provides: cxgb3-firmware = %{version}
+Obsoletes: cxgb3-firmware < %{version}
+Provides: iwl1000-ucode = %{version}
+Obsoletes: iwl1000-ucode < %{version}
+Provides: iwl3945-ucode = %{version}
+Obsoletes: iwl3945-ucode < %{version}
+Provides: iwl4965-ucode = %{version}
+Obsoletes: iwl4965-ucode < %{version}
+Provides: iwl5000-ucode = %{version}
+Obsoletes: iwl5000-ucode < %{version}
+Provides: iwl5150-ucode = %{version}
+Obsoletes: iwl5150-ucode < %{version}
+Provides: iwl100-ucode = %{version}
+Obsoletes: iwl100-ucode < %{version}
+Provides: iwl6000-ucode = %{version}
+Obsoletes: iwl6000-ucode < %{version}
+Provides: iwl6050-ucode = %{version}
+Obsoletes: iwl6050-ucode < %{version}
+Provides: iwl6000g2-ucode = %{version}
+Obsoletes: iwl6000g2-ucode < %{version}
+Provides: ralink-firmware = %{version}
+Obsoletes: ralink-firmware < %{version}
+Provides: qlogic-firmware = %{version}
+Obsoletes: qlogic-firmware < %{version}
Provides: compat-wireless-firmware = 4.4
Obsoletes: compat-wireless-firmware < 4.4
%if 0%{?suse_version} >= 1550
@@ -495,6 +496,55 @@ Supplements: modalias(pci:v00001002d000098E4sv*sd*bc*sc*i*)
This package contains compressed kernel firmware files for
AMDGPU graphics driver.
+%package ath10k
+Summary: Kernel firmware files for Atheros QCA988x WiFi drivers
+Group: System/Kernel
+Requires(post): /usr/bin/mkdir /usr/bin/touch
+Requires(postun):/usr/bin/mkdir /usr/bin/touch
+Requires(post): dracut >= 049
+Conflicts: kernel < 5.3
+%if 0%{?suse_version} >= 1550
+# make sure we have post-usrmerge filesystem package on TW
+Conflicts: filesystem < 84
+%endif
+Supplements: modalias(of:N*T*Cqcom,ipq4019-wifi)
+Supplements: modalias(of:N*T*Cqcom,ipq4019-wifiC*)
+Supplements: modalias(pci:v00000777d000011ACsv*sd*bc*sc*i*)
+Supplements: modalias(pci:v0000168Cd0000003Csv*sd*bc*sc*i*)
+Supplements: modalias(pci:v0000168Cd0000003Esv*sd*bc*sc*i*)
+Supplements: modalias(pci:v0000168Cd00000040sv*sd*bc*sc*i*)
+Supplements: modalias(pci:v0000168Cd00000041sv*sd*bc*sc*i*)
+Supplements: modalias(pci:v0000168Cd00000042sv*sd*bc*sc*i*)
+Supplements: modalias(pci:v0000168Cd00000046sv*sd*bc*sc*i*)
+Supplements: modalias(pci:v0000168Cd00000050sv*sd*bc*sc*i*)
+Supplements: modalias(pci:v0000168Cd00000056sv*sd*bc*sc*i*)
+Supplements: modalias(sdio:c*v0271d050A*)
+Supplements: modalias(sdio:c*v0271d0701*)
+Supplements: modalias(usb:v13B1p0042d*dc*dsc*dp*ic*isc*ip*in*)
+
+%description ath10k
+This package contains compressed kernel firmware files for
+Atheros QCA988x WiFi drivers.
+
+%package ath11k
+Summary: Kernel firmware files for Atheros Qualcomm WiFi drivers
+Group: System/Kernel
+Requires(post): /usr/bin/mkdir /usr/bin/touch
+Requires(postun):/usr/bin/mkdir /usr/bin/touch
+Requires(post): dracut >= 049
+Conflicts: kernel < 5.3
+%if 0%{?suse_version} >= 1550
+# make sure we have post-usrmerge filesystem package on TW
+Conflicts: filesystem < 84
+%endif
+Supplements: modalias(pci:v000017CBd00001101sv*sd*bc*sc*i*)
+Supplements: modalias(pci:v000017CBd00001103sv*sd*bc*sc*i*)
+Supplements: modalias(pci:v000017CBd00001104sv*sd*bc*sc*i*)
+
+%description ath11k
+This package contains compressed kernel firmware files for
+Atheros Qualcomm WiFi drivers.
+
%package atheros
Summary: Kernel firmware files for Atheros wireless drivers
Group: System/Kernel
@@ -506,8 +556,8 @@ Conflicts: kernel < 5.3
# make sure we have post-usrmerge filesystem package on TW
Conflicts: filesystem < 84
%endif
-Provides: ath3k-firmware
-Obsoletes: ath3k-firmware
+Provides: ath3k-firmware = %{version}
+Obsoletes: ath3k-firmware < %{version}
Supplements: modalias(ar9170usb)
Supplements: modalias(arusb_lnx)
Supplements: modalias(pci:v000017CBd00001201sv*sd*bc*sc*i*)
@@ -700,55 +750,6 @@ Supplements: modalias(usb:vCACEp0300d*dc*dsc*dp*ic*isc*ip*in*)
This package contains compressed kernel firmware files for
Atheros wireless drivers.
-%package ath10k
-Summary: Kernel firmware files for Atheros QCA988x WiFi drivers
-Group: System/Kernel
-Requires(post): /usr/bin/mkdir /usr/bin/touch
-Requires(postun):/usr/bin/mkdir /usr/bin/touch
-Requires(post): dracut >= 049
-Conflicts: kernel < 5.3
-%if 0%{?suse_version} >= 1550
-# make sure we have post-usrmerge filesystem package on TW
-Conflicts: filesystem < 84
-%endif
-Supplements: modalias(of:N*T*Cqcom,ipq4019-wifi)
-Supplements: modalias(of:N*T*Cqcom,ipq4019-wifiC*)
-Supplements: modalias(pci:v00000777d000011ACsv*sd*bc*sc*i*)
-Supplements: modalias(pci:v0000168Cd0000003Csv*sd*bc*sc*i*)
-Supplements: modalias(pci:v0000168Cd0000003Esv*sd*bc*sc*i*)
-Supplements: modalias(pci:v0000168Cd00000040sv*sd*bc*sc*i*)
-Supplements: modalias(pci:v0000168Cd00000041sv*sd*bc*sc*i*)
-Supplements: modalias(pci:v0000168Cd00000042sv*sd*bc*sc*i*)
-Supplements: modalias(pci:v0000168Cd00000046sv*sd*bc*sc*i*)
-Supplements: modalias(pci:v0000168Cd00000050sv*sd*bc*sc*i*)
-Supplements: modalias(pci:v0000168Cd00000056sv*sd*bc*sc*i*)
-Supplements: modalias(sdio:c*v0271d050A*)
-Supplements: modalias(sdio:c*v0271d0701*)
-Supplements: modalias(usb:v13B1p0042d*dc*dsc*dp*ic*isc*ip*in*)
-
-%description ath10k
-This package contains compressed kernel firmware files for
-Atheros QCA988x WiFi drivers.
-
-%package ath11k
-Summary: Kernel firmware files for Atheros Qualcomm WiFi drivers
-Group: System/Kernel
-Requires(post): /usr/bin/mkdir /usr/bin/touch
-Requires(postun):/usr/bin/mkdir /usr/bin/touch
-Requires(post): dracut >= 049
-Conflicts: kernel < 5.3
-%if 0%{?suse_version} >= 1550
-# make sure we have post-usrmerge filesystem package on TW
-Conflicts: filesystem < 84
-%endif
-Supplements: modalias(pci:v000017CBd00001101sv*sd*bc*sc*i*)
-Supplements: modalias(pci:v000017CBd00001103sv*sd*bc*sc*i*)
-Supplements: modalias(pci:v000017CBd00001104sv*sd*bc*sc*i*)
-
-%description ath11k
-This package contains compressed kernel firmware files for
-Atheros Qualcomm WiFi drivers.
-
%package bluetooth
Summary: Kernel firmware files for various Bluetooth drivers
Group: System/Kernel
@@ -937,8 +938,8 @@ Conflicts: kernel < 5.3
# make sure we have post-usrmerge filesystem package on TW
Conflicts: filesystem < 84
%endif
-Provides: cxgb3-firmware
-Obsoletes: cxgb3-firmware
+Provides: cxgb3-firmware = %{version}
+Obsoletes: cxgb3-firmware < %{version}
Supplements: modalias(pci:v00001425d00000020sv*sd*bc*sc*i*)
Supplements: modalias(pci:v00001425d00000021sv*sd*bc*sc*i*)
Supplements: modalias(pci:v00001425d00000022sv*sd*bc*sc*i*)
@@ -1760,24 +1761,24 @@ Conflicts: kernel < 5.3
# make sure we have post-usrmerge filesystem package on TW
Conflicts: filesystem < 84
%endif
-Provides: iwl1000-ucode
-Obsoletes: iwl1000-ucode
-Provides: iwl3945-ucode
-Obsoletes: iwl3945-ucode
-Provides: iwl4965-ucode
-Obsoletes: iwl4965-ucode
-Provides: iwl5000-ucode
-Obsoletes: iwl5000-ucode
-Provides: iwl5150-ucode
-Obsoletes: iwl5150-ucode
-Provides: iwl100-ucode
-Obsoletes: iwl100-ucode
-Provides: iwl6000-ucode
-Obsoletes: iwl6000-ucode
-Provides: iwl6050-ucode
-Obsoletes: iwl6050-ucode
-Provides: iwl6000g2-ucode
-Obsoletes: iwl6000g2-ucode
+Provides: iwl1000-ucode = %{version}
+Obsoletes: iwl1000-ucode < %{version}
+Provides: iwl3945-ucode = %{version}
+Obsoletes: iwl3945-ucode < %{version}
+Provides: iwl4965-ucode = %{version}
+Obsoletes: iwl4965-ucode < %{version}
+Provides: iwl5000-ucode = %{version}
+Obsoletes: iwl5000-ucode < %{version}
+Provides: iwl5150-ucode = %{version}
+Obsoletes: iwl5150-ucode < %{version}
+Provides: iwl100-ucode = %{version}
+Obsoletes: iwl100-ucode < %{version}
+Provides: iwl6000-ucode = %{version}
+Obsoletes: iwl6000-ucode < %{version}
+Provides: iwl6050-ucode = %{version}
+Obsoletes: iwl6050-ucode < %{version}
+Provides: iwl6000g2-ucode = %{version}
+Obsoletes: iwl6000g2-ucode < %{version}
Supplements: modalias(iwl4965)
Supplements: modalias(pci:v00008086d00000082sv*sd00001301bc*sc*i*)
Supplements: modalias(pci:v00008086d00000082sv*sd00001304bc*sc*i*)
@@ -2954,8 +2955,8 @@ Conflicts: kernel < 5.3
# make sure we have post-usrmerge filesystem package on TW
Conflicts: filesystem < 84
%endif
-Provides: ralink-firmware
-Obsoletes: ralink-firmware
+Provides: ralink-firmware = %{version}
+Obsoletes: ralink-firmware < %{version}
Supplements: modalias(of:N*T*Cmediatek,mt7622-bluetooth)
Supplements: modalias(of:N*T*Cmediatek,mt7622-bluetoothC*)
Supplements: modalias(of:N*T*Cmediatek,mt7663u-bluetooth)
@@ -4138,8 +4139,8 @@ Conflicts: kernel < 5.3
# make sure we have post-usrmerge filesystem package on TW
Conflicts: filesystem < 84
%endif
-Provides: qlogic-firmware
-Obsoletes: qlogic-firmware
+Provides: qlogic-firmware = %{version}
+Obsoletes: qlogic-firmware < %{version}
Supplements: modalias(fs-ipathfs)
Supplements: modalias(pci:v00001077d00001016sv*sd*bc*sc*i*)
Supplements: modalias(pci:v00001077d00001020sv*sd*bc*sc*i*)
@@ -5940,6 +5941,7 @@ Supplements: modalias(usb:v1608p030Bd*dc*dsc*dp*ic*isc*ip*in*)
Supplements: modalias(usb:v1608p030Cd*dc*dsc*dp*ic*isc*ip*in*)
Supplements: modalias(usb:v1608p030Ed*dc*dsc*dp*ic*isc*ip*in*)
Supplements: modalias(usb:v1608p1403d*dc*dsc*dp*ic*isc*ip*in*)
+Supplements: modalias(usb:v1608p1A01d*dc*dsc*dp*ic*isc*ip*in*)
Supplements: modalias(usb:v1645p8093d*dc*dsc*dp*ic*isc*ip*in*)
Supplements: modalias(usb:v1A61p3410d*dc*dsc*dp*ic*isc*ip*in*)
Supplements: modalias(usb:v1A61p3420d*dc*dsc*dp*ic*isc*ip*in*)
@@ -6206,6 +6208,7 @@ various USB WiFi / Ethernet drivers.
%prep
%setup -q
%patch1 -p1
+%patch2 -p1
# additional firmwares
cat %{SOURCE1} >> WHENCE
cp %{SOURCE2} %{SOURCE8} %{SOURCE9} %{SOURCE10} .
@@ -6261,15 +6264,6 @@ sh %{_sourcedir}/list-license.sh < %{_sourcedir}/licenses.list
%posttrans amdgpu
%{?regenerate_initrd_posttrans}
-%post atheros
-%{?regenerate_initrd_post}
-
-%postun atheros
-%{?regenerate_initrd_post}
-
-%posttrans atheros
-%{?regenerate_initrd_posttrans}
-
%post ath10k
%{?regenerate_initrd_post}
@@ -6288,6 +6282,15 @@ sh %{_sourcedir}/list-license.sh < %{_sourcedir}/licenses.list
%posttrans ath11k
%{?regenerate_initrd_posttrans}
+%post atheros
+%{?regenerate_initrd_post}
+
+%postun atheros
+%{?regenerate_initrd_post}
+
+%posttrans atheros
+%{?regenerate_initrd_posttrans}
+
%post bluetooth
%{?regenerate_initrd_post}
@@ -6561,12 +6564,12 @@ sh %{_sourcedir}/list-license.sh < %{_sourcedir}/licenses.list
%files -f files-amdgpu amdgpu
-%files -f files-atheros atheros
-
%files -f files-ath10k ath10k
%files -f files-ath11k ath11k
+%files -f files-atheros atheros
+
%files -f files-bluetooth bluetooth
%files -f files-bnx2 bnx2
diff --git a/kernel-firmware.spec.in b/kernel-firmware.spec.in
index 74c2e32..671ea02 100644
--- a/kernel-firmware.spec.in
+++ b/kernel-firmware.spec.in
@@ -61,6 +61,7 @@ Source1013: update-aliases.py
Source1014: README.build
# temporary fix
Patch1: wfx-WHENCE-fix.diff
+Patch2: brcm-symlink-fixes.diff
BuildRequires: fdupes
BuildRequires: suse-module-tools
Requires(post): /usr/bin/mkdir /usr/bin/touch
@@ -121,6 +122,7 @@ all files that have been provided by kernel-firmware package.
%prep
%setup -q
%patch1 -p1
+%patch2 -p1
# additional firmwares
cat %{SOURCE1} >> WHENCE
cp %{SOURCE2} %{SOURCE8} %{SOURCE9} %{SOURCE10} .
diff --git a/makespec.sh b/makespec.sh
index 4724637..bdd4c6d 100644
--- a/makespec.sh
+++ b/makespec.sh
@@ -3,9 +3,10 @@
# makespec.sh VERSION < kernel-firmware.spec.in > kernel-firmware.spec
#
+export LANG=C
version="$1"
-topics=$(awk '{print $1}' topicdefs)
+topics=$(awk '{print $1}' topicdefs | sort)
define_subpackage () {
local topic="$1"
diff --git a/topicprovs b/topicprovs
index b65d934..8c11eb5 100644
--- a/topicprovs
+++ b/topicprovs
@@ -1,27 +1,27 @@
-atheros: Provides: ath3k-firmware
-atheros: Obsoletes: ath3k-firmware
+atheros: Provides: ath3k-firmware = %{version}
+atheros: Obsoletes: ath3k-firmware < %{version}
brcm: Provides: bcm43xx-firmware:/lib/firmware/brcm/brcmfmac43430-sdio.bin
-chelsio: Provides: cxgb3-firmware
-chelsio: Obsoletes: cxgb3-firmware
-iwlwifi: Provides: iwl1000-ucode
-iwlwifi: Obsoletes: iwl1000-ucode
-iwlwifi: Provides: iwl3945-ucode
-iwlwifi: Obsoletes: iwl3945-ucode
-iwlwifi: Provides: iwl4965-ucode
-iwlwifi: Obsoletes: iwl4965-ucode
-iwlwifi: Provides: iwl5000-ucode
-iwlwifi: Obsoletes: iwl5000-ucode
-iwlwifi: Provides: iwl5150-ucode
-iwlwifi: Obsoletes: iwl5150-ucode
-iwlwifi: Provides: iwl100-ucode
-iwlwifi: Obsoletes: iwl100-ucode
-iwlwifi: Provides: iwl6000-ucode
-iwlwifi: Obsoletes: iwl6000-ucode
-iwlwifi: Provides: iwl6050-ucode
-iwlwifi: Obsoletes: iwl6050-ucode
-iwlwifi: Provides: iwl6000g2-ucode
-iwlwifi: Obsoletes: iwl6000g2-ucode
-mediatek: Provides: ralink-firmware
-mediatek: Obsoletes: ralink-firmware
-qlogic: Provides: qlogic-firmware
-qlogic: Obsoletes: qlogic-firmware
+chelsio: Provides: cxgb3-firmware = %{version}
+chelsio: Obsoletes: cxgb3-firmware < %{version}
+iwlwifi: Provides: iwl1000-ucode = %{version}
+iwlwifi: Obsoletes: iwl1000-ucode < %{version}
+iwlwifi: Provides: iwl3945-ucode = %{version}
+iwlwifi: Obsoletes: iwl3945-ucode < %{version}
+iwlwifi: Provides: iwl4965-ucode = %{version}
+iwlwifi: Obsoletes: iwl4965-ucode < %{version}
+iwlwifi: Provides: iwl5000-ucode = %{version}
+iwlwifi: Obsoletes: iwl5000-ucode < %{version}
+iwlwifi: Provides: iwl5150-ucode = %{version}
+iwlwifi: Obsoletes: iwl5150-ucode < %{version}
+iwlwifi: Provides: iwl100-ucode = %{version}
+iwlwifi: Obsoletes: iwl100-ucode < %{version}
+iwlwifi: Provides: iwl6000-ucode = %{version}
+iwlwifi: Obsoletes: iwl6000-ucode < %{version}
+iwlwifi: Provides: iwl6050-ucode = %{version}
+iwlwifi: Obsoletes: iwl6050-ucode < %{version}
+iwlwifi: Provides: iwl6000g2-ucode = %{version}
+iwlwifi: Obsoletes: iwl6000g2-ucode < %{version}
+mediatek: Provides: ralink-firmware = %{version}
+mediatek: Obsoletes: ralink-firmware < %{version}
+qlogic: Provides: qlogic-firmware = %{version}
+qlogic: Obsoletes: qlogic-firmware < %{version}