bb9193eb1f672898b38be9977106d9a45f5b5f2a
[openwrt/openwrt.git] / target / linux / lantiq / dts / P2601HNFX.dts
1 /dts-v1/;
2
3 /include/ "ar9.dtsi"
4
5 / {
6 model = "P2601HNFX - ZyXEL P-2601HN-Fx";
7
8 chosen {
9 bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
10 };
11
12 memory@0 {
13 reg = <0x0 0x4000000>;
14 };
15
16 fpi@10000000 {
17 #address-cells = <1>;
18 #size-cells = <1>;
19 localbus@0 {
20 #address-cells = <2>;
21 #size-cells = <1>;
22 ranges = <0 0 0x0 0x3ffffff
23 1 0 0x4000000 0x4000010>;
24 compatible = "lantiq,localbus", "simple-bus";
25
26 nor-boot@0 {
27 compatible = "lantiq,nor";
28 bank-width = <2>;
29 reg = <0 0x0 0x2000000>;
30 #address-cells = <1>;
31 #size-cells = <1>;
32
33 partition@0 {
34 label = "uboot";
35 reg = <0x00000 0x40000>;
36 read-only;
37 };
38
39 partition@40000 {
40 label = "uboot_env";
41 reg = <0x40000 0x20000>;
42 read-only;
43 };
44
45 partition@60000 {
46 label = "firmware";
47 reg = <0x60000 0xfa0000>;
48 };
49 };
50 };
51
52 gpio: pinmux@E100B10 {
53 compatible = "lantiq,pinctrl-xr9";
54 pinctrl-names = "default";
55 pinctrl-0 = <&state_default>;
56
57 #gpio-cells = <2>;
58 gpio-controller;
59 reg = <0xE100B10 0xA0>;
60
61 state_default: pinmux {
62 stp {
63 lantiq,groups = "stp";
64 lantiq,function = "stp";
65 lantiq,pull = <2>;
66 lantiq,open-drain = <0>;
67 lantiq,output = <1>;
68 };
69 exin {
70 lantiq,groups = "exin1";
71 lantiq,function = "exin";
72 };
73 pci {
74 lantiq,groups = "gnt1";
75 lantiq,function = "pci";
76 };
77 conf_out {
78 lantiq,pins = "io4", "io5", "io6";
79 lantiq,open-drain;
80 lantiq,pull = <0>;
81 };
82 mdio {
83 lantiq,groups = "mdio";
84 lantiq,function = "mdio";
85 };
86 };
87 };
88
89 etop@E180000 {
90 phy-mode = "rmii";
91 };
92
93 ifxhcd@E101000 {
94 status = "okay";
95 gpios = <&gpio 9 0>;
96 };
97
98 stp: stp@E100BB0 {
99 #gpio-cells = <2>;
100 compatible = "lantiq,gpio-stp-xway";
101 gpio-controller;
102 reg = <0xE100BB0 0x40>;
103
104 lantiq,shadow = <0xfff>;
105 lantiq,groups = <0x3>;
106 };
107
108 pci@E105400 {
109 lantiq,bus-clock = <33333333>;
110 interrupt-map-mask = <0xf800 0x0 0x0 0x7>;
111 interrupt-map = <0x7000 0 0 1 &icu0 29 1>;
112 gpios-reset = <&gpio 21 0>;
113 req-mask = <0x1>;
114 };
115 };
116
117 gpio-keys-polled {
118 compatible = "gpio-keys-polled";
119 #address-cells = <1>;
120 #size-cells = <0>;
121 poll-interval = <100>;
122
123 reset {
124 label = "reset";
125 gpios = <&gpio 53 1>;
126 linux,code = <0x198>;
127 };
128 rfkill {
129 label = "rfkill";
130 gpios = <&gpio 54 1>;
131 linux,code = <0xf7>;
132 };
133 };
134
135 gpio-leds {
136 compatible = "gpio-leds";
137
138 power {
139 label = "power";
140 gpios = <&stp 11 1>;
141 default-state = "on";
142 };
143 power2 {
144 label = "power2";
145 gpios = <&gpio 29 1>;
146 };
147 online {
148 label = "online";
149 gpios = <&stp 13 1>;
150 };
151 online2 {
152 label = "online2";
153 gpios = <&stp 12 1>;
154 };
155 dsl {
156 label = "dsl";
157 gpios = <&stp 14 1>;
158 };
159 phone {
160 label = "phone";
161 gpios = <&stp 9 1>;
162 };
163 phone2 {
164 label = "phone2";
165 gpios = <&stp 8 1>;
166 };
167 wifi {
168 label = "wifi";
169 gpios = <&stp 15 1>;
170 };
171 wifi2 {
172 label = "wifi2";
173 gpios = <&stp 10 1>;
174 };
175 };
176
177 gpio_export {
178 compatible = "gpio-export";
179 #size-cells = <0>;
180
181 switch {
182 gpio-export,name = "switch";
183 gpio-export,output = <1>;
184 gpios = <&gpio 50 0>;
185 };
186 usb {
187 gpio-export,name = "wifi";
188 gpio-export,output = <1>;
189 gpios = <&gpio 9 0>;
190 };
191 };
192 };