dt-bindings: hwmon: Document SMSC EMC1402/1403/1404/1428

Document the basic hardware layout of SMSC (now Microchip)
EMC1402/1403/1404/1428 thermal sensors.

Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
Link: https://lore.kernel.org/r/20260731113007.145322-2-clamor95@gmail.com
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
This commit is contained in:
Svyatoslav Ryhel 2026-07-31 14:30:05 +03:00 committed by Guenter Roeck
parent 6ee0d3de95
commit 788c49cb94

View File

@ -0,0 +1,203 @@
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
%YAML 1.2
---
$id: http://devicetree.org/schemas/hwmon/smsc,emc1403.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: SMSC EMC1402/1403/1404/1428 thermal sensors
maintainers:
- Svyatoslav Ryhel <clamor95@gmail.com>
properties:
compatible:
oneOf:
- enum:
- smsc,emc1402
- smsc,emc1403
- smsc,emc1404
- smsc,emc1428
- items:
- enum:
- smsc,emc1412
- smsc,emc1422
- smsc,emc1442
- const: smsc,emc1402
- items:
- enum:
- smsc,emc1413
- smsc,emc1423
- const: smsc,emc1403
- items:
- enum:
- smsc,emc1414
- smsc,emc1424
- const: smsc,emc1404
- items:
- enum:
- smsc,emc1438
- const: smsc,emc1428
interrupts:
items:
- description: Sensors "ALERT" pin output.
reg:
maxItems: 1
"#thermal-sensor-cells":
const: 1
'#address-cells':
const: 1
'#size-cells':
const: 0
vdd-supply: true
required:
- compatible
- reg
patternProperties:
"^channel@([0-7])$":
type: object
description: Represents channels of the device and their specific configuration.
properties:
reg:
description: The channel number. 0 is local channel, 1-7 are remote channels.
items:
minimum: 0
maximum: 7
label:
description: A descriptive name for this channel, like "ambient" or "psu".
required:
- reg
additionalProperties: false
allOf:
- if:
properties:
compatible:
contains:
enum:
- smsc,emc1402
then:
patternProperties:
"^channel@([0-7])$":
properties:
reg:
items:
maximum: 1
- if:
properties:
compatible:
contains:
enum:
- smsc,emc1403
then:
patternProperties:
"^channel@([0-7])$":
properties:
reg:
items:
maximum: 2
- if:
properties:
compatible:
contains:
enum:
- smsc,emc1404
then:
patternProperties:
"^channel@([0-7])$":
properties:
reg:
items:
maximum: 3
additionalProperties: false
examples:
- |
#include <dt-bindings/interrupt-controller/irq.h>
i2c {
#address-cells = <1>;
#size-cells = <0>;
sensor@4c {
compatible = "smsc,emc1412", "smsc,emc1402";
reg = <0x4c>;
interrupt-parent = <&gpio>;
interrupts = <4 IRQ_TYPE_LEVEL_LOW>;
vdd-supply = <&vdd_3v3_sys>;
#thermal-sensor-cells = <1>;
};
};
- |
i2c {
#address-cells = <1>;
#size-cells = <0>;
sensor@29 {
compatible = "smsc,emc1428";
reg = <0x29>;
#address-cells = <1>;
#size-cells = <0>;
channel@0 {
reg = <0x0>;
label = "local";
};
channel@1 {
reg = <0x1>;
label = "chan1";
};
channel@2 {
reg = <0x2>;
label = "chan2";
};
channel@3 {
reg = <0x3>;
label = "chan3";
};
channel@4 {
reg = <0x4>;
label = "chan4";
};
channel@5 {
reg = <0x5>;
label = "chan5";
};
channel@6 {
reg = <0x6>;
label = "chan6";
};
channel@7 {
reg = <0x7>;
label = "chan7";
};
};
};