Spracherkennung für: .yaml vermutete Sprache: Unknown {[0] [0] [0]} [Methode: Schwerpunktbildung, einfache Gewichte, sechs Dimensionen]
# SPDX-License-Identifier: GPL-
2.
0-only OR BSD-
2-Clause
%YAML
1.
2
---
$id:
http://devicetree.org/schemas/mfd/gateworks-gsc.yaml#
$schema:
http://devicetree.org/meta-schemas/core.yaml#
title: Gateworks System Controller
description: |
The Gateworks System Controller (GSC) is a device present across various
Gateworks product families that provides a set of system related features
such as the following (refer to the board hardware user manuals to see what
features are present)
- Watchdog Timer
- GPIO
- Pushbutton controller
- Hardware monitor with ADC's for temperature and voltage rails and
fan controller
maintainers:
- Tim Harvey <tharvey@gateworks.com>
properties:
$nodename:
pattern: "gsc@[
0-
9a-f]{
1,
2}"
compatible:
const: gw,gsc
reg:
description: I2C device address
maxItems:
1
interrupts:
maxItems:
1
interrupt-controller: true
"#interrupt-cells":
const:
1
"#address-cells":
const:
1
"#size-cells":
const:
0
adc:
type: object
additionalProperties: false
description: Optional hardware monitoring module
properties:
compatible:
const: gw,gsc-adc
"#address-cells":
const:
1
"#size-cells":
const:
0
patternProperties:
"^channel@[
0-
9a-f]+$":
type: object
additionalProperties: false
description: |
Properties for a single ADC which can report cooked values
(i.e. temperature sensor based on thermister), raw values
(i.e. voltage rail with a pre-scaling resistor divider).
properties:
reg:
description: Register of the ADC
maxItems:
1
label:
description: Name of the ADC input
gw,mode:
description: |
conversion mode:
0 - temperature, in C*
10
1 - pre-scaled
24-bit voltage value
2 - scaled voltage based on an optional resistor divider
and optional offset
3 - pre-scaled
16-bit voltage value
4 - fan tach input to report RPM's
$ref: /schemas/types.yaml#/definitions/uint32
enum: [
0,
1,
2,
3,
4]
gw,voltage-divider-ohms:
description: Values of resistors for divider on raw ADC input
maxItems:
2
items:
minimum:
1000
maximum:
1000000
gw,voltage-offset-microvolt:
description: |
A positive voltage offset to apply to a raw ADC
(i.e. to compensate for a diode drop).
minimum:
0
maximum:
1000000
required:
- gw,mode
- reg
- label
required:
- compatible
- "#address-cells"
- "#size-cells"
patternProperties:
"^fan-controller@[
0-
9a-f]+$":
type: object
additionalProperties: false
description: Optional fan controller
properties:
compatible:
const: gw,gsc-fan
reg:
description: The fan controller base address
maxItems:
1
required:
- compatible
- reg
required:
- compatible
- reg
- interrupts
- interrupt-controller
- "#interrupt-cells"
- "#address-cells"
- "#size-cells"
additionalProperties: false
examples:
- |
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/interrupt-controller/irq.h>
i2c {
#address-cells = <
1>;
#size-cells = <
0>;
gsc@
20 {
compatible = "gw,gsc";
reg = <
0x20>;
interrupt-parent = <&gpio1>;
interrupts = <
4 IRQ_TYPE_LEVEL_LOW>;
interrupt-controller;
#interrupt-cells = <
1>;
#address-cells = <
1>;
#size-cells = <
0>;
adc {
compatible = "gw,gsc-adc";
#address-cells = <
1>;
#size-cells = <
0>;
channel@
0 { /* A0: Board Temperature */
reg = <
0x00>;
label = "temp";
gw,mode = <
0>;
};
channel@
2 { /* A1: Input Voltage (raw ADC) */
reg = <
0x02>;
label = "vdd_vin";
gw,mode = <
1>;
gw,voltage-divider-ohms = <
22100 1000>;
gw,voltage-offset-microvolt = <
800000>;
};
channel@b { /* A2: Battery voltage */
reg = <
0x0b>;
label = "vdd_bat";
gw,mode = <
1>;
};
};
fan-controller@
2c {
compatible = "gw,gsc-fan";
reg = <
0x2c>;
};
};
};