1// SPDX-License-Identifier: GPL-2.0-only 2/* 3 * dtsi file for Hisilicon Hi6220 coresight 4 * 5 * Copyright (C) 2017 HiSilicon Ltd. 6 * 7 * Author: Pengcheng Li <lipengcheng8@huawei.com> 8 * Leo Yan <leo.yan@linaro.org> 9 */ 10 11/ { 12 soc { 13 funnel@f6401000 { 14 compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 15 reg = <0 0xf6401000 0 0x1000>; 16 clocks = <&acpu_sctrl HI6220_ACPU_SFT_AT_S>; 17 clock-names = "apb_pclk"; 18 19 out-ports { 20 port { 21 soc_funnel_out: endpoint { 22 remote-endpoint = 23 <&etf_in>; 24 }; 25 }; 26 }; 27 28 in-ports { 29 port { 30 soc_funnel_in: endpoint { 31 remote-endpoint = 32 <&acpu_funnel_out>; 33 }; 34 }; 35 }; 36 }; 37 38 etf@f6402000 { 39 compatible = "arm,coresight-tmc", "arm,primecell"; 40 reg = <0 0xf6402000 0 0x1000>; 41 clocks = <&acpu_sctrl HI6220_ACPU_SFT_AT_S>; 42 clock-names = "apb_pclk"; 43 44 in-ports { 45 port { 46 etf_in: endpoint { 47 remote-endpoint = 48 <&soc_funnel_out>; 49 }; 50 }; 51 }; 52 53 out-ports { 54 port { 55 etf_out: endpoint { 56 remote-endpoint = 57 <&replicator_in>; 58 }; 59 }; 60 }; 61 }; 62 63 replicator { 64 compatible = "arm,coresight-static-replicator"; 65 clocks = <&acpu_sctrl HI6220_ACPU_SFT_AT_S>; 66 clock-names = "apb_pclk"; 67 68 in-ports { 69 port { 70 replicator_in: endpoint { 71 remote-endpoint = 72 <&etf_out>; 73 }; 74 }; 75 }; 76 77 out-ports { 78 #address-cells = <1>; 79 #size-cells = <0>; 80 81 port@0 { 82 reg = <0>; 83 replicator_out0: endpoint { 84 remote-endpoint = 85 <&etr_in>; 86 }; 87 }; 88 89 port@1 { 90 reg = <1>; 91 replicator_out1: endpoint { 92 remote-endpoint = 93 <&tpiu_in>; 94 }; 95 }; 96 }; 97 }; 98 99 etr@f6404000 { 100 compatible = "arm,coresight-tmc", "arm,primecell"; 101 reg = <0 0xf6404000 0 0x1000>; 102 clocks = <&acpu_sctrl HI6220_ACPU_SFT_AT_S>; 103 clock-names = "apb_pclk"; 104 105 in-ports { 106 port { 107 etr_in: endpoint { 108 remote-endpoint = 109 <&replicator_out0>; 110 }; 111 }; 112 }; 113 }; 114 115 tpiu@f6405000 { 116 compatible = "arm,coresight-tpiu", "arm,primecell"; 117 reg = <0 0xf6405000 0 0x1000>; 118 clocks = <&acpu_sctrl HI6220_ACPU_SFT_AT_S>; 119 clock-names = "apb_pclk"; 120 121 in-ports { 122 port { 123 tpiu_in: endpoint { 124 remote-endpoint = 125 <&replicator_out1>; 126 }; 127 }; 128 }; 129 }; 130 131 funnel@f6501000 { 132 compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 133 reg = <0 0xf6501000 0 0x1000>; 134 clocks = <&acpu_sctrl HI6220_ACPU_SFT_AT_S>; 135 clock-names = "apb_pclk"; 136 137 out-ports { 138 port { 139 acpu_funnel_out: endpoint { 140 remote-endpoint = 141 <&soc_funnel_in>; 142 }; 143 }; 144 }; 145 146 in-ports { 147 #address-cells = <1>; 148 #size-cells = <0>; 149 150 port@0 { 151 reg = <0>; 152 acpu_funnel_in0: endpoint { 153 remote-endpoint = 154 <&etm0_out>; 155 }; 156 }; 157 158 port@1 { 159 reg = <1>; 160 acpu_funnel_in1: endpoint { 161 remote-endpoint = 162 <&etm1_out>; 163 }; 164 }; 165 166 port@2 { 167 reg = <2>; 168 acpu_funnel_in2: endpoint { 169 remote-endpoint = 170 <&etm2_out>; 171 }; 172 }; 173 174 port@3 { 175 reg = <3>; 176 acpu_funnel_in3: endpoint { 177 remote-endpoint = 178 <&etm3_out>; 179 }; 180 }; 181 182 port@4 { 183 reg = <4>; 184 acpu_funnel_in4: endpoint { 185 remote-endpoint = 186 <&etm4_out>; 187 }; 188 }; 189 190 port@5 { 191 reg = <5>; 192 acpu_funnel_in5: endpoint { 193 remote-endpoint = 194 <&etm5_out>; 195 }; 196 }; 197 198 port@6 { 199 reg = <6>; 200 acpu_funnel_in6: endpoint { 201 remote-endpoint = 202 <&etm6_out>; 203 }; 204 }; 205 206 port@7 { 207 reg = <7>; 208 acpu_funnel_in7: endpoint { 209 remote-endpoint = 210 <&etm7_out>; 211 }; 212 }; 213 }; 214 }; 215 216 etm0: etm@f659c000 { 217 compatible = "arm,coresight-etm4x", "arm,primecell"; 218 reg = <0 0xf659c000 0 0x1000>; 219 220 clocks = <&acpu_sctrl HI6220_ACPU_SFT_AT_S>; 221 clock-names = "apb_pclk"; 222 223 cpu = <&cpu0>; 224 225 out-ports { 226 port { 227 etm0_out: endpoint { 228 remote-endpoint = 229 <&acpu_funnel_in0>; 230 }; 231 }; 232 }; 233 }; 234 235 etm1: etm@f659d000 { 236 compatible = "arm,coresight-etm4x", "arm,primecell"; 237 reg = <0 0xf659d000 0 0x1000>; 238 239 clocks = <&acpu_sctrl HI6220_ACPU_SFT_AT_S>; 240 clock-names = "apb_pclk"; 241 242 cpu = <&cpu1>; 243 244 out-ports { 245 port { 246 etm1_out: endpoint { 247 remote-endpoint = 248 <&acpu_funnel_in1>; 249 }; 250 }; 251 }; 252 }; 253 254 etm2: etm@f659e000 { 255 compatible = "arm,coresight-etm4x", "arm,primecell"; 256 reg = <0 0xf659e000 0 0x1000>; 257 258 clocks = <&acpu_sctrl HI6220_ACPU_SFT_AT_S>; 259 clock-names = "apb_pclk"; 260 261 cpu = <&cpu2>; 262 263 out-ports { 264 port { 265 etm2_out: endpoint { 266 remote-endpoint = 267 <&acpu_funnel_in2>; 268 }; 269 }; 270 }; 271 }; 272 273 etm3: etm@f659f000 { 274 compatible = "arm,coresight-etm4x", "arm,primecell"; 275 reg = <0 0xf659f000 0 0x1000>; 276 277 clocks = <&acpu_sctrl HI6220_ACPU_SFT_AT_S>; 278 clock-names = "apb_pclk"; 279 280 cpu = <&cpu3>; 281 282 out-ports { 283 port { 284 etm3_out: endpoint { 285 remote-endpoint = 286 <&acpu_funnel_in3>; 287 }; 288 }; 289 }; 290 }; 291 292 etm4: etm@f65dc000 { 293 compatible = "arm,coresight-etm4x", "arm,primecell"; 294 reg = <0 0xf65dc000 0 0x1000>; 295 296 clocks = <&acpu_sctrl HI6220_ACPU_SFT_AT_S>; 297 clock-names = "apb_pclk"; 298 299 cpu = <&cpu4>; 300 301 out-ports { 302 port { 303 etm4_out: endpoint { 304 remote-endpoint = 305 <&acpu_funnel_in4>; 306 }; 307 }; 308 }; 309 }; 310 311 etm5: etm@f65dd000 { 312 compatible = "arm,coresight-etm4x", "arm,primecell"; 313 reg = <0 0xf65dd000 0 0x1000>; 314 315 clocks = <&acpu_sctrl HI6220_ACPU_SFT_AT_S>; 316 clock-names = "apb_pclk"; 317 318 cpu = <&cpu5>; 319 320 out-ports { 321 port { 322 etm5_out: endpoint { 323 remote-endpoint = 324 <&acpu_funnel_in5>; 325 }; 326 }; 327 }; 328 }; 329 330 etm6: etm@f65de000 { 331 compatible = "arm,coresight-etm4x", "arm,primecell"; 332 reg = <0 0xf65de000 0 0x1000>; 333 334 clocks = <&acpu_sctrl HI6220_ACPU_SFT_AT_S>; 335 clock-names = "apb_pclk"; 336 337 cpu = <&cpu6>; 338 339 out-ports { 340 port { 341 etm6_out: endpoint { 342 remote-endpoint = 343 <&acpu_funnel_in6>; 344 }; 345 }; 346 }; 347 }; 348 349 etm7: etm@f65df000 { 350 compatible = "arm,coresight-etm4x", "arm,primecell"; 351 reg = <0 0xf65df000 0 0x1000>; 352 353 clocks = <&acpu_sctrl HI6220_ACPU_SFT_AT_S>; 354 clock-names = "apb_pclk"; 355 356 cpu = <&cpu7>; 357 358 out-ports { 359 port { 360 etm7_out: endpoint { 361 remote-endpoint = 362 <&acpu_funnel_in7>; 363 }; 364 }; 365 }; 366 }; 367 368 /* System CTIs */ 369 /* CTI 0 - TMC and TPIU connections */ 370 cti@f6403000 { 371 compatible = "arm,coresight-cti", "arm,primecell"; 372 reg = <0 0xf6403000 0 0x1000>; 373 374 clocks = <&acpu_sctrl HI6220_ACPU_SFT_AT_S>; 375 clock-names = "apb_pclk"; 376 }; 377 378 /* CTI - CPU-0 */ 379 cti@f6598000 { 380 compatible = "arm,coresight-cti-v8-arch", 381 "arm,coresight-cti", "arm,primecell"; 382 reg = <0 0xf6598000 0 0x1000>; 383 384 clocks = <&acpu_sctrl HI6220_ACPU_SFT_AT_S>; 385 clock-names = "apb_pclk"; 386 387 cpu = <&cpu0>; 388 arm,cs-dev-assoc = <&etm0>; 389 }; 390 391 /* CTI - CPU-1 */ 392 cti@f6599000 { 393 compatible = "arm,coresight-cti-v8-arch", 394 "arm,coresight-cti", "arm,primecell"; 395 reg = <0 0xf6599000 0 0x1000>; 396 397 clocks = <&acpu_sctrl HI6220_ACPU_SFT_AT_S>; 398 clock-names = "apb_pclk"; 399 400 cpu = <&cpu1>; 401 arm,cs-dev-assoc = <&etm1>; 402 }; 403 404 /* CTI - CPU-2 */ 405 cti@f659a000 { 406 compatible = "arm,coresight-cti-v8-arch", 407 "arm,coresight-cti", "arm,primecell"; 408 reg = <0 0xf659a000 0 0x1000>; 409 410 clocks = <&acpu_sctrl HI6220_ACPU_SFT_AT_S>; 411 clock-names = "apb_pclk"; 412 413 cpu = <&cpu2>; 414 arm,cs-dev-assoc = <&etm2>; 415 }; 416 417 /* CTI - CPU-3 */ 418 cti@f659b000 { 419 compatible = "arm,coresight-cti-v8-arch", 420 "arm,coresight-cti", "arm,primecell"; 421 reg = <0 0xf659b000 0 0x1000>; 422 423 clocks = <&acpu_sctrl HI6220_ACPU_SFT_AT_S>; 424 clock-names = "apb_pclk"; 425 426 cpu = <&cpu3>; 427 arm,cs-dev-assoc = <&etm3>; 428 }; 429 430 /* CTI - CPU-4 */ 431 cti@f65d8000 { 432 compatible = "arm,coresight-cti-v8-arch", 433 "arm,coresight-cti", "arm,primecell"; 434 reg = <0 0xf65d8000 0 0x1000>; 435 436 clocks = <&acpu_sctrl HI6220_ACPU_SFT_AT_S>; 437 clock-names = "apb_pclk"; 438 439 cpu = <&cpu4>; 440 arm,cs-dev-assoc = <&etm4>; 441 }; 442 443 /* CTI - CPU-5 */ 444 cti@f65d9000 { 445 compatible = "arm,coresight-cti-v8-arch", 446 "arm,coresight-cti", "arm,primecell"; 447 reg = <0 0xf65d9000 0 0x1000>; 448 449 clocks = <&acpu_sctrl HI6220_ACPU_SFT_AT_S>; 450 clock-names = "apb_pclk"; 451 452 cpu = <&cpu5>; 453 arm,cs-dev-assoc = <&etm5>; 454 }; 455 456 /* CTI - CPU-6 */ 457 cti@f65da000 { 458 compatible = "arm,coresight-cti-v8-arch", 459 "arm,coresight-cti", "arm,primecell"; 460 reg = <0 0xf65da000 0 0x1000>; 461 462 clocks = <&acpu_sctrl HI6220_ACPU_SFT_AT_S>; 463 clock-names = "apb_pclk"; 464 465 cpu = <&cpu6>; 466 arm,cs-dev-assoc = <&etm6>; 467 }; 468 469 /* CTI - CPU-7 */ 470 cti@f65db000 { 471 compatible = "arm,coresight-cti-v8-arch", 472 "arm,coresight-cti", "arm,primecell"; 473 reg = <0 0xf65db000 0 0x1000>; 474 475 clocks = <&acpu_sctrl HI6220_ACPU_SFT_AT_S>; 476 clock-names = "apb_pclk"; 477 478 cpu = <&cpu7>; 479 arm,cs-dev-assoc = <&etm7>; 480 }; 481 }; 482}; 483