blob: 51e19982131dc5d0d5c1884868d495230075bfb2 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
|
From 92d2b7d91bc1ec4068ee9371753bb24ad1108827 Mon Sep 17 00:00:00 2001
From: Shengjiu Wang <shengjiu.wang@nxp.com>
Date: Wed, 31 Jan 2018 15:06:53 +0800
Subject: [PATCH] add ak4458 conf for multichannel support
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
one limitation is that ALSA and pulseaudio only support
maximum 8 channels, but ak4458 may support 16 channels
Upstream-Status: Inappropriate [i.MX specific]
Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
---
src/conf/cards/AK4458.conf | 74 +++++++++++++++++++++++++++++++++++++
src/conf/cards/Makefile.am | 1 +
src/conf/cards/aliases.conf | 1 +
3 files changed, 76 insertions(+)
create mode 100644 src/conf/cards/AK4458.conf
diff --git a/src/conf/cards/AK4458.conf b/src/conf/cards/AK4458.conf
new file mode 100644
index 000000000000..3b5b195f2ca0
--- /dev/null
+++ b/src/conf/cards/AK4458.conf
@@ -0,0 +1,74 @@
+#
+# Configuration for the AK4458 chip
+#
+
+# default with dmix & dsnoop
+AK4458.pcm.default {
+ @args [ CARD ]
+ @args.CARD {
+ type string
+ }
+ type asym
+ playback.pcm {
+ type plug
+ slave.pcm {
+ @func concat
+ strings [ "dmix:" $CARD ",FORMAT=S32_LE" ]
+ }
+ }
+ capture.pcm {
+ type plug
+ slave.pcm {
+ @func concat
+ strings [ "dsnoop:" $CARD ",FORMAT=S32_LE" ]
+ }
+ }
+}
+
+<confdir:pcm/surround40.conf>
+
+AK4458.pcm.surround40.0 {
+ @args [ CARD ]
+ @args.CARD {
+ type string
+ }
+ type plug
+ slave.pcm {
+ type hw
+ card $CARD
+ }
+ slave.channels 4
+}
+
+
+<confdir:pcm/surround41.conf>
+<confdir:pcm/surround50.conf>
+<confdir:pcm/surround51.conf>
+
+AK4458.pcm.surround51.0 {
+ @args [ CARD ]
+ @args.CARD {
+ type string
+ }
+ type plug
+ slave.pcm {
+ type hw
+ card $CARD
+ }
+ slave.channels 6
+}
+
+<confdir:pcm/surround71.conf>
+
+AK4458.pcm.surround71.0 {
+ @args [ CARD ]
+ @args.CARD {
+ type string
+ }
+ type plug
+ slave.pcm {
+ type hw
+ card $CARD
+ }
+ slave.channels 8
+}
diff --git a/src/conf/cards/Makefile.am b/src/conf/cards/Makefile.am
index cbd2cd04227d..3c29bd65d341 100644
--- a/src/conf/cards/Makefile.am
+++ b/src/conf/cards/Makefile.am
@@ -3,6 +3,7 @@ alsadir = $(alsaconfigdir)/cards
cfg_files = aliases.conf \
CS42888.conf \
IMX-HDMI.conf \
+ AK4458.conf \
AACI.conf \
ATIIXP.conf \
ATIIXP-SPDMA.conf \
diff --git a/src/conf/cards/aliases.conf b/src/conf/cards/aliases.conf
index 0aa874d7434f..dda71d99916e 100644
--- a/src/conf/cards/aliases.conf
+++ b/src/conf/cards/aliases.conf
@@ -59,6 +59,7 @@ pistachio cards.pistachio-card
VC4-HDMI cards.vc4-hdmi
imx-cs42888 cards.CS42888
imx-hdmi-soc cards.IMX-HDMI
+ak4458-audio cards.AK4458
<confdir:ctl/default.conf>
<confdir:pcm/default.conf>
--
2.42.0
|