1// SPDX-License-Identifier: GPL-2.0+
2/*
3 * SAMSUNG/GOOGLE Peach-Pit board device tree source
4 *
5 * Copyright (c) 2013 Samsung Electronics Co., Ltd.
6 *		http://www.samsung.com
7 */
8
9/dts-v1/;
10#include "exynos54xx.dtsi"
11
12/ {
13	model = "Samsung/Google Peach Pi board based on Exynos5800";
14	cpu-model = "Exynos5800";
15
16	compatible = "google,pit-rev#", "google,pit",
17		"google,peach", "samsung,exynos5800", "samsung,exynos5";
18
19	config {
20		google,bad-wake-gpios = <&gpx0 6 GPIO_ACTIVE_HIGH>;
21		hwid = "PIT TEST A-A 7848";
22		lazy-init = <1>;
23	};
24
25	aliases {
26		serial0 = "/serial@12C30000";
27		console = "/serial@12C30000";
28		pmic = "/i2c@12CA0000";
29		i2c104 = &i2c_tunnel;
30	};
31
32	backlight: backlight {
33		compatible = "pwm-backlight";
34		pwms = <&pwm 0 1000000 0>;
35		brightness-levels = <0 100 500 1000 1500 2000 2500 2800>;
36		default-brightness-level = <7>;
37		enable-gpios = <&gpx2 2 GPIO_ACTIVE_HIGH>;
38		power-supply = <&tps65090_fet1>;
39	};
40
41	panel: panel {
42		compatible = "auo,b133htn01";
43		power-supply = <&tps65090_fet6>;
44		backlight = <&backlight>;
45
46		port {
47			panel_in: endpoint {
48				remote-endpoint = <&dp_out>;
49			};
50		};
51	};
52
53	dmc {
54		mem-manuf = "samsung";
55		mem-type = "ddr3";
56		clock-frequency = <800000000>;
57		arm-frequency = <900000000>;
58	};
59
60	tmu@10060000 {
61		samsung,min-temp	= <25>;
62		samsung,max-temp	= <125>;
63		samsung,start-warning	= <95>;
64		samsung,start-tripping	= <105>;
65		samsung,hw-tripping	= <110>;
66		samsung,efuse-min-value	= <40>;
67		samsung,efuse-value	= <55>;
68		samsung,efuse-max-value	= <100>;
69		samsung,slope		= <274761730>;
70		samsung,dc-value	= <25>;
71	};
72
73	/* MAX77802 is on i2c bus 4 */
74	i2c@12CA0000 {
75		clock-frequency = <400000>;
76		power-regulator@9 {
77			compatible = "maxim,max77802-pmic";
78			reg = <0x9>;
79		};
80	};
81
82	sound {
83		compatible = "google,peach-audio-max98090";
84
85		samsung,model = "PEACH-I2S-MAX98090";
86		samsung,audio-codec = <&max98090>;
87
88		cpu {
89			sound-dai = <&i2s0 0>;
90		};
91
92		codec {
93			sound-dai = <&max98090 0>;
94		};
95	};
96
97	i2c@12CD0000 { /* i2c7 */
98		clock-frequency = <100000>;
99		max98090: soundcodec@10 {
100			reg = <0x10>;
101			compatible = "maxim,max98090";
102			#sound-dai-cells = <1>;
103		};
104	};
105
106        sound@3830000 {
107                samsung,codec-type = "max98090";
108        };
109
110	i2c@12E10000 { /* i2c9 */
111		clock-frequency = <400000>;
112		tpm@20 {
113			compatible = "infineon,slb9645tt";
114			reg = <0x20>;
115		};
116	};
117
118	spi@12d30000 { /* spi1 */
119		spi-max-frequency = <50000000>;
120		firmware_storage_spi: flash@0 {
121			reg = <0>;
122
123			/*
124			 * A region for the kernel to store a panic event
125			 * which the firmware will add to the log.
126			*/
127			elog-panic-event-offset = <0x01e00000 0x100000>;
128
129			elog-shrink-size = <0x400>;
130			elog-full-threshold = <0xc00>;
131		};
132	};
133
134	xhci@12000000 {
135		samsung,vbus-gpio = <&gph0 0 GPIO_ACTIVE_HIGH>;
136	};
137
138	xhci@12400000 {
139		samsung,vbus-gpio = <&gph0 1 GPIO_ACTIVE_HIGH>;
140	};
141
142	fimd@14400000 {
143		samsung,vl-freq = <60>;
144		samsung,vl-col = <1920>;
145		samsung,vl-row = <1080>;
146		samsung,vl-width = <1920>;
147		samsung,vl-height = <1080>;
148
149		samsung,vl-clkp;
150		samsung,vl-dp;
151		samsung,vl-bpix = <4>;
152
153		samsung,vl-hspw = <80>;
154		samsung,vl-hbpd = <172>;
155		samsung,vl-hfpd = <60>;
156		samsung,vl-vspw = <10>;
157		samsung,vl-vbpd = <25>;
158		samsung,vl-vfpd = <10>;
159		samsung,vl-cmd-allow-len = <0xf>;
160
161		samsung,power-on-delay = <30000>;
162		samsung,winid = <3>;
163		samsung,interface-mode = <1>;
164		samsung,dp-enabled = <1>;
165		samsung,dual-lcd-enabled = <0>;
166
167		samsung,bl-en-gpio = <&gpx2 2 GPIO_ACTIVE_HIGH>;
168	};
169};
170
171&dp {
172	status = "okay";
173	samsung,color-space = <0>;
174	samsung,dynamic-range = <0>;
175	samsung,ycbcr-coeff = <0>;
176	samsung,color-depth = <1>;
177	samsung,link-rate = <0x0a>;
178	samsung,lane-count = <2>;
179	samsung,hpd-gpio = <&gpx2 6 GPIO_ACTIVE_HIGH>;
180
181	ports {
182		port {
183			dp_out: endpoint {
184				remote-endpoint = <&panel_in>;
185			};
186		};
187	};
188};
189
190&spi_2 {
191	spi-max-frequency = <3125000>;
192	spi-deactivate-delay = <200>;
193	status = "okay";
194	num-cs = <1>;
195	samsung,spi-src-clk = <0>;
196	cs-gpios = <&gpb1 2 0>;
197
198	cros_ec: cros-ec@0 {
199		compatible = "google,cros-ec-spi";
200		interrupt-parent = <&gpx1>;
201		interrupts = <5 0>;
202		reg = <0>;
203		spi-half-duplex;
204		spi-max-timeout-ms = <1100>;
205		ec-interrupt = <&gpx1 5 GPIO_ACTIVE_LOW>;
206
207		/*
208		 * This describes the flash memory within the EC. Note
209		 * that the STM32L flash erases to 0, not 0xff.
210		 */
211		#address-cells = <1>;
212		#size-cells = <1>;
213		flash@8000000 {
214			reg = <0x08000000 0x20000>;
215			erase-value = <0>;
216		};
217
218		controller-data {
219			samsung,spi-feedback-delay = <1>;
220		};
221
222		i2c_tunnel: i2c-tunnel {
223			compatible = "google,cros-ec-i2c-tunnel";
224			#address-cells = <1>;
225			#size-cells = <0>;
226			google,remote-bus = <0>;
227
228			battery: sbs-battery@b {
229				compatible = "sbs,sbs-battery";
230				reg = <0xb>;
231				sbs,poll-retry-count = <1>;
232				sbs,i2c-retry-count = <2>;
233			};
234
235			power-regulator@48 {
236				compatible = "ti,tps65090";
237				reg = <0x48>;
238
239				regulators {
240					tps65090_dcdc1: dcdc1 {
241						ti,enable-ext-control;
242					};
243					tps65090_dcdc2: dcdc2 {
244						ti,enable-ext-control;
245					};
246					tps65090_dcdc3: dcdc3 {
247						ti,enable-ext-control;
248					};
249					tps65090_fet1: fet1 {
250						regulator-name = "vcd_led";
251					};
252					tps65090_fet2: fet2 {
253						regulator-name = "video_mid";
254						regulator-always-on;
255					};
256					tps65090_fet3: fet3 {
257						regulator-name = "wwan_r";
258						regulator-always-on;
259					};
260					tps65090_fet4: fet4 {
261						regulator-name = "sdcard";
262						regulator-always-on;
263					};
264					tps65090_fet5: fet5 {
265						regulator-name = "camout";
266						regulator-always-on;
267					};
268					tps65090_fet6: fet6 {
269						regulator-name = "lcd_vdd";
270					};
271					tps65090_fet7: fet7 {
272						regulator-name = "video_mid_1a";
273						regulator-always-on;
274					};
275					tps65090_ldo1: ldo1 {
276					};
277					tps65090_ldo2: ldo2 {
278					};
279				};
280
281				charger {
282					compatible = "ti,tps65090-charger";
283				};
284			};
285		};
286	};
287};
288
289#include "cros-ec-keyboard.dtsi"
290