ramips: fix mt7620a ND/SD pins pinmuxes
[oweals/openwrt.git] / target / linux / ramips / dts / D240.dts
1 /*
2  *  BSD LICENSE
3  *
4  *  Copyright(c) 2017 Kristian Evensen <kristian.evensen@gmail.com>.
5  *  All rights reserved.
6  *
7  *  Redistribution and use in source and binary forms, with or without
8  *  modification, are permitted provided that the following conditions
9  *  are met:
10  *
11  *    * Redistributions of source code must retain the above copyright
12  *      notice, this list of conditions and the following disclaimer.
13  *    * Redistributions in binary form must reproduce the above copyright
14  *      notice, this list of conditions and the following disclaimer in
15  *      the documentation and/or other materials provided with the
16  *      distribution.
17  *    * Neither the name of Broadcom Corporation nor the names of its
18  *      contributors may be used to endorse or promote products derived
19  *      from this software without specific prior written permission.
20  *
21  *  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
22  *  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
23  *  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
24  *  A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
25  *  OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
26  *  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
27  *  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
28  *  DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
29  *  THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
30  *  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
31  *  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
32  */
33
34 /dts-v1/;
35
36 #include "mt7620a.dtsi"
37
38 #include <dt-bindings/gpio/gpio.h>
39 #include <dt-bindings/input/input.h>
40
41 / {
42         compatible = "sanlinking,d240", "ralink,mt7620a-soc";
43         model = "Sanlinking Technologies D240";
44
45         aliases {
46                 led-status = &led_power;
47         };
48
49         chosen {
50                 bootargs = "console=ttyS0,115200";
51         };
52
53         gpio-export {
54                 compatible = "gpio-export";
55                 #size-cells = <0>;
56
57                 power_mpcie2 {
58                         gpio-export,name = "power_mpcie2";
59                         gpio-export,output = <1>;
60                         gpios = <&gpio2 5 GPIO_ACTIVE_HIGH>;
61                 };
62
63                 power_mpcie1 {
64                         gpio-export,name = "power_mpcie1";
65                         gpio-export,output = <1>;
66                         gpios = <&gpio2 6 GPIO_ACTIVE_HIGH>;
67                 };
68         };
69
70         gpio-leds {
71                 compatible = "gpio-leds";
72
73                 led_power: power {
74                         label = "d240:blue:power";
75                         gpios = <&gpio1 14 GPIO_ACTIVE_HIGH>;
76                 };
77
78                 usb {
79                         label = "d240:blue:usb";
80                         gpios = <&gpio1 15 GPIO_ACTIVE_HIGH>;
81                 };
82
83                 air {
84                         label = "d240:blue:wifi";
85                         gpios = <&gpio3 0 GPIO_ACTIVE_LOW>;
86                 };
87         };
88
89         gpio-keys-polled {
90                 compatible = "gpio-keys-polled";
91                 poll-interval = <20>;
92
93                 reset {
94                         label = "reset";
95                         gpios = <&gpio0 1 GPIO_ACTIVE_LOW>;
96                         linux,code = <KEY_RESTART>;
97                 };
98         };
99 };
100
101 &gpio1 {
102         status = "okay";
103 };
104
105 &gpio2 {
106         status = "okay";
107 };
108
109 &gpio3 {
110         status = "okay";
111 };
112
113 &spi0 {
114         status = "okay";
115
116         en25q128@0 {
117                 compatible = "jedec,spi-nor";
118                 reg = <0>;
119                 spi-max-frequency = <10000000>;
120
121                 partitions {
122                         compatible = "fixed-partitions";
123                         #address-cells = <1>;
124                         #size-cells = <1>;
125
126                         partition@0 {
127                                 label = "u-boot";
128                                 reg = <0x0 0x30000>;
129                                 read-only;
130                         };
131
132                         partition@30000 {
133                                 label = "u-boot-env";
134                                 reg = <0x30000 0x10000>;
135                                 read-only;
136                         };
137
138                         factory: partition@40000 {
139                                 label = "factory";
140                                 reg = <0x40000 0x10000>;
141                                 read-only;
142                         };
143
144                         partition@50000 {
145                                 label = "firmware";
146                                 reg = <0x50000 0xfb0000>;
147                         };
148                 };
149         };
150 };
151
152 &sdhci {
153         status = "okay";
154 };
155
156 &ehci {
157         status = "okay";
158 };
159
160 &ohci {
161         status = "okay";
162 };
163
164 &ethernet {
165         mtd-mac-address = <&factory 0x4>;
166         mediatek,portmap = "wllll";
167 };
168
169 &wmac {
170         ralink,mtd-eeprom = <&factory 0>;
171 };
172
173 &pinctrl {
174         state_default: pinctrl0 {
175                 default {
176                         ralink,group = "i2c", "uartf", "wled", "spi refclk", "pa";
177                         ralink,function = "gpio";
178                 };
179         };
180 };
181
182 &pcie {
183         status = "okay";
184 };