// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
/*
 * FriendlyElec NanoPC-T4 board device tree source
 *
 * Copyright (c) 2020 FriendlyElec Computer Tech. Co., Ltd.
 * (http://www.friendlyarm.com)
 *
 * Copyright (c) 2018 Collabora Ltd.
 *
 * Copyright (c) 2020 Jensen Huang <jensenhuang@friendlyarm.com>
 * Copyright (c) 2020 Marty Jones <mj8263788@gmail.com>
 * Copyright (c) 2021 Tianling Shen <cnsztl@gmail.com>
 */

/dts-v1/;
#include "rk3399-nanopi4.dtsi"

/ {
	model = "FriendlyElec NanoPi R4S";
	compatible = "friendlyarm,nanopi-r4s", "rockchip,rk3399";

	/delete-node/ display-subsystem;

	gpio-leds {
		pinctrl-0 = <&lan_led_pin>, <&sys_led_pin>, <&wan_led_pin>;

		/delete-node/ led-0;

		lan_led: led-lan {
			gpios = <&gpio1 RK_PA1 GPIO_ACTIVE_HIGH>;
			label = "green:lan";
		};

		sys_led: led-sys {
			gpios = <&gpio0 RK_PB5 GPIO_ACTIVE_HIGH>;
			label = "red:power";
			default-state = "on";
		};

		wan_led: led-wan {
			gpios = <&gpio1 RK_PA0 GPIO_ACTIVE_HIGH>;
			label = "green:wan";
		};
	};

	gpio-keys {
		pinctrl-0 = <&reset_button_pin>;

		/delete-node/ power;

		reset {
			debounce-interval = <50>;
			gpios = <&gpio1 RK_PC6 GPIO_ACTIVE_LOW>;
			label = "reset";
			linux,code = <KEY_RESTART>;
		};
	};

	vdd_5v: vdd-5v {
		compatible = "regulator-fixed";
		regulator-name = "vdd_5v";
		regulator-always-on;
		regulator-boot-on;
	};
};

&emmc_phy {
	status = "disabled";
};

&i2c4 {
	status = "disabled";
};

&pcie0 {
	max-link-speed = <1>;
	num-lanes = <1>;
	vpcie3v3-supply = <&vcc3v3_sys>;
};

&pinctrl {
	gpio-leds {
		/delete-node/ status-led-pin;

		lan_led_pin: lan-led-pin {
			rockchip,pins = <1 RK_PA1 RK_FUNC_GPIO &pcfg_pull_none>;
		};

		sys_led_pin: sys-led-pin {
			rockchip,pins = <0 RK_PB5 RK_FUNC_GPIO &pcfg_pull_none>;
		};

		wan_led_pin: wan-led-pin {
			rockchip,pins = <1 RK_PA0 RK_FUNC_GPIO &pcfg_pull_none>;
		};
	};

	rockchip-key {
		/delete-node/ power-key;

		reset_button_pin: reset-button-pin {
			rockchip,pins = <1 RK_PC6 RK_FUNC_GPIO &pcfg_pull_up>;
		};
	};
};

&sdhci {
	status = "disabled";
};

&sdio0 {
	status = "disabled";
};

&u2phy0_host {
	phy-supply = <&vdd_5v>;
};

&u2phy1_host {
	status = "disabled";
};

&uart0 {
	status = "disabled";
};

&usbdrd_dwc3_0 {
	dr_mode = "host";
};

&vcc3v3_sys {
	vin-supply = <&vcc5v0_sys>;
};
