1// SPDX-License-Identifier: (GPL-2.0 OR MIT)
2/*
3 * Copyright 2020 Google LLC
4 */
5/dts-v1/;
6#include "mt8192-asurada.dtsi"
7
8/ {
9	model = "Google Hayato rev1";
10	compatible = "google,hayato-rev1", "google,hayato", "mediatek,mt8192";
11};
12
13&keyboard_controller {
14	function-row-physmap = <
15		MATRIX_KEY(0x00, 0x02, 0)	/* T1 */
16		MATRIX_KEY(0x03, 0x02, 0)	/* T2 */
17		MATRIX_KEY(0x02, 0x02, 0)	/* T3 */
18		MATRIX_KEY(0x01, 0x02, 0)	/* T4 */
19		MATRIX_KEY(0x03, 0x04, 0)	/* T5 */
20		MATRIX_KEY(0x02, 0x04, 0)	/* T6 */
21		MATRIX_KEY(0x01, 0x04, 0)	/* T7 */
22		MATRIX_KEY(0x02, 0x09, 0)	/* T8 */
23		MATRIX_KEY(0x01, 0x09, 0)	/* T9 */
24		MATRIX_KEY(0x00, 0x04, 0)	/* T10 */
25	>;
26	linux,keymap = <
27		MATRIX_KEY(0x00, 0x02, KEY_BACK)
28		MATRIX_KEY(0x03, 0x02, KEY_FORWARD)
29		MATRIX_KEY(0x02, 0x02, KEY_REFRESH)
30		MATRIX_KEY(0x01, 0x02, KEY_FULL_SCREEN)
31		MATRIX_KEY(0x03, 0x04, KEY_SCALE)
32		MATRIX_KEY(0x02, 0x04, KEY_BRIGHTNESSDOWN)
33		MATRIX_KEY(0x01, 0x04, KEY_BRIGHTNESSUP)
34		MATRIX_KEY(0x02, 0x09, KEY_MUTE)
35		MATRIX_KEY(0x01, 0x09, KEY_VOLUMEDOWN)
36		MATRIX_KEY(0x00, 0x04, KEY_VOLUMEUP)
37
38		CROS_STD_MAIN_KEYMAP
39	>;
40};
41
42&pio {
43	bt_pins: bt-pins {
44		pins-bt-kill {
45			pinmux = <PINMUX_GPIO144__FUNC_GPIO144>;
46			output-low;
47		};
48
49		pins-bt-wake {
50			pinmux = <PINMUX_GPIO22__FUNC_GPIO22>;
51			bias-pull-up;
52		};
53
54		pins-ap-wake-bt {
55			pinmux = <PINMUX_GPIO168__FUNC_GPIO168>;
56			output-low;
57		};
58	};
59
60	uart1_pins: uart1-pins {
61		pins-rx {
62			pinmux = <PINMUX_GPIO94__FUNC_URXD1>;
63			input-enable;
64			bias-pull-up;
65		};
66
67		pins-tx {
68			pinmux = <PINMUX_GPIO95__FUNC_UTXD1>;
69		};
70
71		pins-cts {
72			pinmux = <PINMUX_GPIO166__FUNC_UCTS1>;
73			input-enable;
74		};
75
76		pins-rts {
77			pinmux = <PINMUX_GPIO167__FUNC_URTS1>;
78		};
79	};
80
81	uart1_pins_sleep: uart1-sleep-pins {
82		pins-rx {
83			pinmux = <PINMUX_GPIO94__FUNC_GPIO94>;
84			input-enable;
85			bias-pull-up;
86		};
87
88		pins-tx {
89			pinmux = <PINMUX_GPIO95__FUNC_UTXD1>;
90		};
91
92		pins-cts {
93			pinmux = <PINMUX_GPIO166__FUNC_UCTS1>;
94			input-enable;
95		};
96
97		pins-rts {
98			pinmux = <PINMUX_GPIO167__FUNC_URTS1>;
99		};
100	};
101};
102
103&rt5682 {
104	compatible = "realtek,rt5682i";
105	realtek,btndet-delay = <16>;
106	VBAT-supply = <&pp3300_ldo_z>;
107};
108
109&sound {
110	compatible = "mediatek,mt8192_mt6359_rt1015p_rt5682";
111
112	speaker-codecs {
113		sound-dai = <&rt1015p>;
114	};
115
116	headset-codec {
117		sound-dai = <&rt5682 0>;
118	};
119};
120
121&touchscreen {
122	compatible = "hid-over-i2c";
123	post-power-on-delay-ms = <10>;
124	hid-descr-addr = <0x0001>;
125	vdd-supply = <&pp3300_u>;
126};
127
128&uart1 {
129	status = "okay";
130	pinctrl-names = "default", "sleep";
131	pinctrl-0 = <&uart1_pins>;
132	pinctrl-1 = <&uart1_pins_sleep>;
133	/delete-property/ interrupts;
134	interrupts-extended = <&gic GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH 0>,
135			      <&pio 94 IRQ_TYPE_EDGE_FALLING>;
136
137	bluetooth {
138		compatible = "realtek,rtl8822cs-bt";
139		pinctrl-names = "default";
140		pinctrl-0 = <&bt_pins>;
141
142		enable-gpios = <&pio 144 GPIO_ACTIVE_HIGH>;
143		device-wake-gpios = <&pio 168 GPIO_ACTIVE_HIGH>;
144		host-wake-gpios = <&pio 22 GPIO_ACTIVE_LOW>;
145	};
146};
147