Resguardo inicial

This commit is contained in:
lastdragon
2026-09-06 12:53:21 -06:00
parent 662efe3c2a
commit ad2088d178
94853 changed files with 43200404 additions and 0 deletions
@@ -0,0 +1,74 @@
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/iio/proximity/ams,as3935.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Austrian Microsystems AS3935 Franklin lightning sensor
maintainers:
- Matt Ranostay <matt.ranostay@konsulko.com>
description:
This lightning distance sensor uses an I2C or SPI interface. The
binding currently only covers the SPI option.
properties:
compatible:
const: ams,as3935
reg:
maxItems: 1
spi-max-frequency:
maximum: 2000000
spi-cpha: true
interrupts:
maxItems: 1
ams,tuning-capacitor-pf:
$ref: /schemas/types.yaml#/definitions/uint32
description:
Calibration tuning capacitor stepping value. This will require using
the calibration data from the manufacturer.
minimum: 0
maximum: 120
ams,nflwdth:
$ref: /schemas/types.yaml#/definitions/uint32
description:
Set the noise and watchdog threshold register on startup. This will
need to set according to the noise from the MCU board, and possibly
the local environment. Refer to the datasheet for the threshold settings.
required:
- compatible
- reg
- spi-cpha
- interrupts
allOf:
- $ref: /schemas/spi/spi-peripheral-props.yaml#
unevaluatedProperties: false
examples:
- |
spi {
#address-cells = <1>;
#size-cells = <0>;
lightning@0 {
compatible = "ams,as3935";
reg = <0>;
spi-max-frequency = <400000>;
spi-cpha;
interrupt-parent = <&gpio1>;
interrupts = <16 1>;
ams,tuning-capacitor-pf = <80>;
ams,nflwdth = <0x44>;
};
};
...
@@ -0,0 +1,61 @@
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/iio/proximity/awinic,aw96103.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Awinic's AW96103 capacitive proximity sensor and similar
maintainers:
- Wang Shuaijie <wangshuaijie@awinic.com>
description: |
Awinic's AW96103/AW96105 proximity sensor.
The specific absorption rate (SAR) is a metric that measures
the degree of absorption of electromagnetic radiation emitted by
wireless devices, such as mobile phones and tablets, by human tissue.
In mobile phone applications, the proximity sensor is primarily
used to detect the proximity of the human body to the phone. When the
phone approaches the human body, it will actively reduce the transmit
power of the antenna to keep the SAR within a safe range. Therefore,
we also refer to the proximity sensor as a SAR sensor.
properties:
compatible:
enum:
- awinic,aw96103
- awinic,aw96105
reg:
maxItems: 1
interrupts:
description:
Generated by the device to announce that a close/far
proximity event has happened.
maxItems: 1
vcc-supply: true
required:
- compatible
- reg
- interrupts
- vcc-supply
additionalProperties: false
examples:
- |
#include <dt-bindings/interrupt-controller/irq.h>
i2c {
#address-cells = <1>;
#size-cells = <0>;
proximity@12 {
compatible = "awinic,aw96103";
reg = <0x12>;
interrupt-parent = <&gpio>;
interrupts = <23 IRQ_TYPE_EDGE_FALLING>;
vcc-supply = <&pp1800_prox>;
};
};
@@ -0,0 +1,86 @@
# SPDX-License-Identifier: GPL-2.0
%YAML 1.2
---
$id: http://devicetree.org/schemas/iio/proximity/devantech-srf04.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Devantech SRF04 and Maxbotix mb1000 ultrasonic range finder
maintainers:
- Andreas Klinger <ak@it-klinger.de>
description: |
Bit-banging driver using two GPIOs:
- trigger-gpio is raised by the driver to start sending out an ultrasonic
burst
- echo-gpio is held high by the sensor after sending ultrasonic burst
until it is received once again
Specifications about the devices can be found at:
https://www.robot-electronics.co.uk/htm/srf04tech.htm
https://www.maxbotix.com/documents/LV-MaxSonar-EZ_Datasheet.pdf
properties:
compatible:
enum:
- devantech,srf04
- maxbotix,mb1000
- maxbotix,mb1010
- maxbotix,mb1020
- maxbotix,mb1030
- maxbotix,mb1040
trig-gpios:
description:
Definition of the GPIO for the triggering (output)
This GPIO is set for about 10 us by the driver to tell the device it
should initiate the measurement cycle.
See Documentation/devicetree/bindings/gpio/gpio.txt for information
on how to specify a consumer gpio.
maxItems: 1
echo-gpios:
description:
Definition of the GPIO for the echo (input)
This GPIO is set by the device as soon as an ultrasonic burst is sent
out and reset when the first echo is received.
Thus this GPIO is set while the ultrasonic waves are doing one round
trip.
It needs to be an GPIO which is able to deliver an interrupt because
the time between two interrupts is measured in the driver.
maxItems: 1
power-gpios:
description:
Definition of the GPIO for power management of connected peripheral
(output).
This GPIO can be used by the external hardware for power management.
When the device gets suspended it's switched off and when it resumes
it's switched on again. After some period of inactivity the driver
get suspended automatically (autosuspend feature).
maxItems: 1
startup-time-ms:
description:
This is the startup time the device needs after a resume to be up and
running.
minimum: 0
maximum: 1000
default: 100
required:
- compatible
- trig-gpios
- echo-gpios
additionalProperties: false
examples:
- |
#include <dt-bindings/gpio/gpio.h>
proximity {
compatible = "devantech,srf04";
trig-gpios = <&gpio1 15 GPIO_ACTIVE_HIGH>;
echo-gpios = <&gpio2 6 GPIO_ACTIVE_HIGH>;
};
@@ -0,0 +1,35 @@
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/iio/proximity/google,cros-ec-mkbp-proximity.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: ChromeOS EC MKBP Proximity Sensor
maintainers:
- Stephen Boyd <swboyd@chromium.org>
- Benson Leung <bleung@chromium.org>
description: |
Google's ChromeOS EC sometimes has the ability to detect user proximity.
This is implemented on the EC as near/far logic and exposed to the OS
via an MKBP switch bit.
properties:
compatible:
const: google,cros-ec-mkbp-proximity
label:
description: Name for proximity sensor
required:
- compatible
additionalProperties: false
examples:
- |
proximity {
compatible = "google,cros-ec-mkbp-proximity";
label = "proximity-wifi-lte";
};
@@ -0,0 +1,60 @@
# SPDX-License-Identifier: GPL-2.0
%YAML 1.2
---
$id: http://devicetree.org/schemas/iio/proximity/maxbotix,mb1232.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: MaxBotix I2CXL-MaxSonar ultrasonic distance sensor
maintainers:
- Andreas Klinger <ak@it-klinger.de>
description: |
MaxBotix I2CXL-MaxSonar ultrasonic distance sensor of type mb1202,
mb1212, mb1222, mb1232, mb1242, mb7040 or mb7137 using the i2c interface
for ranging
Specifications about the devices can be found at:
https://www.maxbotix.com/documents/I2CXL-MaxSonar-EZ_Datasheet.pdf
properties:
compatible:
enum:
- maxbotix,mb1202
- maxbotix,mb1212
- maxbotix,mb1222
- maxbotix,mb1232
- maxbotix,mb1242
- maxbotix,mb7040
- maxbotix,mb7137
reg:
maxItems: 1
interrupts:
description:
Interrupt used to announce the preceding reading request has finished
and that data is available. If no interrupt is specified the device
driver falls back to wait a fixed amount of time until data can be
retrieved.
maxItems: 1
required:
- compatible
- reg
additionalProperties: false
examples:
- |
#include <dt-bindings/interrupt-controller/irq.h>
i2c {
#address-cells = <1>;
#size-cells = <0>;
proximity@70 {
compatible = "maxbotix,mb1232";
reg = <0x70>;
interrupt-parent = <&gpio2>;
interrupts = <2 IRQ_TYPE_EDGE_FALLING>;
};
};
@@ -0,0 +1,60 @@
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/iio/proximity/murata,irsd200.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Murata IRS-D200 PIR sensor
maintainers:
- Waqar Hameed <waqar.hameed@axis.com>
description:
PIR sensor for human detection.
properties:
compatible:
const: murata,irsd200
reg:
items:
- enum:
- 0x48
- 0x49
description: |
When the AD pin is connected to GND, the slave address is 0x48.
When the AD pin is connected to VDD, the slave address is 0x49.
interrupts:
maxItems: 1
description:
Type should be IRQ_TYPE_EDGE_RISING.
vdd-supply:
description:
3.3 V supply voltage.
required:
- compatible
- reg
- interrupts
- vdd-supply
additionalProperties: false
examples:
- |
#include <dt-bindings/interrupt-controller/irq.h>
i2c {
#address-cells = <1>;
#size-cells = <0>;
proximity@48 {
compatible = "murata,irsd200";
reg = <0x48>;
interrupts = <24 IRQ_TYPE_EDGE_RISING>;
vdd-supply = <&regulator_3v3>;
};
};
...
@@ -0,0 +1,62 @@
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/iio/proximity/nicera,d3323aa.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Nicera D3-323-AA PIR sensor
maintainers:
- Waqar Hameed <waqar.hameed@axis.com>
description: |
PIR sensor for human detection.
Datasheet: https://www.endrich.com/Datenbl%C3%A4tter/Sensoren/D3-323-AA_e.pdf
properties:
compatible:
const: nicera,d3323aa
vdd-supply:
description:
Supply voltage (1.8 to 5.5 V).
vout-clk-gpios:
maxItems: 1
description:
GPIO for clock and detection.
After reset, the device signals with two falling edges on this pin that it
is ready for configuration (within 1.2 s).
During configuration, it is used as clock for data reading and writing (on
data-gpios).
After all this, when device is in operational mode, it signals on this pin
for any detections.
data-gpios:
maxItems: 1
description:
GPIO for data reading and writing. This is denoted "DO (SI)" in datasheet.
During configuration, this pin is used for writing and reading
configuration data (together with vout-clk-gpios as clock).
After this, during operational mode, the device will output serial data on
this GPIO.
required:
- compatible
- vdd-supply
- vout-clk-gpios
- data-gpios
additionalProperties: false
examples:
- |
#include <dt-bindings/gpio/gpio.h>
proximity {
compatible = "nicera,d3323aa";
vdd-supply = <&regulator_3v3>;
vout-clk-gpios = <&gpio 78 GPIO_ACTIVE_HIGH>;
data-gpios = <&gpio 76 GPIO_ACTIVE_HIGH>;
};
...
@@ -0,0 +1,53 @@
# SPDX-License-Identifier: (GPL-2.0-or-later OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/iio/proximity/parallax-ping.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Parallax PING))) and LaserPING range finder
maintainers:
- Andreas Klinger <ak@it-klinger.de>
description: |
Bit-banging driver using one GPIO:
- ping-gpios is raised by the driver to start measurement
- direction of ping-gpio is then switched into input with an interrupt
for receiving distance value as PWM signal
Specifications about the devices can be found at:
http://parallax.com/sites/default/files/downloads/28041-LaserPING-2m-Rangefinder-Guide.pdf
http://parallax.com/sites/default/files/downloads/28015-PING-Documentation-v1.6.pdf
properties:
compatible:
enum:
- parallax,ping
- parallax,laserping
ping-gpios:
description:
Definition of the GPIO for the triggering and echo (output and input)
This GPIO is set for about 5 us by the driver to tell the device it
should initiate the measurement cycle. Afterwards the GPIO is switched
to input direction with an interrupt. The device sets it and the
length of the input signal corresponds to the measured distance.
It needs to be an GPIO which is able to deliver an interrupt because
the time between two interrupts is measured in the driver.
See Documentation/devicetree/bindings/gpio/gpio.txt for information
on how to specify a consumer gpio.
maxItems: 1
required:
- compatible
- ping-gpios
additionalProperties: false
examples:
- |
#include <dt-bindings/gpio/gpio.h>
proximity {
compatible = "parallax,laserping";
ping-gpios = <&gpio0 26 GPIO_ACTIVE_HIGH>;
};
@@ -0,0 +1,53 @@
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/iio/proximity/rfdigital,rfd77402.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: RF Digital RFD77402 ToF sensor
maintainers:
- Shrikant Raskar <raskar.shree97@gmail.com>
description:
The RF Digital RFD77402 is a Time-of-Flight (ToF) proximity and distance
sensor providing up to 200 mm range measurement over an I2C interface.
properties:
compatible:
const: rfdigital,rfd77402
reg:
maxItems: 1
interrupts:
maxItems: 1
description:
Interrupt asserted when a new distance measurement is available.
vdd-supply:
description: Regulator that provides power to the sensor.
required:
- compatible
- reg
- vdd-supply
additionalProperties: false
examples:
- |
#include <dt-bindings/interrupt-controller/irq.h>
i2c {
#address-cells = <1>;
#size-cells = <0>;
proximity@4c {
compatible = "rfdigital,rfd77402";
reg = <0x4c>;
vdd-supply = <&vdd_3v3>;
interrupt-parent = <&gpio>;
interrupts = <4 IRQ_TYPE_EDGE_FALLING>;
};
};
...
@@ -0,0 +1,131 @@
# 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
allOf:
- $ref: /schemas/iio/iio.yaml#
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"
unevaluatedProperties: 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>;
};
};
@@ -0,0 +1,202 @@
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/iio/proximity/semtech,sx9324.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Semtech's SX9324 capacitive proximity sensor
maintainers:
- Gwendal Grignou <gwendal@chromium.org>
- Daniel Campello <campello@chromium.org>
description: |
Semtech's SX9324 proximity sensor.
allOf:
- $ref: /schemas/iio/iio.yaml#
properties:
compatible:
const: semtech,sx9324
reg:
maxItems: 1
interrupts:
description:
Generated by device to announce preceding read request has finished
and 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,ph0-pin:
$ref: /schemas/types.yaml#/definitions/uint32-array
description: |
Array of 3 entries. Index represent the id of the CS pin.
Value indicates how each CS pin is used during phase 0.
Each of the 3 pins have the following value -
0 : unused (high impedance)
1 : measured input
2 : dynamic shield
3 : grounded.
For instance, CS0 measured, CS1 shield and CS2 ground is [1, 2, 3]
items:
enum: [ 0, 1, 2, 3 ]
minItems: 3
maxItems: 3
semtech,ph1-pin:
$ref: /schemas/types.yaml#/definitions/uint32-array
description: Same as ph0-pin for phase 1.
items:
enum: [ 0, 1, 2, 3 ]
minItems: 3
maxItems: 3
semtech,ph2-pin:
$ref: /schemas/types.yaml#/definitions/uint32-array
description: Same as ph0-pin for phase 2.
items:
enum: [ 0, 1, 2, 3 ]
minItems: 3
maxItems: 3
semtech,ph3-pin:
$ref: /schemas/types.yaml#/definitions/uint32-array
description: Same as ph0-pin for phase 3.
items:
enum: [ 0, 1, 2, 3 ]
minItems: 3
maxItems: 3
semtech,ph01-resolution:
$ref: /schemas/types.yaml#/definitions/uint32
enum: [8, 16, 32, 64, 128, 256, 512, 1024]
description:
Capacitance measurement resolution. For phase 0 and 1.
Higher the number, higher the resolution.
default: 128
semtech,ph23-resolution:
$ref: /schemas/types.yaml#/definitions/uint32
enum: [8, 16, 32, 64, 128, 256, 512, 1024]
description:
Capacitance measurement resolution. For phase 2 and 3
default: 128
semtech,startup-sensor:
$ref: /schemas/types.yaml#/definitions/uint32
enum: [0, 1, 2, 3]
default: 0
description: |
Phase used for start-up proximity detection.
It is used when we enable a phase to remove static offset and measure
only capacitance changes introduced by the user.
semtech,ph01-proxraw-strength:
$ref: /schemas/types.yaml#/definitions/uint32
minimum: 0
maximum: 7
default: 1
description:
PROXRAW filter strength for phase 0 and 1. A value of 0 represents off,
and other values represent 1-1/2^N.
semtech,ph23-proxraw-strength:
$ref: /schemas/types.yaml#/definitions/uint32
minimum: 0
maximum: 7
default: 1
description:
Same as proxraw-strength01, for phase 2 and 3.
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.
semtech,cs-idle-sleep:
description:
State of CS pins during sleep mode and idle time.
enum:
- hi-z
- gnd
- vdd
semtech,int-comp-resistor:
description:
Internal resistor setting for compensation.
enum:
- lowest
- low
- high
- highest
semtech,input-precharge-resistor-ohms:
default: 4000
multipleOf: 2000
minimum: 0
maximum: 30000
description:
Pre-charge input resistance in Ohm.
semtech,input-analog-gain:
$ref: /schemas/types.yaml#/definitions/uint32
minimum: 0
maximum: 3
description: |
Defines the input antenna analog gain
0: x1.247
1: x1 (default)
2: x0.768
3: x0.552
required:
- compatible
- reg
- "#io-channel-cells"
unevaluatedProperties: false
examples:
- |
#include <dt-bindings/interrupt-controller/irq.h>
i2c {
#address-cells = <1>;
#size-cells = <0>;
proximity@28 {
compatible = "semtech,sx9324";
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,ph0-pin = <1 2 3>;
semtech,ph1-pin = <3 2 1>;
semtech,ph2-pin = <1 2 3>;
semtech,ph3-pin = <3 2 1>;
semtech,ph01-resolution = <256>;
semtech,ph23-resolution = <256>;
semtech,startup-sensor = <1>;
semtech,ph01-proxraw-strength = <2>;
semtech,ph23-proxraw-strength = <2>;
semtech,avg-pos-strength = <64>;
semtech,int-comp-resistor = "lowest";
semtech,input-precharge-resistor-ohms = <2000>;
semtech,cs-idle-sleep = "gnd";
};
};
@@ -0,0 +1,98 @@
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/iio/proximity/semtech,sx9360.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Semtech's SX9360 capacitive proximity sensor
maintainers:
- Gwendal Grignou <gwendal@chromium.org>
- Daniel Campello <campello@chromium.org>
description: |
Semtech's SX9360 proximity sensor.
properties:
compatible:
const: semtech,sx9360
reg:
maxItems: 1
interrupts:
description:
Generated by device to announce preceding read request has finished
and 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,resolution:
$ref: /schemas/types.yaml#/definitions/uint32
enum: [8, 16, 32, 64, 128, 256, 512, 1024]
description:
Capacitance measurement resolution. For both phases, "reference" and
"measurement". Higher the number, higher the resolution.
default: 128
semtech,proxraw-strength:
$ref: /schemas/types.yaml#/definitions/uint32
minimum: 0
maximum: 7
default: 1
description:
PROXRAW filter strength for both phases. A value of 0 represents off,
and other values represent 1-1/2^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.
semtech,input-precharge-resistor-ohms:
default: 0
multipleOf: 2000
minimum: 0
maximum: 30000
description:
Pre-charge input resistance in Ohm.
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,sx9360";
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,resolution = <256>;
semtech,proxraw-strength = <2>;
semtech,avg-pos-strength = <64>;
semtech,input-precharge-resistor-ohms = <4000>;
};
};
@@ -0,0 +1,50 @@
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/iio/proximity/semtech,sx9500.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Semtech's SX9500 capacitive proximity button device
maintainers:
- Jonathan Cameron <jic23@kernel.org>
properties:
compatible:
const: semtech,sx9500
reg:
maxItems: 1
interrupts:
maxItems: 1
reset-gpios:
description:
GPIO connected to the active low reset pin.
maxItems: 1
required:
- compatible
- reg
- interrupts
additionalProperties: false
examples:
- |
#include <dt-bindings/interrupt-controller/irq.h>
#include <dt-bindings/gpio/gpio.h>
i2c {
#address-cells = <1>;
#size-cells = <0>;
proximity@28 {
compatible = "semtech,sx9500";
reg = <0x28>;
interrupt-parent = <&gpio2>;
interrupts = <16 IRQ_TYPE_LEVEL_LOW>;
reset-gpios = <&gpio2 10 GPIO_ACTIVE_LOW>;
};
};
...
@@ -0,0 +1,63 @@
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/iio/proximity/st,vl53l0x.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: ST VL53L0X/VL53L1X ToF ranging sensor
maintainers:
- Song Qiang <songqiang1304521@gmail.com>
- Siratul Islam <email@sirat.me>
properties:
compatible:
enum:
- st,vl53l0x
- st,vl53l1x
reg:
maxItems: 1
interrupts:
maxItems: 1
reset-gpios:
maxItems: 1
description:
Phandle to the XSHUT GPIO. Used for hardware reset.
vdd-supply: true
required:
- compatible
- reg
allOf:
- if:
properties:
compatible:
contains:
const: st,vl53l1x
then:
required:
- vdd-supply
additionalProperties: false
examples:
- |
#include <dt-bindings/interrupt-controller/irq.h>
i2c {
#address-cells = <1>;
#size-cells = <0>;
proximity@29 {
compatible = "st,vl53l1x";
reg = <0x29>;
vdd-supply = <&reg_3v3>;
interrupt-parent = <&gpio>;
interrupts = <23 IRQ_TYPE_EDGE_FALLING>;
};
};
...
@@ -0,0 +1,97 @@
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/iio/proximity/tyhx,hx9023s.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: TYHX HX9023S capacitive proximity sensor
maintainers:
- Yasin Lee <yasin.lee.x@gmail.com>
description: |
TYHX HX9023S proximity sensor. Datasheet can be found here:
http://www.tianyihexin.com/ueditor/php/upload/file/20240614/1718336303992081.pdf
properties:
compatible:
const: tyhx,hx9023s
reg:
maxItems: 1
interrupts:
description:
Generated by device to announce preceding read request has finished
and data is available or that a close/far proximity event has happened.
maxItems: 1
vdd-supply: true
firmware-name:
maxItems: 1
"#address-cells":
const: 1
"#size-cells":
const: 0
patternProperties:
"^channel@[0-4]$":
$ref: /schemas/iio/adc/adc.yaml
type: object
unevaluatedProperties: false
properties:
reg:
minimum: 0
maximum: 4
description: The channel number.
required:
- compatible
- reg
- vdd-supply
unevaluatedProperties: false
examples:
- |
#include <dt-bindings/interrupt-controller/irq.h>
i2c {
#address-cells = <1>;
#size-cells = <0>;
proximity@2a {
compatible = "tyhx,hx9023s";
reg = <0x2a>;
interrupt-parent = <&pio>;
interrupts = <16 IRQ_TYPE_EDGE_FALLING>;
vdd-supply = <&pp1800_prox>;
firmware-name = "hx9023s.bin";
#address-cells = <1>;
#size-cells = <0>;
channel@0 {
reg = <0>;
single-channel = <0>;
};
channel@1 {
reg = <1>;
single-channel = <1>;
};
channel@2 {
reg = <2>;
single-channel = <2>;
};
channel@3 {
reg = <3>;
diff-channels = <1 0>;
};
channel@4 {
reg = <4>;
diff-channels = <2 0>;
};
};
};
@@ -0,0 +1,64 @@
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/iio/proximity/vishay,vcnl3020.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Integrated Proximity Sensor With Infrared Emitter
maintainers:
- Ivan Mikhaylov <i.mikhaylov@yadro.com>
description: |
The VCNL3020 is a fully integrated proximity sensor. Fully integrated means
that the infrared emitter is included in the package. It has 16-bit
resolution. It includes a signal processing IC and features standard I2C
communication interface. It features an interrupt function.
Specifications about the devices can be found at:
https://www.vishay.com/docs/84150/vcnl3020.pdf
properties:
compatible:
enum:
- vishay,vcnl3020
reg:
maxItems: 1
interrupts:
maxItems: 1
vdd-supply:
description: Regulator that provides power to the sensor
vddio-supply:
description: Regulator that provides power to the bus
vishay,led-current-microamp:
description:
The driver current for the LED used in proximity sensing.
enum: [0, 10000, 20000, 30000, 40000, 50000, 60000, 70000, 80000, 90000,
100000, 110000, 120000, 130000, 140000, 150000, 160000, 170000,
180000, 190000, 200000]
default: 20000
required:
- compatible
- reg
additionalProperties: false
examples:
- |
i2c {
#address-cells = <1>;
#size-cells = <0>;
proximity@13 {
compatible = "vishay,vcnl3020";
reg = <0x13>;
vishay,led-current-microamp = <200000>;
};
};