1*4882a593Smuzhiyun/* 2*4882a593Smuzhiyun * BSD LICENSE 3*4882a593Smuzhiyun * 4*4882a593Smuzhiyun * Copyright(c) 2016-2017 Broadcom. All rights reserved. 5*4882a593Smuzhiyun * 6*4882a593Smuzhiyun * Redistribution and use in source and binary forms, with or without 7*4882a593Smuzhiyun * modification, are permitted provided that the following conditions 8*4882a593Smuzhiyun * are met: 9*4882a593Smuzhiyun * 10*4882a593Smuzhiyun * * Redistributions of source code must retain the above copyright 11*4882a593Smuzhiyun * notice, this list of conditions and the following disclaimer. 12*4882a593Smuzhiyun * * Redistributions in binary form must reproduce the above copyright 13*4882a593Smuzhiyun * notice, this list of conditions and the following disclaimer in 14*4882a593Smuzhiyun * the documentation and/or other materials provided with the 15*4882a593Smuzhiyun * distribution. 16*4882a593Smuzhiyun * * Neither the name of Broadcom nor the names of its 17*4882a593Smuzhiyun * contributors may be used to endorse or promote products derived 18*4882a593Smuzhiyun * from this software without specific prior written permission. 19*4882a593Smuzhiyun * 20*4882a593Smuzhiyun * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 21*4882a593Smuzhiyun * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 22*4882a593Smuzhiyun * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 23*4882a593Smuzhiyun * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 24*4882a593Smuzhiyun * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 25*4882a593Smuzhiyun * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 26*4882a593Smuzhiyun * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 27*4882a593Smuzhiyun * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 28*4882a593Smuzhiyun * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 29*4882a593Smuzhiyun * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 30*4882a593Smuzhiyun * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 31*4882a593Smuzhiyun */ 32*4882a593Smuzhiyun 33*4882a593Smuzhiyun sata { 34*4882a593Smuzhiyun compatible = "simple-bus"; 35*4882a593Smuzhiyun #address-cells = <1>; 36*4882a593Smuzhiyun #size-cells = <1>; 37*4882a593Smuzhiyun ranges = <0x0 0x0 0x67d00000 0x00800000>; 38*4882a593Smuzhiyun 39*4882a593Smuzhiyun sata0: ahci@0 { 40*4882a593Smuzhiyun compatible = "brcm,iproc-ahci", "generic-ahci"; 41*4882a593Smuzhiyun reg = <0x00000000 0x1000>; 42*4882a593Smuzhiyun reg-names = "ahci"; 43*4882a593Smuzhiyun interrupts = <GIC_SPI 321 IRQ_TYPE_LEVEL_HIGH>; 44*4882a593Smuzhiyun #address-cells = <1>; 45*4882a593Smuzhiyun #size-cells = <0>; 46*4882a593Smuzhiyun status = "disabled"; 47*4882a593Smuzhiyun 48*4882a593Smuzhiyun sata0_port0: sata-port@0 { 49*4882a593Smuzhiyun reg = <0>; 50*4882a593Smuzhiyun phys = <&sata0_phy0>; 51*4882a593Smuzhiyun phy-names = "sata-phy"; 52*4882a593Smuzhiyun }; 53*4882a593Smuzhiyun }; 54*4882a593Smuzhiyun 55*4882a593Smuzhiyun sata_phy0: sata_phy@2100 { 56*4882a593Smuzhiyun compatible = "brcm,iproc-sr-sata-phy"; 57*4882a593Smuzhiyun reg = <0x00002100 0x1000>; 58*4882a593Smuzhiyun reg-names = "phy"; 59*4882a593Smuzhiyun #address-cells = <1>; 60*4882a593Smuzhiyun #size-cells = <0>; 61*4882a593Smuzhiyun status = "disabled"; 62*4882a593Smuzhiyun 63*4882a593Smuzhiyun sata0_phy0: sata-phy@0 { 64*4882a593Smuzhiyun reg = <0>; 65*4882a593Smuzhiyun #phy-cells = <0>; 66*4882a593Smuzhiyun }; 67*4882a593Smuzhiyun }; 68*4882a593Smuzhiyun 69*4882a593Smuzhiyun sata1: ahci@10000 { 70*4882a593Smuzhiyun compatible = "brcm,iproc-ahci", "generic-ahci"; 71*4882a593Smuzhiyun reg = <0x00010000 0x1000>; 72*4882a593Smuzhiyun reg-names = "ahci"; 73*4882a593Smuzhiyun interrupts = <GIC_SPI 323 IRQ_TYPE_LEVEL_HIGH>; 74*4882a593Smuzhiyun #address-cells = <1>; 75*4882a593Smuzhiyun #size-cells = <0>; 76*4882a593Smuzhiyun status = "disabled"; 77*4882a593Smuzhiyun 78*4882a593Smuzhiyun sata1_port0: sata-port@0 { 79*4882a593Smuzhiyun reg = <0>; 80*4882a593Smuzhiyun phys = <&sata1_phy0>; 81*4882a593Smuzhiyun phy-names = "sata-phy"; 82*4882a593Smuzhiyun }; 83*4882a593Smuzhiyun }; 84*4882a593Smuzhiyun 85*4882a593Smuzhiyun sata_phy1: sata_phy@12100 { 86*4882a593Smuzhiyun compatible = "brcm,iproc-sr-sata-phy"; 87*4882a593Smuzhiyun reg = <0x00012100 0x1000>; 88*4882a593Smuzhiyun reg-names = "phy"; 89*4882a593Smuzhiyun #address-cells = <1>; 90*4882a593Smuzhiyun #size-cells = <0>; 91*4882a593Smuzhiyun status = "disabled"; 92*4882a593Smuzhiyun 93*4882a593Smuzhiyun sata1_phy0: sata-phy@0 { 94*4882a593Smuzhiyun reg = <0>; 95*4882a593Smuzhiyun #phy-cells = <0>; 96*4882a593Smuzhiyun }; 97*4882a593Smuzhiyun }; 98*4882a593Smuzhiyun 99*4882a593Smuzhiyun sata2: ahci@20000 { 100*4882a593Smuzhiyun compatible = "brcm,iproc-ahci", "generic-ahci"; 101*4882a593Smuzhiyun reg = <0x00020000 0x1000>; 102*4882a593Smuzhiyun reg-names = "ahci"; 103*4882a593Smuzhiyun interrupts = <GIC_SPI 325 IRQ_TYPE_LEVEL_HIGH>; 104*4882a593Smuzhiyun #address-cells = <1>; 105*4882a593Smuzhiyun #size-cells = <0>; 106*4882a593Smuzhiyun status = "disabled"; 107*4882a593Smuzhiyun 108*4882a593Smuzhiyun sata2_port0: sata-port@0 { 109*4882a593Smuzhiyun reg = <0>; 110*4882a593Smuzhiyun phys = <&sata2_phy0>; 111*4882a593Smuzhiyun phy-names = "sata-phy"; 112*4882a593Smuzhiyun }; 113*4882a593Smuzhiyun }; 114*4882a593Smuzhiyun 115*4882a593Smuzhiyun sata_phy2: sata_phy@22100 { 116*4882a593Smuzhiyun compatible = "brcm,iproc-sr-sata-phy"; 117*4882a593Smuzhiyun reg = <0x00022100 0x1000>; 118*4882a593Smuzhiyun reg-names = "phy"; 119*4882a593Smuzhiyun #address-cells = <1>; 120*4882a593Smuzhiyun #size-cells = <0>; 121*4882a593Smuzhiyun status = "disabled"; 122*4882a593Smuzhiyun 123*4882a593Smuzhiyun sata2_phy0: sata-phy@0 { 124*4882a593Smuzhiyun reg = <0>; 125*4882a593Smuzhiyun #phy-cells = <0>; 126*4882a593Smuzhiyun }; 127*4882a593Smuzhiyun }; 128*4882a593Smuzhiyun 129*4882a593Smuzhiyun sata3: ahci@30000 { 130*4882a593Smuzhiyun compatible = "brcm,iproc-ahci", "generic-ahci"; 131*4882a593Smuzhiyun reg = <0x00030000 0x1000>; 132*4882a593Smuzhiyun reg-names = "ahci"; 133*4882a593Smuzhiyun interrupts = <GIC_SPI 327 IRQ_TYPE_LEVEL_HIGH>; 134*4882a593Smuzhiyun #address-cells = <1>; 135*4882a593Smuzhiyun #size-cells = <0>; 136*4882a593Smuzhiyun status = "disabled"; 137*4882a593Smuzhiyun 138*4882a593Smuzhiyun sata3_port0: sata-port@0 { 139*4882a593Smuzhiyun reg = <0>; 140*4882a593Smuzhiyun phys = <&sata3_phy0>; 141*4882a593Smuzhiyun phy-names = "sata-phy"; 142*4882a593Smuzhiyun }; 143*4882a593Smuzhiyun }; 144*4882a593Smuzhiyun 145*4882a593Smuzhiyun sata_phy3: sata_phy@32100 { 146*4882a593Smuzhiyun compatible = "brcm,iproc-sr-sata-phy"; 147*4882a593Smuzhiyun reg = <0x00032100 0x1000>; 148*4882a593Smuzhiyun reg-names = "phy"; 149*4882a593Smuzhiyun #address-cells = <1>; 150*4882a593Smuzhiyun #size-cells = <0>; 151*4882a593Smuzhiyun status = "disabled"; 152*4882a593Smuzhiyun 153*4882a593Smuzhiyun sata3_phy0: sata-phy@0 { 154*4882a593Smuzhiyun reg = <0>; 155*4882a593Smuzhiyun #phy-cells = <0>; 156*4882a593Smuzhiyun }; 157*4882a593Smuzhiyun }; 158*4882a593Smuzhiyun 159*4882a593Smuzhiyun sata4: ahci@100000 { 160*4882a593Smuzhiyun compatible = "brcm,iproc-ahci", "generic-ahci"; 161*4882a593Smuzhiyun reg = <0x00100000 0x1000>; 162*4882a593Smuzhiyun reg-names = "ahci"; 163*4882a593Smuzhiyun interrupts = <GIC_SPI 329 IRQ_TYPE_LEVEL_HIGH>; 164*4882a593Smuzhiyun #address-cells = <1>; 165*4882a593Smuzhiyun #size-cells = <0>; 166*4882a593Smuzhiyun status = "disabled"; 167*4882a593Smuzhiyun 168*4882a593Smuzhiyun sata4_port0: sata-port@0 { 169*4882a593Smuzhiyun reg = <0>; 170*4882a593Smuzhiyun phys = <&sata4_phy0>; 171*4882a593Smuzhiyun phy-names = "sata-phy"; 172*4882a593Smuzhiyun }; 173*4882a593Smuzhiyun }; 174*4882a593Smuzhiyun 175*4882a593Smuzhiyun sata_phy4: sata_phy@102100 { 176*4882a593Smuzhiyun compatible = "brcm,iproc-sr-sata-phy"; 177*4882a593Smuzhiyun reg = <0x00102100 0x1000>; 178*4882a593Smuzhiyun reg-names = "phy"; 179*4882a593Smuzhiyun #address-cells = <1>; 180*4882a593Smuzhiyun #size-cells = <0>; 181*4882a593Smuzhiyun status = "disabled"; 182*4882a593Smuzhiyun 183*4882a593Smuzhiyun sata4_phy0: sata-phy@0 { 184*4882a593Smuzhiyun reg = <0>; 185*4882a593Smuzhiyun #phy-cells = <0>; 186*4882a593Smuzhiyun }; 187*4882a593Smuzhiyun }; 188*4882a593Smuzhiyun 189*4882a593Smuzhiyun sata5: ahci@110000 { 190*4882a593Smuzhiyun compatible = "brcm,iproc-ahci", "generic-ahci"; 191*4882a593Smuzhiyun reg = <0x00110000 0x1000>; 192*4882a593Smuzhiyun reg-names = "ahci"; 193*4882a593Smuzhiyun interrupts = <GIC_SPI 331 IRQ_TYPE_LEVEL_HIGH>; 194*4882a593Smuzhiyun #address-cells = <1>; 195*4882a593Smuzhiyun #size-cells = <0>; 196*4882a593Smuzhiyun status = "disabled"; 197*4882a593Smuzhiyun 198*4882a593Smuzhiyun sata5_port0: sata-port@0 { 199*4882a593Smuzhiyun reg = <0>; 200*4882a593Smuzhiyun phys = <&sata5_phy0>; 201*4882a593Smuzhiyun phy-names = "sata-phy"; 202*4882a593Smuzhiyun }; 203*4882a593Smuzhiyun }; 204*4882a593Smuzhiyun 205*4882a593Smuzhiyun sata_phy5: sata_phy@112100 { 206*4882a593Smuzhiyun compatible = "brcm,iproc-sr-sata-phy"; 207*4882a593Smuzhiyun reg = <0x00112100 0x1000>; 208*4882a593Smuzhiyun reg-names = "phy"; 209*4882a593Smuzhiyun #address-cells = <1>; 210*4882a593Smuzhiyun #size-cells = <0>; 211*4882a593Smuzhiyun status = "disabled"; 212*4882a593Smuzhiyun 213*4882a593Smuzhiyun sata5_phy0: sata-phy@0 { 214*4882a593Smuzhiyun reg = <0>; 215*4882a593Smuzhiyun #phy-cells = <0>; 216*4882a593Smuzhiyun }; 217*4882a593Smuzhiyun }; 218*4882a593Smuzhiyun 219*4882a593Smuzhiyun sata6: ahci@120000 { 220*4882a593Smuzhiyun compatible = "brcm,iproc-ahci", "generic-ahci"; 221*4882a593Smuzhiyun reg = <0x00120000 0x1000>; 222*4882a593Smuzhiyun reg-names = "ahci"; 223*4882a593Smuzhiyun interrupts = <GIC_SPI 333 IRQ_TYPE_LEVEL_HIGH>; 224*4882a593Smuzhiyun #address-cells = <1>; 225*4882a593Smuzhiyun #size-cells = <0>; 226*4882a593Smuzhiyun status = "disabled"; 227*4882a593Smuzhiyun 228*4882a593Smuzhiyun sata6_port0: sata-port@0 { 229*4882a593Smuzhiyun reg = <0>; 230*4882a593Smuzhiyun phys = <&sata6_phy0>; 231*4882a593Smuzhiyun phy-names = "sata-phy"; 232*4882a593Smuzhiyun }; 233*4882a593Smuzhiyun }; 234*4882a593Smuzhiyun 235*4882a593Smuzhiyun sata_phy6: sata_phy@122100 { 236*4882a593Smuzhiyun compatible = "brcm,iproc-sr-sata-phy"; 237*4882a593Smuzhiyun reg = <0x00122100 0x1000>; 238*4882a593Smuzhiyun reg-names = "phy"; 239*4882a593Smuzhiyun #address-cells = <1>; 240*4882a593Smuzhiyun #size-cells = <0>; 241*4882a593Smuzhiyun status = "disabled"; 242*4882a593Smuzhiyun 243*4882a593Smuzhiyun sata6_phy0: sata-phy@0 { 244*4882a593Smuzhiyun reg = <0>; 245*4882a593Smuzhiyun #phy-cells = <0>; 246*4882a593Smuzhiyun }; 247*4882a593Smuzhiyun }; 248*4882a593Smuzhiyun 249*4882a593Smuzhiyun sata7: ahci@130000 { 250*4882a593Smuzhiyun compatible = "brcm,iproc-ahci", "generic-ahci"; 251*4882a593Smuzhiyun reg = <0x00130000 0x1000>; 252*4882a593Smuzhiyun reg-names = "ahci"; 253*4882a593Smuzhiyun interrupts = <GIC_SPI 335 IRQ_TYPE_LEVEL_HIGH>; 254*4882a593Smuzhiyun #address-cells = <1>; 255*4882a593Smuzhiyun #size-cells = <0>; 256*4882a593Smuzhiyun status = "disabled"; 257*4882a593Smuzhiyun 258*4882a593Smuzhiyun sata7_port0: sata-port@0 { 259*4882a593Smuzhiyun reg = <0>; 260*4882a593Smuzhiyun phys = <&sata7_phy0>; 261*4882a593Smuzhiyun phy-names = "sata-phy"; 262*4882a593Smuzhiyun }; 263*4882a593Smuzhiyun }; 264*4882a593Smuzhiyun 265*4882a593Smuzhiyun sata_phy7: sata_phy@132100 { 266*4882a593Smuzhiyun compatible = "brcm,iproc-sr-sata-phy"; 267*4882a593Smuzhiyun reg = <0x00132100 0x1000>; 268*4882a593Smuzhiyun reg-names = "phy"; 269*4882a593Smuzhiyun #address-cells = <1>; 270*4882a593Smuzhiyun #size-cells = <0>; 271*4882a593Smuzhiyun status = "disabled"; 272*4882a593Smuzhiyun 273*4882a593Smuzhiyun sata7_phy0: sata-phy@0 { 274*4882a593Smuzhiyun reg = <0>; 275*4882a593Smuzhiyun #phy-cells = <0>; 276*4882a593Smuzhiyun }; 277*4882a593Smuzhiyun }; 278*4882a593Smuzhiyun }; 279