xref: /freebsd-src/sys/contrib/device-tree/src/riscv/allwinner/sun20i-d1-lichee-rv-dock.dts (revision 84943d6f38e936ac3b7a3947ca26eeb27a39f938)
1*84943d6fSEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2cb7aa33aSEmmanuel Vadot// Copyright (C) 2022 Jisheng Zhang <jszhang@kernel.org>
3cb7aa33aSEmmanuel Vadot// Copyright (C) 2022 Samuel Holland <samuel@sholland.org>
4cb7aa33aSEmmanuel Vadot
5cb7aa33aSEmmanuel Vadot#include <dt-bindings/input/input.h>
6cb7aa33aSEmmanuel Vadot
7cb7aa33aSEmmanuel Vadot#include "sun20i-d1-lichee-rv.dts"
8cb7aa33aSEmmanuel Vadot
9cb7aa33aSEmmanuel Vadot/ {
10cb7aa33aSEmmanuel Vadot	model = "Sipeed Lichee RV Dock";
11cb7aa33aSEmmanuel Vadot	compatible = "sipeed,lichee-rv-dock", "sipeed,lichee-rv",
12cb7aa33aSEmmanuel Vadot		     "allwinner,sun20i-d1";
13cb7aa33aSEmmanuel Vadot
14cb7aa33aSEmmanuel Vadot	aliases {
15cb7aa33aSEmmanuel Vadot		ethernet1 = &rtl8723ds;
16cb7aa33aSEmmanuel Vadot	};
17cb7aa33aSEmmanuel Vadot
18cb7aa33aSEmmanuel Vadot	dmic_codec: dmic-codec {
19cb7aa33aSEmmanuel Vadot		compatible = "dmic-codec";
20cb7aa33aSEmmanuel Vadot		num-channels = <2>;
21cb7aa33aSEmmanuel Vadot		#sound-dai-cells = <0>;
22cb7aa33aSEmmanuel Vadot	};
23cb7aa33aSEmmanuel Vadot
24cb7aa33aSEmmanuel Vadot	dmic-sound {
25cb7aa33aSEmmanuel Vadot		compatible = "simple-audio-card";
26cb7aa33aSEmmanuel Vadot		simple-audio-card,name = "DMIC";
27cb7aa33aSEmmanuel Vadot		#address-cells = <1>;
28cb7aa33aSEmmanuel Vadot		#size-cells = <0>;
29cb7aa33aSEmmanuel Vadot
30cb7aa33aSEmmanuel Vadot		simple-audio-card,dai-link@0 {
31cb7aa33aSEmmanuel Vadot			reg = <0>;
32cb7aa33aSEmmanuel Vadot			format = "pdm";
33cb7aa33aSEmmanuel Vadot			frame-master = <&link0_cpu>;
34cb7aa33aSEmmanuel Vadot			bitclock-master = <&link0_cpu>;
35cb7aa33aSEmmanuel Vadot
36cb7aa33aSEmmanuel Vadot			link0_cpu: cpu {
37cb7aa33aSEmmanuel Vadot				sound-dai = <&dmic>;
38cb7aa33aSEmmanuel Vadot			};
39cb7aa33aSEmmanuel Vadot
40cb7aa33aSEmmanuel Vadot			link0_codec: codec {
41cb7aa33aSEmmanuel Vadot				sound-dai = <&dmic_codec>;
42cb7aa33aSEmmanuel Vadot			};
43cb7aa33aSEmmanuel Vadot		};
44cb7aa33aSEmmanuel Vadot	};
45cb7aa33aSEmmanuel Vadot
46cb7aa33aSEmmanuel Vadot	wifi_pwrseq: wifi-pwrseq {
47cb7aa33aSEmmanuel Vadot		compatible = "mmc-pwrseq-simple";
48cb7aa33aSEmmanuel Vadot		reset-gpios = <&pio 6 12 GPIO_ACTIVE_LOW>; /* PG12 */
49cb7aa33aSEmmanuel Vadot	};
50cb7aa33aSEmmanuel Vadot};
51cb7aa33aSEmmanuel Vadot
52cb7aa33aSEmmanuel Vadot&dmic {
53cb7aa33aSEmmanuel Vadot	pinctrl-0 = <&dmic_pb11_d0_pin>, <&dmic_pe17_clk_pin>;
54cb7aa33aSEmmanuel Vadot	pinctrl-names = "default";
55cb7aa33aSEmmanuel Vadot	status = "okay";
56cb7aa33aSEmmanuel Vadot};
57cb7aa33aSEmmanuel Vadot
58cb7aa33aSEmmanuel Vadot&ehci1 {
59cb7aa33aSEmmanuel Vadot	status = "okay";
60cb7aa33aSEmmanuel Vadot};
61cb7aa33aSEmmanuel Vadot
62cb7aa33aSEmmanuel Vadot&mmc1 {
63cb7aa33aSEmmanuel Vadot	bus-width = <4>;
64cb7aa33aSEmmanuel Vadot	mmc-pwrseq = <&wifi_pwrseq>;
65cb7aa33aSEmmanuel Vadot	non-removable;
66cb7aa33aSEmmanuel Vadot	vmmc-supply = <&reg_vcc_3v3>;
67cb7aa33aSEmmanuel Vadot	vqmmc-supply = <&reg_vcc_3v3>;
68cb7aa33aSEmmanuel Vadot	pinctrl-0 = <&mmc1_pins>;
69cb7aa33aSEmmanuel Vadot	pinctrl-names = "default";
70cb7aa33aSEmmanuel Vadot	status = "okay";
71cb7aa33aSEmmanuel Vadot
72cb7aa33aSEmmanuel Vadot	rtl8723ds: wifi@1 {
73cb7aa33aSEmmanuel Vadot		reg = <1>;
74cb7aa33aSEmmanuel Vadot	};
75cb7aa33aSEmmanuel Vadot};
76cb7aa33aSEmmanuel Vadot
77cb7aa33aSEmmanuel Vadot&ohci1 {
78cb7aa33aSEmmanuel Vadot	status = "okay";
79cb7aa33aSEmmanuel Vadot};
80cb7aa33aSEmmanuel Vadot
81cb7aa33aSEmmanuel Vadot&uart1 {
82cb7aa33aSEmmanuel Vadot	uart-has-rtscts;
83cb7aa33aSEmmanuel Vadot	pinctrl-0 = <&uart1_pg6_pins>, <&uart1_pg8_rts_cts_pins>;
84cb7aa33aSEmmanuel Vadot	pinctrl-names = "default";
85cb7aa33aSEmmanuel Vadot	status = "okay";
86cb7aa33aSEmmanuel Vadot
87cb7aa33aSEmmanuel Vadot	bluetooth {
88cb7aa33aSEmmanuel Vadot		compatible = "realtek,rtl8723ds-bt";
89cb7aa33aSEmmanuel Vadot		device-wake-gpios = <&pio 6 15 GPIO_ACTIVE_HIGH>; /* PG16 */
90cb7aa33aSEmmanuel Vadot		enable-gpios = <&pio 6 18 GPIO_ACTIVE_HIGH>; /* PG18 */
91cb7aa33aSEmmanuel Vadot		host-wake-gpios = <&pio 6 17 GPIO_ACTIVE_HIGH>; /* PG17 */
92cb7aa33aSEmmanuel Vadot	};
93cb7aa33aSEmmanuel Vadot};
94cb7aa33aSEmmanuel Vadot
95cb7aa33aSEmmanuel Vadot&usbphy {
96cb7aa33aSEmmanuel Vadot	usb1_vbus-supply = <&reg_vcc>;
97cb7aa33aSEmmanuel Vadot};
98