* [PATCH v5 0/2] dt-bindings: embedded-controller: add binding for Ten64 board controller
@ 2025-09-18 6:14 Mathew McBride
2025-09-18 6:14 ` [PATCH v5 1/2] dt-bindings: embedded-controller: add Traverse " Mathew McBride
` (2 more replies)
0 siblings, 3 replies; 7+ messages in thread
From: Mathew McBride @ 2025-09-18 6:14 UTC (permalink / raw)
To: devicetree, linux-arm-kernel
Cc: Shawn Guo, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Lee Jones, Mathew McBride
This series requires the "dt-bindings: mfd: Move embedded controllers to own
directory"[1] change which is in mfd-next for the 6.18 cycle.
Changes since v3:
- Move to the embedded-controller directory (which was created following
the last submission)
- Remove the extra paragraph in the dt-binding description field
- Const'ify the I2C endpoint address (only one I2C address is implemented in
hardware, 0x7e)
- Fix the description line of the fsl-ls1088a-ten64 patch (s/arm/arm64)
Changes since v4:
- Cosmetic only (no changes to the patch diff), clarify why the Reviwed-By:
tag previously given to dt-schema file, was not taken up due to the content
of the patch changing
- Previous links changed to lore.kernel.org where applicable
v3 series:
https://lore.kernel.org/linux-devicetree/20250821061115.18254-1-matt@traverse.com.au/
v4:
https://lore.kernel.org/linux-devicetree/20250917011940.9880-1-matt@traverse.com.au/
More information on the board controller can be found here:
https://ten64doc.traverse.com.au/hardware/microcontroller/
There is no (presently) Linux kernel driver for this device, but
it is used by U-Boot for functions such as reading out the boards
assigned MAC and controlling some devices on the board.
[1] https://lore.kernel.org/all/20250825081201.9775-2-krzysztof.kozlowski@linaro.org/
Mathew McBride (2):
dt-bindings: embedded-controller: add Traverse Ten64 board controller
arm64: dts: ten64: add board controller binding
.../traverse,ten64-controller.yaml | 40 +++++++++++++++++++
.../boot/dts/freescale/fsl-ls1088a-ten64.dts | 4 ++
2 files changed, 44 insertions(+)
create mode 100644 Documentation/devicetree/bindings/embedded-controller/traverse,ten64-controller.yaml
--
2.45.1
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH v5 1/2] dt-bindings: embedded-controller: add Traverse Ten64 board controller
2025-09-18 6:14 [PATCH v5 0/2] dt-bindings: embedded-controller: add binding for Ten64 board controller Mathew McBride
@ 2025-09-18 6:14 ` Mathew McBride
2025-09-18 15:17 ` Conor Dooley
2025-09-18 16:47 ` Frank Li
2025-09-18 6:14 ` [PATCH v5 2/2] arm64: dts: ten64: add board controller binding Mathew McBride
2025-10-21 7:58 ` [PATCH v5 0/2] dt-bindings: embedded-controller: add binding for Ten64 board controller Shawn Guo
2 siblings, 2 replies; 7+ messages in thread
From: Mathew McBride @ 2025-09-18 6:14 UTC (permalink / raw)
To: devicetree, linux-arm-kernel
Cc: Shawn Guo, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Lee Jones, Mathew McBride
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 nvmem, watchdog and other features could be described in
the future, as well as extension to future Traverse boards.
[1] https://ten64doc.traverse.com.au/hardware/microcontroller/
Signed-off-by: Mathew McBride <matt@traverse.com.au>
---
Changes from v3:
- 'reg' property was changed to a constant (instead of array/maxItems:1),
reflecting that the I2C endpoint is on a fixed address which cannot be
changed.
- Redundant paragraph describing functionality of the device removed
Due to these small, but substantive changes, I have not carried the
Reviewed-By: tag given to v3.
.../traverse,ten64-controller.yaml | 40 +++++++++++++++++++
1 file changed, 40 insertions(+)
create mode 100644 Documentation/devicetree/bindings/embedded-controller/traverse,ten64-controller.yaml
diff --git a/Documentation/devicetree/bindings/embedded-controller/traverse,ten64-controller.yaml b/Documentation/devicetree/bindings/embedded-controller/traverse,ten64-controller.yaml
new file mode 100644
index 0000000000000..08d02c4df8732
--- /dev/null
+++ b/Documentation/devicetree/bindings/embedded-controller/traverse,ten64-controller.yaml
@@ -0,0 +1,40 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/embedded-controller/traverse,ten64-controller.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Traverse Ten64 board microcontroller
+
+maintainers:
+ - Mathew McBride <matt@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.
+
+properties:
+ compatible:
+ const: traverse,ten64-controller
+
+ reg:
+ const: 0x7e
+
+required:
+ - compatible
+ - reg
+
+additionalProperties: false
+
+examples:
+ - |
+ i2c {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ board-controller@7e {
+ compatible = "traverse,ten64-controller";
+ reg = <0x7e>;
+ };
+ };
--
2.45.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH v5 2/2] arm64: dts: ten64: add board controller binding
2025-09-18 6:14 [PATCH v5 0/2] dt-bindings: embedded-controller: add binding for Ten64 board controller Mathew McBride
2025-09-18 6:14 ` [PATCH v5 1/2] dt-bindings: embedded-controller: add Traverse " Mathew McBride
@ 2025-09-18 6:14 ` Mathew McBride
2025-10-21 7:58 ` [PATCH v5 0/2] dt-bindings: embedded-controller: add binding for Ten64 board controller Shawn Guo
2 siblings, 0 replies; 7+ messages in thread
From: Mathew McBride @ 2025-09-18 6:14 UTC (permalink / raw)
To: devicetree, linux-arm-kernel
Cc: Shawn Guo, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Lee Jones, Mathew McBride
The board (micro)controller[1] is responsible for functions such as
power supply sequencing, SoC reset as well as serial/MAC address storage,
bootcount and scratch registers.
There is currently no Linux kernel driver for this controller, however,
there is a driver in U-Boot which utilises this binding.
[1] https://ten64doc.traverse.com.au/hardware/microcontroller/
Signed-off-by: Mathew McBride <matt@traverse.com.au>
---
arch/arm64/boot/dts/freescale/fsl-ls1088a-ten64.dts | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1088a-ten64.dts b/arch/arm64/boot/dts/freescale/fsl-ls1088a-ten64.dts
index 3a11068f2212f..71765ec91745e 100644
--- a/arch/arm64/boot/dts/freescale/fsl-ls1088a-ten64.dts
+++ b/arch/arm64/boot/dts/freescale/fsl-ls1088a-ten64.dts
@@ -253,6 +253,10 @@ usbhub: usb-hub@2d {
reg = <0x2d>;
};
+ uc: board-controller@7e {
+ compatible = "traverse,ten64-controller";
+ reg = <0x7e>;
+ };
};
&i2c2 {
--
2.45.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH v5 1/2] dt-bindings: embedded-controller: add Traverse Ten64 board controller
2025-09-18 6:14 ` [PATCH v5 1/2] dt-bindings: embedded-controller: add Traverse " Mathew McBride
@ 2025-09-18 15:17 ` Conor Dooley
2025-09-18 16:47 ` Frank Li
1 sibling, 0 replies; 7+ messages in thread
From: Conor Dooley @ 2025-09-18 15:17 UTC (permalink / raw)
To: Mathew McBride
Cc: devicetree, linux-arm-kernel, Shawn Guo, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Lee Jones
[-- Attachment #1: Type: text/plain, Size: 52 bytes --]
Acked-by: Conor Dooley <conor.dooley@microchip.com>
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v5 1/2] dt-bindings: embedded-controller: add Traverse Ten64 board controller
2025-09-18 6:14 ` [PATCH v5 1/2] dt-bindings: embedded-controller: add Traverse " Mathew McBride
2025-09-18 15:17 ` Conor Dooley
@ 2025-09-18 16:47 ` Frank Li
2025-09-19 0:14 ` Mathew McBride
1 sibling, 1 reply; 7+ messages in thread
From: Frank Li @ 2025-09-18 16:47 UTC (permalink / raw)
To: Mathew McBride
Cc: devicetree, linux-arm-kernel, Shawn Guo, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Lee Jones
On Thu, Sep 18, 2025 at 04:14:40PM +1000, Mathew McBride wrote:
> 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 nvmem, watchdog and other features could be described in
> the future, as well as extension to future Traverse boards.
>
> [1] https://ten64doc.traverse.com.au/hardware/microcontroller/
>
> Signed-off-by: Mathew McBride <matt@traverse.com.au>
> ---
> Changes from v3:
> - 'reg' property was changed to a constant (instead of array/maxItems:1),
> reflecting that the I2C endpoint is on a fixed address which cannot be
> changed.
> - Redundant paragraph describing functionality of the device removed
>
> Due to these small, but substantive changes, I have not carried the
> Reviewed-By: tag given to v3.
>
> .../traverse,ten64-controller.yaml | 40 +++++++++++++++++++
> 1 file changed, 40 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/embedded-controller/traverse,ten64-controller.yaml
>
> diff --git a/Documentation/devicetree/bindings/embedded-controller/traverse,ten64-controller.yaml b/Documentation/devicetree/bindings/embedded-controller/traverse,ten64-controller.yaml
> new file mode 100644
> index 0000000000000..08d02c4df8732
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/embedded-controller/traverse,ten64-controller.yaml
> @@ -0,0 +1,40 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/embedded-controller/traverse,ten64-controller.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Traverse Ten64 board microcontroller
> +
> +maintainers:
> + - Mathew McBride <matt@traverse.com.au>
> +
> +description: |
needn't |
> + 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.
> +
> +properties:
> + compatible:
> + const: traverse,ten64-controller
> +
> + reg:
> + const: 0x7e
> +
only have reg properties, can you put to
Documentation/devicetree/bindings/trivial-devices.yaml
Frank
> +required:
> + - compatible
> + - reg
> +
> +additionalProperties: false
> +
> +examples:
> + - |
> + i2c {
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + board-controller@7e {
> + compatible = "traverse,ten64-controller";
> + reg = <0x7e>;
> + };
> + };
> --
> 2.45.1
>
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v5 1/2] dt-bindings: embedded-controller: add Traverse Ten64 board controller
2025-09-18 16:47 ` Frank Li
@ 2025-09-19 0:14 ` Mathew McBride
0 siblings, 0 replies; 7+ messages in thread
From: Mathew McBride @ 2025-09-19 0:14 UTC (permalink / raw)
To: Frank Li
Cc: devicetree, linux-arm-kernel, Shawn Guo, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Lee Jones
Hi Frank,
On Fri, Sep 19, 2025, at 2:47 AM, Frank Li wrote:
[snip]
> > +properties:
> > + compatible:
> > + const: traverse,ten64-controller
> > +
> > + reg:
> > + const: 0x7e
> > +
>
> only have reg properties, can you put to
> Documentation/devicetree/bindings/trivial-devices.yaml
I submitted a version of this binding as a trivial device a while ago (2023) and it was not accepted:
https://lore.kernel.org/linux-devicetree/c44a73f0-5b34-c740-40c9-afb04bf1c6ab@linaro.org/
Even if it were to be accepted today as a trivial-device, my concern is that we would end up with this schema again should we expose any functions of the device, for example, as an nvmem device.
Best Regards,
Matt
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v5 0/2] dt-bindings: embedded-controller: add binding for Ten64 board controller
2025-09-18 6:14 [PATCH v5 0/2] dt-bindings: embedded-controller: add binding for Ten64 board controller Mathew McBride
2025-09-18 6:14 ` [PATCH v5 1/2] dt-bindings: embedded-controller: add Traverse " Mathew McBride
2025-09-18 6:14 ` [PATCH v5 2/2] arm64: dts: ten64: add board controller binding Mathew McBride
@ 2025-10-21 7:58 ` Shawn Guo
2 siblings, 0 replies; 7+ messages in thread
From: Shawn Guo @ 2025-10-21 7:58 UTC (permalink / raw)
To: Mathew McBride
Cc: devicetree, linux-arm-kernel, Shawn Guo, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Lee Jones
On Thu, Sep 18, 2025 at 04:14:39PM +1000, Mathew McBride wrote:
> Mathew McBride (2):
> dt-bindings: embedded-controller: add Traverse Ten64 board controller
> arm64: dts: ten64: add board controller binding
Applied both, thanks!
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2025-10-21 7:58 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-09-18 6:14 [PATCH v5 0/2] dt-bindings: embedded-controller: add binding for Ten64 board controller Mathew McBride
2025-09-18 6:14 ` [PATCH v5 1/2] dt-bindings: embedded-controller: add Traverse " Mathew McBride
2025-09-18 15:17 ` Conor Dooley
2025-09-18 16:47 ` Frank Li
2025-09-19 0:14 ` Mathew McBride
2025-09-18 6:14 ` [PATCH v5 2/2] arm64: dts: ten64: add board controller binding Mathew McBride
2025-10-21 7:58 ` [PATCH v5 0/2] dt-bindings: embedded-controller: add binding for Ten64 board controller Shawn Guo
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).