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/mfd/iqs62x.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/mfd/iqs62x.yaml#
    5 $schema: http://devicetree.org/meta-schemas/core.yaml#
    6 
    7 title: Azoteq IQS620A/621/622/624/625 Multi-Function Sensors
    8 
    9 maintainers:
   10   - Jeff LaBundy <jeff@labundy.com>
   11 
   12 description: |
   13   The Azoteq IQS620A, IQS621, IQS622, IQS624 and IQS625 multi-function sensors
   14   integrate multiple sensing technologies in a single package.
   15 
   16   Link to datasheets: https://www.azoteq.com/
   17 
   18 properties:
   19   compatible:
   20     enum:
   21       - azoteq,iqs620a
   22       - azoteq,iqs621
   23       - azoteq,iqs622
   24       - azoteq,iqs624
   25       - azoteq,iqs625
   26 
   27   reg:
   28     maxItems: 1
   29 
   30   interrupts:
   31     maxItems: 1
   32 
   33   firmware-name:
   34     $ref: /schemas/types.yaml#/definitions/string
   35     description:
   36       Specifies the name of the calibration and configuration file selected by
   37       the driver. If this property is omitted, the name is chosen based on the
   38       device name with ".bin" as the extension (e.g. iqs620a.bin for IQS620A).
   39 
   40   keys:
   41     $ref: ../input/iqs62x-keys.yaml
   42 
   43   pwm:
   44     $ref: ../pwm/iqs620a-pwm.yaml
   45 
   46 required:
   47   - compatible
   48   - reg
   49   - interrupts
   50 
   51 additionalProperties: false
   52 
   53 examples:
   54   - |
   55     /*
   56      * Dual capacitive buttons with proximity-activated function, unipolar lid
   57      * switch and panel-mounted LED.
   58      */
   59     #include <dt-bindings/input/input.h>
   60     #include <dt-bindings/interrupt-controller/irq.h>
   61 
   62     i2c {
   63             #address-cells = <1>;
   64             #size-cells = <0>;
   65 
   66             iqs620a@44 {
   67                     compatible = "azoteq,iqs620a";
   68                     reg = <0x44>;
   69                     interrupt-parent = <&gpio>;
   70                     interrupts = <17 IRQ_TYPE_LEVEL_LOW>;
   71 
   72                     keys {
   73                             compatible = "azoteq,iqs620a-keys";
   74 
   75                             linux,keycodes = <KEY_SELECT>,
   76                                              <KEY_MENU>,
   77                                              <KEY_OK>,
   78                                              <KEY_MENU>;
   79 
   80                             hall-switch-south {
   81                                     linux,code = <SW_LID>;
   82                                     azoteq,use-prox;
   83                             };
   84                     };
   85 
   86                     iqs620a_pwm: pwm {
   87                             compatible = "azoteq,iqs620a-pwm";
   88                             #pwm-cells = <2>;
   89                     };
   90             };
   91     };
   92 
   93     pwmleds {
   94             compatible = "pwm-leds";
   95 
   96             led-1 {
   97                     pwms = <&iqs620a_pwm 0 1000000>;
   98                     max-brightness = <255>;
   99             };
  100     };
  101 
  102   - |
  103     /* Single inductive button with bipolar dock/tablet-mode switch. */
  104     #include <dt-bindings/input/input.h>
  105     #include <dt-bindings/interrupt-controller/irq.h>
  106 
  107     i2c {
  108             #address-cells = <1>;
  109             #size-cells = <0>;
  110 
  111             iqs620a@44 {
  112                     compatible = "azoteq,iqs620a";
  113                     reg = <0x44>;
  114                     interrupt-parent = <&gpio>;
  115                     interrupts = <17 IRQ_TYPE_LEVEL_LOW>;
  116 
  117                     firmware-name = "iqs620a_coil.bin";
  118 
  119                     keys {
  120                             compatible = "azoteq,iqs620a-keys";
  121 
  122                             linux,keycodes = <0>,
  123                                              <0>,
  124                                              <0>,
  125                                              <0>,
  126                                              <0>,
  127                                              <0>,
  128                                              <KEY_MUTE>;
  129 
  130                             hall-switch-north {
  131                                     linux,code = <SW_DOCK>;
  132                             };
  133 
  134                             hall-switch-south {
  135                                     linux,code = <SW_TABLET_MODE>;
  136                             };
  137                     };
  138             };
  139     };
  140 
  141   - |
  142     /* Dual capacitive buttons with volume knob. */
  143     #include <dt-bindings/input/input.h>
  144     #include <dt-bindings/interrupt-controller/irq.h>
  145 
  146     i2c {
  147             #address-cells = <1>;
  148             #size-cells = <0>;
  149 
  150             iqs624@44 {
  151                     compatible = "azoteq,iqs624";
  152                     reg = <0x44>;
  153                     interrupt-parent = <&gpio>;
  154                     interrupts = <17 IRQ_TYPE_LEVEL_LOW>;
  155 
  156                     keys {
  157                             compatible = "azoteq,iqs624-keys";
  158 
  159                             linux,keycodes = <BTN_0>,
  160                                              <0>,
  161                                              <BTN_1>,
  162                                              <0>,
  163                                              <0>,
  164                                              <0>,
  165                                              <0>,
  166                                              <0>,
  167                                              <0>,
  168                                              <0>,
  169                                              <0>,
  170                                              <0>,
  171                                              <0>,
  172                                              <0>,
  173                                              <KEY_VOLUMEUP>,
  174                                              <KEY_VOLUMEDOWN>;
  175                     };
  176             };
  177     };
  178 
  179 ...

Cache object: dd9601b776cbf385357aa25b10433c68


[ 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.