From nobody Thu Dec 18 18:33:40 2025 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id EE9FBC77B6E for ; Fri, 14 Apr 2023 12:48:46 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230240AbjDNMsq (ORCPT ); Fri, 14 Apr 2023 08:48:46 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:34850 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229799AbjDNMsm (ORCPT ); Fri, 14 Apr 2023 08:48:42 -0400 Received: from mout.kundenserver.de (mout.kundenserver.de [212.227.126.134]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id EA2AC4C22; Fri, 14 Apr 2023 05:48:40 -0700 (PDT) Received: from localhost ([31.220.114.184]) by mrelayeu.kundenserver.de (mreue010 [212.227.15.167]) with ESMTPSA (Nemesis) id 1MlfGs-1qEQ8o3ifS-00ii4T; Fri, 14 Apr 2023 14:48:24 +0200 Date: Fri, 14 Apr 2023 14:48:24 +0200 From: Andreas Klinger To: linux-iio@vger.kernel.org, devicetree@vger.kernel.org Cc: Jonathan Cameron , Lars-Peter Clausen , Rob Herring , Krzysztof Kozlowski , Angel Iglesias , linux-kernel@vger.kernel.org Subject: [PATCH v2 1/1] dt-bindings: iio: pressure: Support Honeywell mprls0025pa sensor Message-ID: MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: X-Provags-ID: V03:K1:Tv4Uj43tBiLUN/+GvGnh3KM+1ohOAeIovYx/hFuC6+icGfcNEyA Xlpc6JXBaZm/qoOFkjLzvNzCNx3+uhR1pkd+6FOem/yzzR91G2wMM5Z/zP2FhyyfB1RfPMy gbd0Jlz0knQkOC5K3BtgV204ocngKwCJZa2PNKJv+aDVySFEA5YbZXV2lsL7Eb2WIro8Zui lLt0NngDkknxVVKMBbFYg== UI-OutboundReport: notjunk:1;M01:P0:CHfuDGbEL0M=;eRHv0Aj5JIK39b1i5gNfq/YvBqm 8UNdPvsZ9pLAxf1r62xiGiAFMeDGHvqreHb0NMJQb0rBPeB2DBC2K9Q6GR70ThEXUurKz0tk7 abXolhL4rOv2BZ0RU976sSZ0pyHh37vjJWdEHRBXwmT1FLC7JwI1/yuTAVJ3zRygyFsefupQI aGQ4LGt2etkYHGvxwHuOWljB2gYx2zzv6ZwEn45wHdKGHksVr1e2RHD23FuH0Hv+cUlLekRN4 JCk6P3FCTV+PzINkI9/UB5JlTVRxEgaLjapFkLIMnGugoE5UieyqXp42fYRIgyH1TPQJJDY3x y46RglFKKMMxIOb0PyYIvZ538Ju27htlKFMd391OXK9YwC1MLKs7rGTuNrixHL/ecb7XY1q+v kxOZ5t2Way06lXM1wRkXwo5wtds/c9hrWTA3DgbqaoNQqJZm63sbv5SrSuzLg8bNq3WIx9Obr 5ut1ZZZ5wctbeENJ4FhI6xz/GY7/WGLMzaLwcxYvyY4VJRYCl4aLHHtBd7Cn9uniTkJlIR78Y h2K7AP7DOQk6n55KLIF6D2uCzn8pvXdMep01Ssyzix/l/4RIqE+bqqf0d1mxzho+t9F44/5WG BUrP1za7BzLePfZHaDMe/970lVqaRRZHX9hQvFjQ0tMIO+prv0IeDeYVvVGOdCi+rUh47nihw 9xfzlVS8+V8syY84dfC/CDyOV/5lQikWvgfhVMQt0A== Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Honeywell mpr is a pressure sensor series. There are many different models = with different pressure ranges, units and transfer functions. The range and transfer function need to be set up in the dt. Therefore new = properties honeywell,pmin-pascal, honeywell,pmax-pascal, honeywell,transfer-function a= re introduced. Add dt-bindings. Signed-off-by: Andreas Klinger --- .../iio/pressure/honeywell,mprls0025pa.yaml | 93 +++++++++++++++++++ 1 file changed, 93 insertions(+) create mode 100644 Documentation/devicetree/bindings/iio/pressure/honeywel= l,mprls0025pa.yaml diff --git a/Documentation/devicetree/bindings/iio/pressure/honeywell,mprls= 0025pa.yaml b/Documentation/devicetree/bindings/iio/pressure/honeywell,mprl= s0025pa.yaml new file mode 100644 index 000000000000..c0eb3c4be16f --- /dev/null +++ b/Documentation/devicetree/bindings/iio/pressure/honeywell,mprls0025pa.= yaml @@ -0,0 +1,93 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/iio/pressure/honeywell,mprls0025pa.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Honeywell mpr series pressure sensor + +maintainers: + - Andreas Klinger + +description: | + Honeywell pressure sensor of model mprls0025pa. + + This sensor has an I2C and SPI interface. Only the I2C interface is impl= emented. + + There are many models with different pressure ranges available. The vend= or calls them "mpr + series". All of them have the identical programming model and differ in = the pressure range, unit + and transfer function. + + To support different models one need to specify the pressure range as we= ll as the transfer + function. Pressure range needs to be converted from its unit to pascal. + + The transfer function defines the ranges of numerical values delivered b= y the sensor. The minimal + range value stands for the minimum pressure and the maximum value also f= or the maximum pressure + with linear relation inside the range. + + Specifications about the devices can be found at: + https://prod-edam.honeywell.com/content/dam/honeywell-edam/sps/siot/en= -us/products/sensors/ + pressure-sensors/board-mount-pressure-sensors/micropressure-mpr-seri= es/documents/ + sps-siot-mpr-series-datasheet-32332628-ciid-172626.pdf + +properties: + compatible: + const: honeywell,mprls0025pa + + reg: + maxItems: 1 + + interrupts: + maxItems: 1 + + reset-gpios: + description: + Optional GPIO for resetting the device. + If not present the device is not resetted during the probe. + maxItems: 1 + + honeywell,pmin-pascal: + description: + Minimum pressure value the sensor can measure in pascal. + $ref: /schemas/types.yaml#/definitions/uint32 + + honeywell,pmax-pascal: + description: + Maximum pressure value the sensor can measure in pascal. + $ref: /schemas/types.yaml#/definitions/uint32 + + honeywell,transfer-function: + description: + Transfer function which defines the range of valid values delivered = by the sensor. + 1 - A, 10% to 90% of 2^24 (1677722 .. 15099494) + 2 - B, 2.5% to 22.5% of 2^24 (419430 .. 3774874) + 3 - C, 20% to 80% of 2^24 (3355443 .. 13421773) + +required: + - compatible + - reg + - honeywell,pmin + - honeywell,pmax + - honeywell,transfer-function + +additionalProperties: false + +examples: + - | + #include + #include + i2c { + #address-cells =3D <1>; + #size-cells =3D <0>; + + pressure@18 { + compatible =3D "honeywell,mprls0025pa"; + reg =3D <0x18>; + reset-gpios =3D <&gpio3 19 GPIO_ACTIVE_HIGH>; + interrupt-parent =3D <&gpio3>; + interrupts =3D <21 IRQ_TYPE_EDGE_FALLING>; + honeywell,pmin =3D <0>; + honeywell,pmax =3D <172369>; + honeywell,transfer-function =3D <1>; + }; + }; --=20 2.30.2