diff --git a/drivers/input/touchscreen/stmicro_mmi/Android.mk b/drivers/input/touchscreen/stmicro_mmi/Android.mk index 9c83414ad4a9..e93f73472c56 100644 --- a/drivers/input/touchscreen/stmicro_mmi/Android.mk +++ b/drivers/input/touchscreen/stmicro_mmi/Android.mk @@ -9,6 +9,7 @@ include $(CLEAR_VARS) LOCAL_MODULE := stmicro_mmi.ko LOCAL_MODULE_TAGS := optional LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT) +LOCAL_ADDITIONAL_DEPENDENCIES += $(KERNEL_MODULES_OUT)/mmi_info.ko ifneq ($(findstring touchscreen_mmi.ko,$(BOARD_VENDOR_KERNEL_MODULES)),) KERNEL_CFLAGS += CONFIG_INPUT_TOUCHSCREEN_MMI=y LOCAL_ADDITIONAL_DEPENDENCIES += $(KERNEL_MODULES_OUT)/touchscreen_mmi.ko diff --git a/drivers/input/touchscreen/stmicro_mmi/Kbuild b/drivers/input/touchscreen/stmicro_mmi/Kbuild index fbacc5a3a1f3..bfcc53ffacb3 100644 --- a/drivers/input/touchscreen/stmicro_mmi/Kbuild +++ b/drivers/input/touchscreen/stmicro_mmi/Kbuild @@ -26,3 +26,4 @@ ifneq ($(filter m y,$(CONFIG_INPUT_TOUCHSCREEN_MMI)),) endif KBUILD_EXTRA_SYMBOLS += $(CURDIR)/$(KBUILD_EXTMOD)/../touchscreen_mmi/Module.symvers +KBUILD_EXTRA_SYMBOLS += $(CURDIR)/$(KBUILD_EXTMOD)/../../../mmi_info/Module.symvers diff --git a/drivers/input/touchscreen/stmicro_mmi/fts.c b/drivers/input/touchscreen/stmicro_mmi/fts.c index 93362f0fd8ce..4eb34d79e355 100644 --- a/drivers/input/touchscreen/stmicro_mmi/fts.c +++ b/drivers/input/touchscreen/stmicro_mmi/fts.c @@ -73,6 +73,7 @@ #include "fts_lib/ftsTool.h" #include "fts_mmi.h" +#include /** * Event handler installer helpers @@ -3897,11 +3898,12 @@ static int fts_probe(struct spi_device *client) u16 bus_type; logError(1, "%s %s: driver probe begin!\n", tag, __func__); - + if (client->dev.of_node && !mmi_device_is_available(client->dev.of_node)) { + logError(1, "%s mmi: device not supported\n", tag); + return -ENODEV; + } logError(1, "%s driver ver. %s\n", tag, FTS_TS_DRV_VERSION); - - logError(1, "%s SET Bus Functionality :\n", tag); #ifdef I2C_INTERFACE logError(1, "%s I2C interface...\n", tag);