#
# GT9157 Touchscreen driver configuration
#
menu "GT9157 Touchscreen Config"
	depends on TOUCHSCREEN_MTK_GT9157

config GTP_USE_PINCTRL
	bool "GT9157 GPIO use Pinctrl"
	default y
	help
	  Say Y here if you want use pinctrl subsystem to operate gpio.
	  Say N here if you want use libgpio to operate gpio.
	  Build in 2.x kernel should say N.
	  Default set to Y

config GTP_FIRMWARE
	string "GT9157 firmawre group"
	default "firmware1"

config GTP_CONFIG
	string "GT9157 config data group"
	default "config1"

config GTP_DRIVER_SEND_CFG
	bool "GT9157 driver send config"
	default y
	help
	  Say Y here if you have GT9 touch panel GTP_DRIVER_SEND_CFG.
	  When turn this option on, driver will send config group data
	  to touch IC to set touch IC status.
	  If unsure, say N.

config GTP_CUSTOM_CFG
	bool "GT9157 custom config"
	help
	  Say Y here if you have GT9 touch panel GTP_CUSTOM_CFG.
	  When turn this option on, you can customize the config group data,
	  which can send to touch IC to set touch IC status.
	  If unsure, say N.

config GTP_HAVE_TOUCH_KEY
	bool "GT9157 touch key enable"
	default y
	help
	  Say Y here if you have GT9 touch panel GTP_HAVE_TOUCH_KEY.
	  When turn this option on, you can use touch virtual key function,
	  it will report key event to input subsystem.
	  If unsure, say N.

config GTP_CHANGE_X2Y
	bool "GT9157 X2Y"
	help
	  Say Y here if you have GT9 touch panel GTP_CHANGE_X2Y.
	  When turn this option on, coordinate x and y will swap,
	  check the coordinate and see whether you want it.
	  If unsure, say N.

config GTP_COMPATIBLE_MODE
	bool "GT9157 flahless compatible"
	help
	  Say Y here if you have GT9 touch panel GTP_COMPATIBLE_MODE.
	  When turn this option on, driver will check touch IC type,
	  and support GT9F wilth old style.
	  If unsure, say N.

config GTP_WARP_X_ON
	bool "GT9157 swap x"
	help
	  Say Y here if you have GT9 touch panel GTP_WARP_X_ON.
	  When turn this option on, coordinate x will change to (x_max - 1 -x),
	  check the coordinate and see whether you want it.
	  If unsure, say N.

config GTP_WARP_Y_ON
	bool "GT9157 swap y"
	help
	  Say Y here if you have GT9 touch panel GTP_WARP_Y_ON.
	  When turn this option on, coordinate y will change to (y_max - 1 -y),
	  check the coordinate and see whether you want it.
	  If unsure, say N.

config GTP_GESTURE_WAKEUP
	bool "GT9157 gesture wakeup"
	help
	  Say Y here if you have GT9 touch panel GTP_GESTURE_WAKEUP.
	  When turn this option on, driver will support wakeup by gesture in when
	  display off.
	  If unsure, say N.

config GTP_HOTKNOT
	bool "GT9157 hotknot"
	default y
	help
	  Say Y here if you have GT9 touch panel GTP_HOTKNOT.
	  When turn this option on, driver will support hotknot function, it can transfer
	  data by two panels touch each other.
	  If unsure, say N.

config HOTKNOT_BLOCK_RW
	bool "GT9157 hotknot blocking rw"
	help
	  Say Y here if you have GT9 touch panel HOTKNOT_BLOCK_RW.
	  When turn this option on, driver will support hotknot read and write with block
	  unit, to improve transfer speed.
	  If unsure, say N.

config GTP_PROXIMITY
	bool "GT9157 proximity"
	help
	  Say Y here if you have GT9 touch panel GTP_PROXIMITY.
	  When turn this option on, driver will use hwmsonser to check status, to prevent
	  report uneccesary misoperation to input system.
	  If unsure, say N.

config GTP_WITH_PEN
	bool "GT9157 pen enable"
	help
	  Say Y here if you have GT9 touch panel GTP_WITH_PEN.
	  When turn this option on, driver will support pen touch function, allow use to
	  use pen to operate touch panel.
	  If unsure, say N.

config GTP_AUTO_UPDATE
	bool "GT9157 firmware auto update"
	help
	  Say Y here if you have GT9 touch panel GTP_AUTO_UPDATE.
	  When turn this option on, driver will enable upgrade touch IC function when boot
	  up, it will cost extra time, which part to upgrade depend on other options.
	  If unsure, say N.

config GTP_AUTO_UPDATE_CFG
	bool "GT9157 config data auto update"
	help
	  Say Y here if you have GT9 touch panel GTP_AUTO_UPDATE_CFG.
	  When turn this option on, driver will upgrade touch IC config data when boot up,
	  it will cost extra time.
	  If unsure, say N.

config GTP_HEADER_FW_UPDATE
	bool "GT9157 firmware in header file"
	help
	  Say Y here if you have GT9 touch panel GTP_HEADER_FW_UPDATE.
	  When turn this option on, driver will upgrade touch IC firmware when boot up,
	  it will cost extra time.
	  If unsure, say N.

config GTP_REQUEST_FW_UPDATE
	bool "GT9157 firmware in request firmware"
	help
	  Say Y here if you have GT9 touch panel GTP_REQUEST_FW_UPDATE.
	  When turn this option on, driver will search firmware in data partition,
	  it will cost extra time.
	  If unsure, say N.

config GTP_SUPPORT_I2C_DMA
	bool "GT9157 support i2c dma"
	help
	  Say Y here if you have GT9 touch panel GTP_SUPPORT_I2C_DMA.
	  When turn this option on, driver will use i2c dma mode, usually it will have
	  a better speed.
	  If unsure, say N.

config GTP_CREATE_WR_NODE
	bool "GT9157 create debug node"
	help
	  Say Y here if you have GT9 touch panel GTP_CREATE_WR_NODE.
	  When turn this option on, driver will create writeable node to let tool debug,
	  sometimes it is not allowed since it has potential security issue.
	  If unsure, say N.

config GTP_ESD_PROTECT
	bool "GT9157 esd protection"
	help
	  Say Y here if you have GT9 touch panel GTP_ESD_PROTECT.
	  When turn this option on, driver will enable ESD(Electo-Static discharge) protect,
	  it will make touch work more stable, but performance may worse.
	  If unsure, say N.

config GTP_CHARGER_DETECT
	bool "GT9157 charger detection"
	help
	  Say Y here if you have GT9 touch panel GTP_CHARGER_DETECT.
	  When turn this option on, driver detect charge mode periodic.
	  Usually not neccessay.
	  If unsure, say N.

config GTP_CHARGER_SWITCH
	bool "GT9157 charger detection"
	help
	  Say Y here if you have GT9 touch panel GTP_CHARGER_SWITCH.
	  When turn this option on, driver can send charge group data to touch IC.
	  Usually not neccessay.
	  If unsure, say N.

config GTP_DEBUG_ARRAY_ON
	bool "GT9157 debug array"
	help
	  Say Y here if you have GT9 touch panel GTP_DEBUG_ARRAY_ON.
	  When turn this option on, macro GTP_DEBUG_ARRAY will print array member, otherwise
	  it will do nothing.
	  If unsure, say N.

config GTP_DEBUG_FUNC_ON
	bool "GT9157 debug func on"
	help
	  Say Y here if you have GT9 touch panel GTP_DEBUG_FUNC_ON.
	  When turn this option on, macro GTP_DEBUG_FUNC will print function name and line,
	  otherwise it will do nothing.
	  If unsure, say N.

config GTP_DEBUG_ON
	bool "GT9157 debug on"
	help
	  Say Y here if you have GT9 touch panel GTP_DEBUG_ON.
	  When turn this option on, macro GTP_DEBUG will print the content string, otherwise
	  it will do nothing.
	  If unsure, say N.

config GTP_POWER_CTRL_SLEEP
	bool "GT9157 power down when sleeping"
	help
	  Say Y here if you have GT9 touch panel GTP_POWER_CTRL_SLEEP.
	  When turn this option on, driver will use i2c send data to control touch IC sleep,
	  otherwise it will use regulator subsystem.
	  If unsure, say N.

config GTP_HEIGHT_WIDTH_ROTATE
	bool "GT9157 rotate height and width"
	help
	  Say Y here if you have GT9 touch panel GTP_HEIGHT_WIDTH_ROTATE.
	  When turn this option on, driver will rotate the height and
	  width for some screen, otherwise it will do nothing.
	  If unsure, say N.

endmenu
