dt-bindings: misc: tmr-manager: Add device-tree binding for TMR Manager

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 <appana.durga.kedareswara.rao@amd.com>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/20221125054113.122833-2-appana.durga.kedareswara.rao@amd.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Appana Durga Kedareswara rao 2022-11-25 11:11:10 +05:30 committed by Greg Kroah-Hartman
parent c7109c72ab
commit fc4d041e94

View file

@ -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 <appana.durga.kedareswara.rao@amd.com>
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>;
};