lantiq: dts: assign the PCI pins to the PCI controller node
[openwrt/openwrt.git] / target / linux / lantiq / files / arch / mips / boot / dts / P2601HNFX.dts
1 /dts-v1/;
2
3 #include "ar9.dtsi"
4
5 #include <dt-bindings/input/input.h>
6
7 / {
8 compatible = "zyxel,p-2601hn", "lantiq,xway", "lantiq,ar9";
9 model = "ZyXEL P-2601HN-Fx";
10
11 chosen {
12 bootargs = "console=ttyLTQ0,115200";
13 };
14
15 aliases {
16 led-boot = &power_green;
17 led-failsafe = &power_red;
18 led-running = &power_green;
19 led-upgrade = &power_green;
20
21 led-dsl = &dsl;
22 led-internet = &online;
23 led-wifi = &wifi;
24 };
25
26 memory@0 {
27 device_type = "memory";
28 reg = <0x0 0x4000000>;
29 };
30
31 keys {
32 compatible = "gpio-keys-polled";
33 poll-interval = <100>;
34
35 reset {
36 label = "reset";
37 gpios = <&gpio 53 GPIO_ACTIVE_LOW>;
38 linux,code = <KEY_RESTART>;
39 };
40 rfkill {
41 label = "rfkill";
42 gpios = <&gpio 54 GPIO_ACTIVE_LOW>;
43 linux,code = <KEY_RFKILL>;
44 };
45 };
46
47 leds {
48 compatible = "gpio-leds";
49
50 power_green: power {
51 label = "p2601hnfx:green:power";
52 gpios = <&stp 11 GPIO_ACTIVE_LOW>;
53 default-state = "keep";
54 };
55 power_red: power2 {
56 label = "p2601hnfx:red:power";
57 gpios = <&gpio 29 GPIO_ACTIVE_LOW>;
58 };
59 online: online {
60 label = "p2601hnfx:green:internet";
61 gpios = <&stp 13 GPIO_ACTIVE_LOW>;
62 };
63 online2 {
64 label = "p2601hnfx:red:internet";
65 gpios = <&stp 12 GPIO_ACTIVE_LOW>;
66 };
67 dsl: dsl {
68 label = "p2601hnfx:green:dsl";
69 gpios = <&stp 14 GPIO_ACTIVE_LOW>;
70 };
71 phone {
72 label = "p2601hnfx:green:phone";
73 gpios = <&stp 9 GPIO_ACTIVE_LOW>;
74 };
75 phone2 {
76 label = "p2601hnfx:orange:phone";
77 gpios = <&stp 8 GPIO_ACTIVE_LOW>;
78 };
79 wifi: wifi {
80 label = "p2601hnfx:green:wireless";
81 gpios = <&stp 15 GPIO_ACTIVE_LOW>;
82 };
83 wifi2 {
84 label = "p2601hnfx:orange:wireless";
85 gpios = <&stp 10 GPIO_ACTIVE_LOW>;
86 };
87 };
88
89 gpio_export {
90 compatible = "gpio-export";
91 #size-cells = <0>;
92
93 switch {
94 gpio-export,name = "switch";
95 gpio-export,output = <1>;
96 gpios = <&gpio 50 GPIO_ACTIVE_HIGH>;
97 };
98 };
99 };
100
101 &gpio {
102 pinctrl-names = "default";
103 pinctrl-0 = <&state_default>;
104
105 state_default: pinmux {
106 exin {
107 lantiq,groups = "exin1";
108 lantiq,function = "exin";
109 };
110 };
111
112 usb_vbus: regulator-usb-vbus {
113 compatible = "regulator-fixed";
114
115 regulator-name = "USB_VBUS";
116
117 regulator-min-microvolt = <5000000>;
118 regulator-max-microvolt = <5000000>;
119
120 gpio = <&gpio 9 GPIO_ACTIVE_HIGH>;
121 enable-active-high;
122 };
123 };
124
125 &gsw {
126 phy-mode = "rmii";
127 };
128
129 &localbus {
130 flash@0 {
131 compatible = "lantiq,nor";
132 bank-width = <2>;
133 reg = <0 0x0 0x2000000>;
134
135 partitions {
136 compatible = "fixed-partitions";
137 #address-cells = <1>;
138 #size-cells = <1>;
139
140 partition@0 {
141 label = "uboot";
142 reg = <0x00000 0x40000>;
143 read-only;
144 };
145
146 partition@40000 {
147 label = "uboot_env";
148 reg = <0x40000 0x20000>;
149 read-only;
150 };
151
152 partition@60000 {
153 label = "firmware";
154 reg = <0x60000 0xfa0000>;
155 };
156 };
157 };
158 };
159
160 &pci0 {
161 pinctrl-0 = <&pci_gnt1_pins>, <&pci_req1_pins>;
162 pinctrl-names = "default";
163 };
164
165 &stp {
166 status = "okay";
167 lantiq,shadow = <0xfff>;
168 lantiq,groups = <0x3>;
169 };
170
171 &usb_phy0 {
172 status = "okay";
173 };
174
175 &usb0 {
176 status = "okay";
177 vbus-supply = <&usb_vbus>;
178 };