Android.mk 2.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  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. TARGET := msmnile
  6. AUDIO_SELECT := CONFIG_SND_SOC_SM8150=m
  7. endif
  8. ifeq ($(call is-board-platform,$(MSMSTEPPE)),true)
  9. TARGET := talos
  10. AUDIO_SELECT := CONFIG_SND_SOC_SM6150=m
  11. endif
  12. ifeq ($(call is-board-platform,$(TRINKET)),true)
  13. TARGET := trinket
  14. AUDIO_SELECT := CONFIG_SND_SOC_SM6150=m
  15. endif
  16. ifeq ($(call is-board-platform,kona),true)
  17. TARGET := kona
  18. AUDIO_SELECT := CONFIG_SND_SOC_KONA=m
  19. endif
  20. ifeq ($(call is-board-platform,lito),true)
  21. TARGET := lito
  22. AUDIO_SELECT := CONFIG_SND_SOC_LITO=m
  23. endif
  24. AUDIO_CHIPSET := audio
  25. # Build/Package only in case of supported target
  26. ifeq ($(call is-board-platform-in-list,msmnile $(MSMSTEPPE) $(TRINKET) kona lito),true)
  27. LOCAL_PATH := $(call my-dir)
  28. # This makefile is only for DLKM
  29. ifneq ($(findstring vendor,$(LOCAL_PATH)),)
  30. ifneq ($(findstring opensource,$(LOCAL_PATH)),)
  31. AUDIO_BLD_DIR := $(shell pwd)/vendor/qcom/opensource/audio-kernel
  32. endif # opensource
  33. DLKM_DIR := $(TOP)/device/qcom/common/dlkm
  34. # Build audio.ko as $(AUDIO_CHIPSET)_audio.ko
  35. ###########################################################
  36. # This is set once per LOCAL_PATH, not per (kernel) module
  37. KBUILD_OPTIONS := AUDIO_ROOT=$(AUDIO_BLD_DIR)
  38. # We are actually building audio.ko here, as per the
  39. # requirement we are specifying <chipset>_audio.ko as LOCAL_MODULE.
  40. # This means we need to rename the module to <chipset>_audio.ko
  41. # after audio.ko is built.
  42. KBUILD_OPTIONS += MODNAME=platform_dlkm
  43. KBUILD_OPTIONS += BOARD_PLATFORM=$(TARGET_BOARD_PLATFORM)
  44. KBUILD_OPTIONS += $(AUDIO_SELECT)
  45. ###########################################################
  46. include $(CLEAR_VARS)
  47. LOCAL_MODULE := $(AUDIO_CHIPSET)_platform.ko
  48. LOCAL_MODULE_KBUILD_NAME := platform_dlkm.ko
  49. LOCAL_MODULE_TAGS := optional
  50. LOCAL_MODULE_DEBUG_ENABLE := true
  51. LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
  52. include $(DLKM_DIR)/AndroidKernelModule.mk
  53. ###########################################################
  54. ifeq ($(call is-board-platform-in-list, ),true)
  55. include $(CLEAR_VARS)
  56. LOCAL_MODULE := $(AUDIO_CHIPSET)_cpe_lsm.ko
  57. LOCAL_MODULE_KBUILD_NAME := cpe_lsm_dlkm.ko
  58. LOCAL_MODULE_TAGS := optional
  59. LOCAL_MODULE_DEBUG_ENABLE := true
  60. LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
  61. include $(DLKM_DIR)/AndroidKernelModule.mk
  62. endif
  63. ###########################################################
  64. include $(CLEAR_VARS)
  65. LOCAL_MODULE := $(AUDIO_CHIPSET)_machine_$(TARGET).ko
  66. LOCAL_MODULE_KBUILD_NAME := machine_dlkm.ko
  67. LOCAL_MODULE_TAGS := optional
  68. LOCAL_MODULE_DEBUG_ENABLE := true
  69. LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
  70. include $(DLKM_DIR)/AndroidKernelModule.mk
  71. ###########################################################
  72. endif # DLKM check
  73. endif # supported target check