| # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) |
| %YAML 1.2 |
| --- |
| $id: http://devicetree.org/schemas/arm/tegra/nvidia,tegra234-cbb.yaml# |
| $schema: http://devicetree.org/meta-schemas/core.yaml# |
| |
| title: NVIDIA Tegra CBB 2.0 |
| |
| maintainers: |
| - Sumit Gupta <sumitg@nvidia.com> |
| |
| description: |+ |
| The Control Backbone (CBB) is comprised of the physical path from an |
| initiator to a target's register configuration space. CBB 2.0 consists |
| of multiple sub-blocks connected to each other to create a topology. |
| The Tegra234 SoC has different fabrics based on CBB 2.0 architecture |
| which include cluster fabrics BPMP, AON, PSC, SCE, RCE, DCE, FSI and |
| "CBB central fabric". |
| |
| In CBB 2.0, each initiator which can issue transactions connects to a |
| Root Master Node (MN) before it connects to any other element of the |
| fabric. Each Root MN contains a Error Monitor (EM) which detects and |
| logs error. Interrupts from various EM blocks are collated by Error |
| Notifier (EN) which is per fabric and presents a single interrupt from |
| fabric to the SoC interrupt controller. |
| |
| The driver handles errors from CBB due to illegal register accesses |
| and prints debug information about failed transaction on receiving |
| the interrupt from EN. Debug information includes Error Code, Error |
| Description, MasterID, Fabric, SlaveID, Address, Cache, Protection, |
| Security Group etc on receiving error notification. |
| |
| If the Error Response Disable (ERD) is set/enabled for an initiator, |
| then SError or Data abort exception error response is masked and an |
| interrupt is used for reporting errors due to illegal accesses from |
| that initiator. The value returned on read failures is '0xFFFFFFFF' |
| for compatibility with PCIE. |
| |
| properties: |
| $nodename: |
| pattern: "^[a-z]+-fabric@[0-9a-f]+$" |
| |
| compatible: |
| enum: |
| - nvidia,tegra234-aon-fabric |
| - nvidia,tegra234-bpmp-fabric |
| - nvidia,tegra234-cbb-fabric |
| - nvidia,tegra234-dce-fabric |
| - nvidia,tegra234-rce-fabric |
| - nvidia,tegra234-sce-fabric |
| |
| reg: |
| maxItems: 1 |
| |
| interrupts: |
| items: |
| - description: secure interrupt from error notifier |
| |
| additionalProperties: false |
| |
| required: |
| - compatible |
| - reg |
| - interrupts |
| |
| examples: |
| - | |
| #include <dt-bindings/interrupt-controller/arm-gic.h> |
| |
| cbb-fabric@1300000 { |
| compatible = "nvidia,tegra234-cbb-fabric"; |
| reg = <0x13a00000 0x400000>; |
| interrupts = <GIC_SPI 231 IRQ_TYPE_LEVEL_HIGH>; |
| }; |