xref: /linux/arch/arm64/boot/dts/amlogic/meson-gxm-tx9-pro.dts (revision 0cac5ce06e524755b3dac1e0a060b05992076d93)
1// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2/*
3 * Copyright (c) 2016 Endless Computers, Inc.
4 * Author: Carlo Caione <carlo@endlessm.com>
5 */
6
7/dts-v1/;
8
9#include "meson-gxm.dtsi"
10#include "meson-gx-p23x-q20x.dtsi"
11#include <dt-bindings/input/input.h>
12
13/ {
14	compatible = "oranth,tx9-pro", "amlogic,s912", "amlogic,meson-gxm";
15	model = "Tanix TX9 Pro";
16
17	adc-keys {
18		compatible = "adc-keys";
19		io-channels = <&saradc 0>;
20		io-channel-names = "buttons";
21		keyup-threshold-microvolt = <1710000>;
22
23		button-function {
24			label = "Update";
25			linux,code = <KEY_VENDOR>;
26			press-threshold-microvolt = <10000>;
27		};
28	};
29
30	gpio-keys-polled {
31		compatible = "gpio-keys-polled";
32		poll-interval = <100>;
33
34		button {
35			label = "power";
36			linux,code = <KEY_POWER>;
37			gpios = <&gpio_ao GPIOAO_2 GPIO_ACTIVE_LOW>;
38		};
39	};
40};
41
42&ethmac {
43	pinctrl-0 = <&eth_pins>;
44	pinctrl-names = "default";
45	phy-handle = <&external_phy>;
46	amlogic,tx-delay-ns = <2>;
47	phy-mode = "rgmii";
48};
49
50&external_mdio {
51	external_phy: ethernet-phy@0 {
52		/* Realtek RTL8211F (0x001cc916) */
53		reg = <0>;
54		max-speed = <1000>;
55
56		reset-assert-us = <10000>;
57		reset-deassert-us = <80000>;
58		reset-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_LOW>;
59
60		interrupt-parent = <&gpio_intc>;
61		/* MAC_INTR on GPIOZ_15 */
62		interrupts = <25 IRQ_TYPE_LEVEL_LOW>;
63	};
64};
65
66&ir {
67	linux,rc-map-name = "rc-tanix-tx3mini";
68};
69
70&sd_emmc_a {
71	brcmf: wifi@1 {
72		reg = <1>;
73		compatible = "brcm,bcm4329-fmac";
74	};
75};
76
77&uart_A {
78	status = "okay";
79	pinctrl-0 = <&uart_a_pins>, <&uart_a_cts_rts_pins>;
80	pinctrl-names = "default";
81	uart-has-rtscts;
82
83	bluetooth {
84		compatible = "brcm,bcm43438-bt";
85		shutdown-gpios = <&gpio GPIOX_17 GPIO_ACTIVE_HIGH>;
86		max-speed = <2000000>;
87		clocks = <&wifi32k>;
88		clock-names = "lpo";
89	};
90};
91