// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
/*
 * Copyright (c) 2016 Andreas Färber
 * Copyright (c) 2016 BayLibre, Inc.
 * Author: Kevin Hilman <khilman@kernel.org>
 */

/dts-v1/;

#include "meson-gxbb-p20x.dtsi"
#include <dt-bindings/input/input.h>

/ {
	compatible = "amlogic,p200", "amlogic,meson-gxbb";
	model = "Amlogic Meson GXBB P200 Development Board";

	avdd18_usb_adc: regulator-avdd18_usb_adc {
		compatible = "regulator-fixed";
		regulator-name = "AVDD18_USB_ADC";
		regulator-min-microvolt = <1800000>;
		regulator-max-microvolt = <1800000>;
	};

	adc_keys {
		compatible = "adc-keys";
		io-channels = <&saradc 0>;
		io-channel-names = "buttons";
		keyup-threshold-microvolt = <1800000>;

		button-home {
			label = "Home";
			linux,code = <KEY_HOME>;
			press-threshold-microvolt = <900000>; /* 50% */
		};

		button-esc {
			label = "Esc";
			linux,code = <KEY_ESC>;
			press-threshold-microvolt = <684000>; /* 38% */
		};

		button-up {
			label = "Volume Up";
			linux,code = <KEY_VOLUMEUP>;
			press-threshold-microvolt = <468000>; /* 26% */
		};

		button-down {
			label = "Volume Down";
			linux,code = <KEY_VOLUMEDOWN>;
			press-threshold-microvolt = <252000>; /* 14% */
		};

		button-menu {
			label = "Menu";
			linux,code = <KEY_MENU>;
			press-threshold-microvolt = <0>; /* 0% */
		};
	};
};

&ethmac {
	status = "okay";
	pinctrl-0 = <&eth_rgmii_pins>;
	pinctrl-names = "default";
	phy-handle = <&eth_phy0>;
	phy-mode = "rgmii";

	amlogic,tx-delay-ns = <2>;

	snps,reset-gpio = <&gpio GPIOZ_14 0>;
	snps,reset-delays-us = <0 10000 1000000>;
	snps,reset-active-low;

	mdio {
		compatible = "snps,dwmac-mdio";
		#address-cells = <1>;
		#size-cells = <0>;

		eth_phy0: ethernet-phy@3 {
			/* Micrel KSZ9031 (0x00221620) */
			reg = <3>;
			interrupt-parent = <&gpio_intc>;
			/* MAC_INTR on GPIOZ_15 */
			interrupts = <29 IRQ_TYPE_LEVEL_LOW>;
		};
	};
};

&i2c_B {
	status = "okay";
	pinctrl-0 = <&i2c_b_pins>;
	pinctrl-names = "default";
};

&saradc {
	status = "okay";
	vref-supply = <&avdd18_usb_adc>;
};
