-
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: kirkwood: Add support for NETGEAR ReadyNAS Duo v2 using DT
Add support for NETGEAR ReadyNAS Duo v2 (Hardware specs available here: http://natisbad.org/NAS/). Almost everything is supported via provided .dts. A board-readynas.c file is nonetheless required for device not only converted to DT (Gbit controller). Signed-off-by: Arnaud Ebalard <arno@natisbad.org> Tested-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
Mar 28, 2013
1 parent
8bb9660
commit f236f5a
Showing
8 changed files
with
230 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,180 @@ | ||
/dts-v1/; | ||
|
||
/include/ "kirkwood.dtsi" | ||
/include/ "kirkwood-6282.dtsi" | ||
|
||
/ { | ||
model = "NETGEAR ReadyNAS Duo v2"; | ||
compatible = "netgear,readynas-duo-v2", "netgear,readynas", "marvell,kirkwood-88f6282", "marvell,kirkwood"; | ||
|
||
memory { /* 256 MB */ | ||
device_type = "memory"; | ||
reg = <0x00000000 0x10000000>; | ||
}; | ||
|
||
chosen { | ||
bootargs = "console=ttyS0,115200n8 earlyprintk"; | ||
}; | ||
|
||
ocp@f1000000 { | ||
pinctrl: pinctrl@10000 { | ||
|
||
pinctrl-0 = < &pmx_uart0 | ||
&pmx_button_power | ||
&pmx_button_backup | ||
&pmx_button_reset | ||
&pmx_led_blue_power | ||
&pmx_led_blue_activity | ||
&pmx_led_blue_disk1 | ||
&pmx_led_blue_disk2 | ||
&pmx_led_blue_backup >; | ||
pinctrl-names = "default"; | ||
|
||
pmx_button_power: pmx-button-power { | ||
marvell,pins = "mpp47"; | ||
marvell,function = "gpio"; | ||
}; | ||
pmx_button_backup: pmx-button-backup { | ||
marvell,pins = "mpp45"; | ||
marvell,function = "gpio"; | ||
}; | ||
pmx_button_reset: pmx-button-reset { | ||
marvell,pins = "mpp13"; | ||
marvell,function = "gpio"; | ||
}; | ||
pmx_led_blue_power: pmx-led-blue-power { | ||
marvell,pins = "mpp31"; | ||
marvell,function = "gpio"; | ||
}; | ||
pmx_led_blue_activity: pmx-led-blue-activity { | ||
marvell,pins = "mpp38"; | ||
marvell,function = "gpio"; | ||
}; | ||
pmx_led_blue_disk1: pmx-led-blue-disk1 { | ||
marvell,pins = "mpp23"; | ||
marvell,function = "gpio"; | ||
}; | ||
pmx_led_blue_disk2: pmx-led-blue-disk2 { | ||
marvell,pins = "mpp22"; | ||
marvell,function = "gpio"; | ||
}; | ||
pmx_led_blue_backup: pmx-led-blue-backup { | ||
marvell,pins = "mpp29"; | ||
marvell,function = "gpio"; | ||
}; | ||
}; | ||
|
||
i2c@11000 { | ||
status = "okay"; | ||
|
||
rs5c372a: rs5c372a@32 { | ||
compatible = "ricoh,rs5c372a"; | ||
reg = <0x32>; | ||
}; | ||
}; | ||
|
||
serial@12000 { | ||
status = "okay"; | ||
}; | ||
|
||
nand@3000000 { | ||
status = "okay"; | ||
|
||
partition@0 { | ||
label = "u-boot"; | ||
reg = <0x0000000 0x180000>; | ||
read-only; | ||
}; | ||
|
||
partition@180000 { | ||
label = "u-boot-env"; | ||
reg = <0x180000 0x20000>; | ||
}; | ||
|
||
partition@200000 { | ||
label = "uImage"; | ||
reg = <0x0200000 0x600000>; | ||
}; | ||
|
||
partition@800000 { | ||
label = "minirootfs"; | ||
reg = <0x0800000 0x1000000>; | ||
}; | ||
|
||
partition@1800000 { | ||
label = "jffs2"; | ||
reg = <0x1800000 0x6800000>; | ||
}; | ||
}; | ||
|
||
sata@80000 { | ||
status = "okay"; | ||
nr-ports = <2>; | ||
}; | ||
}; | ||
|
||
gpio-leds { | ||
compatible = "gpio-leds"; | ||
|
||
power_led { | ||
label = "status:blue:power_led"; | ||
gpios = <&gpio0 31 1>; /* GPIO 31 Active Low */ | ||
linux,default-trigger = "default-on"; | ||
}; | ||
activity_led { | ||
label = "status:blue:activity_led"; | ||
gpios = <&gpio1 6 1>; /* GPIO 38 Active Low */ | ||
}; | ||
disk1_led { | ||
label = "status:blue:disk1_led"; | ||
gpios = <&gpio0 23 1>; /* GPIO 23 Active Low */ | ||
}; | ||
disk2_led { | ||
label = "status:blue:disk2_led"; | ||
gpios = <&gpio0 22 1>; /* GPIO 22 Active Low */ | ||
}; | ||
backup_led { | ||
label = "status:blue:backup_led"; | ||
gpios = <&gpio0 29 1>; /* GPIO 29 Active Low*/ | ||
}; | ||
}; | ||
|
||
gpio_keys { | ||
compatible = "gpio-keys"; | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
button@1 { | ||
label = "Power Button"; | ||
linux,code = <116>; /* KEY_POWER */ | ||
gpios = <&gpio1 15 1>; | ||
}; | ||
button@2 { | ||
label = "Reset Button"; | ||
linux,code = <0x198>; /* KEY_RESTART */ | ||
gpios = <&gpio0 13 1>; | ||
}; | ||
button@3 { | ||
label = "Backup Button"; | ||
linux,code = <133>; /* KEY_COPY */ | ||
gpios = <&gpio1 13 1>; | ||
}; | ||
}; | ||
|
||
regulators { | ||
compatible = "simple-bus"; | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
|
||
usb_power: regulator@1 { | ||
compatible = "regulator-fixed"; | ||
reg = <1>; | ||
regulator-name = "USB 3.0 Power"; | ||
regulator-min-microvolt = <5000000>; | ||
regulator-max-microvolt = <5000000>; | ||
enable-active-high; | ||
regulator-always-on; | ||
regulator-boot-on; | ||
gpio = <&gpio1 14 0>; | ||
}; | ||
}; | ||
}; |
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
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
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,28 @@ | ||
/* | ||
* NETGEAR ReadyNAS Duo v2 Board setup for drivers not already | ||
* converted to DT. | ||
* | ||
* 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. | ||
*/ | ||
|
||
#include <linux/kernel.h> | ||
#include <linux/init.h> | ||
#include <linux/platform_device.h> | ||
#include <linux/mv643xx_eth.h> | ||
#include <mach/kirkwood.h> | ||
#include "common.h" | ||
|
||
static struct mv643xx_eth_platform_data netgear_readynas_ge00_data = { | ||
.phy_addr = MV643XX_ETH_PHY_ADDR(0), | ||
}; | ||
|
||
void __init netgear_readynas_init(void) | ||
{ | ||
kirkwood_ge00_init(&netgear_readynas_ge00_data); | ||
kirkwood_pcie_init(KW_PCIE0); | ||
} |
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