1// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
2/*
3 * DTSI for Emlid Neutis N5 SoM.
4 *
5 * Copyright (C) 2018 Aleksandr Aleksandrov <aleksandr.aleksandrov@emlid.com>
6 */
7
8/dts-v1/;
9
10#include "sun50i-h5.dtsi"
11
12#include <dt-bindings/gpio/gpio.h>
13
14/ {
15	reg_vcc3v3: vcc3v3 {
16		compatible = "regulator-fixed";
17		regulator-name = "vcc3v3";
18		regulator-min-microvolt = <3300000>;
19		regulator-max-microvolt = <3300000>;
20	};
21
22	wifi_pwrseq: wifi_pwrseq {
23		compatible = "mmc-pwrseq-simple";
24		reset-gpios = <&pio 2 7 GPIO_ACTIVE_LOW>; /* PC7 */
25		post-power-on-delay-ms = <200>;
26		clocks = <&rtc 1>;
27		clock-names = "ext_clock";
28	};
29};
30
31&mmc1 {
32	vmmc-supply = <&reg_vcc3v3>;
33	vqmmc-supply = <&reg_vcc3v3>;
34	mmc-pwrseq = <&wifi_pwrseq>;
35	bus-width = <4>;
36	non-removable;
37	status = "okay";
38
39	brcmf: wifi@1 {
40		reg = <1>;
41		compatible = "brcm,bcm4329-fmac";
42		interrupt-parent = <&r_pio>;
43		interrupts = <0 5 IRQ_TYPE_LEVEL_LOW>;	/* PL5 */
44		interrupt-names = "host-wake";
45	};
46};
47
48&mmc2 {
49	pinctrl-names = "default";
50	pinctrl-0 = <&mmc2_8bit_pins>;
51	vmmc-supply = <&reg_vcc3v3>;
52	bus-width = <8>;
53	non-removable;
54	cap-mmc-hw-reset;
55	status = "okay";
56};
57
58&uart1 {
59	pinctrl-names = "default";
60	pinctrl-0 = <&uart1_pins>, <&uart1_rts_cts_pins>;
61	uart-has-rtscts;
62	status = "okay";
63
64	bluetooth {
65		compatible = "brcm,bcm43438-bt";
66		clocks = <&rtc 1>;
67		clock-names = "lpo";
68		vbat-supply = <&reg_vcc3v3>;
69		vddio-supply = <&reg_vcc3v3>;
70		shutdown-gpios = <&pio 2 4 GPIO_ACTIVE_HIGH>; /* PC4 */
71		device-wakeup-gpios = <&r_pio 0 7 GPIO_ACTIVE_HIGH>; /* PL7 */
72	};
73};
74