lantiq: device tree bindings for dwc2 on danube
[oweals/openwrt.git] / target / linux / lantiq / dts / FRITZ7360SL.dts
1 /dts-v1/;
2
3 #include "vr9.dtsi"
4
5 #include <dt-bindings/input/input.h>
6
7 / {
8         model = "FRITZ7360SL - 1&1 HomeServer";
9
10         chosen {
11                 bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
12         };
13
14         aliases {
15                 led-boot = &power_green;
16                 led-failsafe = &power_red;
17                 led-running = &power_green;
18
19                 led-internet = &info_green;
20                 led-dsl = &power_green;
21                 led-wifi = &wifi;
22         };
23
24         memory@0 {
25                 reg = <0x0 0x8000000>;
26         };
27
28         fpi@10000000 {
29                 localbus@0 {
30                         nor-boot@0 {
31                                 compatible = "lantiq,nor";
32                                 bank-width = <2>;
33                                 reg = <0 0x0 0x1000000>;
34                                 #address-cells = <1>;
35                                 #size-cells = <1>;
36                                 partitions {
37                                         compatible = "fixed-partitions";
38                                         #address-cells = <1>;
39                                         #size-cells = <1>;
40                                         urlader: partition@0 {
41                                                 label = "urlader";
42                                                 reg = <0x00000 0x20000>;
43                                                 read-only;
44                                         };
45
46                                         partition@20000 {
47                                                 label = "firmware";
48                                                 reg = <0x20000 0xf60000>;
49                                         };
50
51                                         partition@f80000 {
52                                                 label = "tffs (1)";
53                                                 reg = <0xf80000 0x40000>;
54                                                 read-only;
55                                         };
56
57                                         partition@fc0000 {
58                                                 label = "tffs (2)";
59                                                 reg = <0xfc0000 0x40000>;
60                                                 read-only;
61                                         };
62                                 };
63                         };
64                 };
65
66                 gpio: pinmux@E100B10 {
67                         pinctrl-names = "default";
68                         pinctrl-0 = <&state_default>;
69
70                         state_default: pinmux {
71                                 mdio {
72                                         lantiq,groups = "mdio";
73                                         lantiq,function = "mdio";
74                                 };
75                                 phy-rst {
76                                         lantiq,pins = "io37", "io44";
77                                         lantiq,pull = <2>;
78                                         lantiq,open-drain;
79                                         lantiq,output = <1>;
80                                 };
81                                 pcie-rst {
82                                         lantiq,pins = "io38";
83                                         lantiq,pull = <0>;
84                                         lantiq,output = <1>;
85                                 };
86                         };
87                 };
88
89                 ifxhcd@E101000 {
90                         status = "okay";
91                         lantiq,portmask = <0x3>;
92                 };
93
94                 ifxhcd@E106000 {
95                         status = "okay";
96                 };
97         };
98
99         ath9k_eep {
100                 compatible = "ath9k,eeprom";
101                 ath,eep-flash = <&urlader 0x985>;
102                 ath,eep-endian;
103                 ath,eep-swap;
104                 ath,pci-slot = <0>;
105         };
106
107         gphy-xrx200 {
108                 compatible = "lantiq,phy-xrx200";
109                 firmware = "lantiq/vr9_phy11g_a2x.bin";
110                 phys = [ 00 01 ];
111         };
112
113         gpio-keys-polled {
114                 compatible = "gpio-keys-polled";
115                 #address-cells = <1>;
116                 #size-cells = <0>;
117                 poll-interval = <100>;
118                 dect {
119                         label = "power";
120                         gpios = <&gpio 1 GPIO_ACTIVE_HIGH>;
121                         linux,code = <BTN_2>;
122                 };
123                 wifi {
124                         label = "wifi";
125                         gpios = <&gpio 29 GPIO_ACTIVE_HIGH>;
126                         linux,code = <BTN_1>;
127                 };
128         };
129
130         gpio-leds {
131                 compatible = "gpio-leds";
132
133                 power_green: power {
134                         label = "fritz7360sl:green:power";
135                         gpios = <&gpio 32 GPIO_ACTIVE_LOW>;
136                         default-state = "keep";
137                 };
138                 power_red: power2 {
139                         label = "fritz7360sl:red:power";
140                         gpios = <&gpio 33 GPIO_ACTIVE_LOW>;
141                 };
142                 info_red {
143                         label = "fritz7360sl:red:info";
144                         gpios = <&gpio 34 GPIO_ACTIVE_LOW>;
145                 };
146                 info_green: info_green {
147                         label = "fritz7360sl:green:info";
148                         gpios = <&gpio 47 GPIO_ACTIVE_LOW>;
149                 };
150                 wifi: wifi {
151                         label = "fritz7360sl:green:wlan";
152                         gpios = <&gpio 36 GPIO_ACTIVE_LOW>;
153                 };
154                 dect {
155                         label = "fritz7360sl:green:dect";
156                         gpios = <&gpio 35 GPIO_ACTIVE_LOW>;
157                 };
158         };
159 };
160
161 &eth0 {
162         lan: interface@0 {
163                 compatible = "lantiq,xrx200-pdi";
164                 #address-cells = <1>;
165                 #size-cells = <0>;
166                 reg = <0>;
167                 mac-address = [ 00 11 22 33 44 55 ];
168                 lantiq,switch;
169
170                 ethernet@0 {
171                         compatible = "lantiq,xrx200-pdi-port";
172                         reg = <0>;
173                         phy-mode = "rmii";
174                         phy-handle = <&phy0>;
175                         // gpios = <&gpio 37 GPIO_ACTIVE_LOW>;
176                 };
177                 ethernet@1 {
178                         compatible = "lantiq,xrx200-pdi-port";
179                         reg = <1>;
180                         phy-mode = "rmii";
181                         phy-handle = <&phy1>;
182                         // gpios = <&gpio 44 GPIO_ACTIVE_LOW>;
183                 };
184                 ethernet@2 {
185                         compatible = "lantiq,xrx200-pdi-port";
186                         reg = <2>;
187                         phy-mode = "gmii";
188                         phy-handle = <&phy11>;
189                 };
190                 ethernet@3 {
191                         compatible = "lantiq,xrx200-pdi-port";
192                         reg = <4>;
193                         phy-mode = "gmii";
194                         phy-handle = <&phy13>;
195                 };
196         };
197
198         mdio@0 {
199                 #address-cells = <1>;
200                 #size-cells = <0>;
201                 compatible = "lantiq,xrx200-mdio";
202                 phy0: ethernet-phy@0 {
203                         reg = <0x00>;
204                         compatible = "lantiq,phy11g", "ethernet-phy-ieee802.3-c22";
205                 };
206                 phy1: ethernet-phy@1 {
207                         reg = <0x01>;
208                         compatible = "lantiq,phy11g", "ethernet-phy-ieee802.3-c22";
209                 };
210                 phy11: ethernet-phy@11 {
211                         reg = <0x11>;
212                         compatible = "lantiq,phy11g", "ethernet-phy-ieee802.3-c22";
213                 };
214                 phy13: ethernet-phy@13 {
215                         reg = <0x13>;
216                         compatible = "lantiq,phy11g", "ethernet-phy-ieee802.3-c22";
217                 };
218         };
219 };