From 91cfcb8220c61b62f81a35b9c7c00fd1f39b0598 Mon Sep 17 00:00:00 2001 From: Prabhanjan Kandula Date: Fri, 20 May 2022 11:20:43 -0700 Subject: [PATCH] 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 (cherry picked from commit 91a337989da77e6071fdfbd03b43c423356c14c0) --- Android.mk | 17 +++++++++++++---- mm_driver_board.mk | 28 ++++++++++++++++++---------- mm_driver_product.mk | 14 +++++++++++--- 3 files changed, 42 insertions(+), 17 deletions(-) diff --git a/Android.mk b/Android.mk index c14968715d..86e3104278 100644 --- a/Android.mk +++ b/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 diff --git a/mm_driver_board.mk b/mm_driver_board.mk index 127c8dcc31..7e18d8bc4e 100644 --- a/mm_driver_board.mk +++ b/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 diff --git a/mm_driver_product.mk b/mm_driver_product.mk index c7d11b3449..4c2a5d2fe9 100644 --- a/mm_driver_product.mk +++ b/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