1=================================================================== 2Debug Control and Status Register (DCSR) Binding 3Copyright 2011 Freescale Semiconductor Inc. 4 5NOTE: The bindings described in this document are preliminary and subject 6to change. Some of the compatible strings that contain only generic names 7may turn out to be inappropriate, or need additional properties to describe 8the integration of the block with the rest of the chip. 9 10===================================================================== 11Debug Control and Status Register Memory Map 12 13Description 14 15This node defines the base address and range for the 16defined DCSR Memory Map. Child nodes will describe the individual 17debug blocks defined within this memory space. 18 19PROPERTIES 20 21 - compatible 22 Usage: required 23 Value type: <string> 24 Definition: Must include "fsl,dcsr" and "simple-bus". 25 The DCSR space exists in the memory-mapped bus. 26 27 - #address-cells 28 Usage: required 29 Value type: <u32> 30 Definition: A standard property. Defines the number of cells 31 or representing physical addresses in child nodes. 32 33 - #size-cells 34 Usage: required 35 Value type: <u32> 36 Definition: A standard property. Defines the number of cells 37 or representing the size of physical addresses in 38 child nodes. 39 40 - ranges 41 Usage: required 42 Value type: <prop-encoded-array> 43 Definition: A standard property. Specifies the physical address 44 range of the DCSR space. 45 46EXAMPLE 47 dcsr: dcsr@f00000000 { 48 #address-cells = <1>; 49 #size-cells = <1>; 50 compatible = "fsl,dcsr", "simple-bus"; 51 ranges = <0x00000000 0xf 0x00000000 0x01008000>; 52 }; 53 54===================================================================== 55Event Processing Unit 56 57This node represents the region of DCSR space allocated to the EPU 58 59PROPERTIES 60 61 - compatible 62 Usage: required 63 Value type: <string> 64 Definition: Must include "fsl,dcsr-epu" 65 66 - interrupts 67 Usage: required 68 Value type: <prop_encoded-array> 69 Definition: Specifies the interrupts generated by the EPU. 70 The value of the interrupts property consists of three 71 interrupt specifiers. The format of the specifier is defined 72 by the binding document describing the node's interrupt parent. 73 74 The EPU counters can be configured to assert the performance 75 monitor interrupt signal based on either counter overflow or value 76 match. Which counter asserted the interrupt is captured in an EPU 77 Counter Interrupt Status Register (EPCPUISR). 78 79 The EPU unit can also be configured to assert either or both of 80 two interrupt signals based on debug event sources within the SoC. 81 The interrupt signals are epu_xt_int0 and epu_xt_int1. 82 Which event source asserted the interrupt is captured in an EPU 83 Interrupt Status Register (EPISR0,EPISR1). 84 85 Interrupt numbers are listed in order (perfmon, event0, event1). 86 87 - reg 88 Usage: required 89 Value type: <prop-encoded-array> 90 Definition: A standard property. Specifies the physical address 91 offset and length of the DCSR space registers of the device 92 configuration block. 93 94EXAMPLE 95 dcsr-epu@0 { 96 compatible = "fsl,dcsr-epu"; 97 interrupts = <52 2 0 0 98 84 2 0 0 99 85 2 0 0>; 100 interrupt-parent = <&mpic>; 101 reg = <0x0 0x1000>; 102 }; 103 104======================================================================= 105Nexus Port Controller 106 107This node represents the region of DCSR space allocated to the NPC 108 109PROPERTIES 110 111 - compatible 112 Usage: required 113 Value type: <string> 114 Definition: Must include "fsl,dcsr-npc" 115 116 - reg 117 Usage: required 118 Value type: <prop-encoded-array> 119 Definition: A standard property. Specifies the physical address 120 offset and length of the DCSR space registers of the device 121 configuration block. 122 The Nexus Port controller occupies two regions in the DCSR space 123 with distinct functionality. 124 125 The first register range describes the Nexus Port Controller 126 control and status registers. 127 128 The second register range describes the Nexus Port Controller 129 internal trace buffer. The NPC trace buffer is a small memory buffer 130 which stages the nexus trace data for transmission via the Aurora port 131 or to a DDR based trace buffer. In some configurations the NPC trace 132 buffer can be the only trace buffer used. 133 134 135EXAMPLE 136 dcsr-npc { 137 compatible = "fsl,dcsr-npc"; 138 reg = <0x1000 0x1000 0x1000000 0x8000>; 139 }; 140 141======================================================================= 142Nexus Concentrator 143 144This node represents the region of DCSR space allocated to the NXC 145 146PROPERTIES 147 148 - compatible 149 Usage: required 150 Value type: <string> 151 Definition: Must include "fsl,dcsr-nxc" 152 153 - reg 154 Usage: required 155 Value type: <prop-encoded-array> 156 Definition: A standard property. Specifies the physical address 157 offset and length of the DCSR space registers of the device 158 configuration block. 159 160EXAMPLE 161 dcsr-nxc@2000 { 162 compatible = "fsl,dcsr-nxc"; 163 reg = <0x2000 0x1000>; 164 }; 165======================================================================= 166CoreNet Debug Controller 167 168This node represents the region of DCSR space allocated to 169the CoreNet Debug controller. 170 171PROPERTIES 172 173 - compatible 174 Usage: required 175 Value type: <string> 176 Definition: Must include "fsl,dcsr-corenet" 177 178 - reg 179 Usage: required 180 Value type: <prop-encoded-array> 181 Definition: A standard property. Specifies the physical address 182 offset and length of the DCSR space registers of the device 183 configuration block. 184 The CoreNet Debug controller occupies two regions in the DCSR space 185 with distinct functionality. 186 187 The first register range describes the CoreNet Debug Controller 188 functionality to perform transaction and transaction attribute matches. 189 190 The second register range describes the CoreNet Debug Controller 191 functionality to trigger event notifications and debug traces. 192 193EXAMPLE 194 dcsr-corenet { 195 compatible = "fsl,dcsr-corenet"; 196 reg = <0x8000 0x1000 0xB0000 0x1000>; 197 }; 198 199======================================================================= 200Data Path Debug controller 201 202This node represents the region of DCSR space allocated to 203the DPAA Debug Controller. This controller controls debug configuration 204for the QMAN and FMAN blocks. 205 206PROPERTIES 207 208 - compatible 209 Usage: required 210 Value type: <string> 211 Definition: Must include both an identifier specific to the SoC 212 or Debug IP of the form "fsl,<soc>-dcsr-dpaa" in addition to the 213 generic compatible string "fsl,dcsr-dpaa". 214 215 - reg 216 Usage: required 217 Value type: <prop-encoded-array> 218 Definition: A standard property. Specifies the physical address 219 offset and length of the DCSR space registers of the device 220 configuration block. 221 222EXAMPLE 223 dcsr-dpaa@9000 { 224 compatible = "fsl,p4080-dcsr-dpaa", "fsl,dcsr-dpaa"; 225 reg = <0x9000 0x1000>; 226 }; 227 228======================================================================= 229OCeaN Debug controller 230 231This node represents the region of DCSR space allocated to 232the OCN Debug Controller. 233 234PROPERTIES 235 236 - compatible 237 Usage: required 238 Value type: <string> 239 Definition: Must include both an identifier specific to the SoC 240 or Debug IP of the form "fsl,<soc>-dcsr-ocn" in addition to the 241 generic compatible string "fsl,dcsr-ocn". 242 243 - reg 244 Usage: required 245 Value type: <prop-encoded-array> 246 Definition: A standard property. Specifies the physical address 247 offset and length of the DCSR space registers of the device 248 configuration block. 249 250EXAMPLE 251 dcsr-ocn@11000 { 252 compatible = "fsl,p4080-dcsr-ocn", "fsl,dcsr-ocn"; 253 reg = <0x11000 0x1000>; 254 }; 255 256======================================================================= 257DDR Controller Debug controller 258 259This node represents the region of DCSR space allocated to 260the OCN Debug Controller. 261 262PROPERTIES 263 264 - compatible 265 Usage: required 266 Value type: <string> 267 Definition: Must include "fsl,dcsr-ddr" 268 269 - dev-handle 270 Usage: required 271 Definition: A phandle to associate this debug node with its 272 component controller. 273 274 - reg 275 Usage: required 276 Value type: <prop-encoded-array> 277 Definition: A standard property. Specifies the physical address 278 offset and length of the DCSR space registers of the device 279 configuration block. 280 281EXAMPLE 282 dcsr-ddr@12000 { 283 compatible = "fsl,dcsr-ddr"; 284 dev-handle = <&ddr1>; 285 reg = <0x12000 0x1000>; 286 }; 287 288======================================================================= 289Nexus Aurora Link Controller 290 291This node represents the region of DCSR space allocated to 292the NAL Controller. 293 294PROPERTIES 295 296 - compatible 297 Usage: required 298 Value type: <string> 299 Definition: Must include both an identifier specific to the SoC 300 or Debug IP of the form "fsl,<soc>-dcsr-nal" in addition to the 301 generic compatible string "fsl,dcsr-nal". 302 303 - reg 304 Usage: required 305 Value type: <prop-encoded-array> 306 Definition: A standard property. Specifies the physical address 307 offset and length of the DCSR space registers of the device 308 configuration block. 309 310EXAMPLE 311 dcsr-nal@18000 { 312 compatible = "fsl,p4080-dcsr-nal", "fsl,dcsr-nal"; 313 reg = <0x18000 0x1000>; 314 }; 315 316 317======================================================================= 318Run Control and Power Management 319 320This node represents the region of DCSR space allocated to 321the RCPM Debug Controller. This functionlity is limited to the 322control the debug operations of the SoC and cores. 323 324PROPERTIES 325 326 - compatible 327 Usage: required 328 Value type: <string> 329 Definition: Must include both an identifier specific to the SoC 330 or Debug IP of the form "fsl,<soc>-dcsr-rcpm" in addition to the 331 generic compatible string "fsl,dcsr-rcpm". 332 333 - reg 334 Usage: required 335 Value type: <prop-encoded-array> 336 Definition: A standard property. Specifies the physical address 337 offset and length of the DCSR space registers of the device 338 configuration block. 339 340EXAMPLE 341 dcsr-rcpm@22000 { 342 compatible = "fsl,p4080-dcsr-rcpm", "fsl,dcsr-rcpm"; 343 reg = <0x22000 0x1000>; 344 }; 345 346======================================================================= 347Core Service Bridge Proxy 348 349This node represents the region of DCSR space allocated to 350the Core Service Bridge Proxies. 351There is one Core Service Bridge Proxy device for each CPU in the system. 352This functionlity provides access to the debug operations of the CPU. 353 354PROPERTIES 355 356 - compatible 357 Usage: required 358 Value type: <string> 359 Definition: Must include both an identifier specific to the cpu 360 of the form "fsl,dcsr-<cpu>-sb-proxy" in addition to the 361 generic compatible string "fsl,dcsr-cpu-sb-proxy". 362 363 - cpu-handle 364 Usage: required 365 Definition: A phandle to associate this debug node with its cpu. 366 367 - reg 368 Usage: required 369 Value type: <prop-encoded-array> 370 Definition: A standard property. Specifies the physical address 371 offset and length of the DCSR space registers of the device 372 configuration block. 373 374EXAMPLE 375 dcsr-cpu-sb-proxy@40000 { 376 compatible = "fsl,dcsr-e500mc-sb-proxy", 377 "fsl,dcsr-cpu-sb-proxy"; 378 cpu-handle = <&cpu0>; 379 reg = <0x40000 0x1000>; 380 }; 381 dcsr-cpu-sb-proxy@41000 { 382 compatible = "fsl,dcsr-e500mc-sb-proxy", 383 "fsl,dcsr-cpu-sb-proxy"; 384 cpu-handle = <&cpu1>; 385 reg = <0x41000 0x1000>; 386 }; 387 388======================================================================= 389