1/* 2 * Device Tree file for NETGEAR ReadyNAS NV+ v2 3 * 4 * Copyright (C) 2013, Arnaud EBALARD <arno@natisbad.org> 5 * 6 * This program is free software; you can redistribute it and/or 7 * modify it under the terms of the GNU General Public License 8 * as published by the Free Software Foundation; either version 9 * 2 of the License, or (at your option) any later version. 10 */ 11 12/dts-v1/; 13 14#include "kirkwood.dtsi" 15#include "kirkwood-6282.dtsi" 16 17/ { 18 model = "NETGEAR ReadyNAS NV+ v2"; 19 compatible = "netgear,readynas-nv+-v2", "netgear,readynas", "marvell,kirkwood-88f6282", "marvell,kirkwood"; 20 21 memory { /* 256 MB */ 22 device_type = "memory"; 23 reg = <0x00000000 0x10000000>; 24 }; 25 26 chosen { 27 bootargs = "console=ttyS0,115200n8 earlyprintk"; 28 stdout-path = &uart0; 29 }; 30 31 ocp@f1000000 { 32 pinctrl: pin-controller@10000 { 33 pmx_button_power: pmx-button-power { 34 marvell,pins = "mpp47"; 35 marvell,function = "gpio"; 36 }; 37 38 pmx_button_backup: pmx-button-backup { 39 marvell,pins = "mpp45"; 40 marvell,function = "gpio"; 41 }; 42 43 pmx_button_reset: pmx-button-reset { 44 marvell,pins = "mpp13"; 45 marvell,function = "gpio"; 46 }; 47 48 pmx_led_blue_power: pmx-led-blue-power { 49 marvell,pins = "mpp31"; 50 marvell,function = "gpio"; 51 }; 52 53 pmx_led_blue_backup: pmx-led-blue-backup { 54 marvell,pins = "mpp22"; 55 marvell,function = "gpio"; 56 }; 57 58 pmx_led_blue_disk1: pmx-led-blue-disk1 { 59 marvell,pins = "mpp20"; 60 marvell,function = "gpio"; 61 }; 62 63 pmx_led_blue_disk2: pmx-led-blue-disk2 { 64 marvell,pins = "mpp23"; 65 marvell,function = "gpio"; 66 }; 67 68 pmx_led_blue_disk3: pmx-led-blue-disk3 { 69 marvell,pins = "mpp24"; 70 marvell,function = "gpio"; 71 }; 72 73 pmx_led_blue_disk4: pmx-led-blue-disk4 { 74 marvell,pins = "mpp29"; 75 marvell,function = "gpio"; 76 }; 77 78 pmx_poweroff: pmx-poweroff { 79 marvell,pins = "mpp30"; 80 marvell,function = "gpio"; 81 }; 82 }; 83 84 clocks { 85 g762_clk: g762-oscillator { 86 compatible = "fixed-clock"; 87 #clock-cells = <0>; 88 clock-frequency = <8192>; 89 }; 90 }; 91 92 i2c@11000 { 93 status = "okay"; 94 95 rs5c372a: rs5c372a@32 { 96 compatible = "ricoh,rs5c372a"; 97 reg = <0x32>; 98 }; 99 100 g762: g762@3e { 101 compatible = "gmt,g762"; 102 reg = <0x3e>; 103 clocks = <&g762_clk>; /* input clock */ 104 fan_gear_mode = <0>; 105 fan_startv = <1>; 106 pwm_polarity = <0>; 107 }; 108 }; 109 110 serial@12000 { 111 status = "okay"; 112 }; 113 114 sata@80000 { /* Connected to Marvell 88SM4140 SATA port multiplier */ 115 status = "okay"; 116 nr-ports = <1>; 117 }; 118 }; 119 120 gpio-leds { 121 compatible = "gpio-leds"; 122 pinctrl-0 = < &pmx_led_blue_power &pmx_led_blue_backup 123 &pmx_led_blue_disk1 &pmx_led_blue_disk2 124 &pmx_led_blue_disk3 &pmx_led_blue_disk3 >; 125 pinctrl-names = "default"; 126 127 power_led { 128 label = "status:blue:power_led"; 129 gpios = <&gpio0 31 GPIO_ACTIVE_LOW>; 130 linux,default-trigger = "default-on"; 131 }; 132 133 backup_led { 134 label = "status:blue:backup_led"; 135 gpios = <&gpio0 22 GPIO_ACTIVE_LOW>; 136 }; 137 138 disk1_led { 139 label = "status:blue:disk1_led"; 140 gpios = <&gpio0 20 GPIO_ACTIVE_LOW>; 141 }; 142 143 disk2_led { 144 label = "status:blue:disk2_led"; 145 gpios = <&gpio0 23 GPIO_ACTIVE_LOW>; 146 }; 147 148 disk3_led { 149 label = "status:blue:disk3_led"; 150 gpios = <&gpio0 24 GPIO_ACTIVE_LOW>; 151 }; 152 153 disk4_led { 154 label = "status:blue:disk4_led"; 155 gpios = <&gpio0 29 GPIO_ACTIVE_LOW>; 156 }; 157 }; 158 159 gpio-keys { 160 compatible = "gpio-keys"; 161 pinctrl-0 = <&pmx_button_power &pmx_button_backup 162 &pmx_button_reset>; 163 pinctrl-names = "default"; 164 165 power-button { 166 label = "Power Button"; 167 linux,code = <KEY_POWER>; 168 gpios = <&gpio1 15 GPIO_ACTIVE_LOW>; 169 }; 170 171 reset-button { 172 label = "Reset Button"; 173 linux,code = <KEY_RESTART>; 174 gpios = <&gpio0 13 GPIO_ACTIVE_LOW>; 175 }; 176 177 backup-button { 178 label = "Backup Button"; 179 linux,code = <KEY_COPY>; 180 gpios = <&gpio1 13 GPIO_ACTIVE_LOW>; 181 }; 182 }; 183 184 gpio-poweroff { 185 compatible = "gpio-poweroff"; 186 pinctrl-0 = <&pmx_poweroff>; 187 pinctrl-names = "default"; 188 gpios = <&gpio0 30 GPIO_ACTIVE_LOW>; 189 }; 190 191 regulators { 192 compatible = "simple-bus"; 193 #address-cells = <1>; 194 #size-cells = <0>; 195 196 usb3_regulator: usb3-regulator@1 { 197 compatible = "regulator-fixed"; 198 reg = <1>; 199 regulator-name = "USB 3.0 Power"; 200 regulator-min-microvolt = <5000000>; 201 regulator-max-microvolt = <5000000>; 202 enable-active-high; 203 regulator-always-on; 204 regulator-boot-on; 205 gpio = <&gpio1 14 GPIO_ACTIVE_HIGH>; 206 }; 207 }; 208}; 209 210&nand { 211 status = "okay"; 212 213 partition@0 { 214 label = "u-boot"; 215 reg = <0x0000000 0x180000>; 216 read-only; 217 }; 218 219 partition@180000 { 220 label = "u-boot-env"; 221 reg = <0x180000 0x20000>; 222 }; 223 224 partition@200000 { 225 label = "uImage"; 226 reg = <0x0200000 0x600000>; 227 }; 228 229 partition@800000 { 230 label = "minirootfs"; 231 reg = <0x0800000 0x1000000>; 232 }; 233 234 partition@1800000 { 235 label = "jffs2"; 236 reg = <0x1800000 0x6800000>; 237 }; 238}; 239 240&mdio { 241 status = "okay"; 242 243 ethphy0: ethernet-phy@0 { /* Marvell 88E1318 */ 244 device_type = "ethernet-phy"; 245 reg = <0>; 246 }; 247}; 248 249ð0 { 250 status = "okay"; 251 252 ethernet0-port@0 { 253 phy-handle = <ðphy0>; 254 }; 255}; 256 257/* Connected to NEC uPD720200 USB 3.0 controller */ 258&pciec { 259 status = "okay"; 260}; 261 262&pcie0 { 263 status = "okay"; 264}; 265