Commit graph

200 commits

Author SHA1 Message Date
Srinivas Kandagatla
2564625b83 audioreach: add support for Arduino VENTUNO board
Arduino VENTUNO has 1xHDMI, 1xDP, Headset(Mic and speakers), LineOut and
EarOut connectors.

Add support for all of these in this tplg firmware.

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@oss.qualcomm.com>
2026-04-02 08:13:07 +00:00
Srinivas Kandagatla
366e7c81b3 audioreach: add new LPASS LPI MI2S ports
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@oss.qualcomm.com>
2026-04-02 08:13:07 +00:00
Srinivas Kandagatla
c20eb0e162
LEMANS-EVK: Add compress offload playback support for MultiMedia3 (#54)
This change enables compress offload playback support on LEMANS-EVK by
adding a dedicated MultiMedia3 playback subgraph and routing it to the
PRIMARY_MI2S_RX path.

Key changes:
* Added a STREAM_SG_PCM_ADD() entry using the
subgraph-compress-stream-vol-playback.m4 template
* Enabled MultiMedia3 as a playback frontend for PRIMARY_MI2S_RX in
mixer and routing definitions
  * Updated routing to include the 'MultiMedia3, stream2.logger1' path
2026-04-02 08:24:23 +01:00
Srinivas Kandagatla
ebbbfae587
ASoC: qcom: x1e80100-crd: add dedicated multimedia for DisplayPort (#56)
Add MM5 and MM6 as dedicated frontend DAIs for DisplayPort RX 0 and RX 1
respectively, instead of sharing MM1/MM2 with speaker/headphone
playback.

Update device subgraph instance IDs to avoid conflicts with the newly
added MM5/MM6 stream subgraphs.
2026-03-31 00:27:37 +01:00
Srinivas Kandagatla
04669dbf97
audioreach: qcs6490: add tertiary and quinary MI2S paths for RubikPi3 (#57)
Add TERTIARY_MI2S_RX/TX and QUINARY_MI2S_RX/TX topology paths for
QCS6490-Thundercomm-RubikPi3, together with the corresponding FE
playback and capture routes.

Current audio interfaces on the board are:
 - PRIMARY_MI2S_RX/TX: 3.5mm headset
 - QUATERNARY_MI2S_RX: HDMI OUT
 - TERTIARY_MI2S_RX/TX: 40-pin header I2S
 - QUINARY_MI2S_RX/TX: Bluetooth audio
2026-03-31 00:27:18 +01:00
Hongyang Zhao
f91b94e5e9 audioreach: qcs6490: add tertiary and quinary MI2S paths for RubikPi3
Add TERTIARY_MI2S_RX/TX and QUINARY_MI2S_RX/TX topology paths for
QCS6490-Thundercomm-RubikPi3, together with the corresponding FE
playback and capture routes.

Current audio interfaces on the board are:
 - PRIMARY_MI2S_RX/TX: 3.5mm headset
 - QUATERNARY_MI2S_RX: HDMI OUT
 - TERTIARY_MI2S_RX/TX: 40-pin header I2S
 - QUINARY_MI2S_RX/TX: Bluetooth audio

Signed-off-by: Hongyang Zhao <hongyang.zhao@thundersoft.com>
2026-03-30 15:35:12 +08:00
Le Qi
4844e46b6f ASoC: qcom: x1e80100-crd: add dedicated multimedia for DisplayPort
Add MM5 and MM6 as dedicated frontend DAIs for DisplayPort RX 0 and
RX 1 respectively, instead of sharing MM1/MM2 with speaker/headphone
playback.

Update device subgraph instance IDs to avoid conflicts with the newly
added MM5/MM6 stream subgraphs.

Signed-off-by: Le Qi <le.qi@oss.qualcomm.com>
2026-03-19 15:12:36 +08:00
Srinivas Kandagatla
cf0c2eb027
audioreach: glymur: Add initial topology for GLYMUR-CRD (#53)
Add initial topology for GLYMUR-CRD board.

Enbled WSA speaker Amplifier and internal Microphone.
2026-03-11 17:20:17 +00:00
Aiyaz Patel
4b251a82fe LEMANS-EVK: Add compress offload playback support for MultiMedia3
This change enables compress offload playback support on LEMANS-EVK by
adding a dedicated MultiMedia3 playback subgraph and routing it to the
PRIMARY_MI2S_RX path.

Key changes:
  * Added a STREAM_SG_PCM_ADD() entry using the
    subgraph-compress-stream-vol-playback.m4 template
  * Enabled MultiMedia3 as a playback frontend for PRIMARY_MI2S_RX in
    mixer and routing definitions
  * Updated routing to include the
    'MultiMedia3, stream2.logger1' path

Signed-off-by: Aiyaz Patel <aiyapate@qti.qualcomm.com>
2026-03-09 16:21:07 +05:30
Mohammad Rafi Shaik
4cd700499b audioreach: glymur: Add initial topology for GLYMUR-CRD
Add initial topology for GLYMUR-CRD board.

Signed-off-by: Mohammad Rafi Shaik <mohammad.rafi.shaik@oss.qualcomm.com>
2026-03-04 14:45:56 +05:30
Srinivas Kandagatla
164b9d4556
audioreach: add new lpaif interface types (#50)
Add new LPAIF interface types that are supported by the DSP.

For more info:
7a76df6776/spf/api/modules/hw_intf_cmn_api.h (L36)
2026-02-27 08:25:58 +00:00
Srinivas Kandagatla
9aa0ccc39a audioreach: add new lpaif interface types
Add new LPAIF interface types that are supported by the DSP.

For more info:
7a76df6776/spf/api/modules/hw_intf_cmn_api.h (L36)

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@oss.qualcomm.com>
2026-02-22 08:59:38 +00:00
Srinivas Kandagatla
898e2bb317
audioreach: qcm6490-idp: Fix the stream logger connection for headset playback (#51)
Headset playback fails due to invalid stream logger connection.
RX_CODEC_DMA_RX_0 playback route was incorrectly connected to
stream1.logger1, causing graph/topology mismatch. Route it back to
stream2.logger1.
2026-02-22 08:57:44 +00:00
Mohammad Rafi Shaik
c8dd17ee3a audioreach: qcm6490-idp: Fix the stream logger connection for headset playback
Headset playback fails due to invalid stream logger connection.
RX_CODEC_DMA_RX_0 playback route was incorrectly connected to stream1.logger1,
causing graph/topology mismatch. Route it back to stream2.logger1.

Signed-off-by: Mohammad Rafi Shaik <mohammad.rafi.shaik@oss.qualcomm.com>
2026-02-20 15:06:00 +05:30
Dmitry Baryshkov
6d23a0fbab
audioreach: i2s_module: fix stream name (#49)
For some reason we ended up with incorrect stream name for the i2s
module, the stream prefix is in 13th param.
2026-02-09 11:11:05 +02:00
Srinivas Kandagatla
d62ed26ea4 audioreach: i2s_module: fix stream name
For some reason we ended up with incorrect stream name for the i2s
module, the stream prefix is in 13th param.

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@oss.qualcomm.com>
2026-02-01 08:11:26 +00:00
Srinivas Kandagatla
c93411ad18
Fix channel max for lemans monaco (#47)
The MONACO-EVK and LEMANS-EVK capture frontend for MultiMedia2 currently
constrains
channels to mono (min=1, max=1). This prevents opening the PCM with
2-channel (stereo) configurations and typically leads to:
  arecord: audio open error: Invalid argument

Update the STREAM_SG_PCM_ADD() parameters to allow up to 2 channels
(min=1, max=2) for S16_LE at 48 kHz. This aligns the front-end PCM
capability with common SoC/codec routes that can support stereo capture,
while preserving backward compatibility with mono.
2026-01-21 07:35:53 +00:00
mohsRafi
f3f7941c3b
Merge branch 'main' into Fix_channel_max_for_LEMANS_MONACO 2026-01-21 07:02:15 +05:30
Srinivas Kandagatla
089991c1b7
kaanapali: Reuse SM8550 topology for Kaanapali (#31)
Add support for kaanapali-mtp topology with reuse of SM8550.

Added support for Kaanapali-MTP topology by reusing the existing SM8550
configuration. Validated speaker playback and microphone recording
functionality on Kaanapali-MTP hardware using the generated topology
file.
2026-01-20 10:05:02 +00:00
Mohammad Rafi Shaik
2b5a66a2b7 audioreach: monaco-evk: Enable stereo capture on MultiMedia2 frontend
The MONACO-EVK capture frontend for MultiMedia2 currently constrains
channels to mono (min=1, max=1). This prevents opening the PCM with
2-channel (stereo) configurations and typically leads to:
  arecord: audio open error: Invalid argument

Update the STREAM_SG_PCM_ADD() parameters to allow up to 2 channels
(min=1, max=2) for S16_LE at 48 kHz. This aligns the front-end PCM
capability with common SoC/codec routes that can support stereo capture,
while preserving backward compatibility with mono.

Signed-off-by: Mohammad Rafi Shaik <mohammad.rafi.shaik@oss.qualcomm.com>
2026-01-19 22:39:32 +05:30
Mohammad Rafi Shaik
2a548b1f96 audioreach: lemans-evk: Enable stereo capture on MultiMedia2 frontend
The LEMANS-EVK capture frontend for MultiMedia2 currently constrains
channels to mono (min=1, max=1). This prevents opening the PCM with
2-channel (stereo) configurations and typically leads to:
  arecord: audio open error: Invalid argument

Update the STREAM_SG_PCM_ADD() parameters to allow up to 2 channels
(min=1, max=2) for S16_LE at 48 kHz. This aligns the front-end PCM
capability with common SoC/codec routes that can support stereo capture,
while preserving backward compatibility with mono.

Signed-off-by: Mohammad Rafi Shaik <mohammad.rafi.shaik@oss.qualcomm.com>
2026-01-19 22:38:45 +05:30
Srinivas Kandagatla
f3bbc9f5cf
Sync more topologies to linux-firmware (#44)
Sync topologies for several X Elite laptops and for SM8450 platforms.

Lenovo ThinkBook 16 is still not to be synced to linux-firmware. It has
X1P42100 SoC, it uses qcom/x1p42100/ for all other firmware. It is
unlogical to me to use qcom/x1e80100 only for the topology file.
2026-01-09 10:13:47 +00:00
Srinivas Kandagatla
2efb4259f3
Merge branch 'main' into fix-paths
Signed-off-by: Srinivas Kandagatla <srini@kernel.org>
2026-01-09 09:01:45 +00:00
Srinivas Kandagatla
29c6e18c9b
audioreach: qcs615: Add topology for TALOS-EVK (#38)
Add initial topology for TALOS-EVK board. The TALOS-EVK board features a
DA7212 audio codec connected via I2S interface.
2026-01-09 08:51:26 +00:00
Srinivas Kandagatla
f8803a923b
Merge branch 'main' into Talos-evk
Signed-off-by: Srinivas Kandagatla <srini@kernel.org>
2026-01-09 06:41:09 +00:00
Dmitry Baryshkov
ada4eaef91
audioreach: qcs6490: add Thundercomm RubikPi3 (#42)
RUBIK Pi 3 (https://rubikpi.ai/), a lightweight development board based
on
Qualcomm Dragonwing™ QCS6490 platform, is the first Pi built on Qualcomm
AI platforms for developers.


Full specs:
* Headphone jack using ES8316 codec.
* Onboard DSI to HDMI bridge, using Lontium LT9611, supports HDMI OUT
audio.
* The TERTIARY_MI2S can be used via a 40-pin GPIO connector (unused by
default).

The kernel device tree going to be upstreamed soon.
2026-01-01 23:31:44 +02:00
Dmitry Baryshkov
63cb9374e1
Add support for Asus Vivobook 16 (#43)
Add support for Asus Vivobook 16 (F1607QA) with Snapdragon X1 SoC. This
device topology is nearly identical to Lenovo Thinkpad T14s or Asus
Vivobook S15.
2026-01-01 23:24:04 +02:00
Prasad Kumpatla
0339976be9 kaanapali: Reuse SM8550 topology for Kaanapali
Add support for kaanapali-mtp topology with reuse of
SM8550.

Signed-off-by: Prasad Kumpatla <prasad.kumpatla@oss.qualcomm.com>
2025-12-30 13:17:06 +05:30
Hongyang Zhao
826969beff audioreach: qcs6490: add Thundercomm RubikPi3
Signed-off-by: Meng Li <limeng0715@thundersoft.com>
Signed-off-by: Hongyang Zhao <hongyang.zhao@thundersoft.com>
2025-12-30 14:59:00 +08:00
Kellerman Rivero
744161325e x1e80100: Add Asus Vivobook 16 (F1607QA)
Alias to Lenovo Thinkpad T14s & Asus Vivobook S15, identical configuration.

Signed-off-by: Kellerman Rivero <krsloco@gmail.com>
2025-12-29 22:31:39 +01:00
Mohammad Rafi Shaik
7e5ef96b51 audioreach: qcs615: Add topology for TALOS-EVK
Add initial topology for TALOS-EVK board. The TALOS-EVK  board features
a DA7212 audio codec connected via I2S interface.

Signed-off-by: Mohammad Rafi Shaik <mohammad.rafi.shaik@oss.qualcomm.com>
2025-12-29 19:12:55 +02:00
Dmitry Baryshkov
1556daff57 CMakeLists.txt: unblock SM8450 topology from being synced
SM8450 started to use qcom/sm8450/ subdir for the firmware,
correspondingly unblock the topology to be synced to linux-firmware.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
2025-12-29 18:54:55 +02:00
Dmitry Baryshkov
528cdda44e CMakeLists.txt: unblock topologies for several laptops
Unblock laptops present in the upstream Linux.

Lenovo ThinkBook 16 is still not to be synced to linux-firmware. It has
X1P42100 SoC, it uses qcom/x1p42100/ for all other firmware. It is
unlogical to me to use qcom/x1e80100 only for the topology file.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
2025-12-29 18:49:33 +02:00
Krzysztof Kozlowski
1d75d4ff78 audioreach: x1e80100-t14s: Add audio on DisplayPort/USB and HDMI
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
2025-12-29 18:18:20 +02:00
ks5-dev
8911ae48c6
audioreach: qcs6490: update topology for QCS6490-RB3Gen2 (#40)
update topology to support HDMI and DP audio playback.

Signed-off-by: karthik.s <karthik.s@oss.qualcomm.com>
Co-authored-by: Srinivas Kandagatla <srini@kernel.org>
2025-12-17 11:28:12 +00:00
Dmitry Baryshkov
2c72b618ee
CMakeLists.txt: stop excluding several platforms (#41)
Drop X1E80100, SM8750, QCM6490 and Dragon Q6A from the exclude list as
those platforms got audio DSP firmware in the linux-firmware repo.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
2025-12-16 06:06:45 +00:00
mohsRafi
d2152f93c3
audioreach: lemans-evk: Switch I2S data line from SD1 to SD0 for playback (#37)
Change the I2S data line configuration from SD1 to SD0 for audio playback
on the Lemans-EVK board. The same speaker amplifier is connected to both
SD1 and SD0 data lines on the EVK board, but the DVT and PVT board variants
only support SD0.

This change enables a unified configuration that works across all board
variants (EVK, DVT, and PVT), simplifying maintenance and ensuring audio
playback functionality on all Lemans platform versions.

Signed-off-by: Mohammad Rafi Shaik <mohammad.rafi.shaik@oss.qualcomm.com>
2025-11-10 10:38:18 +00:00
Srinivas Kandagatla
1de1cdc8a1
Merge pull request #35 from lumag/install
Support installing the topology files
2025-09-19 09:42:42 +01:00
Dmitry Baryshkov
c9263c4dbe audioreach: support installing the firmware
Run 'cmake && make install DESTDIR=/lib/firmware' in order to update
files in the rootfs.

Run 'cmake -DSYNCFW=TRUE && make install DESTDIR=../linux-firmware' in
order to update files in linux-firmware.

It is expected and recommended that by default all new topologies get
synced to linux-firmware, thus add a skiplist instead of includelist.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
2025-09-18 15:38:54 +03:00
Dmitry Baryshkov
c405fc09e5 audioreach: correct binary output target
The command to generate topology binaries outputs the file to
${outputdir}. Correct CMake commands to let it know about the correct
binary location.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
2025-09-18 15:38:54 +03:00
Dmitry Baryshkov
0929dfb5be audioreach: move Lemans EVK topology from qcs9100 to sa8775p subdir
The rest of the firmware for Lemans is using sa8775p subdir, the
top-level compatibility for the platform also declares qcom,sa8775p.
Be consistent and move audioreach topology file to qcom/sa8775p/ subdir.

Cc: Srinivas Kandagatla <srinivas.kandagatla@oss.qualcomm.com>
Cc: Mohammad Rafi Shaik <mohammad.rafi.shaik@oss.qualcomm.com>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
2025-09-18 15:38:54 +03:00
Dmitry Baryshkov
8f36d3260d audioreach: move Monaco EVK topology from qcs8275 to qcs8300 subdir
The rest of the firmware for Monaco is using qcs8300 subdir, the
top-level compatibility for the platform also declares qcom,qcs8300.
Be consistent and move audioreach topology file to qcom/qcs8300/ subdir.

Cc: Srinivas Kandagatla <srinivas.kandagatla@oss.qualcomm.com>
Cc: Mohammad Rafi Shaik <mohammad.rafi.shaik@oss.qualcomm.com>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
2025-09-05 16:39:15 +03:00
Dmitry Baryshkov
d5980755b1 audioreach: drop extra subdirs
Drop subdirs from Lemans-EVK, Monaco-EVK, QCM6490-IDP and QCS6490
RB3Gen2 entris in order to make generated locations match the ones in
linux-firmware.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
2025-09-05 15:01:46 +03:00
Srinivas Kandagatla
c488b5dbf5
Merge pull request #34 from ReaLcdcLeQi/add-hamoa-evk-support
Add topology for X1E80100-EVK
2025-09-04 08:04:20 +01:00
leqi
89570f1cf8 Add topology for X1E80100-EVK.
The dts upstream is already in progress.
https://lore.kernel.org/all/20250828-hamoa_initial-v8-3-c9d173072a5c@oss.qualcomm.com/

Signed-off-by: leqi <leqi@qti.qualcomm.com>
2025-09-04 10:08:06 +08:00
Srinivas Kandagatla
5cf07da2cd
Merge pull request #29 from mohsRafi/Topology_for_LEMANS_MONACO_EVK
Topology for LEMANS-EVK and MONACO-EVK Qualcomm boards.
2025-09-02 11:11:58 +01:00
Mohammad Rafi Shaik
9e0ab959c6 audioreach: QCS8275: Add MONACO-EVK topology support
Add initial topology for MONACO-EVK Qualcomm board

Signed-off-by: Mohammad Rafi Shaik <mohammad.rafi.shaik@oss.qualcomm.com>
2025-09-01 15:38:32 +05:30
Mohammad Rafi Shaik
4dc3aa4d15 audioreach: QCS9100: Add LEMANS-EVK topology support
Add initial topology for LEMANS-EVK Qualcomm board.

Signed-off-by: Mohammad Rafi Shaik <mohammad.rafi.shaik@oss.qualcomm.com>
2025-09-01 15:38:29 +05:30
Mohammad Rafi Shaik
68ddd71b35 audioreach: i2s-capture: Add i2s capture subgraph support
Add I2S Capture subgraph support and provide the support for
LPAIF_SDR type.

Signed-off-by: Mohammad Rafi Shaik <mohammad.rafi.shaik@oss.qualcomm.com>
2025-09-01 15:30:10 +05:30
Srini
81db8581a0
Merge pull request #27 from mohsRafi/Update-QCS6490-RB3Gen2-tplg-name
Update-QCS6490-RB3Gen2-tplg-name
2025-08-31 10:06:54 +01:00