1// SPDX-License-Identifier: GPL-2.0
2/*
3 * Samsung's Exynos4412 based Galaxy S3 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 "exynos4412-midas.dtsi"
11
12/ {
13	aliases {
14		i2c9 = &i2c_ak8975;
15		i2c10 = &i2c_cm36651;
16	};
17
18	lcd_vdd3_reg: voltage-regulator-6 {
19		compatible = "regulator-fixed";
20		regulator-name = "LCD_VDD_2.2V";
21		regulator-min-microvolt = <2200000>;
22		regulator-max-microvolt = <2200000>;
23		gpio = <&gpc0 1 GPIO_ACTIVE_HIGH>;
24		enable-active-high;
25	};
26
27	ps_als_reg: voltage-regulator-7 {
28		compatible = "regulator-fixed";
29		regulator-name = "LED_A_3.0V";
30		regulator-min-microvolt = <3000000>;
31		regulator-max-microvolt = <3000000>;
32		gpio = <&gpj0 5 GPIO_ACTIVE_HIGH>;
33		enable-active-high;
34	};
35
36	i2c_ak8975: i2c-gpio-0 {
37		compatible = "i2c-gpio";
38		gpios = <&gpy2 4 GPIO_ACTIVE_HIGH>, <&gpy2 5 GPIO_ACTIVE_HIGH>;
39		i2c-gpio,delay-us = <2>;
40		#address-cells = <1>;
41		#size-cells = <0>;
42		status = "okay";
43
44		ak8975@c {
45			compatible = "asahi-kasei,ak8975";
46			reg = <0x0c>;
47			gpios = <&gpj0 7 GPIO_ACTIVE_HIGH>;
48		};
49	};
50
51	i2c_cm36651: i2c-gpio-2 {
52		compatible = "i2c-gpio";
53		gpios = <&gpf0 0 GPIO_ACTIVE_LOW>, <&gpf0 1 GPIO_ACTIVE_LOW>;
54		i2c-gpio,delay-us = <2>;
55		#address-cells = <1>;
56		#size-cells = <0>;
57
58		cm36651@18 {
59			compatible = "capella,cm36651";
60			reg = <0x18>;
61			interrupt-parent = <&gpx0>;
62			interrupts = <2 IRQ_TYPE_EDGE_FALLING>;
63			vled-supply = <&ps_als_reg>;
64		};
65	};
66};
67
68&buck9_reg {
69	maxim,ena-gpios = <&gpm0 3 GPIO_ACTIVE_HIGH>;
70};
71
72&cam_af_reg {
73	gpio = <&gpm0 4 GPIO_ACTIVE_HIGH>;
74	status = "okay";
75};
76
77&cam_io_reg {
78	gpio = <&gpm0 2 GPIO_ACTIVE_HIGH>;
79	status = "okay";
80};
81
82&dsi_0 {
83	status = "okay";
84
85	panel@0 {
86		compatible = "samsung,s6e8aa0";
87		reg = <0>;
88		vdd3-supply = <&lcd_vdd3_reg>;
89		vci-supply = <&ldo25_reg>;
90		reset-gpios = <&gpf2 1 GPIO_ACTIVE_HIGH>;
91		power-on-delay= <50>;
92		reset-delay = <100>;
93		init-delay = <100>;
94		flip-horizontal;
95		flip-vertical;
96		panel-width-mm = <58>;
97		panel-height-mm = <103>;
98
99		display-timings {
100			timing-0 {
101				clock-frequency = <57153600>;
102				hactive = <720>;
103				vactive = <1280>;
104				hfront-porch = <5>;
105				hback-porch = <5>;
106				hsync-len = <5>;
107				vfront-porch = <13>;
108				vback-porch = <1>;
109				vsync-len = <2>;
110			};
111		};
112	};
113};
114
115&i2c_3 {
116	mms114-touchscreen@48 {
117		compatible = "melfas,mms114";
118		reg = <0x48>;
119		interrupt-parent = <&gpm2>;
120		interrupts = <3 IRQ_TYPE_EDGE_FALLING>;
121		touchscreen-size-x = <720>;
122		touchscreen-size-y = <1280>;
123		avdd-supply = <&ldo23_reg>;
124		vdd-supply = <&ldo24_reg>;
125	};
126};
127
128&ldo25_reg {
129	regulator-name = "LCD_VCC_3.3V";
130	regulator-min-microvolt = <2800000>;
131	regulator-max-microvolt = <2800000>;
132};
133
134&s5c73m3 {
135	standby-gpios = <&gpm0 1 GPIO_ACTIVE_LOW>;   /* ISP_STANDBY */
136	vdda-supply = <&ldo17_reg>;
137	status = "okay";
138};
139