aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/arm/boot/dts/Makefile1
-rw-r--r--arch/arm/boot/dts/kirkwood-ns2lite.dts30
-rw-r--r--arch/arm/mach-kirkwood/Kconfig7
-rw-r--r--arch/arm/mach-kirkwood/Makefile1
-rw-r--r--arch/arm/mach-kirkwood/board-dt.c4
-rw-r--r--arch/arm/mach-kirkwood/board-ns2.c3
-rw-r--r--arch/arm/mach-kirkwood/common.h3
7 files changed, 47 insertions, 2 deletions
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
index e566943cc5d8..74fca59370c3 100644
--- a/arch/arm/boot/dts/Makefile
+++ b/arch/arm/boot/dts/Makefile
@@ -41,6 +41,7 @@ dtb-$(CONFIG_ARCH_KIRKWOOD) += kirkwood-dns320.dtb \
41 kirkwood-lschlv2.dtb \ 41 kirkwood-lschlv2.dtb \
42 kirkwood-lsxhl.dtb \ 42 kirkwood-lsxhl.dtb \
43 kirkwood-ns2.dtb \ 43 kirkwood-ns2.dtb \
44 kirkwood-ns2lite.dtb \
44 kirkwood-ns2max.dtb \ 45 kirkwood-ns2max.dtb \
45 kirkwood-ts219-6281.dtb \ 46 kirkwood-ts219-6281.dtb \
46 kirkwood-ts219-6282.dtb 47 kirkwood-ts219-6282.dtb
diff --git a/arch/arm/boot/dts/kirkwood-ns2lite.dts b/arch/arm/boot/dts/kirkwood-ns2lite.dts
new file mode 100644
index 000000000000..b02eb4ea1bb4
--- /dev/null
+++ b/arch/arm/boot/dts/kirkwood-ns2lite.dts
@@ -0,0 +1,30 @@
1/dts-v1/;
2
3/include/ "kirkwood-ns2-common.dtsi"
4
5/ {
6 model = "LaCie Network Space Lite v2";
7 compatible = "lacie,netspace_lite_v2", "marvell,kirkwood-88f6192", "marvell,kirkwood";
8
9 memory {
10 device_type = "memory";
11 reg = <0x00000000 0x8000000>;
12 };
13
14 ocp@f1000000 {
15 sata@80000 {
16 status = "okay";
17 nr-ports = <1>;
18 };
19 };
20
21 gpio-leds {
22 compatible = "gpio-leds";
23
24 blue-sata {
25 label = "ns2:blue:sata";
26 gpios = <&gpio0 30 1>;
27 linux,default-trigger = "default-on";
28 };
29 };
30};
diff --git a/arch/arm/mach-kirkwood/Kconfig b/arch/arm/mach-kirkwood/Kconfig
index 847e0c2bf672..83df331fce28 100644
--- a/arch/arm/mach-kirkwood/Kconfig
+++ b/arch/arm/mach-kirkwood/Kconfig
@@ -151,6 +151,13 @@ config MACH_NETSPACE_MAX_V2_DT
151 Say 'Y' here if you want your kernel to support the LaCie 151 Say 'Y' here if you want your kernel to support the LaCie
152 Network Space Max v2 NAS, using Flattened Device Tree. 152 Network Space Max v2 NAS, using Flattened Device Tree.
153 153
154config MACH_NETSPACE_LITE_V2_DT
155 bool "LaCie Network Space Lite v2 NAS (Flattened Device Tree)"
156 select ARCH_KIRKWOOD_DT
157 help
158 Say 'Y' here if you want your kernel to support the LaCie
159 Network Space Lite v2 NAS, using Flattened Device Tree.
160
154config MACH_TS219 161config MACH_TS219
155 bool "QNAP TS-110, TS-119, TS-119P+, TS-210, TS-219, TS-219P and TS-219P+ Turbo NAS" 162 bool "QNAP TS-110, TS-119, TS-119P+, TS-210, TS-219, TS-219P and TS-219P+ Turbo NAS"
156 help 163 help
diff --git a/arch/arm/mach-kirkwood/Makefile b/arch/arm/mach-kirkwood/Makefile
index 1f63d804b494..4d4b7d4fbcf5 100644
--- a/arch/arm/mach-kirkwood/Makefile
+++ b/arch/arm/mach-kirkwood/Makefile
@@ -34,3 +34,4 @@ obj-$(CONFIG_MACH_KM_KIRKWOOD_DT) += board-km_kirkwood.o
34obj-$(CONFIG_MACH_INETSPACE_V2_DT) += board-ns2.o 34obj-$(CONFIG_MACH_INETSPACE_V2_DT) += board-ns2.o
35obj-$(CONFIG_MACH_NETSPACE_V2_DT) += board-ns2.o 35obj-$(CONFIG_MACH_NETSPACE_V2_DT) += board-ns2.o
36obj-$(CONFIG_MACH_NETSPACE_MAX_V2_DT) += board-ns2.o 36obj-$(CONFIG_MACH_NETSPACE_MAX_V2_DT) += board-ns2.o
37obj-$(CONFIG_MACH_NETSPACE_LITE_V2_DT) += board-ns2.o
diff --git a/arch/arm/mach-kirkwood/board-dt.c b/arch/arm/mach-kirkwood/board-dt.c
index 0270a145716f..b76ef75f533f 100644
--- a/arch/arm/mach-kirkwood/board-dt.c
+++ b/arch/arm/mach-kirkwood/board-dt.c
@@ -98,7 +98,8 @@ static void __init kirkwood_dt_init(void)
98 98
99 if (of_machine_is_compatible("lacie,inetspace_v2") || 99 if (of_machine_is_compatible("lacie,inetspace_v2") ||
100 of_machine_is_compatible("lacie,netspace_v2") || 100 of_machine_is_compatible("lacie,netspace_v2") ||
101 of_machine_is_compatible("lacie,netspace_max_v2")) 101 of_machine_is_compatible("lacie,netspace_max_v2") ||
102 of_machine_is_compatible("lacie,netspace_lite_v2"))
102 ns2_init(); 103 ns2_init();
103 104
104 of_platform_populate(NULL, kirkwood_dt_match_table, 105 of_platform_populate(NULL, kirkwood_dt_match_table,
@@ -120,6 +121,7 @@ static const char *kirkwood_dt_board_compat[] = {
120 "lacie,inetspace_v2", 121 "lacie,inetspace_v2",
121 "lacie,netspace_max_v2", 122 "lacie,netspace_max_v2",
122 "lacie,netspace_v2", 123 "lacie,netspace_v2",
124 "lacie,netspace_lite_v2",
123 NULL 125 NULL
124}; 126};
125 127
diff --git a/arch/arm/mach-kirkwood/board-ns2.c b/arch/arm/mach-kirkwood/board-ns2.c
index b36c55cba78b..da8c4c5bf4f6 100644
--- a/arch/arm/mach-kirkwood/board-ns2.c
+++ b/arch/arm/mach-kirkwood/board-ns2.c
@@ -16,6 +16,7 @@
16#include <linux/platform_device.h> 16#include <linux/platform_device.h>
17#include <linux/mv643xx_eth.h> 17#include <linux/mv643xx_eth.h>
18#include <linux/gpio.h> 18#include <linux/gpio.h>
19#include <linux/of.h>
19#include "common.h" 20#include "common.h"
20#include "mpp.h" 21#include "mpp.h"
21 22
@@ -73,6 +74,8 @@ void __init ns2_init(void)
73 kirkwood_mpp_conf(ns2_mpp_config); 74 kirkwood_mpp_conf(ns2_mpp_config);
74 75
75 kirkwood_ehci_init(); 76 kirkwood_ehci_init();
77 if (of_machine_is_compatible("lacie,netspace_lite_v2"))
78 ns2_ge00_data.phy_addr = MV643XX_ETH_PHY_ADDR(0);
76 kirkwood_ge00_init(&ns2_ge00_data); 79 kirkwood_ge00_init(&ns2_ge00_data);
77 80
78 if (gpio_request(NS2_GPIO_POWER_OFF, "power-off") == 0 && 81 if (gpio_request(NS2_GPIO_POWER_OFF, "power-off") == 0 &&
diff --git a/arch/arm/mach-kirkwood/common.h b/arch/arm/mach-kirkwood/common.h
index 2f75f3f7c858..6949d8198de1 100644
--- a/arch/arm/mach-kirkwood/common.h
+++ b/arch/arm/mach-kirkwood/common.h
@@ -114,7 +114,8 @@ static inline void km_kirkwood_init(void) {};
114 114
115#if defined(CONFIG_MACH_INETSPACE_V2_DT) || \ 115#if defined(CONFIG_MACH_INETSPACE_V2_DT) || \
116 defined(CONFIG_MACH_NETSPACE_V2_DT) || \ 116 defined(CONFIG_MACH_NETSPACE_V2_DT) || \
117 defined(CONFIG_MACH_NETSPACE_MAX_V2_DT) 117 defined(CONFIG_MACH_NETSPACE_MAX_V2_DT) || \
118 defined(CONFIG_MACH_NETSPACE_LITE_V2_DT)
118void ns2_init(void); 119void ns2_init(void);
119#else 120#else
120static inline void ns2_init(void) {}; 121static inline void ns2_init(void) {};