Android.mk 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. # Android makefile for audio kernel modules
  2. # Assume no targets will be supported
  3. # Check if this driver needs be built for current target
  4. ifeq ($(call is-board-platform,msmnile),true)
  5. ifeq ($(TARGET_PRODUCT), $(filter $(TARGET_PRODUCT), msmnile_au msmnile_gvmq))
  6. AUDIO_SELECT := CONFIG_SND_SOC_SA8155=m
  7. else
  8. AUDIO_SELECT := CONFIG_SND_SOC_SM8150=m
  9. endif
  10. endif
  11. ifeq ($(call is-board-platform,$(MSMSTEPPE) $(TRINKET)),true)
  12. AUDIO_SELECT := CONFIG_SND_SOC_SM6150=m
  13. endif
  14. ifeq ($(call is-board-platform, kona),true)
  15. AUDIO_SELECT := CONFIG_SND_SOC_KONA=m
  16. endif
  17. ifeq ($(call is-board-platform, lito),true)
  18. AUDIO_SELECT := CONFIG_SND_SOC_LITO=m
  19. endif
  20. AUDIO_CHIPSET := audio
  21. # Build/Package only in case of supported target
  22. ifeq ($(call is-board-platform-in-list,msmnile $(MSMSTEPPE) $(TRINKET) kona lito),true)
  23. LOCAL_PATH := $(call my-dir)
  24. # This makefile is only for DLKM
  25. ifneq ($(findstring vendor,$(LOCAL_PATH)),)
  26. ifneq ($(findstring opensource,$(LOCAL_PATH)),)
  27. AUDIO_BLD_DIR := $(shell pwd)/vendor/qcom/opensource/audio-kernel
  28. endif # opensource
  29. DLKM_DIR := $(TOP)/device/qcom/common/dlkm
  30. # Build audio.ko as $(AUDIO_CHIPSET)_audio.ko
  31. ###########################################################
  32. # This is set once per LOCAL_PATH, not per (kernel) module
  33. KBUILD_OPTIONS := AUDIO_ROOT=$(AUDIO_BLD_DIR)
  34. # We are actually building audio.ko here, as per the
  35. # requirement we are specifying <chipset>_audio.ko as LOCAL_MODULE.
  36. # This means we need to rename the module to <chipset>_audio.ko
  37. # after audio.ko is built.
  38. KBUILD_OPTIONS += MODNAME=q6_dlkm
  39. KBUILD_OPTIONS += BOARD_PLATFORM=$(TARGET_BOARD_PLATFORM)
  40. KBUILD_OPTIONS += $(AUDIO_SELECT)
  41. ###########################################################
  42. include $(CLEAR_VARS)
  43. LOCAL_MODULE := $(AUDIO_CHIPSET)_q6.ko
  44. LOCAL_MODULE_KBUILD_NAME := q6_dlkm.ko
  45. LOCAL_MODULE_TAGS := optional
  46. LOCAL_MODULE_DEBUG_ENABLE := true
  47. LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
  48. include $(DLKM_DIR)/AndroidKernelModule.mk
  49. ###########################################################
  50. include $(CLEAR_VARS)
  51. LOCAL_MODULE := $(AUDIO_CHIPSET)_adsp_loader.ko
  52. LOCAL_MODULE_KBUILD_NAME := adsp_loader_dlkm.ko
  53. LOCAL_MODULE_TAGS := optional
  54. LOCAL_MODULE_DEBUG_ENABLE := true
  55. LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
  56. include $(DLKM_DIR)/AndroidKernelModule.mk
  57. ###########################################################
  58. include $(CLEAR_VARS)
  59. LOCAL_MODULE := $(AUDIO_CHIPSET)_q6_notifier.ko
  60. LOCAL_MODULE_KBUILD_NAME := q6_notifier_dlkm.ko
  61. LOCAL_MODULE_TAGS := optional
  62. LOCAL_MODULE_DEBUG_ENABLE := true
  63. LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
  64. include $(DLKM_DIR)/AndroidKernelModule.mk
  65. ############################################################
  66. ifneq ($(TARGET_PRODUCT), $(filter $(TARGET_PRODUCT), msmnile_au msmnile_gvmq))
  67. include $(CLEAR_VARS)
  68. LOCAL_MODULE := $(AUDIO_CHIPSET)_usf.ko
  69. LOCAL_MODULE_KBUILD_NAME := usf_dlkm.ko
  70. LOCAL_MODULE_TAGS := optional
  71. LOCAL_MODULE_DEBUG_ENABLE := true
  72. LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
  73. include $(DLKM_DIR)/AndroidKernelModule.mk
  74. ##########################################################
  75. include $(CLEAR_VARS)
  76. LOCAL_MODULE := $(AUDIO_CHIPSET)_q6_pdr.ko
  77. LOCAL_MODULE_KBUILD_NAME := q6_pdr_dlkm.ko
  78. LOCAL_MODULE_TAGS := optional
  79. LOCAL_MODULE_DEBUG_ENABLE := true
  80. LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
  81. include $(DLKM_DIR)/AndroidKernelModule.mk
  82. endif
  83. ###########################################################
  84. ###########################################################
  85. endif # DLKM check
  86. endif # supported target check