1// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2/*
3 * Copyright (c) 2016 BayLibre, Inc.
4 * Author: Neil Armstrong <narmstrong@baylibre.com>
5 */
6
7/dts-v1/;
8
9#include "meson-gxbb-wetek.dtsi"
10#include <dt-bindings/input/input.h>
11#include <dt-bindings/sound/meson-aiu.h>
12
13/ {
14	compatible = "wetek,play2", "amlogic,meson-gxbb";
15	model = "WeTek Play 2";
16
17	spdif_dit: audio-codec-0 {
18		#sound-dai-cells = <0>;
19		compatible = "linux,spdif-dit";
20		status = "okay";
21		sound-name-prefix = "DIT";
22	};
23
24	leds {
25		led-wifi {
26			label = "wetek-play:wifi-status";
27			gpios = <&gpio GPIODV_26 GPIO_ACTIVE_HIGH>;
28			default-state = "off";
29		};
30
31		led-ethernet {
32			label = "wetek-play:ethernet-status";
33			gpios = <&gpio GPIODV_27 GPIO_ACTIVE_HIGH>;
34			default-state = "off";
35		};
36	};
37
38	gpio-keys-polled {
39		compatible = "gpio-keys-polled";
40		#address-cells = <1>;
41		#size-cells = <0>;
42		poll-interval = <100>;
43
44		button@0 {
45			label = "reset";
46			linux,code = <KEY_RESTART>;
47			gpios = <&gpio_ao GPIOAO_3 GPIO_ACTIVE_LOW>;
48		};
49	};
50
51	sound {
52		compatible = "amlogic,gx-sound-card";
53		model = "GXBB-WETEK-PLAY2";
54		assigned-clocks = <&clkc CLKID_MPLL0>,
55				  <&clkc CLKID_MPLL1>,
56				  <&clkc CLKID_MPLL2>;
57		assigned-clock-parents = <0>, <0>, <0>;
58		assigned-clock-rates = <294912000>,
59				       <270950400>,
60				       <393216000>;
61		status = "okay";
62
63		dai-link-0 {
64			sound-dai = <&aiu AIU_CPU CPU_I2S_FIFO>;
65		};
66
67		dai-link-1 {
68			sound-dai = <&aiu AIU_CPU CPU_SPDIF_FIFO>;
69		};
70
71		dai-link-2 {
72			sound-dai = <&aiu AIU_CPU CPU_I2S_ENCODER>;
73			dai-format = "i2s";
74			mclk-fs = <256>;
75
76			codec-0 {
77				sound-dai = <&aiu AIU_HDMI CTRL_I2S>;
78			};
79		};
80
81		dai-link-3 {
82			sound-dai = <&aiu AIU_CPU CPU_SPDIF_ENCODER>;
83
84			codec-0 {
85				sound-dai = <&spdif_dit>;
86			};
87		};
88
89		dai-link-4 {
90			sound-dai = <&aiu AIU_HDMI CTRL_OUT>;
91
92			codec-0 {
93				sound-dai = <&hdmi_tx>;
94			};
95		};
96	};
97};
98
99&aiu {
100	status = "okay";
101	pinctrl-0 = <&spdif_out_y_pins>;
102	pinctrl-names = "default";
103};
104
105&i2c_A {
106	status = "okay";
107	pinctrl-0 = <&i2c_a_pins>;
108	pinctrl-names = "default";
109};
110
111&usb1_phy {
112	status = "okay";
113};
114
115&usb1 {
116	status = "okay";
117};
118
119&ir {
120	linux,rc-map-name = "rc-wetek-play2";
121};
122