[PATCH v3 1/2] dt-bindings: mfd: add Traverse Ten64 board controller

Mathew McBride matt at traverse.com.au
Wed Aug 20 23:11:14 PDT 2025


Add device tree binding for the board (micro)controller on Ten64 family
boards[1].

The schema is simple and is (presently) only consumed by U-Boot, but it
is possible that it could be consumed by nvmem or other type drivers in
the future, as well as extended to future Traverse boards.

The categorisation as a "MFD" follows that of comparable devices such
as "gw,gsc", "google,chros-ec" and "kontron,sl28cpld".

[1] https://ten64doc.traverse.com.au/hardware/microcontroller/

Signed-off-by: Mathew McBride <matt at traverse.com.au>
---
 .../mfd/traverse,ten64-controller.yaml        | 45 +++++++++++++++++++
 1 file changed, 45 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/mfd/traverse,ten64-controller.yaml

diff --git a/Documentation/devicetree/bindings/mfd/traverse,ten64-controller.yaml b/Documentation/devicetree/bindings/mfd/traverse,ten64-controller.yaml
new file mode 100644
index 0000000000000..4e2f2063605cd
--- /dev/null
+++ b/Documentation/devicetree/bindings/mfd/traverse,ten64-controller.yaml
@@ -0,0 +1,45 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/mfd/traverse,ten64-controller.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Traverse Ten64 board microcontroller
+
+maintainers:
+  - Mathew McBride <matt at traverse.com.au>
+
+description: |
+  The board microcontroller on the Ten64 board family is responsible for
+  management of power sources on the board, as well as signalling the SoC
+  to power on and reset.
+
+  Communication between the SoC and controller is via I2C, at a fixed address
+  of 0x7e. While the controller firmware implements several functions, there
+  are presently no parameters that are configurable by DT properties, except
+  those that are required of an I2C bus endpoint.
+
+properties:
+  compatible:
+    const: traverse,ten64-controller
+
+  reg:
+    maxItems: 1
+
+required:
+  - compatible
+  - reg
+
+additionalProperties: false
+
+examples:
+  - |
+    i2c {
+        #address-cells = <1>;
+        #size-cells = <0>;
+
+        board-controller at 7e {
+            compatible = "traverse,ten64-controller";
+            reg = <0x7e>;
+        };
+    };
-- 
2.45.1




More information about the linux-arm-kernel mailing list