[PATCH v2 02/10] dt-bindings: mfd: Add binding for Netronix's embedded controller
From: Jonathan Neuschäfer <j.neuschaefer@gmx.net>
Date: 2020-09-05 13:40:16
Also in:
linux-devicetree, linux-pwm, linux-rtc, lkml
Subsystem:
multifunction devices (mfd), netronix embedded controller, open firmware and flattened device tree bindings, the rest · Maintainers:
Lee Jones, Jonathan Neuschäfer, Rob Herring, Krzysztof Kozlowski, Conor Dooley, Linus Torvalds
This EC is found in e-book readers of multiple brands (e.g. Kobo,
Tolino), and is typically implemented as a TI MSP430 microcontroller.
It controls different functions of the system, such as power on/off,
RTC, PWM for the backlight. The exact functionality provided can vary
between boards.
Signed-off-by: Jonathan Neuschäfer <j.neuschaefer@gmx.net>
---
v2:
- Add the plaintext DT binding for comparison
For reference, here is the binding in text form:
Netronix Embedded Controller
This EC is found in e-book readers of multiple brands (e.g. Kobo, Tolino), and
is typically implemented as a TI MSP430 microcontroller.
Required properties:
- compatible: should be "netronix,ntxec"
- reg: The I2C address of the EC
Optional properties:
- system-power-controller:
See Documentation/devicetree/bindings/power/power-controller.txt
- interrupts or interrupts-extended
- interrupt-controller
- #interrupt-cells: Should be 1
Optional subnodes:
Sub-nodes are identified by their compatible string.
compatible string | description
--------------------------------|--------------------------------------
netronix,ntxec-pwm | PWM (used for backlight)
netronix,ntxec-rtc | real time clock
Example:
&i2c3 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_i2c3>;
status = "okay";
ec: embedded-controller@43 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_ntxec>;
compatible = "netronix,ntxec";
reg = <0x43>;
system-power-controller;
interrupt-parent = <&gpio4>;
interrupts = <11 IRQ_TYPE_EDGE_FALLING>;
interrupt-controller;
#interrupt-cells = <1>;
pwm {
compatible = "netronix,ntxec-pwm";
#pwm-cells = <2>;
};
rtc {
compatible = "netronix,ntxec-rtc";
interrupts-extended = <&ec 15>;
interrupt-names = "alarm";
};
};
};
---
.../bindings/mfd/netronix,ntxec.yaml | 57 +++++++++++++++++++
1 file changed, 57 insertions(+)
create mode 100644 Documentation/devicetree/bindings/mfd/netronix,ntxec.yaml
diff --git a/Documentation/devicetree/bindings/mfd/netronix,ntxec.yaml b/Documentation/devicetree/bindings/mfd/netronix,ntxec.yaml
new file mode 100644
index 0000000000000..596df460f98eb
--- /dev/null
+++ b/Documentation/devicetree/bindings/mfd/netronix,ntxec.yaml@@ -0,0 +1,57 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/mfd/netronix,ntxec.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Netronix Embedded Controller + +maintainers: + - Jonathan Neuschäfer <j.neuschaefer@gmx.net> + +description: | + This EC is found in e-book readers of multiple brands (e.g. Kobo, Tolino), and + is typically implemented as a TI MSP430 microcontroller. + + +properties: + compatible: + const: netronix,ntxec + + reg: + items: + - description: The I2C address of the EC + + system-power-controller: + type: boolean + description: See Documentation/devicetree/bindings/power/power-controller.txt + + interrupts: + minItems: 1 + description: + The EC can signal interrupts via a GPIO line + +required: + - compatible + - reg + +examples: + - | + #include <dt-bindings/interrupt-controller/irq.h> + i2c { + #address-cells = <1>; + #size-cells = <0>; + + ec: embedded-controller@43 { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_ntxec>; + + compatible = "netronix,ntxec"; + reg = <0x43>; + system-power-controller; + interrupt-parent = <&gpio4>; + interrupts = <11 IRQ_TYPE_EDGE_FALLING>; + interrupt-controller; + #interrupt-cells = <1>; + }; + }; --
2.28.0 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel