summaryrefslogtreecommitdiffstats
path: root/arch/arm64/boot/dts/allwinner/sun50i-h700-anbernic-rg35xx-plus.dts
blob: 60a8e492210375253362974f25f7e2b5b18ddb24 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
// SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
/*
 * Copyright (C) 2024 Ryan Walklin <ryan@testtoast.com>.
 */

#include "sun50i-h700-anbernic-rg35xx-2024.dts"

/ {
	model = "Anbernic RG35XX Plus";
	compatible = "anbernic,rg35xx-plus", "allwinner,sun50i-h700";

	wifi_pwrseq: pwrseq {
		compatible = "mmc-pwrseq-simple";
		clocks = <&rtc CLK_OSC32K_FANOUT>;
		clock-names = "ext_clock";
		pinctrl-0 = <&x32clk_fanout_pin>;
		pinctrl-names = "default";
		post-power-on-delay-ms = <200>;
		reset-gpios = <&pio 6 18 GPIO_ACTIVE_LOW>; /* PG18 */
	};
};

/* SDIO WiFi RTL8821CS */
&mmc1 {
	vmmc-supply = <&reg_cldo4>;
	vqmmc-supply = <&reg_aldo4>;
	mmc-pwrseq = <&wifi_pwrseq>;
	bus-width = <4>;
	non-removable;
	status = "okay";

	sdio_wifi: wifi@1 {
		reg = <1>;
		interrupt-parent = <&pio>;
		interrupts = <6 15 IRQ_TYPE_LEVEL_LOW>; /* PG15 */
		interrupt-names = "host-wake";
	};
};

/* Bluetooth RTL8821CS */
&uart1 {
	pinctrl-names = "default";
	pinctrl-0 = <&uart1_pins>, <&uart1_rts_cts_pins>;
	uart-has-rtscts;
	status = "okay";

	bluetooth {
		compatible = "realtek,rtl8821cs-bt", "realtek,rtl8723bs-bt";
		device-wake-gpios = <&pio 6 17 GPIO_ACTIVE_HIGH>; /* PG17 */
		enable-gpios = <&pio 6 19 GPIO_ACTIVE_HIGH>; /* PG19 */
		host-wake-gpios = <&pio 6 16 GPIO_ACTIVE_HIGH>; /* PG16 */
	};
};