aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/boot/dts/orion5x-lacie-ethernet-disk-mini-v2.dts
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/boot/dts/orion5x-lacie-ethernet-disk-mini-v2.dts')
-rw-r--r--arch/arm/boot/dts/orion5x-lacie-ethernet-disk-mini-v2.dts141
1 files changed, 122 insertions, 19 deletions
diff --git a/arch/arm/boot/dts/orion5x-lacie-ethernet-disk-mini-v2.dts b/arch/arm/boot/dts/orion5x-lacie-ethernet-disk-mini-v2.dts
index 5ed6c1376901..89ff404a528c 100644
--- a/arch/arm/boot/dts/orion5x-lacie-ethernet-disk-mini-v2.dts
+++ b/arch/arm/boot/dts/orion5x-lacie-ethernet-disk-mini-v2.dts
@@ -6,8 +6,19 @@
6 * warranty of any kind, whether express or implied. 6 * warranty of any kind, whether express or implied.
7 */ 7 */
8 8
9/*
10 * TODO: add Orion USB device port init when kernel.org support is added.
11 * TODO: add flash write support: see below.
12 * TODO: add power-off support.
13 * TODO: add I2C EEPROM support.
14 */
15
9/dts-v1/; 16/dts-v1/;
10/include/ "orion5x.dtsi" 17
18#include <dt-bindings/gpio/gpio.h>
19#include <dt-bindings/input/input.h>
20#include <dt-bindings/interrupt-controller/irq.h>
21#include "orion5x-mv88f5182.dtsi"
11 22
12/ { 23/ {
13 model = "LaCie Ethernet Disk mini V2"; 24 model = "LaCie Ethernet Disk mini V2";
@@ -19,49 +30,84 @@
19 30
20 chosen { 31 chosen {
21 bootargs = "console=ttyS0,115200n8 earlyprintk"; 32 bootargs = "console=ttyS0,115200n8 earlyprintk";
33 linux,stdout-path = &uart0;
22 }; 34 };
23 35
24 ocp@f1000000 { 36 soc {
25 serial@12000 { 37 ranges = <MBUS_ID(0xf0, 0x01) 0 0xf1000000 0x100000>,
26 clock-frequency = <166666667>; 38 <MBUS_ID(0x09, 0x00) 0 0xf2200000 0x800>,
27 status = "okay"; 39 <MBUS_ID(0x01, 0x0f) 0 0xfff80000 0x80000>;
28 };
29
30 sata@80000 {
31 status = "okay";
32 nr-ports = <2>;
33 };
34 }; 40 };
35 41
36 gpio_keys { 42 gpio-keys {
37 compatible = "gpio-keys"; 43 compatible = "gpio-keys";
44 pinctrl-0 = <&pmx_power_button>;
45 pinctrl-names = "default";
38 #address-cells = <1>; 46 #address-cells = <1>;
39 #size-cells = <0>; 47 #size-cells = <0>;
40 button@1 { 48 button@1 {
41 label = "Power-on Switch"; 49 label = "Power-on Switch";
42 linux,code = <116>; /* KEY_POWER */ 50 linux,code = <KEY_POWER>;
43 gpios = <&gpio0 18 0>; 51 gpios = <&gpio0 18 GPIO_ACTIVE_HIGH>;
44 }; 52 };
45 }; 53 };
46 54
47 gpio_leds { 55 gpio-leds {
48 compatible = "gpio-leds"; 56 compatible = "gpio-leds";
57 pinctrl-0 = <&pmx_power_led>;
58 pinctrl-names = "default";
49 59
50 led@1 { 60 led@1 {
51 label = "power:blue"; 61 label = "power:blue";
52 gpios = <&gpio0 16 1>; 62 gpios = <&gpio0 16 GPIO_ACTIVE_LOW>;
53 }; 63 };
54 }; 64 };
55}; 65};
56 66
57&mdio { 67&devbus_bootcs {
58 status = "okay"; 68 status = "okay";
59 69
60 ethphy: ethernet-phy { 70 /* Read parameters */
61 reg = <8>; 71 devbus,bus-width = <8>;
72 devbus,turn-off-ps = <90000>;
73 devbus,badr-skew-ps = <0>;
74 devbus,acc-first-ps = <186000>;
75 devbus,acc-next-ps = <186000>;
76
77 /* Write parameters */
78 devbus,wr-high-ps = <90000>;
79 devbus,wr-low-ps = <90000>;
80 devbus,ale-wr-ps = <90000>;
81
82 /*
83 * Currently the MTD code does not recognize the MX29LV400CBCT
84 * as a bottom-type device. This could cause risks of
85 * accidentally erasing critical flash sectors. We thus define
86 * a single, write-protected partition covering the whole
87 * flash. TODO: once the flash part TOP/BOTTOM detection
88 * issue is sorted out in the MTD code, break this into at
89 * least three partitions: 'u-boot code', 'u-boot environment'
90 * and 'whatever is left'.
91 */
92 flash@0 {
93 compatible = "cfi-flash";
94 reg = <0 0x80000>;
95 bank-width = <1>;
96 #address-cells = <1>;
97 #size-cells = <1>;
98
99 partition@0 {
100 label = "Full512Kb";
101 reg = <0 0x80000>;
102 read-only;
103 };
62 }; 104 };
63}; 105};
64 106
107&ehci0 {
108 status = "okay";
109};
110
65&eth { 111&eth {
66 status = "okay"; 112 status = "okay";
67 113
@@ -69,3 +115,60 @@
69 phy-handle = <&ethphy>; 115 phy-handle = <&ethphy>;
70 }; 116 };
71}; 117};
118
119&i2c {
120 status = "okay";
121 clock-frequency = <100000>;
122 #address-cells = <1>;
123
124 rtc@32 {
125 compatible = "ricoh,rs5c372a";
126 reg = <0x32>;
127 interrupt-parent = <&gpio0>;
128 interrupts = <3 IRQ_TYPE_LEVEL_LOW>;
129 };
130};
131
132&mdio {
133 status = "okay";
134
135 ethphy: ethernet-phy {
136 reg = <8>;
137 };
138};
139
140&pinctrl {
141 pinctrl-0 = <&pmx_rtc &pmx_power_led_ctrl>;
142 pinctrl-names = "default";
143
144 pmx_power_button: pmx-power-button {
145 marvell,pins = "mpp18";
146 marvell,function = "gpio";
147 };
148
149 pmx_power_led: pmx-power-led {
150 marvell,pins = "mpp16";
151 marvell,function = "gpio";
152 };
153
154 pmx_power_led_ctrl: pmx-power-led-ctrl {
155 marvell,pins = "mpp17";
156 marvell,function = "gpio";
157 };
158
159 pmx_rtc: pmx-rtc {
160 marvell,pins = "mpp3";
161 marvell,function = "gpio";
162 };
163};
164
165&sata {
166 pinctrl-0 = <&pmx_sata0 &pmx_sata1>;
167 pinctrl-names = "default";
168 status = "okay";
169 nr-ports = <2>;
170};
171
172&uart0 {
173 status = "okay";
174};