Fresh pull from upstream
[librecmc/librecmc.git] / target / linux / ramips / dts / WL-WN575A3.dts
1 /dts-v1/;
2 #include <dt-bindings/input/input.h>
3 #include <dt-bindings/gpio/gpio.h>
4
5 #include "mt7628an.dtsi"
6
7 / {
8         compatible = "wavlink,wl-wn575a3", "mediatek,mt7628an-soc";
9         model = "Wavlink WL-WN575A3";
10
11         chosen {
12                 bootargs = "console=ttyS0,57600";
13         };
14
15         memory@0 {
16                 device_type = "memory";
17                 reg = <0x0 0x4000000>;
18         };
19
20         gpio-keys-polled {
21                 compatible = "gpio-keys-polled";
22                 #address-cells = <1>;
23                 #size-cells = <0>;
24                 poll-interval = <20>;
25
26                 reset {
27                         label = "reset";
28                         gpios = <&gpio1 11 GPIO_ACTIVE_LOW>;
29                         linux,code = <KEY_RESTART>;
30                 };
31
32                 wps {
33                         label = "wps";
34                         gpios = <&gpio1 6 GPIO_ACTIVE_LOW>;
35                         linux,code = <KEY_WPS_BUTTON>;
36                 };
37         };
38
39         gpio-leds {
40                 compatible = "gpio-leds";
41
42                 wifi-high {
43                         label = "wl-wn575a3:green:wifi-high";
44                         gpios = <&gpio1 5 GPIO_ACTIVE_LOW>;
45                 };
46
47                 wifi-med {
48                         label = "wl-wn575a3:green:wifi-med";
49                         gpios = <&gpio0 11 GPIO_ACTIVE_LOW>;
50                 };
51
52                 wifi-low {
53                         label = "wl-wn575a3:green:wifi-low";
54                         gpios = <&gpio1 12 GPIO_ACTIVE_LOW>;
55                 };
56
57                 wps {
58                         label = "wl-wn575a3:green:wps";
59                         gpios = <&gpio0 4 GPIO_ACTIVE_LOW>;
60                 };
61         };
62 };
63
64 &pinctrl {
65         state_default: pinctrl0 {
66                 gpio {
67                         ralink,group = "i2c", "wled_an";
68                         ralink,function = "gpio";
69                 };
70         };
71 };
72
73 &pcie {
74         status = "okay";
75         pcie-bridge {
76                 mt76@0,0 {
77                         reg = <0x0000 0 0 0 0>;
78                         device_type = "pci";
79                         mediatek,mtd-eeprom = <&factory 0x8000>;
80                         mediatek,2ghz = <0>;
81                 };
82         };
83 };
84
85 &spi0 {
86         status = "okay";
87
88         m25p80@0 {
89                 #address-cells = <1>;
90                 #size-cells = <1>;
91                 compatible = "jedec,spi-nor";
92                 reg = <0>;
93                 linux,modalias = "m25p80", "en25q64";
94                 spi-max-frequency = <10000000>;
95                 m25p,chunked-io = <32>;
96
97                 partition@0 {
98                         label = "u-boot";
99                         reg = <0x0 0x30000>;
100                         read-only;
101                 };
102
103                 partition@30000 {
104                         label = "u-boot-env";
105                         reg = <0x30000 0x10000>;
106                         read-only;
107                 };
108
109                 factory: partition@40000 {
110                         label = "factory";
111                         reg = <0x40000 0x10000>;
112                         read-only;
113                 };
114
115                 partition@50000 {
116                         label = "firmware";
117                         reg = <0x50000 0x7b0000>;
118                 };
119         };
120 };
121
122 &wmac {
123         status = "okay";
124         ralink,mtd-eeprom = <&factory 0x4>;
125 };
126
127 &ethernet {
128         mtd-mac-address = <&factory 0x2e>;
129         ralink,port-map = "llllw";
130 };