mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-16 05:31:37 -04:00
dt-bindings: hwmon: add support for MCP998X
Add devicetree schema for Microchip MCP998X/33 and MCP998XD/33D Multichannel Automotive Temperature Monitor Family. Signed-off-by: Victor Duicu <victor.duicu@microchip.com> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com> Link: https://lore.kernel.org/r/20260403-add-mcp9982-hwmon-v12-1-b3bfb26ff136@microchip.com Signed-off-by: Guenter Roeck <linux@roeck-us.net>
This commit is contained in:
committed by
Guenter Roeck
parent
3023c050af
commit
a345c1e3cd
237
Documentation/devicetree/bindings/hwmon/microchip,mcp9982.yaml
Normal file
237
Documentation/devicetree/bindings/hwmon/microchip,mcp9982.yaml
Normal file
@@ -0,0 +1,237 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/hwmon/microchip,mcp9982.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Microchip MCP998X/33 and MCP998XD/33D Temperature Monitor
|
||||
|
||||
maintainers:
|
||||
- Victor Duicu <victor.duicu@microchip.com>
|
||||
|
||||
description: |
|
||||
The MCP998X/33 and MCP998XD/33D family is a high-accuracy 2-wire
|
||||
multichannel automotive temperature monitor.
|
||||
The datasheet can be found here:
|
||||
https://ww1.microchip.com/downloads/aemDocuments/documents/MSLD/ProductDocuments/DataSheets/MCP998X-Family-Data-Sheet-DS20006827.pdf
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
- microchip,mcp9933
|
||||
- microchip,mcp9933d
|
||||
- microchip,mcp9982
|
||||
- microchip,mcp9982d
|
||||
- microchip,mcp9983
|
||||
- microchip,mcp9983d
|
||||
- microchip,mcp9984
|
||||
- microchip,mcp9984d
|
||||
- microchip,mcp9985
|
||||
- microchip,mcp9985d
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
interrupts:
|
||||
minItems: 1
|
||||
maxItems: 2
|
||||
|
||||
interrupt-names:
|
||||
description:
|
||||
The chip family has three different interrupt pins divided among them.
|
||||
The chips without "D" have alert-therm and therm-addr.
|
||||
The chips with "D" have alert-therm and sys-shtdwn.
|
||||
minItems: 1
|
||||
items:
|
||||
- enum: [alert-therm, therm-addr, sys-shtdwn]
|
||||
- enum: [therm-addr, sys-shtdwn]
|
||||
|
||||
"#address-cells":
|
||||
const: 1
|
||||
|
||||
"#size-cells":
|
||||
const: 0
|
||||
|
||||
microchip,enable-anti-parallel:
|
||||
description:
|
||||
Enable anti-parallel diode mode operation.
|
||||
MCP9984/84D/85/85D and MCP9933/33D support reading two external diodes
|
||||
in anti-parallel connection on the same set of pins.
|
||||
type: boolean
|
||||
|
||||
microchip,parasitic-res-on-channel1-2:
|
||||
description:
|
||||
Indicates that the chip and the diodes/transistors are sufficiently far
|
||||
apart that a parasitic resistance is added to the wires, which can affect
|
||||
the measurements. Due to the anti-parallel diode connections, channels
|
||||
1 and 2 are affected together.
|
||||
type: boolean
|
||||
|
||||
microchip,parasitic-res-on-channel3-4:
|
||||
description:
|
||||
Indicates that the chip and the diodes/transistors are sufficiently far
|
||||
apart that a parasitic resistance is added to the wires, which can affect
|
||||
the measurements. Due to the anti-parallel diode connections, channels
|
||||
3 and 4 are affected together.
|
||||
type: boolean
|
||||
|
||||
microchip,power-state:
|
||||
description:
|
||||
The chip can be set in Run state or Standby state. In Run state the ADC
|
||||
is converting on all channels at the programmed conversion rate.
|
||||
In Standby state the host must initiate a conversion cycle by writing
|
||||
to the One-Shot register.
|
||||
True value sets Run state.
|
||||
Chips with "D" in the name can only be set in Run mode.
|
||||
type: boolean
|
||||
|
||||
vdd-supply: true
|
||||
|
||||
patternProperties:
|
||||
"^channel@[1-4]$":
|
||||
description:
|
||||
Represents the external temperature channels to which
|
||||
a remote diode is connected.
|
||||
type: object
|
||||
|
||||
properties:
|
||||
reg:
|
||||
items:
|
||||
maxItems: 1
|
||||
|
||||
label:
|
||||
description: Unique name to identify which channel this is.
|
||||
|
||||
required:
|
||||
- reg
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- vdd-supply
|
||||
|
||||
allOf:
|
||||
- if:
|
||||
properties:
|
||||
compatible:
|
||||
contains:
|
||||
enum:
|
||||
- microchip,mcp9982d
|
||||
- microchip,mcp9983d
|
||||
- microchip,mcp9984d
|
||||
- microchip,mcp9985d
|
||||
- microchip,mcp9933d
|
||||
then:
|
||||
properties:
|
||||
interrupt-names:
|
||||
items:
|
||||
enum:
|
||||
- alert-therm
|
||||
- sys-shtdwn
|
||||
required:
|
||||
- microchip,power-state
|
||||
- microchip,parasitic-res-on-channel1-2
|
||||
else:
|
||||
properties:
|
||||
microchip,power-state: true
|
||||
interrupt-names:
|
||||
items:
|
||||
enum:
|
||||
- alert-therm
|
||||
- therm-addr
|
||||
|
||||
- if:
|
||||
properties:
|
||||
compatible:
|
||||
contains:
|
||||
enum:
|
||||
- microchip,mcp9983d
|
||||
- microchip,mcp9984d
|
||||
- microchip,mcp9985d
|
||||
then:
|
||||
required:
|
||||
- microchip,parasitic-res-on-channel3-4
|
||||
|
||||
- if:
|
||||
properties:
|
||||
compatible:
|
||||
contains:
|
||||
enum:
|
||||
- microchip,mcp9982
|
||||
- microchip,mcp9982d
|
||||
then:
|
||||
properties:
|
||||
microchip,enable-anti-parallel: false
|
||||
patternProperties:
|
||||
"^channel@[2-4]$": false
|
||||
|
||||
- if:
|
||||
properties:
|
||||
compatible:
|
||||
contains:
|
||||
enum:
|
||||
- microchip,mcp9983
|
||||
- microchip,mcp9983d
|
||||
then:
|
||||
properties:
|
||||
microchip,enable-anti-parallel: false
|
||||
patternProperties:
|
||||
"^channel@[3-4]$": false
|
||||
|
||||
- if:
|
||||
properties:
|
||||
compatible:
|
||||
contains:
|
||||
enum:
|
||||
- microchip,mcp9933
|
||||
- microchip,mcp9933d
|
||||
then:
|
||||
patternProperties:
|
||||
"^channel@[3-4]$": false
|
||||
|
||||
- if:
|
||||
properties:
|
||||
compatible:
|
||||
contains:
|
||||
enum:
|
||||
- microchip,mcp9984
|
||||
- microchip,mcp9984d
|
||||
then:
|
||||
properties:
|
||||
channel@4: false
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
i2c {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
temperature-sensor@4c {
|
||||
compatible = "microchip,mcp9985";
|
||||
reg = <0x4c>;
|
||||
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
microchip,enable-anti-parallel;
|
||||
microchip,parasitic-res-on-channel1-2;
|
||||
microchip,parasitic-res-on-channel3-4;
|
||||
vdd-supply = <&vdd>;
|
||||
|
||||
channel@1 {
|
||||
reg = <1>;
|
||||
label = "Room Temperature";
|
||||
};
|
||||
|
||||
channel@2 {
|
||||
reg = <2>;
|
||||
label = "GPU Temperature";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
...
|
||||
@@ -17358,6 +17358,12 @@ S: Maintained
|
||||
F: Documentation/devicetree/bindings/iio/adc/microchip,mcp3911.yaml
|
||||
F: drivers/iio/adc/mcp3911.c
|
||||
|
||||
MICROCHIP MCP9982 TEMPERATURE DRIVER
|
||||
M: Victor Duicu <victor.duicu@microchip.com>
|
||||
L: linux-hwmon@vger.kernel.org
|
||||
S: Supported
|
||||
F: Documentation/devicetree/bindings/hwmon/microchip,mcp9982.yaml
|
||||
|
||||
MICROCHIP MMC/SD/SDIO MCI DRIVER
|
||||
M: Aubin Constans <aubin.constans@microchip.com>
|
||||
S: Maintained
|
||||
|
||||
Reference in New Issue
Block a user