Skip to content

Commit 0084c74

Browse files
committed
audioreach: qcs6490: add Thundercomm RubikPi3
Signed-off-by: limeng0715 <limeng0715@thundersoft.com> Signed-off-by: Hongyang Zhao <hongyang.zhao@thundersoft.com>
1 parent 8911ae4 commit 0084c74

File tree

2 files changed

+74
-0
lines changed

2 files changed

+74
-0
lines changed

CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ set(TPLGS
3434
"QCM6490-IDP\;QCM6490-IDP\;qcom/qcm6490\;"
3535
"QCS6490-Radxa-Dragon-Q6A\;QCS6490-Radxa-Dragon-Q6A\;qcom/qcs6490/radxa/dragon-q6a\;"
3636
"QCS6490-RB3Gen2\;QCS6490-RB3Gen2\;qcom/qcs6490\;"
37+
"QCS6490-Thundercomm-RubikPi3\;QCS6490-Thundercomm-RubikPi3\;qcom/qcs6490/Thundercomm/RubikPi3\;"
3738
)
3839

3940
# The list of directories to skip when synchronizing to linux-firmware

QCS6490-Thundercomm-RubikPi3.m4

Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
# Copyright, Linaro Ltd, 2023
2+
# SPDX-License-Identifier: BSD-3-Clause
3+
include(`audioreach/audioreach.m4')
4+
include(`audioreach/stream-subgraph.m4')
5+
include(`audioreach/device-subgraph.m4')
6+
include(`util/route.m4')
7+
include(`util/mixer.m4')
8+
include(`audioreach/tokens.m4')
9+
#
10+
# Stream SubGraph for MultiMedia Playback
11+
#
12+
# ______________________________________________
13+
# | Sub Graph 1 |
14+
# | [WR_SH] -> [PCM DEC] -> [PCM CONV] -> [LOG] |- Kcontrol
15+
# |______________________________________________|
16+
#
17+
dnl Playback MultiMedia1
18+
STREAM_SG_PCM_ADD(audioreach/subgraph-stream-vol-playback.m4, FRONTEND_DAI_MULTIMEDIA1,
19+
`S16_LE', 48000, 48000, 2, 2,
20+
0x00004001, 0x00004001, 0x00006001, `110000')
21+
dnl
22+
dnl Playback MultiMedia2
23+
STREAM_SG_PCM_ADD(audioreach/subgraph-stream-vol-playback.m4, FRONTEND_DAI_MULTIMEDIA2,
24+
`S32_LE', 48000, 48000, 2, 2,
25+
0x00004002, 0x00004002, 0x00006010, `110000')
26+
dnl
27+
dnl Capture MultiMedia3
28+
STREAM_SG_PCM_ADD(audioreach/subgraph-stream-capture.m4, FRONTEND_DAI_MULTIMEDIA3,
29+
`S16_LE', 48000, 48000, 1, 2,
30+
0x00004003, 0x00004003, 0x00006020, `110000')
31+
#
32+
#
33+
# Device SubGraph for WSA RX0 Backend
34+
#
35+
# ___________________
36+
# | Sub Graph 2 |
37+
# Mixer -| [LOG] -> [WSA EP] |
38+
# |___________________|
39+
#
40+
dnl DEVICE_SG_ADD(stream, stream-dai-id, stream-index,
41+
dnl format, min-rate, max-rate, min-channels, max-channels,
42+
dnl interface-type, interface-index, data-format,
43+
dnl sg-iid-start, cont-iid-start, mod-iid-start)
44+
45+
dnl Primary MI2S Playback
46+
DEVICE_SG_ADD(audioreach/subgraph-device-i2s-playback.m4, `Primary', PRIMARY_MI2S_RX,
47+
`S16_LE', 48000, 48000, 2, 2,
48+
LPAIF_INTF_TYPE_LPAIF, I2S_INTF_TYPE_PRIMARY, SD_LINE_IDX_I2S_SD0, DATA_FORMAT_FIXED_POINT,
49+
0x00004005, 0x00004005, 0x00006050, `PRIMARY_MI2S_RX')
50+
dnl
51+
dnl Quaternary MI2S Playback
52+
DEVICE_SG_ADD(audioreach/subgraph-device-i2s-playback.m4, `Quaternary', QUATERNARY_MI2S_RX,
53+
`S32_LE', 48000, 48000, 2, 2,
54+
LPAIF_INTF_TYPE_RXTX, I2S_INTF_TYPE_PRIMARY, SD_LINE_IDX_I2S_SD0, DATA_FORMAT_FIXED_POINT,
55+
0x00004006, 0x00004006, 0x00006060, `QUATERNARY_MI2S_RX')
56+
dnl
57+
dnl Primary MI2S Capture
58+
DEVICE_SG_ADD(audioreach/subgraph-device-i2s-capture.m4, `Primary', PRIMARY_MI2S_TX,
59+
`S16_LE', 48000, 48000, 1, 2,
60+
LPAIF_INTF_TYPE_LPAIF, I2S_INTF_TYPE_PRIMARY, SD_LINE_IDX_I2S_SD1, DATA_FORMAT_FIXED_POINT,
61+
0x00004007, 0x00004007, 0x00006070, `PRIMARY_MI2S_TX', `PRIMARY_MI2S_TX')
62+
dnl
63+
64+
STREAM_DEVICE_PLAYBACK_MIXER(PRIMARY_MI2S_RX, ``PRIMARY_MI2S_RX'', ``MultiMedia1'')
65+
STREAM_DEVICE_PLAYBACK_ROUTE(PRIMARY_MI2S_RX, ``PRIMARY_MI2S_RX Audio Mixer'', ``MultiMedia1, stream0.logger1'')
66+
67+
STREAM_DEVICE_PLAYBACK_MIXER(QUATERNARY_MI2S_RX, ``QUATERNARY_MI2S_RX'', ``MultiMedia2'')
68+
STREAM_DEVICE_PLAYBACK_ROUTE(QUATERNARY_MI2S_RX, ``QUATERNARY_MI2S_RX Audio Mixer'', ``MultiMedia2, stream1.logger1'')
69+
70+
dnl STREAM_DEVICE_CAPTURE_MIXER(stream-index, kcontro1, kcontrol2... kcontrolN)
71+
STREAM_DEVICE_CAPTURE_MIXER(FRONTEND_DAI_MULTIMEDIA3, ``PRIMARY_MI2S_TX'')
72+
dnl STREAM_DEVICE_CAPTURE_ROUTE(stream-index, mixer-name, route1, route2.. routeN)
73+
STREAM_DEVICE_CAPTURE_ROUTE(FRONTEND_DAI_MULTIMEDIA3, ``MultiMedia3 Mixer'', ``PRIMARY_MI2S_TX, device17.logger1'')

0 commit comments

Comments
 (0)