blob: 10116fb3935a2d201d6b74c09526c374843eec08 [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2// Copyright (C) 2022 Samuel Holland <samuel@sholland.org>
3
4#include "sun20i-d1-lichee-rv.dts"
5
6/ {
7 aliases {
8 ethernet0 = &emac;
9 ethernet1 = &xr829;
10 };
11
12 dmic_codec: dmic-codec {
13 compatible = "dmic-codec";
14 num-channels = <2>;
15 #sound-dai-cells = <0>;
16 };
17
18 dmic-sound {
19 compatible = "simple-audio-card";
20 simple-audio-card,name = "DMIC";
21 #address-cells = <1>;
22 #size-cells = <0>;
23
24 simple-audio-card,dai-link@0 {
25 reg = <0>;
26 format = "pdm";
27 frame-master = <&link0_cpu>;
28 bitclock-master = <&link0_cpu>;
29
30 link0_cpu: cpu {
31 sound-dai = <&dmic>;
32 };
33
34 link0_codec: codec {
35 sound-dai = <&dmic_codec>;
36 };
37 };
38 };
39
40 /* PC1 is repurposed as BT_WAKE_AP */
41 /delete-node/ leds;
42
43 wifi_pwrseq: wifi-pwrseq {
44 compatible = "mmc-pwrseq-simple";
45 clocks = <&ccu CLK_FANOUT1>;
46 clock-names = "ext_clock";
47 reset-gpios = <&pio 6 12 GPIO_ACTIVE_LOW>; /* PG12 */
48 assigned-clocks = <&ccu CLK_FANOUT1>;
49 assigned-clock-rates = <32768>;
50 pinctrl-0 = <&clk_pg11_pin>;
51 pinctrl-names = "default";
52 };
53};
54
55&dmic {
56 pinctrl-0 = <&dmic_pb11_d0_pin>, <&dmic_pe17_clk_pin>;
57 pinctrl-names = "default";
58 status = "okay";
59};
60
61&ehci1 {
62 status = "okay";
63};
64
65&emac {
66 pinctrl-0 = <&rmii_pe_pins>;
67 pinctrl-names = "default";
68 phy-handle = <&ext_rmii_phy>;
69 phy-mode = "rmii";
70 phy-supply = <&reg_vcc_3v3>;
71 status = "okay";
72};
73
74&mdio {
75 ext_rmii_phy: ethernet-phy@1 {
76 compatible = "ethernet-phy-ieee802.3-c22";
77 reg = <1>;
78 reset-gpios = <&pio 4 16 GPIO_ACTIVE_LOW>; /* PE16 */
79 };
80};
81
82&mmc1 {
83 bus-width = <4>;
84 mmc-pwrseq = <&wifi_pwrseq>;
85 non-removable;
86 vmmc-supply = <&reg_vcc_3v3>;
87 vqmmc-supply = <&reg_vcc_3v3>;
88 pinctrl-0 = <&mmc1_pins>;
89 pinctrl-names = "default";
90 status = "okay";
91
92 xr829: wifi@1 {
93 reg = <1>;
94 };
95};
96
97&ohci1 {
98 status = "okay";
99};
100
101&uart1 {
102 uart-has-rtscts;
103 pinctrl-0 = <&uart1_pg6_pins>, <&uart1_pg8_rts_cts_pins>;
104 pinctrl-names = "default";
105 status = "okay";
106
107 /* XR829 bluetooth is connected here */
108};
109
110&usb_otg {
111 status = "disabled";
112};
113
114&usbphy {
115 /* PD20 and PD21 are repurposed for the LCD panel */
116 /delete-property/ usb0_id_det-gpios;
117 /delete-property/ usb0_vbus_det-gpios;
118 usb1_vbus-supply = <&reg_vcc>;
119};