From: Ben Collins <bcollins@watter.com>
To: "Jonathan Cameron" <jic23@kernel.org>,
"David Lechner" <dlechner@baylibre.com>,
"Nuno Sá" <nuno.sa@analog.com>,
"Andy Shevchenko" <andy@kernel.org>,
"Rob Herring" <robh@kernel.org>,
"Krzysztof Kozlowski" <krzk+dt@kernel.org>,
"Conor Dooley" <conor+dt@kernel.org>,
"Andrew Hepp" <andrew.hepp@ahepp.dev>
Cc: Ben Collins <bcollins@watter.com>,
linux-iio@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org
Subject: [PATCH v4 1/5] dt-bindings: iio: mcp9600: Add microchip,mcp9601 and add constraints
Date: Sun, 17 Aug 2025 23:50:49 -0400 [thread overview]
Message-ID: <20250818035053.32626-2-bcollins@watter.com> (raw)
In-Reply-To: <20250818035053.32626-1-bcollins@watter.com>
The mcp9600 driver supports the mcp9601 chip, but complains about not
recognizing the device id on probe. A separate patch...
iio: mcp9600: Recognize chip id for mcp9601
...addresses this. This patch updates the dt-bindings for this chip to
reflect the change to allow explicitly setting microchip,mcp9601 as
the expected chip type.
The mcp9601 also supports features not found on the mcp9600, so this
will also allow the driver to differentiate the support of these
features.
In addition, the thermocouple-type needs a default of 3 (k-type). The
driver doesn't support this, yet. A later patch in this series adds it:
iio: mcp9600: Add support for thermocouple-type
Lastly, the open/short circuit functionality is dependent on mcp9601
chipsset. Add constraints for this and a new property, microchip,vsense,
enables this feature since it depends on the chip being wired
properly.
Passed dt_binding_check.
Signed-off-by: Ben Collins <bcollins@watter.com>
---
.../iio/temperature/microchip,mcp9600.yaml | 69 +++++++++++++++----
1 file changed, 56 insertions(+), 13 deletions(-)
diff --git a/Documentation/devicetree/bindings/iio/temperature/microchip,mcp9600.yaml b/Documentation/devicetree/bindings/iio/temperature/microchip,mcp9600.yaml
index d2cafa38a5442..1caeb6526fd20 100644
--- a/Documentation/devicetree/bindings/iio/temperature/microchip,mcp9600.yaml
+++ b/Documentation/devicetree/bindings/iio/temperature/microchip,mcp9600.yaml
@@ -4,7 +4,7 @@
$id: http://devicetree.org/schemas/iio/temperature/microchip,mcp9600.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
-title: Microchip MCP9600 thermocouple EMF converter
+title: Microchip MCP9600 and similar thermocouple EMF converters
maintainers:
- Andrew Hepp <andrew.hepp@ahepp.dev>
@@ -14,29 +14,30 @@ description:
properties:
compatible:
- const: microchip,mcp9600
+ oneOf:
+ - const: microchip,mcp9600
+ - items:
+ - const: microchip,mcp9600
+ - const: microchip,mcp9601
reg:
maxItems: 1
interrupts:
minItems: 1
- maxItems: 6
+ maxItems: 4
interrupt-names:
minItems: 1
- maxItems: 6
items:
- enum:
- - open-circuit
- - short-circuit
- - alert1
- - alert2
- - alert3
- - alert4
+ - const: alert1
+ - const: alert2
+ - const: alert3
+ - const: alert4
thermocouple-type:
$ref: /schemas/types.yaml#/definitions/uint32
+ default: 3
description:
Type of thermocouple (THERMOCOUPLE_TYPE_K if omitted).
Use defines in dt-bindings/iio/temperature/thermocouple.h.
@@ -44,6 +45,33 @@ properties:
vdd-supply: true
+allOf:
+ - if:
+ properties:
+ compatible:
+ contains:
+ const: microchip,mcp9601
+ then:
+ properties:
+ interrupts:
+ minItems: 1
+ maxItems: 6
+ interrupt-names:
+ items:
+ - const: alert1
+ - const: alert2
+ - const: alert3
+ - const: alert4
+ - const: open-circuit
+ - const: short-circuit
+ microchip,vsense:
+ default: false
+ description:
+ This flag indicates that the chip has been wired with VSENSE to
+ enable open and short circuit detect. By default, this is false,
+ since there's no way to detect that the chip is wired correctly.
+ type: boolean
+
required:
- compatible
- reg
@@ -62,9 +90,24 @@ examples:
compatible = "microchip,mcp9600";
reg = <0x60>;
interrupt-parent = <&gpio>;
- interrupts = <25 IRQ_TYPE_EDGE_RISING>;
- interrupt-names = "open-circuit";
+ interrupts = <25 IRQ_TYPE_EDGE_RISIN>;
+ interrupt-names = "alert1";
thermocouple-type = <THERMOCOUPLE_TYPE_K>;
vdd-supply = <&vdd>;
};
};
+ - |
+ #include <dt-bindings/iio/temperature/thermocouple.h>
+ #include <dt-bindings/interrupt-controller/irq.h>
+ i2c {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ temperature-sensor@60 {
+ compatible = "microchip,mcp9601", "microchip,mcp9600";
+ microchip,vsense;
+ reg = <0x62>;
+ interrupt-parent = <&gpio>;
+ vdd-supply = <&vdd>;
+ };
+ };
--
2.39.5
next prev parent reply other threads:[~2025-08-18 3:51 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-08-18 3:50 [PATCH v4 0/5] iio: mcp9600: Features and improvements Ben Collins
2025-08-18 3:50 ` Ben Collins [this message]
2025-08-18 3:50 ` [PATCH v4 2/5] iio: mcp9600: White space and fixed width cleanup Ben Collins
2025-08-21 9:30 ` Andy Shevchenko
2025-08-18 3:50 ` [PATCH v4 3/5] iio: mcp9600: Recognize chip id for mcp9601 Ben Collins
2025-08-21 9:33 ` Andy Shevchenko
2025-08-21 11:14 ` Ben Collins
2025-08-21 11:25 ` Andy Shevchenko
2025-08-18 3:50 ` [PATCH v4 4/5] iio: mcp9600: Add support for thermocouple-type Ben Collins
2025-08-18 3:50 ` [PATCH v4 5/5] iio: mcp9600: Add support for IIR filter Ben Collins
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250818035053.32626-2-bcollins@watter.com \
--to=bcollins@watter.com \
--cc=andrew.hepp@ahepp.dev \
--cc=andy@kernel.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=dlechner@baylibre.com \
--cc=jic23@kernel.org \
--cc=krzk+dt@kernel.org \
--cc=linux-iio@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=nuno.sa@analog.com \
--cc=robh@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®