1ca5b3410SRobert Richter/* 2ca5b3410SRobert Richter * dts file for AppliedMicro (APM) X-Gene Storm SOC 3ca5b3410SRobert Richter * 4ca5b3410SRobert Richter * Copyright (C) 2013, Applied Micro Circuits Corporation 5ca5b3410SRobert Richter * 6ca5b3410SRobert Richter * This program is free software; you can redistribute it and/or 7ca5b3410SRobert Richter * modify it under the terms of the GNU General Public License as 8ca5b3410SRobert Richter * published by the Free Software Foundation; either version 2 of 9ca5b3410SRobert Richter * the License, or (at your option) any later version. 10ca5b3410SRobert Richter */ 11ca5b3410SRobert Richter 12ca5b3410SRobert Richter/ { 13ca5b3410SRobert Richter compatible = "apm,xgene-storm"; 14ca5b3410SRobert Richter interrupt-parent = <&gic>; 15ca5b3410SRobert Richter #address-cells = <2>; 16ca5b3410SRobert Richter #size-cells = <2>; 17ca5b3410SRobert Richter 18ca5b3410SRobert Richter cpus { 19ca5b3410SRobert Richter #address-cells = <2>; 20ca5b3410SRobert Richter #size-cells = <0>; 21ca5b3410SRobert Richter 22ca5b3410SRobert Richter cpu@000 { 23ca5b3410SRobert Richter device_type = "cpu"; 24ca5b3410SRobert Richter compatible = "apm,potenza", "arm,armv8"; 25ca5b3410SRobert Richter reg = <0x0 0x000>; 26ca5b3410SRobert Richter enable-method = "spin-table"; 27ca5b3410SRobert Richter cpu-release-addr = <0x1 0x0000fff8>; 28ca5b3410SRobert Richter }; 29ca5b3410SRobert Richter cpu@001 { 30ca5b3410SRobert Richter device_type = "cpu"; 31ca5b3410SRobert Richter compatible = "apm,potenza", "arm,armv8"; 32ca5b3410SRobert Richter reg = <0x0 0x001>; 33ca5b3410SRobert Richter enable-method = "spin-table"; 34ca5b3410SRobert Richter cpu-release-addr = <0x1 0x0000fff8>; 35ca5b3410SRobert Richter }; 36ca5b3410SRobert Richter cpu@100 { 37ca5b3410SRobert Richter device_type = "cpu"; 38ca5b3410SRobert Richter compatible = "apm,potenza", "arm,armv8"; 39ca5b3410SRobert Richter reg = <0x0 0x100>; 40ca5b3410SRobert Richter enable-method = "spin-table"; 41ca5b3410SRobert Richter cpu-release-addr = <0x1 0x0000fff8>; 42ca5b3410SRobert Richter }; 43ca5b3410SRobert Richter cpu@101 { 44ca5b3410SRobert Richter device_type = "cpu"; 45ca5b3410SRobert Richter compatible = "apm,potenza", "arm,armv8"; 46ca5b3410SRobert Richter reg = <0x0 0x101>; 47ca5b3410SRobert Richter enable-method = "spin-table"; 48ca5b3410SRobert Richter cpu-release-addr = <0x1 0x0000fff8>; 49ca5b3410SRobert Richter }; 50ca5b3410SRobert Richter cpu@200 { 51ca5b3410SRobert Richter device_type = "cpu"; 52ca5b3410SRobert Richter compatible = "apm,potenza", "arm,armv8"; 53ca5b3410SRobert Richter reg = <0x0 0x200>; 54ca5b3410SRobert Richter enable-method = "spin-table"; 55ca5b3410SRobert Richter cpu-release-addr = <0x1 0x0000fff8>; 56ca5b3410SRobert Richter }; 57ca5b3410SRobert Richter cpu@201 { 58ca5b3410SRobert Richter device_type = "cpu"; 59ca5b3410SRobert Richter compatible = "apm,potenza", "arm,armv8"; 60ca5b3410SRobert Richter reg = <0x0 0x201>; 61ca5b3410SRobert Richter enable-method = "spin-table"; 62ca5b3410SRobert Richter cpu-release-addr = <0x1 0x0000fff8>; 63ca5b3410SRobert Richter }; 64ca5b3410SRobert Richter cpu@300 { 65ca5b3410SRobert Richter device_type = "cpu"; 66ca5b3410SRobert Richter compatible = "apm,potenza", "arm,armv8"; 67ca5b3410SRobert Richter reg = <0x0 0x300>; 68ca5b3410SRobert Richter enable-method = "spin-table"; 69ca5b3410SRobert Richter cpu-release-addr = <0x1 0x0000fff8>; 70ca5b3410SRobert Richter }; 71ca5b3410SRobert Richter cpu@301 { 72ca5b3410SRobert Richter device_type = "cpu"; 73ca5b3410SRobert Richter compatible = "apm,potenza", "arm,armv8"; 74ca5b3410SRobert Richter reg = <0x0 0x301>; 75ca5b3410SRobert Richter enable-method = "spin-table"; 76ca5b3410SRobert Richter cpu-release-addr = <0x1 0x0000fff8>; 77ca5b3410SRobert Richter }; 78ca5b3410SRobert Richter }; 79ca5b3410SRobert Richter 80ca5b3410SRobert Richter gic: interrupt-controller@78010000 { 81ca5b3410SRobert Richter compatible = "arm,cortex-a15-gic"; 82ca5b3410SRobert Richter #interrupt-cells = <3>; 83ca5b3410SRobert Richter interrupt-controller; 84ca5b3410SRobert Richter reg = <0x0 0x78010000 0x0 0x1000>, /* GIC Dist */ 85ca5b3410SRobert Richter <0x0 0x78020000 0x0 0x1000>, /* GIC CPU */ 86ca5b3410SRobert Richter <0x0 0x78040000 0x0 0x2000>, /* GIC VCPU Control */ 87ca5b3410SRobert Richter <0x0 0x78060000 0x0 0x2000>; /* GIC VCPU */ 88ca5b3410SRobert Richter interrupts = <1 9 0xf04>; /* GIC Maintenence IRQ */ 89ca5b3410SRobert Richter }; 90ca5b3410SRobert Richter 91ca5b3410SRobert Richter timer { 92ca5b3410SRobert Richter compatible = "arm,armv8-timer"; 93ca5b3410SRobert Richter interrupts = <1 0 0xff01>, /* Secure Phys IRQ */ 94ca5b3410SRobert Richter <1 13 0xff01>, /* Non-secure Phys IRQ */ 95ca5b3410SRobert Richter <1 14 0xff01>, /* Virt IRQ */ 96ca5b3410SRobert Richter <1 15 0xff01>; /* Hyp IRQ */ 97ca5b3410SRobert Richter clock-frequency = <50000000>; 98ca5b3410SRobert Richter }; 99ca5b3410SRobert Richter 1007434f42bSFeng Kan pmu { 1017434f42bSFeng Kan compatible = "apm,potenza-pmu", "arm,armv8-pmuv3"; 1027434f42bSFeng Kan interrupts = <1 12 0xff04>; 1037434f42bSFeng Kan }; 1047434f42bSFeng Kan 105ca5b3410SRobert Richter soc { 106ca5b3410SRobert Richter compatible = "simple-bus"; 107ca5b3410SRobert Richter #address-cells = <2>; 108ca5b3410SRobert Richter #size-cells = <2>; 109ca5b3410SRobert Richter ranges; 11074e353e1SRameshwar Prasad Sahu dma-ranges = <0x0 0x0 0x0 0x0 0x400 0x0>; 111ca5b3410SRobert Richter 112ca5b3410SRobert Richter clocks { 113ca5b3410SRobert Richter #address-cells = <2>; 114ca5b3410SRobert Richter #size-cells = <2>; 115ca5b3410SRobert Richter ranges; 116ca5b3410SRobert Richter refclk: refclk { 117ca5b3410SRobert Richter compatible = "fixed-clock"; 118ca5b3410SRobert Richter #clock-cells = <1>; 119ca5b3410SRobert Richter clock-frequency = <100000000>; 120ca5b3410SRobert Richter clock-output-names = "refclk"; 121ca5b3410SRobert Richter }; 122ca5b3410SRobert Richter 123ca5b3410SRobert Richter pcppll: pcppll@17000100 { 124ca5b3410SRobert Richter compatible = "apm,xgene-pcppll-clock"; 125ca5b3410SRobert Richter #clock-cells = <1>; 126ca5b3410SRobert Richter clocks = <&refclk 0>; 127ca5b3410SRobert Richter clock-names = "pcppll"; 128ca5b3410SRobert Richter reg = <0x0 0x17000100 0x0 0x1000>; 129ca5b3410SRobert Richter clock-output-names = "pcppll"; 130ca5b3410SRobert Richter type = <0>; 131ca5b3410SRobert Richter }; 132ca5b3410SRobert Richter 133ca5b3410SRobert Richter socpll: socpll@17000120 { 134ca5b3410SRobert Richter compatible = "apm,xgene-socpll-clock"; 135ca5b3410SRobert Richter #clock-cells = <1>; 136ca5b3410SRobert Richter clocks = <&refclk 0>; 137ca5b3410SRobert Richter clock-names = "socpll"; 138ca5b3410SRobert Richter reg = <0x0 0x17000120 0x0 0x1000>; 139ca5b3410SRobert Richter clock-output-names = "socpll"; 140ca5b3410SRobert Richter type = <1>; 141ca5b3410SRobert Richter }; 142ca5b3410SRobert Richter 143ca5b3410SRobert Richter socplldiv2: socplldiv2 { 144ca5b3410SRobert Richter compatible = "fixed-factor-clock"; 145ca5b3410SRobert Richter #clock-cells = <1>; 146ca5b3410SRobert Richter clocks = <&socpll 0>; 147ca5b3410SRobert Richter clock-names = "socplldiv2"; 148ca5b3410SRobert Richter clock-mult = <1>; 149ca5b3410SRobert Richter clock-div = <2>; 150ca5b3410SRobert Richter clock-output-names = "socplldiv2"; 151ca5b3410SRobert Richter }; 152ca5b3410SRobert Richter 153*8f74e861SSuman Tripathi ahbclk: ahbclk@1f2ac000 { 154*8f74e861SSuman Tripathi compatible = "apm,xgene-device-clock"; 155*8f74e861SSuman Tripathi #clock-cells = <1>; 156*8f74e861SSuman Tripathi clocks = <&socplldiv2 0>; 157*8f74e861SSuman Tripathi reg = <0x0 0x1f2ac000 0x0 0x1000 158*8f74e861SSuman Tripathi 0x0 0x17000000 0x0 0x2000>; 159*8f74e861SSuman Tripathi reg-names = "csr-reg", "div-reg"; 160*8f74e861SSuman Tripathi csr-offset = <0x0>; 161*8f74e861SSuman Tripathi csr-mask = <0x1>; 162*8f74e861SSuman Tripathi enable-offset = <0x8>; 163*8f74e861SSuman Tripathi enable-mask = <0x1>; 164*8f74e861SSuman Tripathi divider-offset = <0x164>; 165*8f74e861SSuman Tripathi divider-width = <0x5>; 166*8f74e861SSuman Tripathi divider-shift = <0x0>; 167*8f74e861SSuman Tripathi clock-output-names = "ahbclk"; 168*8f74e861SSuman Tripathi }; 169*8f74e861SSuman Tripathi 170*8f74e861SSuman Tripathi sdioclk: sdioclk@1f2ac000 { 171*8f74e861SSuman Tripathi compatible = "apm,xgene-device-clock"; 172*8f74e861SSuman Tripathi #clock-cells = <1>; 173*8f74e861SSuman Tripathi clocks = <&socplldiv2 0>; 174*8f74e861SSuman Tripathi reg = <0x0 0x1f2ac000 0x0 0x1000 175*8f74e861SSuman Tripathi 0x0 0x17000000 0x0 0x2000>; 176*8f74e861SSuman Tripathi reg-names = "csr-reg", "div-reg"; 177*8f74e861SSuman Tripathi csr-offset = <0x0>; 178*8f74e861SSuman Tripathi csr-mask = <0x2>; 179*8f74e861SSuman Tripathi enable-offset = <0x8>; 180*8f74e861SSuman Tripathi enable-mask = <0x2>; 181*8f74e861SSuman Tripathi divider-offset = <0x178>; 182*8f74e861SSuman Tripathi divider-width = <0x8>; 183*8f74e861SSuman Tripathi divider-shift = <0x0>; 184*8f74e861SSuman Tripathi clock-output-names = "sdioclk"; 185*8f74e861SSuman Tripathi }; 186*8f74e861SSuman Tripathi 187ca5b3410SRobert Richter qmlclk: qmlclk { 188ca5b3410SRobert Richter compatible = "apm,xgene-device-clock"; 189ca5b3410SRobert Richter #clock-cells = <1>; 190ca5b3410SRobert Richter clocks = <&socplldiv2 0>; 191ca5b3410SRobert Richter clock-names = "qmlclk"; 192ca5b3410SRobert Richter reg = <0x0 0x1703C000 0x0 0x1000>; 193ca5b3410SRobert Richter reg-names = "csr-reg"; 194ca5b3410SRobert Richter clock-output-names = "qmlclk"; 195ca5b3410SRobert Richter }; 196ca5b3410SRobert Richter 197ca5b3410SRobert Richter ethclk: ethclk { 198ca5b3410SRobert Richter compatible = "apm,xgene-device-clock"; 199ca5b3410SRobert Richter #clock-cells = <1>; 200ca5b3410SRobert Richter clocks = <&socplldiv2 0>; 201ca5b3410SRobert Richter clock-names = "ethclk"; 202ca5b3410SRobert Richter reg = <0x0 0x17000000 0x0 0x1000>; 203ca5b3410SRobert Richter reg-names = "div-reg"; 204ca5b3410SRobert Richter divider-offset = <0x238>; 205ca5b3410SRobert Richter divider-width = <0x9>; 206ca5b3410SRobert Richter divider-shift = <0x0>; 207ca5b3410SRobert Richter clock-output-names = "ethclk"; 208ca5b3410SRobert Richter }; 209ca5b3410SRobert Richter 210ca5b3410SRobert Richter menetclk: menetclk { 211ca5b3410SRobert Richter compatible = "apm,xgene-device-clock"; 212ca5b3410SRobert Richter #clock-cells = <1>; 213ca5b3410SRobert Richter clocks = <ðclk 0>; 214ca5b3410SRobert Richter reg = <0x0 0x1702C000 0x0 0x1000>; 215ca5b3410SRobert Richter reg-names = "csr-reg"; 216ca5b3410SRobert Richter clock-output-names = "menetclk"; 217ca5b3410SRobert Richter }; 218ca5b3410SRobert Richter 219ca5b3410SRobert Richter sge0clk: sge0clk@1f21c000 { 220ca5b3410SRobert Richter compatible = "apm,xgene-device-clock"; 221ca5b3410SRobert Richter #clock-cells = <1>; 222ca5b3410SRobert Richter clocks = <&socplldiv2 0>; 223ca5b3410SRobert Richter reg = <0x0 0x1f21c000 0x0 0x1000>; 224ca5b3410SRobert Richter reg-names = "csr-reg"; 225ca5b3410SRobert Richter csr-mask = <0x3>; 226ca5b3410SRobert Richter clock-output-names = "sge0clk"; 227ca5b3410SRobert Richter }; 228ca5b3410SRobert Richter 2292d33394eSKeyur Chudgar sge1clk: sge1clk@1f21c000 { 2302d33394eSKeyur Chudgar compatible = "apm,xgene-device-clock"; 2312d33394eSKeyur Chudgar #clock-cells = <1>; 2322d33394eSKeyur Chudgar clocks = <&socplldiv2 0>; 2332d33394eSKeyur Chudgar reg = <0x0 0x1f21c000 0x0 0x1000>; 2342d33394eSKeyur Chudgar reg-names = "csr-reg"; 2352d33394eSKeyur Chudgar csr-mask = <0xc>; 2362d33394eSKeyur Chudgar clock-output-names = "sge1clk"; 2372d33394eSKeyur Chudgar }; 2382d33394eSKeyur Chudgar 239ca5b3410SRobert Richter xge0clk: xge0clk@1f61c000 { 240ca5b3410SRobert Richter compatible = "apm,xgene-device-clock"; 241ca5b3410SRobert Richter #clock-cells = <1>; 242ca5b3410SRobert Richter clocks = <&socplldiv2 0>; 243ca5b3410SRobert Richter reg = <0x0 0x1f61c000 0x0 0x1000>; 244ca5b3410SRobert Richter reg-names = "csr-reg"; 245ca5b3410SRobert Richter csr-mask = <0x3>; 246ca5b3410SRobert Richter clock-output-names = "xge0clk"; 247ca5b3410SRobert Richter }; 248ca5b3410SRobert Richter 249e63c7a09SIyappan Subramanian xge1clk: xge1clk@1f62c000 { 250e63c7a09SIyappan Subramanian compatible = "apm,xgene-device-clock"; 251e63c7a09SIyappan Subramanian status = "disabled"; 252e63c7a09SIyappan Subramanian #clock-cells = <1>; 253e63c7a09SIyappan Subramanian clocks = <&socplldiv2 0>; 254e63c7a09SIyappan Subramanian reg = <0x0 0x1f62c000 0x0 0x1000>; 255e63c7a09SIyappan Subramanian reg-names = "csr-reg"; 256e63c7a09SIyappan Subramanian csr-mask = <0x3>; 257e63c7a09SIyappan Subramanian clock-output-names = "xge1clk"; 258e63c7a09SIyappan Subramanian }; 259e63c7a09SIyappan Subramanian 260ca5b3410SRobert Richter sataphy1clk: sataphy1clk@1f21c000 { 261ca5b3410SRobert Richter compatible = "apm,xgene-device-clock"; 262ca5b3410SRobert Richter #clock-cells = <1>; 263ca5b3410SRobert Richter clocks = <&socplldiv2 0>; 264ca5b3410SRobert Richter reg = <0x0 0x1f21c000 0x0 0x1000>; 265ca5b3410SRobert Richter reg-names = "csr-reg"; 266ca5b3410SRobert Richter clock-output-names = "sataphy1clk"; 267ca5b3410SRobert Richter status = "disabled"; 268ca5b3410SRobert Richter csr-offset = <0x4>; 269ca5b3410SRobert Richter csr-mask = <0x00>; 270ca5b3410SRobert Richter enable-offset = <0x0>; 271ca5b3410SRobert Richter enable-mask = <0x06>; 272ca5b3410SRobert Richter }; 273ca5b3410SRobert Richter 274ca5b3410SRobert Richter sataphy2clk: sataphy1clk@1f22c000 { 275ca5b3410SRobert Richter compatible = "apm,xgene-device-clock"; 276ca5b3410SRobert Richter #clock-cells = <1>; 277ca5b3410SRobert Richter clocks = <&socplldiv2 0>; 278ca5b3410SRobert Richter reg = <0x0 0x1f22c000 0x0 0x1000>; 279ca5b3410SRobert Richter reg-names = "csr-reg"; 280ca5b3410SRobert Richter clock-output-names = "sataphy2clk"; 281ca5b3410SRobert Richter status = "ok"; 282ca5b3410SRobert Richter csr-offset = <0x4>; 283ca5b3410SRobert Richter csr-mask = <0x3a>; 284ca5b3410SRobert Richter enable-offset = <0x0>; 285ca5b3410SRobert Richter enable-mask = <0x06>; 286ca5b3410SRobert Richter }; 287ca5b3410SRobert Richter 288ca5b3410SRobert Richter sataphy3clk: sataphy1clk@1f23c000 { 289ca5b3410SRobert Richter compatible = "apm,xgene-device-clock"; 290ca5b3410SRobert Richter #clock-cells = <1>; 291ca5b3410SRobert Richter clocks = <&socplldiv2 0>; 292ca5b3410SRobert Richter reg = <0x0 0x1f23c000 0x0 0x1000>; 293ca5b3410SRobert Richter reg-names = "csr-reg"; 294ca5b3410SRobert Richter clock-output-names = "sataphy3clk"; 295ca5b3410SRobert Richter status = "ok"; 296ca5b3410SRobert Richter csr-offset = <0x4>; 297ca5b3410SRobert Richter csr-mask = <0x3a>; 298ca5b3410SRobert Richter enable-offset = <0x0>; 299ca5b3410SRobert Richter enable-mask = <0x06>; 300ca5b3410SRobert Richter }; 301ca5b3410SRobert Richter 302ca5b3410SRobert Richter sata01clk: sata01clk@1f21c000 { 303ca5b3410SRobert Richter compatible = "apm,xgene-device-clock"; 304ca5b3410SRobert Richter #clock-cells = <1>; 305ca5b3410SRobert Richter clocks = <&socplldiv2 0>; 306ca5b3410SRobert Richter reg = <0x0 0x1f21c000 0x0 0x1000>; 307ca5b3410SRobert Richter reg-names = "csr-reg"; 308ca5b3410SRobert Richter clock-output-names = "sata01clk"; 309ca5b3410SRobert Richter csr-offset = <0x4>; 310ca5b3410SRobert Richter csr-mask = <0x05>; 311ca5b3410SRobert Richter enable-offset = <0x0>; 312ca5b3410SRobert Richter enable-mask = <0x39>; 313ca5b3410SRobert Richter }; 314ca5b3410SRobert Richter 315ca5b3410SRobert Richter sata23clk: sata23clk@1f22c000 { 316ca5b3410SRobert Richter compatible = "apm,xgene-device-clock"; 317ca5b3410SRobert Richter #clock-cells = <1>; 318ca5b3410SRobert Richter clocks = <&socplldiv2 0>; 319ca5b3410SRobert Richter reg = <0x0 0x1f22c000 0x0 0x1000>; 320ca5b3410SRobert Richter reg-names = "csr-reg"; 321ca5b3410SRobert Richter clock-output-names = "sata23clk"; 322ca5b3410SRobert Richter csr-offset = <0x4>; 323ca5b3410SRobert Richter csr-mask = <0x05>; 324ca5b3410SRobert Richter enable-offset = <0x0>; 325ca5b3410SRobert Richter enable-mask = <0x39>; 326ca5b3410SRobert Richter }; 327ca5b3410SRobert Richter 328ca5b3410SRobert Richter sata45clk: sata45clk@1f23c000 { 329ca5b3410SRobert Richter compatible = "apm,xgene-device-clock"; 330ca5b3410SRobert Richter #clock-cells = <1>; 331ca5b3410SRobert Richter clocks = <&socplldiv2 0>; 332ca5b3410SRobert Richter reg = <0x0 0x1f23c000 0x0 0x1000>; 333ca5b3410SRobert Richter reg-names = "csr-reg"; 334ca5b3410SRobert Richter clock-output-names = "sata45clk"; 335ca5b3410SRobert Richter csr-offset = <0x4>; 336ca5b3410SRobert Richter csr-mask = <0x05>; 337ca5b3410SRobert Richter enable-offset = <0x0>; 338ca5b3410SRobert Richter enable-mask = <0x39>; 339ca5b3410SRobert Richter }; 340ca5b3410SRobert Richter 341ca5b3410SRobert Richter rtcclk: rtcclk@17000000 { 342ca5b3410SRobert Richter compatible = "apm,xgene-device-clock"; 343ca5b3410SRobert Richter #clock-cells = <1>; 344ca5b3410SRobert Richter clocks = <&socplldiv2 0>; 345ca5b3410SRobert Richter reg = <0x0 0x17000000 0x0 0x2000>; 346ca5b3410SRobert Richter reg-names = "csr-reg"; 347ca5b3410SRobert Richter csr-offset = <0xc>; 348ca5b3410SRobert Richter csr-mask = <0x2>; 349ca5b3410SRobert Richter enable-offset = <0x10>; 350ca5b3410SRobert Richter enable-mask = <0x2>; 351ca5b3410SRobert Richter clock-output-names = "rtcclk"; 352ca5b3410SRobert Richter }; 353ca5b3410SRobert Richter 354ca5b3410SRobert Richter rngpkaclk: rngpkaclk@17000000 { 355ca5b3410SRobert Richter compatible = "apm,xgene-device-clock"; 356ca5b3410SRobert Richter #clock-cells = <1>; 357ca5b3410SRobert Richter clocks = <&socplldiv2 0>; 358ca5b3410SRobert Richter reg = <0x0 0x17000000 0x0 0x2000>; 359ca5b3410SRobert Richter reg-names = "csr-reg"; 360ca5b3410SRobert Richter csr-offset = <0xc>; 361ca5b3410SRobert Richter csr-mask = <0x10>; 362ca5b3410SRobert Richter enable-offset = <0x10>; 363ca5b3410SRobert Richter enable-mask = <0x10>; 364ca5b3410SRobert Richter clock-output-names = "rngpkaclk"; 365ca5b3410SRobert Richter }; 366ca5b3410SRobert Richter 367ca5b3410SRobert Richter pcie0clk: pcie0clk@1f2bc000 { 368ca5b3410SRobert Richter status = "disabled"; 369ca5b3410SRobert Richter compatible = "apm,xgene-device-clock"; 370ca5b3410SRobert Richter #clock-cells = <1>; 371ca5b3410SRobert Richter clocks = <&socplldiv2 0>; 372ca5b3410SRobert Richter reg = <0x0 0x1f2bc000 0x0 0x1000>; 373ca5b3410SRobert Richter reg-names = "csr-reg"; 374ca5b3410SRobert Richter clock-output-names = "pcie0clk"; 375ca5b3410SRobert Richter }; 376ca5b3410SRobert Richter 377ca5b3410SRobert Richter pcie1clk: pcie1clk@1f2cc000 { 378ca5b3410SRobert Richter status = "disabled"; 379ca5b3410SRobert Richter compatible = "apm,xgene-device-clock"; 380ca5b3410SRobert Richter #clock-cells = <1>; 381ca5b3410SRobert Richter clocks = <&socplldiv2 0>; 382ca5b3410SRobert Richter reg = <0x0 0x1f2cc000 0x0 0x1000>; 383ca5b3410SRobert Richter reg-names = "csr-reg"; 384ca5b3410SRobert Richter clock-output-names = "pcie1clk"; 385ca5b3410SRobert Richter }; 386ca5b3410SRobert Richter 387ca5b3410SRobert Richter pcie2clk: pcie2clk@1f2dc000 { 388ca5b3410SRobert Richter status = "disabled"; 389ca5b3410SRobert Richter compatible = "apm,xgene-device-clock"; 390ca5b3410SRobert Richter #clock-cells = <1>; 391ca5b3410SRobert Richter clocks = <&socplldiv2 0>; 392ca5b3410SRobert Richter reg = <0x0 0x1f2dc000 0x0 0x1000>; 393ca5b3410SRobert Richter reg-names = "csr-reg"; 394ca5b3410SRobert Richter clock-output-names = "pcie2clk"; 395ca5b3410SRobert Richter }; 396ca5b3410SRobert Richter 397ca5b3410SRobert Richter pcie3clk: pcie3clk@1f50c000 { 398ca5b3410SRobert Richter status = "disabled"; 399ca5b3410SRobert Richter compatible = "apm,xgene-device-clock"; 400ca5b3410SRobert Richter #clock-cells = <1>; 401ca5b3410SRobert Richter clocks = <&socplldiv2 0>; 402ca5b3410SRobert Richter reg = <0x0 0x1f50c000 0x0 0x1000>; 403ca5b3410SRobert Richter reg-names = "csr-reg"; 404ca5b3410SRobert Richter clock-output-names = "pcie3clk"; 405ca5b3410SRobert Richter }; 406ca5b3410SRobert Richter 407ca5b3410SRobert Richter pcie4clk: pcie4clk@1f51c000 { 408ca5b3410SRobert Richter status = "disabled"; 409ca5b3410SRobert Richter compatible = "apm,xgene-device-clock"; 410ca5b3410SRobert Richter #clock-cells = <1>; 411ca5b3410SRobert Richter clocks = <&socplldiv2 0>; 412ca5b3410SRobert Richter reg = <0x0 0x1f51c000 0x0 0x1000>; 413ca5b3410SRobert Richter reg-names = "csr-reg"; 414ca5b3410SRobert Richter clock-output-names = "pcie4clk"; 415ca5b3410SRobert Richter }; 41674e353e1SRameshwar Prasad Sahu 41774e353e1SRameshwar Prasad Sahu dmaclk: dmaclk@1f27c000 { 41874e353e1SRameshwar Prasad Sahu compatible = "apm,xgene-device-clock"; 41974e353e1SRameshwar Prasad Sahu #clock-cells = <1>; 42074e353e1SRameshwar Prasad Sahu clocks = <&socplldiv2 0>; 42174e353e1SRameshwar Prasad Sahu reg = <0x0 0x1f27c000 0x0 0x1000>; 42274e353e1SRameshwar Prasad Sahu reg-names = "csr-reg"; 42374e353e1SRameshwar Prasad Sahu clock-output-names = "dmaclk"; 42474e353e1SRameshwar Prasad Sahu }; 425ca5b3410SRobert Richter }; 426ca5b3410SRobert Richter 427e1e6e5c4SDuc Dang msi: msi@79000000 { 428e1e6e5c4SDuc Dang compatible = "apm,xgene1-msi"; 429e1e6e5c4SDuc Dang msi-controller; 430e1e6e5c4SDuc Dang reg = <0x00 0x79000000 0x0 0x900000>; 431e1e6e5c4SDuc Dang interrupts = < 0x0 0x10 0x4 432e1e6e5c4SDuc Dang 0x0 0x11 0x4 433e1e6e5c4SDuc Dang 0x0 0x12 0x4 434e1e6e5c4SDuc Dang 0x0 0x13 0x4 435e1e6e5c4SDuc Dang 0x0 0x14 0x4 436e1e6e5c4SDuc Dang 0x0 0x15 0x4 437e1e6e5c4SDuc Dang 0x0 0x16 0x4 438e1e6e5c4SDuc Dang 0x0 0x17 0x4 439e1e6e5c4SDuc Dang 0x0 0x18 0x4 440e1e6e5c4SDuc Dang 0x0 0x19 0x4 441e1e6e5c4SDuc Dang 0x0 0x1a 0x4 442e1e6e5c4SDuc Dang 0x0 0x1b 0x4 443e1e6e5c4SDuc Dang 0x0 0x1c 0x4 444e1e6e5c4SDuc Dang 0x0 0x1d 0x4 445e1e6e5c4SDuc Dang 0x0 0x1e 0x4 446e1e6e5c4SDuc Dang 0x0 0x1f 0x4>; 447e1e6e5c4SDuc Dang }; 448e1e6e5c4SDuc Dang 4495c3a87e3SFeng Kan scu: system-clk-controller@17000000 { 4505c3a87e3SFeng Kan compatible = "apm,xgene-scu","syscon"; 4515c3a87e3SFeng Kan reg = <0x0 0x17000000 0x0 0x400>; 4525c3a87e3SFeng Kan }; 4535c3a87e3SFeng Kan 4545c3a87e3SFeng Kan reboot: reboot@17000014 { 4555c3a87e3SFeng Kan compatible = "syscon-reboot"; 4565c3a87e3SFeng Kan regmap = <&scu>; 4575c3a87e3SFeng Kan offset = <0x14>; 4585c3a87e3SFeng Kan mask = <0x1>; 4595c3a87e3SFeng Kan }; 4605c3a87e3SFeng Kan 4618f2ae6f3SLoc Ho csw: csw@7e200000 { 4628f2ae6f3SLoc Ho compatible = "apm,xgene-csw", "syscon"; 4638f2ae6f3SLoc Ho reg = <0x0 0x7e200000 0x0 0x1000>; 4648f2ae6f3SLoc Ho }; 4658f2ae6f3SLoc Ho 4668f2ae6f3SLoc Ho mcba: mcba@7e700000 { 4678f2ae6f3SLoc Ho compatible = "apm,xgene-mcb", "syscon"; 4688f2ae6f3SLoc Ho reg = <0x0 0x7e700000 0x0 0x1000>; 4698f2ae6f3SLoc Ho }; 4708f2ae6f3SLoc Ho 4718f2ae6f3SLoc Ho mcbb: mcbb@7e720000 { 4728f2ae6f3SLoc Ho compatible = "apm,xgene-mcb", "syscon"; 4738f2ae6f3SLoc Ho reg = <0x0 0x7e720000 0x0 0x1000>; 4748f2ae6f3SLoc Ho }; 4758f2ae6f3SLoc Ho 4768f2ae6f3SLoc Ho efuse: efuse@1054a000 { 4778f2ae6f3SLoc Ho compatible = "apm,xgene-efuse", "syscon"; 4788f2ae6f3SLoc Ho reg = <0x0 0x1054a000 0x0 0x20>; 4798f2ae6f3SLoc Ho }; 4808f2ae6f3SLoc Ho 4818f2ae6f3SLoc Ho edac@78800000 { 4828f2ae6f3SLoc Ho compatible = "apm,xgene-edac"; 4838f2ae6f3SLoc Ho #address-cells = <2>; 4848f2ae6f3SLoc Ho #size-cells = <2>; 4858f2ae6f3SLoc Ho ranges; 4868f2ae6f3SLoc Ho regmap-csw = <&csw>; 4878f2ae6f3SLoc Ho regmap-mcba = <&mcba>; 4888f2ae6f3SLoc Ho regmap-mcbb = <&mcbb>; 4898f2ae6f3SLoc Ho regmap-efuse = <&efuse>; 4908f2ae6f3SLoc Ho reg = <0x0 0x78800000 0x0 0x100>; 4918f2ae6f3SLoc Ho interrupts = <0x0 0x20 0x4>, 4928f2ae6f3SLoc Ho <0x0 0x21 0x4>, 4938f2ae6f3SLoc Ho <0x0 0x27 0x4>; 4948f2ae6f3SLoc Ho 4958f2ae6f3SLoc Ho edacmc@7e800000 { 4968f2ae6f3SLoc Ho compatible = "apm,xgene-edac-mc"; 4978f2ae6f3SLoc Ho reg = <0x0 0x7e800000 0x0 0x1000>; 4988f2ae6f3SLoc Ho memory-controller = <0>; 4998f2ae6f3SLoc Ho }; 5008f2ae6f3SLoc Ho 5018f2ae6f3SLoc Ho edacmc@7e840000 { 5028f2ae6f3SLoc Ho compatible = "apm,xgene-edac-mc"; 5038f2ae6f3SLoc Ho reg = <0x0 0x7e840000 0x0 0x1000>; 5048f2ae6f3SLoc Ho memory-controller = <1>; 5058f2ae6f3SLoc Ho }; 5068f2ae6f3SLoc Ho 5078f2ae6f3SLoc Ho edacmc@7e880000 { 5088f2ae6f3SLoc Ho compatible = "apm,xgene-edac-mc"; 5098f2ae6f3SLoc Ho reg = <0x0 0x7e880000 0x0 0x1000>; 5108f2ae6f3SLoc Ho memory-controller = <2>; 5118f2ae6f3SLoc Ho }; 5128f2ae6f3SLoc Ho 5138f2ae6f3SLoc Ho edacmc@7e8c0000 { 5148f2ae6f3SLoc Ho compatible = "apm,xgene-edac-mc"; 5158f2ae6f3SLoc Ho reg = <0x0 0x7e8c0000 0x0 0x1000>; 5168f2ae6f3SLoc Ho memory-controller = <3>; 5178f2ae6f3SLoc Ho }; 5188f2ae6f3SLoc Ho 5198f2ae6f3SLoc Ho edacpmd@7c000000 { 5208f2ae6f3SLoc Ho compatible = "apm,xgene-edac-pmd"; 5218f2ae6f3SLoc Ho reg = <0x0 0x7c000000 0x0 0x200000>; 5228f2ae6f3SLoc Ho pmd-controller = <0>; 5238f2ae6f3SLoc Ho }; 5248f2ae6f3SLoc Ho 5258f2ae6f3SLoc Ho edacpmd@7c200000 { 5268f2ae6f3SLoc Ho compatible = "apm,xgene-edac-pmd"; 5278f2ae6f3SLoc Ho reg = <0x0 0x7c200000 0x0 0x200000>; 5288f2ae6f3SLoc Ho pmd-controller = <1>; 5298f2ae6f3SLoc Ho }; 5308f2ae6f3SLoc Ho 5318f2ae6f3SLoc Ho edacpmd@7c400000 { 5328f2ae6f3SLoc Ho compatible = "apm,xgene-edac-pmd"; 5338f2ae6f3SLoc Ho reg = <0x0 0x7c400000 0x0 0x200000>; 5348f2ae6f3SLoc Ho pmd-controller = <2>; 5358f2ae6f3SLoc Ho }; 5368f2ae6f3SLoc Ho 5378f2ae6f3SLoc Ho edacpmd@7c600000 { 5388f2ae6f3SLoc Ho compatible = "apm,xgene-edac-pmd"; 5398f2ae6f3SLoc Ho reg = <0x0 0x7c600000 0x0 0x200000>; 5408f2ae6f3SLoc Ho pmd-controller = <3>; 5418f2ae6f3SLoc Ho }; 542043cba96SLoc Ho 543043cba96SLoc Ho edacl3@7e600000 { 544043cba96SLoc Ho compatible = "apm,xgene-edac-l3"; 545043cba96SLoc Ho reg = <0x0 0x7e600000 0x0 0x1000>; 546043cba96SLoc Ho }; 547043cba96SLoc Ho 548043cba96SLoc Ho edacsoc@7e930000 { 549043cba96SLoc Ho compatible = "apm,xgene-edac-soc-v1"; 550043cba96SLoc Ho reg = <0x0 0x7e930000 0x0 0x1000>; 551043cba96SLoc Ho }; 5528f2ae6f3SLoc Ho }; 5538f2ae6f3SLoc Ho 554ca5b3410SRobert Richter pcie0: pcie@1f2b0000 { 555ca5b3410SRobert Richter status = "disabled"; 556ca5b3410SRobert Richter device_type = "pci"; 557ca5b3410SRobert Richter compatible = "apm,xgene-storm-pcie", "apm,xgene-pcie"; 558ca5b3410SRobert Richter #interrupt-cells = <1>; 559ca5b3410SRobert Richter #size-cells = <2>; 560ca5b3410SRobert Richter #address-cells = <3>; 561ca5b3410SRobert Richter reg = < 0x00 0x1f2b0000 0x0 0x00010000 /* Controller registers */ 562ca5b3410SRobert Richter 0xe0 0xd0000000 0x0 0x00040000>; /* PCI config space */ 563ca5b3410SRobert Richter reg-names = "csr", "cfg"; 564ca5b3410SRobert Richter ranges = <0x01000000 0x00 0x00000000 0xe0 0x10000000 0x00 0x00010000 /* io */ 56580bb3edaSDuc Dang 0x02000000 0x00 0x80000000 0xe1 0x80000000 0x00 0x80000000 /* mem */ 56680bb3edaSDuc Dang 0x43000000 0xf0 0x00000000 0xf0 0x00000000 0x10 0x00000000>; /* mem */ 567ca5b3410SRobert Richter dma-ranges = <0x42000000 0x80 0x00000000 0x80 0x00000000 0x00 0x80000000 568ca5b3410SRobert Richter 0x42000000 0x00 0x00000000 0x00 0x00000000 0x80 0x00000000>; 569ca5b3410SRobert Richter interrupt-map-mask = <0x0 0x0 0x0 0x7>; 570ca5b3410SRobert Richter interrupt-map = <0x0 0x0 0x0 0x1 &gic 0x0 0xc2 0x1 571ca5b3410SRobert Richter 0x0 0x0 0x0 0x2 &gic 0x0 0xc3 0x1 572ca5b3410SRobert Richter 0x0 0x0 0x0 0x3 &gic 0x0 0xc4 0x1 573ca5b3410SRobert Richter 0x0 0x0 0x0 0x4 &gic 0x0 0xc5 0x1>; 574ca5b3410SRobert Richter dma-coherent; 575ca5b3410SRobert Richter clocks = <&pcie0clk 0>; 576e1e6e5c4SDuc Dang msi-parent = <&msi>; 577ca5b3410SRobert Richter }; 578ca5b3410SRobert Richter 579ca5b3410SRobert Richter pcie1: pcie@1f2c0000 { 580ca5b3410SRobert Richter status = "disabled"; 581ca5b3410SRobert Richter device_type = "pci"; 582ca5b3410SRobert Richter compatible = "apm,xgene-storm-pcie", "apm,xgene-pcie"; 583ca5b3410SRobert Richter #interrupt-cells = <1>; 584ca5b3410SRobert Richter #size-cells = <2>; 585ca5b3410SRobert Richter #address-cells = <3>; 586ca5b3410SRobert Richter reg = < 0x00 0x1f2c0000 0x0 0x00010000 /* Controller registers */ 587ca5b3410SRobert Richter 0xd0 0xd0000000 0x0 0x00040000>; /* PCI config space */ 588ca5b3410SRobert Richter reg-names = "csr", "cfg"; 58980bb3edaSDuc Dang ranges = <0x01000000 0x00 0x00000000 0xd0 0x10000000 0x00 0x00010000 /* io */ 59080bb3edaSDuc Dang 0x02000000 0x00 0x80000000 0xd1 0x80000000 0x00 0x80000000 /* mem */ 59180bb3edaSDuc Dang 0x43000000 0xd8 0x00000000 0xd8 0x00000000 0x08 0x00000000>; /* mem */ 592ca5b3410SRobert Richter dma-ranges = <0x42000000 0x80 0x00000000 0x80 0x00000000 0x00 0x80000000 593ca5b3410SRobert Richter 0x42000000 0x00 0x00000000 0x00 0x00000000 0x80 0x00000000>; 594ca5b3410SRobert Richter interrupt-map-mask = <0x0 0x0 0x0 0x7>; 595ca5b3410SRobert Richter interrupt-map = <0x0 0x0 0x0 0x1 &gic 0x0 0xc8 0x1 596ca5b3410SRobert Richter 0x0 0x0 0x0 0x2 &gic 0x0 0xc9 0x1 597ca5b3410SRobert Richter 0x0 0x0 0x0 0x3 &gic 0x0 0xca 0x1 598ca5b3410SRobert Richter 0x0 0x0 0x0 0x4 &gic 0x0 0xcb 0x1>; 599ca5b3410SRobert Richter dma-coherent; 600ca5b3410SRobert Richter clocks = <&pcie1clk 0>; 601e1e6e5c4SDuc Dang msi-parent = <&msi>; 602ca5b3410SRobert Richter }; 603ca5b3410SRobert Richter 604ca5b3410SRobert Richter pcie2: pcie@1f2d0000 { 605ca5b3410SRobert Richter status = "disabled"; 606ca5b3410SRobert Richter device_type = "pci"; 607ca5b3410SRobert Richter compatible = "apm,xgene-storm-pcie", "apm,xgene-pcie"; 608ca5b3410SRobert Richter #interrupt-cells = <1>; 609ca5b3410SRobert Richter #size-cells = <2>; 610ca5b3410SRobert Richter #address-cells = <3>; 611ca5b3410SRobert Richter reg = < 0x00 0x1f2d0000 0x0 0x00010000 /* Controller registers */ 612ca5b3410SRobert Richter 0x90 0xd0000000 0x0 0x00040000>; /* PCI config space */ 613ca5b3410SRobert Richter reg-names = "csr", "cfg"; 61480bb3edaSDuc Dang ranges = <0x01000000 0x00 0x00000000 0x90 0x10000000 0x00 0x00010000 /* io */ 61580bb3edaSDuc Dang 0x02000000 0x00 0x80000000 0x91 0x80000000 0x00 0x80000000 /* mem */ 61680bb3edaSDuc Dang 0x43000000 0x94 0x00000000 0x94 0x00000000 0x04 0x00000000>; /* mem */ 617ca5b3410SRobert Richter dma-ranges = <0x42000000 0x80 0x00000000 0x80 0x00000000 0x00 0x80000000 618ca5b3410SRobert Richter 0x42000000 0x00 0x00000000 0x00 0x00000000 0x80 0x00000000>; 619ca5b3410SRobert Richter interrupt-map-mask = <0x0 0x0 0x0 0x7>; 620ca5b3410SRobert Richter interrupt-map = <0x0 0x0 0x0 0x1 &gic 0x0 0xce 0x1 621ca5b3410SRobert Richter 0x0 0x0 0x0 0x2 &gic 0x0 0xcf 0x1 622ca5b3410SRobert Richter 0x0 0x0 0x0 0x3 &gic 0x0 0xd0 0x1 623ca5b3410SRobert Richter 0x0 0x0 0x0 0x4 &gic 0x0 0xd1 0x1>; 624ca5b3410SRobert Richter dma-coherent; 625ca5b3410SRobert Richter clocks = <&pcie2clk 0>; 626e1e6e5c4SDuc Dang msi-parent = <&msi>; 627ca5b3410SRobert Richter }; 628ca5b3410SRobert Richter 629ca5b3410SRobert Richter pcie3: pcie@1f500000 { 630ca5b3410SRobert Richter status = "disabled"; 631ca5b3410SRobert Richter device_type = "pci"; 632ca5b3410SRobert Richter compatible = "apm,xgene-storm-pcie", "apm,xgene-pcie"; 633ca5b3410SRobert Richter #interrupt-cells = <1>; 634ca5b3410SRobert Richter #size-cells = <2>; 635ca5b3410SRobert Richter #address-cells = <3>; 636ca5b3410SRobert Richter reg = < 0x00 0x1f500000 0x0 0x00010000 /* Controller registers */ 637ca5b3410SRobert Richter 0xa0 0xd0000000 0x0 0x00040000>; /* PCI config space */ 638ca5b3410SRobert Richter reg-names = "csr", "cfg"; 63980bb3edaSDuc Dang ranges = <0x01000000 0x00 0x00000000 0xa0 0x10000000 0x00 0x00010000 /* io */ 64080bb3edaSDuc Dang 0x02000000 0x00 0x80000000 0xa1 0x80000000 0x00 0x80000000 /* mem */ 64180bb3edaSDuc Dang 0x43000000 0xb0 0x00000000 0xb0 0x00000000 0x10 0x00000000>; /* mem */ 642ca5b3410SRobert Richter dma-ranges = <0x42000000 0x80 0x00000000 0x80 0x00000000 0x00 0x80000000 643ca5b3410SRobert Richter 0x42000000 0x00 0x00000000 0x00 0x00000000 0x80 0x00000000>; 644ca5b3410SRobert Richter interrupt-map-mask = <0x0 0x0 0x0 0x7>; 645ca5b3410SRobert Richter interrupt-map = <0x0 0x0 0x0 0x1 &gic 0x0 0xd4 0x1 646ca5b3410SRobert Richter 0x0 0x0 0x0 0x2 &gic 0x0 0xd5 0x1 647ca5b3410SRobert Richter 0x0 0x0 0x0 0x3 &gic 0x0 0xd6 0x1 648ca5b3410SRobert Richter 0x0 0x0 0x0 0x4 &gic 0x0 0xd7 0x1>; 649ca5b3410SRobert Richter dma-coherent; 650ca5b3410SRobert Richter clocks = <&pcie3clk 0>; 651e1e6e5c4SDuc Dang msi-parent = <&msi>; 652ca5b3410SRobert Richter }; 653ca5b3410SRobert Richter 654ca5b3410SRobert Richter pcie4: pcie@1f510000 { 655ca5b3410SRobert Richter status = "disabled"; 656ca5b3410SRobert Richter device_type = "pci"; 657ca5b3410SRobert Richter compatible = "apm,xgene-storm-pcie", "apm,xgene-pcie"; 658ca5b3410SRobert Richter #interrupt-cells = <1>; 659ca5b3410SRobert Richter #size-cells = <2>; 660ca5b3410SRobert Richter #address-cells = <3>; 661ca5b3410SRobert Richter reg = < 0x00 0x1f510000 0x0 0x00010000 /* Controller registers */ 662ca5b3410SRobert Richter 0xc0 0xd0000000 0x0 0x00200000>; /* PCI config space */ 663ca5b3410SRobert Richter reg-names = "csr", "cfg"; 66480bb3edaSDuc Dang ranges = <0x01000000 0x00 0x00000000 0xc0 0x10000000 0x00 0x00010000 /* io */ 66580bb3edaSDuc Dang 0x02000000 0x00 0x80000000 0xc1 0x80000000 0x00 0x80000000 /* mem */ 66680bb3edaSDuc Dang 0x43000000 0xc8 0x00000000 0xc8 0x00000000 0x08 0x00000000>; /* mem */ 667ca5b3410SRobert Richter dma-ranges = <0x42000000 0x80 0x00000000 0x80 0x00000000 0x00 0x80000000 668ca5b3410SRobert Richter 0x42000000 0x00 0x00000000 0x00 0x00000000 0x80 0x00000000>; 669ca5b3410SRobert Richter interrupt-map-mask = <0x0 0x0 0x0 0x7>; 670ca5b3410SRobert Richter interrupt-map = <0x0 0x0 0x0 0x1 &gic 0x0 0xda 0x1 671ca5b3410SRobert Richter 0x0 0x0 0x0 0x2 &gic 0x0 0xdb 0x1 672ca5b3410SRobert Richter 0x0 0x0 0x0 0x3 &gic 0x0 0xdc 0x1 673ca5b3410SRobert Richter 0x0 0x0 0x0 0x4 &gic 0x0 0xdd 0x1>; 674ca5b3410SRobert Richter dma-coherent; 675ca5b3410SRobert Richter clocks = <&pcie4clk 0>; 676e1e6e5c4SDuc Dang msi-parent = <&msi>; 677ca5b3410SRobert Richter }; 678ca5b3410SRobert Richter 679ca5b3410SRobert Richter serial0: serial@1c020000 { 680ca5b3410SRobert Richter status = "disabled"; 681ca5b3410SRobert Richter device_type = "serial"; 682ca5b3410SRobert Richter compatible = "ns16550a"; 683ca5b3410SRobert Richter reg = <0 0x1c020000 0x0 0x1000>; 684ca5b3410SRobert Richter reg-shift = <2>; 685ca5b3410SRobert Richter clock-frequency = <10000000>; /* Updated by bootloader */ 686ca5b3410SRobert Richter interrupt-parent = <&gic>; 687ca5b3410SRobert Richter interrupts = <0x0 0x4c 0x4>; 688ca5b3410SRobert Richter }; 689ca5b3410SRobert Richter 690ca5b3410SRobert Richter serial1: serial@1c021000 { 691ca5b3410SRobert Richter status = "disabled"; 692ca5b3410SRobert Richter device_type = "serial"; 693ca5b3410SRobert Richter compatible = "ns16550a"; 694ca5b3410SRobert Richter reg = <0 0x1c021000 0x0 0x1000>; 695ca5b3410SRobert Richter reg-shift = <2>; 696ca5b3410SRobert Richter clock-frequency = <10000000>; /* Updated by bootloader */ 697ca5b3410SRobert Richter interrupt-parent = <&gic>; 698ca5b3410SRobert Richter interrupts = <0x0 0x4d 0x4>; 699ca5b3410SRobert Richter }; 700ca5b3410SRobert Richter 701ca5b3410SRobert Richter serial2: serial@1c022000 { 702ca5b3410SRobert Richter status = "disabled"; 703ca5b3410SRobert Richter device_type = "serial"; 704ca5b3410SRobert Richter compatible = "ns16550a"; 705ca5b3410SRobert Richter reg = <0 0x1c022000 0x0 0x1000>; 706ca5b3410SRobert Richter reg-shift = <2>; 707ca5b3410SRobert Richter clock-frequency = <10000000>; /* Updated by bootloader */ 708ca5b3410SRobert Richter interrupt-parent = <&gic>; 709ca5b3410SRobert Richter interrupts = <0x0 0x4e 0x4>; 710ca5b3410SRobert Richter }; 711ca5b3410SRobert Richter 712ca5b3410SRobert Richter serial3: serial@1c023000 { 713ca5b3410SRobert Richter status = "disabled"; 714ca5b3410SRobert Richter device_type = "serial"; 715ca5b3410SRobert Richter compatible = "ns16550a"; 716ca5b3410SRobert Richter reg = <0 0x1c023000 0x0 0x1000>; 717ca5b3410SRobert Richter reg-shift = <2>; 718ca5b3410SRobert Richter clock-frequency = <10000000>; /* Updated by bootloader */ 719ca5b3410SRobert Richter interrupt-parent = <&gic>; 720ca5b3410SRobert Richter interrupts = <0x0 0x4f 0x4>; 721ca5b3410SRobert Richter }; 722ca5b3410SRobert Richter 723*8f74e861SSuman Tripathi mmc0: mmc@1c000000 { 724*8f74e861SSuman Tripathi compatible = "arasan,sdhci-4.9a"; 725*8f74e861SSuman Tripathi reg = <0x0 0x1c000000 0x0 0x100>; 726*8f74e861SSuman Tripathi interrupts = <0x0 0x49 0x4>; 727*8f74e861SSuman Tripathi dma-coherent; 728*8f74e861SSuman Tripathi no-1-8-v; 729*8f74e861SSuman Tripathi clock-names = "clk_xin", "clk_ahb"; 730*8f74e861SSuman Tripathi clocks = <&sdioclk 0>, <&ahbclk 0>; 731*8f74e861SSuman Tripathi }; 732*8f74e861SSuman Tripathi 733ca5b3410SRobert Richter phy1: phy@1f21a000 { 734ca5b3410SRobert Richter compatible = "apm,xgene-phy"; 735ca5b3410SRobert Richter reg = <0x0 0x1f21a000 0x0 0x100>; 736ca5b3410SRobert Richter #phy-cells = <1>; 737ca5b3410SRobert Richter clocks = <&sataphy1clk 0>; 738ca5b3410SRobert Richter status = "disabled"; 739ca5b3410SRobert Richter apm,tx-boost-gain = <30 30 30 30 30 30>; 740ca5b3410SRobert Richter apm,tx-eye-tuning = <2 10 10 2 10 10>; 741ca5b3410SRobert Richter }; 742ca5b3410SRobert Richter 743ca5b3410SRobert Richter phy2: phy@1f22a000 { 744ca5b3410SRobert Richter compatible = "apm,xgene-phy"; 745ca5b3410SRobert Richter reg = <0x0 0x1f22a000 0x0 0x100>; 746ca5b3410SRobert Richter #phy-cells = <1>; 747ca5b3410SRobert Richter clocks = <&sataphy2clk 0>; 748ca5b3410SRobert Richter status = "ok"; 749ca5b3410SRobert Richter apm,tx-boost-gain = <30 30 30 30 30 30>; 750ca5b3410SRobert Richter apm,tx-eye-tuning = <1 10 10 2 10 10>; 751ca5b3410SRobert Richter }; 752ca5b3410SRobert Richter 753ca5b3410SRobert Richter phy3: phy@1f23a000 { 754ca5b3410SRobert Richter compatible = "apm,xgene-phy"; 755ca5b3410SRobert Richter reg = <0x0 0x1f23a000 0x0 0x100>; 756ca5b3410SRobert Richter #phy-cells = <1>; 757ca5b3410SRobert Richter clocks = <&sataphy3clk 0>; 758ca5b3410SRobert Richter status = "ok"; 759ca5b3410SRobert Richter apm,tx-boost-gain = <31 31 31 31 31 31>; 760ca5b3410SRobert Richter apm,tx-eye-tuning = <2 10 10 2 10 10>; 761ca5b3410SRobert Richter }; 762ca5b3410SRobert Richter 763ca5b3410SRobert Richter sata1: sata@1a000000 { 764ca5b3410SRobert Richter compatible = "apm,xgene-ahci"; 765ca5b3410SRobert Richter reg = <0x0 0x1a000000 0x0 0x1000>, 766ca5b3410SRobert Richter <0x0 0x1f210000 0x0 0x1000>, 767ca5b3410SRobert Richter <0x0 0x1f21d000 0x0 0x1000>, 768ca5b3410SRobert Richter <0x0 0x1f21e000 0x0 0x1000>, 769ca5b3410SRobert Richter <0x0 0x1f217000 0x0 0x1000>; 770ca5b3410SRobert Richter interrupts = <0x0 0x86 0x4>; 771ca5b3410SRobert Richter dma-coherent; 772ca5b3410SRobert Richter status = "disabled"; 773ca5b3410SRobert Richter clocks = <&sata01clk 0>; 774ca5b3410SRobert Richter phys = <&phy1 0>; 775ca5b3410SRobert Richter phy-names = "sata-phy"; 776ca5b3410SRobert Richter }; 777ca5b3410SRobert Richter 778ca5b3410SRobert Richter sata2: sata@1a400000 { 779ca5b3410SRobert Richter compatible = "apm,xgene-ahci"; 780ca5b3410SRobert Richter reg = <0x0 0x1a400000 0x0 0x1000>, 781ca5b3410SRobert Richter <0x0 0x1f220000 0x0 0x1000>, 782ca5b3410SRobert Richter <0x0 0x1f22d000 0x0 0x1000>, 783ca5b3410SRobert Richter <0x0 0x1f22e000 0x0 0x1000>, 784ca5b3410SRobert Richter <0x0 0x1f227000 0x0 0x1000>; 785ca5b3410SRobert Richter interrupts = <0x0 0x87 0x4>; 786ca5b3410SRobert Richter dma-coherent; 787ca5b3410SRobert Richter status = "ok"; 788ca5b3410SRobert Richter clocks = <&sata23clk 0>; 789ca5b3410SRobert Richter phys = <&phy2 0>; 790ca5b3410SRobert Richter phy-names = "sata-phy"; 791ca5b3410SRobert Richter }; 792ca5b3410SRobert Richter 793ca5b3410SRobert Richter sata3: sata@1a800000 { 794ca5b3410SRobert Richter compatible = "apm,xgene-ahci"; 795ca5b3410SRobert Richter reg = <0x0 0x1a800000 0x0 0x1000>, 796ca5b3410SRobert Richter <0x0 0x1f230000 0x0 0x1000>, 797ca5b3410SRobert Richter <0x0 0x1f23d000 0x0 0x1000>, 798ca5b3410SRobert Richter <0x0 0x1f23e000 0x0 0x1000>; 799ca5b3410SRobert Richter interrupts = <0x0 0x88 0x4>; 800ca5b3410SRobert Richter dma-coherent; 801ca5b3410SRobert Richter status = "ok"; 802ca5b3410SRobert Richter clocks = <&sata45clk 0>; 803ca5b3410SRobert Richter phys = <&phy3 0>; 804ca5b3410SRobert Richter phy-names = "sata-phy"; 805ca5b3410SRobert Richter }; 806ca5b3410SRobert Richter 807ea21feb3SY Vo sbgpio: sbgpio@17001000{ 808ea21feb3SY Vo compatible = "apm,xgene-gpio-sb"; 809ea21feb3SY Vo reg = <0x0 0x17001000 0x0 0x400>; 810ea21feb3SY Vo #gpio-cells = <2>; 811ea21feb3SY Vo gpio-controller; 812ea21feb3SY Vo interrupts = <0x0 0x28 0x1>, 813ea21feb3SY Vo <0x0 0x29 0x1>, 814ea21feb3SY Vo <0x0 0x2a 0x1>, 815ea21feb3SY Vo <0x0 0x2b 0x1>, 816ea21feb3SY Vo <0x0 0x2c 0x1>, 817ea21feb3SY Vo <0x0 0x2d 0x1>; 818ea21feb3SY Vo }; 819ea21feb3SY Vo 820ca5b3410SRobert Richter rtc: rtc@10510000 { 821ca5b3410SRobert Richter compatible = "apm,xgene-rtc"; 822ca5b3410SRobert Richter reg = <0x0 0x10510000 0x0 0x400>; 823ca5b3410SRobert Richter interrupts = <0x0 0x46 0x4>; 824ca5b3410SRobert Richter #clock-cells = <1>; 825ca5b3410SRobert Richter clocks = <&rtcclk 0>; 826ca5b3410SRobert Richter }; 827ca5b3410SRobert Richter 828ca5b3410SRobert Richter menet: ethernet@17020000 { 829ca5b3410SRobert Richter compatible = "apm,xgene-enet"; 830ca5b3410SRobert Richter status = "disabled"; 831ca5b3410SRobert Richter reg = <0x0 0x17020000 0x0 0xd100>, 8326c9e9247SLinus Torvalds <0x0 0X17030000 0x0 0Xc300>, 833ca5b3410SRobert Richter <0x0 0X10000000 0x0 0X200>; 834ca5b3410SRobert Richter reg-names = "enet_csr", "ring_csr", "ring_cmd"; 835ca5b3410SRobert Richter interrupts = <0x0 0x3c 0x4>; 836ca5b3410SRobert Richter dma-coherent; 837ca5b3410SRobert Richter clocks = <&menetclk 0>; 838ca5b3410SRobert Richter /* mac address will be overwritten by the bootloader */ 839ca5b3410SRobert Richter local-mac-address = [00 00 00 00 00 00]; 840ca5b3410SRobert Richter phy-connection-type = "rgmii"; 841ca5b3410SRobert Richter phy-handle = <&menetphy>; 842ca5b3410SRobert Richter mdio { 843ca5b3410SRobert Richter compatible = "apm,xgene-mdio"; 844ca5b3410SRobert Richter #address-cells = <1>; 845ca5b3410SRobert Richter #size-cells = <0>; 846ca5b3410SRobert Richter menetphy: menetphy@3 { 847ca5b3410SRobert Richter compatible = "ethernet-phy-id001c.c915"; 848ca5b3410SRobert Richter reg = <0x3>; 849ca5b3410SRobert Richter }; 850ca5b3410SRobert Richter 851ca5b3410SRobert Richter }; 852ca5b3410SRobert Richter }; 853ca5b3410SRobert Richter 854ca5b3410SRobert Richter sgenet0: ethernet@1f210000 { 8552a91eb72SIyappan Subramanian compatible = "apm,xgene1-sgenet"; 856ca5b3410SRobert Richter status = "disabled"; 8576c9e9247SLinus Torvalds reg = <0x0 0x1f210000 0x0 0xd100>, 8586c9e9247SLinus Torvalds <0x0 0x1f200000 0x0 0Xc300>, 8596c9e9247SLinus Torvalds <0x0 0x1B000000 0x0 0X200>; 860ca5b3410SRobert Richter reg-names = "enet_csr", "ring_csr", "ring_cmd"; 861d3134649SIyappan Subramanian interrupts = <0x0 0xA0 0x4>, 862d3134649SIyappan Subramanian <0x0 0xA1 0x4>; 863ca5b3410SRobert Richter dma-coherent; 864ca5b3410SRobert Richter clocks = <&sge0clk 0>; 865ca5b3410SRobert Richter local-mac-address = [00 00 00 00 00 00]; 866ca5b3410SRobert Richter phy-connection-type = "sgmii"; 867ca5b3410SRobert Richter }; 868ca5b3410SRobert Richter 8692d33394eSKeyur Chudgar sgenet1: ethernet@1f210030 { 8702d33394eSKeyur Chudgar compatible = "apm,xgene1-sgenet"; 8712d33394eSKeyur Chudgar status = "disabled"; 8722d33394eSKeyur Chudgar reg = <0x0 0x1f210030 0x0 0xd100>, 8732d33394eSKeyur Chudgar <0x0 0x1f200000 0x0 0Xc300>, 8742d33394eSKeyur Chudgar <0x0 0x1B000000 0x0 0X8000>; 8752d33394eSKeyur Chudgar reg-names = "enet_csr", "ring_csr", "ring_cmd"; 876d3134649SIyappan Subramanian interrupts = <0x0 0xAC 0x4>, 877d3134649SIyappan Subramanian <0x0 0xAD 0x4>; 8782d33394eSKeyur Chudgar port-id = <1>; 8792d33394eSKeyur Chudgar dma-coherent; 8802d33394eSKeyur Chudgar clocks = <&sge1clk 0>; 8812d33394eSKeyur Chudgar local-mac-address = [00 00 00 00 00 00]; 8822d33394eSKeyur Chudgar phy-connection-type = "sgmii"; 8832d33394eSKeyur Chudgar }; 8842d33394eSKeyur Chudgar 885ca5b3410SRobert Richter xgenet: ethernet@1f610000 { 8862a91eb72SIyappan Subramanian compatible = "apm,xgene1-xgenet"; 887ca5b3410SRobert Richter status = "disabled"; 888ca5b3410SRobert Richter reg = <0x0 0x1f610000 0x0 0xd100>, 8896c9e9247SLinus Torvalds <0x0 0x1f600000 0x0 0Xc300>, 890ca5b3410SRobert Richter <0x0 0x18000000 0x0 0X200>; 891ca5b3410SRobert Richter reg-names = "enet_csr", "ring_csr", "ring_cmd"; 892d3134649SIyappan Subramanian interrupts = <0x0 0x60 0x4>, 893d3134649SIyappan Subramanian <0x0 0x61 0x4>; 894ca5b3410SRobert Richter dma-coherent; 895ca5b3410SRobert Richter clocks = <&xge0clk 0>; 896ca5b3410SRobert Richter /* mac address will be overwritten by the bootloader */ 897ca5b3410SRobert Richter local-mac-address = [00 00 00 00 00 00]; 898ca5b3410SRobert Richter phy-connection-type = "xgmii"; 899ca5b3410SRobert Richter }; 900ca5b3410SRobert Richter 901e63c7a09SIyappan Subramanian xgenet1: ethernet@1f620000 { 902e63c7a09SIyappan Subramanian compatible = "apm,xgene1-xgenet"; 903e63c7a09SIyappan Subramanian status = "disabled"; 904e63c7a09SIyappan Subramanian reg = <0x0 0x1f620000 0x0 0xd100>, 905e63c7a09SIyappan Subramanian <0x0 0x1f600000 0x0 0Xc300>, 906e63c7a09SIyappan Subramanian <0x0 0x18000000 0x0 0X8000>; 907e63c7a09SIyappan Subramanian reg-names = "enet_csr", "ring_csr", "ring_cmd"; 908e63c7a09SIyappan Subramanian interrupts = <0x0 0x6C 0x4>, 909e63c7a09SIyappan Subramanian <0x0 0x6D 0x4>; 910e63c7a09SIyappan Subramanian port-id = <1>; 911e63c7a09SIyappan Subramanian dma-coherent; 912e63c7a09SIyappan Subramanian clocks = <&xge1clk 0>; 913e63c7a09SIyappan Subramanian /* mac address will be overwritten by the bootloader */ 914e63c7a09SIyappan Subramanian local-mac-address = [00 00 00 00 00 00]; 915e63c7a09SIyappan Subramanian phy-connection-type = "xgmii"; 916e63c7a09SIyappan Subramanian }; 917e63c7a09SIyappan Subramanian 918ca5b3410SRobert Richter rng: rng@10520000 { 919ca5b3410SRobert Richter compatible = "apm,xgene-rng"; 920ca5b3410SRobert Richter reg = <0x0 0x10520000 0x0 0x100>; 921ca5b3410SRobert Richter interrupts = <0x0 0x41 0x4>; 922ca5b3410SRobert Richter clocks = <&rngpkaclk 0>; 923ca5b3410SRobert Richter }; 92474e353e1SRameshwar Prasad Sahu 92574e353e1SRameshwar Prasad Sahu dma: dma@1f270000 { 92674e353e1SRameshwar Prasad Sahu compatible = "apm,xgene-storm-dma"; 92774e353e1SRameshwar Prasad Sahu device_type = "dma"; 92874e353e1SRameshwar Prasad Sahu reg = <0x0 0x1f270000 0x0 0x10000>, 92974e353e1SRameshwar Prasad Sahu <0x0 0x1f200000 0x0 0x10000>, 930cda8e937SRameshwar Prasad Sahu <0x0 0x1b000000 0x0 0x400000>, 93174e353e1SRameshwar Prasad Sahu <0x0 0x1054a000 0x0 0x100>; 93274e353e1SRameshwar Prasad Sahu interrupts = <0x0 0x82 0x4>, 93374e353e1SRameshwar Prasad Sahu <0x0 0xb8 0x4>, 93474e353e1SRameshwar Prasad Sahu <0x0 0xb9 0x4>, 93574e353e1SRameshwar Prasad Sahu <0x0 0xba 0x4>, 93674e353e1SRameshwar Prasad Sahu <0x0 0xbb 0x4>; 93774e353e1SRameshwar Prasad Sahu dma-coherent; 93874e353e1SRameshwar Prasad Sahu clocks = <&dmaclk 0>; 93974e353e1SRameshwar Prasad Sahu }; 940ca5b3410SRobert Richter }; 941ca5b3410SRobert Richter}; 942