Add initial topology for GLYMUR-CRD board. Signed-off-by: Mohammad Rafi Shaik <mohammad.rafi.shaik@oss.qualcomm.com>
87 lines
4.1 KiB
CMake
87 lines
4.1 KiB
CMake
# SPDX-License-Identifier: BSD-3-Clause
|
|
# With inspiration from SoF
|
|
cmake_minimum_required(VERSION 3.10)
|
|
# Array of "input-file-name;output-file-name;"
|
|
set(TPLGS
|
|
"LEMANS-EVK\;LEMANS-EVK\;qcom/sa8775p\;"
|
|
"MONACO-EVK\;MONACO-EVK\;qcom/qcs8300\;"
|
|
"Qualcomm-RB5-WSA8815-Speakers-DMIC0\;Qualcomm-RB5-WSA8815-Speakers-DMIC0\;qcom/sm8250\;"
|
|
"Qualcomm-RB5-WSA8815-Speakers-DMIC0-compress\;Qualcomm-RB5-WSA8815-Speakers-DMIC0-compress\;qcom/sm8250\;"
|
|
"SM8250-MTP-WCD9380-WSA8810-VA-DMIC\;SM8250-MTP-WCD9380-WSA8810-VA-DMIC\;qcom/sm8250\;"
|
|
"SM8450-HDK\;SM8450-HDK\;qcom/sm8450\;"
|
|
"SM8550-HDK\;Kaanapali-MTP\;qcom/kaanapali\;"
|
|
"SM8550-HDK\;SM8550-HDK\;qcom/sm8550\;"
|
|
"SM8550-HDK\;SM8550-QRD\;qcom/sm8550\;"
|
|
"SM8550-HDK\;SM8650-QRD\;qcom/sm8650\;"
|
|
"SM8550-HDK\;SM8650-MTP\;qcom/sm8650\;"
|
|
"SM8550-HDK\;SM8750-MTP\;qcom/sm8750\;"
|
|
"SM8550-HDK\;SM8750-QRD\;qcom/sm8750\;"
|
|
"SC8280XP-LENOVO-X13S\;audioreach\;qcom/sc8280xp/LENOVO/21BX\;"
|
|
"Google-SC7180-WSA-Speakers-SEC-I2S-VA-DMIC-WCD-TX3\;Google-SC7180-WSA-Speakers-SEC-I2S-VA-DMIC-WCD-TX3\;qcom/sc7180\;"
|
|
"X1E80100-CRD\;X1E80100-CRD\;qcom/x1e80100\;"
|
|
"X1E80100-CRD\;X1E80100-EVK\;qcom/x1e80100\;"
|
|
"GLYMUR-CRD\;GLYMUR-CRD\;qcom/glymur\;"
|
|
"X1E80100-CRD\;X1E001DE-DEVKIT\;qcom/x1e80100\;"
|
|
"X1E80100-CRD\;X1E80100-TUXEDO-Elite-14\;qcom/x1e80100\;"
|
|
"X1E80100-Dell-Latitude-7455\;X1E80100-Dell-Inspiron-14p-7441\;qcom/x1e80100/dell/inspiron-14-plus-7441\;"
|
|
"X1E80100-Dell-Latitude-7455\;X1E80100-Dell-Latitude-7455\;qcom/x1e80100/dell/latitude-7455\;"
|
|
"X1E80100-Dell-XPS-13-9345\;X1E80100-Dell-XPS-13-9345\;qcom/x1e80100/dell/xps13-9345\;"
|
|
"X1E80100-LENOVO-Thinkpad-T14s\;X1E80100-ASUS-Vivobook-S15\;qcom/x1e80100/ASUSTeK/vivobook-s15\;"
|
|
"X1E80100-LENOVO-Thinkpad-T14s\;X1E80100-ASUS-Vivobook-16\;qcom/x1e80100/ASUSTeK/vivobook-16\;"
|
|
"X1E80100-LENOVO-Thinkpad-T14s\;X1E80100-ASUS-Zenbook-A14\;qcom/x1e80100/ASUSTeK/zenbook-a14\;"
|
|
"X1E80100-LENOVO-Thinkpad-T14s\;X1E80100-HP-OMNIBOOK-X14\;qcom/x1e80100/hp/omnibook-x14\;"
|
|
"X1E80100-LENOVO-Thinkpad-T14s\;X1E80100-LENOVO-Thinkpad-T14s\;qcom/x1e80100/LENOVO/21N1\;"
|
|
"X1E80100-LENOVO-Thinkpad-T14s\;X1E80100-LENOVO-ThinkBook-16\;qcom/x1e80100/LENOVO/21NH\;"
|
|
"X1E80100-LENOVO-Thinkpad-T14s\;X1E80100-Romulus\;qcom/x1e80100\;"
|
|
"X1E80100-LENOVO-Yoga-Slim7x\;X1E80100-LENOVO-Yoga-Slim7x\;qcom/x1e80100/LENOVO/83ED\;"
|
|
"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\;"
|
|
"QCS6490-Thundercomm-RubikPi3\;QCS6490-Thundercomm-RubikPi3\;qcom/qcs6490/Thundercomm/RubikPi3\;"
|
|
"TALOS-EVK\;TALOS-EVK\;qcom/qcs615\;"
|
|
)
|
|
|
|
# The list of directories to skip when synchronizing to linux-firmware
|
|
set(SKIPSYNC
|
|
# These targets don't use AudioReach by default
|
|
"qcom/sc7180"
|
|
"qcom/sm8250"
|
|
# Not yet in linux-firmware
|
|
"qcom/x1e80100/LENOVO/21NH"
|
|
)
|
|
|
|
add_custom_target(topologies ALL)
|
|
|
|
set(SYNCFW FALSE CACHE BOOL "Sync only firmware expected in linux-firmware")
|
|
|
|
foreach(tplg ${TPLGS})
|
|
list(GET tplg 0 input)
|
|
list(GET tplg 1 output)
|
|
list(GET tplg 2 outputdir)
|
|
|
|
add_custom_command(
|
|
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${outputdir}/${output}.conf
|
|
COMMAND mkdir -p ${CMAKE_CURRENT_BINARY_DIR}/${outputdir}
|
|
COMMAND m4 -I ${CMAKE_CURRENT_BINARY_DIR}
|
|
-I ${CMAKE_CURRENT_SOURCE_DIR}
|
|
${CMAKE_CURRENT_SOURCE_DIR}/${input}.m4
|
|
> ${CMAKE_CURRENT_BINARY_DIR}/${outputdir}/${output}.conf
|
|
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${input}.m4
|
|
VERBATIM
|
|
USES_TERMINAL
|
|
)
|
|
add_custom_command(
|
|
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${outputdir}/${output}-tplg.bin
|
|
COMMAND alsatplg -c ${CMAKE_CURRENT_BINARY_DIR}/${outputdir}/${output}.conf -o ${CMAKE_CURRENT_BINARY_DIR}/${outputdir}/${output}-tplg.bin
|
|
DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${outputdir}/${output}.conf
|
|
VERBATIM
|
|
USES_TERMINAL
|
|
)
|
|
|
|
add_custom_target(topology_${output} DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${outputdir}/${output}-tplg.bin)
|
|
add_dependencies(topologies topology_${output})
|
|
|
|
if (NOT ${SYNCFW} OR NOT "${outputdir}" IN_LIST SKIPSYNC)
|
|
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${outputdir}/${output}-tplg.bin DESTINATION $ENV{FW_LOCATION}/${outputdir})
|
|
endif()
|
|
endforeach()
|