Skip to content

Commit 1de1cdc

Browse files
Merge pull request #35 from lumag/install
Support installing the topology files
2 parents c488b5d + c9263c4 commit 1de1cdc

File tree

1 file changed

+33
-7
lines changed

1 file changed

+33
-7
lines changed

CMakeLists.txt

Lines changed: 33 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@
33
cmake_minimum_required(VERSION 3.10)
44
# Array of "input-file-name;output-file-name;"
55
set(TPLGS
6-
"LEMANS-EVK\;LEMANS-EVK\;qcom/qcs9100/lemans-evk\;"
7-
"MONACO-EVK\;MONACO-EVK\;qcom/qcs8275/monaco-evk\;"
6+
"LEMANS-EVK\;LEMANS-EVK\;qcom/sa8775p\;"
7+
"MONACO-EVK\;MONACO-EVK\;qcom/qcs8300\;"
88
"Qualcomm-RB5-WSA8815-Speakers-DMIC0\;Qualcomm-RB5-WSA8815-Speakers-DMIC0\;qcom/sm8250\;"
99
"Qualcomm-RB5-WSA8815-Speakers-DMIC0-compress\;Qualcomm-RB5-WSA8815-Speakers-DMIC0-compress\;qcom/sm8250\;"
1010
"SM8250-MTP-WCD9380-WSA8810-VA-DMIC\;SM8250-MTP-WCD9380-WSA8810-VA-DMIC\;qcom/sm8250\;"
@@ -31,13 +31,35 @@ set(TPLGS
3131
"X1E80100-LENOVO-Thinkpad-T14s\;X1E80100-LENOVO-ThinkBook-16\;qcom/x1e80100/LENOVO/21NH\;"
3232
"X1E80100-LENOVO-Thinkpad-T14s\;X1E80100-Romulus\;qcom/x1e80100\;"
3333
"X1E80100-LENOVO-Yoga-Slim7x\;X1E80100-LENOVO-Yoga-Slim7x\;qcom/x1e80100/LENOVO/83ED\;"
34-
"QCM6490-IDP\;QCM6490-IDP\;qcom/qcm6490/qcm6490-idp\;"
34+
"QCM6490-IDP\;QCM6490-IDP\;qcom/qcm6490\;"
3535
"QCS6490-Radxa-Dragon-Q6A\;QCS6490-Radxa-Dragon-Q6A\;qcom/qcs6490/radxa/dragon-q6a\;"
36-
"QCS6490-RB3Gen2\;QCS6490-RB3Gen2\;qcom/qcs6490/qcs6490-rb3gen2\;"
36+
"QCS6490-RB3Gen2\;QCS6490-RB3Gen2\;qcom/qcs6490\;"
3737
)
3838

39+
# The list of directories to skip when synchronizing to linux-firmware
40+
set(SKIPSYNC
41+
# These targets don't use AudioReach by default
42+
"qcom/sc7180"
43+
"qcom/sm8250"
44+
# Not yet in linux-firmware
45+
"qcom/qcm6490"
46+
"qcom/qcs6490/radxa/dragon-q6a"
47+
"qcom/sm8450"
48+
"qcom/sm8750"
49+
"qcom/x1e80100/ASUSTeK/vivobook-s15"
50+
"qcom/x1e80100/ASUSTeK/zenbook-a14"
51+
"qcom/x1e80100/LENOVO/21NH"
52+
"qcom/x1e80100/dell/inspiron-14-plus-7441"
53+
"qcom/x1e80100/dell/latitude-7455"
54+
"qcom/x1e80100/dell/xps13-9345"
55+
"qcom/x1e80100/hp/omnibook-x14"
56+
"qcom/x1e80100"
57+
)
58+
3959
add_custom_target(topologies ALL)
4060

61+
set(SYNCFW FALSE CACHE BOOL "Sync only firmware expected in linux-firmware")
62+
4163
foreach(tplg ${TPLGS})
4264
list(GET tplg 0 input)
4365
list(GET tplg 1 output)
@@ -55,13 +77,17 @@ foreach(tplg ${TPLGS})
5577
USES_TERMINAL
5678
)
5779
add_custom_command(
58-
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${output}-tplg.bin
80+
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${outputdir}/${output}-tplg.bin
5981
COMMAND alsatplg -c ${CMAKE_CURRENT_BINARY_DIR}/${outputdir}/${output}.conf -o ${CMAKE_CURRENT_BINARY_DIR}/${outputdir}/${output}-tplg.bin
6082
DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${outputdir}/${output}.conf
6183
VERBATIM
6284
USES_TERMINAL
6385
)
6486

65-
add_custom_target(topology_${output} DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${output}-tplg.bin)
66-
add_dependencies(topologies topology_${output})
87+
add_custom_target(topology_${output} DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${outputdir}/${output}-tplg.bin)
88+
add_dependencies(topologies topology_${output})
89+
90+
if (NOT ${SYNCFW} OR NOT "${outputdir}" IN_LIST SKIPSYNC)
91+
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${outputdir}/${output}-tplg.bin DESTINATION $ENV{FW_LOCATION}/${outputdir})
92+
endif()
6793
endforeach()

0 commit comments

Comments
 (0)