]> git.proxmox.com Git - mirror_ubuntu-zesty-kernel.git/blob - arch/arm64/boot/dts/arm/juno-base.dtsi
dd5158eb5872396693bba678cda765a719e25e97
[mirror_ubuntu-zesty-kernel.git] / arch / arm64 / boot / dts / arm / juno-base.dtsi
1 /*
2 * Devices shared by all Juno boards
3 */
4
5 memtimer: timer@2a810000 {
6 compatible = "arm,armv7-timer-mem";
7 reg = <0x0 0x2a810000 0x0 0x10000>;
8 clock-frequency = <50000000>;
9 #address-cells = <2>;
10 #size-cells = <2>;
11 ranges;
12 status = "disabled";
13 frame@2a830000 {
14 frame-number = <1>;
15 interrupts = <0 60 4>;
16 reg = <0x0 0x2a830000 0x0 0x10000>;
17 };
18 };
19
20 mailbox: mhu@2b1f0000 {
21 compatible = "arm,mhu", "arm,primecell";
22 reg = <0x0 0x2b1f0000 0x0 0x1000>;
23 interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>,
24 <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>;
25 interrupt-names = "mhu_lpri_rx",
26 "mhu_hpri_rx";
27 #mbox-cells = <1>;
28 clocks = <&soc_refclk100mhz>;
29 clock-names = "apb_pclk";
30 };
31
32 gic: interrupt-controller@2c010000 {
33 compatible = "arm,gic-400", "arm,cortex-a15-gic";
34 reg = <0x0 0x2c010000 0 0x1000>,
35 <0x0 0x2c02f000 0 0x2000>,
36 <0x0 0x2c04f000 0 0x2000>,
37 <0x0 0x2c06f000 0 0x2000>;
38 #address-cells = <2>;
39 #interrupt-cells = <3>;
40 #size-cells = <2>;
41 interrupt-controller;
42 interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(6) | IRQ_TYPE_LEVEL_HIGH)>;
43 ranges = <0 0 0 0x2c1c0000 0 0x40000>;
44 v2m_0: v2m@0 {
45 compatible = "arm,gic-v2m-frame";
46 msi-controller;
47 reg = <0 0 0 0x1000>;
48 };
49 };
50
51 timer {
52 compatible = "arm,armv8-timer";
53 interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(6) | IRQ_TYPE_LEVEL_LOW)>,
54 <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(6) | IRQ_TYPE_LEVEL_LOW)>,
55 <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(6) | IRQ_TYPE_LEVEL_LOW)>,
56 <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(6) | IRQ_TYPE_LEVEL_LOW)>;
57 };
58
59 sram: sram@2e000000 {
60 compatible = "arm,juno-sram-ns", "mmio-sram";
61 reg = <0x0 0x2e000000 0x0 0x8000>;
62
63 #address-cells = <1>;
64 #size-cells = <1>;
65 ranges = <0 0x0 0x2e000000 0x8000>;
66
67 cpu_scp_lpri: scp-shmem@0 {
68 compatible = "arm,juno-scp-shmem";
69 reg = <0x0 0x200>;
70 };
71
72 cpu_scp_hpri: scp-shmem@200 {
73 compatible = "arm,juno-scp-shmem";
74 reg = <0x200 0x200>;
75 };
76 };
77
78 scpi {
79 compatible = "arm,scpi";
80 mboxes = <&mailbox 1>;
81 shmem = <&cpu_scp_hpri>;
82
83 clocks {
84 compatible = "arm,scpi-clocks";
85
86 scpi_dvfs: scpi_clocks@0 {
87 compatible = "arm,scpi-dvfs-clocks";
88 #clock-cells = <1>;
89 clock-indices = <0>, <1>, <2>;
90 clock-output-names = "atlclk", "aplclk","gpuclk";
91 };
92 scpi_clk: scpi_clocks@3 {
93 compatible = "arm,scpi-variable-clocks";
94 #clock-cells = <1>;
95 clock-indices = <3>, <4>;
96 clock-output-names = "pxlclk0", "pxlclk1";
97 };
98 };
99
100 scpi_sensors0: sensors {
101 compatible = "arm,scpi-sensors";
102 #thermal-sensor-cells = <1>;
103 };
104 };
105
106 /include/ "juno-clocks.dtsi"
107
108 dma@7ff00000 {
109 compatible = "arm,pl330", "arm,primecell";
110 reg = <0x0 0x7ff00000 0 0x1000>;
111 #dma-cells = <1>;
112 #dma-channels = <8>;
113 #dma-requests = <32>;
114 interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>,
115 <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>,
116 <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>,
117 <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>,
118 <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>,
119 <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>,
120 <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>,
121 <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>;
122 clocks = <&soc_faxiclk>;
123 clock-names = "apb_pclk";
124 };
125
126 soc_uart0: uart@7ff80000 {
127 compatible = "arm,pl011", "arm,primecell";
128 reg = <0x0 0x7ff80000 0x0 0x1000>;
129 interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
130 clocks = <&soc_uartclk>, <&soc_refclk100mhz>;
131 clock-names = "uartclk", "apb_pclk";
132 };
133
134 i2c@7ffa0000 {
135 compatible = "snps,designware-i2c";
136 reg = <0x0 0x7ffa0000 0x0 0x1000>;
137 #address-cells = <1>;
138 #size-cells = <0>;
139 interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>;
140 clock-frequency = <400000>;
141 i2c-sda-hold-time-ns = <500>;
142 clocks = <&soc_smc50mhz>;
143
144 dvi0: dvi-transmitter@70 {
145 compatible = "nxp,tda998x";
146 reg = <0x70>;
147 };
148
149 dvi1: dvi-transmitter@71 {
150 compatible = "nxp,tda998x";
151 reg = <0x71>;
152 };
153 };
154
155 ohci@7ffb0000 {
156 compatible = "generic-ohci";
157 reg = <0x0 0x7ffb0000 0x0 0x10000>;
158 interrupts = <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>;
159 clocks = <&soc_usb48mhz>;
160 };
161
162 ehci@7ffc0000 {
163 compatible = "generic-ehci";
164 reg = <0x0 0x7ffc0000 0x0 0x10000>;
165 interrupts = <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>;
166 clocks = <&soc_usb48mhz>;
167 };
168
169 memory-controller@7ffd0000 {
170 compatible = "arm,pl354", "arm,primecell";
171 reg = <0 0x7ffd0000 0 0x1000>;
172 interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>,
173 <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>;
174 clocks = <&soc_smc50mhz>;
175 clock-names = "apb_pclk";
176 };
177
178 memory@80000000 {
179 device_type = "memory";
180 /* last 16MB of the first memory area is reserved for secure world use by firmware */
181 reg = <0x00000000 0x80000000 0x0 0x7f000000>,
182 <0x00000008 0x80000000 0x1 0x80000000>;
183 };
184
185 smb {
186 compatible = "simple-bus";
187 #address-cells = <2>;
188 #size-cells = <1>;
189 ranges = <0 0 0 0x08000000 0x04000000>,
190 <1 0 0 0x14000000 0x04000000>,
191 <2 0 0 0x18000000 0x04000000>,
192 <3 0 0 0x1c000000 0x04000000>,
193 <4 0 0 0x0c000000 0x04000000>,
194 <5 0 0 0x10000000 0x04000000>;
195
196 #interrupt-cells = <1>;
197 interrupt-map-mask = <0 0 15>;
198 interrupt-map = <0 0 0 &gic 0 0 0 68 IRQ_TYPE_LEVEL_HIGH>,
199 <0 0 1 &gic 0 0 0 69 IRQ_TYPE_LEVEL_HIGH>,
200 <0 0 2 &gic 0 0 0 70 IRQ_TYPE_LEVEL_HIGH>,
201 <0 0 3 &gic 0 0 0 160 IRQ_TYPE_LEVEL_HIGH>,
202 <0 0 4 &gic 0 0 0 161 IRQ_TYPE_LEVEL_HIGH>,
203 <0 0 5 &gic 0 0 0 162 IRQ_TYPE_LEVEL_HIGH>,
204 <0 0 6 &gic 0 0 0 163 IRQ_TYPE_LEVEL_HIGH>,
205 <0 0 7 &gic 0 0 0 164 IRQ_TYPE_LEVEL_HIGH>,
206 <0 0 8 &gic 0 0 0 165 IRQ_TYPE_LEVEL_HIGH>,
207 <0 0 9 &gic 0 0 0 166 IRQ_TYPE_LEVEL_HIGH>,
208 <0 0 10 &gic 0 0 0 167 IRQ_TYPE_LEVEL_HIGH>,
209 <0 0 11 &gic 0 0 0 168 IRQ_TYPE_LEVEL_HIGH>,
210 <0 0 12 &gic 0 0 0 169 IRQ_TYPE_LEVEL_HIGH>;
211
212 /include/ "juno-motherboard.dtsi"
213 };