diff --git a/.alsa-sof-firmware.metadata b/.alsa-sof-firmware.metadata new file mode 100644 index 0000000..d21cfb4 --- /dev/null +++ b/.alsa-sof-firmware.metadata @@ -0,0 +1 @@ +276426a461afd307a523b589931d6a5efec90088 SOURCES/sof-bin-v1.9.3.tar.gz diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..46859c6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +SOURCES/sof-bin-v1.9.3.tar.gz diff --git a/SPECS/alsa-sof-firmware.spec b/SPECS/alsa-sof-firmware.spec new file mode 100644 index 0000000..6ce81dd --- /dev/null +++ b/SPECS/alsa-sof-firmware.spec @@ -0,0 +1,155 @@ +# This is a firmware package, so binaries (which are not run on the host) +# in the end package are expected. +%define _binaries_in_noarch_packages_terminate_build 0 +%global _firmwarepath /usr/lib/firmware + +%global sof_ver 1.9.3 +#global sof_ver_pre rc2 +%global sof_ver_rel %{?sof_ver_pre:.%{sof_ver_pre}} +%global sof_ver_pkg v%{sof_ver}%{?sof_ver_pre:-%{sof_ver_pre}} + +%global tplg_version 1.2.4 + +Summary: Firmware and topology files for Sound Open Firmware project +Name: alsa-sof-firmware +Version: %{sof_ver} +Release: 2%{?sof_ver_rel}%{?dist} +# See later in the spec for a breakdown of licensing +License: BSD +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 +BuildRequires: alsa-topology >= %{tplg_version} +BuildRequires: alsa-topology-utils >= %{tplg_version} + +# noarch, since the package is firmware +BuildArch: noarch + +%description +This package contains the firmware binaries for the Sound Open Firmware project. + +%package debug +Requires: alsa-sof-firmware +Summary: Debug files for Sound Open Firmware project +License: BSD + +%description debug +This package contains the debug files for the Sound Open Firmware project. + +%prep +%autosetup -n sof-bin-%{sof_ver_pkg} + +mkdir -p firmware/intel/sof + +# 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 + +# remove NXP firmware files +rm LICENCE.NXP +rm -rf firmware/intel/sof-tplg/sof-imx8* + +# remove Mediatek firmware files +rm -rf firmware/intel/sof-tplg/sof-mt8* + +%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 + +%install +mkdir -p %{buildroot}%{_firmwarepath} +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 "*.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 +popd +sed -i -e 's:^./::' alsa-sof-firmware.{files,debug-files,dirs} +sed -i -e 's!^!/usr/lib/firmware/!' alsa-sof-firmware.{files,debug-files,dirs} +sed -e 's/^/%%dir /' alsa-sof-firmware.dirs >> alsa-sof-firmware.files +cat alsa-sof-firmware.files + +%files -f alsa-sof-firmware.files +%license LICENCE* +%doc README* +%dir %{_firmwarepath} + +# Licence: 3-clause BSD +%{_firmwarepath}/*.bin + +# Licence: 3-clause BSD +# .. for files with suffix .tplg +%{_firmwarepath}/intel/sof-tplg + +# Licence: SOF (3-clause BSD plus others) +# .. for files with suffix .ri + +%files debug -f alsa-sof-firmware.debug-files + +%pretrans -p +path = "%{_firmwarepath}/intel/sof-tplg" +st = posix.stat(path) +if st and st.type == "link" then + os.remove(path) +end + +%changelog +* Mon Dec 20 2021 Jaroslav Kysela - 1.9.3-2 +- Update to v1.9.3 + +* Mon Aug 09 2021 Mohan Boddu - 1.8-2 +- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags + Related: rhbz#1991688 + +* Thu Jul 22 2021 Jaroslav Kysela - 1.8-1 +- Update to v1.8 + +* Thu Apr 15 2021 Mohan Boddu - 1.6.1-5 +- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937 + +* Thu Mar 11 2021 Jaroslav Kysela - 1.6.1-4 +- Add SST Skylake HDA topology binary (bug#1933423) + +* Fri Mar 5 2021 Jaroslav Kysela - 1.6.1-3 +- Add TGL-H firmware files + +* Tue Jan 26 2021 Fedora Release Engineering - 1.6.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Sun Jan 3 2021 Jaroslav Kysela - 1.6.1-1 +- Update to v1.6.1 + +* Thu Dec 10 2020 Jaroslav Kysela - 1.6-4 +- Update to v1.6 (Dec 9) + +* Thu Nov 19 2020 Jaroslav Kysela - 1.6-3 +- Update to v1.6 (Nov 19) + +* Wed Oct 14 2020 Jaroslav Kysela - 1.6-1 +- Update to v1.6 (Oct 13) + +* Mon Jul 27 2020 Fedora Release Engineering - 1.5-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Mon Jun 1 2020 Jaroslav Kysela - 1.5-1 +- Update to v1.5 + +* Tue May 12 2020 Jaroslav Kysela - 1.4.2-6 +- Fix the upgrade (make /usr/lib/firmware/intel/sof-tplg directory again) +- Remove the version from all paths + +* Thu Apr 30 2020 Jaroslav Kysela - 1.4.2-5 +- Add missing symlink for sof-cfl.ri + +* Thu Mar 12 2020 Jaroslav Kysela - 1.4.2-4 +- Add missing symlink for sof-cml.ri + +* Mon Mar 2 2020 Jaroslav Kysela - 1.4.2-3 +- Initial version, SOF firmware 1.4.2