xref: /freebsd-src/sys/contrib/device-tree/src/arm/xilinx/zynq-ebaz4205.dts (revision f126890ac5386406dadf7c4cfa9566cbb56537c5)
1*f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0
2*f126890aSEmmanuel Vadot/*
3*f126890aSEmmanuel Vadot * Copyright (C) 2021 Michael Walle <michael@walle.cc>
4*f126890aSEmmanuel Vadot */
5*f126890aSEmmanuel Vadot/dts-v1/;
6*f126890aSEmmanuel Vadot/include/ "zynq-7000.dtsi"
7*f126890aSEmmanuel Vadot
8*f126890aSEmmanuel Vadot/ {
9*f126890aSEmmanuel Vadot	model = "Ebang EBAZ4205";
10*f126890aSEmmanuel Vadot	compatible = "ebang,ebaz4205", "xlnx,zynq-7000";
11*f126890aSEmmanuel Vadot
12*f126890aSEmmanuel Vadot	aliases {
13*f126890aSEmmanuel Vadot		ethernet0 = &gem0;
14*f126890aSEmmanuel Vadot		serial0 = &uart1;
15*f126890aSEmmanuel Vadot	};
16*f126890aSEmmanuel Vadot
17*f126890aSEmmanuel Vadot	memory@0 {
18*f126890aSEmmanuel Vadot		device_type = "memory";
19*f126890aSEmmanuel Vadot		reg = <0x0 0x10000000>;
20*f126890aSEmmanuel Vadot	};
21*f126890aSEmmanuel Vadot
22*f126890aSEmmanuel Vadot	chosen {
23*f126890aSEmmanuel Vadot		stdout-path = "serial0:115200n8";
24*f126890aSEmmanuel Vadot	};
25*f126890aSEmmanuel Vadot};
26*f126890aSEmmanuel Vadot
27*f126890aSEmmanuel Vadot&clkc {
28*f126890aSEmmanuel Vadot	ps-clk-frequency = <33333333>;
29*f126890aSEmmanuel Vadot	fclk-enable = <8>;
30*f126890aSEmmanuel Vadot};
31*f126890aSEmmanuel Vadot
32*f126890aSEmmanuel Vadot&gem0 {
33*f126890aSEmmanuel Vadot	status = "okay";
34*f126890aSEmmanuel Vadot	phy-mode = "mii";
35*f126890aSEmmanuel Vadot	phy-handle = <&phy>;
36*f126890aSEmmanuel Vadot
37*f126890aSEmmanuel Vadot	/* PHY clock */
38*f126890aSEmmanuel Vadot	assigned-clocks = <&clkc 18>;
39*f126890aSEmmanuel Vadot	assigned-clock-rates = <25000000>;
40*f126890aSEmmanuel Vadot
41*f126890aSEmmanuel Vadot	phy: ethernet-phy@0 {
42*f126890aSEmmanuel Vadot		reg = <0>;
43*f126890aSEmmanuel Vadot	};
44*f126890aSEmmanuel Vadot};
45*f126890aSEmmanuel Vadot
46*f126890aSEmmanuel Vadot&gpio0 {
47*f126890aSEmmanuel Vadot	pinctrl-names = "default";
48*f126890aSEmmanuel Vadot	pinctrl-0 = <&pinctrl_gpio0_default>;
49*f126890aSEmmanuel Vadot};
50*f126890aSEmmanuel Vadot
51*f126890aSEmmanuel Vadot&nfc0 {
52*f126890aSEmmanuel Vadot	status = "okay";
53*f126890aSEmmanuel Vadot
54*f126890aSEmmanuel Vadot	nand@0 {
55*f126890aSEmmanuel Vadot		reg = <0>;
56*f126890aSEmmanuel Vadot	};
57*f126890aSEmmanuel Vadot};
58*f126890aSEmmanuel Vadot
59*f126890aSEmmanuel Vadot&pinctrl0 {
60*f126890aSEmmanuel Vadot	pinctrl_gpio0_default: gpio0-default {
61*f126890aSEmmanuel Vadot		mux {
62*f126890aSEmmanuel Vadot			groups = "gpio0_20_grp", "gpio0_32_grp";
63*f126890aSEmmanuel Vadot			function = "gpio0";
64*f126890aSEmmanuel Vadot		};
65*f126890aSEmmanuel Vadot
66*f126890aSEmmanuel Vadot		conf {
67*f126890aSEmmanuel Vadot			groups = "gpio0_20_grp", "gpio0_32_grp";
68*f126890aSEmmanuel Vadot			io-standard = <3>;
69*f126890aSEmmanuel Vadot			slew-rate = <0>;
70*f126890aSEmmanuel Vadot		};
71*f126890aSEmmanuel Vadot
72*f126890aSEmmanuel Vadot		conf-pull-up {
73*f126890aSEmmanuel Vadot			pins = "MIO20", "MIO32";
74*f126890aSEmmanuel Vadot			bias-disable;
75*f126890aSEmmanuel Vadot		};
76*f126890aSEmmanuel Vadot	};
77*f126890aSEmmanuel Vadot
78*f126890aSEmmanuel Vadot	pinctrl_sdhci0_default: sdhci0-default {
79*f126890aSEmmanuel Vadot		mux {
80*f126890aSEmmanuel Vadot			groups = "sdio0_2_grp";
81*f126890aSEmmanuel Vadot			function = "sdio0";
82*f126890aSEmmanuel Vadot		};
83*f126890aSEmmanuel Vadot
84*f126890aSEmmanuel Vadot		conf {
85*f126890aSEmmanuel Vadot			groups = "sdio0_2_grp";
86*f126890aSEmmanuel Vadot			io-standard = <3>;
87*f126890aSEmmanuel Vadot			slew-rate = <0>;
88*f126890aSEmmanuel Vadot			bias-disable;
89*f126890aSEmmanuel Vadot		};
90*f126890aSEmmanuel Vadot
91*f126890aSEmmanuel Vadot		mux-cd {
92*f126890aSEmmanuel Vadot			groups = "gpio0_34_grp";
93*f126890aSEmmanuel Vadot			function = "sdio0_cd";
94*f126890aSEmmanuel Vadot		};
95*f126890aSEmmanuel Vadot
96*f126890aSEmmanuel Vadot		conf-cd {
97*f126890aSEmmanuel Vadot			groups = "gpio0_34_grp";
98*f126890aSEmmanuel Vadot			io-standard = <3>;
99*f126890aSEmmanuel Vadot			slew-rate = <0>;
100*f126890aSEmmanuel Vadot			bias-high-impedance;
101*f126890aSEmmanuel Vadot			bias-pull-up;
102*f126890aSEmmanuel Vadot		};
103*f126890aSEmmanuel Vadot	};
104*f126890aSEmmanuel Vadot
105*f126890aSEmmanuel Vadot	pinctrl_uart1_default: uart1-default {
106*f126890aSEmmanuel Vadot		mux {
107*f126890aSEmmanuel Vadot			groups = "uart1_4_grp";
108*f126890aSEmmanuel Vadot			function = "uart1";
109*f126890aSEmmanuel Vadot		};
110*f126890aSEmmanuel Vadot
111*f126890aSEmmanuel Vadot		conf {
112*f126890aSEmmanuel Vadot			groups = "uart1_4_grp";
113*f126890aSEmmanuel Vadot			io-standard = <3>;
114*f126890aSEmmanuel Vadot			slew-rate = <0>;
115*f126890aSEmmanuel Vadot		};
116*f126890aSEmmanuel Vadot
117*f126890aSEmmanuel Vadot		conf-rx {
118*f126890aSEmmanuel Vadot			pins = "MIO25";
119*f126890aSEmmanuel Vadot			bias-high-impedance;
120*f126890aSEmmanuel Vadot		};
121*f126890aSEmmanuel Vadot
122*f126890aSEmmanuel Vadot		conf-tx {
123*f126890aSEmmanuel Vadot			pins = "MIO24";
124*f126890aSEmmanuel Vadot			bias-disable;
125*f126890aSEmmanuel Vadot		};
126*f126890aSEmmanuel Vadot	};
127*f126890aSEmmanuel Vadot};
128*f126890aSEmmanuel Vadot
129*f126890aSEmmanuel Vadot&smcc {
130*f126890aSEmmanuel Vadot	status = "okay";
131*f126890aSEmmanuel Vadot};
132*f126890aSEmmanuel Vadot
133*f126890aSEmmanuel Vadot&sdhci0 {
134*f126890aSEmmanuel Vadot	status = "okay";
135*f126890aSEmmanuel Vadot	disable-wp;
136*f126890aSEmmanuel Vadot	pinctrl-names = "default";
137*f126890aSEmmanuel Vadot	pinctrl-0 = <&pinctrl_sdhci0_default>;
138*f126890aSEmmanuel Vadot};
139*f126890aSEmmanuel Vadot
140*f126890aSEmmanuel Vadot&uart1 {
141*f126890aSEmmanuel Vadot	status = "okay";
142*f126890aSEmmanuel Vadot	pinctrl-names = "default";
143*f126890aSEmmanuel Vadot	pinctrl-0 = <&pinctrl_uart1_default>;
144*f126890aSEmmanuel Vadot};
145