Android.mk 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320
  1. # Android makefile for audio kernel modules
  2. UAPI_OUT := $(PRODUCT_OUT)/obj/vendor/qcom/opensource/audio-kernel/include
  3. LOCAL_PATH := $(call my-dir)
  4. ifeq ($(call is-board-platform-in-list,taro), true)
  5. $(shell mkdir -p $(PRODUCT_OUT)/obj/vendor;)
  6. $(shell mkdir -p $(PRODUCT_OUT)/obj/vendor/qcom;)
  7. $(shell mkdir -p $(PRODUCT_OUT)/obj/vendor/qcom/opensource;)
  8. $(shell mkdir -p $(PRODUCT_OUT)/obj/vendor/qcom/opensource/audio-kernel;)
  9. $(shell mkdir -p $(PRODUCT_OUT)/obj/vendor/qcom/opensource/audio-kernel/include;)
  10. $(shell mkdir -p $(UAPI_OUT)/linux;)
  11. $(shell mkdir -p $(UAPI_OUT)/sound;)
  12. $(shell rm -rf $(PRODUCT_OUT)/obj/DLKM_OBJ/vendor/qcom/opensource/audio-kernel/Module.symvers)
  13. endif
  14. ifeq ($(call is-board-platform, taro),true)
  15. AUDIO_SELECT := CONFIG_SND_SOC_WAIPIO=m
  16. endif
  17. # Build/Package only in case of supported target
  18. ifeq ($(call is-board-platform-in-list,taro), true)
  19. LOCAL_PATH := $(call my-dir)
  20. # This makefile is only for DLKM
  21. ifneq ($(findstring vendor,$(LOCAL_PATH)),)
  22. ifneq ($(findstring opensource,$(LOCAL_PATH)),)
  23. AUDIO_BLD_DIR := $(shell pwd)/vendor/qcom/opensource/audio-kernel
  24. endif # opensource
  25. DLKM_DIR := $(TOP)/device/qcom/common/dlkm
  26. ###########################################################
  27. # This is set once per LOCAL_PATH, not per (kernel) module
  28. KBUILD_OPTIONS := AUDIO_ROOT=$(AUDIO_BLD_DIR)
  29. # We are actually building audio.ko here, as per the
  30. # requirement we are specifying <chipset>_audio.ko as LOCAL_MODULE.
  31. # This means we need to rename the module to <chipset>_audio.ko
  32. # after audio.ko is built.
  33. KBUILD_OPTIONS += MODNAME=audio_dlkm
  34. KBUILD_OPTIONS += BOARD_PLATFORM=$(TARGET_BOARD_PLATFORM)
  35. KBUILD_OPTIONS += $(AUDIO_SELECT)
  36. ########################### dsp ################################
  37. include $(CLEAR_VARS)
  38. LOCAL_SRC_FILES := $(wildcard $(LOCAL_PATH)/**/*) $(wildcard $(LOCAL_PATH)/*)
  39. LOCAL_MODULE := q6_notifier_dlkm.ko
  40. LOCAL_MODULE_KBUILD_NAME := dsp/q6_notifier_dlkm.ko
  41. LOCAL_MODULE_TAGS := optional
  42. LOCAL_MODULE_DEBUG_ENABLE := true
  43. LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
  44. include $(DLKM_DIR)/Build_external_kernelmodule.mk
  45. ###########################################################
  46. include $(CLEAR_VARS)
  47. LOCAL_SRC_FILES := $(wildcard $(LOCAL_PATH)/**/*) $(wildcard $(LOCAL_PATH)/*)
  48. LOCAL_MODULE := spf_core_dlkm.ko
  49. LOCAL_MODULE_KBUILD_NAME := dsp/spf_core_dlkm.ko
  50. LOCAL_MODULE_TAGS := optional
  51. LOCAL_MODULE_DEBUG_ENABLE := true
  52. LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
  53. include $(DLKM_DIR)/Build_external_kernelmodule.mk
  54. ###########################################################
  55. include $(CLEAR_VARS)
  56. LOCAL_SRC_FILES := $(wildcard $(LOCAL_PATH)/**/*) $(wildcard $(LOCAL_PATH)/*)
  57. LOCAL_MODULE := audpkt_ion_dlkm.ko
  58. LOCAL_MODULE_KBUILD_NAME := dsp/audpkt_ion_dlkm.ko
  59. LOCAL_MODULE_TAGS := optional
  60. LOCAL_MODULE_DEBUG_ENABLE := true
  61. LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
  62. include $(DLKM_DIR)/Build_external_kernelmodule.mk
  63. ###########################################################
  64. include $(CLEAR_VARS)
  65. LOCAL_SRC_FILES := $(wildcard $(LOCAL_PATH)/**/*) $(wildcard $(LOCAL_PATH)/*)
  66. LOCAL_MODULE := gpr_dlkm.ko
  67. LOCAL_MODULE_KBUILD_NAME := ipc/gpr_dlkm.ko
  68. LOCAL_MODULE_TAGS := optional
  69. LOCAL_MODULE_DEBUG_ENABLE := true
  70. LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
  71. include $(DLKM_DIR)/Build_external_kernelmodule.mk
  72. ###########################################################
  73. include $(CLEAR_VARS)
  74. LOCAL_MODULE := audio_pkt_dlkm.ko
  75. LOCAL_MODULE_KBUILD_NAME := ipc/audio_pkt_dlkm.ko
  76. LOCAL_MODULE_TAGS := optional
  77. LOCAL_MODULE_DEBUG_ENABLE := true
  78. LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
  79. include $(DLKM_DIR)/Build_external_kernelmodule.mk
  80. ###########################################################
  81. include $(CLEAR_VARS)
  82. LOCAL_SRC_FILES := $(wildcard $(LOCAL_PATH)/**/*) $(wildcard $(LOCAL_PATH)/*)
  83. LOCAL_MODULE := q6_dlkm.ko
  84. LOCAL_MODULE_KBUILD_NAME := dsp/q6_dlkm.ko
  85. LOCAL_MODULE_TAGS := optional
  86. LOCAL_MODULE_DEBUG_ENABLE := true
  87. LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
  88. include $(DLKM_DIR)/Build_external_kernelmodule.mk
  89. ###########################################################
  90. include $(CLEAR_VARS)
  91. LOCAL_SRC_FILES := $(wildcard $(LOCAL_PATH)/**/*) $(wildcard $(LOCAL_PATH)/*)
  92. LOCAL_MODULE := adsp_loader_dlkm.ko
  93. LOCAL_MODULE_KBUILD_NAME := dsp/adsp_loader_dlkm.ko
  94. LOCAL_MODULE_TAGS := optional
  95. LOCAL_MODULE_DEBUG_ENABLE := true
  96. LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
  97. include $(DLKM_DIR)/Build_external_kernelmodule.mk
  98. ########################### ipc ################################
  99. include $(CLEAR_VARS)
  100. LOCAL_SRC_FILES := $(wildcard $(LOCAL_PATH)/**/*) $(wildcard $(LOCAL_PATH)/*)
  101. LOCAL_MODULE := audio_prm_dlkm.ko
  102. LOCAL_MODULE_KBUILD_NAME := dsp/audio_prm_dlkm.ko
  103. LOCAL_MODULE_TAGS := optional
  104. LOCAL_MODULE_DEBUG_ENABLE := true
  105. LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
  106. include $(DLKM_DIR)/Build_external_kernelmodule.mk
  107. ###########################################################
  108. include $(CLEAR_VARS)
  109. LOCAL_SRC_FILES := $(wildcard $(LOCAL_PATH)/**/*) $(wildcard $(LOCAL_PATH)/*)
  110. LOCAL_MODULE := q6_pdr_dlkm.ko
  111. LOCAL_MODULE_KBUILD_NAME := dsp/q6_pdr_dlkm.ko
  112. LOCAL_MODULE_TAGS := optional
  113. LOCAL_MODULE_DEBUG_ENABLE := true
  114. LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
  115. include $(DLKM_DIR)/Build_external_kernelmodule.mk
  116. ############################ soc ###############################
  117. include $(CLEAR_VARS)
  118. LOCAL_SRC_FILES := $(wildcard $(LOCAL_PATH)/**/*) $(wildcard $(LOCAL_PATH)/*)
  119. LOCAL_MODULE := pinctrl_lpi_dlkm.ko
  120. LOCAL_MODULE_KBUILD_NAME := soc/pinctrl_lpi_dlkm.ko
  121. LOCAL_MODULE_TAGS := optional
  122. LOCAL_MODULE_DEBUG_ENABLE := true
  123. LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
  124. include $(DLKM_DIR)/Build_external_kernelmodule.mk
  125. ###########################################################
  126. include $(CLEAR_VARS)
  127. LOCAL_SRC_FILES := $(wildcard $(LOCAL_PATH)/**/*) $(wildcard $(LOCAL_PATH)/*)
  128. LOCAL_MODULE := swr_dlkm.ko
  129. LOCAL_MODULE_KBUILD_NAME := soc/swr_dlkm.ko
  130. LOCAL_MODULE_TAGS := optional
  131. LOCAL_MODULE_DEBUG_ENABLE := true
  132. LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
  133. include $(DLKM_DIR)/Build_external_kernelmodule.mk
  134. ###########################################################
  135. include $(CLEAR_VARS)
  136. LOCAL_SRC_FILES := $(wildcard $(LOCAL_PATH)/**/*) $(wildcard $(LOCAL_PATH)/*)
  137. LOCAL_MODULE := swr_ctrl_dlkm.ko
  138. LOCAL_MODULE_KBUILD_NAME := soc/swr_ctrl_dlkm.ko
  139. LOCAL_MODULE_TAGS := optional
  140. LOCAL_MODULE_DEBUG_ENABLE := true
  141. LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
  142. include $(DLKM_DIR)/Build_external_kernelmodule.mk
  143. ###########################################################
  144. include $(CLEAR_VARS)
  145. LOCAL_SRC_FILES := $(wildcard $(LOCAL_PATH)/**/*) $(wildcard $(LOCAL_PATH)/*)
  146. LOCAL_MODULE := snd_event_dlkm.ko
  147. LOCAL_MODULE_KBUILD_NAME := soc/snd_event_dlkm.ko
  148. LOCAL_MODULE_TAGS := optional
  149. LOCAL_MODULE_DEBUG_ENABLE := true
  150. LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
  151. include $(DLKM_DIR)/Build_external_kernelmodule.mk
  152. ########################### ASOC CODEC ################################
  153. include $(CLEAR_VARS)
  154. LOCAL_SRC_FILES := $(wildcard $(LOCAL_PATH)/**/*) $(wildcard $(LOCAL_PATH)/*)
  155. LOCAL_MODULE := wcd_core_dlkm.ko
  156. LOCAL_MODULE_KBUILD_NAME := asoc/codecs/wcd_core_dlkm.ko
  157. LOCAL_MODULE_TAGS := optional
  158. LOCAL_MODULE_DEBUG_ENABLE := true
  159. LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
  160. include $(DLKM_DIR)/Build_external_kernelmodule.mk
  161. ###########################################################
  162. include $(CLEAR_VARS)
  163. LOCAL_SRC_FILES := $(wildcard $(LOCAL_PATH)/**/*) $(wildcard $(LOCAL_PATH)/*)
  164. LOCAL_MODULE := mbhc_dlkm.ko
  165. LOCAL_MODULE_KBUILD_NAME := asoc/codecs/mbhc_dlkm.ko
  166. LOCAL_MODULE_TAGS := optional
  167. LOCAL_MODULE_DEBUG_ENABLE := true
  168. LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
  169. include $(DLKM_DIR)/Build_external_kernelmodule.mk
  170. ###########################################################
  171. include $(CLEAR_VARS)
  172. LOCAL_SRC_FILES := $(wildcard $(LOCAL_PATH)/**/*) $(wildcard $(LOCAL_PATH)/*)
  173. LOCAL_MODULE := swr_dmic_dlkm.ko
  174. LOCAL_MODULE_KBUILD_NAME := asoc/codecs/swr_dmic_dlkm.ko
  175. LOCAL_MODULE_TAGS := optional
  176. LOCAL_MODULE_DEBUG_ENABLE := true
  177. LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
  178. include $(DLKM_DIR)/Build_external_kernelmodule.mk
  179. ###########################################################
  180. include $(CLEAR_VARS)
  181. LOCAL_MODULE := wcd9xxx_dlkm.ko
  182. LOCAL_MODULE_KBUILD_NAME := asoc/codecs/wcd9xxx_dlkm.ko
  183. LOCAL_MODULE_TAGS := optional
  184. LOCAL_MODULE_DEBUG_ENABLE := true
  185. LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
  186. include $(DLKM_DIR)/Build_external_kernelmodule.mk
  187. ###########################################################
  188. include $(CLEAR_VARS)
  189. LOCAL_SRC_FILES := $(wildcard $(LOCAL_PATH)/**/*) $(wildcard $(LOCAL_PATH)/*)
  190. LOCAL_MODULE := swr_haptics_dlkm.ko
  191. LOCAL_MODULE_KBUILD_NAME := asoc/codecs/swr_haptics_dlkm.ko
  192. LOCAL_MODULE_TAGS := optional
  193. LOCAL_MODULE_DEBUG_ENABLE := true
  194. LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
  195. include $(DLKM_DIR)/Build_external_kernelmodule.mk
  196. ###########################################################
  197. include $(CLEAR_VARS)
  198. LOCAL_SRC_FILES := $(wildcard $(LOCAL_PATH)/**/*) $(wildcard $(LOCAL_PATH)/*)
  199. LOCAL_MODULE := stub_dlkm.ko
  200. LOCAL_MODULE_KBUILD_NAME := asoc/codecs/stub_dlkm.ko
  201. LOCAL_MODULE_TAGS := optional
  202. LOCAL_MODULE_DEBUG_ENABLE := true
  203. LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
  204. include $(DLKM_DIR)/Build_external_kernelmodule.mk
  205. ########################### ASOC MACHINE ################################
  206. include $(CLEAR_VARS)
  207. LOCAL_SRC_FILES := $(wildcard $(LOCAL_PATH)/**/*) $(wildcard $(LOCAL_PATH)/*)
  208. LOCAL_MODULE := machine_dlkm.ko
  209. LOCAL_MODULE_KBUILD_NAME := asoc/machine_dlkm.ko
  210. LOCAL_MODULE_TAGS := optional
  211. LOCAL_MODULE_DEBUG_ENABLE := true
  212. LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
  213. include $(DLKM_DIR)/Build_external_kernelmodule.mk
  214. ########################### LPASS-CDC CODEC ###########################
  215. include $(CLEAR_VARS)
  216. LOCAL_SRC_FILES := $(wildcard $(LOCAL_PATH)/**/*) $(wildcard $(LOCAL_PATH)/*)
  217. LOCAL_MODULE := lpass_cdc_dlkm.ko
  218. LOCAL_MODULE_KBUILD_NAME := asoc/codecs/lpass-cdc/lpass_cdc_dlkm.ko
  219. LOCAL_MODULE_TAGS := optional
  220. LOCAL_MODULE_DEBUG_ENABLE := true
  221. LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
  222. include $(DLKM_DIR)/Build_external_kernelmodule.mk
  223. ###########################################################
  224. include $(CLEAR_VARS)
  225. LOCAL_SRC_FILES := $(wildcard $(LOCAL_PATH)/**/*) $(wildcard $(LOCAL_PATH)/*)
  226. LOCAL_MODULE := lpass_cdc_wsa2_macro_dlkm.ko
  227. LOCAL_MODULE_KBUILD_NAME := asoc/codecs/lpass-cdc/lpass_cdc_wsa2_macro_dlkm.ko
  228. LOCAL_MODULE_TAGS := optional
  229. LOCAL_MODULE_DEBUG_ENABLE := true
  230. LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
  231. include $(DLKM_DIR)/Build_external_kernelmodule.mk
  232. ###########################################################
  233. include $(CLEAR_VARS)
  234. LOCAL_SRC_FILES := $(wildcard $(LOCAL_PATH)/**/*) $(wildcard $(LOCAL_PATH)/*)
  235. LOCAL_MODULE := lpass_cdc_wsa_macro_dlkm.ko
  236. LOCAL_MODULE_KBUILD_NAME := asoc/codecs/lpass-cdc/lpass_cdc_wsa_macro_dlkm.ko
  237. LOCAL_MODULE_TAGS := optional
  238. LOCAL_MODULE_DEBUG_ENABLE := true
  239. LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
  240. include $(DLKM_DIR)/Build_external_kernelmodule.mk
  241. ###########################################################
  242. include $(CLEAR_VARS)
  243. LOCAL_SRC_FILES := $(wildcard $(LOCAL_PATH)/**/*) $(wildcard $(LOCAL_PATH)/*)
  244. LOCAL_MODULE := lpass_cdc_va_macro_dlkm.ko
  245. LOCAL_MODULE_KBUILD_NAME := asoc/codecs/lpass-cdc/lpass_cdc_va_macro_dlkm.ko
  246. LOCAL_MODULE_TAGS := optional
  247. LOCAL_MODULE_DEBUG_ENABLE := true
  248. LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
  249. include $(DLKM_DIR)/Build_external_kernelmodule.mk
  250. ###########################################################
  251. include $(CLEAR_VARS)
  252. LOCAL_SRC_FILES := $(wildcard $(LOCAL_PATH)/**/*) $(wildcard $(LOCAL_PATH)/*)
  253. LOCAL_MODULE := lpass_cdc_tx_macro_dlkm.ko
  254. LOCAL_MODULE_KBUILD_NAME := asoc/codecs/lpass-cdc/lpass_cdc_tx_macro_dlkm.ko
  255. LOCAL_MODULE_TAGS := optional
  256. LOCAL_MODULE_DEBUG_ENABLE := true
  257. LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
  258. include $(DLKM_DIR)/Build_external_kernelmodule.mk
  259. ###########################################################
  260. include $(CLEAR_VARS)
  261. LOCAL_SRC_FILES := $(wildcard $(LOCAL_PATH)/**/*) $(wildcard $(LOCAL_PATH)/*)
  262. LOCAL_MODULE := lpass_cdc_rx_macro_dlkm.ko
  263. LOCAL_MODULE_KBUILD_NAME := asoc/codecs/lpass-cdc/lpass_cdc_rx_macro_dlkm.ko
  264. LOCAL_MODULE_TAGS := optional
  265. LOCAL_MODULE_DEBUG_ENABLE := true
  266. LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
  267. include $(DLKM_DIR)/Build_external_kernelmodule.mk
  268. ########################### WSA883x CODEC ###########################
  269. include $(CLEAR_VARS)
  270. LOCAL_SRC_FILES := $(wildcard $(LOCAL_PATH)/**/*) $(wildcard $(LOCAL_PATH)/*)
  271. LOCAL_MODULE := wsa883x_dlkm.ko
  272. LOCAL_MODULE_KBUILD_NAME := asoc/codecs/wsa883x/wsa883x_dlkm.ko
  273. LOCAL_MODULE_TAGS := optional
  274. LOCAL_MODULE_DEBUG_ENABLE := true
  275. LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
  276. include $(DLKM_DIR)/Build_external_kernelmodule.mk
  277. ########################### WCD938x CODEC ################################
  278. include $(CLEAR_VARS)
  279. LOCAL_SRC_FILES := $(wildcard $(LOCAL_PATH)/**/*) $(wildcard $(LOCAL_PATH)/*)
  280. LOCAL_MODULE := wcd938x_dlkm.ko
  281. LOCAL_MODULE_KBUILD_NAME := asoc/codecs/wcd938x/wcd938x_dlkm.ko
  282. LOCAL_MODULE_TAGS := optional
  283. LOCAL_MODULE_DEBUG_ENABLE := true
  284. LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
  285. include $(DLKM_DIR)/Build_external_kernelmodule.mk
  286. ###########################################################
  287. include $(CLEAR_VARS)
  288. LOCAL_SRC_FILES := $(wildcard $(LOCAL_PATH)/**/*) $(wildcard $(LOCAL_PATH)/*)
  289. LOCAL_MODULE := wcd938x_slave_dlkm.ko
  290. LOCAL_MODULE_KBUILD_NAME := asoc/codecs/wcd938x/wcd938x_slave_dlkm.ko
  291. LOCAL_MODULE_TAGS := optional
  292. LOCAL_MODULE_DEBUG_ENABLE := true
  293. LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
  294. include $(DLKM_DIR)/Build_external_kernelmodule.mk
  295. ###########################################################
  296. $(shell cp $(LOCAL_PATH)/include/uapi/audio/linux/* $(UAPI_OUT)/linux)
  297. $(shell cp $(LOCAL_PATH)/include/uapi/audio/sound/* $(UAPI_OUT)/sound)
  298. endif # DLKM check
  299. endif # supported target check