Linux Audio

Check our new training course

In-person Linux kernel drivers training

Jun 16-20, 2025
Register
Loading...
v5.4
  1// SPDX-License-Identifier: GPL-2.0
  2/*
  3 * Samsung's Exynos3250 based Rinato board device tree source
  4 *
  5 * Copyright (c) 2014 Samsung Electronics Co., Ltd.
  6 *		http://www.samsung.com
  7 *
  8 * Device tree source file for Samsung's Rinato board which is based on
  9 * Samsung Exynos3250 SoC.
 10 */
 11
 12/dts-v1/;
 13#include "exynos3250.dtsi"
 14#include "exynos4412-ppmu-common.dtsi"
 15#include <dt-bindings/input/input.h>
 16#include <dt-bindings/gpio/gpio.h>
 17#include <dt-bindings/clock/samsung,s2mps11.h>
 18
 19/ {
 20	model = "Samsung Rinato board";
 21	compatible = "samsung,rinato", "samsung,exynos3250", "samsung,exynos3";
 22
 23	aliases {
 24		i2c7 = &i2c_max77836;
 25	};
 26
 27	chosen {
 28		stdout-path = &serial_1;
 29	};
 30
 31	memory@40000000 {
 32		device_type = "memory";
 33		reg =  <0x40000000 0x1ff00000>;
 34	};
 35
 36	firmware@205f000 {
 37		compatible = "samsung,secure-firmware";
 38		reg = <0x0205F000 0x1000>;
 39	};
 40
 41	gpio_keys {
 42		compatible = "gpio-keys";
 43
 44		power_key {
 45			gpios = <&gpx2 7 GPIO_ACTIVE_LOW>;
 46			linux,code = <KEY_POWER>;
 47			label = "power key";
 48			debounce-interval = <10>;
 49			wakeup-source;
 50		};
 51	};
 52
 
 
 
 
 
 53	i2c_max77836: i2c-gpio-0 {
 54		compatible = "i2c-gpio";
 55		gpios = <&gpd0 2 GPIO_ACTIVE_HIGH>, <&gpd0 3 GPIO_ACTIVE_HIGH>;
 
 56		#address-cells = <1>;
 57		#size-cells = <0>;
 58
 59		max77836: subpmic@25 {
 60			compatible = "maxim,max77836";
 61			interrupt-parent = <&gpx1>;
 62			interrupts = <5 IRQ_TYPE_NONE>;
 63			reg = <0x25>;
 64			wakeup-source;
 65
 66			muic: max77836-muic {
 67				compatible = "maxim,max77836-muic";
 68			};
 69
 70			regulators {
 71				compatible = "maxim,max77836-regulator";
 72				safeout_reg: SAFEOUT {
 73					regulator-name = "SAFEOUT";
 74				};
 75
 76				charger_reg: CHARGER {
 77					regulator-name = "CHARGER";
 78					regulator-min-microamp = <45000>;
 79					regulator-max-microamp = <475000>;
 80					regulator-boot-on;
 81				};
 82
 83				motor_reg: LDO1 {
 84					regulator-name = "MOT_2.7V";
 85					regulator-min-microvolt = <1100000>;
 86					regulator-max-microvolt = <2700000>;
 87				};
 88
 89				LDO2 {
 90					regulator-name = "UNUSED_LDO2";
 91					regulator-min-microvolt = <800000>;
 92					regulator-max-microvolt = <3950000>;
 93				};
 94			};
 95
 96			charger {
 97				compatible = "maxim,max77836-charger";
 98
 99				maxim,constant-uvolt = <4350000>;
100				maxim,fast-charge-uamp = <225000>;
101				maxim,eoc-uamp = <7500>;
102				maxim,ovp-uvolt = <6500000>;
103			};
104		};
105	};
106
107	haptics {
108		compatible = "regulator-haptic";
109		haptic-supply = <&motor_reg>;
110		min-microvolt = <1100000>;
111		max-microvolt = <2700000>;
112	};
113
114	thermal-zones {
115		cpu_thermal: cpu-thermal {
116			cooling-maps {
117				map0 {
118					/* Corresponds to 500MHz */
119					cooling-device = <&cpu0 5 5>,
120							 <&cpu1 5 5>;
121				};
122				map1 {
123					/* Corresponds to 200MHz */
124					cooling-device = <&cpu0 8 8>,
125							 <&cpu1 8 8>;
126				};
127			};
128		};
129	};
130};
131
132&adc {
133	vdd-supply = <&ldo3_reg>;
134	status = "okay";
135	assigned-clocks = <&cmu CLK_SCLK_TSADC>;
136	assigned-clock-rates = <6000000>;
137
138	thermistor-ap {
139		compatible = "ntc,ncp15wb473";
140		pullup-uv = <1800000>;
141		pullup-ohm = <100000>;
142		pulldown-ohm = <100000>;
143		io-channels = <&adc 0>;
144	};
145
146	thermistor-battery {
147		compatible = "ntc,ncp15wb473";
148		pullup-uv = <1800000>;
149		pullup-ohm = <100000>;
150		pulldown-ohm = <100000>;
151		io-channels = <&adc 1>;
152	};
153};
154
155&bus_dmc {
156	devfreq-events = <&ppmu_dmc0_3>, <&ppmu_dmc1_3>;
157	vdd-supply = <&buck1_reg>;
158	status = "okay";
159};
160
161&bus_leftbus {
162	devfreq-events = <&ppmu_leftbus_3>, <&ppmu_rightbus_3>;
163	vdd-supply = <&buck3_reg>;
164	status = "okay";
165};
166
167&bus_rightbus {
168	devfreq = <&bus_leftbus>;
169	status = "okay";
170};
171
172&bus_lcd0 {
173	devfreq = <&bus_leftbus>;
174	status = "okay";
175};
176
177&bus_fsys {
178	devfreq = <&bus_leftbus>;
179	status = "okay";
180};
181
182&bus_mcuisp {
183	devfreq = <&bus_leftbus>;
184	status = "okay";
185};
186
187&bus_isp {
188	devfreq = <&bus_leftbus>;
189	status = "okay";
190};
191
192&bus_peril {
193	devfreq = <&bus_leftbus>;
194	status = "okay";
195};
196
197&bus_mfc {
198	devfreq = <&bus_leftbus>;
199	status = "okay";
200};
201
202&cpu0 {
203	cpu0-supply = <&buck2_reg>;
204};
205
206&exynos_usbphy {
207	status = "okay";
208	vbus-supply = <&safeout_reg>;
209};
210
211&hsotg {
212	vusb_d-supply = <&ldo15_reg>;
213	vusb_a-supply = <&ldo12_reg>;
214	dr_mode = "peripheral";
215	status = "okay";
216};
217
218&dsi_0 {
219	vddcore-supply = <&ldo6_reg>;
220	vddio-supply = <&ldo6_reg>;
221	samsung,burst-clock-frequency = <250000000>;
222	samsung,esc-clock-frequency = <20000000>;
223	samsung,pll-clock-frequency = <24000000>;
224	status = "okay";
225
226	panel@0 {
227		compatible = "samsung,s6e63j0x03";
228		reg = <0>;
229		vdd3-supply = <&ldo16_reg>;
230		vci-supply = <&ldo20_reg>;
231		reset-gpios = <&gpe0 1 GPIO_ACTIVE_LOW>;
232		te-gpios = <&gpx0 6 GPIO_ACTIVE_HIGH>;
233	};
234};
235
236&fimd {
237	status = "okay";
238
239	i80-if-timings {
240		cs-setup = <0>;
241		wr-setup = <0>;
242		wr-act = <1>;
243		wr-hold = <0>;
244	};
245};
246
247&gpu {
248	mali-supply = <&buck3_reg>;
249	status = "okay";
250};
251
252&i2c_0 {
253	#address-cells = <1>;
254	#size-cells = <0>;
255	samsung,i2c-sda-delay = <100>;
256	samsung,i2c-slave-addr = <0x10>;
257	samsung,i2c-max-bus-freq = <100000>;
258	status = "okay";
259
260	s2mps14_pmic@66 {
261		compatible = "samsung,s2mps14-pmic";
262		interrupt-parent = <&gpx0>;
263		interrupts = <7 IRQ_TYPE_NONE>;
264		reg = <0x66>;
265		wakeup-source;
266
267		s2mps14_osc: clocks {
268			compatible = "samsung,s2mps14-clk";
269			#clock-cells = <1>;
270			clock-output-names = "s2mps14_ap", "unused",
271				"s2mps14_bt";
272		};
273
274		regulators {
275			ldo1_reg: LDO1 {
276				regulator-name = "VAP_ALIVE_1.0V";
277				regulator-min-microvolt = <1000000>;
278				regulator-max-microvolt = <1000000>;
279				regulator-always-on;
280
281				regulator-state-mem {
282					regulator-on-in-suspend;
283				};
284			};
285
286			ldo2_reg: LDO2 {
287				regulator-name = "VAP_M1_1.2V";
288				regulator-min-microvolt = <1200000>;
289				regulator-max-microvolt = <1200000>;
290				regulator-always-on;
291
292				regulator-state-mem {
293					regulator-off-in-suspend;
294				};
295			};
296
297			ldo3_reg: LDO3 {
298				regulator-name = "VCC_AP_1.8V";
299				regulator-min-microvolt = <1800000>;
300				regulator-max-microvolt = <1800000>;
301				regulator-always-on;
302
303				regulator-state-mem {
304					regulator-off-in-suspend;
305				};
306			};
307
308			ldo4_reg: LDO4 {
309				regulator-name = "VAP_AVDD_PLL1";
310				regulator-min-microvolt = <1800000>;
311				regulator-max-microvolt = <1800000>;
312				regulator-always-on;
313
314				regulator-state-mem {
315					regulator-off-in-suspend;
316				};
317			};
318
319			ldo5_reg: LDO5 {
320				regulator-name = "VAP_PLL_ISO_1.0V";
321				regulator-min-microvolt = <1000000>;
322				regulator-max-microvolt = <1000000>;
323				regulator-always-on;
324
325				regulator-state-mem {
326					regulator-off-in-suspend;
327				};
328			};
329
330			ldo6_reg: LDO6 {
331				regulator-name = "VAP_VMIPI_1.0V";
332				regulator-min-microvolt = <1000000>;
333				regulator-max-microvolt = <1000000>;
334				regulator-always-on;
335
336				regulator-state-mem {
337					regulator-off-in-suspend;
338				};
339			};
340
341			ldo7_reg: LDO7 {
342				regulator-name = "VAP_AVDD_1.8V";
343				regulator-min-microvolt = <1800000>;
344				regulator-max-microvolt = <1800000>;
345				regulator-always-on;
346
347				regulator-state-mem {
348					regulator-off-in-suspend;
349				};
350			};
351
352			ldo8_reg: LDO8 {
353				regulator-name = "VAP_USB_3.0V";
354				regulator-min-microvolt = <3000000>;
355				regulator-max-microvolt = <3000000>;
356				regulator-always-on;
357
358				regulator-state-mem {
359					regulator-off-in-suspend;
360				};
361			};
362
363			ldo9_reg: LDO9 {
364				regulator-name = "V_LPDDR_1.2V";
365				regulator-min-microvolt = <1200000>;
366				regulator-max-microvolt = <1200000>;
367				regulator-always-on;
368
369				regulator-state-mem {
370					regulator-on-in-suspend;
371				};
372			};
373
374			ldo10_reg: LDO10 {
375				regulator-name = "UNUSED_LDO10";
376				regulator-min-microvolt = <1000000>;
377				regulator-max-microvolt = <1000000>;
378
379				regulator-state-mem {
380					regulator-off-in-suspend;
381				};
382			};
383
384			ldo11_reg: LDO11 {
385				regulator-name = "V_EMMC_1.8V";
386				regulator-min-microvolt = <1800000>;
387				regulator-max-microvolt = <1800000>;
388				samsung,ext-control-gpios = <&gpk0 2 GPIO_ACTIVE_HIGH>;
389			};
390
391			ldo12_reg: LDO12 {
392				regulator-name = "V_EMMC_2.8V";
393				regulator-min-microvolt = <2800000>;
394				regulator-max-microvolt = <2800000>;
395				samsung,ext-control-gpios = <&gpk0 2 GPIO_ACTIVE_HIGH>;
396			};
397
398			ldo13_reg: LDO13 {
399				regulator-name = "CAM_AVDD_2.8V";
400				regulator-min-microvolt = <2800000>;
401				regulator-max-microvolt = <2800000>;
402
403				regulator-state-mem {
404					regulator-off-in-suspend;
405				};
406			};
407
408			ldo14_reg: LDO14 {
409				regulator-name = "UNUSED_LDO14";
410				regulator-min-microvolt = <2700000>;
411				regulator-max-microvolt = <2700000>;
412
413				regulator-state-mem {
414					regulator-off-in-suspend;
415				};
416			};
417
418			ldo15_reg: LDO15 {
419				regulator-name = "TSP_AVDD_3.3V";
420				regulator-min-microvolt = <3300000>;
421				regulator-max-microvolt = <3300000>;
422
423				regulator-state-mem {
424					regulator-off-in-suspend;
425				};
426			};
427
428			ldo16_reg: LDO16 {
429				regulator-name = "LCD_VDD_3.3V";
430				regulator-min-microvolt = <3300000>;
431				regulator-max-microvolt = <3300000>;
432
433				regulator-state-mem {
434					regulator-off-in-suspend;
435				};
436			};
437
438			ldo17_reg: LDO17 {
439				regulator-name = "V_IRLED_3.3V";
440				regulator-min-microvolt = <3300000>;
441				regulator-max-microvolt = <3300000>;
442
443				regulator-state-mem {
444					regulator-off-in-suspend;
445				};
446			};
447
448			ldo18_reg: LDO18 {
449				regulator-name = "CAM_AF_2.8V";
450				regulator-min-microvolt = <2800000>;
451				regulator-max-microvolt = <2800000>;
452
453				regulator-state-mem {
454					regulator-off-in-suspend;
455				};
456			};
457
458			ldo19_reg: LDO19 {
459				regulator-name = "TSP_VDD_1.8V";
460				regulator-min-microvolt = <1800000>;
461				regulator-max-microvolt = <1800000>;
462
463				regulator-state-mem {
464					regulator-off-in-suspend;
465				};
466			};
467
468			ldo20_reg: LDO20 {
469				regulator-name = "LCD_VDD_1.8V";
470				regulator-min-microvolt = <1800000>;
471				regulator-max-microvolt = <1800000>;
472
473				regulator-state-mem {
474					regulator-off-in-suspend;
475				};
476			};
477
478			ldo21_reg: LDO21 {
479				regulator-name = "CAM_IO_1.8V";
480				regulator-min-microvolt = <1800000>;
481				regulator-max-microvolt = <1800000>;
482
483				regulator-state-mem {
484					regulator-off-in-suspend;
485				};
486			};
487
488			ldo22_reg: LDO22 {
489				regulator-name = "CAM_DVDD_1.2V";
490				regulator-min-microvolt = <1200000>;
491				regulator-max-microvolt = <1200000>;
492
493				regulator-state-mem {
494					regulator-off-in-suspend;
495				};
496			};
497
498			ldo23_reg: LDO23 {
499				regulator-name = "HRM_VCC_1.8V";
500				regulator-min-microvolt = <1800000>;
501				regulator-max-microvolt = <1800000>;
502				regulator-always-on;
503			};
504
505			ldo24_reg: LDO24 {
506				regulator-name = "HRM_VCC_3.3V";
507				regulator-min-microvolt = <3000000>;
508				regulator-max-microvolt = <3000000>;
509
510				regulator-state-mem {
511					regulator-off-in-suspend;
512				};
513			};
514
515			ldo25_reg: LDO25 {
516				regulator-name = "UNUSED_LDO25";
517				regulator-min-microvolt = <3000000>;
518				regulator-max-microvolt = <3000000>;
519
520				regulator-state-mem {
521					regulator-off-in-suspend;
522				};
523			};
524
525			buck1_reg: BUCK1 {
526				regulator-name = "VAP_MIF_1.0V";
527				regulator-min-microvolt = <800000>;
528				regulator-max-microvolt = <900000>;
529				regulator-always-on;
530
531				regulator-state-mem {
532					regulator-off-in-suspend;
533				};
534			};
535
536			buck2_reg: BUCK2 {
537				regulator-name = "VAP_ARM_1.0V";
538				regulator-min-microvolt = <850000>;
539				regulator-max-microvolt = <1150000>;
540				regulator-always-on;
541
542				regulator-state-mem {
543					regulator-off-in-suspend;
544				};
545			};
546
547			buck3_reg: BUCK3 {
548				regulator-name = "VAP_INT3D_1.0V";
549				regulator-min-microvolt = <850000>;
550				regulator-max-microvolt = <1000000>;
551				regulator-always-on;
552
553				regulator-state-mem {
554					regulator-off-in-suspend;
555				};
556			};
557
558			buck4_reg: BUCK4 {
559				regulator-name = "VCC_SUB_1.95V";
560				regulator-min-microvolt = <1950000>;
561				regulator-max-microvolt = <1950000>;
562				regulator-always-on;
563
564				regulator-state-mem {
565					regulator-on-in-suspend;
566				};
567			};
568
569			buck5_reg: BUCK5 {
570				regulator-name = "VCC_SUB_1.35V";
571				regulator-min-microvolt = <1350000>;
572				regulator-max-microvolt = <1350000>;
573				regulator-always-on;
574
575				regulator-state-mem {
576					regulator-on-in-suspend;
577				};
578			};
579		};
580	};
581};
582
583&i2c_1 {
584	#address-cells = <1>;
585	#size-cells = <0>;
586	samsung,i2c-sda-delay = <100>;
587	samsung,i2c-slave-addr = <0x10>;
588	samsung,i2c-max-bus-freq = <400000>;
589	status = "okay";
590
591	fuelgauge@36 {
592		compatible = "maxim,max77836-battery";
593		interrupt-parent = <&gpx1>;
594		interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
595		reg = <0x36>;
596	};
597};
598
599&i2s2 {
600	status = "okay";
601};
602
603&jpeg {
604	status = "okay";
605};
606
607&mshc_0 {
608	#address-cells = <1>;
609	#size-cells = <0>;
610	broken-cd;
611	non-removable;
612	cap-mmc-highspeed;
613	desc-num = <4>;
614	mmc-hs200-1_8v;
615	card-detect-delay = <200>;
616	vmmc-supply = <&ldo12_reg>;
617	clock-frequency = <100000000>;
618	max-frequency = <100000000>;
619	samsung,dw-mshc-ciu-div = <1>;
620	samsung,dw-mshc-sdr-timing = <0 1>;
621	samsung,dw-mshc-ddr-timing = <1 2>;
622	pinctrl-names = "default";
623	pinctrl-0 = <&sd0_cmd &sd0_bus1 &sd0_bus4 &sd0_bus8>;
624	bus-width = <8>;
625	status = "okay";
626};
627
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
628&serial_0 {
629	assigned-clocks = <&cmu CLK_SCLK_UART0>;
630	assigned-clock-rates = <100000000>;
631	status = "okay";
 
 
 
 
 
 
 
 
 
632};
633
634&serial_1 {
635	status = "okay";
636};
637
638&tmu {
639	vtmu-supply = <&ldo7_reg>;
640	status = "okay";
641};
642
643&rtc {
644	clocks = <&cmu CLK_RTC>, <&s2mps14_osc S2MPS11_CLK_AP>;
645	clock-names = "rtc", "rtc_src";
646	status = "okay";
647};
648
649&xusbxti {
650	clock-frequency = <24000000>;
651};
652
653&pinctrl_0 {
654	pinctrl-names = "default";
655	pinctrl-0 = <&initial0 &sleep0>;
656
657	initial0: initial-state {
658		PIN_IN(gpa1-4, DOWN, LV1);
659		PIN_IN(gpa1-5, DOWN, LV1);
660
661		PIN_IN(gpc0-0, DOWN, LV1);
662		PIN_IN(gpc0-1, DOWN, LV1);
663		PIN_IN(gpc0-2, DOWN, LV1);
664		PIN_IN(gpc0-3, DOWN, LV1);
665		PIN_IN(gpc0-4, DOWN, LV1);
666
667		PIN_IN(gpd0-0, DOWN, LV1);
668		PIN_IN(gpd0-1, DOWN, LV1);
669	};
670
671	sleep0: sleep-state {
672		PIN_SLP(gpa0-0, INPUT, DOWN);
673		PIN_SLP(gpa0-1, INPUT, DOWN);
674		PIN_SLP(gpa0-2, INPUT, DOWN);
675		PIN_SLP(gpa0-3, INPUT, DOWN);
676		PIN_SLP(gpa0-4, INPUT, DOWN);
677		PIN_SLP(gpa0-5, INPUT, DOWN);
678		PIN_SLP(gpa0-6, INPUT, DOWN);
679		PIN_SLP(gpa0-7, INPUT, DOWN);
680
681		PIN_SLP(gpa1-0, INPUT, DOWN);
682		PIN_SLP(gpa1-1, INPUT, DOWN);
683		PIN_SLP(gpa1-2, INPUT, DOWN);
684		PIN_SLP(gpa1-3, INPUT, DOWN);
685		PIN_SLP(gpa1-4, INPUT, DOWN);
686		PIN_SLP(gpa1-5, INPUT, DOWN);
687
688		PIN_SLP(gpb-0, PREV, NONE);
689		PIN_SLP(gpb-1, PREV, NONE);
690		PIN_SLP(gpb-2, PREV, NONE);
691		PIN_SLP(gpb-3, PREV, NONE);
692		PIN_SLP(gpb-4, INPUT, DOWN);
693		PIN_SLP(gpb-5, INPUT, DOWN);
694		PIN_SLP(gpb-6, INPUT, DOWN);
695		PIN_SLP(gpb-7, INPUT, DOWN);
696
697		PIN_SLP(gpc0-0, INPUT, DOWN);
698		PIN_SLP(gpc0-1, INPUT, DOWN);
699		PIN_SLP(gpc0-2, INPUT, DOWN);
700		PIN_SLP(gpc0-3, INPUT, DOWN);
701		PIN_SLP(gpc0-4, INPUT, DOWN);
702
703		PIN_SLP(gpc1-0, INPUT, DOWN);
704		PIN_SLP(gpc1-1, INPUT, DOWN);
705		PIN_SLP(gpc1-2, INPUT, DOWN);
706		PIN_SLP(gpc1-3, INPUT, DOWN);
707		PIN_SLP(gpc1-4, INPUT, DOWN);
708
709		PIN_SLP(gpd0-0, INPUT, DOWN);
710		PIN_SLP(gpd0-1, INPUT, DOWN);
711		PIN_SLP(gpd0-2, INPUT, NONE);
712		PIN_SLP(gpd0-3, INPUT, NONE);
713
714		PIN_SLP(gpd1-0, INPUT, NONE);
715		PIN_SLP(gpd1-1, INPUT, NONE);
716		PIN_SLP(gpd1-2, INPUT, NONE);
717		PIN_SLP(gpd1-3, INPUT, NONE);
718	};
719};
720
721&pinctrl_1 {
722	pinctrl-names = "default";
723	pinctrl-0 = <&initial1 &sleep1>;
724
725	initial1: initial-state {
726		PIN_IN(gpe0-6, DOWN, LV1);
727		PIN_IN(gpe0-7, DOWN, LV1);
728
729		PIN_IN(gpe1-0, DOWN, LV1);
730		PIN_IN(gpe1-3, DOWN, LV1);
731		PIN_IN(gpe1-4, DOWN, LV1);
732		PIN_IN(gpe1-5, DOWN, LV1);
733		PIN_IN(gpe1-6, DOWN, LV1);
734
735		PIN_IN(gpk2-0, DOWN, LV1);
736		PIN_IN(gpk2-1, DOWN, LV1);
737		PIN_IN(gpk2-2, DOWN, LV1);
738		PIN_IN(gpk2-3, DOWN, LV1);
739		PIN_IN(gpk2-4, DOWN, LV1);
740		PIN_IN(gpk2-5, DOWN, LV1);
741		PIN_IN(gpk2-6, DOWN, LV1);
742
743		PIN_IN(gpm0-0, DOWN, LV1);
744		PIN_IN(gpm0-1, DOWN, LV1);
745		PIN_IN(gpm0-2, DOWN, LV1);
746		PIN_IN(gpm0-3, DOWN, LV1);
747		PIN_IN(gpm0-4, DOWN, LV1);
748		PIN_IN(gpm0-5, DOWN, LV1);
749		PIN_IN(gpm0-6, DOWN, LV1);
750		PIN_IN(gpm0-7, DOWN, LV1);
751
752		PIN_IN(gpm1-0, DOWN, LV1);
753		PIN_IN(gpm1-1, DOWN, LV1);
754		PIN_IN(gpm1-2, DOWN, LV1);
755		PIN_IN(gpm1-3, DOWN, LV1);
756		PIN_IN(gpm1-4, DOWN, LV1);
757		PIN_IN(gpm1-5, DOWN, LV1);
758		PIN_IN(gpm1-6, DOWN, LV1);
759
760		PIN_IN(gpm2-0, DOWN, LV1);
761		PIN_IN(gpm2-1, DOWN, LV1);
762
763		PIN_IN(gpm3-0, DOWN, LV1);
764		PIN_IN(gpm3-1, DOWN, LV1);
765		PIN_IN(gpm3-2, DOWN, LV1);
766		PIN_IN(gpm3-3, DOWN, LV1);
767		PIN_IN(gpm3-4, DOWN, LV1);
768
769		PIN_IN(gpm4-1, DOWN, LV1);
770		PIN_IN(gpm4-2, DOWN, LV1);
771		PIN_IN(gpm4-3, DOWN, LV1);
772		PIN_IN(gpm4-4, DOWN, LV1);
773		PIN_IN(gpm4-5, DOWN, LV1);
774		PIN_IN(gpm4-6, DOWN, LV1);
775		PIN_IN(gpm4-7, DOWN, LV1);
776	};
777
778	sleep1: sleep-state {
779		PIN_SLP(gpe0-0, PREV, NONE);
780		PIN_SLP(gpe0-1, PREV, NONE);
781		PIN_SLP(gpe0-2, INPUT, DOWN);
782		PIN_SLP(gpe0-3, INPUT, UP);
783		PIN_SLP(gpe0-4, INPUT, DOWN);
784		PIN_SLP(gpe0-5, INPUT, DOWN);
785		PIN_SLP(gpe0-6, INPUT, DOWN);
786		PIN_SLP(gpe0-7, INPUT, DOWN);
787
788		PIN_SLP(gpe1-0, INPUT, DOWN);
789		PIN_SLP(gpe1-1, PREV, NONE);
790		PIN_SLP(gpe1-2, INPUT, DOWN);
791		PIN_SLP(gpe1-3, INPUT, DOWN);
792		PIN_SLP(gpe1-4, INPUT, DOWN);
793		PIN_SLP(gpe1-5, INPUT, DOWN);
794		PIN_SLP(gpe1-6, INPUT, DOWN);
795		PIN_SLP(gpe1-7, INPUT, NONE);
796
797		PIN_SLP(gpe2-0, INPUT, NONE);
798		PIN_SLP(gpe2-1, INPUT, NONE);
799		PIN_SLP(gpe2-2, INPUT, NONE);
800
801		PIN_SLP(gpk0-0, INPUT, DOWN);
802		PIN_SLP(gpk0-1, INPUT, DOWN);
803		PIN_SLP(gpk0-2, OUT0, NONE);
804		PIN_SLP(gpk0-3, INPUT, DOWN);
805		PIN_SLP(gpk0-4, INPUT, DOWN);
806		PIN_SLP(gpk0-5, INPUT, DOWN);
807		PIN_SLP(gpk0-6, INPUT, DOWN);
808		PIN_SLP(gpk0-7, INPUT, DOWN);
809
810		PIN_SLP(gpk1-0, INPUT, DOWN);
811		PIN_SLP(gpk1-1, INPUT, DOWN);
812		PIN_SLP(gpk1-2, INPUT, DOWN);
813		PIN_SLP(gpk1-3, INPUT, DOWN);
814		PIN_SLP(gpk1-4, INPUT, DOWN);
815		PIN_SLP(gpk1-5, INPUT, DOWN);
816		PIN_SLP(gpk1-6, INPUT, DOWN);
817
818		PIN_SLP(gpk2-0, INPUT, DOWN);
819		PIN_SLP(gpk2-1, INPUT, DOWN);
820		PIN_SLP(gpk2-2, INPUT, DOWN);
821		PIN_SLP(gpk2-3, INPUT, DOWN);
822		PIN_SLP(gpk2-4, INPUT, DOWN);
823		PIN_SLP(gpk2-5, INPUT, DOWN);
824		PIN_SLP(gpk2-6, INPUT, DOWN);
825
826		PIN_SLP(gpl0-0, INPUT, DOWN);
827		PIN_SLP(gpl0-1, INPUT, DOWN);
828		PIN_SLP(gpl0-2, INPUT, DOWN);
829		PIN_SLP(gpl0-3, INPUT, DOWN);
830
831		PIN_SLP(gpm0-0, INPUT, DOWN);
832		PIN_SLP(gpm0-1, INPUT, DOWN);
833		PIN_SLP(gpm0-2, INPUT, DOWN);
834		PIN_SLP(gpm0-3, INPUT, DOWN);
835		PIN_SLP(gpm0-4, INPUT, DOWN);
836		PIN_SLP(gpm0-5, INPUT, DOWN);
837		PIN_SLP(gpm0-6, INPUT, DOWN);
838		PIN_SLP(gpm0-7, INPUT, DOWN);
839
840		PIN_SLP(gpm1-0, INPUT, DOWN);
841		PIN_SLP(gpm1-1, INPUT, DOWN);
842		PIN_SLP(gpm1-2, INPUT, DOWN);
843		PIN_SLP(gpm1-3, INPUT, DOWN);
844		PIN_SLP(gpm1-4, INPUT, DOWN);
845		PIN_SLP(gpm1-5, INPUT, DOWN);
846		PIN_SLP(gpm1-6, INPUT, DOWN);
847
848		PIN_SLP(gpm2-0, INPUT, DOWN);
849		PIN_SLP(gpm2-1, INPUT, DOWN);
850		PIN_SLP(gpm2-2, INPUT, DOWN);
851		PIN_SLP(gpm2-3, INPUT, DOWN);
852		PIN_SLP(gpm2-4, INPUT, DOWN);
853
854		PIN_SLP(gpm3-0, INPUT, DOWN);
855		PIN_SLP(gpm3-1, INPUT, DOWN);
856		PIN_SLP(gpm3-2, INPUT, DOWN);
857		PIN_SLP(gpm3-3, INPUT, DOWN);
858		PIN_SLP(gpm3-4, INPUT, DOWN);
859		PIN_SLP(gpm3-5, INPUT, DOWN);
860		PIN_SLP(gpm3-6, INPUT, DOWN);
861		PIN_SLP(gpm3-7, INPUT, DOWN);
862
863		PIN_SLP(gpm4-0, INPUT, DOWN);
864		PIN_SLP(gpm4-1, INPUT, DOWN);
865		PIN_SLP(gpm4-2, INPUT, DOWN);
866		PIN_SLP(gpm4-3, INPUT, DOWN);
867		PIN_SLP(gpm4-4, INPUT, DOWN);
868		PIN_SLP(gpm4-5, INPUT, DOWN);
869		PIN_SLP(gpm4-6, INPUT, DOWN);
870		PIN_SLP(gpm4-7, INPUT, DOWN);
871	};
872};
v5.9
  1// SPDX-License-Identifier: GPL-2.0
  2/*
  3 * Samsung's Exynos3250 based Rinato board device tree source
  4 *
  5 * Copyright (c) 2014 Samsung Electronics Co., Ltd.
  6 *		http://www.samsung.com
  7 *
  8 * Device tree source file for Samsung's Rinato board which is based on
  9 * Samsung Exynos3250 SoC.
 10 */
 11
 12/dts-v1/;
 13#include "exynos3250.dtsi"
 14#include "exynos4412-ppmu-common.dtsi"
 15#include <dt-bindings/input/input.h>
 16#include <dt-bindings/gpio/gpio.h>
 17#include <dt-bindings/clock/samsung,s2mps11.h>
 18
 19/ {
 20	model = "Samsung Rinato board";
 21	compatible = "samsung,rinato", "samsung,exynos3250", "samsung,exynos3";
 22
 23	aliases {
 24		i2c7 = &i2c_max77836;
 25	};
 26
 27	chosen {
 28		stdout-path = &serial_1;
 29	};
 30
 31	memory@40000000 {
 32		device_type = "memory";
 33		reg =  <0x40000000 0x1ff00000>;
 34	};
 35
 36	firmware@205f000 {
 37		compatible = "samsung,secure-firmware";
 38		reg = <0x0205F000 0x1000>;
 39	};
 40
 41	gpio_keys {
 42		compatible = "gpio-keys";
 43
 44		power_key {
 45			gpios = <&gpx2 7 GPIO_ACTIVE_LOW>;
 46			linux,code = <KEY_POWER>;
 47			label = "power key";
 48			debounce-interval = <10>;
 49			wakeup-source;
 50		};
 51	};
 52
 53	wlan_pwrseq: mshc1-pwrseq {
 54		compatible = "mmc-pwrseq-simple";
 55		reset-gpios = <&gpe0 4 GPIO_ACTIVE_LOW>;
 56	};
 57
 58	i2c_max77836: i2c-gpio-0 {
 59		compatible = "i2c-gpio";
 60		sda-gpios = <&gpd0 2 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
 61		scl-gpios = <&gpd0 3 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
 62		#address-cells = <1>;
 63		#size-cells = <0>;
 64
 65		max77836: subpmic@25 {
 66			compatible = "maxim,max77836";
 67			interrupt-parent = <&gpx1>;
 68			interrupts = <5 IRQ_TYPE_NONE>;
 69			reg = <0x25>;
 70			wakeup-source;
 71
 72			muic: max77836-muic {
 73				compatible = "maxim,max77836-muic";
 74			};
 75
 76			regulators {
 77				compatible = "maxim,max77836-regulator";
 78				safeout_reg: SAFEOUT {
 79					regulator-name = "SAFEOUT";
 80				};
 81
 82				charger_reg: CHARGER {
 83					regulator-name = "CHARGER";
 84					regulator-min-microamp = <45000>;
 85					regulator-max-microamp = <475000>;
 86					regulator-boot-on;
 87				};
 88
 89				motor_reg: LDO1 {
 90					regulator-name = "MOT_2.7V";
 91					regulator-min-microvolt = <1100000>;
 92					regulator-max-microvolt = <2700000>;
 93				};
 94
 95				LDO2 {
 96					regulator-name = "UNUSED_LDO2";
 97					regulator-min-microvolt = <800000>;
 98					regulator-max-microvolt = <3950000>;
 99				};
100			};
101
102			charger {
103				compatible = "maxim,max77836-charger";
104
105				maxim,constant-uvolt = <4350000>;
106				maxim,fast-charge-uamp = <225000>;
107				maxim,eoc-uamp = <7500>;
108				maxim,ovp-uvolt = <6500000>;
109			};
110		};
111	};
112
113	haptics {
114		compatible = "regulator-haptic";
115		haptic-supply = <&motor_reg>;
116		min-microvolt = <1100000>;
117		max-microvolt = <2700000>;
118	};
119
120	thermal-zones {
121		cpu_thermal: cpu-thermal {
122			cooling-maps {
123				map0 {
124					/* Corresponds to 500MHz */
125					cooling-device = <&cpu0 5 5>,
126							 <&cpu1 5 5>;
127				};
128				map1 {
129					/* Corresponds to 200MHz */
130					cooling-device = <&cpu0 8 8>,
131							 <&cpu1 8 8>;
132				};
133			};
134		};
135	};
136};
137
138&adc {
139	vdd-supply = <&ldo3_reg>;
140	status = "okay";
141	assigned-clocks = <&cmu CLK_SCLK_TSADC>;
142	assigned-clock-rates = <6000000>;
143
144	thermistor-ap {
145		compatible = "ntc,ncp15wb473";
146		pullup-uv = <1800000>;
147		pullup-ohm = <100000>;
148		pulldown-ohm = <100000>;
149		io-channels = <&adc 0>;
150	};
151
152	thermistor-battery {
153		compatible = "ntc,ncp15wb473";
154		pullup-uv = <1800000>;
155		pullup-ohm = <100000>;
156		pulldown-ohm = <100000>;
157		io-channels = <&adc 1>;
158	};
159};
160
161&bus_dmc {
162	devfreq-events = <&ppmu_dmc0_3>, <&ppmu_dmc1_3>;
163	vdd-supply = <&buck1_reg>;
164	status = "okay";
165};
166
167&bus_leftbus {
168	devfreq-events = <&ppmu_leftbus_3>, <&ppmu_rightbus_3>;
169	vdd-supply = <&buck3_reg>;
170	status = "okay";
171};
172
173&bus_rightbus {
174	devfreq = <&bus_leftbus>;
175	status = "okay";
176};
177
178&bus_lcd0 {
179	devfreq = <&bus_leftbus>;
180	status = "okay";
181};
182
183&bus_fsys {
184	devfreq = <&bus_leftbus>;
185	status = "okay";
186};
187
188&bus_mcuisp {
189	devfreq = <&bus_leftbus>;
190	status = "okay";
191};
192
193&bus_isp {
194	devfreq = <&bus_leftbus>;
195	status = "okay";
196};
197
198&bus_peril {
199	devfreq = <&bus_leftbus>;
200	status = "okay";
201};
202
203&bus_mfc {
204	devfreq = <&bus_leftbus>;
205	status = "okay";
206};
207
208&cpu0 {
209	cpu0-supply = <&buck2_reg>;
210};
211
212&exynos_usbphy {
213	status = "okay";
214	vbus-supply = <&safeout_reg>;
215};
216
217&hsotg {
218	vusb_d-supply = <&ldo15_reg>;
219	vusb_a-supply = <&ldo12_reg>;
220	dr_mode = "peripheral";
221	status = "okay";
222};
223
224&dsi_0 {
225	vddcore-supply = <&ldo6_reg>;
226	vddio-supply = <&ldo6_reg>;
227	samsung,burst-clock-frequency = <250000000>;
228	samsung,esc-clock-frequency = <20000000>;
229	samsung,pll-clock-frequency = <24000000>;
230	status = "okay";
231
232	panel@0 {
233		compatible = "samsung,s6e63j0x03";
234		reg = <0>;
235		vdd3-supply = <&ldo16_reg>;
236		vci-supply = <&ldo20_reg>;
237		reset-gpios = <&gpe0 1 GPIO_ACTIVE_LOW>;
238		te-gpios = <&gpx0 6 GPIO_ACTIVE_HIGH>;
239	};
240};
241
242&fimd {
243	status = "okay";
244
245	i80-if-timings {
246		cs-setup = <0>;
247		wr-setup = <0>;
248		wr-act = <1>;
249		wr-hold = <0>;
250	};
251};
252
253&gpu {
254	mali-supply = <&buck3_reg>;
255	status = "okay";
256};
257
258&i2c_0 {
259	#address-cells = <1>;
260	#size-cells = <0>;
261	samsung,i2c-sda-delay = <100>;
262	samsung,i2c-slave-addr = <0x10>;
263	samsung,i2c-max-bus-freq = <100000>;
264	status = "okay";
265
266	s2mps14_pmic@66 {
267		compatible = "samsung,s2mps14-pmic";
268		interrupt-parent = <&gpx0>;
269		interrupts = <7 IRQ_TYPE_NONE>;
270		reg = <0x66>;
271		wakeup-source;
272
273		s2mps14_osc: clocks {
274			compatible = "samsung,s2mps14-clk";
275			#clock-cells = <1>;
276			clock-output-names = "s2mps14_ap", "unused",
277				"s2mps14_bt";
278		};
279
280		regulators {
281			ldo1_reg: LDO1 {
282				regulator-name = "VAP_ALIVE_1.0V";
283				regulator-min-microvolt = <1000000>;
284				regulator-max-microvolt = <1000000>;
285				regulator-always-on;
286
287				regulator-state-mem {
288					regulator-on-in-suspend;
289				};
290			};
291
292			ldo2_reg: LDO2 {
293				regulator-name = "VAP_M1_1.2V";
294				regulator-min-microvolt = <1200000>;
295				regulator-max-microvolt = <1200000>;
296				regulator-always-on;
297
298				regulator-state-mem {
299					regulator-off-in-suspend;
300				};
301			};
302
303			ldo3_reg: LDO3 {
304				regulator-name = "VCC_AP_1.8V";
305				regulator-min-microvolt = <1800000>;
306				regulator-max-microvolt = <1800000>;
307				regulator-always-on;
308
309				regulator-state-mem {
310					regulator-off-in-suspend;
311				};
312			};
313
314			ldo4_reg: LDO4 {
315				regulator-name = "VAP_AVDD_PLL1";
316				regulator-min-microvolt = <1800000>;
317				regulator-max-microvolt = <1800000>;
318				regulator-always-on;
319
320				regulator-state-mem {
321					regulator-off-in-suspend;
322				};
323			};
324
325			ldo5_reg: LDO5 {
326				regulator-name = "VAP_PLL_ISO_1.0V";
327				regulator-min-microvolt = <1000000>;
328				regulator-max-microvolt = <1000000>;
329				regulator-always-on;
330
331				regulator-state-mem {
332					regulator-off-in-suspend;
333				};
334			};
335
336			ldo6_reg: LDO6 {
337				regulator-name = "VAP_VMIPI_1.0V";
338				regulator-min-microvolt = <1000000>;
339				regulator-max-microvolt = <1000000>;
340				regulator-always-on;
341
342				regulator-state-mem {
343					regulator-off-in-suspend;
344				};
345			};
346
347			ldo7_reg: LDO7 {
348				regulator-name = "VAP_AVDD_1.8V";
349				regulator-min-microvolt = <1800000>;
350				regulator-max-microvolt = <1800000>;
351				regulator-always-on;
352
353				regulator-state-mem {
354					regulator-off-in-suspend;
355				};
356			};
357
358			ldo8_reg: LDO8 {
359				regulator-name = "VAP_USB_3.0V";
360				regulator-min-microvolt = <3000000>;
361				regulator-max-microvolt = <3000000>;
362				regulator-always-on;
363
364				regulator-state-mem {
365					regulator-off-in-suspend;
366				};
367			};
368
369			ldo9_reg: LDO9 {
370				regulator-name = "V_LPDDR_1.2V";
371				regulator-min-microvolt = <1200000>;
372				regulator-max-microvolt = <1200000>;
373				regulator-always-on;
374
375				regulator-state-mem {
376					regulator-on-in-suspend;
377				};
378			};
379
380			ldo10_reg: LDO10 {
381				regulator-name = "UNUSED_LDO10";
382				regulator-min-microvolt = <1000000>;
383				regulator-max-microvolt = <1000000>;
384
385				regulator-state-mem {
386					regulator-off-in-suspend;
387				};
388			};
389
390			ldo11_reg: LDO11 {
391				regulator-name = "V_EMMC_1.8V";
392				regulator-min-microvolt = <1800000>;
393				regulator-max-microvolt = <1800000>;
394				samsung,ext-control-gpios = <&gpk0 2 GPIO_ACTIVE_HIGH>;
395			};
396
397			ldo12_reg: LDO12 {
398				regulator-name = "V_EMMC_2.8V";
399				regulator-min-microvolt = <2800000>;
400				regulator-max-microvolt = <2800000>;
401				samsung,ext-control-gpios = <&gpk0 2 GPIO_ACTIVE_HIGH>;
402			};
403
404			ldo13_reg: LDO13 {
405				regulator-name = "CAM_AVDD_2.8V";
406				regulator-min-microvolt = <2800000>;
407				regulator-max-microvolt = <2800000>;
408
409				regulator-state-mem {
410					regulator-off-in-suspend;
411				};
412			};
413
414			ldo14_reg: LDO14 {
415				regulator-name = "UNUSED_LDO14";
416				regulator-min-microvolt = <2700000>;
417				regulator-max-microvolt = <2700000>;
418
419				regulator-state-mem {
420					regulator-off-in-suspend;
421				};
422			};
423
424			ldo15_reg: LDO15 {
425				regulator-name = "TSP_AVDD_3.3V";
426				regulator-min-microvolt = <3300000>;
427				regulator-max-microvolt = <3300000>;
428
429				regulator-state-mem {
430					regulator-off-in-suspend;
431				};
432			};
433
434			ldo16_reg: LDO16 {
435				regulator-name = "LCD_VDD_3.3V";
436				regulator-min-microvolt = <3300000>;
437				regulator-max-microvolt = <3300000>;
438
439				regulator-state-mem {
440					regulator-off-in-suspend;
441				};
442			};
443
444			ldo17_reg: LDO17 {
445				regulator-name = "V_IRLED_3.3V";
446				regulator-min-microvolt = <3300000>;
447				regulator-max-microvolt = <3300000>;
448
449				regulator-state-mem {
450					regulator-off-in-suspend;
451				};
452			};
453
454			ldo18_reg: LDO18 {
455				regulator-name = "CAM_AF_2.8V";
456				regulator-min-microvolt = <2800000>;
457				regulator-max-microvolt = <2800000>;
458
459				regulator-state-mem {
460					regulator-off-in-suspend;
461				};
462			};
463
464			ldo19_reg: LDO19 {
465				regulator-name = "TSP_VDD_1.8V";
466				regulator-min-microvolt = <1800000>;
467				regulator-max-microvolt = <1800000>;
468
469				regulator-state-mem {
470					regulator-off-in-suspend;
471				};
472			};
473
474			ldo20_reg: LDO20 {
475				regulator-name = "LCD_VDD_1.8V";
476				regulator-min-microvolt = <1800000>;
477				regulator-max-microvolt = <1800000>;
478
479				regulator-state-mem {
480					regulator-off-in-suspend;
481				};
482			};
483
484			ldo21_reg: LDO21 {
485				regulator-name = "CAM_IO_1.8V";
486				regulator-min-microvolt = <1800000>;
487				regulator-max-microvolt = <1800000>;
488
489				regulator-state-mem {
490					regulator-off-in-suspend;
491				};
492			};
493
494			ldo22_reg: LDO22 {
495				regulator-name = "CAM_DVDD_1.2V";
496				regulator-min-microvolt = <1200000>;
497				regulator-max-microvolt = <1200000>;
498
499				regulator-state-mem {
500					regulator-off-in-suspend;
501				};
502			};
503
504			ldo23_reg: LDO23 {
505				regulator-name = "HRM_VCC_1.8V";
506				regulator-min-microvolt = <1800000>;
507				regulator-max-microvolt = <1800000>;
508				regulator-always-on;
509			};
510
511			ldo24_reg: LDO24 {
512				regulator-name = "HRM_VCC_3.3V";
513				regulator-min-microvolt = <3000000>;
514				regulator-max-microvolt = <3000000>;
515
516				regulator-state-mem {
517					regulator-off-in-suspend;
518				};
519			};
520
521			ldo25_reg: LDO25 {
522				regulator-name = "UNUSED_LDO25";
523				regulator-min-microvolt = <3000000>;
524				regulator-max-microvolt = <3000000>;
525
526				regulator-state-mem {
527					regulator-off-in-suspend;
528				};
529			};
530
531			buck1_reg: BUCK1 {
532				regulator-name = "VAP_MIF_1.0V";
533				regulator-min-microvolt = <800000>;
534				regulator-max-microvolt = <900000>;
535				regulator-always-on;
536
537				regulator-state-mem {
538					regulator-off-in-suspend;
539				};
540			};
541
542			buck2_reg: BUCK2 {
543				regulator-name = "VAP_ARM_1.0V";
544				regulator-min-microvolt = <850000>;
545				regulator-max-microvolt = <1150000>;
546				regulator-always-on;
547
548				regulator-state-mem {
549					regulator-off-in-suspend;
550				};
551			};
552
553			buck3_reg: BUCK3 {
554				regulator-name = "VAP_INT3D_1.0V";
555				regulator-min-microvolt = <850000>;
556				regulator-max-microvolt = <1000000>;
557				regulator-always-on;
558
559				regulator-state-mem {
560					regulator-off-in-suspend;
561				};
562			};
563
564			buck4_reg: BUCK4 {
565				regulator-name = "VCC_SUB_1.95V";
566				regulator-min-microvolt = <1950000>;
567				regulator-max-microvolt = <1950000>;
568				regulator-always-on;
569
570				regulator-state-mem {
571					regulator-on-in-suspend;
572				};
573			};
574
575			buck5_reg: BUCK5 {
576				regulator-name = "VCC_SUB_1.35V";
577				regulator-min-microvolt = <1350000>;
578				regulator-max-microvolt = <1350000>;
579				regulator-always-on;
580
581				regulator-state-mem {
582					regulator-on-in-suspend;
583				};
584			};
585		};
586	};
587};
588
589&i2c_1 {
590	#address-cells = <1>;
591	#size-cells = <0>;
592	samsung,i2c-sda-delay = <100>;
593	samsung,i2c-slave-addr = <0x10>;
594	samsung,i2c-max-bus-freq = <400000>;
595	status = "okay";
596
597	fuelgauge@36 {
598		compatible = "maxim,max77836-battery";
599		interrupt-parent = <&gpx1>;
600		interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
601		reg = <0x36>;
602	};
603};
604
605&i2s2 {
606	status = "okay";
607};
608
609&jpeg {
610	status = "okay";
611};
612
613&mshc_0 {
 
 
614	broken-cd;
615	non-removable;
616	cap-mmc-highspeed;
617	desc-num = <4>;
618	mmc-hs200-1_8v;
619	card-detect-delay = <200>;
620	vmmc-supply = <&ldo12_reg>;
621	clock-frequency = <100000000>;
622	max-frequency = <100000000>;
623	samsung,dw-mshc-ciu-div = <1>;
624	samsung,dw-mshc-sdr-timing = <0 1>;
625	samsung,dw-mshc-ddr-timing = <1 2>;
626	pinctrl-names = "default";
627	pinctrl-0 = <&sd0_cmd &sd0_bus1 &sd0_bus4 &sd0_bus8>;
628	bus-width = <8>;
629	status = "okay";
630};
631
632&mshc_1 {
633	status = "okay";
634
635	#address-cells = <1>;
636	#size-cells = <0>;
637
638	non-removable;
639	cap-sd-highspeed;
640	cap-sdio-irq;
641	keep-power-in-suspend;
642	samsung,dw-mshc-ciu-div = <1>;
643	samsung,dw-mshc-sdr-timing = <0 1>;
644	samsung,dw-mshc-ddr-timing = <1 2>;
645	pinctrl-names = "default";
646	pinctrl-0 = <&sd1_clk &sd1_cmd &sd1_bus1 &sd1_bus4>;
647	bus-width = <4>;
648
649	mmc-pwrseq = <&wlan_pwrseq>;
650
651	brcmf: wifi@1 {
652		compatible = "brcm,bcm4334-fmac";
653		reg = <1>;
654
655		interrupt-parent = <&gpx1>;
656		interrupts = <1 IRQ_TYPE_LEVEL_HIGH>;
657		interrupt-names = "host-wake";
658	};
659};
660
661&serial_0 {
662	assigned-clocks = <&cmu CLK_SCLK_UART0>;
663	assigned-clock-rates = <100000000>;
664	status = "okay";
665
666	bluetooth {
667		compatible = "brcm,bcm4330-bt";
668		max-speed = <3000000>;
669		shutdown-gpios = <&gpe0 0 GPIO_ACTIVE_HIGH>;
670		device-wakeup-gpios = <&gpx3 1 GPIO_ACTIVE_HIGH>;
671		host-wakeup-gpios = <&gpx2 6 GPIO_ACTIVE_HIGH>;
672		clocks = <&s2mps14_osc S2MPS11_CLK_BT>;
673	};
674};
675
676&serial_1 {
677	status = "okay";
678};
679
680&tmu {
681	vtmu-supply = <&ldo7_reg>;
682	status = "okay";
683};
684
685&rtc {
686	clocks = <&cmu CLK_RTC>, <&s2mps14_osc S2MPS11_CLK_AP>;
687	clock-names = "rtc", "rtc_src";
688	status = "okay";
689};
690
691&xusbxti {
692	clock-frequency = <24000000>;
693};
694
695&pinctrl_0 {
696	pinctrl-names = "default";
697	pinctrl-0 = <&initial0 &sleep0>;
698
699	initial0: initial-state {
700		PIN_IN(gpa1-4, DOWN, LV1);
701		PIN_IN(gpa1-5, DOWN, LV1);
702
703		PIN_IN(gpc0-0, DOWN, LV1);
704		PIN_IN(gpc0-1, DOWN, LV1);
705		PIN_IN(gpc0-2, DOWN, LV1);
706		PIN_IN(gpc0-3, DOWN, LV1);
707		PIN_IN(gpc0-4, DOWN, LV1);
708
709		PIN_IN(gpd0-0, DOWN, LV1);
710		PIN_IN(gpd0-1, DOWN, LV1);
711	};
712
713	sleep0: sleep-state {
714		PIN_SLP(gpa0-0, INPUT, DOWN);
715		PIN_SLP(gpa0-1, INPUT, DOWN);
716		PIN_SLP(gpa0-2, INPUT, DOWN);
717		PIN_SLP(gpa0-3, INPUT, DOWN);
718		PIN_SLP(gpa0-4, INPUT, DOWN);
719		PIN_SLP(gpa0-5, INPUT, DOWN);
720		PIN_SLP(gpa0-6, INPUT, DOWN);
721		PIN_SLP(gpa0-7, INPUT, DOWN);
722
723		PIN_SLP(gpa1-0, INPUT, DOWN);
724		PIN_SLP(gpa1-1, INPUT, DOWN);
725		PIN_SLP(gpa1-2, INPUT, DOWN);
726		PIN_SLP(gpa1-3, INPUT, DOWN);
727		PIN_SLP(gpa1-4, INPUT, DOWN);
728		PIN_SLP(gpa1-5, INPUT, DOWN);
729
730		PIN_SLP(gpb-0, PREV, NONE);
731		PIN_SLP(gpb-1, PREV, NONE);
732		PIN_SLP(gpb-2, PREV, NONE);
733		PIN_SLP(gpb-3, PREV, NONE);
734		PIN_SLP(gpb-4, INPUT, DOWN);
735		PIN_SLP(gpb-5, INPUT, DOWN);
736		PIN_SLP(gpb-6, INPUT, DOWN);
737		PIN_SLP(gpb-7, INPUT, DOWN);
738
739		PIN_SLP(gpc0-0, INPUT, DOWN);
740		PIN_SLP(gpc0-1, INPUT, DOWN);
741		PIN_SLP(gpc0-2, INPUT, DOWN);
742		PIN_SLP(gpc0-3, INPUT, DOWN);
743		PIN_SLP(gpc0-4, INPUT, DOWN);
744
745		PIN_SLP(gpc1-0, INPUT, DOWN);
746		PIN_SLP(gpc1-1, INPUT, DOWN);
747		PIN_SLP(gpc1-2, INPUT, DOWN);
748		PIN_SLP(gpc1-3, INPUT, DOWN);
749		PIN_SLP(gpc1-4, INPUT, DOWN);
750
751		PIN_SLP(gpd0-0, INPUT, DOWN);
752		PIN_SLP(gpd0-1, INPUT, DOWN);
753		PIN_SLP(gpd0-2, INPUT, NONE);
754		PIN_SLP(gpd0-3, INPUT, NONE);
755
756		PIN_SLP(gpd1-0, INPUT, NONE);
757		PIN_SLP(gpd1-1, INPUT, NONE);
758		PIN_SLP(gpd1-2, INPUT, NONE);
759		PIN_SLP(gpd1-3, INPUT, NONE);
760	};
761};
762
763&pinctrl_1 {
764	pinctrl-names = "default";
765	pinctrl-0 = <&initial1 &sleep1>;
766
767	initial1: initial-state {
768		PIN_IN(gpe0-6, DOWN, LV1);
769		PIN_IN(gpe0-7, DOWN, LV1);
770
771		PIN_IN(gpe1-0, DOWN, LV1);
772		PIN_IN(gpe1-3, DOWN, LV1);
773		PIN_IN(gpe1-4, DOWN, LV1);
774		PIN_IN(gpe1-5, DOWN, LV1);
775		PIN_IN(gpe1-6, DOWN, LV1);
776
777		PIN_IN(gpk2-0, DOWN, LV1);
778		PIN_IN(gpk2-1, DOWN, LV1);
779		PIN_IN(gpk2-2, DOWN, LV1);
780		PIN_IN(gpk2-3, DOWN, LV1);
781		PIN_IN(gpk2-4, DOWN, LV1);
782		PIN_IN(gpk2-5, DOWN, LV1);
783		PIN_IN(gpk2-6, DOWN, LV1);
784
785		PIN_IN(gpm0-0, DOWN, LV1);
786		PIN_IN(gpm0-1, DOWN, LV1);
787		PIN_IN(gpm0-2, DOWN, LV1);
788		PIN_IN(gpm0-3, DOWN, LV1);
789		PIN_IN(gpm0-4, DOWN, LV1);
790		PIN_IN(gpm0-5, DOWN, LV1);
791		PIN_IN(gpm0-6, DOWN, LV1);
792		PIN_IN(gpm0-7, DOWN, LV1);
793
794		PIN_IN(gpm1-0, DOWN, LV1);
795		PIN_IN(gpm1-1, DOWN, LV1);
796		PIN_IN(gpm1-2, DOWN, LV1);
797		PIN_IN(gpm1-3, DOWN, LV1);
798		PIN_IN(gpm1-4, DOWN, LV1);
799		PIN_IN(gpm1-5, DOWN, LV1);
800		PIN_IN(gpm1-6, DOWN, LV1);
801
802		PIN_IN(gpm2-0, DOWN, LV1);
803		PIN_IN(gpm2-1, DOWN, LV1);
804
805		PIN_IN(gpm3-0, DOWN, LV1);
806		PIN_IN(gpm3-1, DOWN, LV1);
807		PIN_IN(gpm3-2, DOWN, LV1);
808		PIN_IN(gpm3-3, DOWN, LV1);
809		PIN_IN(gpm3-4, DOWN, LV1);
810
811		PIN_IN(gpm4-1, DOWN, LV1);
812		PIN_IN(gpm4-2, DOWN, LV1);
813		PIN_IN(gpm4-3, DOWN, LV1);
814		PIN_IN(gpm4-4, DOWN, LV1);
815		PIN_IN(gpm4-5, DOWN, LV1);
816		PIN_IN(gpm4-6, DOWN, LV1);
817		PIN_IN(gpm4-7, DOWN, LV1);
818	};
819
820	sleep1: sleep-state {
821		PIN_SLP(gpe0-0, PREV, NONE);
822		PIN_SLP(gpe0-1, PREV, NONE);
823		PIN_SLP(gpe0-2, INPUT, DOWN);
824		PIN_SLP(gpe0-3, INPUT, UP);
825		PIN_SLP(gpe0-4, INPUT, DOWN);
826		PIN_SLP(gpe0-5, INPUT, DOWN);
827		PIN_SLP(gpe0-6, INPUT, DOWN);
828		PIN_SLP(gpe0-7, INPUT, DOWN);
829
830		PIN_SLP(gpe1-0, INPUT, DOWN);
831		PIN_SLP(gpe1-1, PREV, NONE);
832		PIN_SLP(gpe1-2, INPUT, DOWN);
833		PIN_SLP(gpe1-3, INPUT, DOWN);
834		PIN_SLP(gpe1-4, INPUT, DOWN);
835		PIN_SLP(gpe1-5, INPUT, DOWN);
836		PIN_SLP(gpe1-6, INPUT, DOWN);
837		PIN_SLP(gpe1-7, INPUT, NONE);
838
839		PIN_SLP(gpe2-0, INPUT, NONE);
840		PIN_SLP(gpe2-1, INPUT, NONE);
841		PIN_SLP(gpe2-2, INPUT, NONE);
842
843		PIN_SLP(gpk0-0, INPUT, DOWN);
844		PIN_SLP(gpk0-1, INPUT, DOWN);
845		PIN_SLP(gpk0-2, OUT0, NONE);
846		PIN_SLP(gpk0-3, INPUT, DOWN);
847		PIN_SLP(gpk0-4, INPUT, DOWN);
848		PIN_SLP(gpk0-5, INPUT, DOWN);
849		PIN_SLP(gpk0-6, INPUT, DOWN);
850		PIN_SLP(gpk0-7, INPUT, DOWN);
851
852		PIN_SLP(gpk1-0, INPUT, DOWN);
853		PIN_SLP(gpk1-1, INPUT, DOWN);
854		PIN_SLP(gpk1-2, INPUT, DOWN);
855		PIN_SLP(gpk1-3, INPUT, DOWN);
856		PIN_SLP(gpk1-4, INPUT, DOWN);
857		PIN_SLP(gpk1-5, INPUT, DOWN);
858		PIN_SLP(gpk1-6, INPUT, DOWN);
859
860		PIN_SLP(gpk2-0, INPUT, DOWN);
861		PIN_SLP(gpk2-1, INPUT, DOWN);
862		PIN_SLP(gpk2-2, INPUT, DOWN);
863		PIN_SLP(gpk2-3, INPUT, DOWN);
864		PIN_SLP(gpk2-4, INPUT, DOWN);
865		PIN_SLP(gpk2-5, INPUT, DOWN);
866		PIN_SLP(gpk2-6, INPUT, DOWN);
867
868		PIN_SLP(gpl0-0, INPUT, DOWN);
869		PIN_SLP(gpl0-1, INPUT, DOWN);
870		PIN_SLP(gpl0-2, INPUT, DOWN);
871		PIN_SLP(gpl0-3, INPUT, DOWN);
872
873		PIN_SLP(gpm0-0, INPUT, DOWN);
874		PIN_SLP(gpm0-1, INPUT, DOWN);
875		PIN_SLP(gpm0-2, INPUT, DOWN);
876		PIN_SLP(gpm0-3, INPUT, DOWN);
877		PIN_SLP(gpm0-4, INPUT, DOWN);
878		PIN_SLP(gpm0-5, INPUT, DOWN);
879		PIN_SLP(gpm0-6, INPUT, DOWN);
880		PIN_SLP(gpm0-7, INPUT, DOWN);
881
882		PIN_SLP(gpm1-0, INPUT, DOWN);
883		PIN_SLP(gpm1-1, INPUT, DOWN);
884		PIN_SLP(gpm1-2, INPUT, DOWN);
885		PIN_SLP(gpm1-3, INPUT, DOWN);
886		PIN_SLP(gpm1-4, INPUT, DOWN);
887		PIN_SLP(gpm1-5, INPUT, DOWN);
888		PIN_SLP(gpm1-6, INPUT, DOWN);
889
890		PIN_SLP(gpm2-0, INPUT, DOWN);
891		PIN_SLP(gpm2-1, INPUT, DOWN);
892		PIN_SLP(gpm2-2, INPUT, DOWN);
893		PIN_SLP(gpm2-3, INPUT, DOWN);
894		PIN_SLP(gpm2-4, INPUT, DOWN);
895
896		PIN_SLP(gpm3-0, INPUT, DOWN);
897		PIN_SLP(gpm3-1, INPUT, DOWN);
898		PIN_SLP(gpm3-2, INPUT, DOWN);
899		PIN_SLP(gpm3-3, INPUT, DOWN);
900		PIN_SLP(gpm3-4, INPUT, DOWN);
901		PIN_SLP(gpm3-5, INPUT, DOWN);
902		PIN_SLP(gpm3-6, INPUT, DOWN);
903		PIN_SLP(gpm3-7, INPUT, DOWN);
904
905		PIN_SLP(gpm4-0, INPUT, DOWN);
906		PIN_SLP(gpm4-1, INPUT, DOWN);
907		PIN_SLP(gpm4-2, INPUT, DOWN);
908		PIN_SLP(gpm4-3, INPUT, DOWN);
909		PIN_SLP(gpm4-4, INPUT, DOWN);
910		PIN_SLP(gpm4-5, INPUT, DOWN);
911		PIN_SLP(gpm4-6, INPUT, DOWN);
912		PIN_SLP(gpm4-7, INPUT, DOWN);
913	};
914};