// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
/*
 * Copyright (c) Christian Hewitt <christianshewitt@gmail.com>
 */

/dts-v1/;

#include "meson-gxm.dtsi"
#include "meson-gx-p23x-q20x.dtsi"
#include <dt-bindings/input/input.h>
#include <dt-bindings/leds/common.h>

/ {
	compatible = "azw,gt1-ultimate", "amlogic,s912", "amlogic,meson-gxm";
	model = "Beelink GT1 Ultimate";

	leds {
		compatible = "gpio-leds";

		led-white {
			color = <LED_COLOR_ID_WHITE>;
			function = LED_FUNCTION_POWER;
			gpios = <&gpio_ao GPIOAO_9 GPIO_ACTIVE_HIGH>;
			default-state = "on";
			panic-indicator;
		};
	};

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

		button-function {
			label = "update";
			linux,code = <KEY_VENDOR>;
			press-threshold-microvolt = <10000>;
		};
	};
};

&ethmac {
	pinctrl-0 = <&eth_pins>;
	pinctrl-names = "default";
	phy-handle = <&external_phy>;
	amlogic,tx-delay-ns = <2>;
	phy-mode = "rgmii";
};

&external_mdio {
	external_phy: ethernet-phy@0 {
		/* Realtek RTL8211F (0x001cc916) */
		reg = <0>;
		max-speed = <1000>;

		reset-assert-us = <10000>;
		reset-deassert-us = <80000>;
		reset-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_LOW>;

		interrupt-parent = <&gpio_intc>;
		/* MAC_INTR on GPIOZ_15 */
		interrupts = <25 IRQ_TYPE_LEVEL_LOW>;
	};
};

&ir {
	linux,rc-map-name = "rc-beelink-gs1";
};

&sd_emmc_a {
	brcmf: wifi@1 {
		reg = <1>;
		compatible = "brcm,bcm4329-fmac";
	};
};

&uart_A {
	status = "okay";
	pinctrl-0 = <&uart_a_pins>, <&uart_a_cts_rts_pins>;
	pinctrl-names = "default";
	uart-has-rtscts;

	bluetooth {
		compatible = "brcm,bcm43438-bt";
		shutdown-gpios = <&gpio GPIOX_17 GPIO_ACTIVE_HIGH>;
		max-speed = <2000000>;
		clocks = <&wifi32k>;
		clock-names = "lpo";
	};
};
