xref: /linux/Documentation/devicetree/bindings/iio/pressure/honeywell,abp2030pa.yaml (revision f4b369c6fe0ceaba2da2daff8c9eb415f85926dd)
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/iio/pressure/honeywell,abp2030pa.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Honeywell abp2030pa pressure sensor
8
9maintainers:
10  - Petre Rodan <petre.rodan@subdimension.ro>
11
12description: |
13  Honeywell pressure sensor of model abp2030pa.
14
15  This sensor has an I2C and SPI interface.
16
17  There are many models with different pressure ranges available. The vendor
18  calls them "ABP2 series". All of them have an identical programming model and
19  differ in the pressure range and measurement unit.
20
21  To support different models one needs to specify its pressure triplet.
22
23  For custom silicon chips not covered by the Honeywell ABP2 series datasheet,
24  the pressure values can be specified manually via honeywell,pmin-pascal and
25  honeywell,pmax-pascal.
26
27  Specifications about the devices can be found at:
28  https://prod-edam.honeywell.com/content/dam/honeywell-edam/sps/siot/en-us/products/sensors/pressure-sensors/board-mount-pressure-sensors/basic-abp2-series/documents/sps-siot-abp2-series-datasheet-32350268-en.pdf
29
30properties:
31  compatible:
32    const: honeywell,abp2030pa
33
34  reg:
35    maxItems: 1
36
37  interrupts:
38    description:
39      Optional interrupt for indicating end of conversion.
40      SPI variants of ABP2 chips do not provide this feature.
41    maxItems: 1
42
43  honeywell,pressure-triplet:
44    description: |
45      Case-sensitive five character string that defines pressure range, unit
46      and type as part of the device nomenclature. In the unlikely case of a
47      custom chip, unset and provide pmin-pascal and pmax-pascal instead.
48    enum: [001BA, 1.6BA, 2.5BA, 004BA, 006BA, 008BA, 010BA, 012BA, 001BD,
49           1.6BD, 2.5BD, 004BD, 001BG, 1.6BG, 2.5BG, 004BG, 006BG, 008BG,
50           010BG, 012BG, 001GG, 1.2GG, 100KA, 160KA, 250KA, 001KD, 1.6KD,
51           2.5KD, 004KD, 006KD, 010KD, 016KD, 025KD, 040KD, 060KD, 100KD,
52           160KD, 250KD, 400KD, 001KG, 1.6KG, 2.5KG, 004KG, 006KG, 010KG,
53           016KG, 025KG, 040KG, 060KG, 100KG, 160KG, 250KG, 400KG, 600KG,
54           800KG, 250LD, 600LD, 600LG, 2.5MD, 006MD, 010MD, 016MD, 025MD,
55           040MD, 060MD, 100MD, 160MD, 250MD, 400MD, 600MD, 006MG, 010MG,
56           016MG, 025MG, 040MG, 060MG, 100MG, 160MG, 250MG, 400MG, 600MG,
57           001ND, 002ND, 004ND, 005ND, 010ND, 020ND, 030ND, 002NG, 004NG,
58           005NG, 010NG, 020NG, 030NG, 015PA, 030PA, 060PA, 100PA, 150PA,
59           175PA, 001PD, 005PD, 015PD, 030PD, 060PD, 001PG, 005PG, 015PG,
60           030PG, 060PG, 100PG, 150PG, 175PG]
61    $ref: /schemas/types.yaml#/definitions/string
62
63  honeywell,pmin-pascal:
64    description:
65      Minimum pressure value the sensor can measure in pascal.
66
67  honeywell,pmax-pascal:
68    description:
69      Maximum pressure value the sensor can measure in pascal.
70
71  spi-max-frequency:
72    maximum: 800000
73
74  vdd-supply: true
75
76required:
77  - compatible
78  - reg
79  - vdd-supply
80
81oneOf:
82  - required:
83      - honeywell,pressure-triplet
84  - required:
85      - honeywell,pmin-pascal
86      - honeywell,pmax-pascal
87
88allOf:
89  - $ref: /schemas/spi/spi-peripheral-props.yaml
90  - if:
91      required:
92        - honeywell,pressure-triplet
93    then:
94      properties:
95        honeywell,pmin-pascal: false
96        honeywell,pmax-pascal: false
97
98additionalProperties: false
99
100examples:
101  - |
102    #include <dt-bindings/gpio/gpio.h>
103    #include <dt-bindings/interrupt-controller/irq.h>
104    i2c {
105        #address-cells = <1>;
106        #size-cells = <0>;
107
108        pressure@18 {
109            compatible = "honeywell,abp2030pa";
110            reg = <0x18>;
111            interrupt-parent = <&gpio3>;
112            interrupts = <21 IRQ_TYPE_EDGE_RISING>;
113
114            honeywell,pressure-triplet = "001BA";
115            vdd-supply = <&vcc_3v3>;
116        };
117    };
118  - |
119    spi {
120        #address-cells = <1>;
121        #size-cells = <0>;
122
123        pressure@0 {
124            compatible = "honeywell,abp2030pa";
125            reg = <0>;
126            spi-max-frequency = <800000>;
127
128            honeywell,pressure-triplet = "001PD";
129            vdd-supply = <&vcc_3v3>;
130        };
131    };
132...
133