From 4ff37d576bc43e4655e5ed02bc8016e266c9893d Mon Sep 17 00:00:00 2001
From: Mark Farrugia <mark.farrugia@fiberdyne.com.au>
Date: Tue, 13 Nov 2018 08:04:19 +1100
Subject: Rework PCM ops callback mechanism

- Fix issues regarding PCM ops callbacks via AVIRT
- As PCMs are created, the PCM ops are set according to the Audio
  Path's needs. A default PCM ops table is applied for all PCMs,
  which includes callbacks such as open, and hw_free, since AVIRT
  requires these for intermediate processing, whether or not a given
  Audio Path may need them.
- Separate PCM ops into separate playback and capture ops tables

Signed-off-by: Mark Farrugia <mark.farrugia@fiberdyne.com.au>
---
 loopback/loopback.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

(limited to 'loopback')

diff --git a/loopback/loopback.c b/loopback/loopback.c
index 9646706..4181392 100644
--- a/loopback/loopback.c
+++ b/loopback/loopback.c
@@ -1090,7 +1090,8 @@ static struct snd_avirt_audiopath loopbackap_module = {
 	.name = "Loopback Audio Path",
 	.version = { 0, 0, 1 },
 	.hw = &loopbackap_pcm_hardware,
-	.pcm_ops = &loopbackap_pcm_ops,
+	.pcm_playback_ops = &loopbackap_pcm_ops,
+	.pcm_capture_ops = &loopbackap_pcm_ops,
 	.configure = loopbackap_configure,
 };
 
-- 
cgit