// SPDX-License-Identifier: GPL-2.0+ or X11
/*
 * Device Tree file for CZ.NIC' RIPE Atlas Probe
 * 2021 by Marek Behún <marek.behun@nic.cz>
 */

/dts-v1/;

#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/leds/common.h>
#include "armada-372x.dtsi"

/ {
	model = "CZ.NIC's RIPE Atlas Probe";
	compatible = "cznic,ripe-atlas", "marvell,armada3720",
		     "marvell,armada3710";

	aliases {
		ethernet0 = &eth0;
		mmc0 = &sdhci0;
	};

	chosen {
		stdout-path = "serial0:115200n8";
	};

	memory {
		device_type = "memory";
		reg = <0x00000000 0x00000000 0x00000000 0x20000000>;
	};

	leds {
		compatible = "gpio-leds";

		led {
			gpios = <&gpiosb 21 GPIO_ACTIVE_LOW>;
			color = <LED_COLOR_ID_RED>;
			function = LED_FUNCTION_ACTIVITY;
		};
	};

	vsdc_reg: vsdc-reg {
		compatible = "regulator-gpio";
		regulator-name = "vsdc";
		regulator-min-microvolt = <1800000>;
		regulator-max-microvolt = <3300000>;
		regulator-boot-on;

		gpios = <&gpiosb 23 GPIO_ACTIVE_HIGH>;
		gpios-states = <0>;
		states = <1800000 0x1
			  3300000 0x0>;
		enable-active-high;
	};
};

&comphy {
	status = "disabled";
};

&mdio {
	pinctrl-names = "default";
	pinctrl-0 = <&smi_pins>;
	status = "okay";

	phy1: ethernet-phy@1 {
		reg = <1>;
	};
};

&eth0 {
	pinctrl-names = "default";
	pinctrl-0 = <&rgmii_pins>;
	phy-mode = "rgmii";
	phy-handle = <&phy1>;
	status = "okay";
};

&sdhci0 {
	bus-width = <8>;
	non-removable;
	vqmmc-supply = <&vsdc_reg>;
	marvell,pad-type = "sd";
	status = "okay";
};

&uart0 {
	pinctrl-names = "default";
	pinctrl-0 = <&uart1_pins>;
	status = "okay";
};
