]> CyberLeo.Net >> Repos - FreeBSD/releng/10.2.git/blob - sys/gnu/dts/arm/emev2.dtsi
- Copy stable/10@285827 to releng/10.2 in preparation for 10.2-RC1
[FreeBSD/releng/10.2.git] / sys / gnu / dts / arm / emev2.dtsi
1 /*
2  * Device Tree Source for the EMEV2 SoC
3  *
4  * Copyright (C) 2012 Renesas Solutions Corp.
5  *
6  * This file is licensed under the terms of the GNU General Public License
7  * version 2.  This program is licensed "as is" without any warranty of any
8  * kind, whether express or implied.
9  */
10
11 #include "skeleton.dtsi"
12 #include <dt-bindings/interrupt-controller/irq.h>
13
14 / {
15         compatible = "renesas,emev2";
16         interrupt-parent = <&gic>;
17
18         aliases {
19                 gpio0 = &gpio0;
20                 gpio1 = &gpio1;
21                 gpio2 = &gpio2;
22                 gpio3 = &gpio3;
23                 gpio4 = &gpio4;
24         };
25
26         cpus {
27                 #address-cells = <1>;
28                 #size-cells = <0>;
29
30                 cpu@0 {
31                         device_type = "cpu";
32                         compatible = "arm,cortex-a9";
33                         reg = <0>;
34                         clock-frequency = <533000000>;
35                 };
36                 cpu@1 {
37                         device_type = "cpu";
38                         compatible = "arm,cortex-a9";
39                         reg = <1>;
40                         clock-frequency = <533000000>;
41                 };
42         };
43
44         gic: interrupt-controller@e0020000 {
45                 compatible = "arm,cortex-a9-gic";
46                 interrupt-controller;
47                 #interrupt-cells = <3>;
48                 reg = <0xe0028000 0x1000>,
49                       <0xe0020000 0x0100>;
50         };
51
52         pmu {
53                 compatible = "arm,cortex-a9-pmu";
54                 interrupts = <0 120 IRQ_TYPE_LEVEL_HIGH>,
55                              <0 121 IRQ_TYPE_LEVEL_HIGH>;
56         };
57
58         clocks@e0110000 {
59                 compatible = "renesas,emev2-smu";
60                 reg = <0xe0110000 0x10000>;
61                 #address-cells = <2>;
62                 #size-cells = <0>;
63
64                 c32ki: c32ki {
65                         compatible = "fixed-clock";
66                         clock-frequency = <32768>;
67                         #clock-cells = <0>;
68                 };
69                 pll3_fo: pll3_fo {
70                         compatible = "fixed-factor-clock";
71                         clocks = <&c32ki>;
72                         clock-div = <1>;
73                         clock-mult = <7000>;
74                         #clock-cells = <0>;
75                 };
76                 usia_u0_sclkdiv: usia_u0_sclkdiv {
77                         compatible = "renesas,emev2-smu-clkdiv";
78                         reg = <0x610 0>;
79                         clocks = <&pll3_fo>;
80                         #clock-cells = <0>;
81                 };
82                 usib_u1_sclkdiv: usib_u1_sclkdiv {
83                         compatible = "renesas,emev2-smu-clkdiv";
84                         reg = <0x65c 0>;
85                         clocks = <&pll3_fo>;
86                         #clock-cells = <0>;
87                 };
88                 usib_u2_sclkdiv: usib_u2_sclkdiv {
89                         compatible = "renesas,emev2-smu-clkdiv";
90                         reg = <0x65c 16>;
91                         clocks = <&pll3_fo>;
92                         #clock-cells = <0>;
93                 };
94                 usib_u3_sclkdiv: usib_u3_sclkdiv {
95                         compatible = "renesas,emev2-smu-clkdiv";
96                         reg = <0x660 0>;
97                         clocks = <&pll3_fo>;
98                         #clock-cells = <0>;
99                 };
100                 usia_u0_sclk: usia_u0_sclk {
101                         compatible = "renesas,emev2-smu-gclk";
102                         reg = <0x4a0 1>;
103                         clocks = <&usia_u0_sclkdiv>;
104                         #clock-cells = <0>;
105                 };
106                 usib_u1_sclk: usib_u1_sclk {
107                         compatible = "renesas,emev2-smu-gclk";
108                         reg = <0x4b8 1>;
109                         clocks = <&usib_u1_sclkdiv>;
110                         #clock-cells = <0>;
111                 };
112                 usib_u2_sclk: usib_u2_sclk {
113                         compatible = "renesas,emev2-smu-gclk";
114                         reg = <0x4bc 1>;
115                         clocks = <&usib_u2_sclkdiv>;
116                         #clock-cells = <0>;
117                 };
118                 usib_u3_sclk: usib_u3_sclk {
119                         compatible = "renesas,emev2-smu-gclk";
120                         reg = <0x4c0 1>;
121                         clocks = <&usib_u3_sclkdiv>;
122                         #clock-cells = <0>;
123                 };
124                 sti_sclk: sti_sclk {
125                         compatible = "renesas,emev2-smu-gclk";
126                         reg = <0x528 1>;
127                         clocks = <&c32ki>;
128                         #clock-cells = <0>;
129                 };
130         };
131
132         timer@e0180000 {
133                 compatible = "renesas,em-sti";
134                 reg = <0xe0180000 0x54>;
135                 interrupts = <0 125 IRQ_TYPE_LEVEL_HIGH>;
136                 clocks = <&sti_sclk>;
137                 clock-names = "sclk";
138         };
139
140         uart0: serial@e1020000 {
141                 compatible = "renesas,em-uart";
142                 reg = <0xe1020000 0x38>;
143                 interrupts = <0 8 IRQ_TYPE_LEVEL_HIGH>;
144                 clocks = <&usia_u0_sclk>;
145                 clock-names = "sclk";
146         };
147
148         uart1: serial@e1030000 {
149                 compatible = "renesas,em-uart";
150                 reg = <0xe1030000 0x38>;
151                 interrupts = <0 9 IRQ_TYPE_LEVEL_HIGH>;
152                 clocks = <&usib_u1_sclk>;
153                 clock-names = "sclk";
154         };
155
156         uart2: serial@e1040000 {
157                 compatible = "renesas,em-uart";
158                 reg = <0xe1040000 0x38>;
159                 interrupts = <0 10 IRQ_TYPE_LEVEL_HIGH>;
160                 clocks = <&usib_u2_sclk>;
161                 clock-names = "sclk";
162         };
163
164         uart3: serial@e1050000 {
165                 compatible = "renesas,em-uart";
166                 reg = <0xe1050000 0x38>;
167                 interrupts = <0 11 IRQ_TYPE_LEVEL_HIGH>;
168                 clocks = <&usib_u3_sclk>;
169                 clock-names = "sclk";
170         };
171
172         gpio0: gpio@e0050000 {
173                 compatible = "renesas,em-gio";
174                 reg = <0xe0050000 0x2c>, <0xe0050040 0x20>;
175                 interrupts = <0 67 IRQ_TYPE_LEVEL_HIGH>,
176                              <0 68 IRQ_TYPE_LEVEL_HIGH>;
177                 gpio-controller;
178                 #gpio-cells = <2>;
179                 ngpios = <32>;
180                 interrupt-controller;
181                 #interrupt-cells = <2>;
182         };
183         gpio1: gpio@e0050080 {
184                 compatible = "renesas,em-gio";
185                 reg = <0xe0050080 0x2c>, <0xe00500c0 0x20>;
186                 interrupts = <0 69 IRQ_TYPE_LEVEL_HIGH>,
187                              <0 70 IRQ_TYPE_LEVEL_HIGH>;
188                 gpio-controller;
189                 #gpio-cells = <2>;
190                 ngpios = <32>;
191                 interrupt-controller;
192                 #interrupt-cells = <2>;
193         };
194         gpio2: gpio@e0050100 {
195                 compatible = "renesas,em-gio";
196                 reg = <0xe0050100 0x2c>, <0xe0050140 0x20>;
197                 interrupts = <0 71 IRQ_TYPE_LEVEL_HIGH>,
198                              <0 72 IRQ_TYPE_LEVEL_HIGH>;
199                 gpio-controller;
200                 #gpio-cells = <2>;
201                 ngpios = <32>;
202                 interrupt-controller;
203                 #interrupt-cells = <2>;
204         };
205         gpio3: gpio@e0050180 {
206                 compatible = "renesas,em-gio";
207                 reg = <0xe0050180 0x2c>, <0xe00501c0 0x20>;
208                 interrupts = <0 73 IRQ_TYPE_LEVEL_HIGH>,
209                              <0 74 IRQ_TYPE_LEVEL_HIGH>;
210                 gpio-controller;
211                 #gpio-cells = <2>;
212                 ngpios = <32>;
213                 interrupt-controller;
214                 #interrupt-cells = <2>;
215         };
216         gpio4: gpio@e0050200 {
217                 compatible = "renesas,em-gio";
218                 reg = <0xe0050200 0x2c>, <0xe0050240 0x20>;
219                 interrupts = <0 75 IRQ_TYPE_LEVEL_HIGH>,
220                              <0 76 IRQ_TYPE_LEVEL_HIGH>;
221                 gpio-controller;
222                 #gpio-cells = <2>;
223                 ngpios = <31>;
224                 interrupt-controller;
225                 #interrupt-cells = <2>;
226         };
227 };