1ca36855eSGregory CLEMENT// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 22344a29aSArnaud Ebalard/* 32344a29aSArnaud Ebalard * Device Tree file for NETGEAR ReadyNAS 102 42344a29aSArnaud Ebalard * 52344a29aSArnaud Ebalard * Copyright (C) 2013, Arnaud EBALARD <arno@natisbad.org> 62344a29aSArnaud Ebalard */ 72344a29aSArnaud Ebalard 82344a29aSArnaud Ebalard/dts-v1/; 92344a29aSArnaud Ebalard 10b8f18162SArnaud Ebalard#include <dt-bindings/input/input.h> 11b8f18162SArnaud Ebalard#include <dt-bindings/gpio/gpio.h> 123d0ed759SJason Cooper#include "armada-370.dtsi" 132344a29aSArnaud Ebalard 142344a29aSArnaud Ebalard/ { 152344a29aSArnaud Ebalard model = "NETGEAR ReadyNAS 102"; 162344a29aSArnaud Ebalard compatible = "netgear,readynas-102", "marvell,armada370", "marvell,armada-370-xp"; 172344a29aSArnaud Ebalard 182344a29aSArnaud Ebalard chosen { 199552203cSThomas Petazzoni stdout-path = "serial0:115200n8"; 202344a29aSArnaud Ebalard }; 212344a29aSArnaud Ebalard 226f477f43SGregory CLEMENT memory@0 { 232344a29aSArnaud Ebalard device_type = "memory"; 242344a29aSArnaud Ebalard reg = <0x00000000 0x20000000>; /* 512 MB */ 252344a29aSArnaud Ebalard }; 262344a29aSArnaud Ebalard 272344a29aSArnaud Ebalard soc { 28b643f858SArnaud Ebalard ranges = <MBUS_ID(0xf0, 0x01) 0 0xd0000000 0x100000 29b416f192SBoris Brezillon MBUS_ID(0x01, 0xe0) 0 0xfff00000 0x100000 30b416f192SBoris Brezillon MBUS_ID(0x09, 0x01) 0 0xf1100000 0x10000>; 31b643f858SArnaud Ebalard 322344a29aSArnaud Ebalard internal-regs { 33784693deSArnaud Ebalard 34784693deSArnaud Ebalard /* RTC is provided by Intersil ISL12057 I2C RTC chip */ 35784693deSArnaud Ebalard rtc@10300 { 36784693deSArnaud Ebalard status = "disabled"; 37784693deSArnaud Ebalard }; 38784693deSArnaud Ebalard 392344a29aSArnaud Ebalard serial@12000 { 402344a29aSArnaud Ebalard status = "okay"; 412344a29aSArnaud Ebalard }; 422344a29aSArnaud Ebalard 437bb2fe59SArnaud Ebalard /* eSATA interface */ 442344a29aSArnaud Ebalard sata@a0000 { 457bb2fe59SArnaud Ebalard nr-ports = <1>; 462344a29aSArnaud Ebalard status = "okay"; 472344a29aSArnaud Ebalard }; 482344a29aSArnaud Ebalard 492344a29aSArnaud Ebalard ethernet@74000 { 508c640da6SEzequiel Garcia pinctrl-0 = <&ge1_rgmii_pins>; 518c640da6SEzequiel Garcia pinctrl-names = "default"; 522344a29aSArnaud Ebalard status = "okay"; 532344a29aSArnaud Ebalard phy = <&phy0>; 542344a29aSArnaud Ebalard phy-mode = "rgmii-id"; 552344a29aSArnaud Ebalard }; 562344a29aSArnaud Ebalard 572344a29aSArnaud Ebalard usb@50000 { 582344a29aSArnaud Ebalard status = "okay"; 592344a29aSArnaud Ebalard }; 602344a29aSArnaud Ebalard 612344a29aSArnaud Ebalard i2c@11000 { 622344a29aSArnaud Ebalard clock-frequency = <100000>; 63ebbd9896SUwe Kleine-König 64ebbd9896SUwe Kleine-König pinctrl-0 = <&i2c0_pins>; 65ebbd9896SUwe Kleine-König pinctrl-names = "default"; 66ebbd9896SUwe Kleine-König 672344a29aSArnaud Ebalard status = "okay"; 682344a29aSArnaud Ebalard 69bd1de6a3SAlexandre Belloni isl12057: rtc@68 { 707a6540caSPhilipp Zabel compatible = "isil,isl12057"; 7149a9b0beSArnaud Ebalard reg = <0x68>; 728b44f5beSSudeep Holla wakeup-source; 7349a9b0beSArnaud Ebalard }; 7449a9b0beSArnaud Ebalard 752344a29aSArnaud Ebalard g762: g762@3e { 762344a29aSArnaud Ebalard compatible = "gmt,g762"; 772344a29aSArnaud Ebalard reg = <0x3e>; 782344a29aSArnaud Ebalard clocks = <&g762_clk>; /* input clock */ 792344a29aSArnaud Ebalard fan_gear_mode = <0>; 802344a29aSArnaud Ebalard fan_startv = <1>; 812344a29aSArnaud Ebalard pwm_polarity = <0>; 822344a29aSArnaud Ebalard }; 832344a29aSArnaud Ebalard }; 842344a29aSArnaud Ebalard }; 852344a29aSArnaud Ebalard }; 862344a29aSArnaud Ebalard 872344a29aSArnaud Ebalard clocks { 88b8f18162SArnaud Ebalard g762_clk: g762-oscillator { 892344a29aSArnaud Ebalard compatible = "fixed-clock"; 902344a29aSArnaud Ebalard #clock-cells = <0>; 912344a29aSArnaud Ebalard clock-frequency = <8192>; 922344a29aSArnaud Ebalard }; 932344a29aSArnaud Ebalard }; 942344a29aSArnaud Ebalard 95b8f18162SArnaud Ebalard gpio-leds { 962344a29aSArnaud Ebalard compatible = "gpio-leds"; 972344a29aSArnaud Ebalard pinctrl-0 = <&power_led_pin 982344a29aSArnaud Ebalard &sata1_led_pin 992344a29aSArnaud Ebalard &sata2_led_pin 1002344a29aSArnaud Ebalard &backup_led_pin>; 1012344a29aSArnaud Ebalard pinctrl-names = "default"; 1022344a29aSArnaud Ebalard 103b8f18162SArnaud Ebalard blue-power-led { 1042344a29aSArnaud Ebalard label = "rn102:blue:pwr"; 105b8f18162SArnaud Ebalard gpios = <&gpio1 25 GPIO_ACTIVE_LOW>; 106dcdf14c7SJason Cooper default-state = "keep"; 1072344a29aSArnaud Ebalard }; 1082344a29aSArnaud Ebalard 1093622daf8SArnaud Ebalard blue-sata1-led { 1103622daf8SArnaud Ebalard label = "rn102:blue:sata1"; 111b8f18162SArnaud Ebalard gpios = <&gpio0 15 GPIO_ACTIVE_LOW>; 1122344a29aSArnaud Ebalard default-state = "on"; 1132344a29aSArnaud Ebalard }; 1142344a29aSArnaud Ebalard 1153622daf8SArnaud Ebalard blue-sata2-led { 1163622daf8SArnaud Ebalard label = "rn102:blue:sata2"; 117b8f18162SArnaud Ebalard gpios = <&gpio0 14 GPIO_ACTIVE_LOW>; 1182344a29aSArnaud Ebalard default-state = "on"; 1192344a29aSArnaud Ebalard }; 1202344a29aSArnaud Ebalard 1213622daf8SArnaud Ebalard blue-backup-led { 1223622daf8SArnaud Ebalard label = "rn102:blue:backup"; 123b8f18162SArnaud Ebalard gpios = <&gpio1 24 GPIO_ACTIVE_LOW>; 1242344a29aSArnaud Ebalard default-state = "on"; 1252344a29aSArnaud Ebalard }; 1262344a29aSArnaud Ebalard }; 1272344a29aSArnaud Ebalard 128b8f18162SArnaud Ebalard gpio-keys { 1292344a29aSArnaud Ebalard compatible = "gpio-keys"; 130b8f18162SArnaud Ebalard pinctrl-0 = <&power_button_pin 131b8f18162SArnaud Ebalard &reset_button_pin 132b8f18162SArnaud Ebalard &backup_button_pin>; 133b8f18162SArnaud Ebalard pinctrl-names = "default"; 1342344a29aSArnaud Ebalard 135b8f18162SArnaud Ebalard power-button { 1362344a29aSArnaud Ebalard label = "Power Button"; 137b8f18162SArnaud Ebalard linux,code = <KEY_POWER>; 138b8f18162SArnaud Ebalard gpios = <&gpio1 30 GPIO_ACTIVE_HIGH>; 1392344a29aSArnaud Ebalard }; 1402344a29aSArnaud Ebalard 141b8f18162SArnaud Ebalard reset-button { 1422344a29aSArnaud Ebalard label = "Reset Button"; 143b8f18162SArnaud Ebalard linux,code = <KEY_RESTART>; 144b8f18162SArnaud Ebalard gpios = <&gpio0 6 GPIO_ACTIVE_LOW>; 1452344a29aSArnaud Ebalard }; 1462344a29aSArnaud Ebalard 147b8f18162SArnaud Ebalard backup-button { 1482344a29aSArnaud Ebalard label = "Backup Button"; 149b8f18162SArnaud Ebalard linux,code = <KEY_COPY>; 150b8f18162SArnaud Ebalard gpios = <&gpio1 26 GPIO_ACTIVE_LOW>; 1512344a29aSArnaud Ebalard }; 1522344a29aSArnaud Ebalard }; 1532344a29aSArnaud Ebalard 154b8f18162SArnaud Ebalard gpio-poweroff { 1552832cf25SArnaud Ebalard compatible = "gpio-poweroff"; 1562832cf25SArnaud Ebalard pinctrl-0 = <&poweroff>; 1572832cf25SArnaud Ebalard pinctrl-names = "default"; 158b8f18162SArnaud Ebalard gpios = <&gpio0 8 GPIO_ACTIVE_LOW>; 1592832cf25SArnaud Ebalard }; 1602344a29aSArnaud Ebalard}; 1614904a82aSArnaud Ebalard 1628d977093SGregory CLEMENT&pciec { 1638d977093SGregory CLEMENT status = "okay"; 1648d977093SGregory CLEMENT 1658d977093SGregory CLEMENT /* Connected to Marvell 88SE9170 SATA controller */ 1668d977093SGregory CLEMENT pcie@1,0 { 1678d977093SGregory CLEMENT /* Port 0, Lane 0 */ 1688d977093SGregory CLEMENT status = "okay"; 1698d977093SGregory CLEMENT }; 1708d977093SGregory CLEMENT 1718d977093SGregory CLEMENT /* Connected to FL1009 USB 3.0 controller */ 1728d977093SGregory CLEMENT pcie@2,0 { 1738d977093SGregory CLEMENT /* Port 1, Lane 0 */ 1748d977093SGregory CLEMENT status = "okay"; 1758d977093SGregory CLEMENT }; 1768d977093SGregory CLEMENT}; 1778d977093SGregory CLEMENT 1781fc21295SGregory CLEMENT&mdio { 1791fc21295SGregory CLEMENT pinctrl-0 = <&mdio_pins>; 1801fc21295SGregory CLEMENT pinctrl-names = "default"; 1811fc21295SGregory CLEMENT phy0: ethernet-phy@0 { /* Marvell 88E1318 */ 1821fc21295SGregory CLEMENT reg = <0>; 1831fc21295SGregory CLEMENT }; 1841fc21295SGregory CLEMENT}; 1851fc21295SGregory CLEMENT 1864904a82aSArnaud Ebalard&pinctrl { 1874904a82aSArnaud Ebalard power_led_pin: power-led-pin { 1884904a82aSArnaud Ebalard marvell,pins = "mpp57"; 1894904a82aSArnaud Ebalard marvell,function = "gpio"; 1904904a82aSArnaud Ebalard }; 1914904a82aSArnaud Ebalard 1924904a82aSArnaud Ebalard sata1_led_pin: sata1-led-pin { 1934904a82aSArnaud Ebalard marvell,pins = "mpp15"; 1944904a82aSArnaud Ebalard marvell,function = "gpio"; 1954904a82aSArnaud Ebalard }; 1964904a82aSArnaud Ebalard 1974904a82aSArnaud Ebalard sata2_led_pin: sata2-led-pin { 1984904a82aSArnaud Ebalard marvell,pins = "mpp14"; 1994904a82aSArnaud Ebalard marvell,function = "gpio"; 2004904a82aSArnaud Ebalard }; 2014904a82aSArnaud Ebalard 2024904a82aSArnaud Ebalard backup_led_pin: backup-led-pin { 2034904a82aSArnaud Ebalard marvell,pins = "mpp56"; 2044904a82aSArnaud Ebalard marvell,function = "gpio"; 2054904a82aSArnaud Ebalard }; 2064904a82aSArnaud Ebalard 2074904a82aSArnaud Ebalard backup_button_pin: backup-button-pin { 2084904a82aSArnaud Ebalard marvell,pins = "mpp58"; 2094904a82aSArnaud Ebalard marvell,function = "gpio"; 2104904a82aSArnaud Ebalard }; 2114904a82aSArnaud Ebalard 2124904a82aSArnaud Ebalard power_button_pin: power-button-pin { 2134904a82aSArnaud Ebalard marvell,pins = "mpp62"; 2144904a82aSArnaud Ebalard marvell,function = "gpio"; 2154904a82aSArnaud Ebalard }; 2164904a82aSArnaud Ebalard 2174904a82aSArnaud Ebalard reset_button_pin: reset-button-pin { 2184904a82aSArnaud Ebalard marvell,pins = "mpp6"; 2194904a82aSArnaud Ebalard marvell,function = "gpio"; 2204904a82aSArnaud Ebalard }; 2214904a82aSArnaud Ebalard 2224904a82aSArnaud Ebalard poweroff: poweroff { 2234904a82aSArnaud Ebalard marvell,pins = "mpp8"; 2244904a82aSArnaud Ebalard marvell,function = "gpio"; 2254904a82aSArnaud Ebalard }; 2264904a82aSArnaud Ebalard}; 227*3b799199SMiquel Raynal 228*3b799199SMiquel Raynal&nand_controller { 229*3b799199SMiquel Raynal status = "okay"; 230*3b799199SMiquel Raynal 231*3b799199SMiquel Raynal nand@0 { 232*3b799199SMiquel Raynal reg = <0>; 233*3b799199SMiquel Raynal label = "pxa3xx_nand-0"; 234*3b799199SMiquel Raynal nand-rb = <0>; 235*3b799199SMiquel Raynal marvell,nand-keep-config; 236*3b799199SMiquel Raynal nand-on-flash-bbt; 237*3b799199SMiquel Raynal 238*3b799199SMiquel Raynal /* Use Hardware BCH ECC */ 239*3b799199SMiquel Raynal nand-ecc-strength = <4>; 240*3b799199SMiquel Raynal nand-ecc-step-size = <512>; 241*3b799199SMiquel Raynal 242*3b799199SMiquel Raynal partitions { 243*3b799199SMiquel Raynal compatible = "fixed-partitions"; 244*3b799199SMiquel Raynal #address-cells = <1>; 245*3b799199SMiquel Raynal #size-cells = <1>; 246*3b799199SMiquel Raynal 247*3b799199SMiquel Raynal partition@0 { 248*3b799199SMiquel Raynal label = "u-boot"; 249*3b799199SMiquel Raynal reg = <0x0000000 0x180000>; /* 1.5MB */ 250*3b799199SMiquel Raynal read-only; 251*3b799199SMiquel Raynal }; 252*3b799199SMiquel Raynal 253*3b799199SMiquel Raynal partition@180000 { 254*3b799199SMiquel Raynal label = "u-boot-env"; 255*3b799199SMiquel Raynal reg = <0x180000 0x20000>; /* 128KB */ 256*3b799199SMiquel Raynal read-only; 257*3b799199SMiquel Raynal }; 258*3b799199SMiquel Raynal 259*3b799199SMiquel Raynal partition@200000 { 260*3b799199SMiquel Raynal label = "uImage"; 261*3b799199SMiquel Raynal reg = <0x0200000 0x600000>; /* 6MB */ 262*3b799199SMiquel Raynal }; 263*3b799199SMiquel Raynal 264*3b799199SMiquel Raynal partition@800000 { 265*3b799199SMiquel Raynal label = "minirootfs"; 266*3b799199SMiquel Raynal reg = <0x0800000 0x400000>; /* 4MB */ 267*3b799199SMiquel Raynal }; 268*3b799199SMiquel Raynal 269*3b799199SMiquel Raynal /* Last MB is for the BBT, i.e. not writable */ 270*3b799199SMiquel Raynal partition@c00000 { 271*3b799199SMiquel Raynal label = "ubifs"; 272*3b799199SMiquel Raynal reg = <0x0c00000 0x7400000>; /* 116MB */ 273*3b799199SMiquel Raynal }; 274*3b799199SMiquel Raynal }; 275*3b799199SMiquel Raynal }; 276*3b799199SMiquel Raynal}; 277