diff options
author | Ulrich Hecht <ulrich.hecht+renesas@gmail.com> | 2014-12-10 09:45:24 -0500 |
---|---|---|
committer | Simon Horman <horms+renesas@verge.net.au> | 2014-12-21 03:09:22 -0500 |
commit | 00df611376e5cd84ae836d04608766096e4702e6 (patch) | |
tree | f974356a03313223fb7704d45fc170f0d529ff87 /arch/arm/boot/dts/sh73a0.dtsi | |
parent | 4452164e7b2ab8c4e9e978dd5508865592f13258 (diff) |
ARM: shmobile: sh73a0: Common clock framework DT description
Declares all sh73a0 clocks supported by the legacy clock framework.
Signed-off-by: Ulrich Hecht <ulrich.hecht+renesas@gmail.com>
Tested-by: Geert Uytterhoeven <geert+renesas@glider.be>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
Diffstat (limited to 'arch/arm/boot/dts/sh73a0.dtsi')
-rw-r--r-- | arch/arm/boot/dts/sh73a0.dtsi | 329 |
1 files changed, 329 insertions, 0 deletions
diff --git a/arch/arm/boot/dts/sh73a0.dtsi b/arch/arm/boot/dts/sh73a0.dtsi index d8def5a529da..3f21b3257679 100644 --- a/arch/arm/boot/dts/sh73a0.dtsi +++ b/arch/arm/boot/dts/sh73a0.dtsi | |||
@@ -10,6 +10,7 @@ | |||
10 | 10 | ||
11 | /include/ "skeleton.dtsi" | 11 | /include/ "skeleton.dtsi" |
12 | 12 | ||
13 | #include <dt-bindings/clock/sh73a0-clock.h> | ||
13 | #include <dt-bindings/interrupt-controller/irq.h> | 14 | #include <dt-bindings/interrupt-controller/irq.h> |
14 | 15 | ||
15 | / { | 16 | / { |
@@ -322,4 +323,332 @@ | |||
322 | interrupts = <0 146 0x4>; | 323 | interrupts = <0 146 0x4>; |
323 | status = "disabled"; | 324 | status = "disabled"; |
324 | }; | 325 | }; |
326 | |||
327 | clocks { | ||
328 | #address-cells = <1>; | ||
329 | #size-cells = <1>; | ||
330 | ranges; | ||
331 | |||
332 | /* External root clocks */ | ||
333 | extalr_clk: extalr_clk { | ||
334 | compatible = "fixed-clock"; | ||
335 | #clock-cells = <0>; | ||
336 | clock-frequency = <32768>; | ||
337 | clock-output-names = "extalr"; | ||
338 | }; | ||
339 | extal1_clk: extal1_clk { | ||
340 | compatible = "fixed-clock"; | ||
341 | #clock-cells = <0>; | ||
342 | clock-frequency = <26000000>; | ||
343 | clock-output-names = "extal1"; | ||
344 | }; | ||
345 | extal2_clk: extal2_clk { | ||
346 | compatible = "fixed-clock"; | ||
347 | #clock-cells = <0>; | ||
348 | clock-output-names = "extal2"; | ||
349 | }; | ||
350 | extcki_clk: extcki_clk { | ||
351 | compatible = "fixed-clock"; | ||
352 | #clock-cells = <0>; | ||
353 | clock-output-names = "extcki"; | ||
354 | }; | ||
355 | fsiack_clk: fsiack_clk { | ||
356 | compatible = "fixed-clock"; | ||
357 | #clock-cells = <0>; | ||
358 | clock-frequency = <0>; | ||
359 | clock-output-names = "fsiack"; | ||
360 | }; | ||
361 | fsibck_clk: fsibck_clk { | ||
362 | compatible = "fixed-clock"; | ||
363 | #clock-cells = <0>; | ||
364 | clock-frequency = <0>; | ||
365 | clock-output-names = "fsibck"; | ||
366 | }; | ||
367 | |||
368 | /* Special CPG clocks */ | ||
369 | cpg_clocks: cpg_clocks@e6150000 { | ||
370 | compatible = "renesas,sh73a0-cpg-clocks"; | ||
371 | reg = <0xe6150000 0x10000>; | ||
372 | clocks = <&extal1_clk>, <&extal2_clk>; | ||
373 | #clock-cells = <1>; | ||
374 | clock-output-names = "main", "pll0", "pll1", "pll2", | ||
375 | "pll3", "dsi0phy", "dsi1phy", | ||
376 | "zg", "m3", "b", "m1", "m2", | ||
377 | "z", "zx", "hp"; | ||
378 | }; | ||
379 | |||
380 | /* Variable factor clocks (DIV6) */ | ||
381 | vclk1_clk: vclk1_clk@e6150008 { | ||
382 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; | ||
383 | reg = <0xe6150008 4>; | ||
384 | clocks = <&pll1_div2_clk>; | ||
385 | #clock-cells = <0>; | ||
386 | clock-output-names = "vclk1"; | ||
387 | }; | ||
388 | vclk2_clk: vclk2_clk@e615000c { | ||
389 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; | ||
390 | reg = <0xe615000c 4>; | ||
391 | clocks = <&pll1_div2_clk>; | ||
392 | #clock-cells = <0>; | ||
393 | clock-output-names = "vclk2"; | ||
394 | }; | ||
395 | vclk3_clk: vclk3_clk@e615001c { | ||
396 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; | ||
397 | reg = <0xe615001c 4>; | ||
398 | clocks = <&pll1_div2_clk>; | ||
399 | #clock-cells = <0>; | ||
400 | clock-output-names = "vclk3"; | ||
401 | }; | ||
402 | zb_clk: zb_clk@e6150010 { | ||
403 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; | ||
404 | reg = <0xe6150010 4>; | ||
405 | clocks = <&pll1_div2_clk>; | ||
406 | #clock-cells = <0>; | ||
407 | clock-output-names = "zb"; | ||
408 | }; | ||
409 | flctl_clk: flctl_clk@e6150014 { | ||
410 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; | ||
411 | reg = <0xe6150014 4>; | ||
412 | clocks = <&pll1_div2_clk>; | ||
413 | #clock-cells = <0>; | ||
414 | clock-output-names = "flctlck"; | ||
415 | }; | ||
416 | sdhi0_clk: sdhi0_clk@e6150074 { | ||
417 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; | ||
418 | reg = <0xe6150074 4>; | ||
419 | clocks = <&pll1_div2_clk>; | ||
420 | #clock-cells = <0>; | ||
421 | clock-output-names = "sdhi0ck"; | ||
422 | }; | ||
423 | sdhi1_clk: sdhi1_clk@e6150078 { | ||
424 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; | ||
425 | reg = <0xe6150078 4>; | ||
426 | clocks = <&pll1_div2_clk>; | ||
427 | #clock-cells = <0>; | ||
428 | clock-output-names = "sdhi1ck"; | ||
429 | }; | ||
430 | sdhi2_clk: sdhi2_clk@e615007c { | ||
431 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; | ||
432 | reg = <0xe615007c 4>; | ||
433 | clocks = <&pll1_div2_clk>; | ||
434 | #clock-cells = <0>; | ||
435 | clock-output-names = "sdhi2ck"; | ||
436 | }; | ||
437 | fsia_clk: fsia_clk@e6150018 { | ||
438 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; | ||
439 | reg = <0xe6150018 4>; | ||
440 | clocks = <&pll1_div2_clk>; | ||
441 | #clock-cells = <0>; | ||
442 | clock-output-names = "fsia"; | ||
443 | }; | ||
444 | fsib_clk: fsib_clk@e6150090 { | ||
445 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; | ||
446 | reg = <0xe6150090 4>; | ||
447 | clocks = <&pll1_div2_clk>; | ||
448 | #clock-cells = <0>; | ||
449 | clock-output-names = "fsib"; | ||
450 | }; | ||
451 | sub_clk: sub_clk@e6150080 { | ||
452 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; | ||
453 | reg = <0xe6150080 4>; | ||
454 | clocks = <&extal2_clk>; | ||
455 | #clock-cells = <0>; | ||
456 | clock-output-names = "sub"; | ||
457 | }; | ||
458 | spua_clk: spua_clk@e6150084 { | ||
459 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; | ||
460 | reg = <0xe6150084 4>; | ||
461 | clocks = <&pll1_div2_clk>; | ||
462 | #clock-cells = <0>; | ||
463 | clock-output-names = "spua"; | ||
464 | }; | ||
465 | spuv_clk: spuv_clk@e6150094 { | ||
466 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; | ||
467 | reg = <0xe6150094 4>; | ||
468 | clocks = <&pll1_div2_clk>; | ||
469 | #clock-cells = <0>; | ||
470 | clock-output-names = "spuv"; | ||
471 | }; | ||
472 | msu_clk: msu_clk@e6150088 { | ||
473 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; | ||
474 | reg = <0xe6150088 4>; | ||
475 | clocks = <&pll1_div2_clk>; | ||
476 | #clock-cells = <0>; | ||
477 | clock-output-names = "msu"; | ||
478 | }; | ||
479 | hsi_clk: hsi_clk@e615008c { | ||
480 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; | ||
481 | reg = <0xe615008c 4>; | ||
482 | clocks = <&pll1_div2_clk>; | ||
483 | #clock-cells = <0>; | ||
484 | clock-output-names = "hsi"; | ||
485 | }; | ||
486 | mfg1_clk: mfg1_clk@e6150098 { | ||
487 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; | ||
488 | reg = <0xe6150098 4>; | ||
489 | clocks = <&pll1_div2_clk>; | ||
490 | #clock-cells = <0>; | ||
491 | clock-output-names = "mfg1"; | ||
492 | }; | ||
493 | mfg2_clk: mfg2_clk@e615009c { | ||
494 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; | ||
495 | reg = <0xe615009c 4>; | ||
496 | clocks = <&pll1_div2_clk>; | ||
497 | #clock-cells = <0>; | ||
498 | clock-output-names = "mfg2"; | ||
499 | }; | ||
500 | dsit_clk: dsit_clk@e6150060 { | ||
501 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; | ||
502 | reg = <0xe6150060 4>; | ||
503 | clocks = <&pll1_div2_clk>; | ||
504 | #clock-cells = <0>; | ||
505 | clock-output-names = "dsit"; | ||
506 | }; | ||
507 | dsi0p_clk: dsi0p_clk@e6150064 { | ||
508 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; | ||
509 | reg = <0xe6150064 4>; | ||
510 | clocks = <&pll1_div2_clk>; | ||
511 | #clock-cells = <0>; | ||
512 | clock-output-names = "dsi0pck"; | ||
513 | }; | ||
514 | |||
515 | /* Fixed factor clocks */ | ||
516 | main_div2_clk: main_div2_clk { | ||
517 | compatible = "fixed-factor-clock"; | ||
518 | clocks = <&cpg_clocks SH73A0_CLK_MAIN>; | ||
519 | #clock-cells = <0>; | ||
520 | clock-div = <2>; | ||
521 | clock-mult = <1>; | ||
522 | clock-output-names = "main_div2"; | ||
523 | }; | ||
524 | pll1_div2_clk: pll1_div2_clk { | ||
525 | compatible = "fixed-factor-clock"; | ||
526 | clocks = <&cpg_clocks SH73A0_CLK_PLL1>; | ||
527 | #clock-cells = <0>; | ||
528 | clock-div = <2>; | ||
529 | clock-mult = <1>; | ||
530 | clock-output-names = "pll1_div2"; | ||
531 | }; | ||
532 | pll1_div7_clk: pll1_div7_clk { | ||
533 | compatible = "fixed-factor-clock"; | ||
534 | clocks = <&cpg_clocks SH73A0_CLK_PLL1>; | ||
535 | #clock-cells = <0>; | ||
536 | clock-div = <7>; | ||
537 | clock-mult = <1>; | ||
538 | clock-output-names = "pll1_div7"; | ||
539 | }; | ||
540 | pll1_div13_clk: pll1_div13_clk { | ||
541 | compatible = "fixed-factor-clock"; | ||
542 | clocks = <&cpg_clocks SH73A0_CLK_PLL1>; | ||
543 | #clock-cells = <0>; | ||
544 | clock-div = <13>; | ||
545 | clock-mult = <1>; | ||
546 | clock-output-names = "pll1_div13"; | ||
547 | }; | ||
548 | twd_clk: twd_clk { | ||
549 | compatible = "fixed-factor-clock"; | ||
550 | clocks = <&cpg_clocks SH73A0_CLK_Z>; | ||
551 | #clock-cells = <0>; | ||
552 | clock-div = <4>; | ||
553 | clock-mult = <1>; | ||
554 | clock-output-names = "twd"; | ||
555 | }; | ||
556 | |||
557 | /* Gate clocks */ | ||
558 | mstp0_clks: mstp0_clks@e6150130 { | ||
559 | compatible = "renesas,sh73a0-mstp-clocks", "renesas,cpg-mstp-clocks"; | ||
560 | reg = <0xe6150130 4>, <0xe6150030 4>; | ||
561 | clocks = <&cpg_clocks SH73A0_CLK_HP>; | ||
562 | #clock-cells = <1>; | ||
563 | clock-indices = < | ||
564 | SH73A0_CLK_IIC2 | ||
565 | >; | ||
566 | clock-output-names = | ||
567 | "iic2"; | ||
568 | }; | ||
569 | mstp1_clks: mstp1_clks@e6150134 { | ||
570 | compatible = "renesas,sh73a0-mstp-clocks", "renesas,cpg-mstp-clocks"; | ||
571 | reg = <0xe6150134 4>, <0xe6150038 4>; | ||
572 | clocks = <&cpg_clocks SH73A0_CLK_B>, | ||
573 | <&cpg_clocks SH73A0_CLK_B>, | ||
574 | <&cpg_clocks SH73A0_CLK_B>, | ||
575 | <&cpg_clocks SH73A0_CLK_B>, | ||
576 | <&sub_clk>, <&cpg_clocks SH73A0_CLK_B>, | ||
577 | <&cpg_clocks SH73A0_CLK_HP>, | ||
578 | <&cpg_clocks SH73A0_CLK_ZG>, | ||
579 | <&cpg_clocks SH73A0_CLK_B>; | ||
580 | #clock-cells = <1>; | ||
581 | clock-indices = < | ||
582 | SH73A0_CLK_CEU1 SH73A0_CLK_CSI2_RX1 | ||
583 | SH73A0_CLK_CEU0 SH73A0_CLK_CSI2_RX0 | ||
584 | SH73A0_CLK_TMU0 SH73A0_CLK_DSITX0 | ||
585 | SH73A0_CLK_IIC0 SH73A0_CLK_SGX | ||
586 | SH73A0_CLK_LCDC0 | ||
587 | >; | ||
588 | clock-output-names = | ||
589 | "ceu1", "csi2_rx1", "ceu0", "csi2_rx0", | ||
590 | "tmu0", "dsitx0", "iic0", "sgx", "lcdc0"; | ||
591 | }; | ||
592 | mstp2_clks: mstp2_clks@e6150138 { | ||
593 | compatible = "renesas,sh73a0-mstp-clocks", "renesas,cpg-mstp-clocks"; | ||
594 | reg = <0xe6150138 4>, <0xe6150040 4>; | ||
595 | clocks = <&sub_clk>, <&cpg_clocks SH73A0_CLK_HP>, | ||
596 | <&cpg_clocks SH73A0_CLK_HP>, <&sub_clk>, | ||
597 | <&sub_clk>, <&sub_clk>, <&sub_clk>, <&sub_clk>, | ||
598 | <&sub_clk>, <&sub_clk>; | ||
599 | #clock-cells = <1>; | ||
600 | clock-indices = < | ||
601 | SH73A0_CLK_SCIFA7 SH73A0_CLK_SY_DMAC | ||
602 | SH73A0_CLK_MP_DMAC SH73A0_CLK_SCIFA5 | ||
603 | SH73A0_CLK_SCIFB SH73A0_CLK_SCIFA0 | ||
604 | SH73A0_CLK_SCIFA1 SH73A0_CLK_SCIFA2 | ||
605 | SH73A0_CLK_SCIFA3 SH73A0_CLK_SCIFA4 | ||
606 | >; | ||
607 | clock-output-names = | ||
608 | "scifa7", "sy_dmac", "mp_dmac", "scifa5", | ||
609 | "scifb", "scifa0", "scifa1", "scifa2", | ||
610 | "scifa3", "scifa4"; | ||
611 | }; | ||
612 | mstp3_clks: mstp3_clks@e615013c { | ||
613 | compatible = "renesas,sh73a0-mstp-clocks", "renesas,cpg-mstp-clocks"; | ||
614 | reg = <0xe615013c 4>, <0xe6150048 4>; | ||
615 | clocks = <&sub_clk>, <&extalr_clk>, | ||
616 | <&cpg_clocks SH73A0_CLK_HP>, <&sub_clk>, | ||
617 | <&cpg_clocks SH73A0_CLK_HP>, | ||
618 | <&cpg_clocks SH73A0_CLK_HP>, <&flctl_clk>, | ||
619 | <&sdhi0_clk>, <&sdhi1_clk>, | ||
620 | <&cpg_clocks SH73A0_CLK_HP>, <&sdhi2_clk>, | ||
621 | <&main_div2_clk>, <&main_div2_clk>, | ||
622 | <&main_div2_clk>, <&main_div2_clk>, | ||
623 | <&main_div2_clk>; | ||
624 | #clock-cells = <1>; | ||
625 | clock-indices = < | ||
626 | SH73A0_CLK_SCIFA6 SH73A0_CLK_CMT1 | ||
627 | SH73A0_CLK_FSI SH73A0_CLK_IRDA | ||
628 | SH73A0_CLK_IIC1 SH73A0_CLK_USB SH73A0_CLK_FLCTL | ||
629 | SH73A0_CLK_SDHI0 SH73A0_CLK_SDHI1 | ||
630 | SH73A0_CLK_MMCIF0 SH73A0_CLK_SDHI2 | ||
631 | SH73A0_CLK_TPU0 SH73A0_CLK_TPU1 | ||
632 | SH73A0_CLK_TPU2 SH73A0_CLK_TPU3 | ||
633 | SH73A0_CLK_TPU4 | ||
634 | >; | ||
635 | clock-output-names = | ||
636 | "scifa6", "cmt1", "fsi", "irda", "iic1", | ||
637 | "usb", "flctl", "sdhi0", "sdhi1", "mmcif0", "sdhi2", | ||
638 | "tpu0", "tpu1", "tpu2", "tpu3", "tpu4"; | ||
639 | }; | ||
640 | mstp4_clks: mstp4_clks@e6150140 { | ||
641 | compatible = "renesas,sh73a0-mstp-clocks", "renesas,cpg-mstp-clocks"; | ||
642 | reg = <0xe6150140 4>, <0xe615004c 4>; | ||
643 | clocks = <&cpg_clocks SH73A0_CLK_HP>, | ||
644 | <&cpg_clocks SH73A0_CLK_HP>, <&extalr_clk>; | ||
645 | #clock-cells = <1>; | ||
646 | clock-indices = < | ||
647 | SH73A0_CLK_IIC3 SH73A0_CLK_IIC4 | ||
648 | SH73A0_CLK_KEYSC | ||
649 | >; | ||
650 | clock-output-names = | ||
651 | "iic3", "iic4", "keysc"; | ||
652 | }; | ||
653 | }; | ||
325 | }; | 654 | }; |