// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
/*
 * Copyright (c) 2019 Fuzhou Rockchip Electronics Co., Ltd
 * Copyright (c) 2019 Radxa Limited
 * Copyright (c) 2019 Amarula Solutions(India)
 */

/dts-v1/;
#include "rk3399-rock-pi-4.dtsi"

/ {
	model = "Radxa ROCK Pi 4C";
	compatible = "radxa,rockpi4c", "radxa,rockpi4", "rockchip,rk3399";

	aliases {
		mmc2 = &sdio0;
	};
};

&es8316 {
	pinctrl-0 = <&hp_detect &hp_int>;
	pinctrl-names = "default";
	interrupt-parent = <&gpio1>;
	interrupts = <RK_PA1 IRQ_TYPE_LEVEL_HIGH>;
};

&sdio0 {
	status = "okay";

	brcmf: wifi@1 {
		compatible = "brcm,bcm4329-fmac";
		reg = <1>;
		interrupt-parent = <&gpio0>;
		interrupts = <RK_PA3 IRQ_TYPE_LEVEL_HIGH>;
		interrupt-names = "host-wake";
		pinctrl-names = "default";
		pinctrl-0 = <&wifi_host_wake_l>;
	};
};

&sound {
	hp-det-gpio = <&gpio1 RK_PA0 GPIO_ACTIVE_HIGH>;
};

&uart0 {
	status = "okay";

	bluetooth {
		compatible = "brcm,bcm4345c5";
		clocks = <&rk808 1>;
		clock-names = "lpo";
		device-wakeup-gpios = <&gpio2 RK_PD3 GPIO_ACTIVE_HIGH>;
		host-wakeup-gpios = <&gpio0 RK_PA4 GPIO_ACTIVE_HIGH>;
		shutdown-gpios = <&gpio0 RK_PB1 GPIO_ACTIVE_HIGH>;
		max-speed = <1500000>;
		pinctrl-names = "default";
		pinctrl-0 = <&bt_host_wake_l &bt_wake_l &bt_enable_h>;
		vbat-supply = <&vcc3v3_sys>;
		vddio-supply = <&vcc_1v8>;
	};
};

&vcc5v0_host {
	gpio = <&gpio3 RK_PD6 GPIO_ACTIVE_HIGH>;
};

&vcc5v0_host_en {
	rockchip,pins = <3 RK_PD6 RK_FUNC_GPIO &pcfg_pull_none>;
};
