1*66d05204SRob Herring# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2*66d05204SRob Herring%YAML 1.2 3*66d05204SRob Herring--- 4*66d05204SRob Herring$id: http://devicetree.org/schemas/arm/arm,coresight-cpu-debug.yaml# 5*66d05204SRob Herring$schema: http://devicetree.org/meta-schemas/core.yaml# 6*66d05204SRob Herring 7*66d05204SRob Herringtitle: CoreSight CPU Debug Component 8*66d05204SRob Herring 9*66d05204SRob Herringmaintainers: 10*66d05204SRob Herring - Mathieu Poirier <mathieu.poirier@linaro.org> 11*66d05204SRob Herring - Mike Leach <mike.leach@linaro.org> 12*66d05204SRob Herring - Leo Yan <leo.yan@linaro.org> 13*66d05204SRob Herring - Suzuki K Poulose <suzuki.poulose@arm.com> 14*66d05204SRob Herring 15*66d05204SRob Herringdescription: | 16*66d05204SRob Herring CoreSight CPU debug component are compliant with the ARMv8 architecture 17*66d05204SRob Herring reference manual (ARM DDI 0487A.k) Chapter 'Part H: External debug'. The 18*66d05204SRob Herring external debug module is mainly used for two modes: self-hosted debug and 19*66d05204SRob Herring external debug, and it can be accessed from mmio region from Coresight and 20*66d05204SRob Herring eventually the debug module connects with CPU for debugging. And the debug 21*66d05204SRob Herring module provides sample-based profiling extension, which can be used to sample 22*66d05204SRob Herring CPU program counter, secure state and exception level, etc; usually every CPU 23*66d05204SRob Herring has one dedicated debug module to be connected. 24*66d05204SRob Herring 25*66d05204SRob Herringselect: 26*66d05204SRob Herring properties: 27*66d05204SRob Herring compatible: 28*66d05204SRob Herring contains: 29*66d05204SRob Herring const: arm,coresight-cpu-debug 30*66d05204SRob Herring required: 31*66d05204SRob Herring - compatible 32*66d05204SRob Herring 33*66d05204SRob HerringallOf: 34*66d05204SRob Herring - $ref: /schemas/arm/primecell.yaml# 35*66d05204SRob Herring 36*66d05204SRob Herringproperties: 37*66d05204SRob Herring compatible: 38*66d05204SRob Herring items: 39*66d05204SRob Herring - const: arm,coresight-cpu-debug 40*66d05204SRob Herring - const: arm,primecell 41*66d05204SRob Herring 42*66d05204SRob Herring reg: 43*66d05204SRob Herring maxItems: 1 44*66d05204SRob Herring 45*66d05204SRob Herring clocks: 46*66d05204SRob Herring maxItems: 1 47*66d05204SRob Herring 48*66d05204SRob Herring clock-names: 49*66d05204SRob Herring maxItems: 1 50*66d05204SRob Herring 51*66d05204SRob Herring cpu: 52*66d05204SRob Herring description: 53*66d05204SRob Herring A phandle to the cpu this debug component is bound to. 54*66d05204SRob Herring $ref: /schemas/types.yaml#/definitions/phandle 55*66d05204SRob Herring 56*66d05204SRob Herring power-domains: 57*66d05204SRob Herring maxItems: 1 58*66d05204SRob Herring description: 59*66d05204SRob Herring A phandle to the debug power domain if the debug logic has its own 60*66d05204SRob Herring dedicated power domain. CPU idle states may also need to be separately 61*66d05204SRob Herring constrained to keep CPU cores powered. 62*66d05204SRob Herring 63*66d05204SRob Herringrequired: 64*66d05204SRob Herring - compatible 65*66d05204SRob Herring - reg 66*66d05204SRob Herring - clocks 67*66d05204SRob Herring - clock-names 68*66d05204SRob Herring - cpu 69*66d05204SRob Herring 70*66d05204SRob HerringunevaluatedProperties: false 71*66d05204SRob Herring 72*66d05204SRob Herringexamples: 73*66d05204SRob Herring - | 74*66d05204SRob Herring debug@f6590000 { 75*66d05204SRob Herring compatible = "arm,coresight-cpu-debug", "arm,primecell"; 76*66d05204SRob Herring reg = <0xf6590000 0x1000>; 77*66d05204SRob Herring clocks = <&sys_ctrl 1>; 78*66d05204SRob Herring clock-names = "apb_pclk"; 79*66d05204SRob Herring cpu = <&cpu0>; 80*66d05204SRob Herring }; 81*66d05204SRob Herring... 82