Documentation / devicetree / bindings / input / cap11xx.txt


Based on kernel version 5.15. Page generated on 2021-11-01 09:19 EST.

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
Device tree bindings for Microchip CAP11xx based capacitive touch sensors

The node for this device must be a child of a I2C controller node, as the
device communication via I2C only.

Required properties:

	compatible:		Must contain one of:
					"microchip,cap1106"
					"microchip,cap1126"
					"microchip,cap1188"

	reg:			The I2C slave address of the device.

	interrupts:		Property describing the interrupt line the
				device's ALERT#/CM_IRQ# pin is connected to.
				The device only has one interrupt source.

Optional properties:

	autorepeat:		Enables the Linux input system's autorepeat
				feature on the input device.

	microchip,sensor-gain:	Defines the gain of the sensor circuitry. This
				effectively controls the sensitivity, as a
				smaller delta capacitance is required to
				generate the same delta count values.
				Valid values are 1, 2, 4, and 8.
				By default, a gain of 1 is set.

	microchip,irq-active-high:	By default the interrupt pin is active low
				open drain. This property allows using the active
				high push-pull output.

	linux,keycodes:		Specifies an array of numeric keycode values to
				be used for the channels. If this property is
				omitted, KEY_A, KEY_B, etc are used as
				defaults. The array must have exactly six
				entries.

Example:

i2c_controller {
	cap1106@28 {
		compatible = "microchip,cap1106";
		interrupt-parent = <&gpio1>;
		interrupts = <0 0>;
		reg = <0x28>;
		autorepeat;
		microchip,sensor-gain = <2>;

		linux,keycodes = <103>,		/* KEY_UP */
				 <106>,		/* KEY_RIGHT */
				 <108>,		/* KEY_DOWN */
				 <105>,		/* KEY_LEFT */
				 <109>,		/* KEY_PAGEDOWN */
				 <104>;		/* KEY_PAGEUP */

		#address-cells = <1>;
		#size-cells = <0>;

		usr@0 {
			label = "cap11xx:green:usr0";
			reg = <0>;
		};

		usr@1 {
			label = "cap11xx:green:usr1";
			reg = <1>;
		};

		alive@2 {
			label = "cap11xx:green:alive";
			reg = <2>;
			linux,default_trigger = "heartbeat";
		};
	};
}