78 lines
3 KiB
Diff
78 lines
3 KiB
Diff
|
The touchscreen driver expects to have firmware available immediately, but our rootfs
|
||
|
mounts a little too late. These patches are necessary to compile it as a module.
|
||
|
saved_command_line isn't exposed to modules, so we just hardcode the tianma vendor.
|
||
|
|
||
|
diff --git a/drivers/input/touchscreen/nt36xxx_spi_bbb/Kconfig b/drivers/input/touchscreen/nt36xxx_spi_bbb/Kconfig
|
||
|
index e8674dc6a..14ccef8e7 100644
|
||
|
--- a/drivers/input/touchscreen/nt36xxx_spi_bbb/Kconfig
|
||
|
+++ b/drivers/input/touchscreen/nt36xxx_spi_bbb/Kconfig
|
||
|
@@ -12,7 +12,7 @@ config TOUCHSCREEN_NT36xxx_HOSTDL_SPI_BBB
|
||
|
If unsure, say N.
|
||
|
|
||
|
config TOUCHSCREEN_NT36xxx_HOSTDL_SPI_CCC
|
||
|
- bool "Novatek NT36xxx host download SPI driver"
|
||
|
+ tristate "Novatek NT36xxx host download SPI driver"
|
||
|
depends on ( SPI || TOUCHSCREEN_AAAAAA_CCC )
|
||
|
default n
|
||
|
help
|
||
|
|
||
|
diff --git a/drivers/input/touchscreen/nt36xxx_spi_bbb/Makefile b/drivers/input/touchscreen/nt36xxx_spi_bbb/Makefile
|
||
|
index bca7b8a85..9ca3cfc3d 100644
|
||
|
--- a/drivers/input/touchscreen/nt36xxx_spi_bbb/Makefile
|
||
|
+++ b/drivers/input/touchscreen/nt36xxx_spi_bbb/Makefile
|
||
|
@@ -5,4 +5,5 @@
|
||
|
# Each configuration option enables a list of files.
|
||
|
|
||
|
obj-$(CONFIG_TOUCHSCREEN_NT36xxx_HOSTDL_SPI_BBB) += nt36xxx.o nt36xxx_fw_update.o nt36xxx_ext_proc.o nt36xxx_mp_ctrlram.o
|
||
|
-obj-$(CONFIG_TOUCHSCREEN_NT36xxx_HOSTDL_SPI_CCC) += nt36xxx.o nt36xxx_fw_update.o nt36xxx_ext_proc.o nt36xxx_mp_ctrlram.o
|
||
|
+obj-$(CONFIG_TOUCHSCREEN_NT36xxx_HOSTDL_SPI_CCC) += ts_nt36xxx.o
|
||
|
+ts_nt36xxx-y := nt36xxx.o nt36xxx_fw_update.o nt36xxx_ext_proc.o nt36xxx_mp_ctrlram.o
|
||
|
|
||
|
diff --git a/drivers/input/touchscreen/nt36xxx_spi_bbb/nt36xxx.c b/drivers/input/touchscreen/nt36xxx_spi_bbb/nt36xxx.c
|
||
|
index 93f4d0b1c..f48d3fc7b 100644
|
||
|
--- a/drivers/input/touchscreen/nt36xxx_spi_bbb/nt36xxx.c
|
||
|
+++ b/drivers/input/touchscreen/nt36xxx_spi_bbb/nt36xxx.c
|
||
|
@@ -43,8 +43,6 @@
|
||
|
#endif /* #if NVT_TOUCH_ESD_PROTECT */
|
||
|
|
||
|
#ifdef CHECK_TOUCH_VENDOR
|
||
|
-extern char *saved_command_line;
|
||
|
-
|
||
|
//---Touch Vendor ID---
|
||
|
static uint8_t touch_vendor_id = 0;
|
||
|
#endif
|
||
|
@@ -2711,31 +2709,8 @@ static int32_t __init nvt_driver_init(void)
|
||
|
|
||
|
#ifdef CHECK_TOUCH_VENDOR
|
||
|
//Check TP vendor
|
||
|
- if (IS_ERR_OR_NULL(saved_command_line)){
|
||
|
- NVT_ERR("saved_command_line ERROR!\n");
|
||
|
- ret = -ENOMEM;
|
||
|
- goto err_driver;
|
||
|
- } else {
|
||
|
- if (strstr(saved_command_line,"tianma") != NULL) {
|
||
|
- touch_vendor_id = TP_VENDOR_TIANMA;
|
||
|
- NVT_LOG("TP info: [Vendor]tianma [IC]nt36672a\n");
|
||
|
- } else if (strstr(saved_command_line,"shenchao") != NULL) {
|
||
|
- touch_vendor_id = TP_VENDOR_EBBG;
|
||
|
- NVT_LOG("TP info: [Vendor]shenchao [IC]nt36672a\n");
|
||
|
- } else {
|
||
|
- touch_vendor_id = TP_VENDOR_UNKNOW;
|
||
|
- NVT_ERR("Unknow Touch\n");
|
||
|
- ret = -ENODEV;
|
||
|
- goto err_driver;
|
||
|
- }
|
||
|
- }
|
||
|
-
|
||
|
- //Check android mode
|
||
|
- if (strstr(saved_command_line, "androidboot.mode=charger") != NULL) {
|
||
|
- NVT_LOG("androidboot.mode=charger, doesn't support touch in the charging mode!\n");
|
||
|
- ret = -ENODEV;
|
||
|
- goto err_driver;
|
||
|
- }
|
||
|
+ touch_vendor_id = TP_VENDOR_TIANMA;
|
||
|
+ NVT_LOG("TP info: [Vendor]tianma [IC]nt36672a\n");
|
||
|
#endif
|
||
|
|
||
|
//---add spi driver---
|