Sebastian Hesselbarth | 80a8b54 | 2012-08-15 19:07:34 +0200 | [diff] [blame] | 1 | /include/ "skeleton.dtsi" |
| 2 | |
| 3 | / { |
| 4 | compatible = "marvell,dove"; |
| 5 | model = "Marvell Armada 88AP510 SoC"; |
| 6 | |
Sebastian Hesselbarth | 9139acd | 2012-11-19 10:39:55 +0100 | [diff] [blame] | 7 | aliases { |
| 8 | gpio0 = &gpio0; |
| 9 | gpio1 = &gpio1; |
| 10 | gpio2 = &gpio2; |
| 11 | }; |
| 12 | |
Sebastian Hesselbarth | 138ee96 | 2012-09-25 02:02:16 +0200 | [diff] [blame] | 13 | soc@f1000000 { |
Sebastian Hesselbarth | 80a8b54 | 2012-08-15 19:07:34 +0200 | [diff] [blame] | 14 | compatible = "simple-bus"; |
Sebastian Hesselbarth | 80a8b54 | 2012-08-15 19:07:34 +0200 | [diff] [blame] | 15 | #address-cells = <1>; |
| 16 | #size-cells = <1>; |
Sebastian Hesselbarth | 138ee96 | 2012-09-25 02:02:16 +0200 | [diff] [blame] | 17 | interrupt-parent = <&intc>; |
| 18 | |
| 19 | ranges = <0xc8000000 0xc8000000 0x0100000 /* CESA SRAM 1M */ |
| 20 | 0xe0000000 0xe0000000 0x8000000 /* PCIe0 Mem 128M */ |
| 21 | 0xe8000000 0xe8000000 0x8000000 /* PCIe1 Mem 128M */ |
| 22 | 0xf0000000 0xf0000000 0x0100000 /* ScratchPad 1M */ |
| 23 | 0x00000000 0xf1000000 0x1000000 /* SB/NB regs 16M */ |
| 24 | 0xf2000000 0xf2000000 0x0100000 /* PCIe0 I/O 1M */ |
| 25 | 0xf2100000 0xf2100000 0x0100000 /* PCIe0 I/O 1M */ |
| 26 | 0xf8000000 0xf8000000 0x8000000>; /* BootROM 128M */ |
Sebastian Hesselbarth | 80a8b54 | 2012-08-15 19:07:34 +0200 | [diff] [blame] | 27 | |
Sebastian Hesselbarth | fd57c65 | 2012-09-25 02:02:14 +0200 | [diff] [blame] | 28 | l2: l2-cache { |
| 29 | compatible = "marvell,tauros2-cache"; |
| 30 | marvell,tauros2-cache-features = <0>; |
| 31 | }; |
| 32 | |
Sebastian Hesselbarth | 138ee96 | 2012-09-25 02:02:16 +0200 | [diff] [blame] | 33 | intc: interrupt-controller { |
| 34 | compatible = "marvell,orion-intc"; |
| 35 | interrupt-controller; |
| 36 | #interrupt-cells = <1>; |
| 37 | reg = <0x20204 0x04>, <0x20214 0x04>; |
| 38 | }; |
| 39 | |
Sebastian Hesselbarth | 5b03df9 | 2012-11-17 15:22:27 +0100 | [diff] [blame] | 40 | core_clk: core-clocks@d0214 { |
| 41 | compatible = "marvell,dove-core-clock"; |
| 42 | reg = <0xd0214 0x4>; |
| 43 | #clock-cells = <1>; |
| 44 | }; |
| 45 | |
| 46 | gate_clk: clock-gating-control@d0038 { |
| 47 | compatible = "marvell,dove-gating-clock"; |
| 48 | reg = <0xd0038 0x4>; |
| 49 | clocks = <&core_clk 0>; |
| 50 | #clock-cells = <1>; |
| 51 | }; |
| 52 | |
Andrew Lunn | c3117ed | 2013-02-06 07:35:27 +0100 | [diff] [blame^] | 53 | thermal: thermal@d001c { |
| 54 | compatible = "marvell,dove-thermal"; |
| 55 | reg = <0xd001c 0x0c>, <0xd005c 0x08>; |
| 56 | }; |
| 57 | |
Sebastian Hesselbarth | 80a8b54 | 2012-08-15 19:07:34 +0200 | [diff] [blame] | 58 | uart0: serial@12000 { |
| 59 | compatible = "ns16550a"; |
| 60 | reg = <0x12000 0x100>; |
| 61 | reg-shift = <2>; |
| 62 | interrupts = <7>; |
Sebastian Hesselbarth | 8be7a96 | 2013-01-29 21:59:46 +0100 | [diff] [blame] | 63 | clocks = <&core_clk 0>; |
Sebastian Hesselbarth | 80a8b54 | 2012-08-15 19:07:34 +0200 | [diff] [blame] | 64 | status = "disabled"; |
| 65 | }; |
| 66 | |
| 67 | uart1: serial@12100 { |
| 68 | compatible = "ns16550a"; |
| 69 | reg = <0x12100 0x100>; |
| 70 | reg-shift = <2>; |
| 71 | interrupts = <8>; |
Sebastian Hesselbarth | 8be7a96 | 2013-01-29 21:59:46 +0100 | [diff] [blame] | 72 | clocks = <&core_clk 0>; |
Sebastian Hesselbarth | 80a8b54 | 2012-08-15 19:07:34 +0200 | [diff] [blame] | 73 | status = "disabled"; |
| 74 | }; |
| 75 | |
| 76 | uart2: serial@12200 { |
| 77 | compatible = "ns16550a"; |
| 78 | reg = <0x12000 0x100>; |
| 79 | reg-shift = <2>; |
| 80 | interrupts = <9>; |
Sebastian Hesselbarth | 8be7a96 | 2013-01-29 21:59:46 +0100 | [diff] [blame] | 81 | clocks = <&core_clk 0>; |
Sebastian Hesselbarth | 80a8b54 | 2012-08-15 19:07:34 +0200 | [diff] [blame] | 82 | status = "disabled"; |
| 83 | }; |
| 84 | |
| 85 | uart3: serial@12300 { |
| 86 | compatible = "ns16550a"; |
| 87 | reg = <0x12100 0x100>; |
| 88 | reg-shift = <2>; |
| 89 | interrupts = <10>; |
Sebastian Hesselbarth | 8be7a96 | 2013-01-29 21:59:46 +0100 | [diff] [blame] | 90 | clocks = <&core_clk 0>; |
Sebastian Hesselbarth | 80a8b54 | 2012-08-15 19:07:34 +0200 | [diff] [blame] | 91 | status = "disabled"; |
| 92 | }; |
| 93 | |
Sebastian Hesselbarth | 80a8b54 | 2012-08-15 19:07:34 +0200 | [diff] [blame] | 94 | gpio0: gpio@d0400 { |
| 95 | compatible = "marvell,orion-gpio"; |
| 96 | #gpio-cells = <2>; |
| 97 | gpio-controller; |
| 98 | reg = <0xd0400 0x20>; |
Sebastian Hesselbarth | 9139acd | 2012-11-19 10:39:55 +0100 | [diff] [blame] | 99 | ngpios = <32>; |
| 100 | interrupt-controller; |
Jean-Francois Moine | fd2704e | 2013-01-23 09:38:16 +0100 | [diff] [blame] | 101 | #interrupt-cells = <2>; |
Sebastian Hesselbarth | 80a8b54 | 2012-08-15 19:07:34 +0200 | [diff] [blame] | 102 | interrupts = <12>, <13>, <14>, <60>; |
| 103 | }; |
| 104 | |
| 105 | gpio1: gpio@d0420 { |
| 106 | compatible = "marvell,orion-gpio"; |
| 107 | #gpio-cells = <2>; |
| 108 | gpio-controller; |
| 109 | reg = <0xd0420 0x20>; |
Sebastian Hesselbarth | 9139acd | 2012-11-19 10:39:55 +0100 | [diff] [blame] | 110 | ngpios = <32>; |
| 111 | interrupt-controller; |
Jean-Francois Moine | fd2704e | 2013-01-23 09:38:16 +0100 | [diff] [blame] | 112 | #interrupt-cells = <2>; |
Sebastian Hesselbarth | 80a8b54 | 2012-08-15 19:07:34 +0200 | [diff] [blame] | 113 | interrupts = <61>; |
| 114 | }; |
| 115 | |
| 116 | gpio2: gpio@e8400 { |
| 117 | compatible = "marvell,orion-gpio"; |
| 118 | #gpio-cells = <2>; |
| 119 | gpio-controller; |
| 120 | reg = <0xe8400 0x0c>; |
Sebastian Hesselbarth | 9139acd | 2012-11-19 10:39:55 +0100 | [diff] [blame] | 121 | ngpios = <8>; |
| 122 | }; |
| 123 | |
| 124 | pinctrl: pinctrl@d0200 { |
| 125 | compatible = "marvell,dove-pinctrl"; |
| 126 | reg = <0xd0200 0x10>; |
Sebastian Hesselbarth | db7d77e | 2012-11-26 20:16:38 +0100 | [diff] [blame] | 127 | clocks = <&gate_clk 22>; |
Sebastian Hesselbarth | 80a8b54 | 2012-08-15 19:07:34 +0200 | [diff] [blame] | 128 | }; |
| 129 | |
| 130 | spi0: spi@10600 { |
| 131 | compatible = "marvell,orion-spi"; |
| 132 | #address-cells = <1>; |
| 133 | #size-cells = <0>; |
| 134 | cell-index = <0>; |
| 135 | interrupts = <6>; |
| 136 | reg = <0x10600 0x28>; |
Sebastian Hesselbarth | 5b03df9 | 2012-11-17 15:22:27 +0100 | [diff] [blame] | 137 | clocks = <&core_clk 0>; |
Sebastian Hesselbarth | 80a8b54 | 2012-08-15 19:07:34 +0200 | [diff] [blame] | 138 | status = "disabled"; |
| 139 | }; |
| 140 | |
| 141 | spi1: spi@14600 { |
| 142 | compatible = "marvell,orion-spi"; |
| 143 | #address-cells = <1>; |
| 144 | #size-cells = <0>; |
| 145 | cell-index = <1>; |
| 146 | interrupts = <5>; |
| 147 | reg = <0x14600 0x28>; |
Sebastian Hesselbarth | 5b03df9 | 2012-11-17 15:22:27 +0100 | [diff] [blame] | 148 | clocks = <&core_clk 0>; |
Sebastian Hesselbarth | 80a8b54 | 2012-08-15 19:07:34 +0200 | [diff] [blame] | 149 | status = "disabled"; |
| 150 | }; |
| 151 | |
| 152 | i2c0: i2c@11000 { |
| 153 | compatible = "marvell,mv64xxx-i2c"; |
| 154 | reg = <0x11000 0x20>; |
| 155 | #address-cells = <1>; |
| 156 | #size-cells = <0>; |
| 157 | interrupts = <11>; |
| 158 | clock-frequency = <400000>; |
| 159 | timeout-ms = <1000>; |
Sebastian Hesselbarth | 5b03df9 | 2012-11-17 15:22:27 +0100 | [diff] [blame] | 160 | clocks = <&core_clk 0>; |
Sebastian Hesselbarth | 80a8b54 | 2012-08-15 19:07:34 +0200 | [diff] [blame] | 161 | status = "disabled"; |
| 162 | }; |
| 163 | |
Sebastian Hesselbarth | a1abcd7 | 2013-01-28 16:54:08 +0100 | [diff] [blame] | 164 | ehci0: usb-host@50000 { |
| 165 | compatible = "marvell,orion-ehci"; |
| 166 | reg = <0x50000 0x1000>; |
| 167 | interrupts = <24>; |
| 168 | clocks = <&gate_clk 0>; |
| 169 | status = "okay"; |
| 170 | }; |
| 171 | |
| 172 | ehci1: usb-host@51000 { |
| 173 | compatible = "marvell,orion-ehci"; |
| 174 | reg = <0x51000 0x1000>; |
| 175 | interrupts = <25>; |
| 176 | clocks = <&gate_clk 1>; |
| 177 | status = "okay"; |
| 178 | }; |
| 179 | |
Sebastian Hesselbarth | 80a8b54 | 2012-08-15 19:07:34 +0200 | [diff] [blame] | 180 | sdio0: sdio@92000 { |
| 181 | compatible = "marvell,dove-sdhci"; |
| 182 | reg = <0x92000 0x100>; |
| 183 | interrupts = <35>, <37>; |
Sebastian Hesselbarth | 5b03df9 | 2012-11-17 15:22:27 +0100 | [diff] [blame] | 184 | clocks = <&gate_clk 8>; |
Sebastian Hesselbarth | 80a8b54 | 2012-08-15 19:07:34 +0200 | [diff] [blame] | 185 | status = "disabled"; |
| 186 | }; |
| 187 | |
| 188 | sdio1: sdio@90000 { |
| 189 | compatible = "marvell,dove-sdhci"; |
| 190 | reg = <0x90000 0x100>; |
| 191 | interrupts = <36>, <38>; |
Sebastian Hesselbarth | 5b03df9 | 2012-11-17 15:22:27 +0100 | [diff] [blame] | 192 | clocks = <&gate_clk 9>; |
Sebastian Hesselbarth | 80a8b54 | 2012-08-15 19:07:34 +0200 | [diff] [blame] | 193 | status = "disabled"; |
| 194 | }; |
| 195 | |
| 196 | sata0: sata@a0000 { |
| 197 | compatible = "marvell,orion-sata"; |
| 198 | reg = <0xa0000 0x2400>; |
| 199 | interrupts = <62>; |
Sebastian Hesselbarth | 5b03df9 | 2012-11-17 15:22:27 +0100 | [diff] [blame] | 200 | clocks = <&gate_clk 3>; |
Sebastian Hesselbarth | 80a8b54 | 2012-08-15 19:07:34 +0200 | [diff] [blame] | 201 | nr-ports = <1>; |
| 202 | status = "disabled"; |
| 203 | }; |
Sebastian Hesselbarth | a458926e | 2012-09-25 02:02:18 +0200 | [diff] [blame] | 204 | |
| 205 | crypto: crypto@30000 { |
| 206 | compatible = "marvell,orion-crypto"; |
| 207 | reg = <0x30000 0x10000>, |
| 208 | <0xc8000000 0x800>; |
| 209 | reg-names = "regs", "sram"; |
| 210 | interrupts = <31>; |
Sebastian Hesselbarth | 5b03df9 | 2012-11-17 15:22:27 +0100 | [diff] [blame] | 211 | clocks = <&gate_clk 15>; |
Sebastian Hesselbarth | a458926e | 2012-09-25 02:02:18 +0200 | [diff] [blame] | 212 | status = "okay"; |
| 213 | }; |
Sebastian Hesselbarth | 49f175b | 2012-11-19 09:37:24 +0100 | [diff] [blame] | 214 | |
| 215 | xor0: dma-engine@60800 { |
| 216 | compatible = "marvell,orion-xor"; |
| 217 | reg = <0x60800 0x100 |
| 218 | 0x60a00 0x100>; |
| 219 | clocks = <&gate_clk 23>; |
| 220 | status = "okay"; |
| 221 | |
| 222 | channel0 { |
| 223 | interrupts = <39>; |
| 224 | dmacap,memcpy; |
| 225 | dmacap,xor; |
| 226 | }; |
| 227 | |
| 228 | channel1 { |
| 229 | interrupts = <40>; |
| 230 | dmacap,memset; |
| 231 | dmacap,memcpy; |
| 232 | dmacap,xor; |
| 233 | }; |
| 234 | }; |
| 235 | |
| 236 | xor1: dma-engine@60900 { |
| 237 | compatible = "marvell,orion-xor"; |
| 238 | reg = <0x60900 0x100 |
| 239 | 0x60b00 0x100>; |
| 240 | clocks = <&gate_clk 24>; |
| 241 | status = "okay"; |
| 242 | |
| 243 | channel0 { |
| 244 | interrupts = <42>; |
| 245 | dmacap,memcpy; |
| 246 | dmacap,xor; |
| 247 | }; |
| 248 | |
| 249 | channel1 { |
| 250 | interrupts = <43>; |
| 251 | dmacap,memset; |
| 252 | dmacap,memcpy; |
| 253 | dmacap,xor; |
| 254 | }; |
| 255 | }; |
Sebastian Hesselbarth | 80a8b54 | 2012-08-15 19:07:34 +0200 | [diff] [blame] | 256 | }; |
| 257 | }; |