Commit fc4d041e authored by Appana Durga Kedareswara rao's avatar Appana Durga Kedareswara rao Committed by Greg Kroah-Hartman
Browse files

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: default avatarAppana Durga Kedareswara rao <appana.durga.kedareswara.rao@amd.com>
Reviewed-by: default avatarKrzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/20221125054113.122833-2-appana.durga.kedareswara.rao@amd.com


Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent c7109c72
Loading
Loading
Loading
Loading
+47 −0
Original line number Diff line number Diff line
# 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>;
    };