~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/devicetree/bindings/arm/tegra/nvidia,tegra194-cbb.yaml

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
  2 %YAML 1.2
  3 ---
  4 $id: http://devicetree.org/schemas/arm/tegra/nvidia,tegra194-cbb.yaml#
  5 $schema: http://devicetree.org/meta-schemas/core.yaml#
  6 
  7 title: NVIDIA Tegra194 CBB 1.0
  8 
  9 maintainers:
 10   - Sumit Gupta <sumitg@nvidia.com>
 11 
 12 description: |+
 13   The Control Backbone (CBB) is comprised of the physical path from an
 14   initiator to a target's register configuration space. CBB 1.0 has
 15   multiple hierarchical sub-NOCs (Network-on-Chip) and connects various
 16   initiators and targets using different bridges like AXIP2P, AXI2APB.
 17 
 18   This driver handles errors due to illegal register accesses reported
 19   by the NOCs inside the CBB. NOCs reporting errors are cluster NOCs
 20   "AON-NOC, SCE-NOC, RCE-NOC, BPMP-NOC, CV-NOC" and "CBB Central NOC"
 21   which is the main NOC.
 22 
 23   By default, the access issuing initiator is informed about the error
 24   using SError or Data Abort exception unless the ERD (Error Response
 25   Disable) is enabled/set for that initiator. If the ERD is enabled, then
 26   SError or Data Abort is masked and the error is reported with interrupt.
 27 
 28   - For CCPLEX (CPU Complex) initiator, the driver sets ERD bit. So, the
 29     errors due to illegal accesses from CCPLEX are reported by interrupts.
 30     If ERD is not set, then error is reported by SError.
 31   - For other initiators, the ERD is disabled. So, the access issuing
 32     initiator is informed about the illegal access by Data Abort exception.
 33     In addition, an interrupt is also generated to CCPLEX. These initiators
 34     include all engines using Cortex-R5 (which is ARMv7 CPU cluster) and
 35     engines like TSEC (Security co-processor), NVDEC (NVIDIA Video Decoder
 36     engine) etc which can initiate transactions.
 37 
 38   The driver prints relevant debug information like Error Code, Error
 39   Description, Master, Address, AXI ID, Cache, Protection, Security Group
 40   etc on receiving error notification.
 41 
 42 properties:
 43   $nodename:
 44     pattern: "^[a-z]+-noc@[0-9a-f]+$"
 45 
 46   compatible:
 47     enum:
 48       - nvidia,tegra194-cbb-noc
 49       - nvidia,tegra194-aon-noc
 50       - nvidia,tegra194-bpmp-noc
 51       - nvidia,tegra194-rce-noc
 52       - nvidia,tegra194-sce-noc
 53 
 54   reg:
 55     maxItems: 1
 56 
 57   interrupts:
 58     description:
 59       CCPLEX receives secure or nonsecure interrupt depending on error type.
 60       A secure interrupt is received for SEC(firewall) & SLV errors and a
 61       non-secure interrupt is received for TMO & DEC errors.
 62     items:
 63       - description: non-secure interrupt
 64       - description: secure interrupt
 65 
 66   nvidia,axi2apb:
 67     $ref: /schemas/types.yaml#/definitions/phandle
 68     description:
 69       Specifies the node having all axi2apb bridges which need to be checked
 70       for any error logged in their status register.
 71 
 72   nvidia,apbmisc:
 73     $ref: /schemas/types.yaml#/definitions/phandle
 74     description:
 75       Specifies the apbmisc node which need to be used for reading the ERD
 76       register.
 77 
 78 additionalProperties: false
 79 
 80 required:
 81   - compatible
 82   - reg
 83   - interrupts
 84   - nvidia,apbmisc
 85 
 86 examples:
 87   - |
 88     #include <dt-bindings/interrupt-controller/arm-gic.h>
 89 
 90     cbb-noc@2300000 {
 91         compatible = "nvidia,tegra194-cbb-noc";
 92         reg = <0x02300000 0x1000>;
 93         interrupts = <GIC_SPI 230 IRQ_TYPE_LEVEL_HIGH>,
 94                      <GIC_SPI 231 IRQ_TYPE_LEVEL_HIGH>;
 95         nvidia,axi2apb = <&axi2apb>;
 96         nvidia,apbmisc = <&apbmisc>;
 97     };

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php