1// SPDX-License-Identifier: GPL-2.0
2/*
3 * Copyright (C) 2021 Corentin Labbe <clabbe@baylibre.com>
4 * Device Tree file for Edimax NS 2502
5 */
6
7/dts-v1/;
8
9#include "gemini.dtsi"
10
11/ {
12	model = "Edimax NS-2502";
13	compatible = "edimax,ns-2502", "cortina,gemini";
14	#address-cells = <1>;
15	#size-cells = <1>;
16
17	memory@0 {
18		/* 128 MB */
19		device_type = "memory";
20		reg = <0x00000000 0x8000000>;
21	};
22
23	aliases {
24		mdio-gpio0 = &mdio0;
25	};
26
27	chosen {
28		bootargs = "console=ttyS0,19200n8";
29		stdout-path = &uart0;
30	};
31
32	mdio0: mdio {
33		compatible = "virtual,mdio-gpio";
34		gpios = <&gpio0 22 GPIO_ACTIVE_HIGH>, /* MDC */
35			<&gpio0 21 GPIO_ACTIVE_HIGH>; /* MDIO */
36		#address-cells = <1>;
37		#size-cells = <0>;
38
39		phy0: ethernet-phy@1 {
40			reg = <1>;
41			device_type = "ethernet-phy";
42		};
43	};
44};
45
46&ethernet {
47	status = "okay";
48	ethernet-port@0 {
49		phy-mode = "rgmii-id";
50		phy-handle = <&phy0>;
51	};
52};
53
54&flash {
55	status = "okay";
56	/* 8MB of flash */
57	reg = <0x30000000 0x00800000>;
58
59	pinctrl-names = "enabled", "disabled";
60	pinctrl-0 = <&pflash_default_pins>;
61	pinctrl-1 = <&pflash_disabled_pins>;
62
63	partitions {
64		compatible = "redboot-fis";
65		/* Eraseblock at 0x7e0000 */
66		fis-index-block = <0x3f>;
67	};
68};
69
70&gpio0 {
71	pinctrl-names = "default";
72	pinctrl-0 = <&gpio0_default_pins>;
73};
74
75&ide0 {
76	status = "okay";
77};
78
79&ide1 {
80	status = "okay";
81};
82
83&sata {
84	cortina,gemini-ata-muxmode = <3>;
85	cortina,gemini-enable-sata-bridge;
86	status = "okay";
87};
88
89&syscon {
90	pinctrl {
91		/*
92		 * gpio0agrp cover line 0-4
93		 * gpio0bgrp cover line 5
94		 */
95		gpio0_default_pins: pinctrl-gpio0 {
96			    mux {
97				    function = "gpio0";
98				    groups = "gpio0agrp", "gpio0bgrp", "gpio0hgrp";
99			    };
100		};
101		pflash_disabled_pins: pinctrl-pflash-disabled {
102			mux {
103				function = "gpio0";
104				groups = "gpio0ggrp", "gpio0igrp", "gpio0jgrp",
105					 "gpio0kgrp";
106			};
107		};
108		pinctrl-gmii {
109			mux {
110				function = "gmii";
111				groups = "gmii_gmac0_grp";
112				};
113		};
114	};
115};
116
117&usb0 {
118	status = "okay";
119};
120
121&usb1 {
122	status = "okay";
123};
124