diff options
27 files changed, 1164 insertions, 516 deletions
diff --git a/Documentation/devicetree/bindings/arm/shmobile.txt b/Documentation/devicetree/bindings/arm/shmobile.txt index 2f8043ee438d..c4f19b2e7dd9 100644 --- a/Documentation/devicetree/bindings/arm/shmobile.txt +++ b/Documentation/devicetree/bindings/arm/shmobile.txt | |||
@@ -53,8 +53,6 @@ Boards: | |||
53 | compatible = "renesas,kzm9d", "renesas,emev2" | 53 | compatible = "renesas,kzm9d", "renesas,emev2" |
54 | - Kyoto Microcomputer Co. KZM-A9-GT | 54 | - Kyoto Microcomputer Co. KZM-A9-GT |
55 | compatible = "renesas,kzm9g", "renesas,sh73a0" | 55 | compatible = "renesas,kzm9g", "renesas,sh73a0" |
56 | - Kyoto Microcomputer Co. KZM-A9-GT - Reference Device Tree Implementation | ||
57 | compatible = "renesas,kzm9g-reference", "renesas,sh73a0" | ||
58 | - Lager (RTP0RC7790SEB00010S) | 56 | - Lager (RTP0RC7790SEB00010S) |
59 | compatible = "renesas,lager", "renesas,r8a7790" | 57 | compatible = "renesas,lager", "renesas,r8a7790" |
60 | - Marzen | 58 | - Marzen |
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index 5d258e00c5e7..7f098c992198 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile | |||
@@ -468,8 +468,7 @@ dtb-$(CONFIG_ARCH_SHMOBILE_LEGACY) += \ | |||
468 | r8a7778-bockw.dtb \ | 468 | r8a7778-bockw.dtb \ |
469 | r8a7778-bockw-reference.dtb \ | 469 | r8a7778-bockw-reference.dtb \ |
470 | r8a7779-marzen.dtb \ | 470 | r8a7779-marzen.dtb \ |
471 | sh73a0-kzm9g.dtb \ | 471 | sh73a0-kzm9g.dtb |
472 | sh73a0-kzm9g-reference.dtb | ||
473 | dtb-$(CONFIG_ARCH_SHMOBILE_MULTI) += \ | 472 | dtb-$(CONFIG_ARCH_SHMOBILE_MULTI) += \ |
474 | emev2-kzm9d.dtb \ | 473 | emev2-kzm9d.dtb \ |
475 | r7s72100-genmai.dtb \ | 474 | r7s72100-genmai.dtb \ |
@@ -480,7 +479,8 @@ dtb-$(CONFIG_ARCH_SHMOBILE_MULTI) += \ | |||
480 | r8a7790-lager.dtb \ | 479 | r8a7790-lager.dtb \ |
481 | r8a7791-henninger.dtb \ | 480 | r8a7791-henninger.dtb \ |
482 | r8a7791-koelsch.dtb \ | 481 | r8a7791-koelsch.dtb \ |
483 | r8a7794-alt.dtb | 482 | r8a7794-alt.dtb \ |
483 | sh73a0-kzm9g.dtb | ||
484 | dtb-$(CONFIG_ARCH_SOCFPGA) += \ | 484 | dtb-$(CONFIG_ARCH_SOCFPGA) += \ |
485 | socfpga_arria5_socdk.dtb \ | 485 | socfpga_arria5_socdk.dtb \ |
486 | socfpga_arria10_socdk.dtb \ | 486 | socfpga_arria10_socdk.dtb \ |
diff --git a/arch/arm/boot/dts/emev2-kzm9d.dts b/arch/arm/boot/dts/emev2-kzm9d.dts index 667d323e80a3..19446273e4a7 100644 --- a/arch/arm/boot/dts/emev2-kzm9d.dts +++ b/arch/arm/boot/dts/emev2-kzm9d.dts | |||
@@ -94,3 +94,16 @@ | |||
94 | vdd33a-supply = <®_3p3v>; | 94 | vdd33a-supply = <®_3p3v>; |
95 | }; | 95 | }; |
96 | }; | 96 | }; |
97 | |||
98 | &pfc { | ||
99 | uart1_pins: uart@e1030000 { | ||
100 | renesas,groups = "uart1_ctrl", "uart1_data"; | ||
101 | renesas,function = "uart1"; | ||
102 | }; | ||
103 | }; | ||
104 | |||
105 | &uart1 { | ||
106 | pinctrl-0 = <&uart1_pins>; | ||
107 | pinctrl-names = "default"; | ||
108 | status = "okay"; | ||
109 | }; | ||
diff --git a/arch/arm/boot/dts/emev2.dtsi b/arch/arm/boot/dts/emev2.dtsi index cc7bfe0ba40a..bb45694d91bc 100644 --- a/arch/arm/boot/dts/emev2.dtsi +++ b/arch/arm/boot/dts/emev2.dtsi | |||
@@ -169,12 +169,18 @@ | |||
169 | clock-names = "sclk"; | 169 | clock-names = "sclk"; |
170 | }; | 170 | }; |
171 | 171 | ||
172 | pfc: pfc@e0140200 { | ||
173 | compatible = "renesas,pfc-emev2"; | ||
174 | reg = <0xe0140200 0x100>; | ||
175 | }; | ||
176 | |||
172 | gpio0: gpio@e0050000 { | 177 | gpio0: gpio@e0050000 { |
173 | compatible = "renesas,em-gio"; | 178 | compatible = "renesas,em-gio"; |
174 | reg = <0xe0050000 0x2c>, <0xe0050040 0x20>; | 179 | reg = <0xe0050000 0x2c>, <0xe0050040 0x20>; |
175 | interrupts = <0 67 IRQ_TYPE_LEVEL_HIGH>, | 180 | interrupts = <0 67 IRQ_TYPE_LEVEL_HIGH>, |
176 | <0 68 IRQ_TYPE_LEVEL_HIGH>; | 181 | <0 68 IRQ_TYPE_LEVEL_HIGH>; |
177 | gpio-controller; | 182 | gpio-controller; |
183 | gpio-ranges = <&pfc 0 0 32>; | ||
178 | #gpio-cells = <2>; | 184 | #gpio-cells = <2>; |
179 | ngpios = <32>; | 185 | ngpios = <32>; |
180 | interrupt-controller; | 186 | interrupt-controller; |
@@ -186,6 +192,7 @@ | |||
186 | interrupts = <0 69 IRQ_TYPE_LEVEL_HIGH>, | 192 | interrupts = <0 69 IRQ_TYPE_LEVEL_HIGH>, |
187 | <0 70 IRQ_TYPE_LEVEL_HIGH>; | 193 | <0 70 IRQ_TYPE_LEVEL_HIGH>; |
188 | gpio-controller; | 194 | gpio-controller; |
195 | gpio-ranges = <&pfc 0 32 32>; | ||
189 | #gpio-cells = <2>; | 196 | #gpio-cells = <2>; |
190 | ngpios = <32>; | 197 | ngpios = <32>; |
191 | interrupt-controller; | 198 | interrupt-controller; |
@@ -197,6 +204,7 @@ | |||
197 | interrupts = <0 71 IRQ_TYPE_LEVEL_HIGH>, | 204 | interrupts = <0 71 IRQ_TYPE_LEVEL_HIGH>, |
198 | <0 72 IRQ_TYPE_LEVEL_HIGH>; | 205 | <0 72 IRQ_TYPE_LEVEL_HIGH>; |
199 | gpio-controller; | 206 | gpio-controller; |
207 | gpio-ranges = <&pfc 0 64 32>; | ||
200 | #gpio-cells = <2>; | 208 | #gpio-cells = <2>; |
201 | ngpios = <32>; | 209 | ngpios = <32>; |
202 | interrupt-controller; | 210 | interrupt-controller; |
@@ -208,6 +216,7 @@ | |||
208 | interrupts = <0 73 IRQ_TYPE_LEVEL_HIGH>, | 216 | interrupts = <0 73 IRQ_TYPE_LEVEL_HIGH>, |
209 | <0 74 IRQ_TYPE_LEVEL_HIGH>; | 217 | <0 74 IRQ_TYPE_LEVEL_HIGH>; |
210 | gpio-controller; | 218 | gpio-controller; |
219 | gpio-ranges = <&pfc 0 96 32>; | ||
211 | #gpio-cells = <2>; | 220 | #gpio-cells = <2>; |
212 | ngpios = <32>; | 221 | ngpios = <32>; |
213 | interrupt-controller; | 222 | interrupt-controller; |
@@ -219,6 +228,7 @@ | |||
219 | interrupts = <0 75 IRQ_TYPE_LEVEL_HIGH>, | 228 | interrupts = <0 75 IRQ_TYPE_LEVEL_HIGH>, |
220 | <0 76 IRQ_TYPE_LEVEL_HIGH>; | 229 | <0 76 IRQ_TYPE_LEVEL_HIGH>; |
221 | gpio-controller; | 230 | gpio-controller; |
231 | gpio-ranges = <&pfc 0 128 31>; | ||
222 | #gpio-cells = <2>; | 232 | #gpio-cells = <2>; |
223 | ngpios = <31>; | 233 | ngpios = <31>; |
224 | interrupt-controller; | 234 | interrupt-controller; |
diff --git a/arch/arm/boot/dts/r8a7740.dtsi b/arch/arm/boot/dts/r8a7740.dtsi index 8a092605d641..83c1c3ca1b8f 100644 --- a/arch/arm/boot/dts/r8a7740.dtsi +++ b/arch/arm/boot/dts/r8a7740.dtsi | |||
@@ -431,6 +431,18 @@ | |||
431 | clock-frequency = <27000000>; | 431 | clock-frequency = <27000000>; |
432 | clock-output-names = "dv"; | 432 | clock-output-names = "dv"; |
433 | }; | 433 | }; |
434 | fmsick_clk: fmsick_clk { | ||
435 | compatible = "fixed-clock"; | ||
436 | #clock-cells = <0>; | ||
437 | clock-frequency = <0>; | ||
438 | clock-output-names = "fmsick"; | ||
439 | }; | ||
440 | fmsock_clk: fmsock_clk { | ||
441 | compatible = "fixed-clock"; | ||
442 | #clock-cells = <0>; | ||
443 | clock-frequency = <0>; | ||
444 | clock-output-names = "fmsock"; | ||
445 | }; | ||
434 | fsiack_clk: fsiack_clk { | 446 | fsiack_clk: fsiack_clk { |
435 | compatible = "fixed-clock"; | 447 | compatible = "fixed-clock"; |
436 | #clock-cells = <0>; | 448 | #clock-cells = <0>; |
@@ -459,13 +471,78 @@ | |||
459 | }; | 471 | }; |
460 | 472 | ||
461 | /* Variable factor clocks (DIV6) */ | 473 | /* Variable factor clocks (DIV6) */ |
474 | vclk1_clk: vclk1_clk@e6150008 { | ||
475 | compatible = "renesas,r8a7740-div6-clock", "renesas,cpg-div6-clock"; | ||
476 | reg = <0xe6150008 4>; | ||
477 | clocks = <&pllc1_div2_clk>, <0>, <&dv_clk>, | ||
478 | <&cpg_clocks R8A7740_CLK_USB24S>, | ||
479 | <&extal1_div2_clk>, <&extalr_clk>, <0>, | ||
480 | <0>; | ||
481 | #clock-cells = <0>; | ||
482 | clock-output-names = "vclk1"; | ||
483 | }; | ||
484 | vclk2_clk: vclk2_clk@e615000c { | ||
485 | compatible = "renesas,r8a7740-div6-clock", "renesas,cpg-div6-clock"; | ||
486 | reg = <0xe615000c 4>; | ||
487 | clocks = <&pllc1_div2_clk>, <0>, <&dv_clk>, | ||
488 | <&cpg_clocks R8A7740_CLK_USB24S>, | ||
489 | <&extal1_div2_clk>, <&extalr_clk>, <0>, | ||
490 | <0>; | ||
491 | #clock-cells = <0>; | ||
492 | clock-output-names = "vclk2"; | ||
493 | }; | ||
494 | fmsi_clk: fmsi_clk@e6150010 { | ||
495 | compatible = "renesas,r8a7740-div6-clock", "renesas,cpg-div6-clock"; | ||
496 | reg = <0xe6150010 4>; | ||
497 | clocks = <&pllc1_div2_clk>, <&fmsick_clk>, <0>, <0>; | ||
498 | #clock-cells = <0>; | ||
499 | clock-output-names = "fmsi"; | ||
500 | }; | ||
501 | fmso_clk: fmso_clk@e6150014 { | ||
502 | compatible = "renesas,r8a7740-div6-clock", "renesas,cpg-div6-clock"; | ||
503 | reg = <0xe6150014 4>; | ||
504 | clocks = <&pllc1_div2_clk>, <&fmsock_clk>, <0>, <0>; | ||
505 | #clock-cells = <0>; | ||
506 | clock-output-names = "fmso"; | ||
507 | }; | ||
508 | fsia_clk: fsia_clk@e6150018 { | ||
509 | compatible = "renesas,r8a7740-div6-clock", "renesas,cpg-div6-clock"; | ||
510 | reg = <0xe6150018 4>; | ||
511 | clocks = <&pllc1_div2_clk>, <&fsiack_clk>, <0>, <0>; | ||
512 | #clock-cells = <0>; | ||
513 | clock-output-names = "fsia"; | ||
514 | }; | ||
462 | sub_clk: sub_clk@e6150080 { | 515 | sub_clk: sub_clk@e6150080 { |
463 | compatible = "renesas,r8a7740-div6-clock", "renesas,cpg-div6-clock"; | 516 | compatible = "renesas,r8a7740-div6-clock", "renesas,cpg-div6-clock"; |
464 | reg = <0xe6150080 4>; | 517 | reg = <0xe6150080 4>; |
465 | clocks = <&pllc1_div2_clk>; | 518 | clocks = <&pllc1_div2_clk>, |
519 | <&cpg_clocks R8A7740_CLK_USB24S>, <0>, <0>; | ||
466 | #clock-cells = <0>; | 520 | #clock-cells = <0>; |
467 | clock-output-names = "sub"; | 521 | clock-output-names = "sub"; |
468 | }; | 522 | }; |
523 | spu_clk: spu_clk@e6150084 { | ||
524 | compatible = "renesas,r8a7740-div6-clock", "renesas,cpg-div6-clock"; | ||
525 | reg = <0xe6150084 4>; | ||
526 | clocks = <&pllc1_div2_clk>, | ||
527 | <&cpg_clocks R8A7740_CLK_USB24S>, <0>, <0>; | ||
528 | #clock-cells = <0>; | ||
529 | clock-output-names = "spu"; | ||
530 | }; | ||
531 | vou_clk: vou_clk@e6150088 { | ||
532 | compatible = "renesas,r8a7740-div6-clock", "renesas,cpg-div6-clock"; | ||
533 | reg = <0xe6150088 4>; | ||
534 | clocks = <&pllc1_div2_clk>, <&extal1_clk>, <&dv_clk>, | ||
535 | <0>; | ||
536 | #clock-cells = <0>; | ||
537 | clock-output-names = "vou"; | ||
538 | }; | ||
539 | stpro_clk: stpro_clk@e615009c { | ||
540 | compatible = "renesas,r8a7740-div6-clock", "renesas,cpg-div6-clock"; | ||
541 | reg = <0xe615009c 4>; | ||
542 | clocks = <&cpg_clocks R8A7740_CLK_PLLC0>; | ||
543 | #clock-cells = <0>; | ||
544 | clock-output-names = "stpro"; | ||
545 | }; | ||
469 | 546 | ||
470 | /* Fixed factor clocks */ | 547 | /* Fixed factor clocks */ |
471 | pllc1_div2_clk: pllc1_div2_clk { | 548 | pllc1_div2_clk: pllc1_div2_clk { |
diff --git a/arch/arm/boot/dts/r8a7790.dtsi b/arch/arm/boot/dts/r8a7790.dtsi index 4b38fc920114..c6c0a0c8f1be 100644 --- a/arch/arm/boot/dts/r8a7790.dtsi +++ b/arch/arm/boot/dts/r8a7790.dtsi | |||
@@ -792,6 +792,26 @@ | |||
792 | }; | 792 | }; |
793 | }; | 793 | }; |
794 | 794 | ||
795 | can0: can@e6e80000 { | ||
796 | compatible = "renesas,can-r8a7790"; | ||
797 | reg = <0 0xe6e80000 0 0x1000>; | ||
798 | interrupts = <0 186 IRQ_TYPE_LEVEL_HIGH>; | ||
799 | clocks = <&mstp9_clks R8A7790_CLK_RCAN0>, | ||
800 | <&cpg_clocks R8A7790_CLK_RCAN>, <&can_clk>; | ||
801 | clock-names = "clkp1", "clkp2", "can_clk"; | ||
802 | status = "disabled"; | ||
803 | }; | ||
804 | |||
805 | can1: can@e6e88000 { | ||
806 | compatible = "renesas,can-r8a7790"; | ||
807 | reg = <0 0xe6e88000 0 0x1000>; | ||
808 | interrupts = <0 187 IRQ_TYPE_LEVEL_HIGH>; | ||
809 | clocks = <&mstp9_clks R8A7790_CLK_RCAN1>, | ||
810 | <&cpg_clocks R8A7790_CLK_RCAN>, <&can_clk>; | ||
811 | clock-names = "clkp1", "clkp2", "can_clk"; | ||
812 | status = "disabled"; | ||
813 | }; | ||
814 | |||
795 | clocks { | 815 | clocks { |
796 | #address-cells = <2>; | 816 | #address-cells = <2>; |
797 | #size-cells = <2>; | 817 | #size-cells = <2>; |
@@ -838,16 +858,34 @@ | |||
838 | clock-output-names = "audio_clk_c"; | 858 | clock-output-names = "audio_clk_c"; |
839 | }; | 859 | }; |
840 | 860 | ||
861 | /* External USB clock - can be overridden by the board */ | ||
862 | usb_extal_clk: usb_extal_clk { | ||
863 | compatible = "fixed-clock"; | ||
864 | #clock-cells = <0>; | ||
865 | clock-frequency = <48000000>; | ||
866 | clock-output-names = "usb_extal"; | ||
867 | }; | ||
868 | |||
869 | /* External CAN clock */ | ||
870 | can_clk: can_clk { | ||
871 | compatible = "fixed-clock"; | ||
872 | #clock-cells = <0>; | ||
873 | /* This value must be overridden by the board. */ | ||
874 | clock-frequency = <0>; | ||
875 | clock-output-names = "can_clk"; | ||
876 | status = "disabled"; | ||
877 | }; | ||
878 | |||
841 | /* Special CPG clocks */ | 879 | /* Special CPG clocks */ |
842 | cpg_clocks: cpg_clocks@e6150000 { | 880 | cpg_clocks: cpg_clocks@e6150000 { |
843 | compatible = "renesas,r8a7790-cpg-clocks", | 881 | compatible = "renesas,r8a7790-cpg-clocks", |
844 | "renesas,rcar-gen2-cpg-clocks"; | 882 | "renesas,rcar-gen2-cpg-clocks"; |
845 | reg = <0 0xe6150000 0 0x1000>; | 883 | reg = <0 0xe6150000 0 0x1000>; |
846 | clocks = <&extal_clk>; | 884 | clocks = <&extal_clk &usb_extal_clk>; |
847 | #clock-cells = <1>; | 885 | #clock-cells = <1>; |
848 | clock-output-names = "main", "pll0", "pll1", "pll3", | 886 | clock-output-names = "main", "pll0", "pll1", "pll3", |
849 | "lb", "qspi", "sdh", "sd0", "sd1", | 887 | "lb", "qspi", "sdh", "sd0", "sd1", |
850 | "z"; | 888 | "z", "rcan", "adsp"; |
851 | }; | 889 | }; |
852 | 890 | ||
853 | /* Variable factor clocks */ | 891 | /* Variable factor clocks */ |
@@ -1121,13 +1159,16 @@ | |||
1121 | mstp5_clks: mstp5_clks@e6150144 { | 1159 | mstp5_clks: mstp5_clks@e6150144 { |
1122 | compatible = "renesas,r8a7790-mstp-clocks", "renesas,cpg-mstp-clocks"; | 1160 | compatible = "renesas,r8a7790-mstp-clocks", "renesas,cpg-mstp-clocks"; |
1123 | reg = <0 0xe6150144 0 4>, <0 0xe615003c 0 4>; | 1161 | reg = <0 0xe6150144 0 4>, <0 0xe615003c 0 4>; |
1124 | clocks = <&hp_clk>, <&hp_clk>, <&extal_clk>, <&p_clk>; | 1162 | clocks = <&hp_clk>, <&hp_clk>, <&cpg_clocks R8A7790_CLK_ADSP>, |
1163 | <&extal_clk>, <&p_clk>; | ||
1125 | #clock-cells = <1>; | 1164 | #clock-cells = <1>; |
1126 | clock-indices = < | 1165 | clock-indices = < |
1127 | R8A7790_CLK_AUDIO_DMAC0 R8A7790_CLK_AUDIO_DMAC1 | 1166 | R8A7790_CLK_AUDIO_DMAC0 R8A7790_CLK_AUDIO_DMAC1 |
1128 | R8A7790_CLK_THERMAL R8A7790_CLK_PWM | 1167 | R8A7790_CLK_ADSP_MOD R8A7790_CLK_THERMAL |
1168 | R8A7790_CLK_PWM | ||
1129 | >; | 1169 | >; |
1130 | clock-output-names = "audmac0", "audmac1", "thermal", "pwm"; | 1170 | clock-output-names = "audmac0", "audmac1", "adsp_mod", |
1171 | "thermal", "pwm"; | ||
1131 | }; | 1172 | }; |
1132 | mstp7_clks: mstp7_clks@e615014c { | 1173 | mstp7_clks: mstp7_clks@e615014c { |
1133 | compatible = "renesas,r8a7790-mstp-clocks", "renesas,cpg-mstp-clocks"; | 1174 | compatible = "renesas,r8a7790-mstp-clocks", "renesas,cpg-mstp-clocks"; |
@@ -1465,4 +1506,55 @@ | |||
1465 | ssi9: ssi@9 { interrupts = <0 379 IRQ_TYPE_LEVEL_HIGH>; }; | 1506 | ssi9: ssi@9 { interrupts = <0 379 IRQ_TYPE_LEVEL_HIGH>; }; |
1466 | }; | 1507 | }; |
1467 | }; | 1508 | }; |
1509 | |||
1510 | ipmmu_sy0: mmu@e6280000 { | ||
1511 | compatible = "renesas,ipmmu-vmsa"; | ||
1512 | reg = <0 0xe6280000 0 0x1000>; | ||
1513 | interrupts = <0 223 IRQ_TYPE_LEVEL_HIGH>, | ||
1514 | <0 224 IRQ_TYPE_LEVEL_HIGH>; | ||
1515 | #iommu-cells = <1>; | ||
1516 | status = "disabled"; | ||
1517 | }; | ||
1518 | |||
1519 | ipmmu_sy1: mmu@e6290000 { | ||
1520 | compatible = "renesas,ipmmu-vmsa"; | ||
1521 | reg = <0 0xe6290000 0 0x1000>; | ||
1522 | interrupts = <0 225 IRQ_TYPE_LEVEL_HIGH>; | ||
1523 | #iommu-cells = <1>; | ||
1524 | status = "disabled"; | ||
1525 | }; | ||
1526 | |||
1527 | ipmmu_ds: mmu@e6740000 { | ||
1528 | compatible = "renesas,ipmmu-vmsa"; | ||
1529 | reg = <0 0xe6740000 0 0x1000>; | ||
1530 | interrupts = <0 198 IRQ_TYPE_LEVEL_HIGH>, | ||
1531 | <0 199 IRQ_TYPE_LEVEL_HIGH>; | ||
1532 | #iommu-cells = <1>; | ||
1533 | status = "disabled"; | ||
1534 | }; | ||
1535 | |||
1536 | ipmmu_mp: mmu@ec680000 { | ||
1537 | compatible = "renesas,ipmmu-vmsa"; | ||
1538 | reg = <0 0xec680000 0 0x1000>; | ||
1539 | interrupts = <0 226 IRQ_TYPE_LEVEL_HIGH>; | ||
1540 | #iommu-cells = <1>; | ||
1541 | status = "disabled"; | ||
1542 | }; | ||
1543 | |||
1544 | ipmmu_mx: mmu@fe951000 { | ||
1545 | compatible = "renesas,ipmmu-vmsa"; | ||
1546 | reg = <0 0xfe951000 0 0x1000>; | ||
1547 | interrupts = <0 222 IRQ_TYPE_LEVEL_HIGH>, | ||
1548 | <0 221 IRQ_TYPE_LEVEL_HIGH>; | ||
1549 | #iommu-cells = <1>; | ||
1550 | status = "disabled"; | ||
1551 | }; | ||
1552 | |||
1553 | ipmmu_rt: mmu@ffc80000 { | ||
1554 | compatible = "renesas,ipmmu-vmsa"; | ||
1555 | reg = <0 0xffc80000 0 0x1000>; | ||
1556 | interrupts = <0 307 IRQ_TYPE_LEVEL_HIGH>; | ||
1557 | #iommu-cells = <1>; | ||
1558 | status = "disabled"; | ||
1559 | }; | ||
1468 | }; | 1560 | }; |
diff --git a/arch/arm/boot/dts/r8a7791-henninger.dts b/arch/arm/boot/dts/r8a7791-henninger.dts index d2ebf11f9881..e33e4047b0b0 100644 --- a/arch/arm/boot/dts/r8a7791-henninger.dts +++ b/arch/arm/boot/dts/r8a7791-henninger.dts | |||
@@ -141,6 +141,11 @@ | |||
141 | renesas,groups = "vin0_data8", "vin0_clk"; | 141 | renesas,groups = "vin0_data8", "vin0_clk"; |
142 | renesas,function = "vin0"; | 142 | renesas,function = "vin0"; |
143 | }; | 143 | }; |
144 | |||
145 | can0_pins: can0 { | ||
146 | renesas,groups = "can0_data"; | ||
147 | renesas,function = "can0"; | ||
148 | }; | ||
144 | }; | 149 | }; |
145 | 150 | ||
146 | &scif0 { | 151 | &scif0 { |
@@ -307,3 +312,9 @@ | |||
307 | }; | 312 | }; |
308 | }; | 313 | }; |
309 | }; | 314 | }; |
315 | |||
316 | &can0 { | ||
317 | pinctrl-0 = <&can0_pins>; | ||
318 | pinctrl-names = "default"; | ||
319 | status = "okay"; | ||
320 | }; | ||
diff --git a/arch/arm/boot/dts/r8a7791-koelsch.dts b/arch/arm/boot/dts/r8a7791-koelsch.dts index a3c27807f6c5..624bb2c30513 100644 --- a/arch/arm/boot/dts/r8a7791-koelsch.dts +++ b/arch/arm/boot/dts/r8a7791-koelsch.dts | |||
@@ -258,6 +258,17 @@ | |||
258 | system-clock-frequency = <11289600>; | 258 | system-clock-frequency = <11289600>; |
259 | }; | 259 | }; |
260 | }; | 260 | }; |
261 | |||
262 | hdmi-out { | ||
263 | compatible = "hdmi-connector"; | ||
264 | type = "a"; | ||
265 | |||
266 | port { | ||
267 | hdmi_con: endpoint { | ||
268 | remote-endpoint = <&adv7511_out>; | ||
269 | }; | ||
270 | }; | ||
271 | }; | ||
261 | }; | 272 | }; |
262 | 273 | ||
263 | &du { | 274 | &du { |
@@ -266,6 +277,11 @@ | |||
266 | status = "okay"; | 277 | status = "okay"; |
267 | 278 | ||
268 | ports { | 279 | ports { |
280 | port@0 { | ||
281 | endpoint { | ||
282 | remote-endpoint = <&adv7511_in>; | ||
283 | }; | ||
284 | }; | ||
269 | port@1 { | 285 | port@1 { |
270 | lvds_connector: endpoint { | 286 | lvds_connector: endpoint { |
271 | }; | 287 | }; |
@@ -284,7 +300,7 @@ | |||
284 | }; | 300 | }; |
285 | 301 | ||
286 | du_pins: du { | 302 | du_pins: du { |
287 | renesas,groups = "du_rgb666", "du_sync", "du_clk_out_0"; | 303 | renesas,groups = "du_rgb666", "du_sync", "du_disp", "du_clk_out_0"; |
288 | renesas,function = "du"; | 304 | renesas,function = "du"; |
289 | }; | 305 | }; |
290 | 306 | ||
@@ -506,6 +522,38 @@ | |||
506 | }; | 522 | }; |
507 | }; | 523 | }; |
508 | 524 | ||
525 | hdmi@39 { | ||
526 | compatible = "adi,adv7511w"; | ||
527 | reg = <0x39>; | ||
528 | interrupt-parent = <&gpio3>; | ||
529 | interrupts = <29 IRQ_TYPE_EDGE_FALLING>; | ||
530 | |||
531 | adi,input-depth = <8>; | ||
532 | adi,input-colorspace = "rgb"; | ||
533 | adi,input-clock = "1x"; | ||
534 | adi,input-style = <1>; | ||
535 | adi,input-justification = "evenly"; | ||
536 | |||
537 | ports { | ||
538 | #address-cells = <1>; | ||
539 | #size-cells = <0>; | ||
540 | |||
541 | port@0 { | ||
542 | reg = <0>; | ||
543 | adv7511_in: endpoint { | ||
544 | remote-endpoint = <&du_out_rgb>; | ||
545 | }; | ||
546 | }; | ||
547 | |||
548 | port@1 { | ||
549 | reg = <1>; | ||
550 | adv7511_out: endpoint { | ||
551 | remote-endpoint = <&hdmi_con>; | ||
552 | }; | ||
553 | }; | ||
554 | }; | ||
555 | }; | ||
556 | |||
509 | eeprom@50 { | 557 | eeprom@50 { |
510 | compatible = "renesas,24c02"; | 558 | compatible = "renesas,24c02"; |
511 | reg = <0x50>; | 559 | reg = <0x50>; |
diff --git a/arch/arm/boot/dts/r8a7791.dtsi b/arch/arm/boot/dts/r8a7791.dtsi index e35812a0d8d4..1e593a2b55fa 100644 --- a/arch/arm/boot/dts/r8a7791.dtsi +++ b/arch/arm/boot/dts/r8a7791.dtsi | |||
@@ -816,6 +816,26 @@ | |||
816 | }; | 816 | }; |
817 | }; | 817 | }; |
818 | 818 | ||
819 | can0: can@e6e80000 { | ||
820 | compatible = "renesas,can-r8a7791"; | ||
821 | reg = <0 0xe6e80000 0 0x1000>; | ||
822 | interrupts = <0 186 IRQ_TYPE_LEVEL_HIGH>; | ||
823 | clocks = <&mstp9_clks R8A7791_CLK_RCAN0>, | ||
824 | <&cpg_clocks R8A7791_CLK_RCAN>, <&can_clk>; | ||
825 | clock-names = "clkp1", "clkp2", "can_clk"; | ||
826 | status = "disabled"; | ||
827 | }; | ||
828 | |||
829 | can1: can@e6e88000 { | ||
830 | compatible = "renesas,can-r8a7791"; | ||
831 | reg = <0 0xe6e88000 0 0x1000>; | ||
832 | interrupts = <0 187 IRQ_TYPE_LEVEL_HIGH>; | ||
833 | clocks = <&mstp9_clks R8A7791_CLK_RCAN1>, | ||
834 | <&cpg_clocks R8A7791_CLK_RCAN>, <&can_clk>; | ||
835 | clock-names = "clkp1", "clkp2", "can_clk"; | ||
836 | status = "disabled"; | ||
837 | }; | ||
838 | |||
819 | clocks { | 839 | clocks { |
820 | #address-cells = <2>; | 840 | #address-cells = <2>; |
821 | #size-cells = <2>; | 841 | #size-cells = <2>; |
@@ -862,31 +882,50 @@ | |||
862 | status = "disabled"; | 882 | status = "disabled"; |
863 | }; | 883 | }; |
864 | 884 | ||
885 | /* External USB clock - can be overridden by the board */ | ||
886 | usb_extal_clk: usb_extal_clk { | ||
887 | compatible = "fixed-clock"; | ||
888 | #clock-cells = <0>; | ||
889 | clock-frequency = <48000000>; | ||
890 | clock-output-names = "usb_extal"; | ||
891 | }; | ||
892 | |||
893 | /* External CAN clock */ | ||
894 | can_clk: can_clk { | ||
895 | compatible = "fixed-clock"; | ||
896 | #clock-cells = <0>; | ||
897 | /* This value must be overridden by the board. */ | ||
898 | clock-frequency = <0>; | ||
899 | clock-output-names = "can_clk"; | ||
900 | status = "disabled"; | ||
901 | }; | ||
902 | |||
865 | /* Special CPG clocks */ | 903 | /* Special CPG clocks */ |
866 | cpg_clocks: cpg_clocks@e6150000 { | 904 | cpg_clocks: cpg_clocks@e6150000 { |
867 | compatible = "renesas,r8a7791-cpg-clocks", | 905 | compatible = "renesas,r8a7791-cpg-clocks", |
868 | "renesas,rcar-gen2-cpg-clocks"; | 906 | "renesas,rcar-gen2-cpg-clocks"; |
869 | reg = <0 0xe6150000 0 0x1000>; | 907 | reg = <0 0xe6150000 0 0x1000>; |
870 | clocks = <&extal_clk>; | 908 | clocks = <&extal_clk &usb_extal_clk>; |
871 | #clock-cells = <1>; | 909 | #clock-cells = <1>; |
872 | clock-output-names = "main", "pll0", "pll1", "pll3", | 910 | clock-output-names = "main", "pll0", "pll1", "pll3", |
873 | "lb", "qspi", "sdh", "sd0", "z"; | 911 | "lb", "qspi", "sdh", "sd0", "z", |
912 | "rcan", "adsp"; | ||
874 | }; | 913 | }; |
875 | 914 | ||
876 | /* Variable factor clocks */ | 915 | /* Variable factor clocks */ |
877 | sd1_clk: sd2_clk@e6150078 { | 916 | sd2_clk: sd2_clk@e6150078 { |
878 | compatible = "renesas,r8a7791-div6-clock", "renesas,cpg-div6-clock"; | 917 | compatible = "renesas,r8a7791-div6-clock", "renesas,cpg-div6-clock"; |
879 | reg = <0 0xe6150078 0 4>; | 918 | reg = <0 0xe6150078 0 4>; |
880 | clocks = <&pll1_div2_clk>; | 919 | clocks = <&pll1_div2_clk>; |
881 | #clock-cells = <0>; | 920 | #clock-cells = <0>; |
882 | clock-output-names = "sd1"; | 921 | clock-output-names = "sd2"; |
883 | }; | 922 | }; |
884 | sd2_clk: sd3_clk@e615026c { | 923 | sd3_clk: sd3_clk@e615026c { |
885 | compatible = "renesas,r8a7791-div6-clock", "renesas,cpg-div6-clock"; | 924 | compatible = "renesas,r8a7791-div6-clock", "renesas,cpg-div6-clock"; |
886 | reg = <0 0xe615026c 0 4>; | 925 | reg = <0 0xe615026c 0 4>; |
887 | clocks = <&pll1_div2_clk>; | 926 | clocks = <&pll1_div2_clk>; |
888 | #clock-cells = <0>; | 927 | #clock-cells = <0>; |
889 | clock-output-names = "sd2"; | 928 | clock-output-names = "sd3"; |
890 | }; | 929 | }; |
891 | mmc0_clk: mmc0_clk@e6150240 { | 930 | mmc0_clk: mmc0_clk@e6150240 { |
892 | compatible = "renesas,r8a7791-div6-clock", "renesas,cpg-div6-clock"; | 931 | compatible = "renesas,r8a7791-div6-clock", "renesas,cpg-div6-clock"; |
@@ -1107,7 +1146,7 @@ | |||
1107 | mstp3_clks: mstp3_clks@e615013c { | 1146 | mstp3_clks: mstp3_clks@e615013c { |
1108 | compatible = "renesas,r8a7791-mstp-clocks", "renesas,cpg-mstp-clocks"; | 1147 | compatible = "renesas,r8a7791-mstp-clocks", "renesas,cpg-mstp-clocks"; |
1109 | reg = <0 0xe615013c 0 4>, <0 0xe6150048 0 4>; | 1148 | reg = <0 0xe615013c 0 4>, <0 0xe6150048 0 4>; |
1110 | clocks = <&cp_clk>, <&sd2_clk>, <&sd1_clk>, <&cpg_clocks R8A7791_CLK_SD0>, | 1149 | clocks = <&cp_clk>, <&sd3_clk>, <&sd2_clk>, <&cpg_clocks R8A7791_CLK_SD0>, |
1111 | <&mmc0_clk>, <&hp_clk>, <&mp_clk>, <&hp_clk>, <&mp_clk>, <&rclk_clk>, | 1150 | <&mmc0_clk>, <&hp_clk>, <&mp_clk>, <&hp_clk>, <&mp_clk>, <&rclk_clk>, |
1112 | <&hp_clk>, <&hp_clk>; | 1151 | <&hp_clk>, <&hp_clk>; |
1113 | #clock-cells = <1>; | 1152 | #clock-cells = <1>; |
@@ -1125,13 +1164,16 @@ | |||
1125 | mstp5_clks: mstp5_clks@e6150144 { | 1164 | mstp5_clks: mstp5_clks@e6150144 { |
1126 | compatible = "renesas,r8a7791-mstp-clocks", "renesas,cpg-mstp-clocks"; | 1165 | compatible = "renesas,r8a7791-mstp-clocks", "renesas,cpg-mstp-clocks"; |
1127 | reg = <0 0xe6150144 0 4>, <0 0xe615003c 0 4>; | 1166 | reg = <0 0xe6150144 0 4>, <0 0xe615003c 0 4>; |
1128 | clocks = <&hp_clk>, <&hp_clk>, <&extal_clk>, <&p_clk>; | 1167 | clocks = <&hp_clk>, <&hp_clk>, <&cpg_clocks R8A7791_CLK_ADSP>, |
1168 | <&extal_clk>, <&p_clk>; | ||
1129 | #clock-cells = <1>; | 1169 | #clock-cells = <1>; |
1130 | clock-indices = < | 1170 | clock-indices = < |
1131 | R8A7791_CLK_AUDIO_DMAC0 R8A7791_CLK_AUDIO_DMAC1 | 1171 | R8A7791_CLK_AUDIO_DMAC0 R8A7791_CLK_AUDIO_DMAC1 |
1132 | R8A7791_CLK_THERMAL R8A7791_CLK_PWM | 1172 | R8A7791_CLK_ADSP_MOD R8A7791_CLK_THERMAL |
1173 | R8A7791_CLK_PWM | ||
1133 | >; | 1174 | >; |
1134 | clock-output-names = "audmac0", "audmac1", "thermal", "pwm"; | 1175 | clock-output-names = "audmac0", "audmac1", "adsp_mod", |
1176 | "thermal", "pwm"; | ||
1135 | }; | 1177 | }; |
1136 | mstp7_clks: mstp7_clks@e615014c { | 1178 | mstp7_clks: mstp7_clks@e615014c { |
1137 | compatible = "renesas,r8a7791-mstp-clocks", "renesas,cpg-mstp-clocks"; | 1179 | compatible = "renesas,r8a7791-mstp-clocks", "renesas,cpg-mstp-clocks"; |
@@ -1384,6 +1426,66 @@ | |||
1384 | status = "disabled"; | 1426 | status = "disabled"; |
1385 | }; | 1427 | }; |
1386 | 1428 | ||
1429 | ipmmu_sy0: mmu@e6280000 { | ||
1430 | compatible = "renesas,ipmmu-vmsa"; | ||
1431 | reg = <0 0xe6280000 0 0x1000>; | ||
1432 | interrupts = <0 223 IRQ_TYPE_LEVEL_HIGH>, | ||
1433 | <0 224 IRQ_TYPE_LEVEL_HIGH>; | ||
1434 | #iommu-cells = <1>; | ||
1435 | status = "disabled"; | ||
1436 | }; | ||
1437 | |||
1438 | ipmmu_sy1: mmu@e6290000 { | ||
1439 | compatible = "renesas,ipmmu-vmsa"; | ||
1440 | reg = <0 0xe6290000 0 0x1000>; | ||
1441 | interrupts = <0 225 IRQ_TYPE_LEVEL_HIGH>; | ||
1442 | #iommu-cells = <1>; | ||
1443 | status = "disabled"; | ||
1444 | }; | ||
1445 | |||
1446 | ipmmu_ds: mmu@e6740000 { | ||
1447 | compatible = "renesas,ipmmu-vmsa"; | ||
1448 | reg = <0 0xe6740000 0 0x1000>; | ||
1449 | interrupts = <0 198 IRQ_TYPE_LEVEL_HIGH>, | ||
1450 | <0 199 IRQ_TYPE_LEVEL_HIGH>; | ||
1451 | #iommu-cells = <1>; | ||
1452 | status = "disabled"; | ||
1453 | }; | ||
1454 | |||
1455 | ipmmu_mp: mmu@ec680000 { | ||
1456 | compatible = "renesas,ipmmu-vmsa"; | ||
1457 | reg = <0 0xec680000 0 0x1000>; | ||
1458 | interrupts = <0 226 IRQ_TYPE_LEVEL_HIGH>; | ||
1459 | #iommu-cells = <1>; | ||
1460 | status = "disabled"; | ||
1461 | }; | ||
1462 | |||
1463 | ipmmu_mx: mmu@fe951000 { | ||
1464 | compatible = "renesas,ipmmu-vmsa"; | ||
1465 | reg = <0 0xfe951000 0 0x1000>; | ||
1466 | interrupts = <0 222 IRQ_TYPE_LEVEL_HIGH>, | ||
1467 | <0 221 IRQ_TYPE_LEVEL_HIGH>; | ||
1468 | #iommu-cells = <1>; | ||
1469 | status = "disabled"; | ||
1470 | }; | ||
1471 | |||
1472 | ipmmu_rt: mmu@ffc80000 { | ||
1473 | compatible = "renesas,ipmmu-vmsa"; | ||
1474 | reg = <0 0xffc80000 0 0x1000>; | ||
1475 | interrupts = <0 307 IRQ_TYPE_LEVEL_HIGH>; | ||
1476 | #iommu-cells = <1>; | ||
1477 | status = "disabled"; | ||
1478 | }; | ||
1479 | |||
1480 | ipmmu_gp: mmu@e62a0000 { | ||
1481 | compatible = "renesas,ipmmu-vmsa"; | ||
1482 | reg = <0 0xe62a0000 0 0x1000>; | ||
1483 | interrupts = <0 260 IRQ_TYPE_LEVEL_HIGH>, | ||
1484 | <0 261 IRQ_TYPE_LEVEL_HIGH>; | ||
1485 | #iommu-cells = <1>; | ||
1486 | status = "disabled"; | ||
1487 | }; | ||
1488 | |||
1387 | rcar_sound: rcar_sound@ec500000 { | 1489 | rcar_sound: rcar_sound@ec500000 { |
1388 | /* | 1490 | /* |
1389 | * #sound-dai-cells is required | 1491 | * #sound-dai-cells is required |
diff --git a/arch/arm/boot/dts/r8a7794-alt.dts b/arch/arm/boot/dts/r8a7794-alt.dts index 0d848e605071..25bf434433b1 100644 --- a/arch/arm/boot/dts/r8a7794-alt.dts +++ b/arch/arm/boot/dts/r8a7794-alt.dts | |||
@@ -43,6 +43,19 @@ | |||
43 | status = "okay"; | 43 | status = "okay"; |
44 | }; | 44 | }; |
45 | 45 | ||
46 | ðer { | ||
47 | phy-handle = <&phy1>; | ||
48 | renesas,ether-link-active-low; | ||
49 | status = "okay"; | ||
50 | |||
51 | phy1: ethernet-phy@1 { | ||
52 | reg = <1>; | ||
53 | interrupt-parent = <&irqc0>; | ||
54 | interrupts = <0 IRQ_TYPE_LEVEL_LOW>; | ||
55 | micrel,led-mode = <1>; | ||
56 | }; | ||
57 | }; | ||
58 | |||
46 | &scif2 { | 59 | &scif2 { |
47 | status = "okay"; | 60 | status = "okay"; |
48 | }; | 61 | }; |
diff --git a/arch/arm/boot/dts/r8a7794.dtsi b/arch/arm/boot/dts/r8a7794.dtsi index 8f78da5ef10b..7a3ffa51a8bf 100644 --- a/arch/arm/boot/dts/r8a7794.dtsi +++ b/arch/arm/boot/dts/r8a7794.dtsi | |||
@@ -107,6 +107,66 @@ | |||
107 | <0 17 IRQ_TYPE_LEVEL_HIGH>; | 107 | <0 17 IRQ_TYPE_LEVEL_HIGH>; |
108 | }; | 108 | }; |
109 | 109 | ||
110 | dmac0: dma-controller@e6700000 { | ||
111 | compatible = "renesas,rcar-dmac"; | ||
112 | reg = <0 0xe6700000 0 0x20000>; | ||
113 | interrupts = <0 197 IRQ_TYPE_LEVEL_HIGH | ||
114 | 0 200 IRQ_TYPE_LEVEL_HIGH | ||
115 | 0 201 IRQ_TYPE_LEVEL_HIGH | ||
116 | 0 202 IRQ_TYPE_LEVEL_HIGH | ||
117 | 0 203 IRQ_TYPE_LEVEL_HIGH | ||
118 | 0 204 IRQ_TYPE_LEVEL_HIGH | ||
119 | 0 205 IRQ_TYPE_LEVEL_HIGH | ||
120 | 0 206 IRQ_TYPE_LEVEL_HIGH | ||
121 | 0 207 IRQ_TYPE_LEVEL_HIGH | ||
122 | 0 208 IRQ_TYPE_LEVEL_HIGH | ||
123 | 0 209 IRQ_TYPE_LEVEL_HIGH | ||
124 | 0 210 IRQ_TYPE_LEVEL_HIGH | ||
125 | 0 211 IRQ_TYPE_LEVEL_HIGH | ||
126 | 0 212 IRQ_TYPE_LEVEL_HIGH | ||
127 | 0 213 IRQ_TYPE_LEVEL_HIGH | ||
128 | 0 214 IRQ_TYPE_LEVEL_HIGH>; | ||
129 | interrupt-names = "error", | ||
130 | "ch0", "ch1", "ch2", "ch3", | ||
131 | "ch4", "ch5", "ch6", "ch7", | ||
132 | "ch8", "ch9", "ch10", "ch11", | ||
133 | "ch12", "ch13", "ch14"; | ||
134 | clocks = <&mstp2_clks R8A7794_CLK_SYS_DMAC0>; | ||
135 | clock-names = "fck"; | ||
136 | #dma-cells = <1>; | ||
137 | dma-channels = <15>; | ||
138 | }; | ||
139 | |||
140 | dmac1: dma-controller@e6720000 { | ||
141 | compatible = "renesas,rcar-dmac"; | ||
142 | reg = <0 0xe6720000 0 0x20000>; | ||
143 | interrupts = <0 220 IRQ_TYPE_LEVEL_HIGH | ||
144 | 0 216 IRQ_TYPE_LEVEL_HIGH | ||
145 | 0 217 IRQ_TYPE_LEVEL_HIGH | ||
146 | 0 218 IRQ_TYPE_LEVEL_HIGH | ||
147 | 0 219 IRQ_TYPE_LEVEL_HIGH | ||
148 | 0 308 IRQ_TYPE_LEVEL_HIGH | ||
149 | 0 309 IRQ_TYPE_LEVEL_HIGH | ||
150 | 0 310 IRQ_TYPE_LEVEL_HIGH | ||
151 | 0 311 IRQ_TYPE_LEVEL_HIGH | ||
152 | 0 312 IRQ_TYPE_LEVEL_HIGH | ||
153 | 0 313 IRQ_TYPE_LEVEL_HIGH | ||
154 | 0 314 IRQ_TYPE_LEVEL_HIGH | ||
155 | 0 315 IRQ_TYPE_LEVEL_HIGH | ||
156 | 0 316 IRQ_TYPE_LEVEL_HIGH | ||
157 | 0 317 IRQ_TYPE_LEVEL_HIGH | ||
158 | 0 318 IRQ_TYPE_LEVEL_HIGH>; | ||
159 | interrupt-names = "error", | ||
160 | "ch0", "ch1", "ch2", "ch3", | ||
161 | "ch4", "ch5", "ch6", "ch7", | ||
162 | "ch8", "ch9", "ch10", "ch11", | ||
163 | "ch12", "ch13", "ch14"; | ||
164 | clocks = <&mstp2_clks R8A7794_CLK_SYS_DMAC1>; | ||
165 | clock-names = "fck"; | ||
166 | #dma-cells = <1>; | ||
167 | dma-channels = <15>; | ||
168 | }; | ||
169 | |||
110 | scifa0: serial@e6c40000 { | 170 | scifa0: serial@e6c40000 { |
111 | compatible = "renesas,scifa-r8a7794", "renesas,scifa"; | 171 | compatible = "renesas,scifa-r8a7794", "renesas,scifa"; |
112 | reg = <0 0xe6c40000 0 64>; | 172 | reg = <0 0xe6c40000 0 64>; |
@@ -269,6 +329,41 @@ | |||
269 | status = "disabled"; | 329 | status = "disabled"; |
270 | }; | 330 | }; |
271 | 331 | ||
332 | ether: ethernet@ee700000 { | ||
333 | compatible = "renesas,ether-r8a7794"; | ||
334 | reg = <0 0xee700000 0 0x400>; | ||
335 | interrupts = <0 162 IRQ_TYPE_LEVEL_HIGH>; | ||
336 | clocks = <&mstp8_clks R8A7794_CLK_ETHER>; | ||
337 | phy-mode = "rmii"; | ||
338 | #address-cells = <1>; | ||
339 | #size-cells = <0>; | ||
340 | status = "disabled"; | ||
341 | }; | ||
342 | |||
343 | sdhi0: sd@ee100000 { | ||
344 | compatible = "renesas,sdhi-r8a7794"; | ||
345 | reg = <0 0xee100000 0 0x200>; | ||
346 | interrupts = <0 165 IRQ_TYPE_LEVEL_HIGH>; | ||
347 | clocks = <&mstp3_clks R8A7794_CLK_SDHI0>; | ||
348 | status = "disabled"; | ||
349 | }; | ||
350 | |||
351 | sdhi1: sd@ee140000 { | ||
352 | compatible = "renesas,sdhi-r8a7794"; | ||
353 | reg = <0 0xee140000 0 0x100>; | ||
354 | interrupts = <0 167 IRQ_TYPE_LEVEL_HIGH>; | ||
355 | clocks = <&mstp3_clks R8A7794_CLK_SDHI1>; | ||
356 | status = "disabled"; | ||
357 | }; | ||
358 | |||
359 | sdhi2: sd@ee160000 { | ||
360 | compatible = "renesas,sdhi-r8a7794"; | ||
361 | reg = <0 0xee160000 0 0x100>; | ||
362 | interrupts = <0 168 IRQ_TYPE_LEVEL_HIGH>; | ||
363 | clocks = <&mstp3_clks R8A7794_CLK_SDHI2>; | ||
364 | status = "disabled"; | ||
365 | }; | ||
366 | |||
272 | clocks { | 367 | clocks { |
273 | #address-cells = <2>; | 368 | #address-cells = <2>; |
274 | #size-cells = <2>; | 369 | #size-cells = <2>; |
@@ -294,19 +389,19 @@ | |||
294 | "lb", "qspi", "sdh", "sd0", "z"; | 389 | "lb", "qspi", "sdh", "sd0", "z"; |
295 | }; | 390 | }; |
296 | /* Variable factor clocks */ | 391 | /* Variable factor clocks */ |
297 | sd1_clk: sd2_clk@e6150078 { | 392 | sd2_clk: sd2_clk@e6150078 { |
298 | compatible = "renesas,r8a7794-div6-clock", "renesas,cpg-div6-clock"; | 393 | compatible = "renesas,r8a7794-div6-clock", "renesas,cpg-div6-clock"; |
299 | reg = <0 0xe6150078 0 4>; | 394 | reg = <0 0xe6150078 0 4>; |
300 | clocks = <&pll1_div2_clk>; | 395 | clocks = <&pll1_div2_clk>; |
301 | #clock-cells = <0>; | 396 | #clock-cells = <0>; |
302 | clock-output-names = "sd1"; | 397 | clock-output-names = "sd2"; |
303 | }; | 398 | }; |
304 | sd2_clk: sd3_clk@e615007c { | 399 | sd3_clk: sd3_clk@e615026c { |
305 | compatible = "renesas,r8a7794-div6-clock", "renesas,cpg-div6-clock"; | 400 | compatible = "renesas,r8a7794-div6-clock", "renesas,cpg-div6-clock"; |
306 | reg = <0 0xe615007c 0 4>; | 401 | reg = <0 0xe615026c 0 4>; |
307 | clocks = <&pll1_div2_clk>; | 402 | clocks = <&pll1_div2_clk>; |
308 | #clock-cells = <0>; | 403 | #clock-cells = <0>; |
309 | clock-output-names = "sd2"; | 404 | clock-output-names = "sd3"; |
310 | }; | 405 | }; |
311 | mmc0_clk: mmc0_clk@e6150240 { | 406 | mmc0_clk: mmc0_clk@e6150240 { |
312 | compatible = "renesas,r8a7794-div6-clock", "renesas,cpg-div6-clock"; | 407 | compatible = "renesas,r8a7794-div6-clock", "renesas,cpg-div6-clock"; |
@@ -518,7 +613,7 @@ | |||
518 | mstp3_clks: mstp3_clks@e615013c { | 613 | mstp3_clks: mstp3_clks@e615013c { |
519 | compatible = "renesas,r8a7794-mstp-clocks", "renesas,cpg-mstp-clocks"; | 614 | compatible = "renesas,r8a7794-mstp-clocks", "renesas,cpg-mstp-clocks"; |
520 | reg = <0 0xe615013c 0 4>, <0 0xe6150048 0 4>; | 615 | reg = <0 0xe615013c 0 4>, <0 0xe6150048 0 4>; |
521 | clocks = <&sd2_clk>, <&sd1_clk>, <&cpg_clocks R8A7794_CLK_SD0>, | 616 | clocks = <&sd3_clk>, <&sd2_clk>, <&cpg_clocks R8A7794_CLK_SD0>, |
522 | <&mmc0_clk>, <&rclk_clk>, <&hp_clk>, <&hp_clk>; | 617 | <&mmc0_clk>, <&rclk_clk>, <&hp_clk>, <&hp_clk>; |
523 | #clock-cells = <1>; | 618 | #clock-cells = <1>; |
524 | clock-indices = < | 619 | clock-indices = < |
@@ -585,4 +680,54 @@ | |||
585 | clock-output-names = "scifa3", "scifa4", "scifa5"; | 680 | clock-output-names = "scifa3", "scifa4", "scifa5"; |
586 | }; | 681 | }; |
587 | }; | 682 | }; |
683 | |||
684 | ipmmu_sy0: mmu@e6280000 { | ||
685 | compatible = "renesas,ipmmu-vmsa"; | ||
686 | reg = <0 0xe6280000 0 0x1000>; | ||
687 | interrupts = <0 223 IRQ_TYPE_LEVEL_HIGH>, | ||
688 | <0 224 IRQ_TYPE_LEVEL_HIGH>; | ||
689 | #iommu-cells = <1>; | ||
690 | status = "disabled"; | ||
691 | }; | ||
692 | |||
693 | ipmmu_sy1: mmu@e6290000 { | ||
694 | compatible = "renesas,ipmmu-vmsa"; | ||
695 | reg = <0 0xe6290000 0 0x1000>; | ||
696 | interrupts = <0 225 IRQ_TYPE_LEVEL_HIGH>; | ||
697 | #iommu-cells = <1>; | ||
698 | status = "disabled"; | ||
699 | }; | ||
700 | |||
701 | ipmmu_ds: mmu@e6740000 { | ||
702 | compatible = "renesas,ipmmu-vmsa"; | ||
703 | reg = <0 0xe6740000 0 0x1000>; | ||
704 | interrupts = <0 198 IRQ_TYPE_LEVEL_HIGH>, | ||
705 | <0 199 IRQ_TYPE_LEVEL_HIGH>; | ||
706 | #iommu-cells = <1>; | ||
707 | }; | ||
708 | |||
709 | ipmmu_mp: mmu@ec680000 { | ||
710 | compatible = "renesas,ipmmu-vmsa"; | ||
711 | reg = <0 0xec680000 0 0x1000>; | ||
712 | interrupts = <0 226 IRQ_TYPE_LEVEL_HIGH>; | ||
713 | #iommu-cells = <1>; | ||
714 | status = "disabled"; | ||
715 | }; | ||
716 | |||
717 | ipmmu_mx: mmu@fe951000 { | ||
718 | compatible = "renesas,ipmmu-vmsa"; | ||
719 | reg = <0 0xfe951000 0 0x1000>; | ||
720 | interrupts = <0 222 IRQ_TYPE_LEVEL_HIGH>, | ||
721 | <0 221 IRQ_TYPE_LEVEL_HIGH>; | ||
722 | #iommu-cells = <1>; | ||
723 | }; | ||
724 | |||
725 | ipmmu_gp: mmu@e62a0000 { | ||
726 | compatible = "renesas,ipmmu-vmsa"; | ||
727 | reg = <0 0xe62a0000 0 0x1000>; | ||
728 | interrupts = <0 260 IRQ_TYPE_LEVEL_HIGH>, | ||
729 | <0 261 IRQ_TYPE_LEVEL_HIGH>; | ||
730 | #iommu-cells = <1>; | ||
731 | status = "disabled"; | ||
732 | }; | ||
588 | }; | 733 | }; |
diff --git a/arch/arm/boot/dts/sh73a0-kzm9g-reference.dts b/arch/arm/boot/dts/sh73a0-kzm9g-reference.dts deleted file mode 100644 index 6d32c87632d4..000000000000 --- a/arch/arm/boot/dts/sh73a0-kzm9g-reference.dts +++ /dev/null | |||
@@ -1,366 +0,0 @@ | |||
1 | /* | ||
2 | * Device Tree Source for the KZM-A9-GT board | ||
3 | * | ||
4 | * Copyright (C) 2012 Horms Solutions Ltd. | ||
5 | * | ||
6 | * Based on sh73a0-kzm9g.dts | ||
7 | * Copyright (C) 2012 Renesas Solutions Corp. | ||
8 | * | ||
9 | * This file is licensed under the terms of the GNU General Public License | ||
10 | * version 2. This program is licensed "as is" without any warranty of any | ||
11 | * kind, whether express or implied. | ||
12 | */ | ||
13 | |||
14 | /dts-v1/; | ||
15 | #include "sh73a0.dtsi" | ||
16 | #include <dt-bindings/gpio/gpio.h> | ||
17 | #include <dt-bindings/input/input.h> | ||
18 | #include <dt-bindings/interrupt-controller/irq.h> | ||
19 | |||
20 | / { | ||
21 | model = "KZM-A9-GT"; | ||
22 | compatible = "renesas,kzm9g-reference", "renesas,sh73a0"; | ||
23 | |||
24 | aliases { | ||
25 | serial4 = &scifa4; | ||
26 | }; | ||
27 | |||
28 | cpus { | ||
29 | cpu@0 { | ||
30 | cpu0-supply = <&vdd_dvfs>; | ||
31 | operating-points = < | ||
32 | /* kHz uV */ | ||
33 | 1196000 1315000 | ||
34 | 598000 1175000 | ||
35 | 398667 1065000 | ||
36 | >; | ||
37 | voltage-tolerance = <1>; /* 1% */ | ||
38 | }; | ||
39 | }; | ||
40 | |||
41 | chosen { | ||
42 | bootargs = "console=tty0 console=ttySC4,115200 root=/dev/nfs ip=dhcp ignore_loglevel rw"; | ||
43 | stdout-path = &scifa4; | ||
44 | }; | ||
45 | |||
46 | memory { | ||
47 | device_type = "memory"; | ||
48 | reg = <0x41000000 0x1e800000>; | ||
49 | }; | ||
50 | |||
51 | reg_1p8v: regulator@0 { | ||
52 | compatible = "regulator-fixed"; | ||
53 | regulator-name = "fixed-1.8V"; | ||
54 | regulator-min-microvolt = <1800000>; | ||
55 | regulator-max-microvolt = <1800000>; | ||
56 | regulator-always-on; | ||
57 | regulator-boot-on; | ||
58 | }; | ||
59 | |||
60 | reg_3p3v: regulator@1 { | ||
61 | compatible = "regulator-fixed"; | ||
62 | regulator-name = "fixed-3.3V"; | ||
63 | regulator-min-microvolt = <3300000>; | ||
64 | regulator-max-microvolt = <3300000>; | ||
65 | regulator-always-on; | ||
66 | regulator-boot-on; | ||
67 | }; | ||
68 | |||
69 | vmmc_sdhi0: regulator@2 { | ||
70 | compatible = "regulator-fixed"; | ||
71 | regulator-name = "SDHI0 Vcc"; | ||
72 | regulator-min-microvolt = <3300000>; | ||
73 | regulator-max-microvolt = <3300000>; | ||
74 | gpio = <&pfc 15 GPIO_ACTIVE_HIGH>; | ||
75 | enable-active-high; | ||
76 | }; | ||
77 | |||
78 | vmmc_sdhi2: regulator@3 { | ||
79 | compatible = "regulator-fixed"; | ||
80 | regulator-name = "SDHI2 Vcc"; | ||
81 | regulator-min-microvolt = <3300000>; | ||
82 | regulator-max-microvolt = <3300000>; | ||
83 | gpio = <&pfc 14 GPIO_ACTIVE_HIGH>; | ||
84 | enable-active-high; | ||
85 | }; | ||
86 | |||
87 | lan9220@10000000 { | ||
88 | compatible = "smsc,lan9220", "smsc,lan9115"; | ||
89 | reg = <0x10000000 0x100>; | ||
90 | phy-mode = "mii"; | ||
91 | interrupt-parent = <&irqpin0>; | ||
92 | interrupts = <3 IRQ_TYPE_EDGE_FALLING>; | ||
93 | reg-io-width = <4>; | ||
94 | smsc,irq-push-pull; | ||
95 | smsc,save-mac-address; | ||
96 | vddvario-supply = <®_1p8v>; | ||
97 | vdd33a-supply = <®_3p3v>; | ||
98 | }; | ||
99 | |||
100 | leds { | ||
101 | compatible = "gpio-leds"; | ||
102 | led1 { | ||
103 | gpios = <&pfc 20 GPIO_ACTIVE_LOW>; | ||
104 | label = "LED1"; | ||
105 | }; | ||
106 | led2 { | ||
107 | gpios = <&pfc 21 GPIO_ACTIVE_LOW>; | ||
108 | label = "LED2"; | ||
109 | }; | ||
110 | led3 { | ||
111 | gpios = <&pfc 22 GPIO_ACTIVE_LOW>; | ||
112 | label = "LED3"; | ||
113 | }; | ||
114 | led4 { | ||
115 | gpios = <&pfc 23 GPIO_ACTIVE_LOW>; | ||
116 | label = "LED4"; | ||
117 | }; | ||
118 | }; | ||
119 | |||
120 | keyboard { | ||
121 | compatible = "gpio-keys"; | ||
122 | |||
123 | back-key { | ||
124 | gpios = <&pcf8575 8 GPIO_ACTIVE_LOW>; | ||
125 | linux,code = <KEY_BACK>; | ||
126 | label = "SW3"; | ||
127 | }; | ||
128 | |||
129 | right-key { | ||
130 | gpios = <&pcf8575 9 GPIO_ACTIVE_LOW>; | ||
131 | linux,code = <KEY_RIGHT>; | ||
132 | label = "SW2-R"; | ||
133 | }; | ||
134 | |||
135 | left-key { | ||
136 | gpios = <&pcf8575 10 GPIO_ACTIVE_LOW>; | ||
137 | linux,code = <KEY_LEFT>; | ||
138 | label = "SW2-L"; | ||
139 | }; | ||
140 | |||
141 | enter-key { | ||
142 | gpios = <&pcf8575 11 GPIO_ACTIVE_LOW>; | ||
143 | linux,code = <KEY_ENTER>; | ||
144 | label = "SW2-P"; | ||
145 | }; | ||
146 | |||
147 | up-key { | ||
148 | gpios = <&pcf8575 12 GPIO_ACTIVE_LOW>; | ||
149 | linux,code = <KEY_UP>; | ||
150 | label = "SW2-U"; | ||
151 | }; | ||
152 | |||
153 | down-key { | ||
154 | gpios = <&pcf8575 13 GPIO_ACTIVE_LOW>; | ||
155 | linux,code = <KEY_DOWN>; | ||
156 | label = "SW2-D"; | ||
157 | }; | ||
158 | |||
159 | home-key { | ||
160 | gpios = <&pcf8575 14 GPIO_ACTIVE_LOW>; | ||
161 | linux,code = <KEY_HOME>; | ||
162 | label = "SW1"; | ||
163 | }; | ||
164 | }; | ||
165 | |||
166 | sound { | ||
167 | compatible = "simple-audio-card"; | ||
168 | simple-audio-card,format = "left_j"; | ||
169 | simple-audio-card,cpu { | ||
170 | sound-dai = <&sh_fsi2 0>; | ||
171 | }; | ||
172 | simple-audio-card,codec { | ||
173 | sound-dai = <&ak4648>; | ||
174 | bitclock-master; | ||
175 | frame-master; | ||
176 | system-clock-frequency = <11289600>; | ||
177 | }; | ||
178 | }; | ||
179 | }; | ||
180 | |||
181 | &cmt1 { | ||
182 | status = "okay"; | ||
183 | }; | ||
184 | |||
185 | &extal2_clk { | ||
186 | clock-frequency = <48000000>; | ||
187 | }; | ||
188 | |||
189 | &i2c0 { | ||
190 | status = "okay"; | ||
191 | as3711@40 { | ||
192 | compatible = "ams,as3711"; | ||
193 | reg = <0x40>; | ||
194 | |||
195 | regulators { | ||
196 | vdd_dvfs: sd1 { | ||
197 | regulator-name = "1.315V CPU"; | ||
198 | regulator-min-microvolt = <1050000>; | ||
199 | regulator-max-microvolt = <1350000>; | ||
200 | regulator-always-on; | ||
201 | regulator-boot-on; | ||
202 | }; | ||
203 | sd2 { | ||
204 | regulator-name = "1.8V"; | ||
205 | regulator-min-microvolt = <1800000>; | ||
206 | regulator-max-microvolt = <1800000>; | ||
207 | regulator-always-on; | ||
208 | regulator-boot-on; | ||
209 | }; | ||
210 | sd4 { | ||
211 | regulator-name = "1.215V"; | ||
212 | regulator-min-microvolt = <1215000>; | ||
213 | regulator-max-microvolt = <1235000>; | ||
214 | regulator-always-on; | ||
215 | regulator-boot-on; | ||
216 | }; | ||
217 | ldo2 { | ||
218 | regulator-name = "2.8V CPU"; | ||
219 | regulator-min-microvolt = <2800000>; | ||
220 | regulator-max-microvolt = <2800000>; | ||
221 | regulator-always-on; | ||
222 | regulator-boot-on; | ||
223 | }; | ||
224 | ldo3 { | ||
225 | regulator-name = "3.0V CPU"; | ||
226 | regulator-min-microvolt = <3000000>; | ||
227 | regulator-max-microvolt = <3000000>; | ||
228 | regulator-always-on; | ||
229 | regulator-boot-on; | ||
230 | }; | ||
231 | ldo4 { | ||
232 | regulator-name = "2.8V"; | ||
233 | regulator-min-microvolt = <2800000>; | ||
234 | regulator-max-microvolt = <2800000>; | ||
235 | regulator-always-on; | ||
236 | regulator-boot-on; | ||
237 | }; | ||
238 | ldo5 { | ||
239 | regulator-name = "2.8V #2"; | ||
240 | regulator-min-microvolt = <2800000>; | ||
241 | regulator-max-microvolt = <2800000>; | ||
242 | regulator-always-on; | ||
243 | regulator-boot-on; | ||
244 | }; | ||
245 | ldo7 { | ||
246 | regulator-name = "1.15V CPU"; | ||
247 | regulator-min-microvolt = <1150000>; | ||
248 | regulator-max-microvolt = <1150000>; | ||
249 | regulator-always-on; | ||
250 | regulator-boot-on; | ||
251 | }; | ||
252 | ldo8 { | ||
253 | regulator-name = "1.15V CPU #2"; | ||
254 | regulator-min-microvolt = <1150000>; | ||
255 | regulator-max-microvolt = <1150000>; | ||
256 | regulator-always-on; | ||
257 | regulator-boot-on; | ||
258 | }; | ||
259 | }; | ||
260 | }; | ||
261 | |||
262 | ak4648: ak4648@12 { | ||
263 | #sound-dai-cells = <0>; | ||
264 | compatible = "asahi-kasei,ak4648"; | ||
265 | reg = <0x12>; | ||
266 | }; | ||
267 | }; | ||
268 | |||
269 | &i2c3 { | ||
270 | pinctrl-0 = <&i2c3_pins>; | ||
271 | pinctrl-names = "default"; | ||
272 | status = "okay"; | ||
273 | |||
274 | pcf8575: gpio@20 { | ||
275 | compatible = "nxp,pcf8575"; | ||
276 | reg = <0x20>; | ||
277 | interrupt-parent = <&irqpin2>; | ||
278 | interrupts = <3 IRQ_TYPE_EDGE_FALLING>; | ||
279 | gpio-controller; | ||
280 | #gpio-cells = <2>; | ||
281 | interrupt-controller; | ||
282 | #interrupt-cells = <2>; | ||
283 | }; | ||
284 | }; | ||
285 | |||
286 | &mmcif { | ||
287 | pinctrl-0 = <&mmcif_pins>; | ||
288 | pinctrl-names = "default"; | ||
289 | |||
290 | bus-width = <8>; | ||
291 | vmmc-supply = <®_1p8v>; | ||
292 | status = "okay"; | ||
293 | }; | ||
294 | |||
295 | &pfc { | ||
296 | i2c3_pins: i2c3 { | ||
297 | renesas,groups = "i2c3_1"; | ||
298 | renesas,function = "i2c3"; | ||
299 | }; | ||
300 | |||
301 | mmcif_pins: mmc { | ||
302 | mux { | ||
303 | renesas,groups = "mmc0_data8_0", "mmc0_ctrl_0"; | ||
304 | renesas,function = "mmc0"; | ||
305 | }; | ||
306 | cfg { | ||
307 | renesas,groups = "mmc0_data8_0"; | ||
308 | renesas,pins = "PORT279"; | ||
309 | bias-pull-up; | ||
310 | }; | ||
311 | }; | ||
312 | |||
313 | scifa4_pins: serial4 { | ||
314 | renesas,groups = "scifa4_data", "scifa4_ctrl"; | ||
315 | renesas,function = "scifa4"; | ||
316 | }; | ||
317 | |||
318 | sdhi0_pins: sd0 { | ||
319 | renesas,groups = "sdhi0_data4", "sdhi0_ctrl", "sdhi0_cd", "sdhi0_wp"; | ||
320 | renesas,function = "sdhi0"; | ||
321 | }; | ||
322 | |||
323 | sdhi2_pins: sd2 { | ||
324 | renesas,groups = "sdhi2_data4", "sdhi2_ctrl"; | ||
325 | renesas,function = "sdhi2"; | ||
326 | }; | ||
327 | |||
328 | fsia_pins: sounda { | ||
329 | renesas,groups = "fsia_mclk_in", "fsia_sclk_in", | ||
330 | "fsia_data_in", "fsia_data_out"; | ||
331 | renesas,function = "fsia"; | ||
332 | }; | ||
333 | }; | ||
334 | |||
335 | &scifa4 { | ||
336 | pinctrl-0 = <&scifa4_pins>; | ||
337 | pinctrl-names = "default"; | ||
338 | |||
339 | status = "okay"; | ||
340 | }; | ||
341 | |||
342 | &sdhi0 { | ||
343 | pinctrl-0 = <&sdhi0_pins>; | ||
344 | pinctrl-names = "default"; | ||
345 | |||
346 | vmmc-supply = <&vmmc_sdhi0>; | ||
347 | bus-width = <4>; | ||
348 | status = "okay"; | ||
349 | }; | ||
350 | |||
351 | &sdhi2 { | ||
352 | pinctrl-0 = <&sdhi2_pins>; | ||
353 | pinctrl-names = "default"; | ||
354 | |||
355 | vmmc-supply = <&vmmc_sdhi2>; | ||
356 | bus-width = <4>; | ||
357 | broken-cd; | ||
358 | status = "okay"; | ||
359 | }; | ||
360 | |||
361 | &sh_fsi2 { | ||
362 | pinctrl-0 = <&fsia_pins>; | ||
363 | pinctrl-names = "default"; | ||
364 | |||
365 | status = "okay"; | ||
366 | }; | ||
diff --git a/arch/arm/boot/dts/sh73a0-kzm9g.dts b/arch/arm/boot/dts/sh73a0-kzm9g.dts index 27c5f426d172..022ba505f573 100644 --- a/arch/arm/boot/dts/sh73a0-kzm9g.dts +++ b/arch/arm/boot/dts/sh73a0-kzm9g.dts | |||
@@ -1,6 +1,9 @@ | |||
1 | /* | 1 | /* |
2 | * Device Tree Source for the KZM-A9-GT board | 2 | * Device Tree Source for the KZM-A9-GT board |
3 | * | 3 | * |
4 | * Copyright (C) 2012 Horms Solutions Ltd. | ||
5 | * | ||
6 | * Based on sh73a0-kzm9g.dts | ||
4 | * Copyright (C) 2012 Renesas Solutions Corp. | 7 | * Copyright (C) 2012 Renesas Solutions Corp. |
5 | * | 8 | * |
6 | * This file is licensed under the terms of the GNU General Public License | 9 | * This file is licensed under the terms of the GNU General Public License |
@@ -10,17 +13,388 @@ | |||
10 | 13 | ||
11 | /dts-v1/; | 14 | /dts-v1/; |
12 | #include "sh73a0.dtsi" | 15 | #include "sh73a0.dtsi" |
16 | #include <dt-bindings/gpio/gpio.h> | ||
17 | #include <dt-bindings/input/input.h> | ||
18 | #include <dt-bindings/interrupt-controller/irq.h> | ||
13 | 19 | ||
14 | / { | 20 | / { |
15 | model = "KZM-A9-GT"; | 21 | model = "KZM-A9-GT"; |
16 | compatible = "renesas,kzm9g", "renesas,sh73a0"; | 22 | compatible = "renesas,kzm9g", "renesas,sh73a0"; |
17 | 23 | ||
24 | aliases { | ||
25 | serial4 = &scifa4; | ||
26 | }; | ||
27 | |||
28 | cpus { | ||
29 | cpu@0 { | ||
30 | cpu0-supply = <&vdd_dvfs>; | ||
31 | operating-points = < | ||
32 | /* kHz uV */ | ||
33 | 1196000 1315000 | ||
34 | 598000 1175000 | ||
35 | 398667 1065000 | ||
36 | >; | ||
37 | voltage-tolerance = <1>; /* 1% */ | ||
38 | }; | ||
39 | }; | ||
40 | |||
18 | chosen { | 41 | chosen { |
19 | bootargs = "console=tty0 console=ttySC4,115200 root=/dev/nfs ip=dhcp ignore_loglevel earlyprintk=sh-sci.4,115200 rw"; | 42 | bootargs = "console=tty0 console=ttySC4,115200 root=/dev/nfs ip=dhcp ignore_loglevel rw"; |
43 | stdout-path = &scifa4; | ||
20 | }; | 44 | }; |
21 | 45 | ||
22 | memory { | 46 | memory { |
23 | device_type = "memory"; | 47 | device_type = "memory"; |
24 | reg = <0x41000000 0x1e800000>; | 48 | reg = <0x40000000 0x20000000>; |
49 | }; | ||
50 | |||
51 | reg_1p8v: regulator@0 { | ||
52 | compatible = "regulator-fixed"; | ||
53 | regulator-name = "fixed-1.8V"; | ||
54 | regulator-min-microvolt = <1800000>; | ||
55 | regulator-max-microvolt = <1800000>; | ||
56 | regulator-always-on; | ||
57 | regulator-boot-on; | ||
58 | }; | ||
59 | |||
60 | reg_3p3v: regulator@1 { | ||
61 | compatible = "regulator-fixed"; | ||
62 | regulator-name = "fixed-3.3V"; | ||
63 | regulator-min-microvolt = <3300000>; | ||
64 | regulator-max-microvolt = <3300000>; | ||
65 | regulator-always-on; | ||
66 | regulator-boot-on; | ||
67 | }; | ||
68 | |||
69 | vmmc_sdhi0: regulator@2 { | ||
70 | compatible = "regulator-fixed"; | ||
71 | regulator-name = "SDHI0 Vcc"; | ||
72 | regulator-min-microvolt = <3300000>; | ||
73 | regulator-max-microvolt = <3300000>; | ||
74 | gpio = <&pfc 15 GPIO_ACTIVE_HIGH>; | ||
75 | enable-active-high; | ||
76 | }; | ||
77 | |||
78 | vmmc_sdhi2: regulator@3 { | ||
79 | compatible = "regulator-fixed"; | ||
80 | regulator-name = "SDHI2 Vcc"; | ||
81 | regulator-min-microvolt = <3300000>; | ||
82 | regulator-max-microvolt = <3300000>; | ||
83 | gpio = <&pfc 14 GPIO_ACTIVE_HIGH>; | ||
84 | enable-active-high; | ||
85 | }; | ||
86 | |||
87 | leds { | ||
88 | compatible = "gpio-leds"; | ||
89 | led1 { | ||
90 | gpios = <&pfc 20 GPIO_ACTIVE_LOW>; | ||
91 | label = "LED1"; | ||
92 | }; | ||
93 | led2 { | ||
94 | gpios = <&pfc 21 GPIO_ACTIVE_LOW>; | ||
95 | label = "LED2"; | ||
96 | }; | ||
97 | led3 { | ||
98 | gpios = <&pfc 22 GPIO_ACTIVE_LOW>; | ||
99 | label = "LED3"; | ||
100 | }; | ||
101 | led4 { | ||
102 | gpios = <&pfc 23 GPIO_ACTIVE_LOW>; | ||
103 | label = "LED4"; | ||
104 | }; | ||
105 | }; | ||
106 | |||
107 | keyboard { | ||
108 | compatible = "gpio-keys"; | ||
109 | |||
110 | back-key { | ||
111 | gpios = <&pcf8575 8 GPIO_ACTIVE_LOW>; | ||
112 | linux,code = <KEY_BACK>; | ||
113 | label = "SW3"; | ||
114 | }; | ||
115 | |||
116 | right-key { | ||
117 | gpios = <&pcf8575 9 GPIO_ACTIVE_LOW>; | ||
118 | linux,code = <KEY_RIGHT>; | ||
119 | label = "SW2-R"; | ||
120 | }; | ||
121 | |||
122 | left-key { | ||
123 | gpios = <&pcf8575 10 GPIO_ACTIVE_LOW>; | ||
124 | linux,code = <KEY_LEFT>; | ||
125 | label = "SW2-L"; | ||
126 | }; | ||
127 | |||
128 | enter-key { | ||
129 | gpios = <&pcf8575 11 GPIO_ACTIVE_LOW>; | ||
130 | linux,code = <KEY_ENTER>; | ||
131 | label = "SW2-P"; | ||
132 | }; | ||
133 | |||
134 | up-key { | ||
135 | gpios = <&pcf8575 12 GPIO_ACTIVE_LOW>; | ||
136 | linux,code = <KEY_UP>; | ||
137 | label = "SW2-U"; | ||
138 | }; | ||
139 | |||
140 | down-key { | ||
141 | gpios = <&pcf8575 13 GPIO_ACTIVE_LOW>; | ||
142 | linux,code = <KEY_DOWN>; | ||
143 | label = "SW2-D"; | ||
144 | }; | ||
145 | |||
146 | home-key { | ||
147 | gpios = <&pcf8575 14 GPIO_ACTIVE_LOW>; | ||
148 | linux,code = <KEY_HOME>; | ||
149 | label = "SW1"; | ||
150 | }; | ||
151 | }; | ||
152 | |||
153 | sound { | ||
154 | compatible = "simple-audio-card"; | ||
155 | simple-audio-card,format = "left_j"; | ||
156 | simple-audio-card,cpu { | ||
157 | sound-dai = <&sh_fsi2 0>; | ||
158 | }; | ||
159 | simple-audio-card,codec { | ||
160 | sound-dai = <&ak4648>; | ||
161 | bitclock-master; | ||
162 | frame-master; | ||
163 | system-clock-frequency = <11289600>; | ||
164 | }; | ||
165 | }; | ||
166 | }; | ||
167 | |||
168 | &bsc { | ||
169 | ethernet@10000000 { | ||
170 | compatible = "smsc,lan9220", "smsc,lan9115"; | ||
171 | reg = <0x10000000 0x100>; | ||
172 | phy-mode = "mii"; | ||
173 | interrupt-parent = <&irqpin0>; | ||
174 | interrupts = <3 IRQ_TYPE_EDGE_FALLING>; | ||
175 | reg-io-width = <4>; | ||
176 | smsc,irq-push-pull; | ||
177 | smsc,save-mac-address; | ||
178 | vddvario-supply = <®_1p8v>; | ||
179 | vdd33a-supply = <®_3p3v>; | ||
180 | }; | ||
181 | }; | ||
182 | |||
183 | &cmt1 { | ||
184 | status = "okay"; | ||
185 | }; | ||
186 | |||
187 | &extal2_clk { | ||
188 | clock-frequency = <48000000>; | ||
189 | }; | ||
190 | |||
191 | &i2c0 { | ||
192 | status = "okay"; | ||
193 | |||
194 | compass@c { | ||
195 | compatible = "asahi-kasei,ak8975"; | ||
196 | reg = <0x0c>; | ||
197 | interrupt-parent = <&irqpin3>; | ||
198 | interrupts = <4 IRQ_TYPE_EDGE_FALLING>; | ||
199 | }; | ||
200 | |||
201 | ak4648: codec@12 { | ||
202 | compatible = "asahi-kasei,ak4648"; | ||
203 | reg = <0x12>; | ||
204 | #sound-dai-cells = <0>; | ||
205 | }; | ||
206 | |||
207 | accelerometer@1d { | ||
208 | compatible = "adi,adxl34x"; | ||
209 | reg = <0x1d>; | ||
210 | interrupt-parent = <&irqpin3>; | ||
211 | interrupts = <2 IRQ_TYPE_LEVEL_HIGH>, | ||
212 | <3 IRQ_TYPE_LEVEL_HIGH>; | ||
25 | }; | 213 | }; |
214 | |||
215 | rtc@32 { | ||
216 | compatible = "ricoh,r2025sd"; | ||
217 | reg = <0x32>; | ||
218 | }; | ||
219 | |||
220 | as3711@40 { | ||
221 | compatible = "ams,as3711"; | ||
222 | reg = <0x40>; | ||
223 | |||
224 | regulators { | ||
225 | vdd_dvfs: sd1 { | ||
226 | regulator-name = "1.315V CPU"; | ||
227 | regulator-min-microvolt = <1050000>; | ||
228 | regulator-max-microvolt = <1350000>; | ||
229 | regulator-always-on; | ||
230 | regulator-boot-on; | ||
231 | }; | ||
232 | sd2 { | ||
233 | regulator-name = "1.8V"; | ||
234 | regulator-min-microvolt = <1800000>; | ||
235 | regulator-max-microvolt = <1800000>; | ||
236 | regulator-always-on; | ||
237 | regulator-boot-on; | ||
238 | }; | ||
239 | sd4 { | ||
240 | regulator-name = "1.215V"; | ||
241 | regulator-min-microvolt = <1215000>; | ||
242 | regulator-max-microvolt = <1235000>; | ||
243 | regulator-always-on; | ||
244 | regulator-boot-on; | ||
245 | }; | ||
246 | ldo2 { | ||
247 | regulator-name = "2.8V CPU"; | ||
248 | regulator-min-microvolt = <2800000>; | ||
249 | regulator-max-microvolt = <2800000>; | ||
250 | regulator-always-on; | ||
251 | regulator-boot-on; | ||
252 | }; | ||
253 | ldo3 { | ||
254 | regulator-name = "3.0V CPU"; | ||
255 | regulator-min-microvolt = <3000000>; | ||
256 | regulator-max-microvolt = <3000000>; | ||
257 | regulator-always-on; | ||
258 | regulator-boot-on; | ||
259 | }; | ||
260 | ldo4 { | ||
261 | regulator-name = "2.8V"; | ||
262 | regulator-min-microvolt = <2800000>; | ||
263 | regulator-max-microvolt = <2800000>; | ||
264 | regulator-always-on; | ||
265 | regulator-boot-on; | ||
266 | }; | ||
267 | ldo5 { | ||
268 | regulator-name = "2.8V #2"; | ||
269 | regulator-min-microvolt = <2800000>; | ||
270 | regulator-max-microvolt = <2800000>; | ||
271 | regulator-always-on; | ||
272 | regulator-boot-on; | ||
273 | }; | ||
274 | ldo7 { | ||
275 | regulator-name = "1.15V CPU"; | ||
276 | regulator-min-microvolt = <1150000>; | ||
277 | regulator-max-microvolt = <1150000>; | ||
278 | regulator-always-on; | ||
279 | regulator-boot-on; | ||
280 | }; | ||
281 | ldo8 { | ||
282 | regulator-name = "1.15V CPU #2"; | ||
283 | regulator-min-microvolt = <1150000>; | ||
284 | regulator-max-microvolt = <1150000>; | ||
285 | regulator-always-on; | ||
286 | regulator-boot-on; | ||
287 | }; | ||
288 | }; | ||
289 | }; | ||
290 | }; | ||
291 | |||
292 | &i2c1 { | ||
293 | status = "okay"; | ||
294 | |||
295 | touchscreen@55 { | ||
296 | compatible = "sitronix,st1232"; | ||
297 | reg = <0x55>; | ||
298 | interrupt-parent = <&irqpin1>; | ||
299 | interrupts = <0 IRQ_TYPE_EDGE_FALLING>; | ||
300 | }; | ||
301 | }; | ||
302 | |||
303 | &i2c3 { | ||
304 | pinctrl-0 = <&i2c3_pins>; | ||
305 | pinctrl-names = "default"; | ||
306 | status = "okay"; | ||
307 | |||
308 | pcf8575: gpio@20 { | ||
309 | compatible = "nxp,pcf8575"; | ||
310 | reg = <0x20>; | ||
311 | interrupt-parent = <&irqpin2>; | ||
312 | interrupts = <3 IRQ_TYPE_EDGE_FALLING>; | ||
313 | gpio-controller; | ||
314 | #gpio-cells = <2>; | ||
315 | interrupt-controller; | ||
316 | #interrupt-cells = <2>; | ||
317 | }; | ||
318 | }; | ||
319 | |||
320 | &mmcif { | ||
321 | pinctrl-0 = <&mmcif_pins>; | ||
322 | pinctrl-names = "default"; | ||
323 | |||
324 | bus-width = <8>; | ||
325 | vmmc-supply = <®_1p8v>; | ||
326 | status = "okay"; | ||
327 | }; | ||
328 | |||
329 | &pfc { | ||
330 | i2c3_pins: i2c3 { | ||
331 | renesas,groups = "i2c3_1"; | ||
332 | renesas,function = "i2c3"; | ||
333 | }; | ||
334 | |||
335 | mmcif_pins: mmc { | ||
336 | mux { | ||
337 | renesas,groups = "mmc0_data8_0", "mmc0_ctrl_0"; | ||
338 | renesas,function = "mmc0"; | ||
339 | }; | ||
340 | cfg { | ||
341 | renesas,groups = "mmc0_data8_0"; | ||
342 | renesas,pins = "PORT279"; | ||
343 | bias-pull-up; | ||
344 | }; | ||
345 | }; | ||
346 | |||
347 | scifa4_pins: serial4 { | ||
348 | renesas,groups = "scifa4_data", "scifa4_ctrl"; | ||
349 | renesas,function = "scifa4"; | ||
350 | }; | ||
351 | |||
352 | sdhi0_pins: sd0 { | ||
353 | renesas,groups = "sdhi0_data4", "sdhi0_ctrl", "sdhi0_cd", "sdhi0_wp"; | ||
354 | renesas,function = "sdhi0"; | ||
355 | }; | ||
356 | |||
357 | sdhi2_pins: sd2 { | ||
358 | renesas,groups = "sdhi2_data4", "sdhi2_ctrl"; | ||
359 | renesas,function = "sdhi2"; | ||
360 | }; | ||
361 | |||
362 | fsia_pins: sounda { | ||
363 | renesas,groups = "fsia_mclk_in", "fsia_sclk_in", | ||
364 | "fsia_data_in", "fsia_data_out"; | ||
365 | renesas,function = "fsia"; | ||
366 | }; | ||
367 | }; | ||
368 | |||
369 | &scifa4 { | ||
370 | pinctrl-0 = <&scifa4_pins>; | ||
371 | pinctrl-names = "default"; | ||
372 | |||
373 | status = "okay"; | ||
374 | }; | ||
375 | |||
376 | &sdhi0 { | ||
377 | pinctrl-0 = <&sdhi0_pins>; | ||
378 | pinctrl-names = "default"; | ||
379 | |||
380 | vmmc-supply = <&vmmc_sdhi0>; | ||
381 | bus-width = <4>; | ||
382 | status = "okay"; | ||
383 | }; | ||
384 | |||
385 | &sdhi2 { | ||
386 | pinctrl-0 = <&sdhi2_pins>; | ||
387 | pinctrl-names = "default"; | ||
388 | |||
389 | vmmc-supply = <&vmmc_sdhi2>; | ||
390 | bus-width = <4>; | ||
391 | broken-cd; | ||
392 | status = "okay"; | ||
393 | }; | ||
394 | |||
395 | &sh_fsi2 { | ||
396 | pinctrl-0 = <&fsia_pins>; | ||
397 | pinctrl-names = "default"; | ||
398 | |||
399 | status = "okay"; | ||
26 | }; | 400 | }; |
diff --git a/arch/arm/boot/dts/sh73a0.dtsi b/arch/arm/boot/dts/sh73a0.dtsi index 2dfd5b44255d..45b539ce4d35 100644 --- a/arch/arm/boot/dts/sh73a0.dtsi +++ b/arch/arm/boot/dts/sh73a0.dtsi | |||
@@ -11,6 +11,7 @@ | |||
11 | /include/ "skeleton.dtsi" | 11 | /include/ "skeleton.dtsi" |
12 | 12 | ||
13 | #include <dt-bindings/clock/sh73a0-clock.h> | 13 | #include <dt-bindings/clock/sh73a0-clock.h> |
14 | #include <dt-bindings/interrupt-controller/arm-gic.h> | ||
14 | #include <dt-bindings/interrupt-controller/irq.h> | 15 | #include <dt-bindings/interrupt-controller/irq.h> |
15 | 16 | ||
16 | / { | 17 | / { |
@@ -26,15 +27,24 @@ | |||
26 | compatible = "arm,cortex-a9"; | 27 | compatible = "arm,cortex-a9"; |
27 | reg = <0>; | 28 | reg = <0>; |
28 | clock-frequency = <1196000000>; | 29 | clock-frequency = <1196000000>; |
30 | power-domains = <&pd_a2sl>; | ||
29 | }; | 31 | }; |
30 | cpu@1 { | 32 | cpu@1 { |
31 | device_type = "cpu"; | 33 | device_type = "cpu"; |
32 | compatible = "arm,cortex-a9"; | 34 | compatible = "arm,cortex-a9"; |
33 | reg = <1>; | 35 | reg = <1>; |
34 | clock-frequency = <1196000000>; | 36 | clock-frequency = <1196000000>; |
37 | power-domains = <&pd_a2sl>; | ||
35 | }; | 38 | }; |
36 | }; | 39 | }; |
37 | 40 | ||
41 | timer@f0000600 { | ||
42 | compatible = "arm,cortex-a9-twd-timer"; | ||
43 | reg = <0xf0000600 0x20>; | ||
44 | interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_HIGH)>; | ||
45 | clocks = <&twd_clk>; | ||
46 | }; | ||
47 | |||
38 | gic: interrupt-controller@f0001000 { | 48 | gic: interrupt-controller@f0001000 { |
39 | compatible = "arm,cortex-a9-gic"; | 49 | compatible = "arm,cortex-a9-gic"; |
40 | #interrupt-cells = <3>; | 50 | #interrupt-cells = <3>; |
@@ -49,6 +59,7 @@ | |||
49 | interrupts = <0 37 IRQ_TYPE_LEVEL_HIGH>, | 59 | interrupts = <0 37 IRQ_TYPE_LEVEL_HIGH>, |
50 | <0 38 IRQ_TYPE_LEVEL_HIGH>; | 60 | <0 38 IRQ_TYPE_LEVEL_HIGH>; |
51 | interrupt-names = "sec", "temp"; | 61 | interrupt-names = "sec", "temp"; |
62 | power-domains = <&pd_a4bc1>; | ||
52 | }; | 63 | }; |
53 | 64 | ||
54 | sbsc1: memory-controller@fe400000 { | 65 | sbsc1: memory-controller@fe400000 { |
@@ -57,6 +68,7 @@ | |||
57 | interrupts = <0 35 IRQ_TYPE_LEVEL_HIGH>, | 68 | interrupts = <0 35 IRQ_TYPE_LEVEL_HIGH>, |
58 | <0 36 IRQ_TYPE_LEVEL_HIGH>; | 69 | <0 36 IRQ_TYPE_LEVEL_HIGH>; |
59 | interrupt-names = "sec", "temp"; | 70 | interrupt-names = "sec", "temp"; |
71 | power-domains = <&pd_a4bc0>; | ||
60 | }; | 72 | }; |
61 | 73 | ||
62 | pmu { | 74 | pmu { |
@@ -69,11 +81,12 @@ | |||
69 | compatible = "renesas,cmt-48-sh73a0", "renesas,cmt-48"; | 81 | compatible = "renesas,cmt-48-sh73a0", "renesas,cmt-48"; |
70 | reg = <0xe6138000 0x200>; | 82 | reg = <0xe6138000 0x200>; |
71 | interrupts = <0 65 IRQ_TYPE_LEVEL_HIGH>; | 83 | interrupts = <0 65 IRQ_TYPE_LEVEL_HIGH>; |
84 | clocks = <&mstp3_clks SH73A0_CLK_CMT1>; | ||
85 | clock-names = "fck"; | ||
86 | power-domains = <&pd_c5>; | ||
72 | 87 | ||
73 | renesas,channels-mask = <0x3f>; | 88 | renesas,channels-mask = <0x3f>; |
74 | 89 | ||
75 | clocks = <&mstp3_clks SH73A0_CLK_CMT1>; | ||
76 | clock-names = "fck"; | ||
77 | status = "disabled"; | 90 | status = "disabled"; |
78 | }; | 91 | }; |
79 | 92 | ||
@@ -94,6 +107,9 @@ | |||
94 | 0 6 IRQ_TYPE_LEVEL_HIGH | 107 | 0 6 IRQ_TYPE_LEVEL_HIGH |
95 | 0 7 IRQ_TYPE_LEVEL_HIGH | 108 | 0 7 IRQ_TYPE_LEVEL_HIGH |
96 | 0 8 IRQ_TYPE_LEVEL_HIGH>; | 109 | 0 8 IRQ_TYPE_LEVEL_HIGH>; |
110 | clocks = <&mstp5_clks SH73A0_CLK_INTCA0>; | ||
111 | power-domains = <&pd_a4s>; | ||
112 | control-parent; | ||
97 | }; | 113 | }; |
98 | 114 | ||
99 | irqpin1: irqpin@e6900004 { | 115 | irqpin1: irqpin@e6900004 { |
@@ -113,6 +129,8 @@ | |||
113 | 0 14 IRQ_TYPE_LEVEL_HIGH | 129 | 0 14 IRQ_TYPE_LEVEL_HIGH |
114 | 0 15 IRQ_TYPE_LEVEL_HIGH | 130 | 0 15 IRQ_TYPE_LEVEL_HIGH |
115 | 0 16 IRQ_TYPE_LEVEL_HIGH>; | 131 | 0 16 IRQ_TYPE_LEVEL_HIGH>; |
132 | clocks = <&mstp5_clks SH73A0_CLK_INTCA0>; | ||
133 | power-domains = <&pd_a4s>; | ||
116 | control-parent; | 134 | control-parent; |
117 | }; | 135 | }; |
118 | 136 | ||
@@ -133,6 +151,9 @@ | |||
133 | 0 22 IRQ_TYPE_LEVEL_HIGH | 151 | 0 22 IRQ_TYPE_LEVEL_HIGH |
134 | 0 23 IRQ_TYPE_LEVEL_HIGH | 152 | 0 23 IRQ_TYPE_LEVEL_HIGH |
135 | 0 24 IRQ_TYPE_LEVEL_HIGH>; | 153 | 0 24 IRQ_TYPE_LEVEL_HIGH>; |
154 | clocks = <&mstp5_clks SH73A0_CLK_INTCA0>; | ||
155 | power-domains = <&pd_a4s>; | ||
156 | control-parent; | ||
136 | }; | 157 | }; |
137 | 158 | ||
138 | irqpin3: irqpin@e690000c { | 159 | irqpin3: irqpin@e690000c { |
@@ -152,6 +173,9 @@ | |||
152 | 0 30 IRQ_TYPE_LEVEL_HIGH | 173 | 0 30 IRQ_TYPE_LEVEL_HIGH |
153 | 0 31 IRQ_TYPE_LEVEL_HIGH | 174 | 0 31 IRQ_TYPE_LEVEL_HIGH |
154 | 0 32 IRQ_TYPE_LEVEL_HIGH>; | 175 | 0 32 IRQ_TYPE_LEVEL_HIGH>; |
176 | clocks = <&mstp5_clks SH73A0_CLK_INTCA0>; | ||
177 | power-domains = <&pd_a4s>; | ||
178 | control-parent; | ||
155 | }; | 179 | }; |
156 | 180 | ||
157 | i2c0: i2c@e6820000 { | 181 | i2c0: i2c@e6820000 { |
@@ -164,6 +188,7 @@ | |||
164 | 0 169 IRQ_TYPE_LEVEL_HIGH | 188 | 0 169 IRQ_TYPE_LEVEL_HIGH |
165 | 0 170 IRQ_TYPE_LEVEL_HIGH>; | 189 | 0 170 IRQ_TYPE_LEVEL_HIGH>; |
166 | clocks = <&mstp1_clks SH73A0_CLK_IIC0>; | 190 | clocks = <&mstp1_clks SH73A0_CLK_IIC0>; |
191 | power-domains = <&pd_a3sp>; | ||
167 | status = "disabled"; | 192 | status = "disabled"; |
168 | }; | 193 | }; |
169 | 194 | ||
@@ -177,6 +202,7 @@ | |||
177 | 0 53 IRQ_TYPE_LEVEL_HIGH | 202 | 0 53 IRQ_TYPE_LEVEL_HIGH |
178 | 0 54 IRQ_TYPE_LEVEL_HIGH>; | 203 | 0 54 IRQ_TYPE_LEVEL_HIGH>; |
179 | clocks = <&mstp3_clks SH73A0_CLK_IIC1>; | 204 | clocks = <&mstp3_clks SH73A0_CLK_IIC1>; |
205 | power-domains = <&pd_a3sp>; | ||
180 | status = "disabled"; | 206 | status = "disabled"; |
181 | }; | 207 | }; |
182 | 208 | ||
@@ -190,6 +216,7 @@ | |||
190 | 0 173 IRQ_TYPE_LEVEL_HIGH | 216 | 0 173 IRQ_TYPE_LEVEL_HIGH |
191 | 0 174 IRQ_TYPE_LEVEL_HIGH>; | 217 | 0 174 IRQ_TYPE_LEVEL_HIGH>; |
192 | clocks = <&mstp0_clks SH73A0_CLK_IIC2>; | 218 | clocks = <&mstp0_clks SH73A0_CLK_IIC2>; |
219 | power-domains = <&pd_a3sp>; | ||
193 | status = "disabled"; | 220 | status = "disabled"; |
194 | }; | 221 | }; |
195 | 222 | ||
@@ -203,6 +230,7 @@ | |||
203 | 0 185 IRQ_TYPE_LEVEL_HIGH | 230 | 0 185 IRQ_TYPE_LEVEL_HIGH |
204 | 0 186 IRQ_TYPE_LEVEL_HIGH>; | 231 | 0 186 IRQ_TYPE_LEVEL_HIGH>; |
205 | clocks = <&mstp4_clks SH73A0_CLK_IIC3>; | 232 | clocks = <&mstp4_clks SH73A0_CLK_IIC3>; |
233 | power-domains = <&pd_a3sp>; | ||
206 | status = "disabled"; | 234 | status = "disabled"; |
207 | }; | 235 | }; |
208 | 236 | ||
@@ -216,6 +244,7 @@ | |||
216 | 0 189 IRQ_TYPE_LEVEL_HIGH | 244 | 0 189 IRQ_TYPE_LEVEL_HIGH |
217 | 0 190 IRQ_TYPE_LEVEL_HIGH>; | 245 | 0 190 IRQ_TYPE_LEVEL_HIGH>; |
218 | clocks = <&mstp4_clks SH73A0_CLK_IIC4>; | 246 | clocks = <&mstp4_clks SH73A0_CLK_IIC4>; |
247 | power-domains = <&pd_c5>; | ||
219 | status = "disabled"; | 248 | status = "disabled"; |
220 | }; | 249 | }; |
221 | 250 | ||
@@ -225,6 +254,7 @@ | |||
225 | interrupts = <0 140 IRQ_TYPE_LEVEL_HIGH | 254 | interrupts = <0 140 IRQ_TYPE_LEVEL_HIGH |
226 | 0 141 IRQ_TYPE_LEVEL_HIGH>; | 255 | 0 141 IRQ_TYPE_LEVEL_HIGH>; |
227 | clocks = <&mstp3_clks SH73A0_CLK_MMCIF0>; | 256 | clocks = <&mstp3_clks SH73A0_CLK_MMCIF0>; |
257 | power-domains = <&pd_a3sp>; | ||
228 | reg-io-width = <4>; | 258 | reg-io-width = <4>; |
229 | status = "disabled"; | 259 | status = "disabled"; |
230 | }; | 260 | }; |
@@ -236,6 +266,7 @@ | |||
236 | 0 84 IRQ_TYPE_LEVEL_HIGH | 266 | 0 84 IRQ_TYPE_LEVEL_HIGH |
237 | 0 85 IRQ_TYPE_LEVEL_HIGH>; | 267 | 0 85 IRQ_TYPE_LEVEL_HIGH>; |
238 | clocks = <&mstp3_clks SH73A0_CLK_SDHI0>; | 268 | clocks = <&mstp3_clks SH73A0_CLK_SDHI0>; |
269 | power-domains = <&pd_a3sp>; | ||
239 | cap-sd-highspeed; | 270 | cap-sd-highspeed; |
240 | status = "disabled"; | 271 | status = "disabled"; |
241 | }; | 272 | }; |
@@ -247,6 +278,7 @@ | |||
247 | interrupts = <0 88 IRQ_TYPE_LEVEL_HIGH | 278 | interrupts = <0 88 IRQ_TYPE_LEVEL_HIGH |
248 | 0 89 IRQ_TYPE_LEVEL_HIGH>; | 279 | 0 89 IRQ_TYPE_LEVEL_HIGH>; |
249 | clocks = <&mstp3_clks SH73A0_CLK_SDHI1>; | 280 | clocks = <&mstp3_clks SH73A0_CLK_SDHI1>; |
281 | power-domains = <&pd_a3sp>; | ||
250 | toshiba,mmc-wrprotect-disable; | 282 | toshiba,mmc-wrprotect-disable; |
251 | cap-sd-highspeed; | 283 | cap-sd-highspeed; |
252 | status = "disabled"; | 284 | status = "disabled"; |
@@ -258,6 +290,7 @@ | |||
258 | interrupts = <0 104 IRQ_TYPE_LEVEL_HIGH | 290 | interrupts = <0 104 IRQ_TYPE_LEVEL_HIGH |
259 | 0 105 IRQ_TYPE_LEVEL_HIGH>; | 291 | 0 105 IRQ_TYPE_LEVEL_HIGH>; |
260 | clocks = <&mstp3_clks SH73A0_CLK_SDHI2>; | 292 | clocks = <&mstp3_clks SH73A0_CLK_SDHI2>; |
293 | power-domains = <&pd_a3sp>; | ||
261 | toshiba,mmc-wrprotect-disable; | 294 | toshiba,mmc-wrprotect-disable; |
262 | cap-sd-highspeed; | 295 | cap-sd-highspeed; |
263 | status = "disabled"; | 296 | status = "disabled"; |
@@ -269,6 +302,7 @@ | |||
269 | interrupts = <0 72 IRQ_TYPE_LEVEL_HIGH>; | 302 | interrupts = <0 72 IRQ_TYPE_LEVEL_HIGH>; |
270 | clocks = <&mstp2_clks SH73A0_CLK_SCIFA0>; | 303 | clocks = <&mstp2_clks SH73A0_CLK_SCIFA0>; |
271 | clock-names = "sci_ick"; | 304 | clock-names = "sci_ick"; |
305 | power-domains = <&pd_a3sp>; | ||
272 | status = "disabled"; | 306 | status = "disabled"; |
273 | }; | 307 | }; |
274 | 308 | ||
@@ -278,6 +312,7 @@ | |||
278 | interrupts = <0 73 IRQ_TYPE_LEVEL_HIGH>; | 312 | interrupts = <0 73 IRQ_TYPE_LEVEL_HIGH>; |
279 | clocks = <&mstp2_clks SH73A0_CLK_SCIFA1>; | 313 | clocks = <&mstp2_clks SH73A0_CLK_SCIFA1>; |
280 | clock-names = "sci_ick"; | 314 | clock-names = "sci_ick"; |
315 | power-domains = <&pd_a3sp>; | ||
281 | status = "disabled"; | 316 | status = "disabled"; |
282 | }; | 317 | }; |
283 | 318 | ||
@@ -287,6 +322,7 @@ | |||
287 | interrupts = <0 74 IRQ_TYPE_LEVEL_HIGH>; | 322 | interrupts = <0 74 IRQ_TYPE_LEVEL_HIGH>; |
288 | clocks = <&mstp2_clks SH73A0_CLK_SCIFA2>; | 323 | clocks = <&mstp2_clks SH73A0_CLK_SCIFA2>; |
289 | clock-names = "sci_ick"; | 324 | clock-names = "sci_ick"; |
325 | power-domains = <&pd_a3sp>; | ||
290 | status = "disabled"; | 326 | status = "disabled"; |
291 | }; | 327 | }; |
292 | 328 | ||
@@ -296,6 +332,7 @@ | |||
296 | interrupts = <0 75 IRQ_TYPE_LEVEL_HIGH>; | 332 | interrupts = <0 75 IRQ_TYPE_LEVEL_HIGH>; |
297 | clocks = <&mstp2_clks SH73A0_CLK_SCIFA3>; | 333 | clocks = <&mstp2_clks SH73A0_CLK_SCIFA3>; |
298 | clock-names = "sci_ick"; | 334 | clock-names = "sci_ick"; |
335 | power-domains = <&pd_a3sp>; | ||
299 | status = "disabled"; | 336 | status = "disabled"; |
300 | }; | 337 | }; |
301 | 338 | ||
@@ -305,6 +342,7 @@ | |||
305 | interrupts = <0 78 IRQ_TYPE_LEVEL_HIGH>; | 342 | interrupts = <0 78 IRQ_TYPE_LEVEL_HIGH>; |
306 | clocks = <&mstp2_clks SH73A0_CLK_SCIFA4>; | 343 | clocks = <&mstp2_clks SH73A0_CLK_SCIFA4>; |
307 | clock-names = "sci_ick"; | 344 | clock-names = "sci_ick"; |
345 | power-domains = <&pd_a3sp>; | ||
308 | status = "disabled"; | 346 | status = "disabled"; |
309 | }; | 347 | }; |
310 | 348 | ||
@@ -314,6 +352,7 @@ | |||
314 | interrupts = <0 79 IRQ_TYPE_LEVEL_HIGH>; | 352 | interrupts = <0 79 IRQ_TYPE_LEVEL_HIGH>; |
315 | clocks = <&mstp2_clks SH73A0_CLK_SCIFA5>; | 353 | clocks = <&mstp2_clks SH73A0_CLK_SCIFA5>; |
316 | clock-names = "sci_ick"; | 354 | clock-names = "sci_ick"; |
355 | power-domains = <&pd_a3sp>; | ||
317 | status = "disabled"; | 356 | status = "disabled"; |
318 | }; | 357 | }; |
319 | 358 | ||
@@ -323,6 +362,7 @@ | |||
323 | interrupts = <0 156 IRQ_TYPE_LEVEL_HIGH>; | 362 | interrupts = <0 156 IRQ_TYPE_LEVEL_HIGH>; |
324 | clocks = <&mstp3_clks SH73A0_CLK_SCIFA6>; | 363 | clocks = <&mstp3_clks SH73A0_CLK_SCIFA6>; |
325 | clock-names = "sci_ick"; | 364 | clock-names = "sci_ick"; |
365 | power-domains = <&pd_a3sp>; | ||
326 | status = "disabled"; | 366 | status = "disabled"; |
327 | }; | 367 | }; |
328 | 368 | ||
@@ -332,6 +372,7 @@ | |||
332 | interrupts = <0 143 IRQ_TYPE_LEVEL_HIGH>; | 372 | interrupts = <0 143 IRQ_TYPE_LEVEL_HIGH>; |
333 | clocks = <&mstp2_clks SH73A0_CLK_SCIFA7>; | 373 | clocks = <&mstp2_clks SH73A0_CLK_SCIFA7>; |
334 | clock-names = "sci_ick"; | 374 | clock-names = "sci_ick"; |
375 | power-domains = <&pd_a3sp>; | ||
335 | status = "disabled"; | 376 | status = "disabled"; |
336 | }; | 377 | }; |
337 | 378 | ||
@@ -341,6 +382,7 @@ | |||
341 | interrupts = <0 80 IRQ_TYPE_LEVEL_HIGH>; | 382 | interrupts = <0 80 IRQ_TYPE_LEVEL_HIGH>; |
342 | clocks = <&mstp2_clks SH73A0_CLK_SCIFB>; | 383 | clocks = <&mstp2_clks SH73A0_CLK_SCIFB>; |
343 | clock-names = "sci_ick"; | 384 | clock-names = "sci_ick"; |
385 | power-domains = <&pd_a3sp>; | ||
344 | status = "disabled"; | 386 | status = "disabled"; |
345 | }; | 387 | }; |
346 | 388 | ||
@@ -359,6 +401,117 @@ | |||
359 | <&irqpin2 4 0>, <&irqpin2 5 0>, <&irqpin2 6 0>, <&irqpin2 7 0>, | 401 | <&irqpin2 4 0>, <&irqpin2 5 0>, <&irqpin2 6 0>, <&irqpin2 7 0>, |
360 | <&irqpin3 0 0>, <&irqpin3 1 0>, <&irqpin3 2 0>, <&irqpin3 3 0>, | 402 | <&irqpin3 0 0>, <&irqpin3 1 0>, <&irqpin3 2 0>, <&irqpin3 3 0>, |
361 | <&irqpin3 4 0>, <&irqpin3 5 0>, <&irqpin3 6 0>, <&irqpin3 7 0>; | 403 | <&irqpin3 4 0>, <&irqpin3 5 0>, <&irqpin3 6 0>, <&irqpin3 7 0>; |
404 | power-domains = <&pd_c5>; | ||
405 | }; | ||
406 | |||
407 | sysc: system-controller@e6180000 { | ||
408 | compatible = "renesas,sysc-sh73a0", "renesas,sysc-rmobile"; | ||
409 | reg = <0xe6180000 0x8000>, <0xe6188000 0x8000>; | ||
410 | |||
411 | pm-domains { | ||
412 | pd_c5: c5 { | ||
413 | #address-cells = <1>; | ||
414 | #size-cells = <0>; | ||
415 | #power-domain-cells = <0>; | ||
416 | |||
417 | pd_c4: c4@0 { | ||
418 | reg = <0>; | ||
419 | #power-domain-cells = <0>; | ||
420 | }; | ||
421 | |||
422 | pd_d4: d4@1 { | ||
423 | reg = <1>; | ||
424 | #power-domain-cells = <0>; | ||
425 | }; | ||
426 | |||
427 | pd_a4bc0: a4bc0@4 { | ||
428 | reg = <4>; | ||
429 | #power-domain-cells = <0>; | ||
430 | }; | ||
431 | |||
432 | pd_a4bc1: a4bc1@5 { | ||
433 | reg = <5>; | ||
434 | #power-domain-cells = <0>; | ||
435 | }; | ||
436 | |||
437 | pd_a4lc0: a4lc0@6 { | ||
438 | reg = <6>; | ||
439 | #power-domain-cells = <0>; | ||
440 | }; | ||
441 | |||
442 | pd_a4lc1: a4lc1@7 { | ||
443 | reg = <7>; | ||
444 | #power-domain-cells = <0>; | ||
445 | }; | ||
446 | |||
447 | pd_a4mp: a4mp@8 { | ||
448 | reg = <8>; | ||
449 | #address-cells = <1>; | ||
450 | #size-cells = <0>; | ||
451 | #power-domain-cells = <0>; | ||
452 | |||
453 | pd_a3mp: a3mp@9 { | ||
454 | reg = <9>; | ||
455 | #power-domain-cells = <0>; | ||
456 | }; | ||
457 | |||
458 | pd_a3vc: a3vc@10 { | ||
459 | reg = <10>; | ||
460 | #power-domain-cells = <0>; | ||
461 | }; | ||
462 | }; | ||
463 | |||
464 | pd_a4rm: a4rm@12 { | ||
465 | reg = <12>; | ||
466 | #address-cells = <1>; | ||
467 | #size-cells = <0>; | ||
468 | #power-domain-cells = <0>; | ||
469 | |||
470 | pd_a3r: a3r@13 { | ||
471 | reg = <13>; | ||
472 | #address-cells = <1>; | ||
473 | #size-cells = <0>; | ||
474 | #power-domain-cells = <0>; | ||
475 | |||
476 | pd_a2rv: a2rv@14 { | ||
477 | reg = <14>; | ||
478 | #address-cells = <1>; | ||
479 | #size-cells = <0>; | ||
480 | #power-domain-cells = <0>; | ||
481 | }; | ||
482 | }; | ||
483 | }; | ||
484 | |||
485 | pd_a4s: a4s@16 { | ||
486 | reg = <16>; | ||
487 | #address-cells = <1>; | ||
488 | #size-cells = <0>; | ||
489 | #power-domain-cells = <0>; | ||
490 | |||
491 | pd_a3sp: a3sp@17 { | ||
492 | reg = <17>; | ||
493 | #power-domain-cells = <0>; | ||
494 | }; | ||
495 | |||
496 | pd_a3sg: a3sg@18 { | ||
497 | reg = <18>; | ||
498 | #power-domain-cells = <0>; | ||
499 | }; | ||
500 | |||
501 | pd_a3sm: a3sm@19 { | ||
502 | reg = <19>; | ||
503 | #address-cells = <1>; | ||
504 | #size-cells = <0>; | ||
505 | #power-domain-cells = <0>; | ||
506 | |||
507 | pd_a2sl: a2sl@20 { | ||
508 | reg = <20>; | ||
509 | #power-domain-cells = <0>; | ||
510 | }; | ||
511 | }; | ||
512 | }; | ||
513 | }; | ||
514 | }; | ||
362 | }; | 515 | }; |
363 | 516 | ||
364 | sh_fsi2: sound@ec230000 { | 517 | sh_fsi2: sound@ec230000 { |
@@ -366,9 +519,22 @@ | |||
366 | compatible = "renesas,fsi2-sh73a0", "renesas,sh_fsi2"; | 519 | compatible = "renesas,fsi2-sh73a0", "renesas,sh_fsi2"; |
367 | reg = <0xec230000 0x400>; | 520 | reg = <0xec230000 0x400>; |
368 | interrupts = <0 146 0x4>; | 521 | interrupts = <0 146 0x4>; |
522 | power-domains = <&pd_a4mp>; | ||
369 | status = "disabled"; | 523 | status = "disabled"; |
370 | }; | 524 | }; |
371 | 525 | ||
526 | bsc: bus@fec10000 { | ||
527 | compatible = "renesas,bsc-sh73a0", "renesas,bsc", | ||
528 | "simple-pm-bus"; | ||
529 | #address-cells = <1>; | ||
530 | #size-cells = <1>; | ||
531 | ranges = <0 0 0x20000000>; | ||
532 | reg = <0xfec10000 0x400>; | ||
533 | interrupts = <0 39 IRQ_TYPE_LEVEL_HIGH>; | ||
534 | clocks = <&zb_clk>; | ||
535 | power-domains = <&pd_a4s>; | ||
536 | }; | ||
537 | |||
372 | clocks { | 538 | clocks { |
373 | #address-cells = <1>; | 539 | #address-cells = <1>; |
374 | #size-cells = <1>; | 540 | #size-cells = <1>; |
@@ -426,133 +592,159 @@ | |||
426 | vclk1_clk: vclk1_clk@e6150008 { | 592 | vclk1_clk: vclk1_clk@e6150008 { |
427 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; | 593 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; |
428 | reg = <0xe6150008 4>; | 594 | reg = <0xe6150008 4>; |
429 | clocks = <&pll1_div2_clk>; | 595 | clocks = <&pll1_div2_clk>, <&cpg_clocks SH73A0_CLK_PLL2>, |
596 | <&extcki_clk>, <&extal2_clk>, <&main_div2_clk>, | ||
597 | <&extalr_clk>, <&cpg_clocks SH73A0_CLK_MAIN>, | ||
598 | <0>; | ||
430 | #clock-cells = <0>; | 599 | #clock-cells = <0>; |
431 | clock-output-names = "vclk1"; | 600 | clock-output-names = "vclk1"; |
432 | }; | 601 | }; |
433 | vclk2_clk: vclk2_clk@e615000c { | 602 | vclk2_clk: vclk2_clk@e615000c { |
434 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; | 603 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; |
435 | reg = <0xe615000c 4>; | 604 | reg = <0xe615000c 4>; |
436 | clocks = <&pll1_div2_clk>; | 605 | clocks = <&pll1_div2_clk>, <&cpg_clocks SH73A0_CLK_PLL2>, |
606 | <&extcki_clk>, <&extal2_clk>, <&main_div2_clk>, | ||
607 | <&extalr_clk>, <&cpg_clocks SH73A0_CLK_MAIN>, | ||
608 | <0>; | ||
437 | #clock-cells = <0>; | 609 | #clock-cells = <0>; |
438 | clock-output-names = "vclk2"; | 610 | clock-output-names = "vclk2"; |
439 | }; | 611 | }; |
440 | vclk3_clk: vclk3_clk@e615001c { | 612 | vclk3_clk: vclk3_clk@e615001c { |
441 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; | 613 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; |
442 | reg = <0xe615001c 4>; | 614 | reg = <0xe615001c 4>; |
443 | clocks = <&pll1_div2_clk>; | 615 | clocks = <&pll1_div2_clk>, <&cpg_clocks SH73A0_CLK_PLL2>, |
616 | <&extcki_clk>, <&extal2_clk>, <&main_div2_clk>, | ||
617 | <&extalr_clk>, <&cpg_clocks SH73A0_CLK_MAIN>, | ||
618 | <0>; | ||
444 | #clock-cells = <0>; | 619 | #clock-cells = <0>; |
445 | clock-output-names = "vclk3"; | 620 | clock-output-names = "vclk3"; |
446 | }; | 621 | }; |
447 | zb_clk: zb_clk@e6150010 { | 622 | zb_clk: zb_clk@e6150010 { |
448 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; | 623 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; |
449 | reg = <0xe6150010 4>; | 624 | reg = <0xe6150010 4>; |
450 | clocks = <&pll1_div2_clk>; | 625 | clocks = <&pll1_div2_clk>, <0>, |
626 | <&cpg_clocks SH73A0_CLK_PLL2>, <0>; | ||
451 | #clock-cells = <0>; | 627 | #clock-cells = <0>; |
452 | clock-output-names = "zb"; | 628 | clock-output-names = "zb"; |
453 | }; | 629 | }; |
454 | flctl_clk: flctl_clk@e6150014 { | 630 | flctl_clk: flctl_clk@e6150014 { |
455 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; | 631 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; |
456 | reg = <0xe6150014 4>; | 632 | reg = <0xe6150014 4>; |
457 | clocks = <&pll1_div2_clk>; | 633 | clocks = <&pll1_div2_clk>, <0>, |
634 | <&cpg_clocks SH73A0_CLK_PLL2>, <0>; | ||
458 | #clock-cells = <0>; | 635 | #clock-cells = <0>; |
459 | clock-output-names = "flctlck"; | 636 | clock-output-names = "flctlck"; |
460 | }; | 637 | }; |
461 | sdhi0_clk: sdhi0_clk@e6150074 { | 638 | sdhi0_clk: sdhi0_clk@e6150074 { |
462 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; | 639 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; |
463 | reg = <0xe6150074 4>; | 640 | reg = <0xe6150074 4>; |
464 | clocks = <&pll1_div2_clk>; | 641 | clocks = <&pll1_div2_clk>, <&cpg_clocks SH73A0_CLK_PLL2>, |
642 | <&pll1_div13_clk>, <0>; | ||
465 | #clock-cells = <0>; | 643 | #clock-cells = <0>; |
466 | clock-output-names = "sdhi0ck"; | 644 | clock-output-names = "sdhi0ck"; |
467 | }; | 645 | }; |
468 | sdhi1_clk: sdhi1_clk@e6150078 { | 646 | sdhi1_clk: sdhi1_clk@e6150078 { |
469 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; | 647 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; |
470 | reg = <0xe6150078 4>; | 648 | reg = <0xe6150078 4>; |
471 | clocks = <&pll1_div2_clk>; | 649 | clocks = <&pll1_div2_clk>, <&cpg_clocks SH73A0_CLK_PLL2>, |
650 | <&pll1_div13_clk>, <0>; | ||
472 | #clock-cells = <0>; | 651 | #clock-cells = <0>; |
473 | clock-output-names = "sdhi1ck"; | 652 | clock-output-names = "sdhi1ck"; |
474 | }; | 653 | }; |
475 | sdhi2_clk: sdhi2_clk@e615007c { | 654 | sdhi2_clk: sdhi2_clk@e615007c { |
476 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; | 655 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; |
477 | reg = <0xe615007c 4>; | 656 | reg = <0xe615007c 4>; |
478 | clocks = <&pll1_div2_clk>; | 657 | clocks = <&pll1_div2_clk>, <&cpg_clocks SH73A0_CLK_PLL2>, |
658 | <&pll1_div13_clk>, <0>; | ||
479 | #clock-cells = <0>; | 659 | #clock-cells = <0>; |
480 | clock-output-names = "sdhi2ck"; | 660 | clock-output-names = "sdhi2ck"; |
481 | }; | 661 | }; |
482 | fsia_clk: fsia_clk@e6150018 { | 662 | fsia_clk: fsia_clk@e6150018 { |
483 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; | 663 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; |
484 | reg = <0xe6150018 4>; | 664 | reg = <0xe6150018 4>; |
485 | clocks = <&pll1_div2_clk>; | 665 | clocks = <&pll1_div2_clk>, <&cpg_clocks SH73A0_CLK_PLL2>, |
666 | <&fsiack_clk>, <&fsiack_clk>; | ||
486 | #clock-cells = <0>; | 667 | #clock-cells = <0>; |
487 | clock-output-names = "fsia"; | 668 | clock-output-names = "fsia"; |
488 | }; | 669 | }; |
489 | fsib_clk: fsib_clk@e6150090 { | 670 | fsib_clk: fsib_clk@e6150090 { |
490 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; | 671 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; |
491 | reg = <0xe6150090 4>; | 672 | reg = <0xe6150090 4>; |
492 | clocks = <&pll1_div2_clk>; | 673 | clocks = <&pll1_div2_clk>, <&cpg_clocks SH73A0_CLK_PLL2>, |
674 | <&fsibck_clk>, <&fsibck_clk>; | ||
493 | #clock-cells = <0>; | 675 | #clock-cells = <0>; |
494 | clock-output-names = "fsib"; | 676 | clock-output-names = "fsib"; |
495 | }; | 677 | }; |
496 | sub_clk: sub_clk@e6150080 { | 678 | sub_clk: sub_clk@e6150080 { |
497 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; | 679 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; |
498 | reg = <0xe6150080 4>; | 680 | reg = <0xe6150080 4>; |
499 | clocks = <&extal2_clk>; | 681 | clocks = <&pll1_div2_clk>, <&cpg_clocks SH73A0_CLK_PLL2>, |
682 | <&extal2_clk>, <&extal2_clk>; | ||
500 | #clock-cells = <0>; | 683 | #clock-cells = <0>; |
501 | clock-output-names = "sub"; | 684 | clock-output-names = "sub"; |
502 | }; | 685 | }; |
503 | spua_clk: spua_clk@e6150084 { | 686 | spua_clk: spua_clk@e6150084 { |
504 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; | 687 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; |
505 | reg = <0xe6150084 4>; | 688 | reg = <0xe6150084 4>; |
506 | clocks = <&pll1_div2_clk>; | 689 | clocks = <&pll1_div2_clk>, <&cpg_clocks SH73A0_CLK_PLL2>, |
690 | <&extal2_clk>, <&extal2_clk>; | ||
507 | #clock-cells = <0>; | 691 | #clock-cells = <0>; |
508 | clock-output-names = "spua"; | 692 | clock-output-names = "spua"; |
509 | }; | 693 | }; |
510 | spuv_clk: spuv_clk@e6150094 { | 694 | spuv_clk: spuv_clk@e6150094 { |
511 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; | 695 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; |
512 | reg = <0xe6150094 4>; | 696 | reg = <0xe6150094 4>; |
513 | clocks = <&pll1_div2_clk>; | 697 | clocks = <&pll1_div2_clk>, <&cpg_clocks SH73A0_CLK_PLL2>, |
698 | <&extal2_clk>, <&extal2_clk>; | ||
514 | #clock-cells = <0>; | 699 | #clock-cells = <0>; |
515 | clock-output-names = "spuv"; | 700 | clock-output-names = "spuv"; |
516 | }; | 701 | }; |
517 | msu_clk: msu_clk@e6150088 { | 702 | msu_clk: msu_clk@e6150088 { |
518 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; | 703 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; |
519 | reg = <0xe6150088 4>; | 704 | reg = <0xe6150088 4>; |
520 | clocks = <&pll1_div2_clk>; | 705 | clocks = <&pll1_div2_clk>, <0>, |
706 | <&cpg_clocks SH73A0_CLK_PLL2>, <0>; | ||
521 | #clock-cells = <0>; | 707 | #clock-cells = <0>; |
522 | clock-output-names = "msu"; | 708 | clock-output-names = "msu"; |
523 | }; | 709 | }; |
524 | hsi_clk: hsi_clk@e615008c { | 710 | hsi_clk: hsi_clk@e615008c { |
525 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; | 711 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; |
526 | reg = <0xe615008c 4>; | 712 | reg = <0xe615008c 4>; |
527 | clocks = <&pll1_div2_clk>; | 713 | clocks = <&pll1_div2_clk>, <&cpg_clocks SH73A0_CLK_PLL2>, |
714 | <&pll1_div7_clk>, <0>; | ||
528 | #clock-cells = <0>; | 715 | #clock-cells = <0>; |
529 | clock-output-names = "hsi"; | 716 | clock-output-names = "hsi"; |
530 | }; | 717 | }; |
531 | mfg1_clk: mfg1_clk@e6150098 { | 718 | mfg1_clk: mfg1_clk@e6150098 { |
532 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; | 719 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; |
533 | reg = <0xe6150098 4>; | 720 | reg = <0xe6150098 4>; |
534 | clocks = <&pll1_div2_clk>; | 721 | clocks = <&pll1_div2_clk>, <0>, |
722 | <&cpg_clocks SH73A0_CLK_PLL2>, <0>; | ||
535 | #clock-cells = <0>; | 723 | #clock-cells = <0>; |
536 | clock-output-names = "mfg1"; | 724 | clock-output-names = "mfg1"; |
537 | }; | 725 | }; |
538 | mfg2_clk: mfg2_clk@e615009c { | 726 | mfg2_clk: mfg2_clk@e615009c { |
539 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; | 727 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; |
540 | reg = <0xe615009c 4>; | 728 | reg = <0xe615009c 4>; |
541 | clocks = <&pll1_div2_clk>; | 729 | clocks = <&pll1_div2_clk>, <0>, |
730 | <&cpg_clocks SH73A0_CLK_PLL2>, <0>; | ||
542 | #clock-cells = <0>; | 731 | #clock-cells = <0>; |
543 | clock-output-names = "mfg2"; | 732 | clock-output-names = "mfg2"; |
544 | }; | 733 | }; |
545 | dsit_clk: dsit_clk@e6150060 { | 734 | dsit_clk: dsit_clk@e6150060 { |
546 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; | 735 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; |
547 | reg = <0xe6150060 4>; | 736 | reg = <0xe6150060 4>; |
548 | clocks = <&pll1_div2_clk>; | 737 | clocks = <&pll1_div2_clk>, <0>, |
738 | <&cpg_clocks SH73A0_CLK_PLL2>, <0>; | ||
549 | #clock-cells = <0>; | 739 | #clock-cells = <0>; |
550 | clock-output-names = "dsit"; | 740 | clock-output-names = "dsit"; |
551 | }; | 741 | }; |
552 | dsi0p_clk: dsi0p_clk@e6150064 { | 742 | dsi0p_clk: dsi0p_clk@e6150064 { |
553 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; | 743 | compatible = "renesas,sh73a0-div6-clock", "renesas,cpg-div6-clock"; |
554 | reg = <0xe6150064 4>; | 744 | reg = <0xe6150064 4>; |
555 | clocks = <&pll1_div2_clk>; | 745 | clocks = <&pll1_div2_clk>, <&cpg_clocks SH73A0_CLK_PLL2>, |
746 | <&cpg_clocks SH73A0_CLK_MAIN>, <&extal2_clk>, | ||
747 | <&extcki_clk>, <0>, <0>, <0>; | ||
556 | #clock-cells = <0>; | 748 | #clock-cells = <0>; |
557 | clock-output-names = "dsi0pck"; | 749 | clock-output-names = "dsi0pck"; |
558 | }; | 750 | }; |
@@ -695,5 +887,16 @@ | |||
695 | clock-output-names = | 887 | clock-output-names = |
696 | "iic3", "iic4", "keysc"; | 888 | "iic3", "iic4", "keysc"; |
697 | }; | 889 | }; |
890 | mstp5_clks: mstp5_clks@e6150144 { | ||
891 | compatible = "renesas,sh73a0-mstp-clocks", "renesas,cpg-mstp-clocks"; | ||
892 | reg = <0xe6150144 4>, <0xe615003c 4>; | ||
893 | clocks = <&cpg_clocks SH73A0_CLK_HP>; | ||
894 | #clock-cells = <1>; | ||
895 | clock-indices = < | ||
896 | SH73A0_CLK_INTCA0 | ||
897 | >; | ||
898 | clock-output-names = | ||
899 | "intca0"; | ||
900 | }; | ||
698 | }; | 901 | }; |
699 | }; | 902 | }; |
diff --git a/arch/arm/mach-shmobile/Kconfig b/arch/arm/mach-shmobile/Kconfig index 485961a4de1d..c2952f58e768 100644 --- a/arch/arm/mach-shmobile/Kconfig +++ b/arch/arm/mach-shmobile/Kconfig | |||
@@ -82,6 +82,11 @@ config ARCH_R8A7794 | |||
82 | bool "R-Car E2 (R8A77940)" | 82 | bool "R-Car E2 (R8A77940)" |
83 | select ARCH_RCAR_GEN2 | 83 | select ARCH_RCAR_GEN2 |
84 | 84 | ||
85 | config ARCH_SH73A0 | ||
86 | bool "SH-Mobile AG5 (R8A73A00)" | ||
87 | select ARCH_RMOBILE | ||
88 | select RENESAS_INTC_IRQPIN | ||
89 | |||
85 | comment "Renesas ARM SoCs Board Type" | 90 | comment "Renesas ARM SoCs Board Type" |
86 | 91 | ||
87 | config MACH_MARZEN | 92 | config MACH_MARZEN |
@@ -172,20 +177,6 @@ config MACH_KZM9G | |||
172 | select SND_SOC_AK4642 if SND_SIMPLE_CARD | 177 | select SND_SOC_AK4642 if SND_SIMPLE_CARD |
173 | select USE_OF | 178 | select USE_OF |
174 | 179 | ||
175 | config MACH_KZM9G_REFERENCE | ||
176 | bool "KZM-A9-GT board - Reference Device Tree Implementation" | ||
177 | depends on ARCH_SH73A0 | ||
178 | select ARCH_REQUIRE_GPIOLIB | ||
179 | select REGULATOR_FIXED_VOLTAGE if REGULATOR | ||
180 | select SND_SOC_AK4642 if SND_SIMPLE_CARD | ||
181 | select USE_OF | ||
182 | ---help--- | ||
183 | Use reference implementation of KZM-A9-GT board support | ||
184 | which makes as greater use of device tree at the expense | ||
185 | of not supporting a number of devices. | ||
186 | |||
187 | This is intended to aid developers | ||
188 | |||
189 | comment "Renesas ARM SoCs System Configuration" | 180 | comment "Renesas ARM SoCs System Configuration" |
190 | 181 | ||
191 | config CPU_HAS_INTEVT | 182 | config CPU_HAS_INTEVT |
diff --git a/arch/arm/mach-shmobile/Makefile b/arch/arm/mach-shmobile/Makefile index ba7bb7847ae3..d3aca07b51a8 100644 --- a/arch/arm/mach-shmobile/Makefile +++ b/arch/arm/mach-shmobile/Makefile | |||
@@ -6,7 +6,7 @@ | |||
6 | obj-y := timer.o console.o | 6 | obj-y := timer.o console.o |
7 | 7 | ||
8 | # CPU objects | 8 | # CPU objects |
9 | obj-$(CONFIG_ARCH_SH73A0) += setup-sh73a0.o intc-sh73a0.o pm-sh73a0.o | 9 | obj-$(CONFIG_ARCH_SH73A0) += setup-sh73a0.o pm-sh73a0.o |
10 | obj-$(CONFIG_ARCH_R8A73A4) += setup-r8a73a4.o | 10 | obj-$(CONFIG_ARCH_R8A73A4) += setup-r8a73a4.o |
11 | obj-$(CONFIG_ARCH_R8A7740) += setup-r8a7740.o pm-r8a7740.o | 11 | obj-$(CONFIG_ARCH_R8A7740) += setup-r8a7740.o pm-r8a7740.o |
12 | obj-$(CONFIG_ARCH_R8A7778) += setup-r8a7778.o | 12 | obj-$(CONFIG_ARCH_R8A7778) += setup-r8a7778.o |
@@ -56,8 +56,7 @@ obj-$(CONFIG_MACH_BOCKW) += board-bockw.o | |||
56 | obj-$(CONFIG_MACH_BOCKW_REFERENCE) += board-bockw-reference.o | 56 | obj-$(CONFIG_MACH_BOCKW_REFERENCE) += board-bockw-reference.o |
57 | obj-$(CONFIG_MACH_MARZEN) += board-marzen.o | 57 | obj-$(CONFIG_MACH_MARZEN) += board-marzen.o |
58 | obj-$(CONFIG_MACH_ARMADILLO800EVA) += board-armadillo800eva.o | 58 | obj-$(CONFIG_MACH_ARMADILLO800EVA) += board-armadillo800eva.o |
59 | obj-$(CONFIG_MACH_KZM9G) += board-kzm9g.o | 59 | obj-$(CONFIG_MACH_KZM9G) += board-kzm9g.o intc-sh73a0.o |
60 | obj-$(CONFIG_MACH_KZM9G_REFERENCE) += board-kzm9g-reference.o | ||
61 | endif | 60 | endif |
62 | 61 | ||
63 | # Framework support | 62 | # Framework support |
diff --git a/arch/arm/mach-shmobile/Makefile.boot b/arch/arm/mach-shmobile/Makefile.boot index da9fc6d4a1da..e1ef19cef89c 100644 --- a/arch/arm/mach-shmobile/Makefile.boot +++ b/arch/arm/mach-shmobile/Makefile.boot | |||
@@ -4,7 +4,6 @@ loadaddr-$(CONFIG_MACH_ARMADILLO800EVA) += 0x40008000 | |||
4 | loadaddr-$(CONFIG_MACH_BOCKW) += 0x60008000 | 4 | loadaddr-$(CONFIG_MACH_BOCKW) += 0x60008000 |
5 | loadaddr-$(CONFIG_MACH_BOCKW_REFERENCE) += 0x60008000 | 5 | loadaddr-$(CONFIG_MACH_BOCKW_REFERENCE) += 0x60008000 |
6 | loadaddr-$(CONFIG_MACH_KZM9G) += 0x41008000 | 6 | loadaddr-$(CONFIG_MACH_KZM9G) += 0x41008000 |
7 | loadaddr-$(CONFIG_MACH_KZM9G_REFERENCE) += 0x41008000 | ||
8 | loadaddr-$(CONFIG_MACH_MARZEN) += 0x60008000 | 7 | loadaddr-$(CONFIG_MACH_MARZEN) += 0x60008000 |
9 | 8 | ||
10 | __ZRELADDR := $(sort $(loadaddr-y)) | 9 | __ZRELADDR := $(sort $(loadaddr-y)) |
diff --git a/arch/arm/mach-shmobile/board-kzm9g-reference.c b/arch/arm/mach-shmobile/board-kzm9g-reference.c deleted file mode 100644 index 2e82e44ab852..000000000000 --- a/arch/arm/mach-shmobile/board-kzm9g-reference.c +++ /dev/null | |||
@@ -1,62 +0,0 @@ | |||
1 | /* | ||
2 | * KZM-A9-GT board support - Reference Device Tree Implementation | ||
3 | * | ||
4 | * Copyright (C) 2012 Horms Solutions Ltd. | ||
5 | * | ||
6 | * Based on board-kzm9g.c | ||
7 | * Copyright (C) 2012 Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> | ||
8 | * | ||
9 | * This program is free software; you can redistribute it and/or modify | ||
10 | * it under the terms of the GNU General Public License as published by | ||
11 | * the Free Software Foundation; version 2 of the License. | ||
12 | * | ||
13 | * This program is distributed in the hope that it will be useful, | ||
14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
16 | * GNU General Public License for more details. | ||
17 | */ | ||
18 | |||
19 | #include <linux/delay.h> | ||
20 | #include <linux/io.h> | ||
21 | #include <linux/irq.h> | ||
22 | #include <linux/input.h> | ||
23 | #include <linux/of_platform.h> | ||
24 | |||
25 | #include <asm/hardware/cache-l2x0.h> | ||
26 | #include <asm/mach-types.h> | ||
27 | #include <asm/mach/arch.h> | ||
28 | |||
29 | #include "common.h" | ||
30 | #include "sh73a0.h" | ||
31 | |||
32 | static void __init kzm_init(void) | ||
33 | { | ||
34 | sh73a0_add_standard_devices_dt(); | ||
35 | |||
36 | #ifdef CONFIG_CACHE_L2X0 | ||
37 | /* Shared attribute override enable, 64K*8way */ | ||
38 | l2x0_init(IOMEM(0xf0100000), 0x00400000, 0xc20f0fff); | ||
39 | #endif | ||
40 | } | ||
41 | |||
42 | #define RESCNT2 IOMEM(0xe6188020) | ||
43 | static void kzm9g_restart(enum reboot_mode mode, const char *cmd) | ||
44 | { | ||
45 | /* Do soft power on reset */ | ||
46 | writel((1 << 31), RESCNT2); | ||
47 | } | ||
48 | |||
49 | static const char *kzm9g_boards_compat_dt[] __initdata = { | ||
50 | "renesas,kzm9g-reference", | ||
51 | NULL, | ||
52 | }; | ||
53 | |||
54 | DT_MACHINE_START(KZM9G_DT, "kzm9g-reference") | ||
55 | .smp = smp_ops(sh73a0_smp_ops), | ||
56 | .map_io = sh73a0_map_io, | ||
57 | .init_early = shmobile_init_delay, | ||
58 | .init_machine = kzm_init, | ||
59 | .init_late = shmobile_init_late, | ||
60 | .restart = kzm9g_restart, | ||
61 | .dt_compat = kzm9g_boards_compat_dt, | ||
62 | MACHINE_END | ||
diff --git a/arch/arm/mach-shmobile/include/mach/zboot.h b/arch/arm/mach-shmobile/include/mach/zboot.h index 9d9cb09c9336..175ee05465da 100644 --- a/arch/arm/mach-shmobile/include/mach/zboot.h +++ b/arch/arm/mach-shmobile/include/mach/zboot.h | |||
@@ -9,7 +9,7 @@ | |||
9 | * | 9 | * |
10 | **************************************************/ | 10 | **************************************************/ |
11 | 11 | ||
12 | #if defined(CONFIG_MACH_KZM9G) || defined(CONFIG_MACH_KZM9G_REFERENCE) | 12 | #ifdef CONFIG_MACH_KZM9G |
13 | #define MEMORY_START 0x43000000 | 13 | #define MEMORY_START 0x43000000 |
14 | #include "mach/head-kzm9g.txt" | 14 | #include "mach/head-kzm9g.txt" |
15 | #else | 15 | #else |
diff --git a/arch/arm/mach-shmobile/setup-sh73a0.c b/arch/arm/mach-shmobile/setup-sh73a0.c index faea74a2151b..fb2ab7590af8 100644 --- a/arch/arm/mach-shmobile/setup-sh73a0.c +++ b/arch/arm/mach-shmobile/setup-sh73a0.c | |||
@@ -30,6 +30,7 @@ | |||
30 | #include <linux/platform_data/sh_ipmmu.h> | 30 | #include <linux/platform_data/sh_ipmmu.h> |
31 | #include <linux/platform_data/irq-renesas-intc-irqpin.h> | 31 | #include <linux/platform_data/irq-renesas-intc-irqpin.h> |
32 | 32 | ||
33 | #include <asm/hardware/cache-l2x0.h> | ||
33 | #include <asm/mach-types.h> | 34 | #include <asm/mach-types.h> |
34 | #include <asm/mach/map.h> | 35 | #include <asm/mach/map.h> |
35 | #include <asm/mach/arch.h> | 36 | #include <asm/mach/arch.h> |
@@ -784,22 +785,15 @@ void __init sh73a0_add_early_devices(void) | |||
784 | 785 | ||
785 | #ifdef CONFIG_USE_OF | 786 | #ifdef CONFIG_USE_OF |
786 | 787 | ||
787 | void __init sh73a0_add_standard_devices_dt(void) | 788 | static void __init sh73a0_generic_init(void) |
788 | { | 789 | { |
789 | /* clocks are setup late during boot in the case of DT */ | 790 | #ifdef CONFIG_CACHE_L2X0 |
790 | #ifndef CONFIG_COMMON_CLK | 791 | /* Shared attribute override enable, 64K*8way */ |
791 | sh73a0_clock_init(); | 792 | l2x0_init(IOMEM(0xf0100000), 0x00400000, 0xc20f0fff); |
792 | #endif | 793 | #endif |
793 | of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL); | 794 | of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL); |
794 | } | 795 | } |
795 | 796 | ||
796 | #define RESCNT2 IOMEM(0xe6188020) | ||
797 | static void sh73a0_restart(enum reboot_mode mode, const char *cmd) | ||
798 | { | ||
799 | /* Do soft power on reset */ | ||
800 | writel((1 << 31), RESCNT2); | ||
801 | } | ||
802 | |||
803 | static const char *sh73a0_boards_compat_dt[] __initdata = { | 797 | static const char *sh73a0_boards_compat_dt[] __initdata = { |
804 | "renesas,sh73a0", | 798 | "renesas,sh73a0", |
805 | NULL, | 799 | NULL, |
@@ -809,9 +803,8 @@ DT_MACHINE_START(SH73A0_DT, "Generic SH73A0 (Flattened Device Tree)") | |||
809 | .smp = smp_ops(sh73a0_smp_ops), | 803 | .smp = smp_ops(sh73a0_smp_ops), |
810 | .map_io = sh73a0_map_io, | 804 | .map_io = sh73a0_map_io, |
811 | .init_early = shmobile_init_delay, | 805 | .init_early = shmobile_init_delay, |
812 | .init_machine = sh73a0_add_standard_devices_dt, | 806 | .init_machine = sh73a0_generic_init, |
813 | .init_late = shmobile_init_late, | 807 | .init_late = shmobile_init_late, |
814 | .restart = sh73a0_restart, | ||
815 | .dt_compat = sh73a0_boards_compat_dt, | 808 | .dt_compat = sh73a0_boards_compat_dt, |
816 | MACHINE_END | 809 | MACHINE_END |
817 | #endif /* CONFIG_USE_OF */ | 810 | #endif /* CONFIG_USE_OF */ |
diff --git a/arch/arm/mach-shmobile/sh73a0.h b/arch/arm/mach-shmobile/sh73a0.h index f037c64b14fc..5a80f18b4fa0 100644 --- a/arch/arm/mach-shmobile/sh73a0.h +++ b/arch/arm/mach-shmobile/sh73a0.h | |||
@@ -77,7 +77,6 @@ extern void sh73a0_map_io(void); | |||
77 | extern void sh73a0_earlytimer_init(void); | 77 | extern void sh73a0_earlytimer_init(void); |
78 | extern void sh73a0_add_early_devices(void); | 78 | extern void sh73a0_add_early_devices(void); |
79 | extern void sh73a0_add_standard_devices(void); | 79 | extern void sh73a0_add_standard_devices(void); |
80 | extern void sh73a0_add_standard_devices_dt(void); | ||
81 | extern void sh73a0_clock_init(void); | 80 | extern void sh73a0_clock_init(void); |
82 | extern void sh73a0_pinmux_init(void); | 81 | extern void sh73a0_pinmux_init(void); |
83 | extern void sh73a0_pm_init(void); | 82 | extern void sh73a0_pm_init(void); |
diff --git a/arch/arm/mach-shmobile/smp-r8a7790.c b/arch/arm/mach-shmobile/smp-r8a7790.c index 9c3da1345b8b..a5bef873d37e 100644 --- a/arch/arm/mach-shmobile/smp-r8a7790.c +++ b/arch/arm/mach-shmobile/smp-r8a7790.c | |||
@@ -37,11 +37,11 @@ static struct rcar_sysc_ch r8a7790_ca7_scu = { | |||
37 | 37 | ||
38 | static struct rcar_apmu_config r8a7790_apmu_config[] = { | 38 | static struct rcar_apmu_config r8a7790_apmu_config[] = { |
39 | { | 39 | { |
40 | .iomem = DEFINE_RES_MEM(0xe6152000, 0x88), | 40 | .iomem = DEFINE_RES_MEM(0xe6152000, 0x188), |
41 | .cpus = { 0, 1, 2, 3 }, | 41 | .cpus = { 0, 1, 2, 3 }, |
42 | }, | 42 | }, |
43 | { | 43 | { |
44 | .iomem = DEFINE_RES_MEM(0xe6151000, 0x88), | 44 | .iomem = DEFINE_RES_MEM(0xe6151000, 0x188), |
45 | .cpus = { 0x100, 0x0101, 0x102, 0x103 }, | 45 | .cpus = { 0x100, 0x0101, 0x102, 0x103 }, |
46 | } | 46 | } |
47 | }; | 47 | }; |
diff --git a/arch/arm/mach-shmobile/smp-r8a7791.c b/arch/arm/mach-shmobile/smp-r8a7791.c index 7e49e0a52e32..de1d92dc1323 100644 --- a/arch/arm/mach-shmobile/smp-r8a7791.c +++ b/arch/arm/mach-shmobile/smp-r8a7791.c | |||
@@ -27,7 +27,7 @@ | |||
27 | 27 | ||
28 | static struct rcar_apmu_config r8a7791_apmu_config[] = { | 28 | static struct rcar_apmu_config r8a7791_apmu_config[] = { |
29 | { | 29 | { |
30 | .iomem = DEFINE_RES_MEM(0xe6152000, 0x88), | 30 | .iomem = DEFINE_RES_MEM(0xe6152000, 0x188), |
31 | .cpus = { 0, 1 }, | 31 | .cpus = { 0, 1 }, |
32 | } | 32 | } |
33 | }; | 33 | }; |
diff --git a/arch/arm/mach-shmobile/smp-sh73a0.c b/arch/arm/mach-shmobile/smp-sh73a0.c index c16dbfe9836c..2106d6b76a06 100644 --- a/arch/arm/mach-shmobile/smp-sh73a0.c +++ b/arch/arm/mach-shmobile/smp-sh73a0.c | |||
@@ -33,7 +33,7 @@ | |||
33 | 33 | ||
34 | #define SH73A0_SCU_BASE 0xf0000000 | 34 | #define SH73A0_SCU_BASE 0xf0000000 |
35 | 35 | ||
36 | #ifdef CONFIG_HAVE_ARM_TWD | 36 | #if defined(CONFIG_HAVE_ARM_TWD) && !defined(CONFIG_ARCH_MULTIPLATFORM) |
37 | static DEFINE_TWD_LOCAL_TIMER(twd_local_timer, SH73A0_SCU_BASE + 0x600, 29); | 37 | static DEFINE_TWD_LOCAL_TIMER(twd_local_timer, SH73A0_SCU_BASE + 0x600, 29); |
38 | void __init sh73a0_register_twd(void) | 38 | void __init sh73a0_register_twd(void) |
39 | { | 39 | { |
diff --git a/include/dt-bindings/clock/r8a7790-clock.h b/include/dt-bindings/clock/r8a7790-clock.h index 91940271cf83..3f2c6b198d4a 100644 --- a/include/dt-bindings/clock/r8a7790-clock.h +++ b/include/dt-bindings/clock/r8a7790-clock.h | |||
@@ -21,6 +21,8 @@ | |||
21 | #define R8A7790_CLK_SD0 7 | 21 | #define R8A7790_CLK_SD0 7 |
22 | #define R8A7790_CLK_SD1 8 | 22 | #define R8A7790_CLK_SD1 8 |
23 | #define R8A7790_CLK_Z 9 | 23 | #define R8A7790_CLK_Z 9 |
24 | #define R8A7790_CLK_RCAN 10 | ||
25 | #define R8A7790_CLK_ADSP 11 | ||
24 | 26 | ||
25 | /* MSTP0 */ | 27 | /* MSTP0 */ |
26 | #define R8A7790_CLK_MSIOF0 0 | 28 | #define R8A7790_CLK_MSIOF0 0 |
@@ -80,6 +82,7 @@ | |||
80 | /* MSTP5 */ | 82 | /* MSTP5 */ |
81 | #define R8A7790_CLK_AUDIO_DMAC1 1 | 83 | #define R8A7790_CLK_AUDIO_DMAC1 1 |
82 | #define R8A7790_CLK_AUDIO_DMAC0 2 | 84 | #define R8A7790_CLK_AUDIO_DMAC0 2 |
85 | #define R8A7790_CLK_ADSP_MOD 6 | ||
83 | #define R8A7790_CLK_THERMAL 22 | 86 | #define R8A7790_CLK_THERMAL 22 |
84 | #define R8A7790_CLK_PWM 23 | 87 | #define R8A7790_CLK_PWM 23 |
85 | 88 | ||
diff --git a/include/dt-bindings/clock/r8a7791-clock.h b/include/dt-bindings/clock/r8a7791-clock.h index f096f3f6c16a..8fc5dc8faeea 100644 --- a/include/dt-bindings/clock/r8a7791-clock.h +++ b/include/dt-bindings/clock/r8a7791-clock.h | |||
@@ -20,6 +20,8 @@ | |||
20 | #define R8A7791_CLK_SDH 6 | 20 | #define R8A7791_CLK_SDH 6 |
21 | #define R8A7791_CLK_SD0 7 | 21 | #define R8A7791_CLK_SD0 7 |
22 | #define R8A7791_CLK_Z 8 | 22 | #define R8A7791_CLK_Z 8 |
23 | #define R8A7791_CLK_RCAN 9 | ||
24 | #define R8A7791_CLK_ADSP 10 | ||
23 | 25 | ||
24 | /* MSTP0 */ | 26 | /* MSTP0 */ |
25 | #define R8A7791_CLK_MSIOF0 0 | 27 | #define R8A7791_CLK_MSIOF0 0 |
@@ -71,6 +73,7 @@ | |||
71 | /* MSTP5 */ | 73 | /* MSTP5 */ |
72 | #define R8A7791_CLK_AUDIO_DMAC1 1 | 74 | #define R8A7791_CLK_AUDIO_DMAC1 1 |
73 | #define R8A7791_CLK_AUDIO_DMAC0 2 | 75 | #define R8A7791_CLK_AUDIO_DMAC0 2 |
76 | #define R8A7791_CLK_ADSP_MOD 6 | ||
74 | #define R8A7791_CLK_THERMAL 22 | 77 | #define R8A7791_CLK_THERMAL 22 |
75 | #define R8A7791_CLK_PWM 23 | 78 | #define R8A7791_CLK_PWM 23 |
76 | 79 | ||
diff --git a/include/dt-bindings/clock/sh73a0-clock.h b/include/dt-bindings/clock/sh73a0-clock.h index 1dd3eb2b7d90..53369568c24c 100644 --- a/include/dt-bindings/clock/sh73a0-clock.h +++ b/include/dt-bindings/clock/sh73a0-clock.h | |||
@@ -76,4 +76,7 @@ | |||
76 | #define SH73A0_CLK_IIC4 10 | 76 | #define SH73A0_CLK_IIC4 10 |
77 | #define SH73A0_CLK_KEYSC 3 | 77 | #define SH73A0_CLK_KEYSC 3 |
78 | 78 | ||
79 | /* MSTP5 */ | ||
80 | #define SH73A0_CLK_INTCA0 8 | ||
81 | |||
79 | #endif | 82 | #endif |