~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/devicetree/bindings/mfd/iqs62x.yaml

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  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     maxItems: 1
 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: /schemas/input/iqs62x-keys.yaml
 42 
 43   pwm:
 44     $ref: /schemas/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 ...

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php