1151b88e8SPaul Mackerras/dts-v1/; 278099fe1SPaul Mackerras#include <dt-bindings/gpio/gpio.h> 3151b88e8SPaul Mackerras 4151b88e8SPaul Mackerras/ { 5151b88e8SPaul Mackerras #size-cells = <0x02>; 6151b88e8SPaul Mackerras #address-cells = <0x02>; 7151b88e8SPaul Mackerras model-name = "microwatt"; 8151b88e8SPaul Mackerras compatible = "microwatt-soc"; 9151b88e8SPaul Mackerras 1048b545b8SBenjamin Herrenschmidt aliases { 1148b545b8SBenjamin Herrenschmidt serial0 = &UART0; 1278099fe1SPaul Mackerras ethernet = &enet0; 1348b545b8SBenjamin Herrenschmidt }; 1448b545b8SBenjamin Herrenschmidt 15151b88e8SPaul Mackerras reserved-memory { 16151b88e8SPaul Mackerras #size-cells = <0x02>; 17151b88e8SPaul Mackerras #address-cells = <0x02>; 18151b88e8SPaul Mackerras ranges; 19151b88e8SPaul Mackerras }; 20151b88e8SPaul Mackerras 21151b88e8SPaul Mackerras memory@0 { 22151b88e8SPaul Mackerras device_type = "memory"; 23151b88e8SPaul Mackerras reg = <0x00000000 0x00000000 0x00000000 0x10000000>; 24151b88e8SPaul Mackerras }; 25151b88e8SPaul Mackerras 265825603fSJoel Stanley clocks { 275825603fSJoel Stanley sys_clk: litex_sys_clk { 285825603fSJoel Stanley #clock-cells = <0>; 295825603fSJoel Stanley compatible = "fixed-clock"; 305825603fSJoel Stanley clock-frequency = <100000000>; 315825603fSJoel Stanley }; 325825603fSJoel Stanley }; 335825603fSJoel Stanley 34151b88e8SPaul Mackerras cpus { 35151b88e8SPaul Mackerras #size-cells = <0x00>; 36151b88e8SPaul Mackerras #address-cells = <0x01>; 37151b88e8SPaul Mackerras 38151b88e8SPaul Mackerras ibm,powerpc-cpu-features { 39151b88e8SPaul Mackerras display-name = "Microwatt"; 4078099fe1SPaul Mackerras isa = <3010>; 41151b88e8SPaul Mackerras device_type = "cpu-features"; 42151b88e8SPaul Mackerras compatible = "ibm,powerpc-cpu-features"; 43151b88e8SPaul Mackerras 44151b88e8SPaul Mackerras mmu-radix { 45151b88e8SPaul Mackerras isa = <3000>; 4678099fe1SPaul Mackerras usable-privilege = <6>; 4778099fe1SPaul Mackerras os-support = <0>; 48151b88e8SPaul Mackerras }; 49151b88e8SPaul Mackerras 50151b88e8SPaul Mackerras little-endian { 5178099fe1SPaul Mackerras isa = <0>; 5278099fe1SPaul Mackerras usable-privilege = <7>; 5378099fe1SPaul Mackerras os-support = <0>; 54151b88e8SPaul Mackerras hwcap-bit-nr = <1>; 55151b88e8SPaul Mackerras }; 56151b88e8SPaul Mackerras 57151b88e8SPaul Mackerras cache-inhibited-large-page { 5878099fe1SPaul Mackerras isa = <0>; 5978099fe1SPaul Mackerras usable-privilege = <6>; 6078099fe1SPaul Mackerras os-support = <0>; 61151b88e8SPaul Mackerras }; 62151b88e8SPaul Mackerras 63151b88e8SPaul Mackerras fixed-point-v3 { 64151b88e8SPaul Mackerras isa = <3000>; 6578099fe1SPaul Mackerras usable-privilege = <7>; 66151b88e8SPaul Mackerras }; 67151b88e8SPaul Mackerras 68151b88e8SPaul Mackerras no-execute { 6978099fe1SPaul Mackerras isa = <0x00>; 70151b88e8SPaul Mackerras usable-privilege = <2>; 7178099fe1SPaul Mackerras os-support = <0>; 72151b88e8SPaul Mackerras }; 73151b88e8SPaul Mackerras 74151b88e8SPaul Mackerras floating-point { 7578099fe1SPaul Mackerras hfscr-bit-nr = <0>; 76151b88e8SPaul Mackerras hwcap-bit-nr = <27>; 77151b88e8SPaul Mackerras isa = <0>; 7878099fe1SPaul Mackerras usable-privilege = <7>; 7978099fe1SPaul Mackerras hv-support = <1>; 8078099fe1SPaul Mackerras os-support = <0>; 8178099fe1SPaul Mackerras }; 8278099fe1SPaul Mackerras 8378099fe1SPaul Mackerras prefixed-instructions { 8478099fe1SPaul Mackerras hfscr-bit-nr = <13>; 8578099fe1SPaul Mackerras fscr-bit-nr = <13>; 8678099fe1SPaul Mackerras isa = <3010>; 8778099fe1SPaul Mackerras usable-privilege = <7>; 8878099fe1SPaul Mackerras os-support = <1>; 8978099fe1SPaul Mackerras hv-support = <1>; 9078099fe1SPaul Mackerras }; 9178099fe1SPaul Mackerras 9278099fe1SPaul Mackerras tar { 9378099fe1SPaul Mackerras hfscr-bit-nr = <8>; 9478099fe1SPaul Mackerras fscr-bit-nr = <8>; 9578099fe1SPaul Mackerras isa = <2070>; 9678099fe1SPaul Mackerras usable-privilege = <7>; 9778099fe1SPaul Mackerras os-support = <1>; 9878099fe1SPaul Mackerras hv-support = <1>; 9978099fe1SPaul Mackerras hwcap-bit-nr = <58>; 10078099fe1SPaul Mackerras }; 10178099fe1SPaul Mackerras 10278099fe1SPaul Mackerras control-register { 10378099fe1SPaul Mackerras isa = <0>; 10478099fe1SPaul Mackerras usable-privilege = <7>; 10578099fe1SPaul Mackerras }; 10678099fe1SPaul Mackerras 10778099fe1SPaul Mackerras system-call-vectored { 10878099fe1SPaul Mackerras isa = <3000>; 10978099fe1SPaul Mackerras usable-privilege = <7>; 11078099fe1SPaul Mackerras os-support = <1>; 11178099fe1SPaul Mackerras fscr-bit-nr = <12>; 11278099fe1SPaul Mackerras hwcap-bit-nr = <52>; 113151b88e8SPaul Mackerras }; 114151b88e8SPaul Mackerras }; 115151b88e8SPaul Mackerras 116151b88e8SPaul Mackerras PowerPC,Microwatt@0 { 117151b88e8SPaul Mackerras i-cache-sets = <2>; 118151b88e8SPaul Mackerras ibm,dec-bits = <64>; 119151b88e8SPaul Mackerras reservation-granule-size = <64>; 120151b88e8SPaul Mackerras clock-frequency = <100000000>; 121151b88e8SPaul Mackerras timebase-frequency = <100000000>; 122151b88e8SPaul Mackerras i-tlb-sets = <1>; 123151b88e8SPaul Mackerras ibm,ppc-interrupt-server#s = <0>; 124151b88e8SPaul Mackerras i-cache-block-size = <64>; 125151b88e8SPaul Mackerras d-cache-block-size = <64>; 126151b88e8SPaul Mackerras d-cache-sets = <2>; 127151b88e8SPaul Mackerras i-tlb-size = <64>; 128151b88e8SPaul Mackerras cpu-version = <0x990000>; 129151b88e8SPaul Mackerras status = "okay"; 130151b88e8SPaul Mackerras i-cache-size = <0x1000>; 131151b88e8SPaul Mackerras ibm,processor-radix-AP-encodings = <0x0c 0xa0000010 0x20000015 0x4000001e>; 132151b88e8SPaul Mackerras tlb-size = <0>; 133151b88e8SPaul Mackerras tlb-sets = <0>; 134151b88e8SPaul Mackerras device_type = "cpu"; 135151b88e8SPaul Mackerras d-tlb-size = <128>; 136151b88e8SPaul Mackerras d-tlb-sets = <2>; 137151b88e8SPaul Mackerras reg = <0>; 138151b88e8SPaul Mackerras general-purpose; 139151b88e8SPaul Mackerras 64-bit; 140151b88e8SPaul Mackerras d-cache-size = <0x1000>; 141151b88e8SPaul Mackerras ibm,chip-id = <0>; 1420ef1ffc7SJoel Stanley ibm,mmu-lpid-bits = <12>; 1430ef1ffc7SJoel Stanley ibm,mmu-pid-bits = <20>; 144151b88e8SPaul Mackerras }; 145*aca95fb6SPaul Mackerras 146*aca95fb6SPaul Mackerras PowerPC,Microwatt@1 { 147*aca95fb6SPaul Mackerras i-cache-sets = <2>; 148*aca95fb6SPaul Mackerras ibm,dec-bits = <64>; 149*aca95fb6SPaul Mackerras reservation-granule-size = <64>; 150*aca95fb6SPaul Mackerras clock-frequency = <100000000>; 151*aca95fb6SPaul Mackerras timebase-frequency = <100000000>; 152*aca95fb6SPaul Mackerras i-tlb-sets = <1>; 153*aca95fb6SPaul Mackerras ibm,ppc-interrupt-server#s = <1>; 154*aca95fb6SPaul Mackerras i-cache-block-size = <64>; 155*aca95fb6SPaul Mackerras d-cache-block-size = <64>; 156*aca95fb6SPaul Mackerras d-cache-sets = <2>; 157*aca95fb6SPaul Mackerras i-tlb-size = <64>; 158*aca95fb6SPaul Mackerras cpu-version = <0x990000>; 159*aca95fb6SPaul Mackerras status = "okay"; 160*aca95fb6SPaul Mackerras i-cache-size = <0x1000>; 161*aca95fb6SPaul Mackerras ibm,processor-radix-AP-encodings = <0x0c 0xa0000010 0x20000015 0x4000001e>; 162*aca95fb6SPaul Mackerras tlb-size = <0>; 163*aca95fb6SPaul Mackerras tlb-sets = <0>; 164*aca95fb6SPaul Mackerras device_type = "cpu"; 165*aca95fb6SPaul Mackerras d-tlb-size = <128>; 166*aca95fb6SPaul Mackerras d-tlb-sets = <2>; 167*aca95fb6SPaul Mackerras reg = <1>; 168*aca95fb6SPaul Mackerras general-purpose; 169*aca95fb6SPaul Mackerras 64-bit; 170*aca95fb6SPaul Mackerras d-cache-size = <0x1000>; 171*aca95fb6SPaul Mackerras ibm,chip-id = <0>; 172*aca95fb6SPaul Mackerras ibm,mmu-lpid-bits = <12>; 173*aca95fb6SPaul Mackerras ibm,mmu-pid-bits = <20>; 174*aca95fb6SPaul Mackerras }; 175151b88e8SPaul Mackerras }; 176151b88e8SPaul Mackerras 1770d0f9e5fSBenjamin Herrenschmidt soc@c0000000 { 1780d0f9e5fSBenjamin Herrenschmidt compatible = "simple-bus"; 1790d0f9e5fSBenjamin Herrenschmidt #address-cells = <1>; 1800d0f9e5fSBenjamin Herrenschmidt #size-cells = <1>; 181aa9c5adfSBenjamin Herrenschmidt interrupt-parent = <&ICS>; 1820d0f9e5fSBenjamin Herrenschmidt 1830d0f9e5fSBenjamin Herrenschmidt ranges = <0 0 0xc0000000 0x40000000>; 184aa9c5adfSBenjamin Herrenschmidt 185aa9c5adfSBenjamin Herrenschmidt interrupt-controller@4000 { 186aa9c5adfSBenjamin Herrenschmidt compatible = "openpower,xics-presentation", "ibm,ppc-xicp"; 187*aca95fb6SPaul Mackerras ibm,interrupt-server-ranges = <0x0 0x2>; 188*aca95fb6SPaul Mackerras reg = <0x4000 0x10 0x4010 0x10>; 189aa9c5adfSBenjamin Herrenschmidt }; 190aa9c5adfSBenjamin Herrenschmidt 191aa9c5adfSBenjamin Herrenschmidt ICS: interrupt-controller@5000 { 192aa9c5adfSBenjamin Herrenschmidt compatible = "openpower,xics-sources"; 193aa9c5adfSBenjamin Herrenschmidt interrupt-controller; 194aa9c5adfSBenjamin Herrenschmidt interrupt-ranges = <0x10 0x10>; 195aa9c5adfSBenjamin Herrenschmidt reg = <0x5000 0x100>; 196aa9c5adfSBenjamin Herrenschmidt #address-cells = <0>; 197aa9c5adfSBenjamin Herrenschmidt #size-cells = <0>; 198aa9c5adfSBenjamin Herrenschmidt #interrupt-cells = <2>; 199aa9c5adfSBenjamin Herrenschmidt }; 200aa9c5adfSBenjamin Herrenschmidt 20148b545b8SBenjamin Herrenschmidt UART0: serial@2000 { 20248b545b8SBenjamin Herrenschmidt device_type = "serial"; 20348b545b8SBenjamin Herrenschmidt compatible = "ns16550"; 20448b545b8SBenjamin Herrenschmidt reg = <0x2000 0x8>; 20548b545b8SBenjamin Herrenschmidt clock-frequency = <100000000>; 20648b545b8SBenjamin Herrenschmidt current-speed = <115200>; 20748b545b8SBenjamin Herrenschmidt reg-shift = <2>; 20848b545b8SBenjamin Herrenschmidt fifo-size = <16>; 20948b545b8SBenjamin Herrenschmidt interrupts = <0x10 0x1>; 21048b545b8SBenjamin Herrenschmidt }; 211602d0f96SJoel Stanley 21278099fe1SPaul Mackerras gpio: gpio@7000 { 21378099fe1SPaul Mackerras device_type = "gpio"; 21478099fe1SPaul Mackerras compatible = "faraday,ftgpio010"; 21578099fe1SPaul Mackerras gpio-controller; 21678099fe1SPaul Mackerras #gpio-cells = <2>; 21778099fe1SPaul Mackerras reg = <0x7000 0x80>; 21878099fe1SPaul Mackerras interrupts = <0x14 1>; 21978099fe1SPaul Mackerras interrupt-controller; 22078099fe1SPaul Mackerras #interrupt-cells = <2>; 22178099fe1SPaul Mackerras }; 22278099fe1SPaul Mackerras 22378099fe1SPaul Mackerras enet0: ethernet@8020000 { 224602d0f96SJoel Stanley compatible = "litex,liteeth"; 225602d0f96SJoel Stanley reg = <0x8021000 0x100 226602d0f96SJoel Stanley 0x8020800 0x100 227602d0f96SJoel Stanley 0x8030000 0x2000>; 228602d0f96SJoel Stanley reg-names = "mac", "mido", "buffer"; 229602d0f96SJoel Stanley litex,rx-slots = <2>; 230602d0f96SJoel Stanley litex,tx-slots = <2>; 231602d0f96SJoel Stanley litex,slot-size = <0x800>; 232602d0f96SJoel Stanley interrupts = <0x11 0x1>; 233602d0f96SJoel Stanley }; 2345825603fSJoel Stanley 2355825603fSJoel Stanley mmc@8040000 { 2365825603fSJoel Stanley compatible = "litex,mmc"; 2375825603fSJoel Stanley reg = <0x8042800 0x800 2385825603fSJoel Stanley 0x8041000 0x800 2395825603fSJoel Stanley 0x8040800 0x800 2405825603fSJoel Stanley 0x8042000 0x800 2415825603fSJoel Stanley 0x8041800 0x800>; 2425825603fSJoel Stanley reg-names = "phy", "core", "reader", "writer", "irq"; 2435825603fSJoel Stanley bus-width = <4>; 2445825603fSJoel Stanley interrupts = <0x13 1>; 2455825603fSJoel Stanley clocks = <&sys_clk>; 2465825603fSJoel Stanley }; 24748b545b8SBenjamin Herrenschmidt }; 24848b545b8SBenjamin Herrenschmidt 24948b545b8SBenjamin Herrenschmidt chosen { 25048b545b8SBenjamin Herrenschmidt bootargs = ""; 25148b545b8SBenjamin Herrenschmidt ibm,architecture-vec-5 = [19 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 25248b545b8SBenjamin Herrenschmidt 00 00 00 00 00 00 00 00 40 00 40]; 25348b545b8SBenjamin Herrenschmidt stdout-path = &UART0; 2540d0f9e5fSBenjamin Herrenschmidt }; 255151b88e8SPaul Mackerras}; 256