mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-11 23:24:22 -04:00
synaptics_tcm_mmi: mmi status check
Added MMI status check to driver's probe. Kernel module will be loaded only when MMI status check succeed. Driver node needs to have property mmi,status in device tree for this to work. Change-Id: I93a077aee70f45dde1aa6c760b7cd73ed7cf4b3e Signed-off-by: Konstantin Makariev <hcv867@motorola.com> Reviewed-on: https://gerrit.mot.com/1827965 SME-Granted: SME Approvals Granted SLTApproved: Slta Waiver Tested-by: Jira Key Reviewed-by: Ling Jin <lingjin@motorola.com> Submit-Approved: Jira Key
This commit is contained in:
parent
c06e44fe0f
commit
4828b47192
3 changed files with 9 additions and 1 deletions
|
|
@ -5,6 +5,7 @@ EXTRA_CFLAGS += -I$(ANDROID_BUILD_TOP)/motorola/kernel/modules/include \
|
|||
|
||||
ifneq ($(filter m y,$(USE_TOUCHSCREEN_MMI_I2C)),)
|
||||
obj-m += synaptics_i2c.o
|
||||
KBUILD_EXTRA_SYMBOLS += $(CURDIR)/$(KBUILD_EXTMOD)/../../../../mmi_info/Module.symvers
|
||||
else
|
||||
obj-m += synaptics_spi.o
|
||||
obj-m += synaptics_spi.o
|
||||
endif
|
||||
|
|
|
|||
|
|
@ -36,6 +36,7 @@
|
|||
|
||||
#include <linux/i2c.h>
|
||||
#include <linux/of_gpio.h>
|
||||
#include <linux/mmi_device.h>
|
||||
#include "../synaptics_core/synaptics_core.h"
|
||||
|
||||
#define XFER_ATTEMPTS 10
|
||||
|
|
@ -462,6 +463,11 @@ static int syna_tcm_i2c_probe(struct i2c_client *i2c,
|
|||
|
||||
i2c_set_clientdata(i2c, syna_tcm_i2c_device);
|
||||
|
||||
if (i2c->dev.of_node && !mmi_device_is_available(i2c->dev.of_node)) {
|
||||
LOGE(&i2c->dev, "%s: mmi: device not supported\n", __func__);
|
||||
return -ENODEV;
|
||||
}
|
||||
|
||||
#ifdef CONFIG_OF
|
||||
hw_if.bdata = devm_kzalloc(&i2c->dev, sizeof(*hw_if.bdata), GFP_KERNEL);
|
||||
if (!hw_if.bdata) {
|
||||
|
|
|
|||
|
|
@ -20,6 +20,7 @@ ifneq ($(findstring touchscreen_mmi.ko,$(BOARD_VENDOR_KERNEL_MODULES)),)
|
|||
LOCAL_ADDITIONAL_DEPENDENCIES += $(KERNEL_MODULES_OUT)/touchscreen_mmi.ko
|
||||
endif
|
||||
ifneq ($(findstring synaptics_i2c.ko,$(BOARD_VENDOR_KERNEL_MODULES)),)
|
||||
LOCAL_ADDITIONAL_DEPENDENCIES += $(KERNEL_MODULES_OUT)/mmi_info.ko
|
||||
LOCAL_ADDITIONAL_DEPENDENCIES += $(KERNEL_MODULES_OUT)/synaptics_i2c.ko
|
||||
else
|
||||
LOCAL_ADDITIONAL_DEPENDENCIES += $(KERNEL_MODULES_OUT)/synaptics_spi.ko
|
||||
|
|
|
|||
Loading…
Reference in a new issue