From patchwork Sun Dec 24 14:34:47 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Petre Rodan X-Patchwork-Id: 183059 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a05:7300:2483:b0:fb:cd0c:d3e with SMTP id q3csp2161060dyi; Sun, 24 Dec 2023 06:36:24 -0800 (PST) X-Google-Smtp-Source: AGHT+IEC4in85jwXEpvuC3amyLmYAr9jL/pQHkMy2NCmjS/kjzlVT/6TIOe9wI4swO/MQKaxFg6j X-Received: by 2002:a05:6214:b62:b0:67a:c46c:64e1 with SMTP id ey2-20020a0562140b6200b0067ac46c64e1mr6596949qvb.8.1703428584037; Sun, 24 Dec 2023 06:36:24 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1703428584; cv=none; d=google.com; s=arc-20160816; b=BmrPB/VNZwlkTFSIGeDL0h9WqtSZjLAbALJ0XA3wlN787WG9SH2IYDIxofKzewyxPJ VvBwYbL2h6z9jtzvfPl/0txQEap/BXADxuNCP6d5+xo6I9Zal1Of5Khz6q1PRT/B+oNY UN1/TwBy+CoNTi89OVYuRLqXvS7pM4/y8UZkjIZkQ95orUMLWTunqI2m3DQVIuG7oZiA rX7+Zn+//jaU0LWlJ7TEjBR3ecKpgwcD9LB+mq2zdjyeu85OxoAiDK9NvY2MtLUlzrVi pA6xDwa4DGsS2AAXBwriFXt5X60Isexmc0+cKQiekPWA6AEsiU1tmCW4pZ0KHVKz1LMy 9Dsw== 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-ouuuleilei=gmail.com@vger.kernel.org designates 147.75.199.223 as permitted sender) smtp.mailfrom="linux-kernel+bounces-10723-ouuuleilei=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=subdimension.ro Received: from ny.mirrors.kernel.org (ny.mirrors.kernel.org. [147.75.199.223]) by mx.google.com with ESMTPS id 2-20020a05620a048200b007811adc94e6si8445386qkr.142.2023.12.24.06.36.23 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 24 Dec 2023 06:36:24 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel+bounces-10723-ouuuleilei=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-ouuuleilei=gmail.com@vger.kernel.org designates 147.75.199.223 as permitted sender) smtp.mailfrom="linux-kernel+bounces-10723-ouuuleilei=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 CECB61C20A27 for ; Sun, 24 Dec 2023 14:36:23 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id BCB69EAD9; Sun, 24 Dec 2023 14:35:22 +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 X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1786174331118136885 X-GMAIL-MSGID: 1786174331118136885 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(-) -- 2.41.0 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>; };