diff --git a/CMakeLists.txt b/CMakeLists.txt index a69b6db..f8ff99d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -34,6 +34,7 @@ set(TPLGS "QCM6490-IDP\;QCM6490-IDP\;qcom/qcm6490\;" "QCS6490-Radxa-Dragon-Q6A\;QCS6490-Radxa-Dragon-Q6A\;qcom/qcs6490/radxa/dragon-q6a\;" "QCS6490-RB3Gen2\;QCS6490-RB3Gen2\;qcom/qcs6490\;" + "TALOS-EVK\;TALOS-EVK\;qcom/qcs615\;" ) # The list of directories to skip when synchronizing to linux-firmware diff --git a/TALOS-EVK.m4 b/TALOS-EVK.m4 new file mode 100644 index 0000000..06c99b6 --- /dev/null +++ b/TALOS-EVK.m4 @@ -0,0 +1,58 @@ +# Copyright, Linaro Ltd, 2023 +# SPDX-License-Identifier: BSD-3-Clause +include(`audioreach/audioreach.m4') +include(`audioreach/stream-subgraph.m4') +include(`audioreach/device-subgraph.m4') +include(`util/route.m4') +include(`util/mixer.m4') +include(`audioreach/tokens.m4') +# +# Stream SubGraph for MultiMedia Playback +# +# ______________________________________________ +# | Sub Graph 1 | +# | [WR_SH] -> [PCM DEC] -> [PCM CONV] -> [LOG] |- Kcontrol +# |______________________________________________| +# +dnl Playback MultiMedia1 +STREAM_SG_PCM_ADD(audioreach/subgraph-stream-vol-playback.m4, FRONTEND_DAI_MULTIMEDIA1, + `S16_LE', 48000, 48000, 2, 2, + 0x00004001, 0x00004001, 0x00006001, `110000') +dnl +dnl Capture MultiMedia2 +STREAM_SG_PCM_ADD(audioreach/subgraph-stream-capture.m4, FRONTEND_DAI_MULTIMEDIA2, + `S16_LE', 48000, 48000, 1, 2, + 0x00004003, 0x00004003, 0x00006020, `110000') +dnl +# +# +# Device SubGraph for WSA RX0 Backend +# +# ___________________ +# | Sub Graph 2 | +# Mixer -| [LOG] -> [WSA EP] | +# |___________________| +# +dnl DEVICE_SG_ADD(stream, stream-dai-id, stream-index, +dnl format, min-rate, max-rate, min-channels, max-channels, +dnl interface-type, interface-index, data-format, +dnl sg-iid-start, cont-iid-start, mod-iid-start +dnl Primary MI2S Playback +DEVICE_SG_ADD(audioreach/subgraph-device-i2s-playback.m4, `Primary', PRIMARY_MI2S_RX, + `S16_LE', 48000, 48000, 2, 2, + LPAIF_INTF_TYPE_LPAIF, I2S_INTF_TYPE_PRIMARY, SD_LINE_IDX_I2S_SD1, DATA_FORMAT_FIXED_POINT, + 0x00004006, 0x00004006, 0x00006060, `PRIMARY_MI2S_RX') +dnl +dnl Primary MI2S Capture +DEVICE_SG_ADD(audioreach/subgraph-device-i2s-capture.m4, `Primary', PRIMARY_MI2S_TX, + `S16_LE', 48000, 48000, 1, 2, + LPAIF_INTF_TYPE_LPAIF, I2S_INTF_TYPE_PRIMARY, SD_LINE_IDX_I2S_SD0, DATA_FORMAT_FIXED_POINT, + 0x00004008, 0x00004008, 0x00006080, `PRIMARY_MI2S_TX', `PRIMARY_MI2S_TX') + +STREAM_DEVICE_PLAYBACK_MIXER(PRIMARY_MI2S_RX, ``PRIMARY_MI2S_RX'', ``MultiMedia1'') +STREAM_DEVICE_PLAYBACK_ROUTE(PRIMARY_MI2S_RX, ``PRIMARY_MI2S_RX Audio Mixer'', ``MultiMedia1, stream0.logger1'') + +dnl STREAM_DEVICE_CAPTURE_MIXER(stream-index, kcontro1, kcontrol2... kcontrolN) +STREAM_DEVICE_CAPTURE_MIXER(FRONTEND_DAI_MULTIMEDIA2, ``PRIMARY_MI2S_TX'') +dnl STREAM_DEVICE_CAPTURE_ROUTE(stream-index, mixer-name, route1, route2.. routeN) +STREAM_DEVICE_CAPTURE_ROUTE(FRONTEND_DAI_MULTIMEDIA2, ``MultiMedia2 Mixer'', ``PRIMARY_MI2S_TX, device17.logger1'')