Received: by 2002:a05:7412:b995:b0:f9:9502:5bb8 with SMTP id it21csp1893351rdb; Sun, 24 Dec 2023 06:35:45 -0800 (PST) X-Google-Smtp-Source: AGHT+IERGThYdDMbC3GTp6VRTe4uChJpyBdYC1YD2weSFQMXm1LkFcawbNFvYsXEqH4utj/Z7O+5 X-Received: by 2002:ac8:5ac7:0:b0:427:a425:d9de with SMTP id d7-20020ac85ac7000000b00427a425d9demr6844664qtd.66.1703428545295; Sun, 24 Dec 2023 06:35:45 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1703428545; cv=none; d=google.com; s=arc-20160816; b=C6HFRWasgECMKydR2FVXFFGUJl2DDsq8a30FcN00kqjuyB40ECxhs6kijS64NOCNYn 8uQXXP23yKljOqvUePAX4jTqScB4XE3yo9Tv3ZfsJR6Mhb6O4g07vgv6X2OK4hmKnQY9 sYyEU9mTB81zsnsX87O2qpJcc9pHWCsBZbQNekb2BcEzvgOir/ZmioKt6HujUyJ1KSjx NzHr+H4Q1UnU4/tyLoWTzKFiJlVahYdv9nJqZzUKdK4Yt59VoICogDIvSV8jpzZKgWjO lFBh8GiNwg2Kpb5qBpLHb6hpdQDcJQiVTWOjl/Rs0RyvpmXifUzM2gEb2lbC1rW1rlzB sZpg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:references:in-reply-to:message-id :date:subject:cc:to:from:dkim-signature; bh=KKVGIpWXip1QK6iYCkU+gL5WRrEWg8vqcSywOc/WI/U=; fh=A3NghPjUcaYWJrBEcBDmjinT5n8U7kPeBkd9SVrhfnk=; b=djoB7O7N+1JLXEGsLWVgOhCWoeOTjmSE5SPs9Y5iLf8L1qDq0ccJ7m4TAUCn/oR98p z/rF9vtvsoOJKuzKxzvX569UKfB/WhbJLYKTDp9A8zU6bfMIDsSY2Riq7svdgGs7Ywlh xqgXzzqempVYq0/0Sf0ODC7zonf4tdmMk9uIM8HE3Fx1/j4LFFMfBhLNSTewD2pKnHkJ Y2LFugJWFeC/K9Y68G3VxEjUuhq3H86mfRqJ8+xv8NBLQ75dYziyNC5OWRKDO5stH9TJ hD9uhoYJ9vmiUrXpa9bT4pwTwEzXT9FnGs0hKvKW1oEQ5epDCKv1n+HmAOTqjmzdwLhl Ifyg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@subdimension.ro header.s=skycaves header.b=BNJ0qFZP; spf=pass (google.com: domain of linux-kernel+bounces-10723-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.199.223 as permitted sender) smtp.mailfrom="linux-kernel+bounces-10723-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=subdimension.ro Return-Path: Received: from ny.mirrors.kernel.org (ny.mirrors.kernel.org. [147.75.199.223]) by mx.google.com with ESMTPS id p18-20020a05622a13d200b0042588c5be0asi8902092qtk.545.2023.12.24.06.35.45 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 24 Dec 2023 06:35:45 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel+bounces-10723-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.199.223 as permitted sender) client-ip=147.75.199.223; Authentication-Results: mx.google.com; dkim=pass header.i=@subdimension.ro header.s=skycaves header.b=BNJ0qFZP; spf=pass (google.com: domain of linux-kernel+bounces-10723-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.199.223 as permitted sender) smtp.mailfrom="linux-kernel+bounces-10723-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=subdimension.ro Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ny.mirrors.kernel.org (Postfix) with ESMTPS id 04D051C20B4F for ; Sun, 24 Dec 2023 14:35:45 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id E1D47CA68; Sun, 24 Dec 2023 14:35:20 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=subdimension.ro header.i=@subdimension.ro header.b="BNJ0qFZP" X-Original-To: linux-kernel@vger.kernel.org Received: from mail.subdimension.ro (skycaves.subdimension.ro [172.104.132.142]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9EBE623CD; Sun, 24 Dec 2023 14:35:18 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=subdimension.ro Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=subdimension.ro Received: from localhost.localdomain (unknown [188.24.94.216]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mail.subdimension.ro (Postfix) with ESMTPSA id 3C69C28B539; Sun, 24 Dec 2023 14:35:10 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=subdimension.ro; s=skycaves; t=1703428510; bh=CeojQm5YJLUA6vqpb0TQgDQe551dZqsj31EWZZIFRqQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References; b=BNJ0qFZPipoL+gkre9Ih6basEQVqF+3PMwoktIVC/lQDcnGGDISLFMmD83y21jMyA Y4hhVxFg5J2EAHHkFZ//6G3Yg5OpjN2nvcLllxP2PfA6cyiZSIGs0V5WWheMsu4y46 0QeqI314RkB+Du+FXh9FIGLIUvFFXFljdLFHcnWE= From: Petre Rodan To: linux-iio@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Petre Rodan , Andreas Klinger , Jonathan Cameron , Lars-Peter Clausen , Rob Herring , Krzysztof Kozlowski , Conor Dooley Subject: [PATCH v2 02/10] dt-bindings: iio: pressure: honeywell,mprls0025pa.yaml add pressure-triplet Date: Sun, 24 Dec 2023 16:34:47 +0200 Message-ID: <20231224143500.10940-3-petre.rodan@subdimension.ro> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20231224143500.10940-1-petre.rodan@subdimension.ro> References: <20231224143500.10940-1-petre.rodan@subdimension.ro> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Change order of properties in order for the end user to de-prioritize pmin-pascal and pmax-pascal which are superseded by pressure-triplet. Add pressure-triplet property which automatically initializes pmin-pascal and pmax-pascal inside the driver Rework honeywell,pmXX-pascal requirements based on feedback from Jonathan and Conor. Signed-off-by: Petre Rodan Signed-off-by: Andreas Klinger --- .../iio/pressure/honeywell,mprls0025pa.yaml | 64 ++++++++++++++----- 1 file changed, 47 insertions(+), 17 deletions(-) diff --git a/Documentation/devicetree/bindings/iio/pressure/honeywell,mprls0025pa.yaml b/Documentation/devicetree/bindings/iio/pressure/honeywell,mprls0025pa.yaml index 84ced4e5a7da..e4021306d187 100644 --- a/Documentation/devicetree/bindings/iio/pressure/honeywell,mprls0025pa.yaml +++ b/Documentation/devicetree/bindings/iio/pressure/honeywell,mprls0025pa.yaml @@ -19,14 +19,17 @@ description: | 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 well as - the transfer function. Pressure range needs to be converted from its unit to + To support different models one need to specify its pressure triplet as well + as the transfer function. + + For custom models the pressure values can alternatively be specified manually. + The minimal range value stands for the minimum pressure and the maximum value + also for the maximum pressure with linear relation inside the range. + Pressure range needs to be converted from the datasheet specified unit to pascal. The transfer function defines the ranges of numerical values delivered by the - sensor. The minimal range value stands for the minimum pressure and the - maximum value also for the maximum pressure with linear relation inside the - range. + sensor. Specifications about the devices can be found at: https://prod-edam.honeywell.com/content/dam/honeywell-edam/sps/siot/en-us/ @@ -54,14 +57,6 @@ properties: If not present the device is not reset during the probe. maxItems: 1 - honeywell,pmin-pascal: - description: - Minimum pressure value the sensor can measure in pascal. - - honeywell,pmax-pascal: - description: - Maximum pressure value the sensor can measure in pascal. - honeywell,transfer-function: description: | Transfer function which defines the range of valid values delivered by the @@ -72,17 +67,52 @@ properties: enum: [1, 2, 3] $ref: /schemas/types.yaml#/definitions/uint32 + honeywell,pressure-triplet: + description: | + Case-sensitive five character string that defines pressure range, unit + and type as part of the device nomenclature. In the unlikely case of a + custom chip, unset and provide pmin-pascal and pmax-pascal instead. + enum: [0001BA, 01.6BA, 02.5BA, 0060MG, 0100MG, 0160MG, 0250MG, 0400MG, + 0600MG, 0001BG, 01.6BG, 02.5BG, 0100KA, 0160KA, 0250KA, 0006KG, + 0010KG, 0016KG, 0025KG, 0040KG, 0060KG, 0100KG, 0160KG, 0250KG, + 0015PA, 0025PA, 0030PA, 0001PG, 0005PG, 0015PG, 0030PG, 0300YG] + $ref: /schemas/types.yaml#/definitions/string + + honeywell,pmin-pascal: + description: + Minimum pressure value the sensor can measure in pascal. + To be specified only if honeywell,pressure-triplet is not set. + + honeywell,pmax-pascal: + description: + Maximum pressure value the sensor can measure in pascal. + To be specified only if honeywell,pressure-triplet is not set. + vdd-supply: description: provide VDD power to the sensor. required: - compatible - reg - - honeywell,pmin-pascal - - honeywell,pmax-pascal - honeywell,transfer-function - vdd-supply +oneOf: + - required: + - honeywell,pmin-pascal + - honeywell,pmax-pascal + - required: + - honeywell,pressure-triplet + +allOf: + - if: + required: + - honeywell,pressure-triplet + then: + properties: + honeywell,pmin-pascal: false + honeywell,pmax-pascal: false + additionalProperties: false examples: @@ -99,8 +129,8 @@ examples: reset-gpios = <&gpio3 19 GPIO_ACTIVE_HIGH>; interrupt-parent = <&gpio3>; interrupts = <21 IRQ_TYPE_EDGE_RISING>; - honeywell,pmin-pascal = <0>; - honeywell,pmax-pascal = <172369>; + + honeywell,pressure-triplet = "0025PA"; honeywell,transfer-function = <1>; vdd-supply = <&vcc_3v3>; }; -- 2.41.0