summaryrefslogtreecommitdiffstats
path: root/ATTIC/meta-audio-4a-framework/recipes-kernel/snd-avirt
diff options
context:
space:
mode:
authorJan-Simon Möller <jsmoeller@linuxfoundation.org>2019-06-09 23:11:58 +0200
committerbuild.automotivelinux.org <jenkins@automotivelinux.org>2019-06-11 15:42:20 +0200
commit910541b2b933f4a437ea83ec3ec19242a41a3630 (patch)
tree4522d3b2b1ecf771b712f8478118ed84e8e49974 /ATTIC/meta-audio-4a-framework/recipes-kernel/snd-avirt
parent5e28b182790ce38cb769949a5f2f9c649b6978c6 (diff)
Supporting commits for the switch to pipewire
We move all components around meta-audio-soundmanager-framework to that layer (still kept on request). We deprecate the meta-audio-4a-framework layer for Happy Halibut. Bug-AGL: SPEC-2473 Change-Id: I2a7c9d815801a3f8ea80943165ea6fd1422533ea Signed-off-by: Jan-Simon Möller <jsmoeller@linuxfoundation.org>
Diffstat (limited to 'ATTIC/meta-audio-4a-framework/recipes-kernel/snd-avirt')
-rw-r--r--ATTIC/meta-audio-4a-framework/recipes-kernel/snd-avirt/files/0001-snd-avirt-backport-kernel-4.12-api.patch40
-rw-r--r--ATTIC/meta-audio-4a-framework/recipes-kernel/snd-avirt/files/0002-snd-avirt-backport-kernel-4.9-api.patch63
-rw-r--r--ATTIC/meta-audio-4a-framework/recipes-kernel/snd-avirt/snd-avirt.bb14
-rw-r--r--ATTIC/meta-audio-4a-framework/recipes-kernel/snd-avirt/snd-avirt.bbappend22
4 files changed, 139 insertions, 0 deletions
diff --git a/ATTIC/meta-audio-4a-framework/recipes-kernel/snd-avirt/files/0001-snd-avirt-backport-kernel-4.12-api.patch b/ATTIC/meta-audio-4a-framework/recipes-kernel/snd-avirt/files/0001-snd-avirt-backport-kernel-4.12-api.patch
new file mode 100644
index 00000000..fa737cb4
--- /dev/null
+++ b/ATTIC/meta-audio-4a-framework/recipes-kernel/snd-avirt/files/0001-snd-avirt-backport-kernel-4.12-api.patch
@@ -0,0 +1,40 @@
+From 2fc07fedd17650f64f9bfcdb8682b55dad75cccd Mon Sep 17 00:00:00 2001
+From: Mark Farrugia <mark.farrugia@fiberdyne.com.au>
+Date: Mon, 8 Apr 2019 16:38:13 +1000
+Subject: [PATCH] 0001-snd-avirt-backport-kernel-4.12-api
+
+---
+ core.c | 9 ++++-----
+ 1 file changed, 4 insertions(+), 5 deletions(-)
+
+diff --git a/core.c b/core.c
+index c2e32c5..2bb6616 100644
+--- a/core.c
++++ b/core.c
+@@ -219,9 +219,8 @@ int snd_avirt_stream_try_complete(struct snd_avirt_stream *stream)
+ /* Set PCM ops for the Audio Path*/
+ PCM_OPS_SET(pcm_ops_ap, &stream->pcm_ops, pointer);
+ PCM_OPS_SET(pcm_ops_ap, &stream->pcm_ops, get_time_info);
+- PCM_OPS_SET(pcm_ops_ap, &stream->pcm_ops, fill_silence);
+- PCM_OPS_SET(pcm_ops_ap, &stream->pcm_ops, copy_user);
+- PCM_OPS_SET(pcm_ops_ap, &stream->pcm_ops, copy_kernel);
++ PCM_OPS_SET(pcm_ops_ap, &stream->pcm_ops, silence);
++ PCM_OPS_SET(pcm_ops_ap, &stream->pcm_ops, copy);
+ PCM_OPS_SET(pcm_ops_ap, &stream->pcm_ops, mmap);
+ PCM_OPS_SET(pcm_ops_ap, &stream->pcm_ops, ack);
+
+@@ -331,9 +330,9 @@ snd_avirt_route_endpoint_copy(struct snd_pcm_substream *substream,
+
+ switch (endpoint) {
+ case SND_AVIRT_ROUTE_SOURCE:
+- return endpoint_ap->pcm_capture_ops->copy_kernel;
++ return endpoint_ap->pcm_capture_ops->copy;
+ case SND_AVIRT_ROUTE_SINK:
+- return endpoint_ap->pcm_playback_ops->copy_kernel;
++ return endpoint_ap->pcm_playback_ops->copy;
+ }
+
+ return NULL;
+--
+2.17.1
+
diff --git a/ATTIC/meta-audio-4a-framework/recipes-kernel/snd-avirt/files/0002-snd-avirt-backport-kernel-4.9-api.patch b/ATTIC/meta-audio-4a-framework/recipes-kernel/snd-avirt/files/0002-snd-avirt-backport-kernel-4.9-api.patch
new file mode 100644
index 00000000..fa944da0
--- /dev/null
+++ b/ATTIC/meta-audio-4a-framework/recipes-kernel/snd-avirt/files/0002-snd-avirt-backport-kernel-4.9-api.patch
@@ -0,0 +1,63 @@
+From fe7fc04e4f685c72b4f971ca0e23b10d683cffe0 Mon Sep 17 00:00:00 2001
+From: Mark Farrugia <mark.farrugia@fiberdyne.com.au>
+Date: Fri, 16 Nov 2018 16:10:12 +1100
+Subject: [PATCH] snd-avirt-backport-kernel-4.9-api
+
+---
+ dummy/dummy.c | 6 +++---
+ loopback/loopback.c | 6 +++---
+ 2 files changed, 6 insertions(+), 6 deletions(-)
+
+diff --git a/dummy/dummy.c b/dummy/dummy.c
+index f683b92..c37be09 100644
+--- a/dummy/dummy.c
++++ b/dummy/dummy.c
+@@ -125,9 +125,9 @@ static int dummy_systimer_prepare(struct snd_pcm_substream *substream)
+ return 0;
+ }
+
+-static void dummy_systimer_callback(struct timer_list *t)
++static void dummy_systimer_callback(unsigned long data)
+ {
+- struct dummy_systimer_pcm *dpcm = from_timer(dpcm, t, timer);
++ struct dummy_systimer_pcm *dpcm = (struct dummy_systimer_pcm *)data;
+ unsigned long flags;
+ int elapsed = 0;
+
+@@ -162,7 +162,7 @@ static int dummy_systimer_create(struct snd_pcm_substream *substream)
+ if (!dpcm)
+ return -ENOMEM;
+ substream->runtime->private_data = dpcm;
+- timer_setup(&dpcm->timer, dummy_systimer_callback, 0);
++ setup_timer(&dpcm->timer, dummy_systimer_callback, (unsigned long)dpcm);
+ spin_lock_init(&dpcm->lock);
+ dpcm->substream = substream;
+ return 0;
+diff --git a/loopback/loopback.c b/loopback/loopback.c
+index 4181392..6667a69 100644
+--- a/loopback/loopback.c
++++ b/loopback/loopback.c
+@@ -498,9 +498,9 @@ unlock:
+ return running;
+ }
+
+-static void loopback_timer_function(struct timer_list *t)
++static void loopback_timer_function(unsigned long data)
+ {
+- struct loopback_pcm *dpcm = from_timer(dpcm, t, timer);
++ struct loopback_pcm *dpcm = (struct loopback_pcm *)data;
+ unsigned long flags;
+
+ spin_lock_irqsave(&dpcm->cable->lock, flags);
+@@ -652,7 +652,7 @@ static int loopback_open(struct snd_pcm_substream *substream)
+ }
+ dpcm->loopback = loopback;
+ dpcm->substream = substream;
+- timer_setup(&dpcm->timer, loopback_timer_function, 0);
++ setup_timer(&dpcm->timer, loopback_timer_function, (unsigned long)dpcm);
+
+ cable = loopback->cables[substream->pcm->device];
+ if (!cable) {
+--
+2.17.1
+
diff --git a/ATTIC/meta-audio-4a-framework/recipes-kernel/snd-avirt/snd-avirt.bb b/ATTIC/meta-audio-4a-framework/recipes-kernel/snd-avirt/snd-avirt.bb
new file mode 100644
index 00000000..006f9c51
--- /dev/null
+++ b/ATTIC/meta-audio-4a-framework/recipes-kernel/snd-avirt/snd-avirt.bb
@@ -0,0 +1,14 @@
+DESCRIPTION = "Build SND_AVIRT driver"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/GPL-2.0;md5=801f80980d171dd6425610833a22dbe6"
+
+inherit module
+
+PV = "0.1"
+
+SRC_URI = "git://gerrit.automotivelinux.org/gerrit/src/avirt;protocol=https;branch=${AGL_BRANCH}"
+
+S = "${WORKDIR}/git"
+SRCREV = "12c6dc3159cc14cb3456d6d504398ba779538fb3"
+
+KERNEL_MODULE_AUTOLOAD += "snd-avirt-core snd-avirt-ap-loopback"
diff --git a/ATTIC/meta-audio-4a-framework/recipes-kernel/snd-avirt/snd-avirt.bbappend b/ATTIC/meta-audio-4a-framework/recipes-kernel/snd-avirt/snd-avirt.bbappend
new file mode 100644
index 00000000..3c9fea0e
--- /dev/null
+++ b/ATTIC/meta-audio-4a-framework/recipes-kernel/snd-avirt/snd-avirt.bbappend
@@ -0,0 +1,22 @@
+FILESEXTRAPATHS_prepend := "${THISDIR}/files:"
+
+def prep_version (d) :
+ KV = d.getVar('KERNEL_VERSION', True)
+ if not KV :
+ return "4.12"
+ else:
+ return KV
+
+ORIG_KERN_VER = "${@prep_version(d)}"
+
+VANILLA_KERNEL_VERSION = "${@str(ORIG_KERN_VER.split("-")[0].split(".")[0]+ORIG_KERN_VER.split("-")[0].split(".")[1])}"
+
+APPLY_0001 = "${@str('no' if ${VANILLA_KERNEL_VERSION} > 412 else 'yes')}"
+APPLY_0002 = "${@str('no' if ${VANILLA_KERNEL_VERSION} > 49 else 'yes')}"
+
+SRC_URI_append = " \
+ file://0001-snd-avirt-backport-kernel-4.12-api.patch;apply=${APPLY_0001} \
+ file://0002-snd-avirt-backport-kernel-4.9-api.patch;apply=${APPLY_0002} \
+ "
+# Make sure we can expose KERNEL_VERSION ...
+do_patch[depends] += "virtual/kernel:do_populate_sysroot"