audio_modules.bzl 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466
  1. load(":module_mgr.bzl", "create_module_registry")
  2. DSP_PATH = "dsp"
  3. IPC_PATH = "ipc"
  4. SOC_PATH = "soc"
  5. ASOC_PATH = "asoc"
  6. ASOC_CODECS_PATH = ASOC_PATH + "/codecs"
  7. ASOC_CODECS_LPASS_CDC_PATH = ASOC_CODECS_PATH + "/lpass-cdc"
  8. ASOC_CODECS_BOLERO_PATH = ASOC_CODECS_PATH + "/bolero"
  9. audio_modules = create_module_registry([":audio_headers"])
  10. # ------------------------------------ AUDIO MODULE DEFINITIONS ---------------------------------
  11. # >>>> DSP MODULES <<<<
  12. audio_modules.register(
  13. name = "q6_dlkm",
  14. path = DSP_PATH,
  15. conditional_srcs = {
  16. "CONFIG_SND_SOC_MSM_QDSP6V2_INTF": [
  17. "msm-audio-event-notify.c",
  18. "q6_init.c",
  19. ],
  20. "CONFIG_SND_SOC_MSM_QDSP6V2_VM": [
  21. "msm-audio-event-notify.c",
  22. "msm_audio_ion_vm.c",
  23. "q6_init.c",
  24. ],
  25. "CONFIG_MSM_AVTIMER": [
  26. "avtimer.c"
  27. ],
  28. "CONFIG_XT_LOGGING": [
  29. "sp_params.c"
  30. ]
  31. }
  32. )
  33. audio_modules.register(
  34. name = "spf_core_dlkm",
  35. path = DSP_PATH,
  36. config_option = "CONFIG_SPF_CORE",
  37. srcs = ["spf-core.c"],
  38. conditional_srcs = {
  39. "CONFIG_DIGITAL_CDC_RSC_MGR": [
  40. "digital-cdc-rsc-mgr.c"
  41. ]
  42. }
  43. )
  44. audio_modules.register(
  45. name = "audpkt_ion_dlkm",
  46. path = DSP_PATH,
  47. config_option = "CONFIG_AUDIO_PKT_ION",
  48. srcs = ["msm_audio_ion.c"]
  49. )
  50. audio_modules.register(
  51. name = "q6_notifier_dlkm",
  52. path = DSP_PATH,
  53. config_option = "CONFIG_MSM_QDSP6_NOTIFIER",
  54. srcs = [
  55. "audio_notifier.c",
  56. "audio_ssr.c"
  57. ],
  58. )
  59. audio_modules.register(
  60. name = "adsp_loader_dlkm",
  61. path = DSP_PATH,
  62. config_option = "CONFIG_MSM_ADSP_LOADER",
  63. srcs = ["adsp-loader.c"],
  64. )
  65. audio_modules.register(
  66. name = "audio_prm_dlkm",
  67. path = DSP_PATH,
  68. config_option = "CONFIG_AUDIO_PRM",
  69. srcs = ["audio_prm.c"],
  70. )
  71. audio_modules.register(
  72. name = "q6_pdr_dlkm",
  73. path = DSP_PATH,
  74. config_option = "CONFIG_MSM_QDSP6_PDR",
  75. srcs = ["audio_pdr.c"]
  76. )
  77. # >>>> IPC MODULES <<<<
  78. audio_modules.register(
  79. name = "gpr_dlkm",
  80. path = IPC_PATH,
  81. config_option = "CONFIG_MSM_QDSP6_GPR_RPMSG",
  82. srcs = ["gpr-lite.c"],
  83. )
  84. audio_modules.register(
  85. name = "audio_pkt_dlkm",
  86. path = IPC_PATH,
  87. config_option = "CONFIG_AUDIO_PKT",
  88. srcs = ["audio-pkt.c"],
  89. )
  90. # >>>> SOC MODULES <<<<
  91. audio_modules.register(
  92. name = "pinctrl_lpi_dlkm",
  93. path = SOC_PATH,
  94. config_option = "CONFIG_PINCTRL_LPI",
  95. srcs = ["pinctrl-lpi.c"],
  96. )
  97. audio_modules.register(
  98. name = "swr_dlkm",
  99. path = SOC_PATH,
  100. config_option = "CONFIG_SOUNDWIRE",
  101. srcs = [
  102. "regmap-swr.c",
  103. "soundwire.c"
  104. ]
  105. )
  106. audio_modules.register(
  107. name = "swr_ctrl_dlkm",
  108. path = SOC_PATH,
  109. conditional_srcs = {
  110. "CONFIG_SOUNDWIRE_WCD_CTRL": [
  111. "swr-wcd-ctrl.c"
  112. ],
  113. "CONFIG_SOUNDWIRE_MSTR_CTRL": [
  114. "swr-mstr-ctrl.c"
  115. ]
  116. },
  117. )
  118. audio_modules.register(
  119. name = "snd_event_dlkm",
  120. path = SOC_PATH,
  121. config_option = "CONFIG_SND_EVENT",
  122. srcs = ["snd_event.c"]
  123. )
  124. # >>>> ASOC MODULES <<<<
  125. audio_modules.register(
  126. name = "machine_dlkm",
  127. path = ASOC_PATH,
  128. srcs = [
  129. "msm_common.c",
  130. ],
  131. conditional_srcs = {
  132. "CONFIG_SND_SOC_SM8150": [
  133. "sm8150.c",
  134. "machine_815x_init.c"
  135. ],
  136. "CONFIG_SND_SOC_SM6150": [
  137. "sm6150.c",
  138. "machine_615x_init.c"
  139. ],
  140. "CONFIG_SND_SOC_SA6155": [
  141. "sa6155.c"
  142. ],
  143. "CONFIG_SND_SOC_QCS405": [
  144. "qcs405.c"
  145. ],
  146. "CONFIG_SND_SOC_KONA": [
  147. "kona.c"
  148. ],
  149. "CONFIG_SND_SOC_LAHAINA": [
  150. "lahaina.c"
  151. ],
  152. "CONFIG_SND_SOC_WAIPIO": [
  153. "waipio.c"
  154. ],
  155. "CONFIG_SND_SOC_KALAMA": [
  156. "kalama.c"
  157. ],
  158. "CONFIG_SND_SOC_PINEAPPLE": [
  159. "pineapple.c"
  160. ],
  161. "CONFIG_SND_SOC_PITTI": [
  162. "pineapple.c"
  163. ],
  164. "CONFIG_SND_SOC_VOLCANO": [
  165. "pineapple.c"
  166. ],
  167. "CONFIG_SND_SOC_NIOBE": [
  168. "pineapple.c"
  169. ],
  170. "CONFIG_SND_SOC_HOLI": [
  171. "holi.c"
  172. ],
  173. "CONFIG_SND_SOC_LITO": [
  174. "kona.c"
  175. ],
  176. "CONFIG_SND_SOC_BENGAL": [
  177. "bengal.c"
  178. ],
  179. "CONFIG_SND_SOC_SA8155": [
  180. "sa8155.c"
  181. ],
  182. "CONFIG_SND_SOC_SDX": [
  183. "sdx-target.c"
  184. ]
  185. },
  186. )
  187. # >>>> ASOC/CODEC MODULES <<<<
  188. audio_modules.register(
  189. name = "wcd_core_dlkm",
  190. path = ASOC_CODECS_PATH,
  191. conditional_srcs = {
  192. "CONFIG_WCD9XXX_CODEC_CORE": [
  193. "wcd9xxx-rst.c",
  194. "wcd9xxx-core-init.c",
  195. "wcd9xxx-core.c",
  196. "wcd9xxx-irq.c",
  197. "wcd9xxx-slimslave.c",
  198. "wcd9xxx-utils.c",
  199. "wcd9335-regmap.c",
  200. "wcd9335-tables.c",
  201. "msm-cdc-pinctrl.c",
  202. "msm-cdc-supply.c",
  203. "wcd934x/wcd934x-regmap.c",
  204. "wcd934x/wcd934x-tables.c",
  205. ],
  206. "CONFIG_WCD9XXX_CODEC_CORE_V2": [
  207. "wcd9xxx-core-init.c",
  208. "msm-cdc-pinctrl.c",
  209. "msm-cdc-supply.c",
  210. ],
  211. "CONFIG_SND_SOC_WCD_IRQ": [
  212. "wcd-irq.c"
  213. ]
  214. }
  215. )
  216. audio_modules.register(
  217. name = "mbhc_dlkm",
  218. path = ASOC_CODECS_PATH,
  219. config_option = "CONFIG_SND_SOC_WCD_MBHC",
  220. srcs = ["wcd-mbhc-v2.c"],
  221. conditional_srcs = {
  222. "CONFIG_SND_SOC_WCD_MBHC_ADC": [
  223. "wcd-mbhc-adc.c"
  224. ],
  225. "CONFIG_SND_SOC_WCD_MBHC_LEGACY": [
  226. "wcd-mbhc-legacy.c"
  227. ]
  228. },
  229. )
  230. audio_modules.register(
  231. name = "swr_dmic_dlkm",
  232. path = ASOC_CODECS_PATH,
  233. config_option = "CONFIG_SND_SOC_SWR_DMIC",
  234. srcs = ["swr-dmic.c"]
  235. )
  236. audio_modules.register(
  237. name = "wcd9xxx_dlkm",
  238. path = ASOC_CODECS_PATH,
  239. config_option = "CONFIG_SND_SOC_WCD9XXX_V2",
  240. srcs = [
  241. "wcdcal-hwdep.c",
  242. "wcd9xxx-soc-init.c",
  243. "audio-ext-clk-up.c"
  244. ],
  245. conditional_srcs = {
  246. "CONFIG_WCD9XXX_CODEC_CORE": {
  247. True: [
  248. "wcd9xxx-common-v2.c",
  249. "wcd9xxx-resmgr-v2.c",
  250. "wcd-dsp-utils.c",
  251. "wcd-dsp-mgr.c",
  252. ],
  253. False: [
  254. "wcd-clsh.c"
  255. ]
  256. }
  257. }
  258. )
  259. audio_modules.register(
  260. name = "swr_haptics_dlkm",
  261. path = ASOC_CODECS_PATH,
  262. config_option = "CONFIG_SND_SWR_HAPTICS",
  263. srcs = ["swr-haptics.c"]
  264. )
  265. audio_modules.register(
  266. name = "stub_dlkm",
  267. path = ASOC_CODECS_PATH,
  268. config_option = "CONFIG_SND_SOC_MSM_STUB",
  269. srcs = ["msm_stub.c"]
  270. )
  271. audio_modules.register(
  272. name = "hdmi_dlkm",
  273. path = ASOC_CODECS_PATH,
  274. config_option = "CONFIG_SND_SOC_MSM_HDMI_CODEC_RX",
  275. srcs = ["msm_hdmi_codec_rx.c"],
  276. deps = ["//vendor/qcom/opensource/mm-drivers/msm_ext_display:%b_msm_ext_display"]
  277. )
  278. # >>>> ASOC/CODECS/LPASS-CDC MODULES <<<<
  279. audio_modules.register(
  280. name = "lpass_cdc_dlkm",
  281. path = ASOC_CODECS_LPASS_CDC_PATH,
  282. config_option = "CONFIG_SND_SOC_LPASS_CDC",
  283. srcs = [
  284. "lpass-cdc.c",
  285. "lpass-cdc-comp.c",
  286. "lpass-cdc-utils.c",
  287. "lpass-cdc-regmap.c",
  288. "lpass-cdc-tables.c",
  289. "lpass-cdc-clk-rsc.c",
  290. ],
  291. )
  292. audio_modules.register(
  293. name = "lpass_cdc_wsa_macro_dlkm",
  294. path = ASOC_CODECS_LPASS_CDC_PATH,
  295. config_option = "CONFIG_LPASS_CDC_WSA_MACRO",
  296. srcs = ["lpass-cdc-wsa-macro.c"]
  297. )
  298. audio_modules.register(
  299. name = "lpass_cdc_wsa2_macro_dlkm",
  300. path = ASOC_CODECS_LPASS_CDC_PATH,
  301. config_option = "CONFIG_LPASS_CDC_WSA2_MACRO",
  302. srcs = ["lpass-cdc-wsa2-macro.c"]
  303. )
  304. audio_modules.register(
  305. name = "lpass_cdc_va_macro_dlkm",
  306. path = ASOC_CODECS_LPASS_CDC_PATH,
  307. config_option = "CONFIG_LPASS_CDC_VA_MACRO",
  308. srcs = ["lpass-cdc-va-macro.c"]
  309. )
  310. audio_modules.register(
  311. name = "lpass_cdc_rx_macro_dlkm",
  312. path = ASOC_CODECS_LPASS_CDC_PATH,
  313. config_option = "CONFIG_LPASS_CDC_RX_MACRO",
  314. srcs = ["lpass-cdc-rx-macro.c"],
  315. )
  316. audio_modules.register(
  317. name = "lpass_cdc_tx_macro_dlkm",
  318. path = ASOC_CODECS_LPASS_CDC_PATH,
  319. config_option = "CONFIG_LPASS_CDC_TX_MACRO",
  320. srcs = ["lpass-cdc-tx-macro.c"]
  321. )
  322. # >>>> ASOC/CODECS/BOLERO MODULES <<<<
  323. audio_modules.register(
  324. name = "bolero_cdc_dlkm",
  325. path = ASOC_CODECS_BOLERO_PATH,
  326. config_option = "CONFIG_SND_SOC_BOLERO",
  327. srcs = [
  328. "bolero-cdc.c",
  329. "bolero-cdc-utils.c",
  330. "bolero-cdc-regmap.c",
  331. "bolero-cdc-tables.c",
  332. "bolero-clk-rsc.c",
  333. ],
  334. )
  335. audio_modules.register(
  336. name = "va_macro_dlkm",
  337. path = ASOC_CODECS_BOLERO_PATH,
  338. config_option = "CONFIG_VA_MACRO",
  339. srcs = ["va-macro.c"]
  340. )
  341. audio_modules.register(
  342. name = "rx_macro_dlkm",
  343. path = ASOC_CODECS_BOLERO_PATH,
  344. config_option = "CONFIG_RX_MACRO",
  345. srcs = ["rx-macro.c"]
  346. )
  347. audio_modules.register(
  348. name = "tx_macro_dlkm",
  349. path = ASOC_CODECS_BOLERO_PATH,
  350. config_option = "CONFIG_TX_MACRO",
  351. srcs = ["tx-macro.c"]
  352. )
  353. # >>>> WSA881X-ANALOG MODULE <<<<
  354. audio_modules.register(
  355. name = "wsa881x_analog_dlkm",
  356. path = ASOC_CODECS_PATH,
  357. config_option = "CONFIG_SND_SOC_WSA881X_ANALOG",
  358. srcs = [
  359. "wsa881x-analog.c",
  360. "wsa881x-tables-analog.c",
  361. "wsa881x-regmap-analog.c",
  362. ],
  363. conditional_srcs = {
  364. "CONFIG_WSA881X_TEMP_SENSOR_DISABLE": {
  365. False: [
  366. "wsa881x-temp-sensor.c"
  367. ]
  368. }
  369. }
  370. )
  371. # >>>> WSA883X MODULE <<<<
  372. audio_modules.register(
  373. name = "wsa883x_dlkm",
  374. path = ASOC_CODECS_PATH + "/wsa883x",
  375. config_option = "CONFIG_SND_SOC_WSA883X",
  376. srcs = [
  377. "wsa883x.c",
  378. "wsa883x-regmap.c",
  379. "wsa883x-tables.c",
  380. ],
  381. )
  382. # >>>> WSA884X MODULE <<<<
  383. audio_modules.register(
  384. name = "wsa884x_dlkm",
  385. path = ASOC_CODECS_PATH + "/wsa884x",
  386. config_option = "CONFIG_SND_SOC_WSA884X",
  387. srcs = [
  388. "wsa884x.c",
  389. "wsa884x-regmap.c",
  390. "wsa884x-tables.c",
  391. ]
  392. )
  393. # >>>> WCD937X MODULES <<<<
  394. audio_modules.register(
  395. name = "wcd937x_dlkm",
  396. path = ASOC_CODECS_PATH + "/wcd937x",
  397. config_option = "CONFIG_SND_SOC_WCD937X",
  398. srcs = [
  399. "wcd937x.c",
  400. "wcd937x-regmap.c",
  401. "wcd937x-tables.c",
  402. "wcd937x-mbhc.c",
  403. ]
  404. )
  405. audio_modules.register(
  406. name = "wcd937x_slave_dlkm",
  407. path = ASOC_CODECS_PATH + "/wcd937x",
  408. config_option = "CONFIG_SND_SOC_WCD937X_SLAVE",
  409. srcs = ["wcd937x_slave.c"]
  410. )
  411. # >>>> WCD938X MODULES <<<<
  412. audio_modules.register(
  413. name = "wcd938x_dlkm",
  414. path = ASOC_CODECS_PATH + "/wcd938x",
  415. config_option = "CONFIG_SND_SOC_WCD938X",
  416. srcs = [
  417. "wcd938x.c",
  418. "wcd938x-regmap.c",
  419. "wcd938x-tables.c",
  420. "wcd938x-mbhc.c",
  421. ]
  422. )
  423. audio_modules.register(
  424. name = "wcd938x_slave_dlkm",
  425. path = ASOC_CODECS_PATH + "/wcd938x",
  426. config_option = "CONFIG_SND_SOC_WCD938X_SLAVE",
  427. srcs = ["wcd938x-slave.c"]
  428. )
  429. # >>>> WCD939X MODULES <<<<
  430. audio_modules.register(
  431. name = "wcd939x_dlkm",
  432. path = ASOC_CODECS_PATH + "/wcd939x",
  433. config_option = "CONFIG_SND_SOC_WCD939X",
  434. srcs = [
  435. "wcd939x.c",
  436. "wcd939x-regmap.c",
  437. "wcd939x-tables.c",
  438. "wcd939x-mbhc.c",
  439. ]
  440. )
  441. audio_modules.register(
  442. name = "wcd939x_slave_dlkm",
  443. path = ASOC_CODECS_PATH + "/wcd939x",
  444. config_option = "CONFIG_SND_SOC_WCD939X_SLAVE",
  445. srcs = ["wcd939x-slave.c"]
  446. )
  447. # >>>> WCD9378 MODULES <<<<
  448. audio_modules.register(
  449. name = "wcd9378_dlkm",
  450. path = ASOC_CODECS_PATH + "/wcd9378",
  451. config_option = "CONFIG_SND_SOC_WCD9378",
  452. srcs = [
  453. "wcd9378.c",
  454. "wcd9378-regmap.c",
  455. "wcd9378-tables.c",
  456. "wcd9378-mbhc.c",
  457. ]
  458. )
  459. audio_modules.register(
  460. name = "wcd9378_slave_dlkm",
  461. path = ASOC_CODECS_PATH + "/wcd9378",
  462. config_option = "CONFIG_SND_SOC_WCD9378_SLAVE",
  463. srcs = ["wcd9378-slave.c"]
  464. )