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