xref: /freebsd/sys/contrib/device-tree/Bindings/iio/proximity/semtech,sx9360.yaml (revision cb7aa33ac6cd46a5434798e50363136e64f3ae98)
1c9ccf3a3SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2c9ccf3a3SEmmanuel Vadot%YAML 1.2
3c9ccf3a3SEmmanuel Vadot---
4c9ccf3a3SEmmanuel Vadot$id: http://devicetree.org/schemas/iio/proximity/semtech,sx9360.yaml#
5c9ccf3a3SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6c9ccf3a3SEmmanuel Vadot
7c9ccf3a3SEmmanuel Vadottitle: Semtech's SX9360 capacitive proximity sensor
8c9ccf3a3SEmmanuel Vadot
9c9ccf3a3SEmmanuel Vadotmaintainers:
10c9ccf3a3SEmmanuel Vadot  - Gwendal Grignou <gwendal@chromium.org>
11c9ccf3a3SEmmanuel Vadot  - Daniel Campello <campello@chromium.org>
12c9ccf3a3SEmmanuel Vadot
13c9ccf3a3SEmmanuel Vadotdescription: |
14c9ccf3a3SEmmanuel Vadot  Semtech's SX9360 proximity sensor.
15c9ccf3a3SEmmanuel Vadot
16c9ccf3a3SEmmanuel Vadotproperties:
17c9ccf3a3SEmmanuel Vadot  compatible:
18c9ccf3a3SEmmanuel Vadot    const: semtech,sx9360
19c9ccf3a3SEmmanuel Vadot
20c9ccf3a3SEmmanuel Vadot  reg:
21c9ccf3a3SEmmanuel Vadot    maxItems: 1
22c9ccf3a3SEmmanuel Vadot
23c9ccf3a3SEmmanuel Vadot  interrupts:
24c9ccf3a3SEmmanuel Vadot    description:
25c9ccf3a3SEmmanuel Vadot      Generated by device to announce preceding read request has finished
26c9ccf3a3SEmmanuel Vadot      and data is available or that a close/far proximity event has happened.
27c9ccf3a3SEmmanuel Vadot    maxItems: 1
28c9ccf3a3SEmmanuel Vadot
29c9ccf3a3SEmmanuel Vadot  vdd-supply:
30c9ccf3a3SEmmanuel Vadot    description: Main power supply
31c9ccf3a3SEmmanuel Vadot
32c9ccf3a3SEmmanuel Vadot  svdd-supply:
33c9ccf3a3SEmmanuel Vadot    description: Host interface power supply
34c9ccf3a3SEmmanuel Vadot
35c9ccf3a3SEmmanuel Vadot  "#io-channel-cells":
36c9ccf3a3SEmmanuel Vadot    const: 1
37c9ccf3a3SEmmanuel Vadot
38c9ccf3a3SEmmanuel Vadot  semtech,resolution:
39*cb7aa33aSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
40c9ccf3a3SEmmanuel Vadot    enum: [8, 16, 32, 64, 128, 256, 512, 1024]
41c9ccf3a3SEmmanuel Vadot    description:
42c9ccf3a3SEmmanuel Vadot      Capacitance measurement resolution. For both phases, "reference" and
43c9ccf3a3SEmmanuel Vadot      "measurement". Higher the number, higher the resolution.
44c9ccf3a3SEmmanuel Vadot    default: 128
45c9ccf3a3SEmmanuel Vadot
46c9ccf3a3SEmmanuel Vadot  semtech,proxraw-strength:
47c9ccf3a3SEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
48c9ccf3a3SEmmanuel Vadot    minimum: 0
49c9ccf3a3SEmmanuel Vadot    maximum: 7
50c9ccf3a3SEmmanuel Vadot    default: 1
51c9ccf3a3SEmmanuel Vadot    description:
52c9ccf3a3SEmmanuel Vadot      PROXRAW filter strength for both phases. A value of 0 represents off,
53c9ccf3a3SEmmanuel Vadot      and other values represent 1-1/2^N.
54c9ccf3a3SEmmanuel Vadot
55c9ccf3a3SEmmanuel Vadot  semtech,avg-pos-strength:
56c9ccf3a3SEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
57c9ccf3a3SEmmanuel Vadot    enum: [0, 16, 64, 128, 256, 512, 1024, 4294967295]
58c9ccf3a3SEmmanuel Vadot    default: 16
59c9ccf3a3SEmmanuel Vadot    description: |
60c9ccf3a3SEmmanuel Vadot      Average positive filter strength. A value of 0 represents off and
61c9ccf3a3SEmmanuel Vadot      UINT_MAX (4294967295) represents infinite. Other values
62c9ccf3a3SEmmanuel Vadot      represent 1-1/N.
63c9ccf3a3SEmmanuel Vadot
64b97ee269SEmmanuel Vadot  semtech,input-precharge-resistor-ohms:
65b97ee269SEmmanuel Vadot    default: 0
66b97ee269SEmmanuel Vadot    multipleOf: 2000
67b97ee269SEmmanuel Vadot    minimum: 0
68b97ee269SEmmanuel Vadot    maximum: 30000
69b97ee269SEmmanuel Vadot    description:
70b97ee269SEmmanuel Vadot      Pre-charge input resistance in Ohm.
71b97ee269SEmmanuel Vadot
72c9ccf3a3SEmmanuel Vadotrequired:
73c9ccf3a3SEmmanuel Vadot  - compatible
74c9ccf3a3SEmmanuel Vadot  - reg
75c9ccf3a3SEmmanuel Vadot  - "#io-channel-cells"
76c9ccf3a3SEmmanuel Vadot
77c9ccf3a3SEmmanuel VadotadditionalProperties: false
78c9ccf3a3SEmmanuel Vadot
79c9ccf3a3SEmmanuel Vadotexamples:
80c9ccf3a3SEmmanuel Vadot  - |
81c9ccf3a3SEmmanuel Vadot    #include <dt-bindings/interrupt-controller/irq.h>
82c9ccf3a3SEmmanuel Vadot    i2c {
83c9ccf3a3SEmmanuel Vadot      #address-cells = <1>;
84c9ccf3a3SEmmanuel Vadot      #size-cells = <0>;
85c9ccf3a3SEmmanuel Vadot      proximity@28 {
86c9ccf3a3SEmmanuel Vadot        compatible = "semtech,sx9360";
87c9ccf3a3SEmmanuel Vadot        reg = <0x28>;
88c9ccf3a3SEmmanuel Vadot        interrupt-parent = <&pio>;
89c9ccf3a3SEmmanuel Vadot        interrupts = <5 IRQ_TYPE_LEVEL_LOW 5>;
90c9ccf3a3SEmmanuel Vadot        vdd-supply = <&pp3300_a>;
91c9ccf3a3SEmmanuel Vadot        svdd-supply = <&pp1800_prox>;
92c9ccf3a3SEmmanuel Vadot        #io-channel-cells = <1>;
93c9ccf3a3SEmmanuel Vadot        semtech,resolution = <256>;
94c9ccf3a3SEmmanuel Vadot        semtech,proxraw-strength = <2>;
95c9ccf3a3SEmmanuel Vadot        semtech,avg-pos-strength = <64>;
96b97ee269SEmmanuel Vadot        semtech,input-precharge-resistor-ohms = <4000>;
97c9ccf3a3SEmmanuel Vadot      };
98c9ccf3a3SEmmanuel Vadot    };
99