1*d5454e7cSChristian Hewitt// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2*d5454e7cSChristian Hewitt
3*d5454e7cSChristian Hewitt/*
4*d5454e7cSChristian Hewitt * Author: Christian Hewitt <christianshewitt@gmail.com>
5*d5454e7cSChristian Hewitt */
6*d5454e7cSChristian Hewitt
7*d5454e7cSChristian Hewitt/dts-v1/;
8*d5454e7cSChristian Hewitt
9*d5454e7cSChristian Hewitt#include "meson-gxl-s905d.dtsi"
10*d5454e7cSChristian Hewitt#include "meson-gx-p23x-q20x.dtsi"
11*d5454e7cSChristian Hewitt#include <dt-bindings/input/input.h>
12*d5454e7cSChristian Hewitt#include <dt-bindings/leds/common.h>
13*d5454e7cSChristian Hewitt
14*d5454e7cSChristian Hewitt/ {
15*d5454e7cSChristian Hewitt	compatible = "videostrong,gxl-kii-pro", "amlogic,s905d", "amlogic,meson-gxl";
16*d5454e7cSChristian Hewitt	model = "MeCool KII Pro";
17*d5454e7cSChristian Hewitt
18*d5454e7cSChristian Hewitt	adc-keys {
19*d5454e7cSChristian Hewitt		compatible = "adc-keys";
20*d5454e7cSChristian Hewitt		io-channels = <&saradc 0>;
21*d5454e7cSChristian Hewitt		io-channel-names = "buttons";
22*d5454e7cSChristian Hewitt		keyup-threshold-microvolt = <1710000>;
23*d5454e7cSChristian Hewitt
24*d5454e7cSChristian Hewitt		button-function {
25*d5454e7cSChristian Hewitt			label = "Update";
26*d5454e7cSChristian Hewitt			linux,code = <KEY_VENDOR>;
27*d5454e7cSChristian Hewitt			press-threshold-microvolt = <10000>;
28*d5454e7cSChristian Hewitt		};
29*d5454e7cSChristian Hewitt	};
30*d5454e7cSChristian Hewitt
31*d5454e7cSChristian Hewitt	gpio-keys-polled {
32*d5454e7cSChristian Hewitt		compatible = "gpio-keys-polled";
33*d5454e7cSChristian Hewitt		#address-cells = <1>;
34*d5454e7cSChristian Hewitt		#size-cells = <0>;
35*d5454e7cSChristian Hewitt		poll-interval = <100>;
36*d5454e7cSChristian Hewitt
37*d5454e7cSChristian Hewitt		button@0 {
38*d5454e7cSChristian Hewitt			label = "power";
39*d5454e7cSChristian Hewitt			linux,code = <KEY_POWER>;
40*d5454e7cSChristian Hewitt			gpios = <&gpio_ao GPIOAO_2 GPIO_ACTIVE_LOW>;
41*d5454e7cSChristian Hewitt		};
42*d5454e7cSChristian Hewitt	};
43*d5454e7cSChristian Hewitt
44*d5454e7cSChristian Hewitt	leds {
45*d5454e7cSChristian Hewitt		compatible = "gpio-leds";
46*d5454e7cSChristian Hewitt
47*d5454e7cSChristian Hewitt		blue {
48*d5454e7cSChristian Hewitt			color = <LED_COLOR_ID_BLUE>;
49*d5454e7cSChristian Hewitt			function = LED_FUNCTION_POWER;
50*d5454e7cSChristian Hewitt			gpios = <&gpio GPIODV_24 GPIO_ACTIVE_HIGH>;
51*d5454e7cSChristian Hewitt			default-state = "on";
52*d5454e7cSChristian Hewitt			panic-indicator;
53*d5454e7cSChristian Hewitt		};
54*d5454e7cSChristian Hewitt	};
55*d5454e7cSChristian Hewitt};
56*d5454e7cSChristian Hewitt
57*d5454e7cSChristian Hewitt&ethmac {
58*d5454e7cSChristian Hewitt	phy-mode = "rmii";
59*d5454e7cSChristian Hewitt	phy-handle = <&internal_phy>;
60*d5454e7cSChristian Hewitt};
61*d5454e7cSChristian Hewitt
62*d5454e7cSChristian Hewitt&ir {
63*d5454e7cSChristian Hewitt	linux,rc-map-name = "rc-mecool-kii-pro";
64*d5454e7cSChristian Hewitt};
65*d5454e7cSChristian Hewitt
66*d5454e7cSChristian Hewitt&sd_emmc_a {
67*d5454e7cSChristian Hewitt	brcmf: wifi@1 {
68*d5454e7cSChristian Hewitt		reg = <1>;
69*d5454e7cSChristian Hewitt		compatible = "brcm,bcm4329-fmac";
70*d5454e7cSChristian Hewitt	};
71*d5454e7cSChristian Hewitt};
72*d5454e7cSChristian Hewitt
73*d5454e7cSChristian Hewitt&uart_A {
74*d5454e7cSChristian Hewitt	status = "okay";
75*d5454e7cSChristian Hewitt	pinctrl-0 = <&uart_a_pins>, <&uart_a_cts_rts_pins>;
76*d5454e7cSChristian Hewitt	pinctrl-names = "default";
77*d5454e7cSChristian Hewitt	uart-has-rtscts;
78*d5454e7cSChristian Hewitt
79*d5454e7cSChristian Hewitt	bluetooth {
80*d5454e7cSChristian Hewitt		compatible = "brcm,bcm43438-bt";
81*d5454e7cSChristian Hewitt		shutdown-gpios = <&gpio GPIOX_17 GPIO_ACTIVE_HIGH>;
82*d5454e7cSChristian Hewitt		max-speed = <2000000>;
83*d5454e7cSChristian Hewitt		clocks = <&wifi32k>;
84*d5454e7cSChristian Hewitt		clock-names = "lpo";
85*d5454e7cSChristian Hewitt	};
86*d5454e7cSChristian Hewitt};
87