| # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) |
| %YAML 1.2 |
| --- |
| $id: http://devicetree.org/schemas/iio/proximity/semtech,sx9310.yaml# |
| $schema: http://devicetree.org/meta-schemas/core.yaml# |
| |
| title: Semtech's SX9310 capacitive proximity sensor |
| |
| maintainers: |
| - Daniel Campello <campello@chromium.org> |
| |
| description: | |
| Semtech's SX9310/SX9311 capacitive proximity/button solution. |
| |
| Specifications about the devices can be found at: |
| https://www.semtech.com/products/smart-sensing/sar-sensors/sx9310 |
| |
| properties: |
| compatible: |
| enum: |
| - semtech,sx9310 |
| - semtech,sx9311 |
| |
| reg: |
| maxItems: 1 |
| |
| interrupts: |
| description: |
| The sole interrupt generated by the device used to announce the |
| preceding reading request has finished and that data is |
| available or that a close/far proximity event has happened. |
| maxItems: 1 |
| |
| vdd-supply: |
| description: Main power supply |
| |
| svdd-supply: |
| description: Host interface power supply |
| |
| "#io-channel-cells": |
| const: 1 |
| |
| semtech,cs0-ground: |
| description: Indicates the CS0 sensor is connected to ground. |
| type: boolean |
| |
| semtech,combined-sensors: |
| $ref: /schemas/types.yaml#/definitions/uint32-array |
| description: | |
| List of which sensors are combined and represented by CS3. |
| Possible values are - |
| 3 - CS3 (internal) |
| 0 1 - CS0 + CS1 |
| 1 2 - CS1 + CS2 (default) |
| 0 1 2 3 - CS0 + CS1 + CS2 + CS3 |
| items: |
| enum: [ 0, 1, 2, 3 ] |
| minItems: 1 |
| maxItems: 4 |
| |
| semtech,resolution: |
| description: |
| Capacitance measure resolution. Refer to datasheet for more details. |
| enum: |
| - coarsest |
| - very-coarse |
| - coarse |
| - medium-coarse |
| - medium |
| - fine |
| - very-fine |
| - finest |
| |
| semtech,startup-sensor: |
| $ref: /schemas/types.yaml#/definitions/uint32 |
| enum: [0, 1, 2, 3] |
| default: 0 |
| description: |
| Sensor used for start-up proximity detection. The combined |
| sensor is represented by the value 3. This is used for initial |
| compensation. |
| |
| semtech,proxraw-strength: |
| $ref: /schemas/types.yaml#/definitions/uint32 |
| enum: [0, 2, 4, 8] |
| default: 2 |
| description: |
| PROXRAW filter strength. A value of 0 represents off, and other values |
| represent 1-1/N. |
| |
| semtech,avg-pos-strength: |
| $ref: /schemas/types.yaml#/definitions/uint32 |
| enum: [0, 16, 64, 128, 256, 512, 1024, 4294967295] |
| default: 16 |
| description: |
| Average positive filter strength. A value of 0 represents off and |
| UINT_MAX (4294967295) represents infinite. Other values |
| represent 1-1/N. |
| |
| required: |
| - compatible |
| - reg |
| - "#io-channel-cells" |
| |
| additionalProperties: false |
| |
| examples: |
| - | |
| #include <dt-bindings/interrupt-controller/irq.h> |
| i2c { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| proximity@28 { |
| compatible = "semtech,sx9310"; |
| reg = <0x28>; |
| interrupt-parent = <&pio>; |
| interrupts = <5 IRQ_TYPE_LEVEL_LOW 5>; |
| vdd-supply = <&pp3300_a>; |
| svdd-supply = <&pp1800_prox>; |
| #io-channel-cells = <1>; |
| semtech,cs0-ground; |
| semtech,combined-sensors = <1 2 3>; |
| semtech,resolution = "fine"; |
| semtech,startup-sensor = <1>; |
| semtech,proxraw-strength = <2>; |
| semtech,avg-pos-strength = <64>; |
| }; |
| }; |