The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/contrib/device-tree/Bindings/input/microchip,cap11xx.yaml

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
    2 %YAML 1.2
    3 ---
    4 $id: "http://devicetree.org/schemas/input/microchip,cap11xx.yaml#"
    5 $schema: "http://devicetree.org/meta-schemas/core.yaml#"
    6 
    7 title: Device tree bindings for Microchip CAP11xx based capacitive touch sensors
    8 
    9 description: |
   10   The Microchip CAP1xxx Family of RightTouchTM multiple-channel capacitive
   11   touch controllers and LED drivers. The device communication via I2C only.
   12 
   13 maintainers:
   14   - Rob Herring <robh@kernel.org>
   15 
   16 properties:
   17   compatible:
   18     enum:
   19       - microchip,cap1106
   20       - microchip,cap1126
   21       - microchip,cap1188
   22       - microchip,cap1206
   23 
   24   reg:
   25     maxItems: 1
   26 
   27   '#address-cells':
   28     const: 1
   29 
   30   '#size-cells':
   31     const: 0
   32 
   33   interrupts:
   34     maxItems: 1
   35     description: |
   36       Property describing the interrupt line the
   37       device's ALERT#/CM_IRQ# pin is connected to.
   38       The device only has one interrupt source.
   39 
   40   autorepeat:
   41     description: |
   42       Enables the Linux input system's autorepeat feature on the input device.
   43 
   44   linux,keycodes:
   45     minItems: 6
   46     maxItems: 6
   47     description: |
   48       Specifies an array of numeric keycode values to
   49       be used for the channels. If this property is
   50       omitted, KEY_A, KEY_B, etc are used as defaults.
   51       The array must have exactly six entries.
   52 
   53   microchip,sensor-gain:
   54     $ref: /schemas/types.yaml#/definitions/uint32
   55     default: 1
   56     enum: [1, 2, 4, 8]
   57     description: |
   58       Defines the gain of the sensor circuitry. This
   59       effectively controls the sensitivity, as a
   60       smaller delta capacitance is required to
   61       generate the same delta count values.
   62 
   63   microchip,irq-active-high:
   64     type: boolean
   65     description: |
   66       By default the interrupt pin is active low
   67       open drain. This property allows using the active
   68       high push-pull output.
   69 
   70 patternProperties:
   71   "^led@[0-7]$":
   72     type: object
   73     description: CAP11xx LEDs
   74     $ref: /schemas/leds/common.yaml#
   75 
   76     properties:
   77       reg:
   78         enum: [0, 1, 2, 3, 4, 5, 6, 7]
   79 
   80       label: true
   81 
   82       linux,default-trigger: true
   83 
   84       default-state: true
   85 
   86     required:
   87       - reg
   88 
   89     additionalProperties: false
   90 
   91 allOf:
   92   - $ref: input.yaml
   93   - if:
   94       properties:
   95         compatible:
   96           contains:
   97             enum:
   98               - microchip,cap1106
   99     then:
  100       patternProperties:
  101         "^led@[0-7]$": false
  102 
  103 required:
  104   - compatible
  105   - interrupts
  106 
  107 additionalProperties: false
  108 
  109 examples:
  110   - |
  111     i2c {
  112       #address-cells = <1>;
  113       #size-cells = <0>;
  114 
  115       touch@28 {
  116         compatible = "microchip,cap1188";
  117         interrupt-parent = <&gpio1>;
  118         interrupts = <0 0>;
  119         reg = <0x28>;
  120         autorepeat;
  121         microchip,sensor-gain = <2>;
  122 
  123         linux,keycodes = <103>, /* KEY_UP */
  124                          <106>, /* KEY_RIGHT */
  125                          <108>, /* KEY_DOWN */
  126                          <105>, /* KEY_LEFT */
  127                          <109>, /* KEY_PAGEDOWN */
  128                          <104>; /* KEY_PAGEUP */
  129 
  130         #address-cells = <1>;
  131         #size-cells = <0>;
  132 
  133         led@0 {
  134                 label = "cap11xx:green:usr0";
  135                 reg = <0>;
  136         };
  137 
  138         led@1 {
  139                 label = "cap11xx:green:usr1";
  140                 reg = <1>;
  141         };
  142 
  143         led@2 {
  144                 label = "cap11xx:green:alive";
  145                 reg = <2>;
  146                 linux,default-trigger = "heartbeat";
  147         };
  148       };
  149     };

Cache object: 2da3e252de58a19be840fb17e5fec097


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.