Ana Guerrero 2023-08-31 11:42:35 +00:00 committed by Git OBS Bridge
commit 5111cdd3dd
14 changed files with 157 additions and 95 deletions

1
.gitattributes vendored
View File

@ -26,4 +26,3 @@ ast_dp501_fw.bin filter=lfs diff=lfs merge=lfs -text
ql2600_fw.bin filter=lfs diff=lfs merge=lfs -text
ql2700_fw.bin filter=lfs diff=lfs merge=lfs -text
ql8300_fw.bin filter=lfs diff=lfs merge=lfs -text
rtw8822c_fw.bin filter=lfs diff=lfs merge=lfs -text

View File

@ -1,3 +1,3 @@
<multibuild>
<package>compressed</package>
<package>uncompressed</package>
</multibuild>

View File

@ -1,4 +1,4 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git</param>
<param name="changesrevision">0e048b061bde79ad735c7b7b5161ee1bd3400150</param></service></servicedata>
<param name="changesrevision">49f9e3479fb564ab96ebbfef327743b0ec2a7620</param></service></servicedata>

View File

@ -2899,6 +2899,14 @@ msm: of:N*T*Cqcom,sm6115-dpu
msm: of:N*T*Cqcom,sm6115-dpuC*
msm: of:N*T*Cqcom,sm6115-mdss
msm: of:N*T*Cqcom,sm6115-mdssC*
msm: of:N*T*Cqcom,sm6350-dpu
msm: of:N*T*Cqcom,sm6350-dpuC*
msm: of:N*T*Cqcom,sm6350-mdss
msm: of:N*T*Cqcom,sm6350-mdssC*
msm: of:N*T*Cqcom,sm6375-dpu
msm: of:N*T*Cqcom,sm6375-dpuC*
msm: of:N*T*Cqcom,sm6375-mdss
msm: of:N*T*Cqcom,sm6375-mdssC*
msm: of:N*T*Cqcom,sm8150-dpu
msm: of:N*T*Cqcom,sm8150-dpuC*
msm: of:N*T*Cqcom,sm8150-mdss

30
amd-ucode-rawfile.patch Normal file
View File

@ -0,0 +1,30 @@
diff --git a/WHENCE b/WHENCE
index 390a5689408e..852e88f55341 100644
--- a/WHENCE
+++ b/WHENCE
@@ -3912,20 +3912,15 @@ License: Redistributable. See LICENSE.amd-sev for details
Driver: microcode_amd - AMD CPU Microcode Update Driver for Linux
-File: amd-ucode/microcode_amd.bin
-Raw: amd-ucode/microcode_amd.bin
+RawFile: amd-ucode/microcode_amd.bin
Version: 2013-07-10
-File: amd-ucode/microcode_amd_fam15h.bin
-Raw: amd-ucode/microcode_amd_fam15h.bin
+RawFile: amd-ucode/microcode_amd_fam15h.bin
Version: 2018-05-24
-File: amd-ucode/microcode_amd_fam16h.bin
-Raw: amd-ucode/microcode_amd_fam16h.bin
+RawFile: amd-ucode/microcode_amd_fam16h.bin
Version: 2014-10-28
-File: amd-ucode/microcode_amd_fam17h.bin
-Raw: amd-ucode/microcode_amd_fam17h.bin
+RawFile: amd-ucode/microcode_amd_fam17h.bin
Version: 2023-07-19
-File: amd-ucode/microcode_amd_fam19h.bin
-Raw: amd-ucode/microcode_amd_fam19h.bin
+RawFile: amd-ucode/microcode_amd_fam19h.bin
Version: 2023-08-08
File: amd-ucode/README

View File

@ -0,0 +1,14 @@
diff --git a/copy-firmware.sh b/copy-firmware.sh
index 1ae1e37c37e5..68fbf83ea650 100755
--- a/copy-firmware.sh
+++ b/copy-firmware.sh
@@ -66,6 +66,9 @@ done
# 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
+ case "$f" in
+ */README) continue;;
+ esac
test -f "$f" || continue
install -d "$destdir/$(dirname "$f")"
$verbose "copying/compressing file $f$compext"

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:237963594916768cb988d95eb07498db71bdee438f0ffaf70324b35d4ce5053c
size 288057376

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:39956b7c9b6316211f68d70e45933ef26cea132f7f3214f4636abda1425565d9
size 288932500

View File

@ -1,3 +1,37 @@
-------------------------------------------------------------------
Tue Aug 29 15:09:31 UTC 2023 - tiwai@suse.com
- Update to version 20230829 (git commit 49f9e3479fb5):
* i915: Update MTL DMC to v2.16
* copy-firmware: Introduce 'RawFile' keyword
* copy-firmware: Support additional compressor options
* linux-firmware: Update firmware file for Intel Bluetooth AX203
* linux-firmware: Update firmware file for Intel Bluetooth AX203
* linux-firmware: Update firmware file for Intel Bluetooth AX211
* linux-firmware: Update firmware file for Intel Bluetooth AX211
* linux-firmware: Update firmware file for Intel Bluetooth AX210
* linux-firmware: Update firmware file for Intel Bluetooth AX200
* linux-firmware: Update firmware file for Intel Bluetooth AX201
* linux-firmware: update firmware for qat_4xxx devices
* linux-firmware: Update AMD SEV firmware
* amdgpu: update DMCUB to 0.0.181.0 for various AMDGPU ASICs
* rtw89: 8852b: update fw to v0.29.29.3
* rtw89: 8851b: update fw to v0.29.41.2
* i915: add GSC 102.0.0.1655 for MTL
* amdgpu: DMCUB updates for various AMDGPU asics
- Switch to the compressed / split installation as default, make
uncompressed / raw package as a multibuild flavor, instead
as a preliminary work for dropping the big kernel-firmware
(bsc#1214789)
- Use the standard copy-file.sh for split package installation, too
Another scirpt, make-files.sh, is provided for generating file lists
- Ignore README in copy-file.sh:
copy-file-ignore-README.patch
- Workaround for installing raw files for ucode-amd:
amd-ucode-rawfile.patch
- Drop the obsolsted revert of rtw8822c_fw.bin
- Update aliases from 6.5
-------------------------------------------------------------------
Fri Aug 18 14:04:53 UTC 2023 - tiwai@suse.com

View File

@ -21,21 +21,17 @@
%define _firmwaredir /lib/firmware
%endif
%define __ksyms_path ^%{_firmwaredir}
%define version_unconverted 20230814
%define version_unconverted 20230829
# Force bzip2 instead of lzma compression (bsc#1176981)
%define _binary_payload w9.bzdio
Name: kernel-firmware
Version: 20230814
Version: 20230829
Release: 0
Summary: Linux kernel firmware files
License: GPL-2.0-only AND SUSE-Firmware AND GPL-2.0-or-later AND MIT
Group: System/Kernel
URL: https://git.kernel.org/cgit/linux/kernel/git/firmware/linux-firmware.git/
# Created with umask 022; cd /_tmp
# After git clone https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git
# cd linux-firmware
# git archive --format=tar --prefix=kernel-firmware-$version/ -v master ./ | xz -9 -M 4G --check=crc32 -T 4 > /tmp/kernel-firmware-$version.tar.xz
#
# Created via OSC service
Source0: kernel-firmware-%{version}.tar.xz
Source1: extrawhence
Source2: ast_dp501_fw.bin
@ -43,10 +39,8 @@ Source8: ql2600_fw.bin
Source9: ql2700_fw.bin
Source10: ql8300_fw.bin
Source99: kernel-firmware-rpmlintrc
# temporary revert (bsc#1202152): taken from upstream commit 06acb465d80b
Source100: rtw8822c_fw.bin
# install / build infrastructure
Source1001: install-split.sh
Source1001: make-files.sh
Source1002: list-license.sh
Source1003: get_supplements.sh
Source1004: topics.list
@ -63,6 +57,9 @@ Source1014: README.build
# workarounds
Source1100: qcom-post
Source1101: uncompressed-post
# workarounds
Patch1: copy-file-ignore-README.patch
Patch2: amd-ucode-rawfile.patch
BuildRequires: fdupes
BuildRequires: suse-module-tools
Requires(post): %{_bindir}/mkdir
@ -4162,8 +4159,16 @@ Supplements: modalias(of:N*T*Cqcom,sm6350-adsp-pas)
Supplements: modalias(of:N*T*Cqcom,sm6350-adsp-pasC*)
Supplements: modalias(of:N*T*Cqcom,sm6350-cdsp-pas)
Supplements: modalias(of:N*T*Cqcom,sm6350-cdsp-pasC*)
Supplements: modalias(of:N*T*Cqcom,sm6350-dpu)
Supplements: modalias(of:N*T*Cqcom,sm6350-dpuC*)
Supplements: modalias(of:N*T*Cqcom,sm6350-mdss)
Supplements: modalias(of:N*T*Cqcom,sm6350-mdssC*)
Supplements: modalias(of:N*T*Cqcom,sm6350-mpss-pas)
Supplements: modalias(of:N*T*Cqcom,sm6350-mpss-pasC*)
Supplements: modalias(of:N*T*Cqcom,sm6375-dpu)
Supplements: modalias(of:N*T*Cqcom,sm6375-dpuC*)
Supplements: modalias(of:N*T*Cqcom,sm6375-mdss)
Supplements: modalias(of:N*T*Cqcom,sm6375-mdssC*)
Supplements: modalias(of:N*T*Cqcom,sm8150-adsp-pas)
Supplements: modalias(of:N*T*Cqcom,sm8150-adsp-pasC*)
Supplements: modalias(of:N*T*Cqcom,sm8150-cdsp-pas)
@ -6383,26 +6388,27 @@ various USB WiFi / Ethernet drivers.
%prep
%setup -q -n kernel-firmware-%{version}
%patch1 -p1
%patch2 -p1
# additional firmwares
cat %{SOURCE1} >> WHENCE
cp %{SOURCE2} %{SOURCE8} %{SOURCE9} %{SOURCE10} .
# temporary revert (bsc#1202152)
install -c -m 0644 %{SOURCE100} rtw88/rtw8822c_fw.bin
%build
# nothing to do
%install
mkdir -p %{buildroot}%{_firmwaredir}
%if "%{flavor}" != "compressed"
%if "%{flavor}" == "uncompressed"
sh ./copy-firmware.sh %{buildroot}%{_firmwaredir}
%else
sh %{_sourcedir}/install-split.sh -v %{_sourcedir}/topics.list %{buildroot} %{_firmwaredir} < WHENCE
sh ./copy-firmware.sh -v --xz %{buildroot}%{_firmwaredir}
sh %{_sourcedir}/make-files.sh -v %{_sourcedir}/topics.list %{buildroot} %{_firmwaredir} < WHENCE
sh %{_sourcedir}/list-license.sh < %{_sourcedir}/licenses.list
%endif
%fdupes -s %{buildroot}
%if "%{flavor}" != "compressed"
%if "%{flavor}" == "uncompressed"
%pre
# ugly workaround for changing qcom/LENOVO/21BX to a symlink (bsc#1204103)
if [ ! -L %{_firmwaredir}/qcom/LENOVO/21BX ]; then
@ -6430,15 +6436,6 @@ if [ -L %{_firmwaredir}/qcom/LENOVO/21BX.xxxnew ]; then
mv %{_firmwaredir}/qcom/LENOVO/21BX.xxxnew %{_firmwaredir}/qcom/LENOVO/21BX
fi
%{?regenerate_initrd_posttrans}
%post -n ucode-amd
%{?regenerate_initrd_post}
%postun -n ucode-amd
%{?regenerate_initrd_post}
%posttrans -n ucode-amd
%{?regenerate_initrd_posttrans}
%else
%post all
@ -6450,6 +6447,15 @@ fi
%posttrans all
%{?regenerate_initrd_posttrans}
%post -n ucode-amd
%{?regenerate_initrd_post}
%postun -n ucode-amd
%{?regenerate_initrd_post}
%posttrans -n ucode-amd
%{?regenerate_initrd_posttrans}
%post amdgpu
%{?regenerate_initrd_post}
@ -6758,7 +6764,7 @@ fi
%{?regenerate_initrd_posttrans}
%endif
%if "%{flavor}" != "compressed"
%if "%{flavor}" == "uncompressed"
%files
%doc WHENCE README
%license GPL-2 GPL-3 LICEN[CS]E.*
@ -6766,16 +6772,16 @@ fi
%exclude %{_firmwaredir}/amd-ucode
%exclude %{_firmwaredir}/amd-ucode/*
%else
%files all
%doc WHENCE README
%files -n ucode-amd
%doc amd-ucode/README
%license LICENSE.amd-ucode
%dir %{_firmwaredir}
%{_firmwaredir}/amd-ucode
%endif
%if "%{flavor}" == "compressed"
%files all
%doc WHENCE README
%files -f files-amdgpu amdgpu

View File

@ -31,11 +31,7 @@ Summary: Linux kernel firmware files
License: GPL-2.0-only AND SUSE-Firmware AND GPL-2.0-or-later AND MIT
Group: System/Kernel
URL: https://git.kernel.org/cgit/linux/kernel/git/firmware/linux-firmware.git/
# Created with umask 022; cd /_tmp
# After git clone https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git
# cd linux-firmware
# git archive --format=tar --prefix=kernel-firmware-$version/ -v master ./ | xz -9 -M 4G --check=crc32 -T 4 > /tmp/kernel-firmware-$version.tar.xz
#
# Created via OSC service
Source0: kernel-firmware-%{version}.tar.xz
Source1: extrawhence
Source2: ast_dp501_fw.bin
@ -43,10 +39,8 @@ Source8: ql2600_fw.bin
Source9: ql2700_fw.bin
Source10: ql8300_fw.bin
Source99: kernel-firmware-rpmlintrc
# temporary revert (bsc#1202152): taken from upstream commit 06acb465d80b
Source100: rtw8822c_fw.bin
# install / build infrastructure
Source1001: install-split.sh
Source1001: make-files.sh
Source1002: list-license.sh
Source1003: get_supplements.sh
Source1004: topics.list
@ -63,6 +57,9 @@ Source1014: README.build
# workarounds
Source1100: qcom-post
Source1101: uncompressed-post
# workarounds
Patch1: copy-file-ignore-README.patch
Patch2: amd-ucode-rawfile.patch
BuildRequires: fdupes
BuildRequires: suse-module-tools
Requires(post): %{_bindir}/mkdir
@ -125,36 +122,36 @@ all files that have been provided by kernel-firmware package.
%prep
%setup -q -n kernel-firmware-%{version}
%patch1 -p1
%patch2 -p1
# additional firmwares
cat %{SOURCE1} >> WHENCE
cp %{SOURCE2} %{SOURCE8} %{SOURCE9} %{SOURCE10} .
# temporary revert (bsc#1202152)
install -c -m 0644 %{SOURCE100} rtw88/rtw8822c_fw.bin
%build
# nothing to do
%install
mkdir -p %{buildroot}%{_firmwaredir}
%if "%{flavor}" != "compressed"
%if "%{flavor}" == "uncompressed"
sh ./copy-firmware.sh %{buildroot}%{_firmwaredir}
%else
sh %{_sourcedir}/install-split.sh -v %{_sourcedir}/topics.list %{buildroot} %{_firmwaredir} < WHENCE
sh ./copy-firmware.sh -v --xz %{buildroot}%{_firmwaredir}
sh %{_sourcedir}/make-files.sh -v %{_sourcedir}/topics.list %{buildroot} %{_firmwaredir} < WHENCE
sh %{_sourcedir}/list-license.sh < %{_sourcedir}/licenses.list
%endif
%fdupes -s %{buildroot}
%if "%{flavor}" != "compressed"
%if "%{flavor}" == "uncompressed"
@@POST@@
@@POST@@ -n ucode-amd
%else
@@POST@@ all
@@POST@@ -n ucode-amd
@@SUBPKGPOSTS@@
%endif
%if "%{flavor}" != "compressed"
%if "%{flavor}" == "uncompressed"
%files
%doc WHENCE README
%license GPL-2 GPL-3 LICEN[CS]E.*
@ -162,16 +159,15 @@ sh %{_sourcedir}/list-license.sh < %{_sourcedir}/licenses.list
%exclude %{_firmwaredir}/amd-ucode
%exclude %{_firmwaredir}/amd-ucode/*
%else
%files all
%doc WHENCE README
%files -n ucode-amd
%doc amd-ucode/README
%license LICENSE.amd-ucode
%dir %{_firmwaredir}
%{_firmwaredir}/amd-ucode
%endif
%if "%{flavor}" == "compressed"
%files all
%doc WHENCE README
@@SUBPKGFILES@@
%endif

View File

@ -1,9 +1,8 @@
#!/bin/sh
#
# Read WHENCE from stdin and install the compressed firmware files into DESTDIR.
# The file list for each topic is created as files-xxx under the current dir.
# Read WHENCE from stdin create files-xxx for each topic
#
# usage: install-split.sh [-v] topics.list DESTDIR < WHENCE
# usage: make-files.sh [-v] topics.list DESTDIR < WHENCE
#
verbose=:
@ -28,7 +27,6 @@ fi
make_dirs () {
local f="$1"
mkdir -p $(dirname "$dest/$f")
local d=$(dirname "$f")
if [ "$d" != "." ]; then
while true; do
@ -46,41 +44,20 @@ make_dirs () {
copy_link () {
local f="$1"
local lf="$2"
local src
test -f "$dest/$f$cext" && return
if [ -z "$lf" ]; then
lf=$(readlink "$f")
local src="${f%/*}"
if [ "$src" = "$f" ]; then
src="$lf"
else
src="${f%/*}"
if [ "$src" = "$f" ]; then
src="$lf"
else
src="$src/$lf"
fi
src="$src/$lf"
fi
make_dirs "$f"
if [ -d "$dest/$src" ]; then
ln -sf "$lf" "$dest/$f"
echo "\"$fwdir/$f\"" >> files-$topic
$verbose "Link: $lf -> $f (directory) for topic $topic"
else
ln -sf "$lf$cext" "$dest/$f$cext"
echo "\"$fwdir/$f$cext\"" >> files-$topic
$verbose "Link: $lf$cext -> $f$cext for topic $topic"
fi
}
copy_file () {
local f="$1"
test -f "$dest/$f$cext" && return
make_dirs "$f"
install -c -m 0644 "$f" $(dirname "$dest/$f")
test -n "$do_compress" && xz -f -C crc32 --lzma2=dict=2MiB "$dest/$f"
echo "\"$fwdir/$f$cext\"" >> files-$topic
$verbose "Copy: $f$cext for topic $topic"
}
sub="xxx"
while read l; do
test -z "$l" && continue
@ -106,18 +83,19 @@ while read l; do
fi
fi
;;
File:*)
File:*|RawFile:*)
test "$topic" = "SKIP" && continue
if [ -z "$topic" ]; then
echo "ERROR: no topic found for $l"
exit 1
fi
f=$(echo "$l" | sed -e's/^File: *//' -e's/"//g' -e's/\\//g')
if [ -L "$f" ]; then
copy_link "$f"
else
copy_file "$f"
fi
case "$f" in
*/README)
continue;;
esac
make_dirs "$f"
echo "\"$fwdir/$f$cext\"" >> files-$topic
;;
Link:*)
test "$topic" = "SKIP" && continue

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:36b483e37640359a6c686be4661b5f2d94928f93e126a2de09e67c5e04c01b26
size 202456

View File

@ -127,7 +127,7 @@ btmtk_usb: mediatek
rp2: serial
go7007: platform go7007 saa7134-go7007 go7007-loader
ccp: platform
microcode_amd: SKIP
microcode_amd: ucode-amd
mxu11x0: serial ti_usb_3410_5052
mxuport: serial
cw1200: network