Subject: [PATCH v2 1/4] dt-bindings: misc: tmr-manager: Add device-tree binding for TMR Manager

From: Appana Durga Kedareswara rao <[email protected]>

Triple Modular Redundancy(TMR) subsystem contains three microblaze cores,
subsystem is fault-tolerant and continues to operate nominally after
encountering an error. Together with the capability to detect and recover
from errors, the implementation ensures the reliability of the entire
subsystem. TMR Manager is responsible for performing recovery of the
subsystem detects the fault via a break signal it invokes microblaze
software break handler which calls the tmr manager driver api to
update the error count and status.

Signed-off-by: Appana Durga Kedareswara rao <[email protected]>
Signed-off-by: Appana Durga Kedareswara rao <[email protected]>
---
Changes for v2:
--> Improved description for xlnx,magic1 property as suggested by Krzysztof.
--> Fixed style issues (indentation of example node title description
etc..)
.../bindings/misc/xlnx,tmr-manager.yaml | 47 +++++++++++++++++++
1 file changed, 47 insertions(+)
create mode 100644 Documentation/devicetree/bindings/misc/xlnx,tmr-manager.yaml

diff --git a/Documentation/devicetree/bindings/misc/xlnx,tmr-manager.yaml b/Documentation/devicetree/bindings/misc/xlnx,tmr-manager.yaml
new file mode 100644
index 000000000000..f7e6ac1d5867
--- /dev/null
+++ b/Documentation/devicetree/bindings/misc/xlnx,tmr-manager.yaml
@@ -0,0 +1,47 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/misc/xlnx,tmr-manager.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Xilinx Triple Modular Redundancy(TMR) Manager IP
+
+maintainers:
+ - Appana Durga Kedareswara rao <[email protected]>
+
+description: |
+ The Triple Modular Redundancy(TMR) Manager is responsible for handling the
+ TMR subsystem state, including fault detection and error recovery. The core
+ is triplicated in each of the sub-blocks in the TMR subsystem, and provides
+ majority voting of its internal state.
+
+properties:
+ compatible:
+ enum:
+ - xlnx,tmr-manager-1.0
+
+ reg:
+ maxItems: 1
+
+ xlnx,magic1:
+ minimum: 0
+ maximum: 255
+ description:
+ Magic byte 1, When configured it allows the controller to perform
+ recovery.
+ $ref: /schemas/types.yaml#/definitions/uint32
+
+required:
+ - compatible
+ - reg
+ - xlnx,magic1
+
+additionalProperties: false
+
+examples:
+ - |
+ tmr-manager@44a10000 {
+ compatible = "xlnx,tmr-manager-1.0";
+ reg = <0x44a10000 0x10000>;
+ xlnx,magic1 = <0x46>;
+ };
--
2.25.1


2022-07-20 06:28:58

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH v2 1/4] dt-bindings: misc: tmr-manager: Add device-tree binding for TMR Manager

On 20/07/2022 08:00, Appana Durga Kedareswara rao wrote:
> From: Appana Durga Kedareswara rao <[email protected]>
>
> Triple Modular Redundancy(TMR) subsystem contains three microblaze cores,
> subsystem is fault-tolerant and continues to operate nominally after
> encountering an error. Together with the capability to detect and recover
> from errors, the implementation ensures the reliability of the entire
> subsystem. TMR Manager is responsible for performing recovery of the
> subsystem detects the fault via a break signal it invokes microblaze
> software break handler which calls the tmr manager driver api to
> update the error count and status.
>
> Signed-off-by: Appana Durga Kedareswara rao <[email protected]>
> Signed-off-by: Appana Durga Kedareswara rao <[email protected]>

Use one identity, not two.

> ---
> Changes for v2:
> --> Improved description for xlnx,magic1 property as suggested by Krzysztof.
> --> Fixed style issues (indentation of example node title description
> etc..)
> .../bindings/misc/xlnx,tmr-manager.yaml | 47 +++++++++++++++++++

It's a pity it was put into misc, but since we did not reach consensus
during last discussion and there is no fault-handler-like subsystem yet,
we might move it there later:

Reviewed-by: Krzysztof Kozlowski <[email protected]>


Best regards,
Krzysztof