#
# For a description of the syntax of this configuration file,
# see misc/tools/kconfig-language.txt.
#

config INPUT_TSC2007
	bool "TI TSC2007 touchscreen controller"
	default n
	select I2C
	---help---
		Enable support for the TI TSC2007 touchscreen controller

if INPUT_TSC2007

config TSC2007_8BIT
	bool "8-bit Conversions"
	default n
	---help---
		Use faster, but less accurate, 8-bit conversions.  Default: 12-bit conversions.

config TSC2007_MULTIPLE
	bool "Multiple TSC2007 Devices"
	default n
	---help---
		Can be defined to support multiple TSC2007 devices on board.

config TSC2007_NPOLLWAITERS
	int "Number poll waiters"
	default 4
	depends on !DISABLE_POLL
	---help---
		Maximum number of threads that can be waiting on poll()

endif

config INPUT_ADS7843E
	bool "TI ADS7843/TSC2046 touchscreen controller"
	default n
	select SPI
	---help---
		Enable support for the TI/Burr-Brown ADS7842 touchscreen controller.  I believe
		that driver should be compatibile with the TI/Burr-Brown TSC2046 and XPT2046
		touchscreen controllers as well. 

if INPUT_ADS7843E

config ADS7843E_MULTIPLE
	bool "Multiple ADS7843E Devices"
	default n
	---help---
		Can be defined to support multiple ADS7843E devices on board.

config ADS7843E_NPOLLWAITERS
	int "Number poll waiters"
	default 4
	depends on !DISABLE_POLL
	---help---
		Maximum number of threads that can be waiting on poll()

config ADS7843E_SPIDEV
	int "SPI bus number"
	default 0
	---help---
		Selects the SPI bus number identying that SPI interface that
		connects the ADS843E to the MCU.

config ADS7843E_DEVMINOR
	int "Input device minor number"
	default 0
	---help---
		The ADS7843E device will be registered as /dev/inputN where N is the
		value provided by this setting.

config ADS7843E_SPIMODE
	int "SPI mode"
	default 0
	range 0 3
	---help---
		Controls the SPI mode.  The device should work in mode 0, but
		sometimes you need to experiment.

config ADS7843E_FREQUENCY
	int "SPI frequency"
	default 100000
	---help---
		Define to use a different SPI bus frequency.

config ADS7843E_SWAPXY
	bool "Swap X/Y"
	default n
	---help---
		Reverse the meaning of X and Y to handle different LCD orientations.

config ADS7843E_THRESHX
	int "X threshold"
	default 12
	---help---
		New touch positions will only be reported when the X or Y data changes by these
		thresholds. This trades reduces data rate for some loss in dragging accuracy.  For
		12-bit values so the raw ranges are 0-4095. So for example, if your display is
		320x240, then THRESHX=13 and THRESHY=17 would correspond to one pixel.  Default: 12
 
config ADS7843E_THRESHY
	int "Y threshold"
	default 12
	---help---
		New touch positions will only be reported when the X or Y data changes by these
		thresholds. This trades reduces data rate for some loss in dragging accuracy.  For
		12-bit values so the raw ranges are 0-4095. So for example, if your display is
		320x240, then THRESHX=13 and THRESHY=17 would correspond to one pixel.  Default: 12

endif

config INPUT_STMPE811
	bool "STMicro STMPE811 Driver"
	default n
	---help---
		Enables support for the STMPE811 driver 

if INPUT_STMPE811

choice
	prompt "STMPE Interface"
	default STMPE811_I2C

config STMPE811_SPI
	bool "SPI Interface"
	select SPI
	---help---
		Enables support for the SPI interface (not currently supported)

config STMPE811_I2C
	bool "STMPE811 I2C Interface"
	select I2C
	---help---
		Enables support for the I2C interface

endchoice

config STMPE811_ACTIVELOW
	bool "Active Low Interrupt"
	default n
	---help---
		The STMPE811 interrupt is provided by a discrete input (usually a
		GPIO interrupt on most MCU architectures).  This setting determines
		whether the interrupt is active high (or rising edge triggered) or
		active low (or falling edge triggered).  Default:  Active
		high/rising edge.

config STMPE811_EDGE
	bool "Edge triggered Interrupt"
	default n
	---help---
		The STMPE811 interrupt is provided by a discrete input (usually a
		GPIO interrupt on most MCU architectures).  This setting determines
		whether the interrupt is edge or level triggered.  Default: Level
		triggered.

config STMPE811_MULTIPLE
	bool "Multiple STMPE811 Devices"
	default n
	---help---
		Can be defined to support multiple STMPE811 devices on board.

config STMPE811_NPOLLWAITERS
	int "Number poll waiters"
	default 4
	depends on !DISABLE_POLL
	---help---
		Maximum number of threads that can be waiting on poll()

config STMPE811_TSC_DISABLE
	bool "Disable STMPE811 Touchscreen Support"
	default n
	---help---
		Disable driver touchscreen functionality.

config STMPE811_SWAPXY
	bool "Swap X/Y"
	default n
	depends on !STMPE811_TSC_DISABLE
	---help---
		Reverse the meaning of X and Y to handle different LCD orientations.

config STMPE811_THRESHX
	int "X threshold"
	default 12
	depends on !STMPE811_TSC_DISABLE
	---help---
		STMPE811 touchscreen data comes in a a very high rate.  New touch positions
		will only be reported when the X or Y data changes by these thresholds.
		This trades reduces data rate for some loss in dragging accuracy.  The
		STMPE811 is configure for 12-bit values so the raw ranges are 0-4095. So
		for example, if your display is 320x240, then THRESHX=13 and THRESHY=17
		would correspond to one pixel.  Default: 12
 
config STMPE811_THRESHY
	int "Y threshold"
	default 12
	depends on !STMPE811_TSC_DISABLE
	---help---
		STMPE811 touchscreen data comes in a a very high rate.  New touch positions
		will only be reported when the X or Y data changes by these thresholds.
		This trades reduces data rate for some loss in dragging accuracy.  The
		STMPE811 is configure for 12-bit values so the raw ranges are 0-4095. So
		for example, if your display is 320x240, then THRESHX=13 and THRESHY=17
		would correspond to one pixel.  Default: 12

config STMPE811_ADC_DISABLE
	bool "Disable STMPE811 ADC Support"
	default y
	---help---
		Disable driver ADC functionality.

config STMPE811_GPIO_DISABLE
	bool "Disable STMPE811 GPIO Support"
	default y
	---help---
		Disable driver GPIO functionality.

config STMPE811_GPIOINT_DISABLE
	bool "Disable STMPE811 GPIO Interrupt Support"
	default y
	depends on !STMPE811_GPIO_DISABLE
	---help---
		Disable driver GPIO interrupt functionlality (ignored if GPIO functionality is
		disabled).

config STMPE811_TEMP_DISABLE
	bool "Disable STMPE811 Temperature Sensor Support"
	default y
	---help---
		Disable driver temperature sensor functionality.

config STMPE811_REGDEBUG
	bool "Enable Register-Level STMPE811 Debug"
	default n
	depends on DEBUG
	---help---
		Enable very low register-level debug output.

endif
