WIP FPC-III support
[linux/fpc-iii.git] / arch / arm / boot / dts / exynos4412-galaxy-s3.dtsi
blobc14e37dc3a9bf762d6686d7a20bfb5efc70b7ec3
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  */
9 /dts-v1/;
10 #include "exynos4412-midas.dtsi"
12 / {
13         aliases {
14                 i2c9 = &i2c_ak8975;
15                 i2c10 = &i2c_cm36651;
16         };
18         led-controller {
19                 compatible = "skyworks,aat1290";
20                 flen-gpios = <&gpj1 1 GPIO_ACTIVE_HIGH>;
21                 enset-gpios = <&gpj1 2 GPIO_ACTIVE_HIGH>;
23                 pinctrl-names = "default", "host", "isp";
24                 pinctrl-0 = <&camera_flash_host>;
25                 pinctrl-1 = <&camera_flash_host>;
26                 pinctrl-2 = <&camera_flash_isp>;
28                 flash-led {
29                         label = "flash";
30                         led-max-microamp = <520833>;
31                         flash-max-microamp = <1012500>;
32                         flash-max-timeout-us = <1940000>;
33                 };
34         };
36         lcd_vdd3_reg: voltage-regulator-10 {
37                 compatible = "regulator-fixed";
38                 regulator-name = "LCD_VDD_2.2V";
39                 regulator-min-microvolt = <2200000>;
40                 regulator-max-microvolt = <2200000>;
41                 gpio = <&gpc0 1 GPIO_ACTIVE_HIGH>;
42                 enable-active-high;
43         };
45         ps_als_reg: voltage-regulator-11 {
46                 compatible = "regulator-fixed";
47                 regulator-name = "LED_A_3.0V";
48                 regulator-min-microvolt = <3000000>;
49                 regulator-max-microvolt = <3000000>;
50                 gpio = <&gpj0 5 GPIO_ACTIVE_HIGH>;
51                 enable-active-high;
52         };
54         i2c_ak8975: i2c-gpio-0 {
55                 compatible = "i2c-gpio";
56                 sda-gpios = <&gpy2 4 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
57                 scl-gpios = <&gpy2 5 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
58                 i2c-gpio,delay-us = <2>;
59                 #address-cells = <1>;
60                 #size-cells = <0>;
62                 magnetometer@c {
63                         compatible = "asahi-kasei,ak8975";
64                         reg = <0x0c>;
65                         gpios = <&gpj0 7 GPIO_ACTIVE_HIGH>;
66                 };
67         };
69         i2c_cm36651: i2c-gpio-2 {
70                 compatible = "i2c-gpio";
71                 sda-gpios = <&gpf0 0 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
72                 scl-gpios = <&gpf0 1 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
73                 i2c-gpio,delay-us = <2>;
74                 #address-cells = <1>;
75                 #size-cells = <0>;
77                 light-sensor@18 {
78                         compatible = "capella,cm36651";
79                         reg = <0x18>;
80                         interrupt-parent = <&gpx0>;
81                         interrupts = <2 IRQ_TYPE_EDGE_FALLING>;
82                         vled-supply = <&ps_als_reg>;
83                 };
84         };
87 &buck9_reg {
88         maxim,ena-gpios = <&gpm0 3 GPIO_ACTIVE_HIGH>;
91 &cam_af_reg {
92         gpio = <&gpm0 4 GPIO_ACTIVE_HIGH>;
93         status = "okay";
96 &cam_io_reg {
97         gpio = <&gpm0 2 GPIO_ACTIVE_HIGH>;
98         status = "okay";
101 &dsi_0 {
102         status = "okay";
104         panel@0 {
105                 compatible = "samsung,s6e8aa0";
106                 reg = <0>;
107                 vdd3-supply = <&lcd_vdd3_reg>;
108                 vci-supply = <&ldo25_reg>;
109                 reset-gpios = <&gpf2 1 GPIO_ACTIVE_HIGH>;
110                 power-on-delay= <50>;
111                 reset-delay = <100>;
112                 init-delay = <100>;
113                 flip-horizontal;
114                 flip-vertical;
115                 panel-width-mm = <58>;
116                 panel-height-mm = <103>;
118                 display-timings {
119                         timing-0 {
120                                 clock-frequency = <57153600>;
121                                 hactive = <720>;
122                                 vactive = <1280>;
123                                 hfront-porch = <5>;
124                                 hback-porch = <5>;
125                                 hsync-len = <5>;
126                                 vfront-porch = <13>;
127                                 vback-porch = <1>;
128                                 vsync-len = <2>;
129                         };
130                 };
131         };
134 &i2c_3 {
135         touchscreen@48 {
136                 compatible = "melfas,mms114";
137                 reg = <0x48>;
138                 interrupt-parent = <&gpm2>;
139                 interrupts = <3 IRQ_TYPE_EDGE_FALLING>;
140                 touchscreen-size-x = <720>;
141                 touchscreen-size-y = <1280>;
142                 avdd-supply = <&ldo23_reg>;
143                 vdd-supply = <&ldo24_reg>;
144         };
147 &ldo25_reg {
148         regulator-name = "LCD_VCC_3.3V";
149         regulator-min-microvolt = <2800000>;
150         regulator-max-microvolt = <2800000>;
153 &pinctrl_0 {
154         camera_flash_host: camera-flash-host {
155                 samsung,pins = "gpj1-0";
156                 samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
157                 samsung,pin-val = <0>;
158         };
160         camera_flash_isp: camera-flash-isp {
161                 samsung,pins = "gpj1-0";
162                 samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
163                 samsung,pin-val = <1>;
164         };
167 &s5c73m3 {
168         standby-gpios = <&gpm0 1 GPIO_ACTIVE_LOW>;   /* ISP_STANDBY */
169         vdda-supply = <&ldo17_reg>;
170         status = "okay";
173 &sound {
174         samsung,audio-routing =
175                 "HP", "HPOUT1L",
176                 "HP", "HPOUT1R",
178                 "SPK", "SPKOUTLN",
179                 "SPK", "SPKOUTLP",
180                 "SPK", "SPKOUTRN",
181                 "SPK", "SPKOUTRP",
183                 "RCV", "HPOUT2N",
184                 "RCV", "HPOUT2P",
186                 "HDMI", "LINEOUT1N",
187                 "HDMI", "LINEOUT1P",
189                 "LINE", "LINEOUT2N",
190                 "LINE", "LINEOUT2P",
192                 "IN1LP", "MICBIAS1",
193                 "IN1LN", "MICBIAS1",
194                 "Main Mic", "MICBIAS1",
196                 "IN1RP", "Sub Mic",
197                 "IN1RN", "Sub Mic",
199                 "IN2LP:VXRN", "MICBIAS2",
200                 "Headset Mic", "MICBIAS2",
202                 "IN2RN", "FM In",
203                 "IN2RP:VXRP", "FM In";
206 &submic_bias_reg {
207         gpio = <&gpf2 0 GPIO_ACTIVE_HIGH>;
208         enable-active-high;
211 &touchkey_reg {
212         gpio = <&gpm0 0 GPIO_ACTIVE_HIGH>;
213         status = "okay";