Kernel-4.18.0-80.el8_cap11xx

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";
    };
};

}