Commit | Line | Data |
---|---|---|
3528dd34 AK |
1 | /* |
2 | * Google Peach Pit Rev 6+ board device tree source | |
3 | * | |
4 | * Copyright (c) 2014 Google, Inc | |
5 | * | |
6 | * This program is free software; you can redistribute it and/or modify | |
7 | * it under the terms of the GNU General Public License version 2 as | |
8 | * published by the Free Software Foundation. | |
9 | */ | |
10 | ||
11 | /dts-v1/; | |
12 | #include <dt-bindings/input/input.h> | |
13 | #include <dt-bindings/gpio/gpio.h> | |
14 | #include "exynos5420.dtsi" | |
15 | ||
16 | / { | |
17 | model = "Google Peach Pit Rev 6+"; | |
18 | ||
19 | compatible = "google,pit-rev16", | |
20 | "google,pit-rev15", "google,pit-rev14", | |
21 | "google,pit-rev13", "google,pit-rev12", | |
22 | "google,pit-rev11", "google,pit-rev10", | |
23 | "google,pit-rev9", "google,pit-rev8", | |
24 | "google,pit-rev7", "google,pit-rev6", | |
25 | "google,pit", "google,peach","samsung,exynos5420", | |
26 | "samsung,exynos5"; | |
27 | ||
28 | memory { | |
29 | reg = <0x20000000 0x80000000>; | |
30 | }; | |
31 | ||
32 | fixed-rate-clocks { | |
33 | oscclk { | |
34 | compatible = "samsung,exynos5420-oscclk"; | |
35 | clock-frequency = <24000000>; | |
36 | }; | |
37 | }; | |
38 | ||
39 | gpio-keys { | |
40 | compatible = "gpio-keys"; | |
41 | ||
42 | pinctrl-names = "default"; | |
43 | pinctrl-0 = <&power_key_irq>; | |
44 | ||
45 | power { | |
46 | label = "Power"; | |
47 | gpios = <&gpx1 2 GPIO_ACTIVE_LOW>; | |
48 | linux,code = <KEY_POWER>; | |
49 | gpio-key,wakeup; | |
50 | }; | |
51 | }; | |
52 | ||
53 | backlight { | |
54 | compatible = "pwm-backlight"; | |
55 | pwms = <&pwm 0 1000000 0>; | |
56 | brightness-levels = <0 100 500 1000 1500 2000 2500 2800>; | |
57 | default-brightness-level = <7>; | |
58 | pinctrl-0 = <&pwm0_out>; | |
59 | pinctrl-names = "default"; | |
60 | }; | |
ead3993e TB |
61 | |
62 | sound { | |
63 | compatible = "google,snow-audio-max98090"; | |
64 | ||
65 | samsung,i2s-controller = <&i2s0>; | |
66 | samsung,audio-codec = <&max98090>; | |
67 | }; | |
14a35ada VG |
68 | |
69 | usb300_vbus_reg: regulator-usb300 { | |
70 | compatible = "regulator-fixed"; | |
71 | regulator-name = "P5.0V_USB3CON0"; | |
72 | regulator-min-microvolt = <5000000>; | |
73 | regulator-max-microvolt = <5000000>; | |
74 | gpio = <&gph0 0 0>; | |
75 | pinctrl-names = "default"; | |
76 | pinctrl-0 = <&usb300_vbus_en>; | |
77 | enable-active-high; | |
78 | }; | |
79 | ||
80 | usb301_vbus_reg: regulator-usb301 { | |
81 | compatible = "regulator-fixed"; | |
82 | regulator-name = "P5.0V_USB3CON1"; | |
83 | regulator-min-microvolt = <5000000>; | |
84 | regulator-max-microvolt = <5000000>; | |
85 | gpio = <&gph0 1 0>; | |
86 | pinctrl-names = "default"; | |
87 | pinctrl-0 = <&usb301_vbus_en>; | |
88 | enable-active-high; | |
89 | }; | |
3528dd34 AK |
90 | }; |
91 | ||
92 | &pinctrl_0 { | |
ead3993e TB |
93 | max98090_irq: max98090-irq { |
94 | samsung,pins = "gpx0-2"; | |
95 | samsung,pin-function = <0>; | |
96 | samsung,pin-pud = <0>; | |
97 | samsung,pin-drv = <0>; | |
98 | }; | |
99 | ||
3528dd34 AK |
100 | tpm_irq: tpm-irq { |
101 | samsung,pins = "gpx1-0"; | |
102 | samsung,pin-function = <0>; | |
103 | samsung,pin-pud = <0>; | |
104 | samsung,pin-drv = <0>; | |
105 | }; | |
106 | ||
107 | power_key_irq: power-key-irq { | |
108 | samsung,pins = "gpx1-2"; | |
109 | samsung,pin-function = <0>; | |
110 | samsung,pin-pud = <0>; | |
111 | samsung,pin-drv = <0>; | |
112 | }; | |
6ac189fc RS |
113 | |
114 | hdmi_hpd_irq: hdmi-hpd-irq { | |
115 | samsung,pins = "gpx3-7"; | |
116 | samsung,pin-function = <0>; | |
117 | samsung,pin-pud = <1>; | |
118 | samsung,pin-drv = <0>; | |
119 | }; | |
94b62c38 RS |
120 | |
121 | dp_hpd_gpio: dp_hpd_gpio { | |
122 | samsung,pins = "gpx2-6"; | |
123 | samsung,pin-function = <0>; | |
124 | samsung,pin-pud = <3>; | |
125 | samsung,pin-drv = <0>; | |
126 | }; | |
3528dd34 AK |
127 | }; |
128 | ||
14a35ada VG |
129 | &pinctrl_3 { |
130 | usb300_vbus_en: usb300-vbus-en { | |
131 | samsung,pins = "gph0-0"; | |
132 | samsung,pin-function = <1>; | |
133 | samsung,pin-pud = <0>; | |
134 | samsung,pin-drv = <0>; | |
135 | }; | |
136 | ||
137 | usb301_vbus_en: usb301-vbus-en { | |
138 | samsung,pins = "gph0-1"; | |
139 | samsung,pin-function = <1>; | |
140 | samsung,pin-pud = <0>; | |
141 | samsung,pin-drv = <0>; | |
142 | }; | |
143 | }; | |
144 | ||
3528dd34 AK |
145 | &rtc { |
146 | status = "okay"; | |
147 | }; | |
148 | ||
149 | &uart_3 { | |
150 | status = "okay"; | |
151 | }; | |
152 | ||
153 | &mmc_0 { | |
154 | status = "okay"; | |
155 | num-slots = <1>; | |
156 | broken-cd; | |
157 | caps2-mmc-hs200-1_8v; | |
158 | supports-highspeed; | |
159 | non-removable; | |
160 | card-detect-delay = <200>; | |
161 | clock-frequency = <400000000>; | |
162 | samsung,dw-mshc-ciu-div = <3>; | |
163 | samsung,dw-mshc-sdr-timing = <0 4>; | |
164 | samsung,dw-mshc-ddr-timing = <0 2>; | |
165 | pinctrl-names = "default"; | |
166 | pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus4 &sd0_bus8>; | |
167 | ||
168 | slot@0 { | |
169 | reg = <0>; | |
170 | bus-width = <8>; | |
171 | }; | |
172 | }; | |
173 | ||
174 | &mmc_2 { | |
175 | status = "okay"; | |
176 | num-slots = <1>; | |
177 | supports-highspeed; | |
178 | card-detect-delay = <200>; | |
179 | clock-frequency = <400000000>; | |
180 | samsung,dw-mshc-ciu-div = <3>; | |
181 | samsung,dw-mshc-sdr-timing = <2 3>; | |
182 | samsung,dw-mshc-ddr-timing = <1 2>; | |
183 | pinctrl-names = "default"; | |
184 | pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_cd &sd2_bus4>; | |
185 | ||
186 | slot@0 { | |
187 | reg = <0>; | |
188 | bus-width = <4>; | |
189 | }; | |
190 | }; | |
191 | ||
ead3993e TB |
192 | &hsi2c_7 { |
193 | status = "okay"; | |
194 | ||
195 | max98090: codec@10 { | |
196 | compatible = "maxim,max98090"; | |
197 | reg = <0x10>; | |
198 | interrupts = <2 0>; | |
199 | interrupt-parent = <&gpx0>; | |
200 | pinctrl-names = "default"; | |
201 | pinctrl-0 = <&max98090_irq>; | |
202 | }; | |
203 | }; | |
204 | ||
3528dd34 AK |
205 | &hsi2c_9 { |
206 | status = "okay"; | |
207 | clock-frequency = <400000>; | |
208 | ||
209 | tpm@20 { | |
210 | compatible = "infineon,slb9645tt"; | |
211 | reg = <0x20>; | |
212 | ||
213 | /* Unused irq; but still need to configure the pins */ | |
214 | pinctrl-names = "default"; | |
215 | pinctrl-0 = <&tpm_irq>; | |
216 | }; | |
217 | }; | |
218 | ||
6ac189fc RS |
219 | &i2c_2 { |
220 | status = "okay"; | |
221 | samsung,i2c-sda-delay = <100>; | |
222 | samsung,i2c-max-bus-freq = <66000>; | |
223 | samsung,i2c-slave-addr = <0x50>; | |
224 | }; | |
225 | ||
226 | &hdmi { | |
227 | status = "okay"; | |
228 | hpd-gpio = <&gpx3 7 GPIO_ACTIVE_HIGH>; | |
229 | pinctrl-names = "default"; | |
230 | pinctrl-0 = <&hdmi_hpd_irq>; | |
231 | ddc = <&i2c_2>; | |
232 | }; | |
233 | ||
0ce9f47a | 234 | &usbdrd_phy0 { |
14a35ada VG |
235 | vbus-supply = <&usb300_vbus_reg>; |
236 | }; | |
237 | ||
0ce9f47a | 238 | &usbdrd_phy1 { |
14a35ada VG |
239 | vbus-supply = <&usb301_vbus_reg>; |
240 | }; | |
241 | ||
3528dd34 AK |
242 | /* |
243 | * Use longest HW watchdog in SoC (32 seconds) since the hardware | |
244 | * watchdog provides no debugging information (compared to soft/hard | |
245 | * lockup detectors) and so should be last resort. | |
246 | */ | |
247 | &watchdog { | |
248 | timeout-sec = <32>; | |
249 | }; | |
ead3993e TB |
250 | |
251 | &i2s0 { | |
252 | status = "okay"; | |
253 | }; | |
4779aacf RS |
254 | |
255 | &fimd { | |
256 | status = "okay"; | |
257 | samsung,invert-vclk; | |
258 | }; | |
a0969acf RS |
259 | |
260 | &dp { | |
261 | status = "okay"; | |
262 | pinctrl-names = "default"; | |
263 | pinctrl-0 = <&dp_hpd_gpio>; | |
264 | samsung,color-space = <0>; | |
265 | samsung,dynamic-range = <0>; | |
266 | samsung,ycbcr-coeff = <0>; | |
267 | samsung,color-depth = <1>; | |
268 | samsung,link-rate = <0x06>; | |
269 | samsung,lane-count = <2>; | |
270 | samsung,hpd-gpio = <&gpx2 6 0>; | |
271 | ||
272 | display-timings { | |
273 | native-mode = <&timing1>; | |
274 | ||
275 | timing1: timing@1 { | |
276 | clock-frequency = <70589280>; | |
277 | hactive = <1366>; | |
278 | vactive = <768>; | |
279 | hfront-porch = <40>; | |
280 | hback-porch = <40>; | |
281 | hsync-len = <32>; | |
282 | vback-porch = <10>; | |
283 | vfront-porch = <12>; | |
284 | vsync-len = <6>; | |
285 | }; | |
286 | }; | |
287 | }; |