mirror of
https://github.com/torvalds/linux.git
synced 2026-09-23 22:14:03 +02:00
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:
parent
6ee0d3de95
commit
788c49cb94
203
Documentation/devicetree/bindings/hwmon/smsc,emc1403.yaml
Normal file
203
Documentation/devicetree/bindings/hwmon/smsc,emc1403.yaml
Normal 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";
|
||||
};
|
||||
};
|
||||
};
|
||||
Loading…
Reference in New Issue
Block a user