Skip to content

Commit

Permalink
input: gt9xx_yl: Import Yulong Goodix GT9XX driver
Browse files Browse the repository at this point in the history
* Original package version: ?????

dc931bf input: gt9xx_yl: fix touchscreen configuration
8fc352a input: gt9xx_yl: Add option to disable keypad
39b4841 input: gt9xx_yl: Double tap to wake
1c8a7e5 input: gt9xx_yl: merge changes from yulong
3c2e7be input: gt9xx_yl: merge changes from yulong
c417c60 input: gt9xx_yl: Initial pass at 64-bit support
22cbd90 input: gt9xx_yl: Update kernel from yulong
e06f527 input: gt9xx_yl: Re-enable double-tap to wake
cd5327b input: gt9xx_yl: Enable double tap to wake by default
7dfcae0 input: gt9xx_yl: Fix keypad enable check
777b38d input: gt9xx_yl: Rename files so make is happy
e56bed7 input: gt9xx_yl: Add support for the cp8675_I02 variant
8d5070c input: gt9xx_yl: readable gesture control sysfs entry
2016-03-17      Keith Mok       input: gt9xx_yl: Send KEY_WAKEUP for double-tap event
2016-05-03      Zhao Wei Liew   input: gt9xx_yl: Remove earlysuspend references
2016-05-04      Zhao Wei Liew   input: gt9xx_yl: Send custom gesture keycodes
2017-06-19      Michael Bestas  input: gt9xx_yl: Send custom keycodes for all gestures
2016-12-09      Michael Bestas  input: gt9xx_yl: Fix consecutive gestures with screen off
2017-02-16      Louis Popi      input: touchscreen: gt9xx_yl: Handle more framebuffer hints

Change-Id: I4f01f984ff10c09279c366950eaa2dd021fe096f
  • Loading branch information
intervigilium authored and mikeNG committed Jul 1, 2017
1 parent 5db4976 commit f8493e0
Show file tree
Hide file tree
Showing 21 changed files with 18,363 additions and 0 deletions.
12 changes: 12 additions & 0 deletions drivers/input/touchscreen/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -1097,6 +1097,18 @@ config TOUCHSCREEN_GT9XX_HQ

source "drivers/input/touchscreen/gt9xx_hq/Kconfig"

config TOUCHSCREEN_GT9XX_YL
bool "Goodix touchpanel (Yulong variant)"
depends on I2C
help
Say Y here if you have a Goodix GT9xx touchscreen (Yulong variant).
Gt9xx controllers are multi touch controllers which can
report 5 touches at a time.

If unsure, say N.

source "drivers/input/touchscreen/gt9xx_yl/Kconfig"

config TOUCHSCREEN_BU21150
tristate "JDI AFE BU21150"
depends on SPI_MASTER
Expand Down
1 change: 1 addition & 0 deletions drivers/input/touchscreen/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -85,6 +85,7 @@ obj-$(CONFIG_TOUCHSCREEN_SYNAPTICS_I2C_RMI4) += synaptics_i2c_rmi4.o

obj-$(CONFIG_TOUCHSCREEN_GT9XX) += gt9xx/
obj-$(CONFIG_TOUCHSCREEN_GT9XX_HQ) += gt9xx_hq/
obj-$(CONFIG_TOUCHSCREEN_GT9XX_YL) += gt9xx_yl/
obj-$(CONFIG_TOUCHSCREEN_BU21150) += bu21150.o
obj-$(CONFIG_INPUT_MT_WRAPPER) += input_mt_wrapper.o
obj-$(CONFIG_TOUCHSCREEN_IT7260_I2C) += it7258_ts_i2c.o
Expand Down
5,633 changes: 5,633 additions & 0 deletions drivers/input/touchscreen/gt9xx_yl/GT970_1030_5A1F

Large diffs are not rendered by default.

5,633 changes: 5,633 additions & 0 deletions drivers/input/touchscreen/gt9xx_yl/GT970_1039_DACA

Large diffs are not rendered by default.

33 changes: 33 additions & 0 deletions drivers/input/touchscreen/gt9xx_yl/Kconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
#
# Yulong Goodix GT9xx Touchscreen driver
#

config TOUCHSCREEN_GT9XX_YL_COVER_WINDOW_SIZE
bool "Touchscreen cover window size"
depends on TOUCHSCREEN_GT9XX_YL
help
Say Y here if you want to set a size for cover window.
This is used for the IC that cann't support window mode in firmware.
So you can set a window size in your driver.

If unsure, say N.

config TOUCHSCREEN_GT9XX_YL_COVER_WINDOW_CFG
bool "Touchscreen cover window config switch"
depends on TOUCHSCREEN_GT9XX_YL
help
Say Y here if you want to set conver window mode via switching a config file.
This is used for the IC(goodix) that can support window mode in firmware.
So you can set a window mode via a config.

If unsure, say N.

config TOUCHSCREEN_GT9XX_YL_TW_GLOVE_SWITCH
bool "Touchscreen glove window switch"
depends on TOUCHSCREEN_GT9XX_YL
help
Say Y here if you want to set conver window mode.
This is used for the IC(syna) that cannt't support window mode in firmware.
So you can set a window mode in your driver.

If unsure, say N.
4 changes: 4 additions & 0 deletions drivers/input/touchscreen/gt9xx_yl/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
#
# Makefile for Goodix Touchscreen (G913)
#
obj-y += gt9xx.o gt9xx_update.o goodix_tool.o
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
0x46,0xD0,0x02,0x00,0x05,0x05,0x05,0x01,0x01,0x08,0x23,0x05,0x50,0x3C,0x03,0x07,0x01,0x01,0x00,0x00,0x00,0x00,0x00,0x17,0x19,0x1E,0x14,0x8C,0x2E,0x0E,0x2C,0x2A,0xF4,0x0A,0xF4,0x0A,0x00,0x9A,0x33,0x1D,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x12,0x12,0x6A,0x85,0xD0,0x02,0x00,0x00,0x00,0x04,0xE4,0x15,0x00,0xA3,0x1F,0x14,0x7B,0x2C,0x00,0x60,0x3F,0x00,0x60,0x5A,0x00,0x4F,0x18,0x38,0x60,0x00,0xF0,0x4A,0x3A,0xFF,0xFF,0x27,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x19,0x46,0x00,0x00,0x00,0x00,0x28,0x1C,0x1A,0x18,0x16,0x14,0x12,0x10,0x0E,0x0C,0x0A,0x08,0x06,0x04,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x02,0x04,0x06,0x08,0x0A,0x0C,0x0F,0x10,0x12,0x13,0x14,0x16,0x18,0x1C,0x1D,0x1E,0x1F,0x20,0x21,0x22,0x24,0x26,0x28,0x29,0x2A,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xB2,0x01
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
0x46,0xD0,0x02,0x00,0x05,0x05,0x35,0x01,0x01,0x08,0x23,0x05,0x50,0x3C,0x03,0x07,0x01,0x01,0x00,0x00,0x00,0x00,0x00,0x17,0x19,0x1E,0x14,0x8C,0x2E,0x0E,0x64,0x62,0x7C,0x06,0xF4,0x0A,0x00,0x9A,0x34,0x1D,0x0A,0x14,0x1E,0x03,0x1E,0x00,0x00,0x00,0x00,0x00,0x12,0x48,0x96,0x85,0xD0,0x02,0x00,0x00,0x00,0x04,0x98,0x4D,0x00,0x88,0x59,0x14,0x7B,0x68,0x00,0x70,0x78,0x00,0x67,0x8B,0x00,0x67,0x18,0x38,0x60,0x00,0xF0,0x50,0x40,0xFF,0xFF,0x27,0x00,0x00,0x00,0x03,0x3C,0x46,0x00,0x46,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x19,0x46,0x32,0x3C,0x00,0x3C,0x28,0x1C,0x1A,0x18,0x16,0x14,0x12,0x10,0x0E,0x0C,0x0A,0x08,0x06,0x04,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x02,0x04,0x06,0x08,0x0A,0x0C,0x0F,0x10,0x12,0x13,0x14,0x16,0x18,0x1C,0x1D,0x1E,0x1F,0x20,0x21,0x22,0x24,0x26,0x28,0x29,0x2A,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x6D,0x01
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
0x46,0xD0,0x02,0x6B,0x03,0x05,0x35,0x00,0x01,0x08,0x23,0x05,0x50,0x3C,0x03,0x07,0x01,0x01,0x00,0x00,0x00,0x00,0x00,0x17,0x19,0x1E,0x14,0x8C,0x25,0x0E,0x54,0x52,0x7C,0x06,0xF4,0x0A,0x01,0x9A,0x34,0x9D,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x12,0x46,0x96,0x94,0xD0,0x02,0x00,0x05,0x00,0x04,0x89,0x4B,0x00,0x79,0x58,0x14,0x6C,0x66,0x00,0x61,0x77,0x00,0x58,0x8B,0x00,0x58,0x00,0x00,0x00,0x00,0xF0,0x50,0x40,0xFF,0xFF,0x27,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x19,0x46,0x00,0x00,0x00,0x00,0x28,0x1C,0x1A,0x18,0x16,0x14,0x12,0x10,0x0E,0x0C,0x0A,0x08,0x06,0x04,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x02,0x04,0x06,0x08,0x0A,0x0C,0x0F,0x10,0x12,0x13,0x14,0x16,0x18,0x1C,0x1D,0x1E,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xCD,0x01
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
0x46,0xD0,0x02,0x00,0x05,0x05,0x35,0x01,0x01,0x08,0x1E,0x08,0x50,0x3C,0x03,0x07,0x01,0x01,0x00,0x00,0x00,0x00,0x00,0x17,0x19,0x1E,0x14,0x8C,0x2E,0x0E,0x32,0x30,0xF4,0x0A,0xF4,0x0A,0x00,0x9A,0x33,0x1D,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x12,0x23,0x6A,0x94,0xD0,0x02,0x00,0x05,0x00,0x04,0x96,0x27,0x00,0x7E,0x31,0x14,0x6C,0x3D,0x00,0x5E,0x4C,0x00,0x55,0x5F,0x00,0x55,0x18,0x38,0x60,0x00,0xF0,0x50,0x40,0xFF,0xFF,0x27,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x19,0x46,0x00,0x00,0x00,0x00,0x28,0x1C,0x1A,0x18,0x16,0x14,0x12,0x10,0x0E,0x0C,0x0A,0x08,0x06,0x04,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x1C,0x1D,0x1E,0x1F,0x20,0x21,0x22,0x24,0x26,0x28,0x29,0x2A,0x16,0x14,0x13,0x12,0x10,0x0F,0x0C,0x0A,0x08,0x06,0x04,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x89,0x01
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
0x46,0xD0,0x02,0x00,0x05,0x05,0x35,0x01,0x01,0x08,0x1E,0x08,0x50,0x3C,0x03,0x07,0x01,0x01,0x00,0x00,0x00,0x00,0x00,0x17,0x19,0x1E,0x14,0x8C,0x2E,0x0E,0x74,0x72,0x7C,0x06,0xF4,0x0A,0x00,0x9A,0x34,0x1D,0x0A,0x14,0x1E,0x03,0x1E,0x00,0x00,0x00,0x00,0x00,0x12,0x48,0x96,0x94,0xD0,0x02,0x00,0x05,0x00,0x04,0xA8,0x4D,0x00,0x97,0x59,0x14,0x87,0x68,0x00,0x7C,0x78,0x00,0x72,0x8B,0x00,0x72,0x18,0x38,0x60,0x00,0xF0,0x50,0x40,0xFF,0xFF,0x27,0x00,0x00,0x00,0x03,0x3C,0x50,0x00,0x50,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x19,0x46,0x32,0x46,0x00,0x46,0x28,0x1C,0x1A,0x18,0x16,0x14,0x12,0x10,0x0E,0x0C,0x0A,0x08,0x06,0x04,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x1C,0x1D,0x1E,0x1F,0x20,0x21,0x22,0x24,0x26,0x28,0x29,0x2A,0x16,0x14,0x13,0x12,0x10,0x0F,0x0C,0x0A,0x08,0x06,0x04,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC6,0x01
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
0x46,0xD0,0x02,0x6B,0x03,0x05,0x35,0x00,0x01,0x08,0x1E,0x08,0x50,0x3C,0x03,0x07,0x01,0x01,0x00,0x00,0x00,0x00,0x00,0x17,0x19,0x1E,0x14,0x83,0x2E,0x0E,0x54,0x52,0x7C,0x06,0xF4,0x0A,0x01,0x9A,0x34,0x9D,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x12,0x46,0x96,0x94,0xD0,0x02,0x00,0x05,0x00,0x04,0x89,0x4B,0x00,0x79,0x58,0x14,0x6C,0x66,0x00,0x61,0x77,0x00,0x57,0x8B,0x00,0x58,0x00,0x00,0x00,0x00,0xF0,0x50,0x40,0xFF,0xFF,0x27,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x19,0x46,0x00,0x00,0x00,0x00,0x28,0x1C,0x1A,0x18,0x16,0x14,0x12,0x10,0x0E,0x0C,0x0A,0x08,0x06,0x04,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x1C,0x1D,0x1E,0x1F,0x20,0x21,0x22,0x24,0x26,0x28,0x29,0x2A,0x16,0x14,0x13,0x12,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xD2,0x01
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
0x46,0xD0,0x02,0x00,0x05,0x05,0x35,0x01,0x01,0x08,0x23,0x05,0x50,0x3C,0x03,0x07,0x01,0x01,0x00,0x00,0x00,0x00,0x00,0x17,0x19,0x1E,0x14,0x8C,0x2E,0x0E,0x2E,0x30,0xF4,0x0A,0xF4,0x0A,0x00,0x9A,0x33,0x1D,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x12,0x23,0x6B,0x94,0xD0,0x02,0x00,0x00,0x00,0x04,0x92,0x27,0x00,0x79,0x31,0x14,0x67,0x3D,0x00,0x57,0x4D,0x00,0x4D,0x60,0x00,0x4D,0x18,0x38,0x60,0x00,0xF0,0x50,0x40,0xFF,0xFF,0x27,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x19,0x46,0x00,0x00,0x00,0x00,0x28,0x1C,0x1A,0x18,0x16,0x14,0x12,0x10,0x0E,0x0C,0x0A,0x08,0x06,0x04,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x02,0x04,0x06,0x08,0x0A,0x0C,0x0F,0x10,0x12,0x13,0x14,0x16,0x18,0x1C,0x1D,0x1E,0x1F,0x20,0x21,0x22,0x24,0x26,0x28,0x29,0x2A,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xB2,0x01
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
0x46,0xD0,0x02,0x00,0x05,0x05,0x35,0x01,0x01,0x08,0x23,0x05,0x50,0x3C,0x03,0x07,0x01,0x01,0x00,0x00,0x00,0x00,0x00,0x17,0x19,0x1E,0x14,0x8C,0x2E,0x0E,0x6E,0x6C,0x7C,0x06,0xF4,0x0A,0x01,0x9A,0x34,0x1D,0x0A,0x14,0x1E,0x03,0x1E,0x00,0x00,0x00,0x00,0x00,0x12,0x48,0x96,0x94,0xD0,0x02,0x00,0x00,0x00,0x04,0xA6,0x4D,0x00,0x94,0x59,0x14,0x83,0x68,0x00,0x76,0x78,0x00,0x6C,0x8B,0x00,0x6C,0x18,0x38,0x60,0x00,0xF0,0x50,0x40,0xFF,0xFF,0x27,0x00,0x00,0x00,0x03,0x3C,0x46,0x00,0x46,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x19,0x46,0x32,0x3C,0x00,0x3C,0x28,0x1C,0x1A,0x18,0x16,0x14,0x12,0x10,0x0E,0x0C,0x0A,0x08,0x06,0x04,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x02,0x04,0x06,0x08,0x0A,0x0C,0x0F,0x10,0x12,0x13,0x14,0x16,0x18,0x1C,0x1D,0x1E,0x1F,0x20,0x21,0x22,0x24,0x26,0x28,0x29,0x2A,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x17,0x01
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
0x46,0xD0,0x02,0x6B,0x03,0x05,0x35,0x00,0x01,0x08,0x23,0x05,0x50,0x3C,0x03,0x07,0x01,0x01,0x00,0x00,0x00,0x00,0x00,0x17,0x19,0x1E,0x14,0x8C,0x25,0x0E,0x5C,0x5A,0x7C,0x06,0xF4,0x0A,0x01,0x9A,0x34,0x9D,0x00,0x14,0x0A,0x03,0x32,0x00,0x00,0x00,0x00,0x00,0x12,0x46,0x96,0x94,0xD0,0x02,0x00,0x00,0x00,0x04,0x95,0x4B,0x00,0x82,0x58,0x14,0x73,0x66,0x00,0x67,0x77,0x00,0x5B,0x8B,0x00,0x5B,0x00,0x00,0x00,0x00,0xF0,0x50,0x40,0xFF,0xFF,0x27,0x00,0x00,0x00,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x19,0x46,0x32,0x3C,0x00,0x00,0x28,0x1C,0x1A,0x18,0x16,0x14,0x12,0x10,0x0E,0x0C,0x0A,0x08,0x06,0x04,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x02,0x04,0x06,0x08,0x0A,0x0C,0x0F,0x10,0x12,0x13,0x14,0x16,0x18,0x1C,0x1D,0x1E,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xD6,0x01
18 changes: 18 additions & 0 deletions drivers/input/touchscreen/gt9xx_yl/goodix_firmware.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
#ifndef LINUX_GT9XX_FIRMWARE_H
#define LINUX_GT9XX_FIRMWARE_H

#ifdef HEADER_UPDATE_DATA
#undef HEADER_UPDATE_DATA
#endif

#define HEADER_UPDATE_DATA goodix_firmware

const unsigned char goodix_firmware[] = {
#ifdef CONFIG_TOUCHSCREEN_GT9XX_YL_COVER_WINDOW_CFG
#include "GT970_1039_DACA"
#else
#include "GT970_1030_5A1F"
#endif
};

#endif
Loading

0 comments on commit f8493e0

Please sign in to comment.