1// SPDX-License-Identifier: GPL-2.0 2/* 3 * Device Tree Source for the SH-Mobile AG5 (R8A73A00/SH73A0) SoC 4 * 5 * Copyright (C) 2012 Renesas Solutions Corp. 6 */ 7 8#include <dt-bindings/clock/sh73a0-clock.h> 9#include <dt-bindings/interrupt-controller/arm-gic.h> 10#include <dt-bindings/interrupt-controller/irq.h> 11 12/ { 13 compatible = "renesas,sh73a0"; 14 interrupt-parent = <&gic>; 15 #address-cells = <1>; 16 #size-cells = <1>; 17 18 cpus { 19 #address-cells = <1>; 20 #size-cells = <0>; 21 22 cpu0: cpu@0 { 23 device_type = "cpu"; 24 compatible = "arm,cortex-a9"; 25 reg = <0>; 26 clock-frequency = <1196000000>; 27 clocks = <&cpg_clocks SH73A0_CLK_Z>; 28 power-domains = <&pd_a2sl>; 29 next-level-cache = <&L2>; 30 }; 31 cpu1: cpu@1 { 32 device_type = "cpu"; 33 compatible = "arm,cortex-a9"; 34 reg = <1>; 35 clock-frequency = <1196000000>; 36 clocks = <&cpg_clocks SH73A0_CLK_Z>; 37 power-domains = <&pd_a2sl>; 38 next-level-cache = <&L2>; 39 }; 40 }; 41 42 timer@f0000600 { 43 compatible = "arm,cortex-a9-twd-timer"; 44 reg = <0xf0000600 0x20>; 45 interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_EDGE_RISING)>; 46 clocks = <&twd_clk>; 47 }; 48 49 gic: interrupt-controller@f0001000 { 50 compatible = "arm,cortex-a9-gic"; 51 #interrupt-cells = <3>; 52 interrupt-controller; 53 reg = <0xf0001000 0x1000>, 54 <0xf0000100 0x100>; 55 }; 56 57 L2: cache-controller@f0100000 { 58 compatible = "arm,pl310-cache"; 59 reg = <0xf0100000 0x1000>; 60 interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>; 61 power-domains = <&pd_a3sm>; 62 arm,data-latency = <3 3 3>; 63 arm,tag-latency = <2 2 2>; 64 arm,shared-override; 65 cache-unified; 66 cache-level = <2>; 67 }; 68 69 sbsc2: memory-controller@fb400000 { 70 compatible = "renesas,sbsc-sh73a0"; 71 reg = <0xfb400000 0x400>; 72 interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>, 73 <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>; 74 interrupt-names = "sec", "temp"; 75 power-domains = <&pd_a4bc1>; 76 }; 77 78 sbsc1: memory-controller@fe400000 { 79 compatible = "renesas,sbsc-sh73a0"; 80 reg = <0xfe400000 0x400>; 81 interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>, 82 <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>; 83 interrupt-names = "sec", "temp"; 84 power-domains = <&pd_a4bc0>; 85 }; 86 87 pmu { 88 compatible = "arm,cortex-a9-pmu"; 89 interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>, 90 <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>; 91 interrupt-affinity = <&cpu0>, <&cpu1>; 92 }; 93 94 cmt1: timer@e6138000 { 95 compatible = "renesas,cmt-48-sh73a0", "renesas,cmt-48"; 96 reg = <0xe6138000 0x200>; 97 interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>; 98 clocks = <&mstp3_clks SH73A0_CLK_CMT1>; 99 clock-names = "fck"; 100 power-domains = <&pd_c5>; 101 status = "disabled"; 102 }; 103 104 irqpin0: interrupt-controller@e6900000 { 105 compatible = "renesas,intc-irqpin-sh73a0", "renesas,intc-irqpin"; 106 #interrupt-cells = <2>; 107 interrupt-controller; 108 reg = <0xe6900000 4>, 109 <0xe6900010 4>, 110 <0xe6900020 1>, 111 <0xe6900040 1>, 112 <0xe6900060 1>; 113 interrupts = <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH 114 GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH 115 GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH 116 GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH 117 GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH 118 GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH 119 GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH 120 GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>; 121 clocks = <&mstp5_clks SH73A0_CLK_INTCA0>; 122 power-domains = <&pd_a4s>; 123 control-parent; 124 }; 125 126 irqpin1: interrupt-controller@e6900004 { 127 compatible = "renesas,intc-irqpin-sh73a0", "renesas,intc-irqpin"; 128 #interrupt-cells = <2>; 129 interrupt-controller; 130 reg = <0xe6900004 4>, 131 <0xe6900014 4>, 132 <0xe6900024 1>, 133 <0xe6900044 1>, 134 <0xe6900064 1>; 135 interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH 136 GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH 137 GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH 138 GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH 139 GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH 140 GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH 141 GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH 142 GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>; 143 clocks = <&mstp5_clks SH73A0_CLK_INTCA0>; 144 power-domains = <&pd_a4s>; 145 control-parent; 146 }; 147 148 irqpin2: interrupt-controller@e6900008 { 149 compatible = "renesas,intc-irqpin-sh73a0", "renesas,intc-irqpin"; 150 #interrupt-cells = <2>; 151 interrupt-controller; 152 reg = <0xe6900008 4>, 153 <0xe6900018 4>, 154 <0xe6900028 1>, 155 <0xe6900048 1>, 156 <0xe6900068 1>; 157 interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH 158 GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH 159 GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH 160 GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH 161 GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH 162 GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH 163 GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH 164 GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>; 165 clocks = <&mstp5_clks SH73A0_CLK_INTCA0>; 166 power-domains = <&pd_a4s>; 167 control-parent; 168 }; 169 170 irqpin3: interrupt-controller@e690000c { 171 compatible = "renesas,intc-irqpin-sh73a0", "renesas,intc-irqpin"; 172 #interrupt-cells = <2>; 173 interrupt-controller; 174 reg = <0xe690000c 4>, 175 <0xe690001c 4>, 176 <0xe690002c 1>, 177 <0xe690004c 1>, 178 <0xe690006c 1>; 179 interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH 180 GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH 181 GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH 182 GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH 183 GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH 184 GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH 185 GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH 186 GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>; 187 clocks = <&mstp5_clks SH73A0_CLK_INTCA0>; 188 power-domains = <&pd_a4s>; 189 control-parent; 190 }; 191 192 i2c0: i2c@e6820000 { 193 #address-cells = <1>; 194 #size-cells = <0>; 195 compatible = "renesas,iic-sh73a0", "renesas,rmobile-iic"; 196 reg = <0xe6820000 0x425>; 197 interrupts = <GIC_SPI 167 IRQ_TYPE_LEVEL_HIGH 198 GIC_SPI 168 IRQ_TYPE_LEVEL_HIGH 199 GIC_SPI 169 IRQ_TYPE_LEVEL_HIGH 200 GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>; 201 clocks = <&mstp1_clks SH73A0_CLK_IIC0>; 202 power-domains = <&pd_a3sp>; 203 status = "disabled"; 204 }; 205 206 i2c1: i2c@e6822000 { 207 #address-cells = <1>; 208 #size-cells = <0>; 209 compatible = "renesas,iic-sh73a0", "renesas,rmobile-iic"; 210 reg = <0xe6822000 0x425>; 211 interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH 212 GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH 213 GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH 214 GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>; 215 clocks = <&mstp3_clks SH73A0_CLK_IIC1>; 216 power-domains = <&pd_a3sp>; 217 status = "disabled"; 218 }; 219 220 i2c2: i2c@e6824000 { 221 #address-cells = <1>; 222 #size-cells = <0>; 223 compatible = "renesas,iic-sh73a0", "renesas,rmobile-iic"; 224 reg = <0xe6824000 0x425>; 225 interrupts = <GIC_SPI 171 IRQ_TYPE_LEVEL_HIGH 226 GIC_SPI 172 IRQ_TYPE_LEVEL_HIGH 227 GIC_SPI 173 IRQ_TYPE_LEVEL_HIGH 228 GIC_SPI 174 IRQ_TYPE_LEVEL_HIGH>; 229 clocks = <&mstp0_clks SH73A0_CLK_IIC2>; 230 power-domains = <&pd_a3sp>; 231 status = "disabled"; 232 }; 233 234 i2c3: i2c@e6826000 { 235 #address-cells = <1>; 236 #size-cells = <0>; 237 compatible = "renesas,iic-sh73a0", "renesas,rmobile-iic"; 238 reg = <0xe6826000 0x425>; 239 interrupts = <GIC_SPI 183 IRQ_TYPE_LEVEL_HIGH 240 GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH 241 GIC_SPI 185 IRQ_TYPE_LEVEL_HIGH 242 GIC_SPI 186 IRQ_TYPE_LEVEL_HIGH>; 243 clocks = <&mstp4_clks SH73A0_CLK_IIC3>; 244 power-domains = <&pd_a3sp>; 245 status = "disabled"; 246 }; 247 248 i2c4: i2c@e6828000 { 249 #address-cells = <1>; 250 #size-cells = <0>; 251 compatible = "renesas,iic-sh73a0", "renesas,rmobile-iic"; 252 reg = <0xe6828000 0x425>; 253 interrupts = <GIC_SPI 187 IRQ_TYPE_LEVEL_HIGH 254 GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH 255 GIC_SPI 189 IRQ_TYPE_LEVEL_HIGH 256 GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>; 257 clocks = <&mstp4_clks SH73A0_CLK_IIC4>; 258 power-domains = <&pd_c5>; 259 status = "disabled"; 260 }; 261 262 mmcif: mmc@e6bd0000 { 263 compatible = "renesas,mmcif-sh73a0", "renesas,sh-mmcif"; 264 reg = <0xe6bd0000 0x100>; 265 interrupts = <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH 266 GIC_SPI 141 IRQ_TYPE_LEVEL_HIGH>; 267 clocks = <&mstp3_clks SH73A0_CLK_MMCIF0>; 268 power-domains = <&pd_a3sp>; 269 reg-io-width = <4>; 270 status = "disabled"; 271 }; 272 273 msiof0: spi@e6e20000 { 274 compatible = "renesas,msiof-sh73a0", "renesas,sh-mobile-msiof"; 275 reg = <0xe6e20000 0x0064>; 276 interrupts = <GIC_SPI 142 IRQ_TYPE_LEVEL_HIGH>; 277 clocks = <&mstp0_clks SH73A0_CLK_MSIOF0>; 278 power-domains = <&pd_a3sp>; 279 #address-cells = <1>; 280 #size-cells = <0>; 281 status = "disabled"; 282 }; 283 284 msiof1: spi@e6e10000 { 285 compatible = "renesas,msiof-sh73a0", "renesas,sh-mobile-msiof"; 286 reg = <0xe6e10000 0x0064>; 287 interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>; 288 clocks = <&mstp2_clks SH73A0_CLK_MSIOF1>; 289 power-domains = <&pd_a3sp>; 290 #address-cells = <1>; 291 #size-cells = <0>; 292 status = "disabled"; 293 }; 294 295 msiof2: spi@e6e00000 { 296 compatible = "renesas,msiof-sh73a0", "renesas,sh-mobile-msiof"; 297 reg = <0xe6e00000 0x0064>; 298 interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>; 299 clocks = <&mstp2_clks SH73A0_CLK_MSIOF2>; 300 power-domains = <&pd_a3sp>; 301 #address-cells = <1>; 302 #size-cells = <0>; 303 status = "disabled"; 304 }; 305 306 msiof3: spi@e6c90000 { 307 compatible = "renesas,msiof-sh73a0", "renesas,sh-mobile-msiof"; 308 reg = <0xe6c90000 0x0064>; 309 interrupts = <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>; 310 clocks = <&mstp2_clks SH73A0_CLK_MSIOF3>; 311 power-domains = <&pd_a3sp>; 312 #address-cells = <1>; 313 #size-cells = <0>; 314 status = "disabled"; 315 }; 316 317 sdhi0: sd@ee100000 { 318 compatible = "renesas,sdhi-sh73a0"; 319 reg = <0xee100000 0x100>; 320 interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH 321 GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH 322 GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>; 323 clocks = <&mstp3_clks SH73A0_CLK_SDHI0>; 324 power-domains = <&pd_a3sp>; 325 cap-sd-highspeed; 326 status = "disabled"; 327 }; 328 329 /* SDHI1 and SDHI2 have no CD pins, no need for CD IRQ */ 330 sdhi1: sd@ee120000 { 331 compatible = "renesas,sdhi-sh73a0"; 332 reg = <0xee120000 0x100>; 333 interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH 334 GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>; 335 clocks = <&mstp3_clks SH73A0_CLK_SDHI1>; 336 power-domains = <&pd_a3sp>; 337 disable-wp; 338 cap-sd-highspeed; 339 status = "disabled"; 340 }; 341 342 sdhi2: sd@ee140000 { 343 compatible = "renesas,sdhi-sh73a0"; 344 reg = <0xee140000 0x100>; 345 interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH 346 GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>; 347 clocks = <&mstp3_clks SH73A0_CLK_SDHI2>; 348 power-domains = <&pd_a3sp>; 349 disable-wp; 350 cap-sd-highspeed; 351 status = "disabled"; 352 }; 353 354 scifa0: serial@e6c40000 { 355 compatible = "renesas,scifa-sh73a0", "renesas,scifa"; 356 reg = <0xe6c40000 0x100>; 357 interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>; 358 clocks = <&mstp2_clks SH73A0_CLK_SCIFA0>; 359 clock-names = "fck"; 360 power-domains = <&pd_a3sp>; 361 status = "disabled"; 362 }; 363 364 scifa1: serial@e6c50000 { 365 compatible = "renesas,scifa-sh73a0", "renesas,scifa"; 366 reg = <0xe6c50000 0x100>; 367 interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>; 368 clocks = <&mstp2_clks SH73A0_CLK_SCIFA1>; 369 clock-names = "fck"; 370 power-domains = <&pd_a3sp>; 371 status = "disabled"; 372 }; 373 374 scifa2: serial@e6c60000 { 375 compatible = "renesas,scifa-sh73a0", "renesas,scifa"; 376 reg = <0xe6c60000 0x100>; 377 interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>; 378 clocks = <&mstp2_clks SH73A0_CLK_SCIFA2>; 379 clock-names = "fck"; 380 power-domains = <&pd_a3sp>; 381 status = "disabled"; 382 }; 383 384 scifa3: serial@e6c70000 { 385 compatible = "renesas,scifa-sh73a0", "renesas,scifa"; 386 reg = <0xe6c70000 0x100>; 387 interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>; 388 clocks = <&mstp2_clks SH73A0_CLK_SCIFA3>; 389 clock-names = "fck"; 390 power-domains = <&pd_a3sp>; 391 status = "disabled"; 392 }; 393 394 scifa4: serial@e6c80000 { 395 compatible = "renesas,scifa-sh73a0", "renesas,scifa"; 396 reg = <0xe6c80000 0x100>; 397 interrupts = <GIC_SPI 78 IRQ_TYPE_LEVEL_HIGH>; 398 clocks = <&mstp2_clks SH73A0_CLK_SCIFA4>; 399 clock-names = "fck"; 400 power-domains = <&pd_a3sp>; 401 status = "disabled"; 402 }; 403 404 scifa5: serial@e6cb0000 { 405 compatible = "renesas,scifa-sh73a0", "renesas,scifa"; 406 reg = <0xe6cb0000 0x100>; 407 interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>; 408 clocks = <&mstp2_clks SH73A0_CLK_SCIFA5>; 409 clock-names = "fck"; 410 power-domains = <&pd_a3sp>; 411 status = "disabled"; 412 }; 413 414 scifa6: serial@e6cc0000 { 415 compatible = "renesas,scifa-sh73a0", "renesas,scifa"; 416 reg = <0xe6cc0000 0x100>; 417 interrupts = <GIC_SPI 156 IRQ_TYPE_LEVEL_HIGH>; 418 clocks = <&mstp3_clks SH73A0_CLK_SCIFA6>; 419 clock-names = "fck"; 420 power-domains = <&pd_a3sp>; 421 status = "disabled"; 422 }; 423 424 scifa7: serial@e6cd0000 { 425 compatible = "renesas,scifa-sh73a0", "renesas,scifa"; 426 reg = <0xe6cd0000 0x100>; 427 interrupts = <GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH>; 428 clocks = <&mstp2_clks SH73A0_CLK_SCIFA7>; 429 clock-names = "fck"; 430 power-domains = <&pd_a3sp>; 431 status = "disabled"; 432 }; 433 434 scifb: serial@e6c30000 { 435 compatible = "renesas,scifb-sh73a0", "renesas,scifb"; 436 reg = <0xe6c30000 0x100>; 437 interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>; 438 clocks = <&mstp2_clks SH73A0_CLK_SCIFB>; 439 clock-names = "fck"; 440 power-domains = <&pd_a3sp>; 441 status = "disabled"; 442 }; 443 444 pfc: pin-controller@e6050000 { 445 compatible = "renesas,pfc-sh73a0"; 446 reg = <0xe6050000 0x8000>, 447 <0xe605801c 0x1c>; 448 gpio-controller; 449 #gpio-cells = <2>; 450 gpio-ranges = 451 <&pfc 0 0 119>, <&pfc 128 128 37>, <&pfc 192 192 91>, 452 <&pfc 288 288 22>; 453 interrupts-extended = 454 <&irqpin0 0 0>, <&irqpin0 1 0>, <&irqpin0 2 0>, <&irqpin0 3 0>, 455 <&irqpin0 4 0>, <&irqpin0 5 0>, <&irqpin0 6 0>, <&irqpin0 7 0>, 456 <&irqpin1 0 0>, <&irqpin1 1 0>, <&irqpin1 2 0>, <&irqpin1 3 0>, 457 <&irqpin1 4 0>, <&irqpin1 5 0>, <&irqpin1 6 0>, <&irqpin1 7 0>, 458 <&irqpin2 0 0>, <&irqpin2 1 0>, <&irqpin2 2 0>, <&irqpin2 3 0>, 459 <&irqpin2 4 0>, <&irqpin2 5 0>, <&irqpin2 6 0>, <&irqpin2 7 0>, 460 <&irqpin3 0 0>, <&irqpin3 1 0>, <&irqpin3 2 0>, <&irqpin3 3 0>, 461 <&irqpin3 4 0>, <&irqpin3 5 0>, <&irqpin3 6 0>, <&irqpin3 7 0>; 462 power-domains = <&pd_c5>; 463 }; 464 465 sysc: system-controller@e6180000 { 466 compatible = "renesas,sysc-sh73a0", "renesas,sysc-rmobile"; 467 reg = <0xe6180000 0x8000>, <0xe6188000 0x8000>; 468 469 pm-domains { 470 pd_c5: c5 { 471 #address-cells = <1>; 472 #size-cells = <0>; 473 #power-domain-cells = <0>; 474 475 pd_c4: c4@0 { 476 reg = <0>; 477 #power-domain-cells = <0>; 478 }; 479 480 pd_d4: d4@1 { 481 reg = <1>; 482 #power-domain-cells = <0>; 483 }; 484 485 pd_a4bc0: a4bc0@4 { 486 reg = <4>; 487 #power-domain-cells = <0>; 488 }; 489 490 pd_a4bc1: a4bc1@5 { 491 reg = <5>; 492 #power-domain-cells = <0>; 493 }; 494 495 pd_a4lc0: a4lc0@6 { 496 reg = <6>; 497 #power-domain-cells = <0>; 498 }; 499 500 pd_a4lc1: a4lc1@7 { 501 reg = <7>; 502 #power-domain-cells = <0>; 503 }; 504 505 pd_a4mp: a4mp@8 { 506 reg = <8>; 507 #address-cells = <1>; 508 #size-cells = <0>; 509 #power-domain-cells = <0>; 510 511 pd_a3mp: a3mp@9 { 512 reg = <9>; 513 #power-domain-cells = <0>; 514 }; 515 516 pd_a3vc: a3vc@10 { 517 reg = <10>; 518 #power-domain-cells = <0>; 519 }; 520 }; 521 522 pd_a4rm: a4rm@12 { 523 reg = <12>; 524 #address-cells = <1>; 525 #size-cells = <0>; 526 #power-domain-cells = <0>; 527 528 pd_a3r: a3r@13 { 529 reg = <13>; 530 #address-cells = <1>; 531 #size-cells = <0>; 532 #power-domain-cells = <0>; 533 534 pd_a2rv: a2rv@14 { 535 reg = <14>; 536 #address-cells = <1>; 537 #size-cells = <0>; 538 #power-domain-cells = <0>; 539 }; 540 }; 541 }; 542 543 pd_a4s: a4s@16 { 544 reg = <16>; 545 #address-cells = <1>; 546 #size-cells = <0>; 547 #power-domain-cells = <0>; 548 549 pd_a3sp: a3sp@17 { 550 reg = <17>; 551 #power-domain-cells = <0>; 552 }; 553 554 pd_a3sg: a3sg@18 { 555 reg = <18>; 556 #power-domain-cells = <0>; 557 }; 558 559 pd_a3sm: a3sm@19 { 560 reg = <19>; 561 #address-cells = <1>; 562 #size-cells = <0>; 563 #power-domain-cells = <0>; 564 565 pd_a2sl: a2sl@20 { 566 reg = <20>; 567 #power-domain-cells = <0>; 568 }; 569 }; 570 }; 571 }; 572 }; 573 }; 574 575 sh_fsi2: sound@ec230000 { 576 #sound-dai-cells = <1>; 577 compatible = "renesas,fsi2-sh73a0", "renesas,sh_fsi2"; 578 reg = <0xec230000 0x400>; 579 interrupts = <GIC_SPI 146 0x4>; 580 power-domains = <&pd_a4mp>; 581 status = "disabled"; 582 }; 583 584 bsc: bus@fec10000 { 585 compatible = "renesas,bsc-sh73a0", "renesas,bsc", 586 "simple-pm-bus"; 587 #address-cells = <1>; 588 #size-cells = <1>; 589 ranges = <0 0 0x20000000>; 590 reg = <0xfec10000 0x400>; 591 interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>; 592 clocks = <&zb_clk>; 593 power-domains = <&pd_a4s>; 594 }; 595 596 clocks { 597 #address-cells = <1>; 598 #size-cells = <1>; 599 ranges; 600 601 /* External root clocks */ 602 extalr_clk: extalr { 603 compatible = "fixed-clock"; 604 #clock-cells = <0>; 605 clock-frequency = <32768>; 606 }; 607 extal1_clk: extal1 { 608 compatible = "fixed-clock"; 609 #clock-cells = <0>; 610 clock-frequency = <26000000>; 611 }; 612 extal2_clk: extal2 { 613 compatible = "fixed-clock"; 614 #clock-cells = <0>; 615 }; 616 extcki_clk: extcki { 617 compatible = "fixed-clock"; 618 #clock-cells = <0>; 619 }; 620 fsiack_clk: fsiack { 621 compatible = "fixed-clock"; 622 #clock-cells = <0>; 623 clock-frequency = <0>; 624 }; 625 fsibck_clk: fsibck { 626 compatible = "fixed-clock"; 627 #clock-cells = <0>; 628 clock-frequency = <0>; 629 }; 630 631 /* Special CPG clocks */ 632 cpg_clocks: cpg_clocks@e6150000 { 633 compatible = "renesas,sh73a0-cpg-clocks"; 634 reg = <0xe6150000 0x10000>; 635 clocks = <&extal1_clk>, <&extal2_clk>; 636 #clock-cells = <1>; 637 clock-output-names = "main", "pll0", "pll1", "pll2", 638 "pll3", "dsi0phy", "dsi1phy", 639 "zg", "m3", "b", "m1", "m2", 640 "z", "zx", "hp"; 641 }; 642 643 /* Variable factor clocks (DIV6) */ 644 vclk1_clk: vclk1@e6150008 { 645 compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; 646 reg = <0xe6150008 4>; 647 clocks = <&pll1_div2_clk>, <&cpg_clocks SH73A0_CLK_PLL2>, 648 <&extcki_clk>, <&extal2_clk>, <&main_div2_clk>, 649 <&extalr_clk>, <&cpg_clocks SH73A0_CLK_MAIN>, 650 <0>; 651 #clock-cells = <0>; 652 }; 653 vclk2_clk: vclk2@e615000c { 654 compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; 655 reg = <0xe615000c 4>; 656 clocks = <&pll1_div2_clk>, <&cpg_clocks SH73A0_CLK_PLL2>, 657 <&extcki_clk>, <&extal2_clk>, <&main_div2_clk>, 658 <&extalr_clk>, <&cpg_clocks SH73A0_CLK_MAIN>, 659 <0>; 660 #clock-cells = <0>; 661 }; 662 vclk3_clk: vclk3@e615001c { 663 compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; 664 reg = <0xe615001c 4>; 665 clocks = <&pll1_div2_clk>, <&cpg_clocks SH73A0_CLK_PLL2>, 666 <&extcki_clk>, <&extal2_clk>, <&main_div2_clk>, 667 <&extalr_clk>, <&cpg_clocks SH73A0_CLK_MAIN>, 668 <0>; 669 #clock-cells = <0>; 670 }; 671 zb_clk: zb_clk@e6150010 { 672 compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; 673 reg = <0xe6150010 4>; 674 clocks = <&pll1_div2_clk>, <0>, 675 <&cpg_clocks SH73A0_CLK_PLL2>, <0>; 676 #clock-cells = <0>; 677 clock-output-names = "zb"; 678 }; 679 flctl_clk: flctlck@e6150014 { 680 compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; 681 reg = <0xe6150014 4>; 682 clocks = <&pll1_div2_clk>, <0>, 683 <&cpg_clocks SH73A0_CLK_PLL2>, <0>; 684 #clock-cells = <0>; 685 }; 686 sdhi0_clk: sdhi0ck@e6150074 { 687 compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; 688 reg = <0xe6150074 4>; 689 clocks = <&pll1_div2_clk>, <&cpg_clocks SH73A0_CLK_PLL2>, 690 <&pll1_div13_clk>, <0>; 691 #clock-cells = <0>; 692 }; 693 sdhi1_clk: sdhi1ck@e6150078 { 694 compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; 695 reg = <0xe6150078 4>; 696 clocks = <&pll1_div2_clk>, <&cpg_clocks SH73A0_CLK_PLL2>, 697 <&pll1_div13_clk>, <0>; 698 #clock-cells = <0>; 699 }; 700 sdhi2_clk: sdhi2ck@e615007c { 701 compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; 702 reg = <0xe615007c 4>; 703 clocks = <&pll1_div2_clk>, <&cpg_clocks SH73A0_CLK_PLL2>, 704 <&pll1_div13_clk>, <0>; 705 #clock-cells = <0>; 706 }; 707 fsia_clk: fsia@e6150018 { 708 compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; 709 reg = <0xe6150018 4>; 710 clocks = <&pll1_div2_clk>, <&cpg_clocks SH73A0_CLK_PLL2>, 711 <&fsiack_clk>, <&fsiack_clk>; 712 #clock-cells = <0>; 713 }; 714 fsib_clk: fsib@e6150090 { 715 compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; 716 reg = <0xe6150090 4>; 717 clocks = <&pll1_div2_clk>, <&cpg_clocks SH73A0_CLK_PLL2>, 718 <&fsibck_clk>, <&fsibck_clk>; 719 #clock-cells = <0>; 720 }; 721 sub_clk: sub@e6150080 { 722 compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; 723 reg = <0xe6150080 4>; 724 clocks = <&pll1_div2_clk>, <&cpg_clocks SH73A0_CLK_PLL2>, 725 <&extal2_clk>, <&extal2_clk>; 726 #clock-cells = <0>; 727 }; 728 spua_clk: spua@e6150084 { 729 compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; 730 reg = <0xe6150084 4>; 731 clocks = <&pll1_div2_clk>, <&cpg_clocks SH73A0_CLK_PLL2>, 732 <&extal2_clk>, <&extal2_clk>; 733 #clock-cells = <0>; 734 }; 735 spuv_clk: spuv@e6150094 { 736 compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; 737 reg = <0xe6150094 4>; 738 clocks = <&pll1_div2_clk>, <&cpg_clocks SH73A0_CLK_PLL2>, 739 <&extal2_clk>, <&extal2_clk>; 740 #clock-cells = <0>; 741 }; 742 msu_clk: msu@e6150088 { 743 compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; 744 reg = <0xe6150088 4>; 745 clocks = <&pll1_div2_clk>, <0>, 746 <&cpg_clocks SH73A0_CLK_PLL2>, <0>; 747 #clock-cells = <0>; 748 }; 749 hsi_clk: hsi@e615008c { 750 compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; 751 reg = <0xe615008c 4>; 752 clocks = <&pll1_div2_clk>, <&cpg_clocks SH73A0_CLK_PLL2>, 753 <&pll1_div7_clk>, <0>; 754 #clock-cells = <0>; 755 }; 756 mfg1_clk: mfg1@e6150098 { 757 compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; 758 reg = <0xe6150098 4>; 759 clocks = <&pll1_div2_clk>, <0>, 760 <&cpg_clocks SH73A0_CLK_PLL2>, <0>; 761 #clock-cells = <0>; 762 }; 763 mfg2_clk: mfg2@e615009c { 764 compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; 765 reg = <0xe615009c 4>; 766 clocks = <&pll1_div2_clk>, <0>, 767 <&cpg_clocks SH73A0_CLK_PLL2>, <0>; 768 #clock-cells = <0>; 769 }; 770 dsit_clk: dsit@e6150060 { 771 compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; 772 reg = <0xe6150060 4>; 773 clocks = <&pll1_div2_clk>, <0>, 774 <&cpg_clocks SH73A0_CLK_PLL2>, <0>; 775 #clock-cells = <0>; 776 }; 777 dsi0p_clk: dsi0pck@e6150064 { 778 compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; 779 reg = <0xe6150064 4>; 780 clocks = <&pll1_div2_clk>, <&cpg_clocks SH73A0_CLK_PLL2>, 781 <&cpg_clocks SH73A0_CLK_MAIN>, <&extal2_clk>, 782 <&extcki_clk>, <0>, <0>, <0>; 783 #clock-cells = <0>; 784 }; 785 786 /* Fixed factor clocks */ 787 main_div2_clk: main_div2 { 788 compatible = "fixed-factor-clock"; 789 clocks = <&cpg_clocks SH73A0_CLK_MAIN>; 790 #clock-cells = <0>; 791 clock-div = <2>; 792 clock-mult = <1>; 793 }; 794 pll1_div2_clk: pll1_div2 { 795 compatible = "fixed-factor-clock"; 796 clocks = <&cpg_clocks SH73A0_CLK_PLL1>; 797 #clock-cells = <0>; 798 clock-div = <2>; 799 clock-mult = <1>; 800 }; 801 pll1_div7_clk: pll1_div7 { 802 compatible = "fixed-factor-clock"; 803 clocks = <&cpg_clocks SH73A0_CLK_PLL1>; 804 #clock-cells = <0>; 805 clock-div = <7>; 806 clock-mult = <1>; 807 }; 808 pll1_div13_clk: pll1_div13 { 809 compatible = "fixed-factor-clock"; 810 clocks = <&cpg_clocks SH73A0_CLK_PLL1>; 811 #clock-cells = <0>; 812 clock-div = <13>; 813 clock-mult = <1>; 814 }; 815 twd_clk: twd { 816 compatible = "fixed-factor-clock"; 817 clocks = <&cpg_clocks SH73A0_CLK_Z>; 818 #clock-cells = <0>; 819 clock-div = <4>; 820 clock-mult = <1>; 821 }; 822 823 /* Gate clocks */ 824 mstp0_clks: mstp0_clks@e6150130 { 825 compatible = "renesas,sh73a0-mstp-clocks", "renesas,cpg-mstp-clocks"; 826 reg = <0xe6150130 4>, <0xe6150030 4>; 827 clocks = <&cpg_clocks SH73A0_CLK_HP>, <&sub_clk>; 828 #clock-cells = <1>; 829 clock-indices = < 830 SH73A0_CLK_IIC2 SH73A0_CLK_MSIOF0 831 >; 832 clock-output-names = 833 "iic2", "msiof0"; 834 }; 835 mstp1_clks: mstp1_clks@e6150134 { 836 compatible = "renesas,sh73a0-mstp-clocks", "renesas,cpg-mstp-clocks"; 837 reg = <0xe6150134 4>, <0xe6150038 4>; 838 clocks = <&cpg_clocks SH73A0_CLK_B>, 839 <&cpg_clocks SH73A0_CLK_B>, 840 <&cpg_clocks SH73A0_CLK_B>, 841 <&cpg_clocks SH73A0_CLK_B>, 842 <&sub_clk>, <&cpg_clocks SH73A0_CLK_B>, 843 <&cpg_clocks SH73A0_CLK_HP>, 844 <&cpg_clocks SH73A0_CLK_ZG>, 845 <&cpg_clocks SH73A0_CLK_B>; 846 #clock-cells = <1>; 847 clock-indices = < 848 SH73A0_CLK_CEU1 SH73A0_CLK_CSI2_RX1 849 SH73A0_CLK_CEU0 SH73A0_CLK_CSI2_RX0 850 SH73A0_CLK_TMU0 SH73A0_CLK_DSITX0 851 SH73A0_CLK_IIC0 SH73A0_CLK_SGX 852 SH73A0_CLK_LCDC0 853 >; 854 clock-output-names = 855 "ceu1", "csi2_rx1", "ceu0", "csi2_rx0", 856 "tmu0", "dsitx0", "iic0", "sgx", "lcdc0"; 857 }; 858 mstp2_clks: mstp2_clks@e6150138 { 859 compatible = "renesas,sh73a0-mstp-clocks", "renesas,cpg-mstp-clocks"; 860 reg = <0xe6150138 4>, <0xe6150040 4>; 861 clocks = <&sub_clk>, <&cpg_clocks SH73A0_CLK_HP>, 862 <&cpg_clocks SH73A0_CLK_HP>, <&sub_clk>, 863 <&sub_clk>, <&sub_clk>, <&sub_clk>, 864 <&sub_clk>, <&sub_clk>, <&sub_clk>, 865 <&sub_clk>, <&sub_clk>, <&sub_clk>; 866 #clock-cells = <1>; 867 clock-indices = < 868 SH73A0_CLK_SCIFA7 SH73A0_CLK_SY_DMAC 869 SH73A0_CLK_MP_DMAC SH73A0_CLK_MSIOF3 870 SH73A0_CLK_MSIOF1 SH73A0_CLK_SCIFA5 871 SH73A0_CLK_SCIFB SH73A0_CLK_MSIOF2 872 SH73A0_CLK_SCIFA0 SH73A0_CLK_SCIFA1 873 SH73A0_CLK_SCIFA2 SH73A0_CLK_SCIFA3 874 SH73A0_CLK_SCIFA4 875 >; 876 clock-output-names = 877 "scifa7", "sy_dmac", "mp_dmac", "msiof3", 878 "msiof1", "scifa5", "scifb", "msiof2", 879 "scifa0", "scifa1", "scifa2", "scifa3", 880 "scifa4"; 881 }; 882 mstp3_clks: mstp3_clks@e615013c { 883 compatible = "renesas,sh73a0-mstp-clocks", "renesas,cpg-mstp-clocks"; 884 reg = <0xe615013c 4>, <0xe6150048 4>; 885 clocks = <&sub_clk>, <&extalr_clk>, 886 <&cpg_clocks SH73A0_CLK_HP>, <&sub_clk>, 887 <&cpg_clocks SH73A0_CLK_HP>, 888 <&cpg_clocks SH73A0_CLK_HP>, <&flctl_clk>, 889 <&sdhi0_clk>, <&sdhi1_clk>, 890 <&cpg_clocks SH73A0_CLK_HP>, <&sdhi2_clk>, 891 <&main_div2_clk>, <&main_div2_clk>, 892 <&main_div2_clk>, <&main_div2_clk>, 893 <&main_div2_clk>; 894 #clock-cells = <1>; 895 clock-indices = < 896 SH73A0_CLK_SCIFA6 SH73A0_CLK_CMT1 897 SH73A0_CLK_FSI SH73A0_CLK_IRDA 898 SH73A0_CLK_IIC1 SH73A0_CLK_USB SH73A0_CLK_FLCTL 899 SH73A0_CLK_SDHI0 SH73A0_CLK_SDHI1 900 SH73A0_CLK_MMCIF0 SH73A0_CLK_SDHI2 901 SH73A0_CLK_TPU0 SH73A0_CLK_TPU1 902 SH73A0_CLK_TPU2 SH73A0_CLK_TPU3 903 SH73A0_CLK_TPU4 904 >; 905 clock-output-names = 906 "scifa6", "cmt1", "fsi", "irda", "iic1", 907 "usb", "flctl", "sdhi0", "sdhi1", "mmcif0", "sdhi2", 908 "tpu0", "tpu1", "tpu2", "tpu3", "tpu4"; 909 }; 910 mstp4_clks: mstp4_clks@e6150140 { 911 compatible = "renesas,sh73a0-mstp-clocks", "renesas,cpg-mstp-clocks"; 912 reg = <0xe6150140 4>, <0xe615004c 4>; 913 clocks = <&cpg_clocks SH73A0_CLK_HP>, 914 <&cpg_clocks SH73A0_CLK_HP>, <&extalr_clk>; 915 #clock-cells = <1>; 916 clock-indices = < 917 SH73A0_CLK_IIC3 SH73A0_CLK_IIC4 918 SH73A0_CLK_KEYSC 919 >; 920 clock-output-names = 921 "iic3", "iic4", "keysc"; 922 }; 923 mstp5_clks: mstp5_clks@e6150144 { 924 compatible = "renesas,sh73a0-mstp-clocks", "renesas,cpg-mstp-clocks"; 925 reg = <0xe6150144 4>, <0xe615003c 4>; 926 clocks = <&cpg_clocks SH73A0_CLK_HP>; 927 #clock-cells = <1>; 928 clock-indices = < 929 SH73A0_CLK_INTCA0 930 >; 931 clock-output-names = 932 "intca0"; 933 }; 934 }; 935}; 936