xref: /freebsd/sys/contrib/device-tree/src/arm64/mediatek/mt7986a-acelink-ew-7886cax.dts (revision 01950c46b8155250f64374fb72fc11faa44bf099)
1*01950c46SEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-only OR MIT
2*01950c46SEmmanuel Vadot
3*01950c46SEmmanuel Vadot/dts-v1/;
4*01950c46SEmmanuel Vadot#include <dt-bindings/input/input.h>
5*01950c46SEmmanuel Vadot#include <dt-bindings/gpio/gpio.h>
6*01950c46SEmmanuel Vadot#include <dt-bindings/leds/common.h>
7*01950c46SEmmanuel Vadot
8*01950c46SEmmanuel Vadot#include "mt7986a.dtsi"
9*01950c46SEmmanuel Vadot
10*01950c46SEmmanuel Vadot/ {
11*01950c46SEmmanuel Vadot	compatible = "acelink,ew-7886cax", "mediatek,mt7986a";
12*01950c46SEmmanuel Vadot	model = "Acelink EW-7886CAX";
13*01950c46SEmmanuel Vadot
14*01950c46SEmmanuel Vadot	aliases {
15*01950c46SEmmanuel Vadot		serial0 = &uart0;
16*01950c46SEmmanuel Vadot	};
17*01950c46SEmmanuel Vadot
18*01950c46SEmmanuel Vadot	chosen {
19*01950c46SEmmanuel Vadot		stdout-path = "serial0:115200n8";
20*01950c46SEmmanuel Vadot	};
21*01950c46SEmmanuel Vadot
22*01950c46SEmmanuel Vadot	memory@40000000 {
23*01950c46SEmmanuel Vadot		reg = <0 0x40000000 0 0x20000000>;
24*01950c46SEmmanuel Vadot		device_type = "memory";
25*01950c46SEmmanuel Vadot	};
26*01950c46SEmmanuel Vadot
27*01950c46SEmmanuel Vadot	keys {
28*01950c46SEmmanuel Vadot		compatible = "gpio-keys";
29*01950c46SEmmanuel Vadot
30*01950c46SEmmanuel Vadot		key-restart {
31*01950c46SEmmanuel Vadot			label = "Reset";
32*01950c46SEmmanuel Vadot			gpios = <&pio 7 GPIO_ACTIVE_LOW>;
33*01950c46SEmmanuel Vadot			linux,code = <KEY_RESTART>;
34*01950c46SEmmanuel Vadot		};
35*01950c46SEmmanuel Vadot	};
36*01950c46SEmmanuel Vadot
37*01950c46SEmmanuel Vadot	leds {
38*01950c46SEmmanuel Vadot		compatible = "gpio-leds";
39*01950c46SEmmanuel Vadot
40*01950c46SEmmanuel Vadot		led-0 {
41*01950c46SEmmanuel Vadot			function = LED_FUNCTION_STATUS;
42*01950c46SEmmanuel Vadot			color = <LED_COLOR_ID_RED>;
43*01950c46SEmmanuel Vadot			gpios = <&pio 18 GPIO_ACTIVE_HIGH>;
44*01950c46SEmmanuel Vadot		};
45*01950c46SEmmanuel Vadot
46*01950c46SEmmanuel Vadot		led-1 {
47*01950c46SEmmanuel Vadot			function = LED_FUNCTION_STATUS;
48*01950c46SEmmanuel Vadot			color = <LED_COLOR_ID_GREEN>;
49*01950c46SEmmanuel Vadot			gpios = <&pio 19 GPIO_ACTIVE_HIGH>;
50*01950c46SEmmanuel Vadot		};
51*01950c46SEmmanuel Vadot
52*01950c46SEmmanuel Vadot		led-2 {
53*01950c46SEmmanuel Vadot			function = LED_FUNCTION_STATUS;
54*01950c46SEmmanuel Vadot			color = <LED_COLOR_ID_BLUE>;
55*01950c46SEmmanuel Vadot			gpios = <&pio 20 GPIO_ACTIVE_HIGH>;
56*01950c46SEmmanuel Vadot		};
57*01950c46SEmmanuel Vadot	};
58*01950c46SEmmanuel Vadot};
59*01950c46SEmmanuel Vadot
60*01950c46SEmmanuel Vadot&crypto {
61*01950c46SEmmanuel Vadot	status = "okay";
62*01950c46SEmmanuel Vadot};
63*01950c46SEmmanuel Vadot
64*01950c46SEmmanuel Vadot&eth {
65*01950c46SEmmanuel Vadot	status = "okay";
66*01950c46SEmmanuel Vadot
67*01950c46SEmmanuel Vadot	mac@1 {
68*01950c46SEmmanuel Vadot		compatible = "mediatek,eth-mac";
69*01950c46SEmmanuel Vadot		reg = <1>;
70*01950c46SEmmanuel Vadot		phy-mode = "2500base-x";
71*01950c46SEmmanuel Vadot		phy-handle = <&phy6>;
72*01950c46SEmmanuel Vadot		nvmem-cells = <&macaddr>;
73*01950c46SEmmanuel Vadot		nvmem-cell-names = "mac-address";
74*01950c46SEmmanuel Vadot	};
75*01950c46SEmmanuel Vadot
76*01950c46SEmmanuel Vadot	mdio-bus {
77*01950c46SEmmanuel Vadot		reset-gpios = <&pio 6 GPIO_ACTIVE_LOW>;
78*01950c46SEmmanuel Vadot		reset-delay-us = <50000>;
79*01950c46SEmmanuel Vadot		reset-post-delay-us = <20000>;
80*01950c46SEmmanuel Vadot
81*01950c46SEmmanuel Vadot		#address-cells = <1>;
82*01950c46SEmmanuel Vadot		#size-cells = <0>;
83*01950c46SEmmanuel Vadot
84*01950c46SEmmanuel Vadot		phy6: phy@6 {
85*01950c46SEmmanuel Vadot			compatible = "ethernet-phy-ieee802.3-c45";
86*01950c46SEmmanuel Vadot			reg = <6>;
87*01950c46SEmmanuel Vadot		};
88*01950c46SEmmanuel Vadot	};
89*01950c46SEmmanuel Vadot};
90*01950c46SEmmanuel Vadot
91*01950c46SEmmanuel Vadot&pcie_phy {
92*01950c46SEmmanuel Vadot	status = "okay";
93*01950c46SEmmanuel Vadot};
94*01950c46SEmmanuel Vadot
95*01950c46SEmmanuel Vadot&spi0 {
96*01950c46SEmmanuel Vadot	status = "okay";
97*01950c46SEmmanuel Vadot
98*01950c46SEmmanuel Vadot	flash@0 {
99*01950c46SEmmanuel Vadot		compatible = "spi-nand";
100*01950c46SEmmanuel Vadot		reg = <0>;
101*01950c46SEmmanuel Vadot		#address-cells = <1>;
102*01950c46SEmmanuel Vadot		#size-cells = <1>;
103*01950c46SEmmanuel Vadot		spi-max-frequency = <52000000>;
104*01950c46SEmmanuel Vadot		spi-rx-bus-width = <4>;
105*01950c46SEmmanuel Vadot		spi-tx-bus-width = <4>;
106*01950c46SEmmanuel Vadot
107*01950c46SEmmanuel Vadot		partitions {
108*01950c46SEmmanuel Vadot			compatible = "fixed-partitions";
109*01950c46SEmmanuel Vadot			#address-cells = <1>;
110*01950c46SEmmanuel Vadot			#size-cells = <1>;
111*01950c46SEmmanuel Vadot
112*01950c46SEmmanuel Vadot			partition@0 {
113*01950c46SEmmanuel Vadot				reg = <0x0 0x100000>;
114*01950c46SEmmanuel Vadot				label = "bootloader";
115*01950c46SEmmanuel Vadot				read-only;
116*01950c46SEmmanuel Vadot			};
117*01950c46SEmmanuel Vadot
118*01950c46SEmmanuel Vadot			partition@100000 {
119*01950c46SEmmanuel Vadot				reg = <0x100000 0x80000>;
120*01950c46SEmmanuel Vadot				label = "u-boot-env";
121*01950c46SEmmanuel Vadot			};
122*01950c46SEmmanuel Vadot
123*01950c46SEmmanuel Vadot			partition@180000 {
124*01950c46SEmmanuel Vadot				compatible = "nvmem-cells";
125*01950c46SEmmanuel Vadot				reg = <0x180000 0x200000>;
126*01950c46SEmmanuel Vadot				label = "factory";
127*01950c46SEmmanuel Vadot				read-only;
128*01950c46SEmmanuel Vadot
129*01950c46SEmmanuel Vadot				nvmem-layout {
130*01950c46SEmmanuel Vadot					compatible = "fixed-layout";
131*01950c46SEmmanuel Vadot					#address-cells = <1>;
132*01950c46SEmmanuel Vadot					#size-cells = <1>;
133*01950c46SEmmanuel Vadot
134*01950c46SEmmanuel Vadot					eeprom: eeprom@0 {
135*01950c46SEmmanuel Vadot						reg = <0x0 0x1000>;
136*01950c46SEmmanuel Vadot					};
137*01950c46SEmmanuel Vadot
138*01950c46SEmmanuel Vadot					macaddr: macaddr@4 {
139*01950c46SEmmanuel Vadot						reg = <0x4 0x6>;
140*01950c46SEmmanuel Vadot					};
141*01950c46SEmmanuel Vadot				};
142*01950c46SEmmanuel Vadot			};
143*01950c46SEmmanuel Vadot
144*01950c46SEmmanuel Vadot			partition@380000 {
145*01950c46SEmmanuel Vadot				reg = <0x380000 0x200000>;
146*01950c46SEmmanuel Vadot				label = "fip";
147*01950c46SEmmanuel Vadot			};
148*01950c46SEmmanuel Vadot
149*01950c46SEmmanuel Vadot			partition@580000 {
150*01950c46SEmmanuel Vadot				reg = <0x580000 0x4000000>;
151*01950c46SEmmanuel Vadot				label = "ubi";
152*01950c46SEmmanuel Vadot			};
153*01950c46SEmmanuel Vadot		};
154*01950c46SEmmanuel Vadot	};
155*01950c46SEmmanuel Vadot};
156*01950c46SEmmanuel Vadot
157*01950c46SEmmanuel Vadot&trng {
158*01950c46SEmmanuel Vadot	status = "okay";
159*01950c46SEmmanuel Vadot};
160*01950c46SEmmanuel Vadot
161*01950c46SEmmanuel Vadot&uart0 {
162*01950c46SEmmanuel Vadot	status = "okay";
163*01950c46SEmmanuel Vadot};
164*01950c46SEmmanuel Vadot
165*01950c46SEmmanuel Vadot&watchdog {
166*01950c46SEmmanuel Vadot	status = "okay";
167*01950c46SEmmanuel Vadot};
168*01950c46SEmmanuel Vadot
169*01950c46SEmmanuel Vadot&wifi {
170*01950c46SEmmanuel Vadot	nvmem-cells = <&eeprom>;
171*01950c46SEmmanuel Vadot	nvmem-cell-names = "eeprom";
172*01950c46SEmmanuel Vadot	status = "okay";
173*01950c46SEmmanuel Vadot};
174