Merge tag 'reset-for-v5.3' of git://git.pengutronix.de/git/pza/linux into arm/drivers
[sfrench/cifs-2.6.git] / arch / arm / boot / dts / picoxcell-pc3x2.dtsi
1 // SPDX-License-Identifier: GPL-2.0-only
2 /*
3  *  Copyright (C) 2011 Picochip, Jamie Iles
4  */
5 / {
6         model = "Picochip picoXcell PC3X2";
7         compatible = "picochip,pc3x2";
8         #address-cells = <1>;
9         #size-cells = <1>;
10
11         cpus {
12                 #address-cells = <0>;
13                 #size-cells = <0>;
14
15                 cpu {
16                         compatible = "arm,arm1176jz-s";
17                         device_type = "cpu";
18                         clock-frequency = <400000000>;
19                         d-cache-line-size = <32>;
20                         d-cache-size = <32768>;
21                         i-cache-line-size = <32>;
22                         i-cache-size = <32768>;
23                 };
24         };
25
26         clocks {
27                 #address-cells = <1>;
28                 #size-cells = <1>;
29                 ranges;
30
31                 pclk: clock@0 {
32                         compatible = "fixed-clock";
33                         clock-outputs = "bus", "pclk";
34                         clock-frequency = <200000000>;
35                         ref-clock = <&ref_clk>, "ref";
36                 };
37         };
38
39         paxi {
40                 compatible = "simple-bus";
41                 #address-cells = <1>;
42                 #size-cells = <1>;
43                 ranges = <0 0x80000000 0x400000>;
44
45                 emac: gem@30000 {
46                         compatible = "cadence,gem";
47                         reg = <0x30000 0x10000>;
48                         interrupts = <31>;
49                 };
50
51                 dmac1: dmac@40000 {
52                         compatible = "snps,dw-dmac";
53                         reg = <0x40000 0x10000>;
54                         interrupts = <25>;
55                 };
56
57                 dmac2: dmac@50000 {
58                         compatible = "snps,dw-dmac";
59                         reg = <0x50000 0x10000>;
60                         interrupts = <26>;
61                 };
62
63                 vic0: interrupt-controller@60000 {
64                         compatible = "arm,pl192-vic";
65                         interrupt-controller;
66                         reg = <0x60000 0x1000>;
67                         #interrupt-cells = <1>;
68                 };
69
70                 vic1: interrupt-controller@64000 {
71                         compatible = "arm,pl192-vic";
72                         interrupt-controller;
73                         reg = <0x64000 0x1000>;
74                         #interrupt-cells = <1>;
75                 };
76
77                 fuse: picoxcell-fuse@80000 {
78                         compatible = "picoxcell,fuse-pc3x2";
79                         reg = <0x80000 0x10000>;
80                 };
81
82                 ssi: picoxcell-spi@90000 {
83                         compatible = "picoxcell,spi";
84                         reg = <0x90000 0x10000>;
85                         interrupt-parent = <&vic0>;
86                         interrupts = <10>;
87                 };
88
89                 ipsec: spacc@100000 {
90                         compatible = "picochip,spacc-ipsec";
91                         reg = <0x100000 0x10000>;
92                         interrupt-parent = <&vic0>;
93                         interrupts = <24>;
94                         ref-clock = <&pclk>, "ref";
95                 };
96
97                 srtp: spacc@140000 {
98                         compatible = "picochip,spacc-srtp";
99                         reg = <0x140000 0x10000>;
100                         interrupt-parent = <&vic0>;
101                         interrupts = <23>;
102                 };
103
104                 l2_engine: spacc@180000 {
105                         compatible = "picochip,spacc-l2";
106                         reg = <0x180000 0x10000>;
107                         interrupt-parent = <&vic0>;
108                         interrupts = <22>;
109                         ref-clock = <&pclk>, "ref";
110                 };
111
112                 apb {
113                         compatible = "simple-bus";
114                         #address-cells = <1>;
115                         #size-cells = <1>;
116                         ranges = <0 0x200000 0x80000>;
117
118                         rtc0: rtc@0 {
119                                 compatible = "picochip,pc3x2-rtc";
120                                 clock-freq = <200000000>;
121                                 reg = <0x00000 0xf>;
122                                 interrupt-parent = <&vic1>;
123                                 interrupts = <8>;
124                         };
125
126                         timer0: timer@10000 {
127                                 compatible = "picochip,pc3x2-timer";
128                                 interrupt-parent = <&vic0>;
129                                 interrupts = <4>;
130                                 clock-freq = <200000000>;
131                                 reg = <0x10000 0x14>;
132                         };
133
134                         timer1: timer@10014 {
135                                 compatible = "picochip,pc3x2-timer";
136                                 interrupt-parent = <&vic0>;
137                                 interrupts = <5>;
138                                 clock-freq = <200000000>;
139                                 reg = <0x10014 0x14>;
140                         };
141
142                         timer2: timer@10028 {
143                                 compatible = "picochip,pc3x2-timer";
144                                 interrupt-parent = <&vic0>;
145                                 interrupts = <6>;
146                                 clock-freq = <200000000>;
147                                 reg = <0x10028 0x14>;
148                         };
149
150                         timer3: timer@1003c {
151                                 compatible = "picochip,pc3x2-timer";
152                                 interrupt-parent = <&vic0>;
153                                 interrupts = <7>;
154                                 clock-freq = <200000000>;
155                                 reg = <0x1003c 0x14>;
156                         };
157
158                         gpio: gpio@20000 {
159                                 compatible = "snps,dw-apb-gpio";
160                                 reg = <0x20000 0x1000>;
161                                 #address-cells = <1>;
162                                 #size-cells = <0>;
163                                 reg-io-width = <4>;
164
165                                 banka: gpio-controller@0 {
166                                         compatible = "snps,dw-apb-gpio-bank";
167                                         gpio-controller;
168                                         #gpio-cells = <2>;
169                                         gpio-generic,nr-gpio = <8>;
170
171                                         regoffset-dat = <0x50>;
172                                         regoffset-set = <0x00>;
173                                         regoffset-dirout = <0x04>;
174                                 };
175
176                                 bankb: gpio-controller@1 {
177                                         compatible = "snps,dw-apb-gpio-bank";
178                                         gpio-controller;
179                                         #gpio-cells = <2>;
180                                         gpio-generic,nr-gpio = <8>;
181
182                                         regoffset-dat = <0x54>;
183                                         regoffset-set = <0x0c>;
184                                         regoffset-dirout = <0x10>;
185                                 };
186                         };
187
188                         uart0: uart@30000 {
189                                 compatible = "snps,dw-apb-uart";
190                                 reg = <0x30000 0x1000>;
191                                 interrupt-parent = <&vic1>;
192                                 interrupts = <10>;
193                                 clock-frequency = <3686400>;
194                                 reg-shift = <2>;
195                                 reg-io-width = <4>;
196                         };
197
198                         uart1: uart@40000 {
199                                 compatible = "snps,dw-apb-uart";
200                                 reg = <0x40000 0x1000>;
201                                 interrupt-parent = <&vic1>;
202                                 interrupts = <9>;
203                                 clock-frequency = <3686400>;
204                                 reg-shift = <2>;
205                                 reg-io-width = <4>;
206                         };
207
208                         wdog: watchdog@50000 {
209                                 compatible = "snps,dw-apb-wdg";
210                                 reg = <0x50000 0x10000>;
211                                 interrupt-parent = <&vic0>;
212                                 interrupts = <11>;
213                                 bus-clock = <&pclk>, "bus";
214                         };
215                 };
216         };
217
218         rwid-axi {
219                 #address-cells = <1>;
220                 #size-cells = <1>;
221                 compatible = "simple-bus";
222                 ranges;
223
224                 ebi@50000000 {
225                         compatible = "simple-bus";
226                         #address-cells = <2>;
227                         #size-cells = <1>;
228                         ranges = <0 0 0x40000000 0x08000000
229                                   1 0 0x48000000 0x08000000
230                                   2 0 0x50000000 0x08000000
231                                   3 0 0x58000000 0x08000000>;
232                 };
233
234                 axi2pico@c0000000 {
235                         compatible = "picochip,axi2pico-pc3x2";
236                         reg = <0xc0000000 0x10000>;
237                         interrupts = <13 14 15 16 17 18 19 20 21>;
238                 };
239         };
240 };