diff --git a/.alsa-sof-firmware.metadata b/.alsa-sof-firmware.metadata index a7f8152..390e5fb 100644 --- a/.alsa-sof-firmware.metadata +++ b/.alsa-sof-firmware.metadata @@ -1 +1 @@ -2a5336a8c5ced0e8bb9ba5237a52e7ac37833b13 SOURCES/sof-bin-v2.2.4.tar.gz +7ec113433ae053fba8acbff73a1db3763904c8dc SOURCES/sof-bin-2023.12.tar.gz diff --git a/.gitignore b/.gitignore index ae42e7e..e564d05 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -SOURCES/sof-bin-v2.2.4.tar.gz +SOURCES/sof-bin-2023.12.tar.gz diff --git a/SPECS/alsa-sof-firmware.spec b/SPECS/alsa-sof-firmware.spec index 009df16..cdc5321 100644 --- a/SPECS/alsa-sof-firmware.spec +++ b/SPECS/alsa-sof-firmware.spec @@ -2,11 +2,13 @@ # in the end package are expected. %define _binaries_in_noarch_packages_terminate_build 0 %global _firmwarepath /usr/lib/firmware +%global _xz_opts -9 --check=crc32 -%global sof_ver 2.2.4 -#global sof_ver_pre rc2 +%global sof_ver 2023.12 +#global sof_ver_pre rc1 %global sof_ver_rel %{?sof_ver_pre:.%{sof_ver_pre}} -%global sof_ver_pkg v%{sof_ver}%{?sof_ver_pre:-%{sof_ver_pre}} +%global sof_ver_pkg0 %{sof_ver}%{?sof_ver_pre:-%{sof_ver_pre}} +%global sof_ver_pkg v%{sof_ver_pkg0} %global with_sof_addon 0 %global sof_ver_addon 0 @@ -18,14 +20,15 @@ Name: alsa-sof-firmware Version: %{sof_ver} Release: 1%{?sof_ver_rel}%{?dist} # See later in the spec for a breakdown of licensing -License: BSD +License: BSD-3-Clause URL: https://github.com/thesofproject/sof-bin -Source: https://github.com/thesofproject/sof-bin/releases/download/%{sof_ver_pkg}/sof-bin-%{sof_ver_pkg}.tar.gz +Source: https://github.com/thesofproject/sof-bin/releases/download/%{sof_ver_pkg}/sof-bin-%{sof_ver_pkg0}.tar.gz %if 0%{?with_sof_addon} Source2: https://github.com/thesofproject/sof-bin/releases/download/v%{sof_ver_addon}/sof-tplg-v%{sof_ver_addon}.tar.gz %endif BuildRequires: alsa-topology >= %{tplg_version} BuildRequires: alsa-topology-utils >= %{tplg_version} +Conflicts: alsa-firmware <= 1.2.1-6 # noarch, since the package is firmware BuildArch: noarch @@ -42,15 +45,13 @@ License: BSD This package contains the debug files for the Sound Open Firmware project. %prep -%autosetup -n sof-bin-%{sof_ver_pkg} +%autosetup -n sof-bin-%{sof_ver_pkg0} -mkdir -p firmware/intel/sof +mkdir -p firmware/intel -# we have the version in the package name -mv sof-%{sof_ver_pkg}/* firmware/intel/sof - -# move topology files -mv sof-tplg-%{sof_ver_pkg} firmware/intel/sof-tplg +for d in sof sof-ipc4 sof-ace-tplg sof-tplg; do \ + mv "${d}" firmware/intel; \ +done %if 0%{?with_sof_addon} tar xvzf %{SOURCE2} @@ -58,17 +59,38 @@ mv sof-tplg-v%{sof_ver_addon}/*.tplg firmware/intel/sof-tplg %endif # remove NXP firmware files -rm LICENCE.NXP +rm Notice.NXP LICENCE.NXP rm -rf firmware/intel/sof-tplg/sof-imx8* # remove Mediatek firmware files rm -rf firmware/intel/sof-tplg/sof-mt8* +# use xz compression +xz -z %{_xz_opts} manifest.txt +for d in sof sof-ipc4; do \ + find -P "firmware/intel/${d}" -type f -name "*.ri" -exec xz -z %{_xz_opts} {} \; + for f in $(find -P "firmware/intel/${d}" -type l -name "*.ri"); do \ + l=$(readlink "${f}"); \ + n=$(dirname "${f}"); \ + b=$(basename "${f}"); \ + rm "${f}"; \ + pushd "${n}"; \ + ln -svf "${l}.xz" "${b}.xz"; \ + popd; \ + done +done +for d in sof-tplg sof-ace-tplg; do \ + find -P "firmware/intel/${d}" -type f -name "*.tplg" -exec xz -z %{_xz_opts} {} \; +done + %build # SST topology files (not SOF related, but it's a Intel hw support # and this package seems a good place to distribute them alsatplg -c /usr/share/alsa/topology/hda-dsp/skl_hda_dsp_generic-tplg.conf \ -o firmware/skl_hda_dsp_generic-tplg.bin +# use xz compression +xz -z %{_xz_opts} firmware/*.bin +chmod 0644 firmware/*.bin.xz %install mkdir -p %{buildroot}%{_firmwarepath} @@ -77,7 +99,7 @@ cp -ra firmware/* %{buildroot}%{_firmwarepath} # gather files and directories FILEDIR=$(pwd) pushd %{buildroot}/%{_firmwarepath} -find -P . -name "*.ri" | sed -e '/^.$/d' > $FILEDIR/alsa-sof-firmware.files +find -P . -name "*.ri.xz" | sed -e '/^.$/d' >> $FILEDIR/alsa-sof-firmware.files #find -P . -name "*.tplg" | sed -e '/^.$/d' >> $FILEDIR/alsa-sof-firmware.files find -P . -name "*.ldc" | sed -e '/^.$/d' > $FILEDIR/alsa-sof-firmware.debug-files find -P . -type d | sed -e '/^.$/d' > $FILEDIR/alsa-sof-firmware.dirs @@ -90,14 +112,16 @@ cat alsa-sof-firmware.files %files -f alsa-sof-firmware.files %license LICENCE* %doc README* +%doc manifest.txt.xz %dir %{_firmwarepath} # Licence: 3-clause BSD -%{_firmwarepath}/*.bin +%{_firmwarepath}/*.bin.xz # Licence: 3-clause BSD # .. for files with suffix .tplg -%{_firmwarepath}/intel/sof-tplg +%{_firmwarepath}/intel/sof-tplg/*.tplg.xz +%{_firmwarepath}/intel/sof-ace-tplg/*.tplg.xz # Licence: SOF (3-clause BSD plus others) # .. for files with suffix .ri @@ -112,6 +136,20 @@ if st and st.type == "link" then end %changelog +* Wed Dec 20 2023 Jaroslav Kysela - 2023.12-1 +- Update to v2023.12 + +* Thu Nov 16 2023 Jaroslav Kysela - 2023.09.2-1 +- Update to v2023.09.2 +- SPDX license + +* Thu Jun 15 2023 Jaroslav Kysela - 2.2.5-2 +- add sof-rpl-rt711-l0-rt1316-l12-rt714-l3.tplg for Dell SKU 0BDA +- add xz compression support (with CRC32) + +* Mon May 15 2023 Jaroslav Kysela - 2.2.5-1 +- Update to v2.2.5 + * Mon Jan 9 2023 Jaroslav Kysela - 2.2.4-1 - Update to v2.2.4