blob: 24e6ae3616f7165fbb12f309f529fb6ddb091825 [file] [log] [blame]
Greg Kroah-Hartmanb2441312017-11-01 15:07:57 +01001// SPDX-License-Identifier: GPL-2.0
Linus Walleijc4fa8b22017-01-21 20:55:46 +01002/*
3 * Device Tree file for Wiliboard WBD-222
4 */
5
6/dts-v1/;
7
8#include "gemini.dtsi"
9#include <dt-bindings/input/input.h>
10
11/ {
12 model = "Wiliboard WBD-222";
13 compatible = "wiliboard,wbd222", "cortina,gemini";
14 #address-cells = <1>;
15 #size-cells = <1>;
16
Linus Walleije7c88152018-05-06 15:39:00 +020017 memory@0 { /* 128 MB */
Linus Walleijc4fa8b22017-01-21 20:55:46 +010018 device_type = "memory";
19 reg = <0x00000000 0x8000000>;
20 };
21
22 chosen {
23 bootargs = "console=ttyS0,115200n8";
24 stdout-path = &uart0;
25 };
26
27 gpio_keys {
28 compatible = "gpio-keys";
Linus Walleijc4fa8b22017-01-21 20:55:46 +010029
Linus Walleije7c88152018-05-06 15:39:00 +020030 button-setup {
Geert Uytterhoevenc0b20ba2018-02-13 15:15:31 +010031 debounce-interval = <50>;
Linus Walleijc4fa8b22017-01-21 20:55:46 +010032 wakeup-source;
33 linux,code = <KEY_SETUP>;
34 label = "reset";
Linus Walleijf328c2e2017-07-05 16:59:33 +020035 /* Conflict with ICE */
Linus Walleijc4fa8b22017-01-21 20:55:46 +010036 gpios = <&gpio0 5 GPIO_ACTIVE_LOW>;
37 };
38 };
39
40 leds {
41 compatible = "gpio-leds";
42
Linus Walleije7c88152018-05-06 15:39:00 +020043 led-red-l3 {
Linus Walleijc4fa8b22017-01-21 20:55:46 +010044 label = "wbd111:red:L3";
Linus Walleijf328c2e2017-07-05 16:59:33 +020045 /* Conflict with TVC and extended parallel flash */
Linus Walleijc4fa8b22017-01-21 20:55:46 +010046 gpios = <&gpio0 1 GPIO_ACTIVE_HIGH>;
47 default-state = "off";
48 };
Linus Walleije7c88152018-05-06 15:39:00 +020049 led-green-l4 {
Linus Walleijc4fa8b22017-01-21 20:55:46 +010050 label = "wbd111:green:L4";
Linus Walleijf328c2e2017-07-05 16:59:33 +020051 /* Conflict with TVC and extended parallel flash */
Linus Walleijc4fa8b22017-01-21 20:55:46 +010052 gpios = <&gpio0 2 GPIO_ACTIVE_HIGH>;
53 default-state = "off";
54 };
Linus Walleije7c88152018-05-06 15:39:00 +020055 led-red-l4 {
Linus Walleijc4fa8b22017-01-21 20:55:46 +010056 label = "wbd111:red:L4";
Linus Walleijf328c2e2017-07-05 16:59:33 +020057 /* Conflict with TVC and extended parallel flash */
Linus Walleijc4fa8b22017-01-21 20:55:46 +010058 gpios = <&gpio0 3 GPIO_ACTIVE_HIGH>;
59 default-state = "off";
60 };
Linus Walleije7c88152018-05-06 15:39:00 +020061 led-green-l3 {
Linus Walleijc4fa8b22017-01-21 20:55:46 +010062 label = "wbd111:green:L3";
Linus Walleijf328c2e2017-07-05 16:59:33 +020063 /* Conflict with TVC and extended parallel flash */
Linus Walleijc4fa8b22017-01-21 20:55:46 +010064 gpios = <&gpio0 5 GPIO_ACTIVE_HIGH>;
65 default-state = "on";
66 linux,default-trigger = "heartbeat";
67 };
68 };
69
Linus Walleij66b22382017-11-19 10:46:16 +010070 mdio0: ethernet-phy {
71 compatible = "virtual,mdio-gpio";
72 gpios = <&gpio0 22 GPIO_ACTIVE_HIGH>, /* MDC */
73 <&gpio0 21 GPIO_ACTIVE_HIGH>; /* MDIO */
74 #address-cells = <1>;
75 #size-cells = <0>;
76
77 phy0: ethernet-phy@1 {
78 reg = <1>;
79 device_type = "ethernet-phy";
80 };
81
82 phy1: ethernet-phy@3 {
83 reg = <3>;
84 device_type = "ethernet-phy";
85 };
86 };
87
Linus Walleijc4fa8b22017-01-21 20:55:46 +010088 soc {
89 flash@30000000 {
90 status = "okay";
91 /* 8MB of flash */
92 reg = <0x30000000 0x00800000>;
93
94 partition@0 {
95 label = "RedBoot";
96 reg = <0x00000000 0x00020000>;
97 read-only;
98 };
99 partition@20000 {
100 label = "kernel";
101 reg = <0x00020000 0x00100000>;
102 };
103 partition@120000 {
104 label = "rootfs";
105 reg = <0x00120000 0x006a0000>;
106 };
107 partition@7c0000 {
108 label = "VCTL";
109 reg = <0x007c0000 0x00010000>;
110 read-only;
111 };
112 partition@7d0000 {
113 label = "cfg";
114 reg = <0x007d0000 0x00010000>;
115 read-only;
116 };
117 partition@7e0000 {
118 label = "FIS";
119 reg = <0x007e0000 0x00010000>;
120 read-only;
121 };
122 };
Linus Walleijf328c2e2017-07-05 16:59:33 +0200123
124 syscon: syscon@40000000 {
125 pinctrl {
126 /*
127 * gpio0agrp cover line 0-4
128 * gpio0bgrp cover line 5
129 */
130 gpio0_default_pins: pinctrl-gpio0 {
131 mux {
132 function = "gpio0";
133 groups = "gpio0agrp",
134 "gpio0bgrp";
135 };
136 };
Linus Walleij95220042017-11-19 11:04:23 +0100137 pinctrl-gmii {
138 /* This platform use both the ethernet ports */
139 mux {
140 function = "gmii";
141 groups = "gmii_gmac0_grp", "gmii_gmac1_grp";
142 };
143 };
Linus Walleijf328c2e2017-07-05 16:59:33 +0200144 };
145 };
146
147 gpio0: gpio@4d000000 {
148 pinctrl-names = "default";
149 pinctrl-0 = <&gpio0_default_pins>;
150 };
Linus Walleije80da432017-10-11 19:49:13 +0200151
152 pci@50000000 {
153 status = "okay";
154 interrupt-map-mask = <0xf800 0 0 7>;
155 interrupt-map =
156 <0x4800 0 0 1 &pci_intc 0>, /* Slot 9 */
157 <0x4800 0 0 2 &pci_intc 1>,
158 <0x4800 0 0 3 &pci_intc 2>,
159 <0x4800 0 0 4 &pci_intc 3>,
160 <0x5000 0 0 1 &pci_intc 1>, /* Slot 10 */
161 <0x5000 0 0 2 &pci_intc 2>,
162 <0x5000 0 0 3 &pci_intc 3>,
163 <0x5000 0 0 4 &pci_intc 0>,
164 <0x5800 0 0 1 &pci_intc 2>, /* Slot 11 */
165 <0x5800 0 0 2 &pci_intc 3>,
166 <0x5800 0 0 3 &pci_intc 0>,
167 <0x5800 0 0 4 &pci_intc 1>,
168 <0x6000 0 0 1 &pci_intc 3>, /* Slot 12 */
169 <0x6000 0 0 2 &pci_intc 0>,
170 <0x6000 0 0 3 &pci_intc 1>,
171 <0x6000 0 0 4 &pci_intc 2>;
172 };
Linus Walleij95220042017-11-19 11:04:23 +0100173
174 ethernet@60000000 {
175 status = "okay";
176
177 ethernet-port@0 {
178 phy-mode = "rgmii";
179 phy-handle = <&phy0>;
180 };
181 ethernet-port@1 {
182 phy-mode = "rgmii";
183 phy-handle = <&phy1>;
184 };
185 };
Linus Walleijc4fa8b22017-01-21 20:55:46 +0100186 };
187};