Home | History | Annotate | Line # | Download | only in broadcom
      1 /*
      2  * Broadcom BCM470X / BCM5301X ARM platform code.
      3  * DTS for Netgear R8000
      4  *
      5  * Copyright (C) 2015 Rafa Miecki <zajec5 (at) gmail.com>
      6  *
      7  * Permission to use, copy, modify, and/or distribute this software for any
      8  * purpose with or without fee is hereby granted, provided that the above
      9  * copyright notice and this permission notice appear in all copies.
     10  *
     11  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
     12  * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
     13  * AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
     14  * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
     15  * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
     16  * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
     17  * PERFORMANCE OF THIS SOFTWARE.
     18  */
     19 
     20 /dts-v1/;
     21 
     22 #include "bcm4709.dtsi"
     23 #include "bcm5301x-nand-cs0-bch8.dtsi"
     24 
     25 / {
     26 	compatible = "netgear,r8000", "brcm,bcm4709", "brcm,bcm4708";
     27 	model = "Netgear R8000 (BCM4709)";
     28 
     29 	chosen {
     30 		bootargs = "console=ttyS0,115200";
     31 	};
     32 
     33 	memory@0 {
     34 		device_type = "memory";
     35 		reg = <0x00000000 0x08000000>,
     36 		      <0x88000000 0x08000000>;
     37 	};
     38 
     39 	leds {
     40 		compatible = "gpio-leds";
     41 
     42 		led-power-white {
     43 			label = "bcm53xx:white:power";
     44 			gpios = <&chipcommon 2 GPIO_ACTIVE_LOW>;
     45 			linux,default-trigger = "default-on";
     46 		};
     47 
     48 		led-power-amber {
     49 			label = "bcm53xx:amber:power";
     50 			gpios = <&chipcommon 3 GPIO_ACTIVE_LOW>;
     51 		};
     52 
     53 		led-wan-white {
     54 			label = "bcm53xx:white:wan";
     55 			gpios = <&chipcommon 8 GPIO_ACTIVE_LOW>;
     56 			linux,default-trigger = "default-on";
     57 		};
     58 
     59 		led-wan-amber {
     60 			label = "bcm53xx:amber:wan";
     61 			gpios = <&chipcommon 9 GPIO_ACTIVE_HIGH>;
     62 		};
     63 
     64 		led-5ghz-1 {
     65 			label = "bcm53xx:white:5ghz-1";
     66 			gpios = <&chipcommon 12 GPIO_ACTIVE_LOW>;
     67 		};
     68 
     69 		led-2ghz {
     70 			label = "bcm53xx:white:2ghz";
     71 			gpios = <&chipcommon 13 GPIO_ACTIVE_LOW>;
     72 		};
     73 
     74 		led-wireless {
     75 			label = "bcm53xx:white:wireless";
     76 			gpios = <&chipcommon 14 GPIO_ACTIVE_HIGH>;
     77 		};
     78 
     79 		led-wps {
     80 			label = "bcm53xx:white:wps";
     81 			gpios = <&chipcommon 15 GPIO_ACTIVE_HIGH>;
     82 		};
     83 
     84 		led-5ghz-2 {
     85 			label = "bcm53xx:white:5ghz-2";
     86 			gpios = <&chipcommon 16 GPIO_ACTIVE_LOW>;
     87 		};
     88 
     89 		led-usb3 {
     90 			label = "bcm53xx:white:usb3";
     91 			gpios = <&chipcommon 17 GPIO_ACTIVE_LOW>;
     92 		};
     93 
     94 		led-usb2 {
     95 			label = "bcm53xx:white:usb2";
     96 			gpios = <&chipcommon 18 GPIO_ACTIVE_LOW>;
     97 		};
     98 	};
     99 
    100 	gpio-keys {
    101 		compatible = "gpio-keys";
    102 
    103 		button-rfkill {
    104 			label = "WiFi";
    105 			linux,code = <KEY_RFKILL>;
    106 			gpios = <&chipcommon 4 GPIO_ACTIVE_LOW>;
    107 		};
    108 
    109 		button-wps {
    110 			label = "WPS";
    111 			linux,code = <KEY_WPS_BUTTON>;
    112 			gpios = <&chipcommon 5 GPIO_ACTIVE_LOW>;
    113 		};
    114 
    115 		button-restart {
    116 			label = "Reset";
    117 			linux,code = <KEY_RESTART>;
    118 			gpios = <&chipcommon 6 GPIO_ACTIVE_LOW>;
    119 		};
    120 
    121 		button-brightness {
    122 			label = "Backlight";
    123 			linux,code = <KEY_BRIGHTNESS_ZERO>;
    124 			gpios = <&chipcommon 19 GPIO_ACTIVE_LOW>;
    125 		};
    126 	};
    127 };
    128 
    129 &pcie0 {
    130 	#address-cells = <3>;
    131 	#size-cells = <2>;
    132 
    133 	bridge@0,0,0 {
    134 		reg = <0x0000 0 0 0 0>;
    135 
    136 		#address-cells = <3>;
    137 		#size-cells = <2>;
    138 
    139 		wifi@0,1,0 {
    140 			compatible = "brcm,bcm4366-fmac", "brcm,bcm4329-fmac";
    141 			reg = <0x0000 0 0 0 0>;
    142 			ieee80211-freq-limit = <5735000 5835000>;
    143 			brcm,ccode-map = "JP-JP-78", "US-Q2-86";
    144 		};
    145 	};
    146 };
    147 
    148 &pcie1 {
    149 	#address-cells = <3>;
    150 	#size-cells = <2>;
    151 
    152 	bridge@1,0,0 {
    153 		reg = <0x0000 0 0 0 0>;
    154 
    155 		#address-cells = <3>;
    156 		#size-cells = <2>;
    157 
    158 		bridge@1,1,0 {
    159 			reg = <0x0000 0 0 0 0>;
    160 
    161 			#address-cells = <3>;
    162 			#size-cells = <2>;
    163 
    164 			bridge@1,0 {
    165 				reg = <0x800 0 0 0 0>;
    166 
    167 				#address-cells = <3>;
    168 				#size-cells = <2>;
    169 
    170 				wifi@0,0 {
    171 					compatible = "brcm,bcm4366-fmac", "brcm,bcm4329-fmac";
    172 					reg = <0x0000 0 0 0 0>;
    173 					brcm,ccode-map = "JP-JP-78", "US-Q2-86";
    174 				};
    175 			};
    176 
    177 			bridge@1,2,2 {
    178 				reg = <0x1000 0 0 0 0>;
    179 
    180 				#address-cells = <3>;
    181 				#size-cells = <2>;
    182 
    183 				wifi@1,4,0 {
    184 					compatible = "brcm,bcm4366-fmac", "brcm,bcm4329-fmac";
    185 					reg = <0x0000 0 0 0 0>;
    186 					ieee80211-freq-limit = <5170000 5730000>;
    187 					brcm,ccode-map = "JP-JP-78", "US-Q2-86";
    188 				};
    189 			};
    190 		};
    191 	};
    192 };
    193 
    194 &usb2 {
    195 	vcc-gpio = <&chipcommon 0 GPIO_ACTIVE_HIGH>;
    196 };
    197 
    198 &usb3 {
    199 	vcc-gpio = <&chipcommon 0 GPIO_ACTIVE_HIGH>;
    200 };
    201 
    202 &usb3_phy {
    203 	status = "okay";
    204 };
    205 
    206 &srab {
    207 	status = "okay";
    208 
    209 	ports {
    210 		port@0 {
    211 			label = "lan1";
    212 		};
    213 
    214 		port@1 {
    215 			label = "lan2";
    216 		};
    217 
    218 		port@2 {
    219 			label = "lan3";
    220 		};
    221 
    222 		port@3 {
    223 			label = "lan4";
    224 		};
    225 
    226 		port@4 {
    227 			label = "wan";
    228 		};
    229 
    230 		port@5 {
    231 			status = "disabled";
    232 
    233 			fixed-link {
    234 				speed = <1000>;
    235 				full-duplex;
    236 			};
    237 		};
    238 
    239 		port@7 {
    240 			status = "disabled";
    241 
    242 			fixed-link {
    243 				speed = <1000>;
    244 				full-duplex;
    245 			};
    246 		};
    247 
    248 		port@8 {
    249 			label = "cpu";
    250 		};
    251 	};
    252 };
    253