Daniel Mack | 128bb95 | 2014-07-15 09:47:52 -0700 | [diff] [blame] | 1 | Device tree bindings for Microchip CAP1106, 6 channel capacitive touch sensor |
| 2 | |
| 3 | The node for this driver must be a child of a I2C controller node, as the |
| 4 | device communication via I2C only. |
| 5 | |
| 6 | Required properties: |
| 7 | |
| 8 | compatible: Must be "microchip,cap1106" |
| 9 | |
| 10 | reg: The I2C slave address of the device. |
| 11 | Only 0x28 is valid. |
| 12 | |
| 13 | interrupts: Property describing the interrupt line the |
| 14 | device's ALERT#/CM_IRQ# pin is connected to. |
| 15 | The device only has one interrupt source. |
| 16 | |
| 17 | Optional properties: |
| 18 | |
| 19 | autorepeat: Enables the Linux input system's autorepeat |
| 20 | feature on the input device. |
| 21 | |
| 22 | microchip,sensor-gain: Defines the gain of the sensor circuitry. This |
| 23 | effectively controls the sensitivity, as a |
| 24 | smaller delta capacitance is required to |
| 25 | generate the same delta count values. |
| 26 | Valid values are 1, 2, 4, and 8. |
| 27 | By default, a gain of 1 is set. |
| 28 | |
| 29 | linux,keycodes: Specifies an array of numeric keycode values to |
| 30 | be used for the channels. If this property is |
| 31 | omitted, KEY_A, KEY_B, etc are used as |
| 32 | defaults. The array must have exactly six |
| 33 | entries. |
| 34 | |
| 35 | Example: |
| 36 | |
| 37 | i2c_controller { |
| 38 | cap1106@28 { |
| 39 | compatible = "microchip,cap1106"; |
| 40 | interrupt-parent = <&gpio1>; |
| 41 | interrupts = <0 0>; |
| 42 | reg = <0x28>; |
| 43 | autorepeat; |
| 44 | microchip,sensor-gain = <2>; |
| 45 | |
| 46 | linux,keycodes = <103 /* KEY_UP */ |
| 47 | 106 /* KEY_RIGHT */ |
| 48 | 108 /* KEY_DOWN */ |
| 49 | 105 /* KEY_LEFT */ |
| 50 | 109 /* KEY_PAGEDOWN */ |
| 51 | 104>; /* KEY_PAGEUP */ |
| 52 | }; |
| 53 | } |