1 *724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0-or-later 2 *724ba675SRob Herring/* 3 *724ba675SRob Herring * wm8850.dtsi - Device tree file for Wondermedia WM8850 SoC 4 *724ba675SRob Herring * 5 *724ba675SRob Herring * Copyright (C) 2012 Tony Prisk <linux@prisktech.co.nz> 6 *724ba675SRob Herring */ 7 *724ba675SRob Herring 8 *724ba675SRob Herring/ { 9 *724ba675SRob Herring #address-cells = <1>; 10 *724ba675SRob Herring #size-cells = <1>; 11 *724ba675SRob Herring compatible = "wm,wm8850"; 12 *724ba675SRob Herring 13 *724ba675SRob Herring cpus { 14 *724ba675SRob Herring #address-cells = <1>; 15 *724ba675SRob Herring #size-cells = <0>; 16 *724ba675SRob Herring 17 *724ba675SRob Herring cpu@0 { 18 *724ba675SRob Herring device_type = "cpu"; 19 *724ba675SRob Herring compatible = "arm,cortex-a9"; 20 *724ba675SRob Herring reg = <0x0>; 21 *724ba675SRob Herring }; 22 *724ba675SRob Herring }; 23 *724ba675SRob Herring 24 *724ba675SRob Herring memory { 25 *724ba675SRob Herring device_type = "memory"; 26 *724ba675SRob Herring reg = <0x0 0x0>; 27 *724ba675SRob Herring }; 28 *724ba675SRob Herring 29 *724ba675SRob Herring aliases { 30 *724ba675SRob Herring serial0 = &uart0; 31 *724ba675SRob Herring serial1 = &uart1; 32 *724ba675SRob Herring serial2 = &uart2; 33 *724ba675SRob Herring serial3 = &uart3; 34 *724ba675SRob Herring }; 35 *724ba675SRob Herring 36 *724ba675SRob Herring soc { 37 *724ba675SRob Herring #address-cells = <1>; 38 *724ba675SRob Herring #size-cells = <1>; 39 *724ba675SRob Herring compatible = "simple-bus"; 40 *724ba675SRob Herring ranges; 41 *724ba675SRob Herring interrupt-parent = <&intc0>; 42 *724ba675SRob Herring 43 *724ba675SRob Herring intc0: interrupt-controller@d8140000 { 44 *724ba675SRob Herring compatible = "via,vt8500-intc"; 45 *724ba675SRob Herring interrupt-controller; 46 *724ba675SRob Herring reg = <0xd8140000 0x10000>; 47 *724ba675SRob Herring #interrupt-cells = <1>; 48 *724ba675SRob Herring }; 49 *724ba675SRob Herring 50 *724ba675SRob Herring /* Secondary IC cascaded to intc0 */ 51 *724ba675SRob Herring intc1: interrupt-controller@d8150000 { 52 *724ba675SRob Herring compatible = "via,vt8500-intc"; 53 *724ba675SRob Herring interrupt-controller; 54 *724ba675SRob Herring #interrupt-cells = <1>; 55 *724ba675SRob Herring reg = <0xD8150000 0x10000>; 56 *724ba675SRob Herring interrupts = <56 57 58 59 60 61 62 63>; 57 *724ba675SRob Herring }; 58 *724ba675SRob Herring 59 *724ba675SRob Herring pinctrl: pinctrl@d8110000 { 60 *724ba675SRob Herring compatible = "wm,wm8850-pinctrl"; 61 *724ba675SRob Herring reg = <0xd8110000 0x10000>; 62 *724ba675SRob Herring interrupt-controller; 63 *724ba675SRob Herring #interrupt-cells = <2>; 64 *724ba675SRob Herring gpio-controller; 65 *724ba675SRob Herring #gpio-cells = <2>; 66 *724ba675SRob Herring }; 67 *724ba675SRob Herring 68 *724ba675SRob Herring pmc@d8130000 { 69 *724ba675SRob Herring compatible = "via,vt8500-pmc"; 70 *724ba675SRob Herring reg = <0xd8130000 0x1000>; 71 *724ba675SRob Herring 72 *724ba675SRob Herring clocks { 73 *724ba675SRob Herring #address-cells = <1>; 74 *724ba675SRob Herring #size-cells = <0>; 75 *724ba675SRob Herring 76 *724ba675SRob Herring ref25: ref25M { 77 *724ba675SRob Herring #clock-cells = <0>; 78 *724ba675SRob Herring compatible = "fixed-clock"; 79 *724ba675SRob Herring clock-frequency = <25000000>; 80 *724ba675SRob Herring }; 81 *724ba675SRob Herring 82 *724ba675SRob Herring ref24: ref24M { 83 *724ba675SRob Herring #clock-cells = <0>; 84 *724ba675SRob Herring compatible = "fixed-clock"; 85 *724ba675SRob Herring clock-frequency = <24000000>; 86 *724ba675SRob Herring }; 87 *724ba675SRob Herring 88 *724ba675SRob Herring plla: plla { 89 *724ba675SRob Herring #clock-cells = <0>; 90 *724ba675SRob Herring compatible = "wm,wm8850-pll-clock"; 91 *724ba675SRob Herring clocks = <&ref24>; 92 *724ba675SRob Herring reg = <0x200>; 93 *724ba675SRob Herring }; 94 *724ba675SRob Herring 95 *724ba675SRob Herring pllb: pllb { 96 *724ba675SRob Herring #clock-cells = <0>; 97 *724ba675SRob Herring compatible = "wm,wm8850-pll-clock"; 98 *724ba675SRob Herring clocks = <&ref24>; 99 *724ba675SRob Herring reg = <0x204>; 100 *724ba675SRob Herring }; 101 *724ba675SRob Herring 102 *724ba675SRob Herring pllc: pllc { 103 *724ba675SRob Herring #clock-cells = <0>; 104 *724ba675SRob Herring compatible = "wm,wm8850-pll-clock"; 105 *724ba675SRob Herring clocks = <&ref24>; 106 *724ba675SRob Herring reg = <0x208>; 107 *724ba675SRob Herring }; 108 *724ba675SRob Herring 109 *724ba675SRob Herring plld: plld { 110 *724ba675SRob Herring #clock-cells = <0>; 111 *724ba675SRob Herring compatible = "wm,wm8850-pll-clock"; 112 *724ba675SRob Herring clocks = <&ref24>; 113 *724ba675SRob Herring reg = <0x20c>; 114 *724ba675SRob Herring }; 115 *724ba675SRob Herring 116 *724ba675SRob Herring plle: plle { 117 *724ba675SRob Herring #clock-cells = <0>; 118 *724ba675SRob Herring compatible = "wm,wm8850-pll-clock"; 119 *724ba675SRob Herring clocks = <&ref24>; 120 *724ba675SRob Herring reg = <0x210>; 121 *724ba675SRob Herring }; 122 *724ba675SRob Herring 123 *724ba675SRob Herring pllf: pllf { 124 *724ba675SRob Herring #clock-cells = <0>; 125 *724ba675SRob Herring compatible = "wm,wm8850-pll-clock"; 126 *724ba675SRob Herring clocks = <&ref24>; 127 *724ba675SRob Herring reg = <0x214>; 128 *724ba675SRob Herring }; 129 *724ba675SRob Herring 130 *724ba675SRob Herring pllg: pllg { 131 *724ba675SRob Herring #clock-cells = <0>; 132 *724ba675SRob Herring compatible = "wm,wm8850-pll-clock"; 133 *724ba675SRob Herring clocks = <&ref24>; 134 *724ba675SRob Herring reg = <0x218>; 135 *724ba675SRob Herring }; 136 *724ba675SRob Herring 137 *724ba675SRob Herring clkarm: arm { 138 *724ba675SRob Herring #clock-cells = <0>; 139 *724ba675SRob Herring compatible = "via,vt8500-device-clock"; 140 *724ba675SRob Herring clocks = <&plla>; 141 *724ba675SRob Herring divisor-reg = <0x300>; 142 *724ba675SRob Herring }; 143 *724ba675SRob Herring 144 *724ba675SRob Herring clkahb: ahb { 145 *724ba675SRob Herring #clock-cells = <0>; 146 *724ba675SRob Herring compatible = "via,vt8500-device-clock"; 147 *724ba675SRob Herring clocks = <&pllb>; 148 *724ba675SRob Herring divisor-reg = <0x304>; 149 *724ba675SRob Herring }; 150 *724ba675SRob Herring 151 *724ba675SRob Herring clkapb: apb { 152 *724ba675SRob Herring #clock-cells = <0>; 153 *724ba675SRob Herring compatible = "via,vt8500-device-clock"; 154 *724ba675SRob Herring clocks = <&pllb>; 155 *724ba675SRob Herring divisor-reg = <0x320>; 156 *724ba675SRob Herring }; 157 *724ba675SRob Herring 158 *724ba675SRob Herring clkddr: ddr { 159 *724ba675SRob Herring #clock-cells = <0>; 160 *724ba675SRob Herring compatible = "via,vt8500-device-clock"; 161 *724ba675SRob Herring clocks = <&plld>; 162 *724ba675SRob Herring divisor-reg = <0x310>; 163 *724ba675SRob Herring }; 164 *724ba675SRob Herring 165 *724ba675SRob Herring clkuart0: uart0 { 166 *724ba675SRob Herring #clock-cells = <0>; 167 *724ba675SRob Herring compatible = "via,vt8500-device-clock"; 168 *724ba675SRob Herring clocks = <&ref24>; 169 *724ba675SRob Herring enable-reg = <0x254>; 170 *724ba675SRob Herring enable-bit = <24>; 171 *724ba675SRob Herring }; 172 *724ba675SRob Herring 173 *724ba675SRob Herring clkuart1: uart1 { 174 *724ba675SRob Herring #clock-cells = <0>; 175 *724ba675SRob Herring compatible = "via,vt8500-device-clock"; 176 *724ba675SRob Herring clocks = <&ref24>; 177 *724ba675SRob Herring enable-reg = <0x254>; 178 *724ba675SRob Herring enable-bit = <25>; 179 *724ba675SRob Herring }; 180 *724ba675SRob Herring 181 *724ba675SRob Herring clkuart2: uart2 { 182 *724ba675SRob Herring #clock-cells = <0>; 183 *724ba675SRob Herring compatible = "via,vt8500-device-clock"; 184 *724ba675SRob Herring clocks = <&ref24>; 185 *724ba675SRob Herring enable-reg = <0x254>; 186 *724ba675SRob Herring enable-bit = <26>; 187 *724ba675SRob Herring }; 188 *724ba675SRob Herring 189 *724ba675SRob Herring clkuart3: uart3 { 190 *724ba675SRob Herring #clock-cells = <0>; 191 *724ba675SRob Herring compatible = "via,vt8500-device-clock"; 192 *724ba675SRob Herring clocks = <&ref24>; 193 *724ba675SRob Herring enable-reg = <0x254>; 194 *724ba675SRob Herring enable-bit = <27>; 195 *724ba675SRob Herring }; 196 *724ba675SRob Herring 197 *724ba675SRob Herring clkpwm: pwm { 198 *724ba675SRob Herring #clock-cells = <0>; 199 *724ba675SRob Herring compatible = "via,vt8500-device-clock"; 200 *724ba675SRob Herring clocks = <&pllb>; 201 *724ba675SRob Herring divisor-reg = <0x350>; 202 *724ba675SRob Herring enable-reg = <0x250>; 203 *724ba675SRob Herring enable-bit = <17>; 204 *724ba675SRob Herring }; 205 *724ba675SRob Herring 206 *724ba675SRob Herring clksdhc: sdhc { 207 *724ba675SRob Herring #clock-cells = <0>; 208 *724ba675SRob Herring compatible = "via,vt8500-device-clock"; 209 *724ba675SRob Herring clocks = <&pllb>; 210 *724ba675SRob Herring divisor-reg = <0x330>; 211 *724ba675SRob Herring divisor-mask = <0x3f>; 212 *724ba675SRob Herring enable-reg = <0x250>; 213 *724ba675SRob Herring enable-bit = <0>; 214 *724ba675SRob Herring }; 215 *724ba675SRob Herring }; 216 *724ba675SRob Herring }; 217 *724ba675SRob Herring 218 *724ba675SRob Herring fb: fb@d8051700 { 219 *724ba675SRob Herring compatible = "wm,wm8505-fb"; 220 *724ba675SRob Herring reg = <0xd8051700 0x200>; 221 *724ba675SRob Herring }; 222 *724ba675SRob Herring 223 *724ba675SRob Herring ge_rops@d8050400 { 224 *724ba675SRob Herring compatible = "wm,prizm-ge-rops"; 225 *724ba675SRob Herring reg = <0xd8050400 0x100>; 226 *724ba675SRob Herring }; 227 *724ba675SRob Herring 228 *724ba675SRob Herring pwm: pwm@d8220000 { 229 *724ba675SRob Herring #pwm-cells = <3>; 230 *724ba675SRob Herring compatible = "via,vt8500-pwm"; 231 *724ba675SRob Herring reg = <0xd8220000 0x100>; 232 *724ba675SRob Herring clocks = <&clkpwm>; 233 *724ba675SRob Herring }; 234 *724ba675SRob Herring 235 *724ba675SRob Herring timer@d8130100 { 236 *724ba675SRob Herring compatible = "via,vt8500-timer"; 237 *724ba675SRob Herring reg = <0xd8130100 0x28>; 238 *724ba675SRob Herring interrupts = <36>; 239 *724ba675SRob Herring }; 240 *724ba675SRob Herring 241 *724ba675SRob Herring ehci@d8007900 { 242 *724ba675SRob Herring compatible = "via,vt8500-ehci"; 243 *724ba675SRob Herring reg = <0xd8007900 0x200>; 244 *724ba675SRob Herring interrupts = <26>; 245 *724ba675SRob Herring }; 246 *724ba675SRob Herring 247 *724ba675SRob Herring uhci@d8007b00 { 248 *724ba675SRob Herring compatible = "platform-uhci"; 249 *724ba675SRob Herring reg = <0xd8007b00 0x200>; 250 *724ba675SRob Herring interrupts = <26>; 251 *724ba675SRob Herring }; 252 *724ba675SRob Herring 253 *724ba675SRob Herring uhci@d8008d00 { 254 *724ba675SRob Herring compatible = "platform-uhci"; 255 *724ba675SRob Herring reg = <0xd8008d00 0x200>; 256 *724ba675SRob Herring interrupts = <26>; 257 *724ba675SRob Herring }; 258 *724ba675SRob Herring 259 *724ba675SRob Herring uart0: serial@d8200000 { 260 *724ba675SRob Herring compatible = "via,vt8500-uart"; 261 *724ba675SRob Herring reg = <0xd8200000 0x1040>; 262 *724ba675SRob Herring interrupts = <32>; 263 *724ba675SRob Herring clocks = <&clkuart0>; 264 *724ba675SRob Herring status = "disabled"; 265 *724ba675SRob Herring }; 266 *724ba675SRob Herring 267 *724ba675SRob Herring uart1: serial@d82b0000 { 268 *724ba675SRob Herring compatible = "via,vt8500-uart"; 269 *724ba675SRob Herring reg = <0xd82b0000 0x1040>; 270 *724ba675SRob Herring interrupts = <33>; 271 *724ba675SRob Herring clocks = <&clkuart1>; 272 *724ba675SRob Herring status = "disabled"; 273 *724ba675SRob Herring }; 274 *724ba675SRob Herring 275 *724ba675SRob Herring uart2: serial@d8210000 { 276 *724ba675SRob Herring compatible = "via,vt8500-uart"; 277 *724ba675SRob Herring reg = <0xd8210000 0x1040>; 278 *724ba675SRob Herring interrupts = <47>; 279 *724ba675SRob Herring clocks = <&clkuart2>; 280 *724ba675SRob Herring status = "disabled"; 281 *724ba675SRob Herring }; 282 *724ba675SRob Herring 283 *724ba675SRob Herring uart3: serial@d82c0000 { 284 *724ba675SRob Herring compatible = "via,vt8500-uart"; 285 *724ba675SRob Herring reg = <0xd82c0000 0x1040>; 286 *724ba675SRob Herring interrupts = <50>; 287 *724ba675SRob Herring clocks = <&clkuart3>; 288 *724ba675SRob Herring status = "disabled"; 289 *724ba675SRob Herring }; 290 *724ba675SRob Herring 291 *724ba675SRob Herring rtc@d8100000 { 292 *724ba675SRob Herring compatible = "via,vt8500-rtc"; 293 *724ba675SRob Herring reg = <0xd8100000 0x10000>; 294 *724ba675SRob Herring interrupts = <48>; 295 *724ba675SRob Herring }; 296 *724ba675SRob Herring 297 *724ba675SRob Herring sdhc@d800a000 { 298 *724ba675SRob Herring compatible = "wm,wm8505-sdhc"; 299 *724ba675SRob Herring reg = <0xd800a000 0x1000>; 300 *724ba675SRob Herring interrupts = <20 21>; 301 *724ba675SRob Herring clocks = <&clksdhc>; 302 *724ba675SRob Herring bus-width = <4>; 303 *724ba675SRob Herring sdon-inverted; 304 *724ba675SRob Herring }; 305 *724ba675SRob Herring 306 *724ba675SRob Herring ethernet@d8004000 { 307 *724ba675SRob Herring compatible = "via,vt8500-rhine"; 308 *724ba675SRob Herring reg = <0xd8004000 0x100>; 309 *724ba675SRob Herring interrupts = <10>; 310 *724ba675SRob Herring }; 311 *724ba675SRob Herring }; 312 *724ba675SRob Herring}; 313