xref: /freebsd/sys/contrib/device-tree/Bindings/input/cap11xx.txt (revision 0fca6ea1d4eea4c934cfff25ac9ee8ad6fe95583)
1Device tree bindings for Microchip CAP11xx based capacitive touch sensors
2
3The node for this device must be a child of a I2C controller node, as the
4device communication via I2C only.
5
6Required properties:
7
8	compatible:		Must contain one of:
9					"microchip,cap1106"
10					"microchip,cap1126"
11					"microchip,cap1188"
12
13	reg:			The I2C slave address of the device.
14
15	interrupts:		Property describing the interrupt line the
16				device's ALERT#/CM_IRQ# pin is connected to.
17				The device only has one interrupt source.
18
19Optional properties:
20
21	autorepeat:		Enables the Linux input system's autorepeat
22				feature on the input device.
23
24	microchip,sensor-gain:	Defines the gain of the sensor circuitry. This
25				effectively controls the sensitivity, as a
26				smaller delta capacitance is required to
27				generate the same delta count values.
28				Valid values are 1, 2, 4, and 8.
29				By default, a gain of 1 is set.
30
31	microchip,irq-active-high:	By default the interrupt pin is active low
32				open drain. This property allows using the active
33				high push-pull output.
34
35	linux,keycodes:		Specifies an array of numeric keycode values to
36				be used for the channels. If this property is
37				omitted, KEY_A, KEY_B, etc are used as
38				defaults. The array must have exactly six
39				entries.
40
41Example:
42
43i2c_controller {
44	cap1106@28 {
45		compatible = "microchip,cap1106";
46		interrupt-parent = <&gpio1>;
47		interrupts = <0 0>;
48		reg = <0x28>;
49		autorepeat;
50		microchip,sensor-gain = <2>;
51
52		linux,keycodes = <103>,		/* KEY_UP */
53				 <106>,		/* KEY_RIGHT */
54				 <108>,		/* KEY_DOWN */
55				 <105>,		/* KEY_LEFT */
56				 <109>,		/* KEY_PAGEDOWN */
57				 <104>;		/* KEY_PAGEUP */
58
59		#address-cells = <1>;
60		#size-cells = <0>;
61
62		usr@0 {
63			label = "cap11xx:green:usr0";
64			reg = <0>;
65		};
66
67		usr@1 {
68			label = "cap11xx:green:usr1";
69			reg = <1>;
70		};
71
72		alive@2 {
73			label = "cap11xx:green:alive";
74			reg = <2>;
75			linux,default_trigger = "heartbeat";
76		};
77	};
78}
79