11d863d13SDaniel Campello# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
21d863d13SDaniel Campello%YAML 1.2
31d863d13SDaniel Campello---
41d863d13SDaniel Campello$id: http://devicetree.org/schemas/iio/proximity/semtech,sx9310.yaml#
51d863d13SDaniel Campello$schema: http://devicetree.org/meta-schemas/core.yaml#
61d863d13SDaniel Campello
71d863d13SDaniel Campellotitle: Semtech's SX9310 capacitive proximity sensor
81d863d13SDaniel Campello
91d863d13SDaniel Campellomaintainers:
101d863d13SDaniel Campello  - Daniel Campello <campello@chromium.org>
111d863d13SDaniel Campello
121d863d13SDaniel Campellodescription: |
131d863d13SDaniel Campello  Semtech's SX9310/SX9311 capacitive proximity/button solution.
141d863d13SDaniel Campello
151d863d13SDaniel Campello  Specifications about the devices can be found at:
161d863d13SDaniel Campello  https://www.semtech.com/products/smart-sensing/sar-sensors/sx9310
171d863d13SDaniel Campello
18*5220c176SKrzysztof KozlowskiallOf:
19*5220c176SKrzysztof Kozlowski  - $ref: /schemas/iio/iio.yaml#
20*5220c176SKrzysztof Kozlowski
211d863d13SDaniel Campelloproperties:
221d863d13SDaniel Campello  compatible:
231d863d13SDaniel Campello    enum:
241d863d13SDaniel Campello      - semtech,sx9310
251d863d13SDaniel Campello      - semtech,sx9311
261d863d13SDaniel Campello
271d863d13SDaniel Campello  reg:
281d863d13SDaniel Campello    maxItems: 1
291d863d13SDaniel Campello
301d863d13SDaniel Campello  interrupts:
311d863d13SDaniel Campello    description:
321d863d13SDaniel Campello      The sole interrupt generated by the device used to announce the
331d863d13SDaniel Campello      preceding reading request has finished and that data is
341d863d13SDaniel Campello      available or that a close/far proximity event has happened.
351d863d13SDaniel Campello    maxItems: 1
361d863d13SDaniel Campello
371d863d13SDaniel Campello  vdd-supply:
381d863d13SDaniel Campello    description: Main power supply
391d863d13SDaniel Campello
401d863d13SDaniel Campello  svdd-supply:
411d863d13SDaniel Campello    description: Host interface power supply
421d863d13SDaniel Campello
431d863d13SDaniel Campello  "#io-channel-cells":
441d863d13SDaniel Campello    const: 1
451d863d13SDaniel Campello
46e94b3c60SStephen Boyd  semtech,cs0-ground:
47e94b3c60SStephen Boyd    description: Indicates the CS0 sensor is connected to ground.
48e94b3c60SStephen Boyd    type: boolean
49e94b3c60SStephen Boyd
50e94b3c60SStephen Boyd  semtech,combined-sensors:
51e94b3c60SStephen Boyd    $ref: /schemas/types.yaml#/definitions/uint32-array
52e94b3c60SStephen Boyd    description: |
53e94b3c60SStephen Boyd      List of which sensors are combined and represented by CS3.
54e94b3c60SStephen Boyd      Possible values are -
55e94b3c60SStephen Boyd      3        - CS3 (internal)
56e94b3c60SStephen Boyd      0 1      - CS0 + CS1
57e94b3c60SStephen Boyd      1 2      - CS1 + CS2 (default)
58e94b3c60SStephen Boyd      0 1 2 3  - CS0 + CS1 + CS2 + CS3
59e94b3c60SStephen Boyd    items:
60e94b3c60SStephen Boyd      enum: [ 0, 1, 2, 3 ]
61e94b3c60SStephen Boyd    minItems: 1
62e94b3c60SStephen Boyd    maxItems: 4
63e94b3c60SStephen Boyd
64e94b3c60SStephen Boyd  semtech,resolution:
65e94b3c60SStephen Boyd    description:
66e94b3c60SStephen Boyd      Capacitance measure resolution. Refer to datasheet for more details.
67e94b3c60SStephen Boyd    enum:
68e94b3c60SStephen Boyd      - coarsest
69e94b3c60SStephen Boyd      - very-coarse
70e94b3c60SStephen Boyd      - coarse
71e94b3c60SStephen Boyd      - medium-coarse
72e94b3c60SStephen Boyd      - medium
73e94b3c60SStephen Boyd      - fine
74e94b3c60SStephen Boyd      - very-fine
75e94b3c60SStephen Boyd      - finest
76e94b3c60SStephen Boyd
77e94b3c60SStephen Boyd  semtech,startup-sensor:
78d69c6dddSRob Herring    $ref: /schemas/types.yaml#/definitions/uint32
79e94b3c60SStephen Boyd    enum: [0, 1, 2, 3]
80e94b3c60SStephen Boyd    default: 0
81e94b3c60SStephen Boyd    description:
82e94b3c60SStephen Boyd      Sensor used for start-up proximity detection. The combined
83e94b3c60SStephen Boyd      sensor is represented by the value 3. This is used for initial
84e94b3c60SStephen Boyd      compensation.
85e94b3c60SStephen Boyd
86e94b3c60SStephen Boyd  semtech,proxraw-strength:
87d69c6dddSRob Herring    $ref: /schemas/types.yaml#/definitions/uint32
88e94b3c60SStephen Boyd    enum: [0, 2, 4, 8]
89e94b3c60SStephen Boyd    default: 2
90e94b3c60SStephen Boyd    description:
91e94b3c60SStephen Boyd      PROXRAW filter strength. A value of 0 represents off, and other values
92e94b3c60SStephen Boyd      represent 1-1/N.
93e94b3c60SStephen Boyd
94e94b3c60SStephen Boyd  semtech,avg-pos-strength:
95d69c6dddSRob Herring    $ref: /schemas/types.yaml#/definitions/uint32
96e94b3c60SStephen Boyd    enum: [0, 16, 64, 128, 256, 512, 1024, 4294967295]
97e94b3c60SStephen Boyd    default: 16
98e94b3c60SStephen Boyd    description:
99e94b3c60SStephen Boyd      Average positive filter strength. A value of 0 represents off and
100e94b3c60SStephen Boyd      UINT_MAX (4294967295) represents infinite. Other values
101e94b3c60SStephen Boyd      represent 1-1/N.
102e94b3c60SStephen Boyd
1031d863d13SDaniel Campellorequired:
1041d863d13SDaniel Campello  - compatible
1051d863d13SDaniel Campello  - reg
1061d863d13SDaniel Campello  - "#io-channel-cells"
1071d863d13SDaniel Campello
108*5220c176SKrzysztof KozlowskiunevaluatedProperties: false
1091d863d13SDaniel Campello
1101d863d13SDaniel Campelloexamples:
1111d863d13SDaniel Campello  - |
1121d863d13SDaniel Campello    #include <dt-bindings/interrupt-controller/irq.h>
1131d863d13SDaniel Campello    i2c {
1141d863d13SDaniel Campello      #address-cells = <1>;
1151d863d13SDaniel Campello      #size-cells = <0>;
1161d863d13SDaniel Campello      proximity@28 {
1171d863d13SDaniel Campello        compatible = "semtech,sx9310";
1181d863d13SDaniel Campello        reg = <0x28>;
1191d863d13SDaniel Campello        interrupt-parent = <&pio>;
1201d863d13SDaniel Campello        interrupts = <5 IRQ_TYPE_LEVEL_LOW 5>;
1211d863d13SDaniel Campello        vdd-supply = <&pp3300_a>;
1221d863d13SDaniel Campello        svdd-supply = <&pp1800_prox>;
1231d863d13SDaniel Campello        #io-channel-cells = <1>;
124e94b3c60SStephen Boyd        semtech,cs0-ground;
125e94b3c60SStephen Boyd        semtech,combined-sensors = <1 2 3>;
126e94b3c60SStephen Boyd        semtech,resolution = "fine";
127e94b3c60SStephen Boyd        semtech,startup-sensor = <1>;
128e94b3c60SStephen Boyd        semtech,proxraw-strength = <2>;
129e94b3c60SStephen Boyd        semtech,avg-pos-strength = <64>;
1301d863d13SDaniel Campello      };
1311d863d13SDaniel Campello    };
132