Back to home page

OSCL-LXR

 
 

    


0001 /*
0002  *  BSD LICENSE
0003  *
0004  *  Copyright(c) 2015 Broadcom Corporation.  All rights reserved.
0005  *
0006  *  Redistribution and use in source and binary forms, with or without
0007  *  modification, are permitted provided that the following conditions
0008  *  are met:
0009  *
0010  *    * Redistributions of source code must retain the above copyright
0011  *      notice, this list of conditions and the following disclaimer.
0012  *    * Redistributions in binary form must reproduce the above copyright
0013  *      notice, this list of conditions and the following disclaimer in
0014  *      the documentation and/or other materials provided with the
0015  *      distribution.
0016  *    * Neither the name of Broadcom Corporation nor the names of its
0017  *      contributors may be used to endorse or promote products derived
0018  *      from this software without specific prior written permission.
0019  *
0020  *  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
0021  *  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
0022  *  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
0023  *  A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
0024  *  OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
0025  *  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
0026  *  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
0027  *  DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
0028  *  THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
0029  *  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
0030  *  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
0031  */
0032 
0033 /dts-v1/;
0034 
0035 #include "bcm-nsp.dtsi"
0036 
0037 / {
0038         model = "NorthStar Plus SVK (BCM958625K)";
0039         compatible = "brcm,bcm958625k", "brcm,bcm58625", "brcm,nsp";
0040 
0041         chosen {
0042                 stdout-path = "serial0:115200n8";
0043         };
0044 
0045         memory@60000000 {
0046                 device_type = "memory";
0047                 reg = <0x60000000 0x80000000>;
0048         };
0049 };
0050 
0051 &dma {
0052         status = "okay";
0053 };
0054 
0055 &amac0 {
0056         status = "okay";
0057 };
0058 
0059 &amac1 {
0060         status = "okay";
0061 };
0062 
0063 &amac2 {
0064         status = "okay";
0065 };
0066 
0067 &ehci0 {
0068         status = "okay";
0069 };
0070 
0071 &nand_controller {
0072         nand@0 {
0073                 compatible = "brcm,nandcs";
0074                 reg = <0>;
0075                 nand-on-flash-bbt;
0076 
0077                 #address-cells = <1>;
0078                 #size-cells = <1>;
0079 
0080                 nand-ecc-strength = <24>;
0081                 nand-ecc-step-size = <1024>;
0082 
0083                 brcm,nand-oob-sector-size = <27>;
0084 
0085                 partition@0 {
0086                         label = "nboot";
0087                         reg = <0x00000000 0x00200000>;
0088                         read-only;
0089                 };
0090                 partition@200000 {
0091                         label = "nenv";
0092                         reg = <0x00200000 0x00400000>;
0093                 };
0094                 partition@600000 {
0095                         label = "nsystem";
0096                         reg = <0x00600000 0x00a00000>;
0097                 };
0098                 partition@1000000 {
0099                         label = "nrootfs";
0100                         reg = <0x01000000 0x03000000>;
0101                 };
0102                 partition@4000000 {
0103                         label = "ncustfs";
0104                         reg = <0x04000000 0x3c000000>;
0105                 };
0106         };
0107 };
0108 
0109 &ohci0 {
0110         status = "okay";
0111 };
0112 
0113 &pcie0 {
0114         status = "okay";
0115 };
0116 
0117 &pcie1 {
0118         status = "okay";
0119 };
0120 
0121 &pcie2 {
0122         status = "okay";
0123 };
0124 
0125 &pinctrl {
0126         pinctrl-names = "default";
0127         pinctrl-0 = <&nand_sel>, <&gpiobs>, <&pwmc>;
0128 
0129         nand_sel: nand_sel {
0130                 function = "nand";
0131                 groups = "nand_grp";
0132         };
0133 
0134         gpiobs: gpiobs {
0135                 function = "gpio_b";
0136                 groups = "gpio_b_0_grp", "gpio_b_1_grp", "gpio_b_2_grp",
0137                          "gpio_b_3_grp";
0138         };
0139 
0140         pwmc: pwmc {
0141                 function = "pwm";
0142                 groups = "pwm0_grp", "pwm1_grp", "pwm2_grp", "pwm3_grp";
0143         };
0144 
0145         emmc_sel: emmc_sel {
0146                 function = "emmc";
0147                 groups = "emmc_grp";
0148         };
0149 };
0150 
0151 &pwm {
0152         status = "okay";
0153 };
0154 
0155 &qspi {
0156         status = "okay";
0157         bspi-sel = <0>;
0158         flash: flash@0 {
0159                 #address-cells = <1>;
0160                 #size-cells = <1>;
0161                 compatible = "m25p80";
0162                 reg = <0x0>;
0163                 spi-max-frequency = <12500000>;
0164                 m25p,fast-read;
0165                 spi-cpol;
0166                 spi-cpha;
0167 
0168                 partition@0 {
0169                         label = "boot";
0170                         reg = <0x00000000 0x000a0000>;
0171                 };
0172 
0173                 partition@a0000 {
0174                         label = "env";
0175                         reg = <0x000a0000 0x00060000>;
0176                 };
0177 
0178                 partition@100000 {
0179                         label = "system";
0180                         reg = <0x00100000 0x00600000>;
0181                 };
0182 
0183                 partition@700000 {
0184                         label = "rootfs";
0185                         reg = <0x00700000 0x01900000>;
0186                 };
0187         };
0188 };
0189 
0190 &sata_phy0 {
0191         status = "okay";
0192 };
0193 
0194 &sata_phy1 {
0195         status = "okay";
0196 };
0197 
0198 &sata {
0199         status = "okay";
0200 };
0201 
0202 /*
0203  * By default the sd slot is functional. For emmc to work add "<&emmc_sel>"
0204  * and delete "<&nand_sel>" in "pinctrl-0" property of pinctrl node. Remove the
0205  * bus-width property here and disable the nand node with status = "disabled";.
0206  *
0207  * Ex: pinctrl-0 = <&emmc_sel>, <&gpiobs>, <&pwmc>;
0208  */
0209 &sdio {
0210         bus-width = <4>;
0211         no-1-8-v;
0212         status = "okay";
0213 };
0214 
0215 &srab {
0216         compatible = "brcm,bcm58625-srab", "brcm,nsp-srab";
0217         status = "okay";
0218 
0219         ports {
0220                 port@0 {
0221                         label = "port0";
0222                         reg = <0>;
0223                 };
0224 
0225                 port@1 {
0226                         label = "port1";
0227                         reg = <1>;
0228                 };
0229 
0230                 port@2 {
0231                         label = "port2";
0232                         reg = <2>;
0233                 };
0234 
0235                 port@3 {
0236                         label = "port3";
0237                         reg = <3>;
0238                 };
0239 
0240                 port@4 {
0241                         label = "port4";
0242                         reg = <4>;
0243                 };
0244 
0245                 port@8 {
0246                         ethernet = <&amac2>;
0247                         label = "cpu";
0248                         reg = <8>;
0249                         fixed-link {
0250                                 speed = <1000>;
0251                                 full-duplex;
0252                         };
0253                 };
0254         };
0255 };
0256 
0257 &uart0 {
0258         status = "okay";
0259 };
0260 
0261 &uart1 {
0262         status = "okay";
0263 };
0264 
0265 &usb3_phy {
0266         status = "okay";
0267 };
0268 
0269 &xhci {
0270         status = "okay";
0271 };