-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
ARM: mvebu: Add Netgear ReadyNAS 104 board
Main hardware parts of the (Armada 370 based) NETGEAR ReadyNAS 104 are supported by mainline kernel (USB 3.0 rear ports, USB 2.0 front port, Gigabit controller and PHYs, serial port, LEDs, buttons, SATA ports, G762 fan controller) and referenced in provided .dts file. Some additonal work remains for: - Intersil ISL12057 I2C RTC and Alarm chip: working driver but needs to be splitted for submission of RTC part first; - Front LCD (Winstar 1602G): driver needs to be written - Armada NAND controller (to access onboard 128MB of NAND): support being pushed by @free-electrons people - 4 front SATA LEDs controlled via GPIO brought by NXP PCA9554: driver is available upstream. Not referenced/tested yet. but the device is usable w/o those. Signed-off-by: Arnaud Ebalard <arno@natisbad.org> Acked-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: Jason Cooper <jason@lakedaemon.net>
- Loading branch information
Arnaud Ebalard
authored and
Jason Cooper
committed
Oct 31, 2013
1 parent
f24b56c
commit 45e8815
Showing
2 changed files
with
194 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,193 @@ | ||
/* | ||
* Device Tree file for NETGEAR ReadyNAS 104 | ||
* | ||
* Copyright (C) 2013, Arnaud EBALARD <arno@natisbad.org> | ||
* | ||
* This program is free software; you can redistribute it and/or | ||
* modify it under the terms of the GNU General Public License | ||
* as published by the Free Software Foundation; either version | ||
* 2 of the License, or (at your option) any later version. | ||
*/ | ||
|
||
/dts-v1/; | ||
|
||
#include "armada-370.dtsi" | ||
|
||
/ { | ||
model = "NETGEAR ReadyNAS 104"; | ||
compatible = "netgear,readynas-104", "marvell,armada370", "marvell,armada-370-xp"; | ||
|
||
chosen { | ||
bootargs = "console=ttyS0,115200 earlyprintk"; | ||
}; | ||
|
||
memory { | ||
device_type = "memory"; | ||
reg = <0x00000000 0x20000000>; /* 512 MB */ | ||
}; | ||
|
||
soc { | ||
ranges = <MBUS_ID(0xf0, 0x01) 0 0xd0000000 0x100000 | ||
MBUS_ID(0x01, 0xe0) 0 0xfff00000 0x100000>; | ||
|
||
pcie-controller { | ||
status = "okay"; | ||
|
||
/* Connected to FL1009 USB 3.0 controller */ | ||
pcie@1,0 { | ||
/* Port 0, Lane 0 */ | ||
status = "okay"; | ||
}; | ||
|
||
/* Connected to Marvell 88SE9215 SATA controller */ | ||
pcie@2,0 { | ||
/* Port 1, Lane 0 */ | ||
status = "okay"; | ||
}; | ||
}; | ||
|
||
internal-regs { | ||
serial@12000 { | ||
clock-frequency = <200000000>; | ||
status = "okay"; | ||
}; | ||
|
||
pinctrl { | ||
poweroff: poweroff { | ||
marvell,pins = "mpp60"; | ||
marvell,function = "gpio"; | ||
}; | ||
|
||
backup_key_pin: backup-key-pin { | ||
marvell,pins = "mpp52"; | ||
marvell,function = "gpio"; | ||
}; | ||
|
||
power_key_pin: power-key-pin { | ||
marvell,pins = "mpp62"; | ||
marvell,function = "gpio"; | ||
}; | ||
|
||
backup_led_pin: backup-led-pin { | ||
marvell,pins = "mpp63"; | ||
marvell,function = "gpo"; | ||
}; | ||
|
||
power_led_pin: power-led-pin { | ||
marvell,pins = "mpp64"; | ||
marvell,function = "gpio"; | ||
}; | ||
|
||
reset_key_pin: reset-key-pin { | ||
marvell,pins = "mpp65"; | ||
marvell,function = "gpio"; | ||
}; | ||
}; | ||
|
||
mdio { | ||
phy0: ethernet-phy@0 { | ||
reg = <0>; | ||
}; | ||
|
||
phy1: ethernet-phy@1 { | ||
reg = <1>; | ||
}; | ||
}; | ||
|
||
ethernet@70000 { | ||
status = "okay"; | ||
phy = <&phy0>; | ||
phy-mode = "rgmii-id"; | ||
}; | ||
|
||
ethernet@74000 { | ||
status = "okay"; | ||
phy = <&phy1>; | ||
phy-mode = "rgmii-id"; | ||
}; | ||
|
||
usb@50000 { | ||
status = "okay"; | ||
}; | ||
|
||
i2c@11000 { | ||
compatible = "marvell,mv64xxx-i2c"; | ||
clock-frequency = <100000>; | ||
status = "okay"; | ||
|
||
g762: g762@3e { | ||
compatible = "gmt,g762"; | ||
reg = <0x3e>; | ||
clocks = <&g762_clk>; /* input clock */ | ||
fan_gear_mode = <0>; | ||
fan_startv = <1>; | ||
pwm_polarity = <0>; | ||
}; | ||
}; | ||
}; | ||
}; | ||
|
||
clocks { | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
|
||
g762_clk: fixedclk { | ||
compatible = "fixed-clock"; | ||
#clock-cells = <0>; | ||
clock-frequency = <8192>; | ||
}; | ||
}; | ||
|
||
gpio_leds { | ||
compatible = "gpio-leds"; | ||
pinctrl-0 = <&backup_led_pin &power_led_pin>; | ||
pinctrl-names = "default"; | ||
|
||
blue_backup_led { | ||
label = "rn104:blue:backup"; | ||
gpios = <&gpio1 31 0>; /* GPIO 63 Active High */ | ||
default-state = "off"; | ||
}; | ||
|
||
blue_power_led { | ||
label = "rn104:blue:pwr"; | ||
gpios = <&gpio2 0 1>; /* GPIO 64 Active Low */ | ||
linux,default-trigger = "keep"; | ||
}; | ||
}; | ||
|
||
gpio_keys { | ||
compatible = "gpio-keys"; | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
pinctrl-0 = <&backup_key_pin | ||
&power_key_pin | ||
&reset_key_pin>; | ||
pinctrl-names = "default"; | ||
|
||
button@1 { | ||
label = "Backup Button"; | ||
linux,code = <133>; /* KEY_COPY */ | ||
gpios = <&gpio1 20 1>; | ||
}; | ||
|
||
button@2 { | ||
label = "Power Button"; | ||
linux,code = <116>; /* KEY_POWER */ | ||
gpios = <&gpio1 30 0>; | ||
}; | ||
|
||
button@3 { | ||
label = "Reset Button"; | ||
linux,code = <0x198>; /* KEY_RESTART */ | ||
gpios = <&gpio2 1 1>; | ||
}; | ||
}; | ||
|
||
gpio_poweroff { | ||
compatible = "gpio-poweroff"; | ||
pinctrl-0 = <&poweroff>; | ||
pinctrl-names = "default"; | ||
gpios = <&gpio1 28 1>; | ||
}; | ||
}; |