391c034dab7472047306709efd1c044ee801bb50
[oweals/openwrt.git] / target / linux / ath79 / dts / qca9558_mikrotik_routerboard-922uags-5hpacd.dts
1 // SPDX-License-Identifier: GPL-2.0-or-later OR MIT
2 /dts-v1/;
3
4 #include <dt-bindings/gpio/gpio.h>
5 #include <dt-bindings/input/input.h>
6
7 #include "qca955x.dtsi"
8
9 / {
10         compatible = "mikrotik,routerboard-922uags-5hpacd", "qca,qca9558";
11         model = "MikroTik RouterBOARD 922UAGS-5HPacD";
12
13         aliases {
14                 led-boot = &led_user;
15                 led-failsafe = &led_user;
16                 led-upgrade = &led_user;
17                 serial0 = &uart;
18         };
19
20         chosen {
21                 bootargs = "console=ttyS0,115200n8";
22         };
23
24         leds {
25                 compatible = "gpio-leds";
26
27                 led_user: user {
28                         label = "mikrotik:green:user";
29                         gpios = <&gpio 12 GPIO_ACTIVE_LOW>;
30                 };
31         };
32
33         ath10k-leds {
34                 compatible = "gpio-leds";
35
36                 wlan5g {
37                         label = "mikrotik:green:wlan5g";
38                         gpios = <&ath10k 0 GPIO_ACTIVE_LOW>;
39                         linux,default-trigger = "phy0tpt";
40                 };
41         };
42
43         keys {
44                 compatible = "gpio-keys";
45
46                 reset {
47                         label = "reset";
48                         linux,code = <KEY_RESTART>;
49                         gpios = <&gpio 20 GPIO_ACTIVE_LOW>;
50                         debounce-interval = <60>;
51                 };
52         };
53
54         gpio-export {
55                 compatible = "gpio-export";
56
57                 gpio_usb_power {
58                         gpio-export,name = "mikrotik:power:usb";
59                         gpio-export,output = <0>;
60                         gpios = <&gpio 13 GPIO_ACTIVE_HIGH>;
61                 };
62
63                 gpio_nand_power {
64                         gpio-export,name = "mikrotik:power:nand";
65                         gpio-export,output = <0>;
66                         gpios = <&gpio 23 GPIO_ACTIVE_LOW>;
67                 };
68         };
69 };
70
71 &mdio0 {
72         status = "okay";
73
74         phy4: ethernet-phy@4 {
75                 reg = <4>;
76         };
77 };
78
79 &eth0 {
80         status = "okay";
81
82         phy-handle = <&phy4>;
83         pll-data = <0x8f000000 0xa0000101 0xa0001313>;
84
85         gmac-config {
86                 device = <&gmac>;
87                 rgmii-enabled = <1>;
88         };
89 };
90
91 &spi {
92         status = "okay";
93
94         flash@0 {
95                 compatible = "jedec,spi-nor";
96                 reg = <0>;
97                 spi-max-frequency = <25000000>;
98
99                 partitions {
100                         compatible = "mikrotik,routerboot-partitions";
101                         #address-cells = <1>;
102                         #size-cells = <1>;
103
104                         partition@0 {
105                                 label = "routerboot";
106                                 reg = <0x0 0x0>;
107                                 read-only;
108                         };
109
110                         hard_config: hard_config {
111                                 read-only;
112                         };
113
114                         bios {
115                                 read-only;
116                         };
117
118                         soft_config {
119                         };
120                 };
121         };
122 };
123
124 &nand {
125         status = "okay";
126
127         nand-ecc-mode = "soft";
128         qca,nand-swap-dma;
129         qca,nand-scan-fixup;
130
131         partitions {
132                 compatible = "fixed-partitions";
133                 #size-cells = <1>;
134
135                 partition@0 {
136                         label = "booter";
137                         reg = <0x0000000 0x0040000>;
138                         read-only;
139                 };
140
141                 partition@40000 {
142                         label = "kernel";
143                         reg = <0x0040000 0x03c0000>;
144                 };
145
146                 partition@400000 {
147                         label = "ubi";
148                         reg = <0x0400000 0x7c00000>;
149                 };
150         };
151 };
152
153 &uart {
154         status = "okay";
155 };
156
157 &pcie0 {
158         status = "okay";
159
160         ath10k: wifi@0,0 {
161                 compatible = "qcom,ath10k";
162                 reg = <0 0 0 0 0>;
163                 #gpio-cells = <2>;
164                 gpio-controller;
165         };
166 };
167
168 &pcie1 {
169         status = "okay";
170 };
171
172 &usb0 {
173         status = "okay";
174 };
175
176 &usb_phy0 {
177         status = "okay";
178 };