blob: a5b51e29f63ee0ffbef67f2c7fd64bd2bfd27548 [file] [log] [blame]
Greg Kroah-Hartmanb2441312017-11-01 15:07:57 +01001// SPDX-License-Identifier: GPL-2.0
Jason Cooper767fc1e2012-10-22 02:15:35 +00002/dts-v1/;
3
Ezequiel Garcia0ab61292013-07-26 10:18:02 -03004#include "kirkwood.dtsi"
5#include "kirkwood-6282.dtsi"
Jason Cooper767fc1e2012-10-22 02:15:35 +00006
7/ {
Paul Wassi95430412016-11-17 21:29:47 +01008 model = "Universal Scientific Industrial Co. Topkick-1281P2";
Jason Cooper767fc1e2012-10-22 02:15:35 +00009 compatible = "usi,topkick-1281P2", "usi,topkick", "marvell,kirkwood-88f6282", "marvell,kirkwood";
10
11 memory {
12 device_type = "memory";
13 reg = <0x00000000 0x10000000>;
14 };
15
16 chosen {
17 bootargs = "console=ttyS0,115200n8 earlyprintk";
Sebastian Hesselbarthab833612014-04-30 14:56:30 +020018 stdout-path = &uart0;
Jason Cooper767fc1e2012-10-22 02:15:35 +000019 };
20
21 ocp@f1000000 {
Sebastian Hesselbartha94839692014-04-30 14:56:32 +020022 pinctrl: pin-controller@10000 {
Jason Cooper15989542013-01-26 20:50:11 +000023 /*
Jason Cooper15989542013-01-26 20:50:11 +000024 * Switch positions
25 *
26 * /-SW_LEFT(2)
27 * |
28 * | /-SW_IDLE
29 * | |
30 * | | /-SW_RIGHT
31 * | | |
32 * PS [L] [I] [R] LEDS
33 */
Thomas Petazzonifaf76122013-05-24 11:44:55 +020034 pinctrl-0 = <&pmx_sw_left &pmx_sw_right
35 &pmx_sw_idle &pmx_sw_left2>;
Jason Cooper15989542013-01-26 20:50:11 +000036 pinctrl-names = "default";
37
38 pmx_led_disk_yellow: pmx-led-disk-yellow {
39 marvell,pins = "mpp21";
40 marvell,function = "gpio";
41 };
42
43 pmx_sata0_pwr_enable: pmx-sata0-pwr-enable {
44 marvell,pins = "mpp36";
45 marvell,function = "gpio";
46 };
47
48 pmx_led_sys_red: pmx-led-sys-red {
49 marvell,pins = "mpp37";
50 marvell,function = "gpio";
51 };
52
53 pmx_led_sys_blue: pmx-led-sys-blue {
54 marvell,pins = "mpp38";
55 marvell,function = "gpio";
56 };
57
58 pmx_led_wifi_green: pmx-led-wifi-green {
59 marvell,pins = "mpp39";
60 marvell,function = "gpio";
61 };
62
63 pmx_sw_left: pmx-sw-left {
64 marvell,pins = "mpp43";
65 marvell,function = "gpio";
66 };
67
68 pmx_sw_right: pmx-sw-right {
69 marvell,pins = "mpp44";
70 marvell,function = "gpio";
71 };
72
73 pmx_sw_idle: pmx-sw-idle {
74 marvell,pins = "mpp45";
75 marvell,function = "gpio";
76 };
77
78 pmx_sw_left2: pmx-sw-left2 {
79 marvell,pins = "mpp46";
80 marvell,function = "gpio";
81 };
82
83 pmx_led_wifi_yellow: pmx-led-wifi-yellow {
84 marvell,pins = "mpp48";
85 marvell,function = "gpio";
86 };
87 };
88
Jason Cooper767fc1e2012-10-22 02:15:35 +000089 serial@12000 {
Sebastian Hesselbarth9f2339a2014-04-30 14:56:36 +020090 status = "okay";
Jason Cooper767fc1e2012-10-22 02:15:35 +000091 };
92
Jason Cooper767fc1e2012-10-22 02:15:35 +000093 sata@80000 {
94 status = "okay";
95 nr-ports = <1>;
96 };
Andrew Lunn44d032e2013-01-26 20:50:12 +000097
98 i2c@11000 {
Sebastian Hesselbarthce55b1f2014-04-30 14:56:39 +020099 status = "okay";
Andrew Lunn44d032e2013-01-26 20:50:12 +0000100 };
Jason Cooper0dbe6ce2013-01-26 20:50:10 +0000101
102 mvsdio@90000 {
103 pinctrl-0 = <&pmx_sdio>;
104 pinctrl-names = "default";
105 status = "okay";
106 /* No CD or WP GPIOs */
Simon Baatzd87b5fb2013-05-13 23:18:58 +0200107 broken-cd;
Jason Cooper0dbe6ce2013-01-26 20:50:10 +0000108 };
Jason Cooper767fc1e2012-10-22 02:15:35 +0000109 };
110
111 gpio-leds {
Thomas Petazzonifaf76122013-05-24 11:44:55 +0200112 /*
113 * GPIO LED layout
114 *
115 * /-SYS_LED(2)
116 * |
117 * | /-DISK_LED
118 * | |
119 * | | /-WLAN_LED(2)
120 * | | |
121 * [SW] [*] [*] [*]
122 */
123
Jason Cooper767fc1e2012-10-22 02:15:35 +0000124 compatible = "gpio-leds";
Thomas Petazzonifaf76122013-05-24 11:44:55 +0200125 pinctrl-0 = <&pmx_led_disk_yellow &pmx_led_sys_red
126 &pmx_led_sys_blue &pmx_led_wifi_green
127 &pmx_led_wifi_yellow>;
128 pinctrl-names = "default";
Jason Cooper767fc1e2012-10-22 02:15:35 +0000129
130 disk {
131 label = "topkick:yellow:disk";
Andrew Lunn3a31f2d72013-12-04 16:51:39 +0100132 gpios = <&gpio0 21 GPIO_ACTIVE_LOW>;
Stephan Linze5808222016-06-10 07:59:59 +0200133 linux,default-trigger = "disk-activity";
Jason Cooper767fc1e2012-10-22 02:15:35 +0000134 };
135 system2 {
136 label = "topkick:red:system";
Andrew Lunn3a31f2d72013-12-04 16:51:39 +0100137 gpios = <&gpio1 5 GPIO_ACTIVE_LOW>;
Jason Cooper767fc1e2012-10-22 02:15:35 +0000138 };
139 system {
140 label = "topkick:blue:system";
Andrew Lunn3a31f2d72013-12-04 16:51:39 +0100141 gpios = <&gpio1 6 GPIO_ACTIVE_LOW>;
Jason Cooper767fc1e2012-10-22 02:15:35 +0000142 default-state = "on";
143 };
144 wifi {
145 label = "topkick:green:wifi";
Andrew Lunn3a31f2d72013-12-04 16:51:39 +0100146 gpios = <&gpio1 7 GPIO_ACTIVE_LOW>;
Jason Cooper767fc1e2012-10-22 02:15:35 +0000147 };
148 wifi2 {
149 label = "topkick:yellow:wifi";
Andrew Lunn3a31f2d72013-12-04 16:51:39 +0100150 gpios = <&gpio1 16 GPIO_ACTIVE_LOW>;
Jason Cooper767fc1e2012-10-22 02:15:35 +0000151 };
152 };
Andrew Lunn8758c882013-01-06 11:10:38 +0100153 regulators {
154 compatible = "simple-bus";
155 #address-cells = <1>;
156 #size-cells = <0>;
Thomas Petazzonifaf76122013-05-24 11:44:55 +0200157 pinctrl-0 = <&pmx_sata0_pwr_enable>;
158 pinctrl-names = "default";
Andrew Lunn8758c882013-01-06 11:10:38 +0100159
160 sata0_power: regulator@1 {
161 compatible = "regulator-fixed";
162 reg = <1>;
163 regulator-name = "SATA0 Power";
164 regulator-min-microvolt = <5000000>;
165 regulator-max-microvolt = <5000000>;
166 enable-active-high;
167 regulator-always-on;
168 regulator-boot-on;
169 gpio = <&gpio1 4 0>;
170 };
171 };
Jason Cooper767fc1e2012-10-22 02:15:35 +0000172};
Sebastian Hesselbarth876e2332013-07-07 22:34:56 +0200173
Jason Gunthorpe7045ff52013-09-17 12:44:33 -0600174&nand {
175 status = "okay";
Jason Gunthorpe7045ff52013-09-17 12:44:33 -0600176
177 partition@0 {
178 label = "u-boot";
179 reg = <0x0000000 0x180000>;
180 };
181
182 partition@180000 {
183 label = "u-boot env";
184 reg = <0x0180000 0x20000>;
185 };
186
187 partition@200000 {
188 label = "uImage";
189 reg = <0x0200000 0x600000>;
190 };
191
192 partition@800000 {
193 label = "uInitrd";
194 reg = <0x0800000 0x1000000>;
195 };
196
197 partition@1800000 {
198 label = "rootfs";
199 reg = <0x1800000 0xe800000>;
200 };
201};
202
Sebastian Hesselbarth876e2332013-07-07 22:34:56 +0200203&mdio {
204 status = "okay";
205
206 ethphy0: ethernet-phy@0 {
Sebastian Hesselbarth876e2332013-07-07 22:34:56 +0200207 reg = <0>;
208 };
209};
210
211&eth0 {
212 status = "okay";
213 ethernet0-port@0 {
214 phy-handle = <&ethphy0>;
215 };
216};