From e81142dacffa2703476c3e0d9b655327dac73e28 Mon Sep 17 00:00:00 2001 From: Peter Robinson Date: Mar 21 2017 11:07:04 +0000 Subject: Add upstream patch for Raspberry Pi audio --- diff --git a/alsa-lib-conf-cards-add-VC4-HDMI-card.patch b/alsa-lib-conf-cards-add-VC4-HDMI-card.patch new file mode 100644 index 0000000..25f94e9 --- /dev/null +++ b/alsa-lib-conf-cards-add-VC4-HDMI-card.patch @@ -0,0 +1,136 @@ +From patchwork Thu Mar 2 10:12:06 2017 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: conf/cards: add VC4-HDMI card +From: Boris BREZILLON +X-Patchwork-Id: 9599837 +Message-Id: <1488449526-16850-1-git-send-email-boris.brezillon@free-electrons.com> +To: Liam Girdwood , Mark Brown , + Lars-Peter Clausen , alsa-devel@alsa-project.org +Cc: Eric Anholt , + Boris Brezillon +Date: Thu, 2 Mar 2017 11:12:06 +0100 + +Add a conf file for the VC4-HDMI sound card. + +Signed-off-by: Boris Brezillon +--- +Hi, + +This patch is adding a card config file for the audio sound card whose +driver has been submitted here [1] (not accepted yet). + +Since I am a total newbie to the alsa world, I'd like to get some +feedback on this patch. + +Also, the card only supports 2 to 8 channels, and I wonder if we should +add a plug element to support mono streams, and where this element +should be added (after or before the iec958 element). + +Regards, + +Boris + +[1]https://www.spinics.net/lists/arm-kernel/msg565182.html + + src/conf/cards/Makefile.am | 1 + + src/conf/cards/aliases.conf | 1 + + src/conf/cards/vc4-hdmi.conf | 64 ++++++++++++++++++++++++++++++++++++++++++++ + 3 files changed, 66 insertions(+) + create mode 100644 src/conf/cards/vc4-hdmi.conf + +diff --git a/src/conf/cards/Makefile.am b/src/conf/cards/Makefile.am +index e8b530e80a8f..00999f0186d6 100644 +--- a/src/conf/cards/Makefile.am ++++ b/src/conf/cards/Makefile.am +@@ -51,6 +51,7 @@ cfg_files = aliases.conf \ + TRID4DWAVENX.conf \ + USB-Audio.conf \ + YMF744.conf \ ++ vc4-hdmi.conf \ + VIA686A.conf \ + VIA8233.conf \ + VIA8233A.conf \ +diff --git a/src/conf/cards/aliases.conf b/src/conf/cards/aliases.conf +index 60f9d26974fd..18a920f41e46 100644 +--- a/src/conf/cards/aliases.conf ++++ b/src/conf/cards/aliases.conf +@@ -55,6 +55,7 @@ + AV200 cards.CMI8788 + CMI8786 cards.CMI8788 + CMI8787 cards.CMI8788 ++VC4-HDMI cards.vc4-hdmi + + + +diff --git a/src/conf/cards/vc4-hdmi.conf b/src/conf/cards/vc4-hdmi.conf +new file mode 100644 +index 000000000000..027804a145d1 +--- /dev/null ++++ b/src/conf/cards/vc4-hdmi.conf +@@ -0,0 +1,64 @@ ++# ++# Configuration for the VC4-HDMI sound card using software IEC958 ++# subframe conversion ++# ++ ++ ++ ++vc4-hdmi.pcm.front.0 { ++ @args [ CARD ] ++ @args.CARD { ++ type string ++ } ++ type hw ++ card $CARD ++} ++ ++# default with dmix ++vc4-hdmi.pcm.default { ++ @args [ CARD ] ++ @args.CARD { ++ type string ++ } ++ type asym ++ playback.pcm { ++ type plug ++ slave.pcm { ++ @func concat ++ strings [ "dmix:" $CARD ] ++ } ++ } ++} ++ ++ ++ ++vc4-hdmi.pcm.iec958.0 { ++ @args [ CARD AES0 AES1 AES2 AES3 ] ++ @args.CARD { ++ type string ++ } ++ @args.AES0 { ++ type integer ++ } ++ @args.AES1 { ++ type integer ++ } ++ @args.AES2 { ++ type integer ++ } ++ @args.AES3 { ++ type integer ++ } ++ type iec958 ++ slave { ++ format IEC958_SUBFRAME_LE ++ pcm { ++ type plug ++ slave.pcm { ++ type hw ++ card $CARD ++ } ++ } ++ } ++ status [ $AES0 $AES1 $AES2 $AES3 ] ++} diff --git a/alsa-lib.spec b/alsa-lib.spec index 0c39f0f..94ee689 100644 --- a/alsa-lib.spec +++ b/alsa-lib.spec @@ -5,7 +5,7 @@ Summary: The Advanced Linux Sound Architecture (ALSA) library Name: alsa-lib Version: 1.1.3 -Release: 2%{?prever_dot}%{?dist} +Release: 3%{?prever_dot}%{?dist} License: LGPLv2+ Group: System Environment/Libraries URL: http://www.alsa-project.org/ @@ -16,6 +16,8 @@ Source11: modprobe-dist-alsa.conf Source12: modprobe-dist-oss.conf Patch0: alsa-lib-1.0.24-config.patch Patch1: alsa-lib-1.0.14-glibc-open.patch +# https://patchwork.kernel.org/patch/9599837/ +Patch2: alsa-lib-conf-cards-add-VC4-HDMI-card.patch BuildRequires: doxygen BuildRequires: autoconf automake libtool @@ -55,9 +57,10 @@ Manager allows configuration of Audio input/output names and routing %setup -q -n %{name}-%{version}%{?prever}%{?postver} %patch0 -p1 -b .config %patch1 -p1 -b .glibc-open -autoreconf -f -i +%patch2 -p1 -b .vc4 %build +autoreconf -vif %configure --disable-aload --with-plugindir=%{_libdir}/alsa-lib --disable-alisp # Remove useless /usr/lib64 rpath on 64bit archs @@ -119,6 +122,9 @@ find %{buildroot} -name '*.la' -delete %{_datadir}/alsa/ucm %changelog +* Mon Mar 20 2017 Peter Robinson 1.1.3-3 +- Add upstream patch for Raspberry Pi HDMI audio + * Fri Feb 10 2017 Fedora Release Engineering - 1.1.3-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild