소스 검색

mm-drivers: add support for compiling out mm driver modules

This change provides required support to disable mm driver modules
compilation along with all modules and supports specific flag for
override to enable compilation if required.

Change-Id: I3ea1383855a6be49ed12a23a3585e9d6ebb1810a
Signed-off-by: Prabhanjan Kandula <[email protected]>
(cherry picked from commit 91a337989da77e6071fdfbd03b43c423356c14c0)
Prabhanjan Kandula 3 년 전
부모
커밋
91cfcb8220
3개의 변경된 파일42개의 추가작업 그리고 17개의 파일을 삭제
  1. 13 4
      Android.mk
  2. 18 10
      mm_driver_board.mk
  3. 11 3
      mm_driver_product.mk

+ 13 - 4
Android.mk

@@ -1,7 +1,16 @@
 MM_DRIVER_PATH := $(call my-dir)
-include $(MM_DRIVER_PATH)/msm_ext_display/Android.mk
-ifneq ($(TARGET_BOARD_PLATFORM), taro)
-include $(MM_DRIVER_PATH)/hw_fence/Android.mk
-include $(MM_DRIVER_PATH)/sync_fence/Android.mk
+
+MM_DRV_DLKM_ENABLE := true
+ifeq ($(TARGET_KERNEL_DLKM_DISABLE), true)
+	ifeq ($(TARGET_KERNEL_DLKM_MM_DRV_OVERRIDE), false)
+		MM_DRV_DLKM_ENABLE := false
+	endif
 endif
 
+ifeq ($(MM_DRV_DLKM_ENABLE), true)
+	include $(MM_DRIVER_PATH)/msm_ext_display/Android.mk
+	ifneq ($(TARGET_BOARD_PLATFORM), taro)
+		include $(MM_DRIVER_PATH)/hw_fence/Android.mk
+		include $(MM_DRIVER_PATH)/sync_fence/Android.mk
+	endif
+endif

+ 18 - 10
mm_driver_board.mk

@@ -1,18 +1,26 @@
 #SPDX-License-Identifier: GPL-2.0-only
 
-ifneq ($(TARGET_BOARD_AUTO),true)
-	ifeq ($(call is-board-platform-in-list,$(TARGET_BOARD_PLATFORM)),true)
-		BOARD_VENDOR_KERNEL_MODULES += $(KERNEL_MODULES_OUT)/msm_ext_display.ko
-		BOARD_VENDOR_RAMDISK_KERNEL_MODULES += $(KERNEL_MODULES_OUT)/msm_ext_display.ko
-		BOARD_VENDOR_RAMDISK_RECOVERY_KERNEL_MODULES_LOAD += $(KERNEL_MODULES_OUT)/msm_ext_display.ko
+MM_DRV_DLKM_ENABLE := true
+ifeq ($(TARGET_KERNEL_DLKM_DISABLE), true)
+	ifeq ($(TARGET_KERNEL_DLKM_MM_DRV_OVERRIDE), false)
+		MM_DRV_DLKM_ENABLE := false
+	endif
+endif
 
-		ifneq ($(TARGET_BOARD_PLATFORM), taro)
-		BOARD_VENDOR_KERNEL_MODULES += $(KERNEL_MODULES_OUT)/sync_fence.ko \
+ifeq ($(MM_DRV_DLKM_ENABLE), true)
+	ifneq ($(TARGET_BOARD_AUTO),true)
+		ifeq ($(call is-board-platform-in-list,$(TARGET_BOARD_PLATFORM)),true)
+			BOARD_VENDOR_KERNEL_MODULES += $(KERNEL_MODULES_OUT)/msm_ext_display.ko
+			BOARD_VENDOR_RAMDISK_KERNEL_MODULES += $(KERNEL_MODULES_OUT)/msm_ext_display.ko
+			BOARD_VENDOR_RAMDISK_RECOVERY_KERNEL_MODULES_LOAD += $(KERNEL_MODULES_OUT)/msm_ext_display.ko
+			ifneq ($(TARGET_BOARD_PLATFORM), taro)
+				BOARD_VENDOR_KERNEL_MODULES += $(KERNEL_MODULES_OUT)/sync_fence.ko \
 					       $(KERNEL_MODULES_OUT)/msm_hw_fence.ko
-		BOARD_VENDOR_RAMDISK_KERNEL_MODULES += $(KERNEL_MODULES_OUT)/sync_fence.ko \
-						       $(KERNEL_MODULES_OUT)/msm_hw_fence.ko
-		BOARD_VENDOR_RAMDISK_RECOVERY_KERNEL_MODULES_LOAD += $(KERNEL_MODULES_OUT)/sync_fence.ko \
+				BOARD_VENDOR_RAMDISK_KERNEL_MODULES += $(KERNEL_MODULES_OUT)/sync_fence.ko \
+					               $(KERNEL_MODULES_OUT)/msm_hw_fence.ko
+				BOARD_VENDOR_RAMDISK_RECOVERY_KERNEL_MODULES_LOAD += $(KERNEL_MODULES_OUT)/sync_fence.ko \
 					                             $(KERNEL_MODULES_OUT)/msm_hw_fence.ko
+			endif
 		endif
 	endif
 endif

+ 11 - 3
mm_driver_product.mk

@@ -1,7 +1,15 @@
-# SPDX-License-Identifier: GPL-2.0-only
 
 PRODUCT_PACKAGES += msm_ext_display.ko
 
-ifneq ($(TARGET_BOARD_PLATFORM), taro)
-PRODUCT_PACKAGES += sync_fence.ko msm_hw_fence.ko
+MM_DRV_DLKM_ENABLE := true
+ifeq ($(TARGET_KERNEL_DLKM_DISABLE), true)
+	ifeq ($(TARGET_KERNEL_DLKM_MM_DRV_OVERRIDE), false)
+		MM_DRV_DLKM_ENABLE := false
+	endif
+endif
+
+ifeq ($(MM_DRV_DLKM_ENABLE), true)
+	ifneq ($(TARGET_BOARD_PLATFORM), taro)
+		PRODUCT_PACKAGES += sync_fence.ko msm_hw_fence.ko
+	endif
 endif