summaryrefslogtreecommitdiff
path: root/nuttx/drivers/input/Kconfig
blob: 2a58768f474c19de196e1cdc06b447ddbf23dcc0 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
#
# For a description of the syntax of this configuration file,
# see misc/tools/kconfig-language.txt.
#

config MOUSE
	bool "Enable mouse support"
	default n
	---help---
		Enable support for mouse devices.

if MOUSE

config MOUSE_WHEEL
	bool "Enable mouse wheel support"
	default n
	---help---
		Enable support for a 4-button mouse report that includes a while
		position.

endif # MOUSE

config INPUT_MAX11802
	bool "MAX11802 touchscreen controller"
	default n
	select SPI
	---help---
		Enable support for the MAX11802 touchscreen controller

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 reduced data rates for some loss in dragging accuracy.  For
		12-bit values 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 reduced data rates for some loss in dragging accuracy.  For
		12-bit values 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_MXT
	bool "Atmel maXTouch Driver"
	default n
	---help---
		Enables support for the Atmel maXTouch driver

if INPUT_MXT

config MXT_THRESHX
	int "X threshold"
	default 5
	---help---
		New touch positions will only be reported when the X or Y data
		changes by these thresholds. This trades reduced data rates for some
		loss in dragging accuracy.  For 12-bit values the raw ranges are
		0-4095. So for example, if your display is 800x480, then THRESHX=5
		and THRESHY=8 would correspond to a one pixel change. Default: 5

		NOTE: This does nothing to reduce the interrupt rate.  It only
		reduces the rate at which touch events are reports.

config MXT_THRESHY
	int "Y threshold"
	default 8
	---help---
		New touch positions will only be reported when the X or Y data
		changes by these thresholds. This trades reduced data rates for some
		loss in dragging accuracy.  For 12-bit values the raw ranges are
		0-4095. So for example, if your display is 800x480, then THRESHX=5
		and THRESHY=8 would correspond to a one pixel change. Default: 8

		NOTE: This does nothing to reduce the interrupt rate.  It only
		reduces the rate at which touch events are reports.

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

config MXT_DISABLE_DEBUG_VERBOSE
	bool "Disable verbose debug output"
	default y
	depends on DEBUG_VERBOSE && DEBUG_INPUT
	---help---
		The maXTouch tends to generate interrupts at a high rate during the
		contact.  If verbose debug is enabled in this driver, you may not
		be able to get anything done because of the high debug output rate.

		This setting will allow you to keep verbose touchscreen debug output
		in other modules, but to specifically suppress the debug out from
		the MXT driver.  Debug (non-verbose) errors will still be generated,
		but the chit-chat level will be eliminated.

endif # INPUT_MXT

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 reduced data rates for some loss in dragging accuracy.  The
		STMPE811 is configure for 12-bit values 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 reduced data rates for some loss in dragging accuracy.  The
		STMPE811 is configure for 12-bit values 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 # INPUT_STMPE811

config DJOYSTICK
	bool "Discrete Joystick"
	default n
	---help---
		Enable standard discrete joystick upper half driver.  A discrete
		joystick refers to a joystick that could be implemented entirely
		with GPIO input pins.  So up, down, left, and right are all discrete
		values like buttons (as opposed to integer values like you might
		obtain from an analog joystick).

if DJOYSTICK

config DJOYSTICK_NPOLLWAITERS
	int "Max Number of Poll Waiters"
	default 2
	depends on !DISABLE_POLL

endif # DJOYSTICK

config AJOYSTICK
	bool "Analog Joystick"
	default n
	---help---
		Enable standard analog joystick upper half driver.  An analog
		joystick refers to a joystick that provides position data as an
		integer value that might have been obtained through Analog-
		to-Digital Conversion (ADC).  The analog positional data may also
		be accompanied by discrete button data.

if AJOYSTICK

config AJOYSTICK_NPOLLWAITERS
	int "Max Number of Poll Waiters"
	default 2
	depends on !DISABLE_POLL

endif # AJOYSTICK