Rebased from upstream / out of band repository.
[librecmc/librecmc.git] / target / linux / ath79 / dts / ar7240_tplink_tl-wr74xn-v1.dtsi
1 // SPDX-License-Identifier: GPL-2.0-or-later OR MIT
2
3 #include <dt-bindings/gpio/gpio.h>
4 #include <dt-bindings/input/input.h>
5
6 #include "ar7240.dtsi"
7
8 / {
9         aliases {
10                 led-boot = &led_system;
11                 led-failsafe = &led_system;
12                 led-running = &led_system;
13                 led-upgrade = &led_system;
14         };
15
16         gpio-keys-polled {
17                 compatible = "gpio-keys-polled";
18                 poll-interval = <20>;
19
20                 reset {
21                         label = "reset";
22                         linux,code = <KEY_RESTART>;
23                         gpios = <&gpio 11 GPIO_ACTIVE_LOW>;
24                         debounce-interval = <60>;
25                 };
26
27                 wps {
28                         label = "wps";
29                         linux,code = <KEY_WPS_BUTTON>;
30                         gpios = <&gpio 12 GPIO_ACTIVE_LOW>;
31                         debounce-interval = <60>;
32                 };
33         };
34
35         gpio-leds {
36                 compatible = "gpio-leds";
37                 pinctrl-names = "default";
38                 pinctrl-0 = <&switch_led_pins>;
39
40                 led_system: system {
41                         label = "tp-link:green:system";
42                         gpios = <&gpio 1 GPIO_ACTIVE_LOW>;
43                 };
44
45                 qss {
46                         label = "tp-link:green:qss";
47                         gpios = <&gpio 0 GPIO_ACTIVE_LOW>;
48                 };
49
50                 lan1 {
51                         label = "tp-link:green:lan1";
52                         gpios = <&gpio 13 GPIO_ACTIVE_LOW>;
53                 };
54
55                 lan2 {
56                         label = "tp-link:green:lan2";
57                         gpios = <&gpio 14 GPIO_ACTIVE_LOW>;
58                 };
59
60                 lan3 {
61                         label = "tp-link:green:lan3";
62                         gpios = <&gpio 15 GPIO_ACTIVE_LOW>;
63                 };
64
65                 lan4 {
66                         label = "tp-link:green:lan4";
67                         gpios = <&gpio 16 GPIO_ACTIVE_LOW>;
68                 };
69
70                 wan {
71                         label = "tp-link:green:wan";
72                         gpios = <&gpio 17 GPIO_ACTIVE_LOW>;
73                 };
74         };
75
76         ath9k-leds {
77                 compatible = "gpio-leds";
78
79                 wlan {
80                         label = "tp-link:green:wlan";
81                         gpios = <&ath9k 1 GPIO_ACTIVE_LOW>;
82                         linux,default-trigger = "phy0tpt";
83                 };
84         };
85 };
86
87 &spi {
88         status = "okay";
89         num-cs = <1>;
90
91         flash@0 {
92                 compatible = "jedec,spi-nor";
93                 reg = <0>;
94                 spi-max-frequency = <25000000>;
95
96                 partitions {
97                         compatible = "fixed-partitions";
98                         #address-cells = <1>;
99                         #size-cells = <1>;
100
101                         uboot: partition@0 {
102                                 reg = <0x0 0x20000>;
103                                 label = "u-boot";
104                                 read-only;
105                         };
106
107                         firmware: partition@20000 {
108                                 compatible = "tplink,firmware";
109                                 reg = <0x20000 0x3d0000>;
110                                 label = "firmware";
111                         };
112
113                         art: partition@3f0000 {
114                                 reg = <0x3f0000 0x10000>;
115                                 label = "art";
116                                 read-only;
117                         };
118                 };
119         };
120 };
121
122 &eth0 {
123         status = "okay";
124
125         mtd-mac-address = <&uboot 0x1fc00>;
126         mtd-mac-address-increment = <(-1)>;
127 };
128
129 &eth1 {
130         status = "okay";
131
132         mtd-mac-address = <&uboot 0x1fc00>;
133         mtd-mac-address-increment = <1>;
134 };
135
136 &pcie {
137         status = "okay";
138
139         ath9k: wifi@0,0 {
140                 compatible = "pci168c,002b";
141                 reg = <0x0000 0 0 0 0>;
142                 qca,no-eeprom;
143                 mtd-mac-address = <&uboot 0x1fc00>;
144                 #gpio-cells = <2>;
145                 gpio-controller;
146         };
147 };
148
149 &pinmux {
150         switch_led_pins: pinmux_switch_led_pins {
151                 pinctrl-single,bits = <0x0 0x0 0xf8>;
152         };
153 };
154
155 &uart {
156         status = "okay";
157 };