~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/arch/arm/boot/dts/samsung/exynos5250-spring.dts

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 // SPDX-License-Identifier: GPL-2.0
  2 /*
  3  * Google Spring board device tree source
  4  *
  5  * Copyright (c) 2013 Google, Inc
  6  * Copyright (c) 2014 SUSE LINUX Products GmbH
  7  */
  8 
  9 /dts-v1/;
 10 #include <dt-bindings/clock/samsung,s2mps11.h>
 11 #include <dt-bindings/gpio/gpio.h>
 12 #include <dt-bindings/interrupt-controller/irq.h>
 13 #include <dt-bindings/input/input.h>
 14 #include "exynos5250.dtsi"
 15 
 16 / {
 17         model = "Google Spring";
 18         compatible = "google,spring", "samsung,exynos5250", "samsung,exynos5";
 19         chassis-type = "laptop";
 20 
 21         memory@40000000 {
 22                 device_type = "memory";
 23                 reg = <0x40000000 0x80000000>;
 24         };
 25 
 26         aliases {
 27                 mmc0 = &mmc_0;
 28                 mmc1 = &mmc_1;
 29         };
 30 
 31         chosen {
 32                 bootargs = "console=tty1";
 33                 stdout-path = "serial3:115200n8";
 34         };
 35 
 36         gpio-keys {
 37                 compatible = "gpio-keys";
 38                 pinctrl-names = "default";
 39                 pinctrl-0 = <&power_key_irq>, <&lid_irq>;
 40 
 41                 power-key {
 42                         label = "Power";
 43                         gpios = <&gpx1 3 GPIO_ACTIVE_LOW>;
 44                         linux,code = <KEY_POWER>;
 45                         wakeup-source;
 46                 };
 47 
 48                 lid-switch {
 49                         label = "Lid";
 50                         gpios = <&gpx3 5 GPIO_ACTIVE_LOW>;
 51                         linux,input-type = <5>; /* EV_SW */
 52                         linux,code = <0>; /* SW_LID */
 53                         debounce-interval = <1>;
 54                         wakeup-source;
 55                 };
 56         };
 57 
 58         usb-hub {
 59                 compatible = "smsc,usb3503a";
 60                 reset-gpios = <&gpe1 0 GPIO_ACTIVE_LOW>;
 61                 pinctrl-names = "default";
 62                 pinctrl-0 = <&hsic_reset>;
 63         };
 64 
 65         fixed-rate-clocks {
 66                 xxti {
 67                         compatible = "samsung,clock-xxti";
 68                         clock-frequency = <24000000>;
 69                 };
 70         };
 71 };
 72 
 73 &cpu0 {
 74         cpu0-supply = <&buck2_reg>;
 75 };
 76 
 77 &dp {
 78         status = "okay";
 79         pinctrl-names = "default";
 80         pinctrl-0 = <&dp_hpd_gpio>;
 81         samsung,color-space = <0>;
 82         samsung,color-depth = <1>;
 83         samsung,link-rate = <0x0a>;
 84         samsung,lane-count = <1>;
 85         hpd-gpios = <&gpc3 0 GPIO_ACTIVE_HIGH>;
 86 };
 87 
 88 &ehci {
 89         samsung,vbus-gpio = <&gpx1 1 GPIO_ACTIVE_HIGH>;
 90 };
 91 
 92 &fimd {
 93         status = "okay";
 94         samsung,invert-vclk;
 95 };
 96 
 97 &hdmi {
 98         status = "okay";
 99         hpd-gpios = <&gpx3 7 GPIO_ACTIVE_HIGH>;
100         pinctrl-names = "default";
101         pinctrl-0 = <&hdmi_hpd_irq>;
102         ddc = <&i2c_2>;
103         hdmi-en-supply = <&ldo8_reg>;
104         vdd-supply = <&ldo8_reg>;
105         vdd_osc-supply = <&ldo10_reg>;
106         vdd_pll-supply = <&ldo8_reg>;
107 };
108 
109 &i2c_0 {
110         status = "okay";
111         samsung,i2c-sda-delay = <100>;
112         samsung,i2c-max-bus-freq = <378000>;
113 
114         pmic@66 {
115                 compatible = "samsung,s5m8767-pmic";
116                 reg = <0x66>;
117                 interrupt-parent = <&gpx3>;
118                 interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
119                 pinctrl-names = "default";
120                 pinctrl-0 = <&s5m8767_irq &s5m8767_dvs &s5m8767_ds>;
121                 wakeup-source;
122 
123                 s5m8767,pmic-buck-dvs-gpios = <&gpd1 0 GPIO_ACTIVE_LOW>, /* DVS1 */
124                                               <&gpd1 1 GPIO_ACTIVE_LOW>, /* DVS2 */
125                                               <&gpd1 2 GPIO_ACTIVE_LOW>; /* DVS3 */
126 
127                 s5m8767,pmic-buck-ds-gpios = <&gpx2 3 GPIO_ACTIVE_LOW>, /* SET1 */
128                                              <&gpx2 4 GPIO_ACTIVE_LOW>, /* SET2 */
129                                              <&gpx2 5 GPIO_ACTIVE_LOW>; /* SET3 */
130 
131                 /*
132                  * The following arrays of DVS voltages are not used, since we are
133                  * not using GPIOs to control PMIC bucks, but they must be defined
134                  * to please the driver.
135                  */
136                 s5m8767,pmic-buck2-dvs-voltage = <1350000>, <1300000>,
137                                                  <1250000>, <1200000>,
138                                                  <1150000>, <1100000>,
139                                                  <1000000>, <950000>;
140 
141                 s5m8767,pmic-buck3-dvs-voltage = <1100000>, <1100000>,
142                                                  <1100000>, <1100000>,
143                                                  <1000000>, <1000000>,
144                                                  <1000000>, <1000000>;
145 
146                 s5m8767,pmic-buck4-dvs-voltage = <1200000>, <1200000>,
147                                                  <1200000>, <1200000>,
148                                                  <1200000>, <1200000>,
149                                                  <1200000>, <1200000>;
150 
151                 s5m8767_osc: clocks {
152                         compatible = "samsung,s5m8767-clk";
153                         #clock-cells = <1>;
154                         clock-output-names = "en32khz_ap",
155                                              "en32khz_cp",
156                                              "en32khz_bt";
157                 };
158 
159                 regulators {
160                         ldo4_reg: LDO4 {
161                                 regulator-name = "P1.0V_LDO_OUT4";
162                                 regulator-min-microvolt = <1000000>;
163                                 regulator-max-microvolt = <1000000>;
164                                 regulator-always-on;
165                                 op_mode = <0>;
166                         };
167 
168                         ldo5_reg: LDO5 {
169                                 regulator-name = "P1.0V_LDO_OUT5";
170                                 regulator-min-microvolt = <1000000>;
171                                 regulator-max-microvolt = <1000000>;
172                                 regulator-always-on;
173                                 op_mode = <0>;
174                         };
175 
176                         ldo6_reg: LDO6 {
177                                 regulator-name = "vdd_mydp";
178                                 regulator-min-microvolt = <1000000>;
179                                 regulator-max-microvolt = <1000000>;
180                                 regulator-always-on;
181                                 op_mode = <3>;
182                         };
183 
184                         ldo7_reg: LDO7 {
185                                 regulator-name = "P1.1V_LDO_OUT7";
186                                 regulator-min-microvolt = <1100000>;
187                                 regulator-max-microvolt = <1100000>;
188                                 regulator-always-on;
189                                 op_mode = <3>;
190                         };
191 
192                         ldo8_reg: LDO8 {
193                                 regulator-name = "P1.0V_LDO_OUT8";
194                                 regulator-min-microvolt = <1000000>;
195                                 regulator-max-microvolt = <1000000>;
196                                 regulator-always-on;
197                                 op_mode = <3>;
198                         };
199 
200                         ldo10_reg: LDO10 {
201                                 regulator-name = "P1.8V_LDO_OUT10";
202                                 regulator-min-microvolt = <1800000>;
203                                 regulator-max-microvolt = <1800000>;
204                                 regulator-always-on;
205                                 op_mode = <3>;
206                         };
207 
208                         ldo11_reg: LDO11 {
209                                 regulator-name = "P1.8V_LDO_OUT11";
210                                 regulator-min-microvolt = <1800000>;
211                                 regulator-max-microvolt = <1800000>;
212                                 regulator-always-on;
213                                 op_mode = <0>;
214                         };
215 
216                         ldo12_reg: LDO12 {
217                                 regulator-name = "P3.0V_LDO_OUT12";
218                                 regulator-min-microvolt = <3000000>;
219                                 regulator-max-microvolt = <3000000>;
220                                 regulator-always-on;
221                                 op_mode = <3>;
222                         };
223 
224                         ldo13_reg: LDO13 {
225                                 regulator-name = "P1.8V_LDO_OUT13";
226                                 regulator-min-microvolt = <1800000>;
227                                 regulator-max-microvolt = <1800000>;
228                                 regulator-always-on;
229                                 op_mode = <0>;
230                         };
231 
232                         ldo14_reg: LDO14 {
233                                 regulator-name = "P1.8V_LDO_OUT14";
234                                 regulator-min-microvolt = <1800000>;
235                                 regulator-max-microvolt = <1800000>;
236                                 regulator-always-on;
237                                 op_mode = <3>;
238                         };
239 
240                         ldo15_reg: LDO15 {
241                                 regulator-name = "P1.0V_LDO_OUT15";
242                                 regulator-min-microvolt = <1000000>;
243                                 regulator-max-microvolt = <1000000>;
244                                 regulator-always-on;
245                                 op_mode = <3>;
246                         };
247 
248                         ldo16_reg: LDO16 {
249                                 regulator-name = "P1.8V_LDO_OUT16";
250                                 regulator-min-microvolt = <1800000>;
251                                 regulator-max-microvolt = <1800000>;
252                                 regulator-always-on;
253                                 op_mode = <3>;
254                         };
255 
256                         ldo17_reg: LDO17 {
257                                 regulator-name = "P2.8V_LDO_OUT17";
258                                 regulator-min-microvolt = <2800000>;
259                                 regulator-max-microvolt = <2800000>;
260                                 regulator-always-on;
261                                 op_mode = <0>;
262                         };
263 
264                         ldo25_reg: LDO25 {
265                                 regulator-name = "vdd_bridge";
266                                 regulator-min-microvolt = <1200000>;
267                                 regulator-max-microvolt = <1200000>;
268                                 regulator-always-on;
269                                 op_mode = <1>;
270                         };
271 
272                         buck1_reg: BUCK1 {
273                                 regulator-name = "vdd_mif";
274                                 regulator-min-microvolt = <950000>;
275                                 regulator-max-microvolt = <1300000>;
276                                 regulator-always-on;
277                                 regulator-boot-on;
278                                 op_mode = <3>;
279                         };
280 
281                         buck2_reg: BUCK2 {
282                                 regulator-name = "vdd_arm";
283                                 regulator-min-microvolt = <850000>;
284                                 regulator-max-microvolt = <1350000>;
285                                 regulator-always-on;
286                                 regulator-boot-on;
287                                 op_mode = <3>;
288                         };
289 
290                         buck3_reg: BUCK3 {
291                                 regulator-name = "vdd_int";
292                                 regulator-min-microvolt = <900000>;
293                                 regulator-max-microvolt = <1200000>;
294                                 regulator-always-on;
295                                 regulator-boot-on;
296                                 op_mode = <3>;
297                         };
298 
299                         buck4_reg: BUCK4 {
300                                 regulator-name = "vdd_g3d";
301                                 regulator-min-microvolt = <850000>;
302                                 regulator-max-microvolt = <1300000>;
303                                 regulator-boot-on;
304                                 op_mode = <3>;
305                         };
306 
307                         buck5_reg: BUCK5 {
308                                 regulator-name = "P1.8V_BUCK_OUT5";
309                                 regulator-min-microvolt = <1800000>;
310                                 regulator-max-microvolt = <1800000>;
311                                 regulator-always-on;
312                                 regulator-boot-on;
313                                 op_mode = <1>;
314                         };
315 
316                         buck6_reg: BUCK6 {
317                                 regulator-name = "P1.2V_BUCK_OUT6";
318                                 regulator-min-microvolt = <1200000>;
319                                 regulator-max-microvolt = <1200000>;
320                                 regulator-always-on;
321                                 regulator-boot-on;
322                                 op_mode = <0>;
323                         };
324 
325                         buck9_reg: BUCK9 {
326                                 regulator-name = "vdd_ummc";
327                                 regulator-min-microvolt = <950000>;
328                                 regulator-max-microvolt = <3000000>;
329                                 regulator-always-on;
330                                 regulator-boot-on;
331                                 op_mode = <3>;
332                         };
333                 };
334         };
335 };
336 
337 &i2c_1 {
338         status = "okay";
339         samsung,i2c-sda-delay = <100>;
340         samsung,i2c-max-bus-freq = <378000>;
341 
342         trackpad@4b {
343                 compatible = "atmel,maxtouch";
344                 reg = <0x4b>;
345                 interrupt-parent = <&gpx1>;
346                 interrupts = <2 IRQ_TYPE_EDGE_FALLING>;
347                 pinctrl-names = "default";
348                 pinctrl-0 = <&trackpad_irq>;
349                 linux,gpio-keymap = <KEY_RESERVED
350                                      KEY_RESERVED
351                                      KEY_RESERVED
352                                      KEY_RESERVED
353                                      KEY_RESERVED
354                                      BTN_LEFT>;
355                 wakeup-source;
356         };
357 };
358 
359 /*
360  * Disabled pullups since external part has its own pullups and
361  * double-pulling gets us out of spec in some cases.
362  */
363 &i2c2_bus {
364         samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
365 };
366 
367 &i2c_2 {
368         status = "okay";
369         /* used by HDMI DDC */
370         samsung,i2c-sda-delay = <100>;
371         samsung,i2c-max-bus-freq = <66000>;
372 };
373 
374 &i2c_3 {
375         status = "okay";
376         samsung,i2c-sda-delay = <100>;
377         samsung,i2c-max-bus-freq = <66000>;
378 };
379 
380 &i2c_4 {
381         status = "okay";
382         samsung,i2c-sda-delay = <100>;
383         samsung,i2c-max-bus-freq = <66000>;
384 
385         cros_ec: embedded-controller@1e {
386                 compatible = "google,cros-ec-i2c";
387                 reg = <0x1e>;
388                 interrupts = <6 IRQ_TYPE_NONE>;
389                 interrupt-parent = <&gpx1>;
390                 wakeup-source;
391                 pinctrl-names = "default";
392                 pinctrl-0 = <&ec_irq>;
393         };
394 };
395 
396 &i2c_5 {
397         status = "okay";
398         samsung,i2c-sda-delay = <100>;
399         samsung,i2c-max-bus-freq = <66000>;
400 };
401 
402 &i2c_7 {
403         status = "okay";
404         samsung,i2c-sda-delay = <100>;
405         samsung,i2c-max-bus-freq = <66000>;
406 
407         temperature-sensor@4c {
408                 compatible = "gmt,g781";
409                 reg = <0x4c>;
410         };
411 };
412 
413 &i2c_8 {
414         status = "okay";
415         /* used by HDMI PHY */
416         samsung,i2c-sda-delay = <100>;
417         samsung,i2c-max-bus-freq = <378000>;
418 };
419 
420 &i2s0 {
421         status = "okay";
422 };
423 
424 &mixer {
425         status = "okay";
426 };
427 
428 &mmc_0 {
429         status = "okay";
430         broken-cd;
431         card-detect-delay = <200>;
432         samsung,dw-mshc-ciu-div = <3>;
433         samsung,dw-mshc-sdr-timing = <2 3>;
434         samsung,dw-mshc-ddr-timing = <1 2>;
435         pinctrl-names = "default";
436         pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_cd &sd0_bus4 &sd0_bus8>;
437         bus-width = <8>;
438         cap-mmc-highspeed;
439         mmc-ddr-1_8v;
440 };
441 
442 /*
443  * On Spring we've got SIP WiFi and so can keep drive strengths low to
444  * reduce EMI.
445  */
446 &mmc_1 {
447         status = "okay";
448         broken-cd;
449         card-detect-delay = <200>;
450         samsung,dw-mshc-ciu-div = <3>;
451         samsung,dw-mshc-sdr-timing = <2 3>;
452         samsung,dw-mshc-ddr-timing = <1 2>;
453         pinctrl-names = "default";
454         pinctrl-0 = <&sd1_clk &sd1_cmd &sd1_cd &sd1_bus4>;
455         bus-width = <4>;
456         cap-sd-highspeed;
457 };
458 
459 &pinctrl_0 {
460         s5m8767_dvs: s5m8767-dvs-pins {
461                 samsung,pins = "gpd1-0", "gpd1-1", "gpd1-2";
462                 samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
463                 samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
464                 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
465         };
466 
467         dp_hpd_gpio: dp-hpd-pins {
468                 samsung,pins = "gpc3-0";
469                 samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
470                 samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
471                 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
472         };
473 
474         trackpad_irq: trackpad-irq-pins {
475                 samsung,pins = "gpx1-2";
476                 samsung,pin-function = <EXYNOS_PIN_FUNC_F>;
477                 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
478                 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
479         };
480 
481         power_key_irq: power-key-irq-pins {
482                 samsung,pins = "gpx1-3";
483                 samsung,pin-function = <EXYNOS_PIN_FUNC_F>;
484                 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
485                 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
486         };
487 
488         ec_irq: ec-irq-pins {
489                 samsung,pins = "gpx1-6";
490                 samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
491                 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
492                 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
493         };
494 
495         s5m8767_ds: s5m8767-ds-pins {
496                 samsung,pins = "gpx2-3", "gpx2-4", "gpx2-5";
497                 samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
498                 samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
499                 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
500         };
501 
502         s5m8767_irq: s5m8767-irq-pins {
503                 samsung,pins = "gpx3-2";
504                 samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
505                 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
506                 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
507         };
508 
509         lid_irq: lid-irq-pins {
510                 samsung,pins = "gpx3-5";
511                 samsung,pin-function = <EXYNOS_PIN_FUNC_F>;
512                 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
513                 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
514         };
515 
516         hdmi_hpd_irq: hdmi-hpd-irq-pins {
517                 samsung,pins = "gpx3-7";
518                 samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
519                 samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
520                 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
521         };
522 };
523 
524 &pinctrl_1 {
525         hsic_reset: hsic-reset-pins {
526                 samsung,pins = "gpe1-0";
527                 samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
528                 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
529                 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
530         };
531 };
532 
533 &rtc {
534         status = "okay";
535         clocks = <&clock CLK_RTC>, <&s5m8767_osc S2MPS11_CLK_AP>;
536         clock-names = "rtc", "rtc_src";
537 };
538 
539 &sd1_bus4 {
540         samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
541 };
542 
543 &sd1_cd {
544         samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
545 };
546 
547 &sd1_clk {
548         samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
549 };
550 
551 &sd1_cmd {
552         samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
553         samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
554 };
555 
556 &spi_1 {
557         status = "okay";
558         samsung,spi-src-clk = <0>;
559         num-cs = <1>;
560 };
561 
562 &usbdrd {
563         vdd10-supply = <&ldo15_reg>;
564         vdd33-supply = <&ldo12_reg>;
565 };
566 
567 #include "../cros-ec-keyboard.dtsi"

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php