Skip to content

Commit ae33862

Browse files
Merge pull request #24 from strongtz/radxa-dragon-q6a
audioreach: qcs6490: add Radxa Dragon Q6A
2 parents b10784a + efba69e commit ae33862

File tree

2 files changed

+73
-2
lines changed

2 files changed

+73
-2
lines changed

CMakeLists.txt

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,9 @@ set(TPLGS
2626
"X1E80100-LENOVO-Thinkpad-T14s\;X1E80100-Romulus\;qcom/x1e80100\;"
2727
"X1E80100-LENOVO-Yoga-Slim7x\;X1E80100-LENOVO-Yoga-Slim7x\;qcom/x1e80100/LENOVO/83ED\;"
2828
"QCM6490-IDP\;qcm6490-idp-snd-card\;qcom/qcm6490/qcm6490-idp\;"
29-
"QCS6490-RB3Gen2\;qcs6490-rb3gen2-snd-card\;qcom/qcs6490/qcs6490-rb3gen2\;"
30-
)
29+
"QCS6490-Radxa-Dragon-Q6A\;QCS6490-Radxa-Dragon-Q6A\;qcom/qcs6490/radxa/dragon-q6a\;"
30+
"QCS6490-RB3Gen2\;qcs6490-rb3gen2-snd-card\;qcom/qcs6490/qcs6490-rb3gen2\;"
31+
)
3132

3233
add_custom_target(topologies ALL)
3334

QCS6490-Radxa-Dragon-Q6A.m4

Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
# SPDX-License-Identifier: BSD-3-Clause
2+
# Copyright, Linaro Ltd, 2025
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 Playback MultiMedia2
22+
STREAM_SG_PCM_ADD(audioreach/subgraph-stream-vol-playback.m4, FRONTEND_DAI_MULTIMEDIA2,
23+
`S16_LE', 48000, 48000, 2, 2,
24+
0x00004002, 0x00004002, 0x00006010, `110000')
25+
dnl Capture MultiMedia3
26+
STREAM_SG_PCM_ADD(audioreach/subgraph-stream-capture.m4, FRONTEND_DAI_MULTIMEDIA3,
27+
`S16_LE', 48000, 48000, 1, 2,
28+
0x00004003, 0x00004003, 0x00006020, `110000')
29+
#
30+
#
31+
# Device SubGraph for WSA RX0 Backend
32+
#
33+
# ___________________
34+
# | Sub Graph 2 |
35+
# Mixer -| [LOG] -> [WSA EP] |
36+
# |___________________|
37+
#
38+
dnl DEVICE_SG_ADD(stream, stream-dai-id, stream-index,
39+
dnl format, min-rate, max-rate, min-channels, max-channels,
40+
dnl interface-type, interface-index, data-format,
41+
dnl sg-iid-start, cont-iid-start, mod-iid-start
42+
dnl WCDRX Playback
43+
DEVICE_SG_ADD(audioreach/subgraph-device-codec-dma-playback.m4, `RX_CODEC_DMA_RX_0', RX_CODEC_DMA_RX_0,
44+
`S16_LE', 48000, 48000, 2, 2,
45+
LPAIF_INTF_TYPE_RXTX, CODEC_INTF_IDX_RX0, 0, DATA_FORMAT_FIXED_POINT,
46+
0x00004011, 0x00004011, 0x00006110)
47+
dnl
48+
dnl Display port0 Playback
49+
DEVICE_SG_ADD(audioreach/subgraph-device-display-port-playback.m4, `DISPLAY_PORT_RX_0', DISPLAY_PORT_RX_0,
50+
`S16_LE', 48000, 48000, 2, 2,
51+
0, 0, 0, DATA_FORMAT_FIXED_POINT,
52+
0x00004012, 0x00004012, 0x00006120, `DISPLAY_PORT_RX_0')
53+
54+
dnl WCDTX Capture
55+
DEVICE_SG_ADD(audioreach/subgraph-device-codec-dma-capture.m4, `TX_CODEC_DMA_TX_3', TX_CODEC_DMA_TX_3,
56+
`S16_LE', 48000, 48000, 1, 2,
57+
LPAIF_INTF_TYPE_RXTX, CODEC_INTF_IDX_TX3, 0, DATA_FORMAT_FIXED_POINT,
58+
0x00004016, 0x00004016, 0x00006160)
59+
60+
STREAM_DEVICE_PLAYBACK_MIXER(RX_CODEC_DMA_RX_0, ``RX_CODEC_DMA_RX_0'', ``MultiMedia1'', ``MultiMedia2'')
61+
STREAM_DEVICE_PLAYBACK_MIXER(DISPLAY_PORT_RX_0, ``DISPLAY_PORT_RX_0'', ``MultiMedia1'', ``MultiMedia2'')
62+
63+
STREAM_DEVICE_PLAYBACK_ROUTE(RX_CODEC_DMA_RX_0, ``RX_CODEC_DMA_RX_0 Audio Mixer'', ``MultiMedia1, stream0.logger1'', ``MultiMedia2, stream1.logger1'')
64+
STREAM_DEVICE_PLAYBACK_ROUTE(DISPLAY_PORT_RX_0, ``DISPLAY_PORT_RX_0 Audio Mixer'', ``MultiMedia1, stream0.logger1'', ``MultiMedia2, stream1.logger1'')
65+
66+
dnl STREAM_DEVICE_CAPTURE_MIXER(stream-index, kcontro1, kcontrol2... kcontrolN)
67+
STREAM_DEVICE_CAPTURE_MIXER(FRONTEND_DAI_MULTIMEDIA3, ``TX_CODEC_DMA_TX_3'' )
68+
69+
dnl STREAM_DEVICE_CAPTURE_ROUTE(stream-index, mixer-name, route1, route2.. routeN)
70+
STREAM_DEVICE_CAPTURE_ROUTE(FRONTEND_DAI_MULTIMEDIA3, ``MultiMedia3 Mixer'', ``TX_CODEC_DMA_TX_3, device120.logger1'')

0 commit comments

Comments
 (0)