cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

exynos4210-i9100.dts (18542B)


      1// SPDX-License-Identifier: GPL-2.0
      2/*
      3 * Samsung's Exynos4210 based Galaxy S2 (GT-I9100 version) device tree
      4 *
      5 * Copyright (c) 2012 Samsung Electronics Co., Ltd.
      6 *		http://www.samsung.com
      7 * Copyright (c) 2020 Stenkin Evgeniy <stenkinevgeniy@gmail.com>
      8 * Copyright (c) 2020 Paul Cercueil <paul@crapouillou.net>
      9 */
     10
     11/dts-v1/;
     12#include "exynos4210.dtsi"
     13#include "exynos4412-ppmu-common.dtsi"
     14
     15#include <dt-bindings/gpio/gpio.h>
     16#include <dt-bindings/input/linux-event-codes.h>
     17
     18/ {
     19	model = "Samsung Galaxy S2 (GT-I9100)";
     20	compatible = "samsung,i9100", "samsung,exynos4210", "samsung,exynos4";
     21	chassis-type = "handset";
     22
     23	memory@40000000 {
     24		device_type = "memory";
     25		reg = <0x40000000 0x40000000>;
     26	};
     27
     28	chosen {
     29		stdout-path = "serial2:115200n8";
     30	};
     31
     32	vemmc_reg: regulator-0 {
     33		compatible = "regulator-fixed";
     34		regulator-name = "VMEM_VDD_2.8V";
     35		regulator-min-microvolt = <2800000>;
     36		regulator-max-microvolt = <2800000>;
     37		gpio = <&gpk0 2 GPIO_ACTIVE_HIGH>;
     38		enable-active-high;
     39	};
     40
     41	tsp_reg: regulator-1 {
     42		compatible = "regulator-fixed";
     43		regulator-name = "TSP_FIXED_VOLTAGES";
     44		regulator-min-microvolt = <3300000>;
     45		regulator-max-microvolt = <3300000>;
     46		gpio = <&gpl0 3 GPIO_ACTIVE_HIGH>;
     47		startup-delay-us = <70000>;
     48		enable-active-high;
     49		regulator-boot-on;
     50		regulator-always-on;
     51	};
     52
     53	cam_af_28v_reg: regulator-2 {
     54		compatible = "regulator-fixed";
     55		regulator-name = "8M_AF_2.8V_EN";
     56		regulator-min-microvolt = <2800000>;
     57		regulator-max-microvolt = <2800000>;
     58		gpio = <&gpk1 1 GPIO_ACTIVE_HIGH>;
     59		enable-active-high;
     60	};
     61
     62	cam_io_en_reg: regulator-3 {
     63		compatible = "regulator-fixed";
     64		regulator-name = "CAM_IO_EN";
     65		regulator-min-microvolt = <2800000>;
     66		regulator-max-microvolt = <2800000>;
     67		gpio = <&gpe2 1 GPIO_ACTIVE_HIGH>;
     68		enable-active-high;
     69	};
     70
     71	cam_io_12v_reg: regulator-4 {
     72		compatible = "regulator-fixed";
     73		regulator-name = "8M_1.2V_EN";
     74		regulator-min-microvolt = <1200000>;
     75		regulator-max-microvolt = <1200000>;
     76		gpio = <&gpe2 5 GPIO_ACTIVE_HIGH>;
     77		enable-active-high;
     78	};
     79
     80	vt_core_15v_reg: regulator-5 {
     81		compatible = "regulator-fixed";
     82		regulator-name = "VT_CORE_1.5V";
     83		regulator-min-microvolt = <1500000>;
     84		regulator-max-microvolt = <1500000>;
     85		gpio = <&gpe2 2 GPIO_ACTIVE_HIGH>;
     86		enable-active-high;
     87	};
     88
     89	gpio-keys {
     90		compatible = "gpio-keys";
     91
     92		vol-down {
     93			gpios = <&gpx2 1 GPIO_ACTIVE_LOW>;
     94			linux,code = <KEY_VOLUMEDOWN>;
     95			label = "volume down";
     96			debounce-interval = <10>;
     97		};
     98
     99		vol-up {
    100			gpios = <&gpx2 0 GPIO_ACTIVE_LOW>;
    101			linux,code = <KEY_VOLUMEUP>;
    102			label = "volume up";
    103			debounce-interval = <10>;
    104		};
    105
    106		power {
    107			gpios = <&gpx2 7 GPIO_ACTIVE_LOW>;
    108			linux,code = <KEY_POWER>;
    109			label = "power";
    110			debounce-interval = <10>;
    111			wakeup-source;
    112		};
    113
    114		ok {
    115			gpios = <&gpx3 5 GPIO_ACTIVE_LOW>;
    116			linux,code = <KEY_OK>;
    117			label = "ok";
    118			debounce-interval = <10>;
    119		};
    120	};
    121
    122	wlan_pwrseq: sdhci3-pwrseq {
    123		compatible = "mmc-pwrseq-simple";
    124		reset-gpios = <&gpl1 2 GPIO_ACTIVE_LOW>;
    125	};
    126
    127	i2c_max17042_fuel: i2c-gpio-0 {
    128		compatible = "i2c-gpio";
    129		#address-cells = <1>;
    130		#size-cells = <0>;
    131
    132		sda-gpios = <&gpy4 0 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
    133		scl-gpios = <&gpy4 1 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
    134		i2c-gpio,delay-us = <5>;
    135
    136		battery@36 {
    137			compatible = "maxim,max17042";
    138
    139			interrupt-parent = <&gpx2>;
    140			interrupts = <3 IRQ_TYPE_LEVEL_LOW>;
    141
    142			pinctrl-0 = <&max17042_fuel_irq>;
    143			pinctrl-names = "default";
    144
    145			reg = <0x36>;
    146			maxim,over-heat-temp = <700>;
    147			maxim,over-volt = <4500>;
    148		};
    149	};
    150
    151	i2c_s5k5baf: i2c-gpio-1 {
    152		compatible = "i2c-gpio";
    153		#address-cells = <1>;
    154		#size-cells = <0>;
    155
    156		sda-gpios = <&gpc1 0 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
    157		scl-gpios = <&gpc1 2 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
    158		i2c-gpio,delay-us = <2>;
    159
    160		image-sensor@2d {
    161			compatible = "samsung,s5k5baf";
    162			reg = <0x2d>;
    163			vdda-supply = <&cam_io_en_reg>;
    164			vddreg-supply = <&vt_core_15v_reg>;
    165			vddio-supply = <&vtcam_reg>;
    166			clocks = <&camera 0>;
    167			clock-names = "mclk";
    168			stbyn-gpios = <&gpl2 0 GPIO_ACTIVE_LOW>;
    169			rstn-gpios = <&gpl2 1 GPIO_ACTIVE_LOW>;
    170			clock-frequency = <24000000>;
    171
    172			port {
    173				s5k5bafx_ep: endpoint {
    174					remote-endpoint = <&csis1_ep>;
    175					data-lanes = <1>;
    176				};
    177			};
    178		};
    179	};
    180
    181	spi-3 {
    182		compatible = "spi-gpio";
    183		#address-cells = <1>;
    184		#size-cells = <0>;
    185
    186		num-chipselects = <1>;
    187		cs-gpios = <&gpy4 3 GPIO_ACTIVE_LOW>;
    188		sck-gpios = <&gpy3 1 GPIO_ACTIVE_HIGH>;
    189		mosi-gpios = <&gpy3 3 GPIO_ACTIVE_HIGH>;
    190
    191		lcd@0 {
    192			compatible = "samsung,ld9040";
    193			reg = <0>;
    194
    195			spi-max-frequency = <1200000>;
    196
    197			vdd3-supply = <&vmipi_reg>;
    198			vci-supply = <&vcclcd_reg>;
    199
    200			reset-gpios = <&gpy4 5 GPIO_ACTIVE_HIGH>;
    201			power-on-delay = <10>;
    202			reset-delay = <10>;
    203
    204			panel-width-mm = <90>;
    205			panel-height-mm = <154>;
    206
    207			display-timings {
    208				timing {
    209					clock-frequency = <23492370>;
    210					hactive = <480>;
    211					vactive = <800>;
    212					hback-porch = <16>;
    213					hfront-porch = <16>;
    214					vback-porch = <2>;
    215					vfront-porch = <28>;
    216					hsync-len = <2>;
    217					vsync-len = <1>;
    218					hsync-active = <0>;
    219					vsync-active = <0>;
    220					de-active = <0>;
    221					pixelclk-active = <0>;
    222				};
    223			};
    224
    225			port {
    226				lcd_ep: endpoint {
    227					remote-endpoint = <&fimd_dpi_ep>;
    228				};
    229			};
    230		};
    231	};
    232
    233	fixed-rate-clocks {
    234		xxti {
    235			compatible = "samsung,clock-xxti";
    236			clock-frequency = <0>;
    237		};
    238
    239		xusbxti {
    240			compatible = "samsung,clock-xusbxti";
    241			clock-frequency = <24000000>;
    242		};
    243
    244		pmic_ap_clk: pmic-ap-clk {
    245			/* Workaround for missing clock on max8997 PMIC */
    246			compatible = "fixed-clock";
    247			#clock-cells = <0>;
    248			clock-frequency = <32768>;
    249		};
    250	};
    251};
    252
    253&camera {
    254	pinctrl-0 = <&cam_port_a_clk_active>;
    255	pinctrl-names = "default";
    256	status = "okay";
    257	assigned-clocks = <&clock CLK_MOUT_CAM0>, <&clock CLK_MOUT_CAM1>;
    258	assigned-clock-parents = <&clock CLK_XUSBXTI>, <&clock CLK_XUSBXTI>;
    259};
    260
    261&csis_1 {
    262	status = "okay";
    263	vddcore-supply = <&vusb_reg>;
    264	vddio-supply = <&vmipi_reg>;
    265	clock-frequency = <160000000>;
    266	#address-cells = <1>;
    267	#size-cells = <0>;
    268
    269	port@4 {
    270		reg = <4>;
    271		csis1_ep: endpoint {
    272			remote-endpoint = <&s5k5bafx_ep>;
    273			data-lanes = <1>;
    274			samsung,csis-hs-settle = <6>;
    275		};
    276	};
    277};
    278
    279&cpu0 {
    280	cpu0-supply = <&varm_breg>;
    281};
    282
    283&cpu_thermal {
    284	cooling-maps {
    285		map0 {
    286			/* Corresponds to 800MHz */
    287			cooling-device = <&cpu0 2 2>;
    288		};
    289		map1 {
    290			/* Corresponds to 200MHz */
    291			cooling-device = <&cpu0 4 4>;
    292		};
    293	};
    294};
    295
    296&ehci {
    297	status = "okay";
    298
    299	phys = <&exynos_usbphy 1>;
    300	phy-names = "host";
    301};
    302
    303&exynos_usbphy {
    304	status = "okay";
    305
    306	vbus-supply = <&safe1_sreg>;
    307};
    308
    309&fimc_0 {
    310	status = "okay";
    311
    312	assigned-clocks = <&clock CLK_MOUT_FIMC0>, <&clock CLK_SCLK_FIMC0>;
    313	assigned-clock-parents = <&clock CLK_SCLK_MPLL>;
    314	assigned-clock-rates = <0>, <160000000>;
    315};
    316
    317&fimc_1 {
    318	/* Back camera not implemented */
    319	status = "disabled";
    320
    321	assigned-clocks = <&clock CLK_MOUT_FIMC1>, <&clock CLK_SCLK_FIMC1>;
    322	assigned-clock-parents = <&clock CLK_SCLK_MPLL>;
    323	assigned-clock-rates = <0>, <160000000>;
    324};
    325
    326&fimc_2 {
    327	status = "okay";
    328
    329	assigned-clocks = <&clock CLK_MOUT_FIMC2>, <&clock CLK_SCLK_FIMC2>;
    330	assigned-clock-parents = <&clock CLK_SCLK_MPLL>;
    331	assigned-clock-rates = <0>, <160000000>;
    332};
    333
    334&fimc_3 {
    335	/* Back camera not implemented */
    336	status = "disabled";
    337
    338	assigned-clocks = <&clock CLK_MOUT_FIMC3>, <&clock CLK_SCLK_FIMC3>;
    339	assigned-clock-parents = <&clock CLK_SCLK_MPLL>;
    340	assigned-clock-rates = <0>, <160000000>;
    341};
    342
    343&fimd {
    344	status = "okay";
    345	#address-cells = <1>;
    346	#size-cells = <0>;
    347
    348	samsung,invert-vden;
    349	samsung,invert-vclk;
    350
    351	pinctrl-0 = <&lcd_clk>, <&lcd_data24>;
    352	pinctrl-names = "default";
    353
    354	port@3 {
    355		reg = <3>;
    356
    357		fimd_dpi_ep: endpoint {
    358			remote-endpoint = <&lcd_ep>;
    359		};
    360	};
    361};
    362
    363&gpu {
    364	status = "okay";
    365
    366	mali-supply = <&vg3d_breg>;
    367};
    368
    369&hsotg {
    370	status = "okay";
    371
    372	dr_mode = "otg";
    373	vusb_d-supply = <&vusb_reg>;
    374	vusb_a-supply = <&vusbdac_reg>;
    375};
    376
    377&i2c_3 {
    378	status = "okay";
    379
    380	samsung,i2c-sda-delay = <100>;
    381	samsung,i2c-slave-addr = <0x10>;
    382	samsung,i2c-max-bus-freq = <100000>;
    383
    384	pinctrl-0 = <&i2c3_bus>;
    385	pinctrl-names = "default";
    386
    387	touchscreen@4a {
    388		compatible = "atmel,maxtouch";
    389		reg = <0x4a>;
    390
    391		interrupt-parent = <&gpx0>;
    392		interrupts = <4 IRQ_TYPE_EDGE_FALLING>;
    393	};
    394};
    395
    396&i2c_5 {
    397	status = "okay";
    398
    399	samsung,i2c-sda-delay = <100>;
    400	samsung,i2c-slave-addr = <0x10>;
    401	samsung,i2c-max-bus-freq = <100000>;
    402
    403	pinctrl-0 = <&i2c5_bus>;
    404	pinctrl-names = "default";
    405
    406	pmic@66 {
    407		compatible = "maxim,max8997-pmic";
    408		reg = <0x66>;
    409
    410		interrupts-extended = <&gpx0 7 IRQ_TYPE_NONE>,
    411				      <&gpx2 3 IRQ_TYPE_EDGE_FALLING>;
    412
    413		max8997,pmic-buck1-uses-gpio-dvs;
    414		max8997,pmic-buck2-uses-gpio-dvs;
    415		max8997,pmic-buck5-uses-gpio-dvs;
    416
    417		max8997,pmic-ignore-gpiodvs-side-effect;
    418		max8997,pmic-buck125-default-dvs-idx = <0>;
    419
    420		max8997,pmic-buck125-dvs-gpios = <&gpx0 5 GPIO_ACTIVE_HIGH>,
    421						 <&gpx0 6 GPIO_ACTIVE_HIGH>,
    422						 <&gpl0 0 GPIO_ACTIVE_HIGH>;
    423
    424		max8997,pmic-buck1-dvs-voltage = <1350000>, <1300000>,
    425						 <1250000>, <1200000>,
    426						 <1150000>, <1100000>,
    427						 <1000000>, <950000>;
    428
    429		max8997,pmic-buck2-dvs-voltage = <1100000>, <1000000>,
    430						 <950000>,  <900000>,
    431						 <1100000>, <1000000>,
    432						 <950000>,  <900000>;
    433
    434		max8997,pmic-buck5-dvs-voltage = <1200000>, <1200000>,
    435						 <1200000>, <1200000>,
    436						 <1200000>, <1200000>,
    437						 <1200000>, <1200000>;
    438
    439		pinctrl-0 = <&max8997_irq>, <&otg_gp>, <&usb_sel>;
    440		pinctrl-names = "default";
    441
    442		charger-supply = <&charger_reg>;
    443
    444		regulators {
    445			vadc_reg: LDO1 {
    446				regulator-name = "VADC_3.3V_C210";
    447				regulator-min-microvolt = <3300000>;
    448				regulator-max-microvolt = <3300000>;
    449				regulator-always-on;
    450
    451			};
    452			valive_reg: LDO2 {
    453				regulator-name = "VALIVE_1.1V_C210";
    454				regulator-min-microvolt = <1100000>;
    455				regulator-max-microvolt = <1100000>;
    456				regulator-always-on;
    457
    458			};
    459
    460			vusb_reg: LDO3 {
    461				regulator-name = "VUSB_1.1V_C210";
    462				regulator-min-microvolt = <1100000>;
    463				regulator-max-microvolt = <1100000>;
    464			};
    465
    466			vmipi_reg: LDO4 {
    467				regulator-name = "VMIPI_1.8V";
    468				regulator-min-microvolt = <1800000>;
    469				regulator-max-microvolt = <1800000>;
    470				regulator-always-on;
    471			};
    472
    473			vhsic_reg: LDO5 {
    474				regulator-name = "VHSIC_1.2V";
    475				regulator-min-microvolt = <1200000>;
    476				regulator-max-microvolt = <1200000>;
    477				regulator-always-on;
    478			};
    479
    480			vpda_reg: LDO6 {
    481				regulator-name = "VCC_1.8V_PDA";
    482				regulator-min-microvolt = <1800000>;
    483				regulator-max-microvolt = <1800000>;
    484				regulator-always-on;
    485			};
    486
    487			vcam_reg: LDO7 {
    488				regulator-name = "CAM_ISP_1.8V";
    489				regulator-min-microvolt = <1800000>;
    490				regulator-max-microvolt = <1800000>;
    491			};
    492
    493			vusbdac_reg: LDO8 {
    494				regulator-name = "VUSB+VDAC_3.3V_C210";
    495				regulator-min-microvolt = <3300000>;
    496				regulator-max-microvolt = <3300000>;
    497			};
    498
    499			vccpda_reg: LDO9 {
    500				regulator-name = "VCC_2.8V_PDA";
    501				regulator-min-microvolt = <2800000>;
    502				regulator-max-microvolt = <2800000>;
    503				regulator-always-on;
    504			};
    505
    506			vtouch_reg: LDO11 {
    507				regulator-name = "TOUCH_2.8V";
    508				regulator-min-microvolt = <2800000>;
    509				regulator-max-microvolt = <2800000>;
    510				regulator-always-on;
    511			};
    512
    513			vpll_reg: LDO10 {
    514				regulator-name = "VPLL_1.1V";
    515				regulator-min-microvolt = <1100000>;
    516				regulator-max-microvolt = <1100000>;
    517				regulator-always-on;
    518			};
    519
    520			vtcam_reg: LDO12 {
    521				regulator-name = "VT_CAM_1.8V";
    522				regulator-min-microvolt = <1800000>;
    523				regulator-max-microvolt = <1800000>;
    524			};
    525
    526			vcclcd_reg: LDO13 {
    527				regulator-name = "VCC_3.0V_LCD";
    528				regulator-min-microvolt = <3000000>;
    529				regulator-max-microvolt = <3000000>;
    530			};
    531
    532			vmotor_reg: LDO14 {
    533				regulator-name = "VCC_2.8V_MOTOR";
    534				regulator-min-microvolt = <2800000>;
    535				regulator-max-microvolt = <2800000>;
    536			};
    537
    538			vled_reg: LDO15 {
    539				regulator-name = "LED_A_2.8V";
    540				regulator-min-microvolt = <2800000>;
    541				regulator-max-microvolt = <2800000>;
    542			};
    543
    544			camsensor_reg: LDO16 {
    545				regulator-name = "CAM_SENSOR_IO_1.8V";
    546				regulator-min-microvolt = <1800000>;
    547				regulator-max-microvolt = <1800000>;
    548			};
    549
    550			vtf_reg: LDO17 {
    551				regulator-name = "VTF_2.8V";
    552				regulator-min-microvolt = <2800000>;
    553				regulator-max-microvolt = <2800000>;
    554			};
    555
    556			vtouchled_reg: LDO18 {
    557				regulator-name = "TOUCH_LED_3.3V";
    558				regulator-min-microvolt = <2500000>;
    559				regulator-max-microvolt = <3300000>;
    560			};
    561
    562			vddq_reg: LDO21 {
    563				regulator-name = "VDDQ_M1M2_1.2V";
    564				regulator-min-microvolt = <1200000>;
    565				regulator-max-microvolt = <1200000>;
    566				regulator-always-on;
    567			};
    568
    569			varm_breg: BUCK1 {
    570				regulator-name = "VARM_1.2V_C210";
    571				regulator-min-microvolt = <65000>;
    572				regulator-max-microvolt = <2225000>;
    573				regulator-always-on;
    574			};
    575
    576			vint_breg: BUCK2 {
    577				regulator-name = "VINT_1.1V_C210";
    578				regulator-min-microvolt = <65000>;
    579				regulator-max-microvolt = <2225000>;
    580				regulator-always-on;
    581			};
    582
    583			vg3d_breg: BUCK3 {
    584				regulator-name = "G3D_1.1V";
    585				regulator-min-microvolt = <900000>;
    586				regulator-max-microvolt = <1200000>;
    587				regulator-microvolt-offset = <50000>;
    588				regulator-always-on;
    589			};
    590
    591			camisp_breg: BUCK4 {
    592				regulator-name = "CAM_ISP_CORE_1.2V";
    593				regulator-min-microvolt = <1200000>;
    594				regulator-max-microvolt = <1200000>;
    595			};
    596
    597			vmem_breg: BUCK5 {
    598				regulator-name = "VMEM_1.2V";
    599				regulator-min-microvolt = <1200000>;
    600				regulator-max-microvolt = <1200000>;
    601				regulator-always-on;
    602			};
    603
    604			vccsub_breg: BUCK7 {
    605				regulator-name = "VCC_SUB_2.0V";
    606				regulator-min-microvolt = <2000000>;
    607				regulator-max-microvolt = <2000000>;
    608				regulator-always-on;
    609			};
    610
    611			safe1_sreg: ESAFEOUT1 {
    612				regulator-name = "SAFEOUT1";
    613			};
    614
    615			safe2_sreg: ESAFEOUT2 {
    616				regulator-name = "SAFEOUT2";
    617				regulator-boot-on;
    618			};
    619
    620			EN32KHZ_AP {
    621				regulator-name = "EN32KHZ_AP";
    622				regulator-always-on;
    623			};
    624
    625			EN32KHZ_CP {
    626				regulator-name = "EN32KHZ_CP";
    627				regulator-always-on;
    628			};
    629
    630			charger_reg: CHARGER {
    631				regulator-name = "CHARGER";
    632				regulator-min-microamp = <200000>;
    633				regulator-max-microamp = <950000>;
    634			};
    635
    636			chargercv_reg: CHARGER_CV {
    637				regulator-name = "CHARGER_CV";
    638				regulator-min-microvolt = <4200000>;
    639				regulator-max-microvolt = <4200000>;
    640				regulator-always-on;
    641			};
    642
    643			CHARGER_TOPOFF {
    644				regulator-name = "CHARGER_TOPOFF";
    645				regulator-min-microamp = <200000>;
    646				regulator-max-microamp = <200000>;
    647				regulator-always-on;
    648			};
    649		};
    650	};
    651};
    652
    653&i2c_7 {
    654	status = "okay";
    655
    656	samsung,i2c-sda-delay = <100>;
    657	samsung,i2c-slave-addr = <0x10>;
    658	samsung,i2c-max-bus-freq = <400000>;
    659
    660	pinctrl-0 = <&i2c7_bus>;
    661	pinctrl-names = "default";
    662
    663	magnetometer@c {
    664		compatible = "asahi-kasei,ak8975";
    665		reg = <0x0c>;
    666
    667		gpios = <&gpx2 2 GPIO_ACTIVE_HIGH>;
    668	};
    669};
    670
    671&pinctrl_0 {
    672	pinctrl-names = "default";
    673	pinctrl-0 = <&sleep0>;
    674
    675	sleep0: sleep-state {
    676		gpa0-0-pin {
    677			samsung,pins = "gpa0-0";
    678			samsung,pin-con-pdn = <EXYNOS_PIN_PDN_INPUT>;
    679			samsung,pin-pud-pdn = <EXYNOS_PIN_PULL_NONE>;
    680		};
    681
    682		gpa0-1-pin {
    683			samsung,pins = "gpa0-1";
    684			samsung,pin-con-pdn = <EXYNOS_PIN_PDN_OUT0>;
    685			samsung,pin-pud-pdn = <EXYNOS_PIN_PULL_NONE>;
    686		};
    687
    688		gpa0-2-pin {
    689			samsung,pins = "gpa0-2";
    690			samsung,pin-con-pdn = <EXYNOS_PIN_PDN_INPUT>;
    691			samsung,pin-pud-pdn = <EXYNOS_PIN_PULL_NONE>;
    692		};
    693
    694		gpa0-3-pin {
    695			samsung,pins = "gpa0-3";
    696			samsung,pin-con-pdn = <EXYNOS_PIN_PDN_OUT1>;
    697			samsung,pin-pud-pdn = <EXYNOS_PIN_PULL_NONE>;
    698		};
    699	};
    700};
    701
    702&pinctrl_1 {
    703	mhl_int: mhl-int-pins {
    704		samsung,pins = "gpf3-5";
    705		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
    706	};
    707
    708	i2c_mhl_bus: i2c-mhl-bus-pins {
    709		samsung,pins = "gpf0-4", "gpf0-6";
    710		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
    711		samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
    712		samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
    713	};
    714
    715	usb_sel: usb-sel-pins {
    716		samsung,pins = "gpl0-6";
    717		samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
    718		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
    719		samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
    720		samsung,pin-val = <0>;
    721	};
    722
    723	bt_en: bt-en-pins {
    724		samsung,pins = "gpl0-4";
    725		samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
    726		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
    727		samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>;
    728		samsung,pin-val = <0>;
    729	};
    730
    731	bt_res: bt-res-pins {
    732		samsung,pins = "gpl1-0";
    733		samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
    734		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
    735		samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>;
    736		samsung,pin-val = <0>;
    737	};
    738
    739	otg_gp: otg-gp-pins {
    740		samsung,pins = "gpx3-3";
    741		samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
    742		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
    743		samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
    744		samsung,pin-val = <0>;
    745	};
    746
    747	mag_mhl_gpio: mag-mhl-pins {
    748		samsung,pins = "gpd0-2";
    749		samsung,pin-function = <EXYNOS_PIN_FUNC_3>;
    750		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
    751	};
    752
    753	max8997_irq: max8997-irq-pins {
    754		samsung,pins = "gpx0-7";
    755		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
    756	};
    757
    758	max17042_fuel_irq: max17042-fuel-irq-pins {
    759		samsung,pins = "gpx2-3";
    760		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
    761	};
    762
    763	tsp224_irq: tsp224-irq-pins {
    764		samsung,pins = "gpx0-4";
    765		samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
    766	};
    767};
    768
    769&rtc {
    770	status = "okay";
    771	clocks = <&clock CLK_RTC>, <&pmic_ap_clk>;
    772	clock-names = "rtc", "rtc_src";
    773};
    774
    775&sdhci_0 {
    776	status = "okay";
    777
    778	bus-width = <8>;
    779	non-removable;
    780	vmmc-supply = <&vemmc_reg>;
    781
    782	pinctrl-0 = <&sd0_clk>, <&sd0_cmd>, <&sd0_bus8>;
    783	pinctrl-names = "default";
    784};
    785
    786&sdhci_2 {
    787	status = "okay";
    788
    789	bus-width = <4>;
    790	cd-gpios = <&gpx3 4 GPIO_ACTIVE_LOW>;
    791	vmmc-supply = <&vtf_reg>;
    792
    793	pinctrl-0 = <&sd2_clk>, <&sd2_cmd>, <&sd2_bus4>;
    794	pinctrl-names = "default";
    795};
    796
    797&sdhci_3 {
    798	status = "okay";
    799
    800	#address-cells = <1>;
    801	#size-cells = <0>;
    802
    803	non-removable;
    804	bus-width = <4>;
    805	mmc-pwrseq = <&wlan_pwrseq>;
    806	vmmc-supply = <&vtf_reg>;
    807
    808	pinctrl-names = "default";
    809	pinctrl-0 = <&sd3_clk>, <&sd3_cmd>, <&sd3_bus4>;
    810
    811	brcmf: wifi@1 {
    812		compatible = "brcm,bcm4330-fmac", "brcm,bcm4329-fmac";
    813		reg = <1>;
    814
    815		interrupt-parent = <&gpx2>;
    816		interrupts = <5 IRQ_TYPE_LEVEL_HIGH>;
    817		interrupt-names = "host-wake";
    818	};
    819};
    820
    821&serial_0 {
    822	status = "okay";
    823
    824	pinctrl-names = "default";
    825	pinctrl-0 = <&bt_en>, <&bt_res>, <&uart0_data>, <&uart0_fctl>;
    826
    827	bluetooth {
    828		compatible = "brcm,bcm4330-bt";
    829
    830		shutdown-gpios = <&gpl0 4 GPIO_ACTIVE_HIGH>;
    831		reset-gpios = <&gpl1 0 GPIO_ACTIVE_LOW>;
    832		device-wakeup-gpios = <&gpx3 1 GPIO_ACTIVE_HIGH>;
    833
    834		interrupt-parent = <&gpx2>;
    835		interrupts = <6 IRQ_TYPE_EDGE_FALLING>;
    836		interrupt-names = "host-wakeup";
    837	};
    838};
    839
    840&serial_1 {
    841	status = "okay";
    842};
    843
    844&serial_2 {
    845	status = "okay";
    846};
    847
    848&serial_3 {
    849	status = "okay";
    850};
    851
    852&tmu {
    853	status = "okay";
    854};