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

exynos4412-p4note.dtsi (26715B)


      1// SPDX-License-Identifier: GPL-2.0
      2/*
      3 * Samsung's Exynos4412 based p4note device family base DT.
      4 * Based on exynos4412-midas.dtsi.
      5 *
      6 * Copyright (c) 2013 Samsung Electronics Co., Ltd.
      7 *		http://www.samsung.com
      8 */
      9
     10/dts-v1/;
     11#include "exynos4412.dtsi"
     12#include "exynos4412-ppmu-common.dtsi"
     13
     14#include <dt-bindings/clock/maxim,max77686.h>
     15#include <dt-bindings/gpio/gpio.h>
     16#include <dt-bindings/input/linux-event-codes.h>
     17#include <dt-bindings/interrupt-controller/irq.h>
     18#include <dt-bindings/pinctrl/samsung.h>
     19#include <dt-bindings/power/summit,smb347-charger.h>
     20
     21/ {
     22	compatible = "samsung,p4note", "samsung,exynos4412", "samsung,exynos4";
     23
     24	memory@40000000 {
     25		device_type = "memory";
     26		reg = <0x40000000 0x80000000>;
     27	};
     28
     29	chosen {
     30		stdout-path = &serial_2;
     31	};
     32
     33	firmware@204f000 {
     34		compatible = "samsung,secure-firmware";
     35		reg = <0x0204F000 0x1000>;
     36	};
     37
     38	fixed-rate-clocks {
     39		xxti {
     40			compatible = "samsung,clock-xxti";
     41			clock-frequency = <0>;
     42		};
     43
     44		xusbxti {
     45			compatible = "samsung,clock-xusbxti";
     46			clock-frequency = <24000000>;
     47		};
     48	};
     49
     50	gpio-keys {
     51		compatible = "gpio-keys";
     52		pinctrl-names = "default";
     53		pinctrl-0 = <&gpio_keys>;
     54
     55		key-down {
     56			gpios = <&gpx2 2 GPIO_ACTIVE_LOW>;
     57			linux,code = <KEY_VOLUMEDOWN>;
     58			label = "volume down";
     59			debounce-interval = <10>;
     60		};
     61
     62		key-up {
     63			gpios = <&gpx3 3 GPIO_ACTIVE_LOW>;
     64			linux,code = <KEY_VOLUMEUP>;
     65			label = "volume up";
     66			debounce-interval = <10>;
     67		};
     68
     69		key-power {
     70			gpios = <&gpx2 7 GPIO_ACTIVE_LOW>;
     71			linux,code = <KEY_POWER>;
     72			label = "power";
     73			debounce-interval = <10>;
     74			wakeup-source;
     75		};
     76	};
     77
     78	voltage-regulator-1 {
     79		compatible = "regulator-fixed";
     80		regulator-name = "TSP_LDO1";
     81		pinctrl-names = "default";
     82		pinctrl-0 = <&tsp_reg_gpio_1>;
     83		gpios = <&gpm4 5 GPIO_ACTIVE_HIGH>;
     84		enable-active-high;
     85		regulator-always-on;
     86	};
     87
     88	voltage-regulator-2 {
     89		compatible = "regulator-fixed";
     90		regulator-name = "TSP_LDO2";
     91		pinctrl-names = "default";
     92		pinctrl-0 = <&tsp_reg_gpio_2>;
     93		gpios = <&gpb 5 GPIO_ACTIVE_HIGH>;
     94		enable-active-high;
     95		regulator-always-on;
     96	};
     97
     98	voltage-regulator-3 {
     99		compatible = "regulator-fixed";
    100		regulator-name = "TSP_LDO3";
    101		pinctrl-names = "default";
    102		pinctrl-0 = <&tsp_reg_gpio_3>;
    103		gpios = <&gpb 7 GPIO_ACTIVE_HIGH>;
    104		startup-delay-us = <20000>;
    105		enable-active-high;
    106		regulator-always-on;
    107	};
    108
    109	wlan_pwrseq: sdhci3-pwrseq {
    110		compatible = "mmc-pwrseq-simple";
    111		reset-gpios = <&gpm3 5 GPIO_ACTIVE_LOW>;
    112		pinctrl-0 = <&wifi_reset>;
    113		pinctrl-names = "default";
    114		clocks = <&max77686 MAX77686_CLK_PMIC>;
    115		clock-names = "ext_clock";
    116	};
    117
    118	battery_cell: battery-cell {
    119		compatible = "simple-battery";
    120		device-chemistry = "lithium-ion";
    121		constant-charge-current-max-microamp = <2200000>;
    122		precharge-current-microamp = <250000>;
    123		charge-term-current-microamp = <250000>;
    124		constant-charge-voltage-max-microvolt = <4200000>;
    125
    126		power-supplies = <&power_supply>;
    127	};
    128
    129	i2c-gpio-1 {
    130		compatible = "i2c-gpio";
    131		sda-gpios = <&gpy2 4 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
    132		scl-gpios = <&gpy2 5 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
    133		i2c-gpio,delay-us = <2>;
    134		#address-cells = <1>;
    135		#size-cells = <0>;
    136
    137		magnetometer@c {
    138			compatible = "asahi-kasei,ak8975";
    139			reg = <0x0c>;
    140			pinctrl-0 = <&ak8975_irq>;
    141			pinctrl-names = "default";
    142			interrupt-parent = <&gpm4>;
    143			interrupts = <7 IRQ_TYPE_EDGE_RISING>;
    144		};
    145	};
    146
    147	i2c-gpio-2 {
    148		compatible = "i2c-gpio";
    149		sda-gpios = <&gpy0 2 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
    150		scl-gpios = <&gpy0 3 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
    151		i2c-gpio,delay-us = <2>;
    152		#address-cells = <1>;
    153		#size-cells = <0>;
    154
    155		fuel-gauge@36 {
    156			compatible = "maxim,max17042";
    157			reg = <0x36>;
    158			pinctrl-0 = <&fuel_alert_irq>;
    159			pinctrl-names = "default";
    160			interrupt-parent = <&gpx2>;
    161			interrupts = <3 IRQ_TYPE_LEVEL_LOW>;
    162			maxim,rsns-microohm = <10000>;
    163			maxim,over-heat-temp = <600>;
    164			maxim,over-volt = <4300>;
    165		};
    166	};
    167
    168	i2c-gpio-3 {
    169		compatible = "i2c-gpio";
    170		sda-gpios = <&gpm4 1 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
    171		scl-gpios = <&gpm4 0 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
    172		i2c-gpio,delay-us = <5>;
    173		#address-cells = <1>;
    174		#size-cells = <0>;
    175
    176		adc@41 {
    177			compatible = "st,stmpe811";
    178			reg = <0x41>;
    179			pinctrl-0 = <&stmpe_adc_irq>;
    180			pinctrl-names = "default";
    181			interrupt-parent = <&gpx0>;
    182			interrupts = <1 IRQ_TYPE_LEVEL_LOW>;
    183			interrupt-controller;
    184			irq-trigger = <0x1>;
    185			st,adc-freq = <3>;
    186			st,mod-12b = <1>;
    187			st,ref-sel = <0>;
    188			st,sample-time = <3>;
    189
    190			stmpe_adc {
    191				compatible = "st,stmpe-adc";
    192				#io-channel-cells = <1>;
    193				st,norequest-mask = <0x2F>;
    194			};
    195		};
    196	};
    197
    198	i2c-gpio-4 {
    199		compatible = "i2c-gpio";
    200		sda-gpios = <&gpm2 0 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
    201		scl-gpios = <&gpm2 1 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
    202
    203		i2c-gpio,delay-us = <2>;
    204		#address-cells = <1>;
    205		#size-cells = <0>;
    206
    207		power_supply: charger@6 {
    208			compatible = "summit,smb347";
    209			reg = <0x6>;
    210			summit,enable-usb-charging;
    211			summit,enable-charge-control = <SMB3XX_CHG_ENABLE_SW>;
    212			summit,fast-voltage-threshold-microvolt = <2600000>;
    213			summit,chip-temperature-threshold-celsius = <130>;
    214			summit,usb-current-limit-microamp = <1800000>;
    215
    216			monitored-battery = <&battery_cell>;
    217		};
    218	};
    219};
    220
    221&adc {
    222	vdd-supply = <&ldo3_reg>;
    223	/* not verified */
    224	status = "okay";
    225};
    226
    227&bus_dmc {
    228	devfreq-events = <&ppmu_dmc0_3>, <&ppmu_dmc1_3>;
    229	vdd-supply = <&buck1_reg>;
    230	status = "okay";
    231};
    232
    233&bus_acp {
    234	devfreq = <&bus_dmc>;
    235	status = "okay";
    236};
    237
    238&bus_c2c {
    239	devfreq = <&bus_dmc>;
    240	status = "okay";
    241};
    242
    243&bus_leftbus {
    244	devfreq-events = <&ppmu_leftbus_3>, <&ppmu_rightbus_3>;
    245	vdd-supply = <&buck3_reg>;
    246	status = "okay";
    247};
    248
    249&bus_rightbus {
    250	devfreq = <&bus_leftbus>;
    251	status = "okay";
    252};
    253
    254&bus_display {
    255	devfreq = <&bus_leftbus>;
    256	status = "okay";
    257};
    258
    259&bus_fsys {
    260	devfreq = <&bus_leftbus>;
    261	status = "okay";
    262};
    263
    264&bus_peri {
    265	devfreq = <&bus_leftbus>;
    266	status = "okay";
    267};
    268
    269&bus_mfc {
    270	devfreq = <&bus_leftbus>;
    271	status = "okay";
    272};
    273
    274&cpu0 {
    275	cpu0-supply = <&buck2_reg>;
    276};
    277
    278&cpu_thermal {
    279	cooling-maps {
    280		map0 {
    281			/* Corresponds to 800MHz at freq_table */
    282			cooling-device = <&cpu0 7 7>, <&cpu1 7 7>,
    283					 <&cpu2 7 7>, <&cpu3 7 7>;
    284		};
    285		map1 {
    286			/* Corresponds to 200MHz at freq_table */
    287			cooling-device = <&cpu0 13 13>, <&cpu1 13 13>,
    288					 <&cpu2 13 13>, <&cpu3 13 13>;
    289		};
    290	};
    291};
    292
    293&exynos_usbphy {
    294	status = "okay";
    295};
    296
    297&fimd {
    298	pinctrl-0 = <&lcd_clk &lcd_data24 &pwm1_out>;
    299	pinctrl-names = "default";
    300	status = "okay";
    301
    302	display-timings {
    303		timing0 {
    304			clock-frequency = <66666666>;
    305			hactive = <1280>;
    306			vactive = <800>;
    307			hfront-porch = <18>;
    308			hback-porch = <36>;
    309			hsync-len = <16>;
    310			vback-porch = <16>;
    311			vfront-porch = <4>;
    312			vsync-len = <3>;
    313			hsync-active = <1>;
    314		};
    315	};
    316};
    317
    318&gpu {
    319	mali-supply = <&buck4_reg>;
    320	status = "okay";
    321};
    322
    323&hsotg {
    324	vusb_a-supply = <&ldo12_reg>;
    325	dr_mode = "peripheral";
    326	status = "okay";
    327};
    328
    329&i2c_3 {
    330	samsung,i2c-sda-delay = <100>;
    331	samsung,i2c-slave-addr = <0x10>;
    332	samsung,i2c-max-bus-freq = <400000>;
    333	pinctrl-0 = <&i2c3_bus>;
    334	pinctrl-names = "default";
    335	status = "okay";
    336
    337	touchscreen@4a {
    338		compatible = "atmel,maxtouch";
    339		reg = <0x4a>;
    340		pinctrl-0 = <&tsp_rst &tsp_irq>;
    341		pinctrl-names = "default";
    342		interrupt-parent = <&gpm2>;
    343		interrupts = <3 IRQ_TYPE_LEVEL_LOW>;
    344		reset-gpios = <&gpm0 4 GPIO_ACTIVE_LOW>;
    345	};
    346};
    347
    348&i2c_7 {
    349	samsung,i2c-sda-delay = <100>;
    350	samsung,i2c-slave-addr = <0x10>;
    351	samsung,i2c-max-bus-freq = <400000>;
    352	pinctrl-0 = <&i2c7_bus>;
    353	pinctrl-names = "default";
    354	status = "okay";
    355
    356	max77686: pmic@9 {
    357		compatible = "maxim,max77686";
    358		interrupt-parent = <&gpx0>;
    359		interrupts = <7 IRQ_TYPE_LEVEL_LOW>;
    360		pinctrl-0 = <&max77686_irq>;
    361		pinctrl-names = "default";
    362		wakeup-source;
    363		reg = <0x09>;
    364		#clock-cells = <1>;
    365
    366		voltage-regulators {
    367			ldo1_reg: LDO1 {
    368				regulator-name = "ldo1";
    369				regulator-always-on;
    370			};
    371
    372			ldo2_reg: LDO2 {
    373				regulator-name = "ldo2";
    374				regulator-always-on;
    375			};
    376
    377			/* WM8994 audio */
    378			ldo3_reg: LDO3 {
    379				regulator-name = "VCC_1.8V_AP";
    380				regulator-min-microvolt = <1800000>;
    381				regulator-max-microvolt = <1800000>;
    382				regulator-always-on;
    383				regulator-boot-on;
    384
    385				regulator-state-mem {
    386					regulator-on-in-suspend;
    387				};
    388			};
    389
    390			ldo4_reg: LDO4 {
    391				regulator-name = "ldo4";
    392				regulator-always-on;
    393			};
    394
    395			ldo5_reg: LDO5 {
    396				regulator-name = "VCC_1.8V_IO";
    397				regulator-min-microvolt = <1800000>;
    398				regulator-max-microvolt = <1800000>;
    399
    400				regulator-state-mem {
    401					regulator-off-in-suspend;
    402				};
    403			};
    404
    405			ldo6_reg: LDO6 {
    406				regulator-name = "ldo6";
    407				regulator-always-on;
    408			};
    409
    410			ldo7_reg: LDO7 {
    411				regulator-name = "ldo7";
    412				regulator-always-on;
    413			};
    414
    415			/* CSI IP block */
    416			ldo8_reg: LDO8 {
    417				regulator-name = "VMIPI_1.0V";
    418				regulator-min-microvolt = <1000000>;
    419				regulator-max-microvolt = <1000000>;
    420				regulator-always-on;
    421				regulator-boot-on;
    422
    423				regulator-state-mem {
    424					regulator-on-in-suspend;
    425				};
    426			};
    427
    428			/* IR LED on/off */
    429			ldo9_reg: LDO9 {
    430				regulator-name = "VLED_IC_1.9V";
    431				regulator-min-microvolt = <1950000>;
    432				regulator-max-microvolt = <1950000>;
    433
    434				regulator-state-mem {
    435					regulator-off-in-suspend;
    436				};
    437			};
    438
    439			/* CSI IP block */
    440			ldo10_reg: LDO10 {
    441				regulator-name = "VMIPI_1.8V";
    442				regulator-min-microvolt = <1800000>;
    443				regulator-max-microvolt = <1800000>;
    444				regulator-always-on;
    445				regulator-boot-on;
    446
    447				regulator-state-mem {
    448					regulator-on-in-suspend;
    449				};
    450			};
    451
    452			ldo11_reg: LDO11 {
    453				regulator-name = "VABB1_1.9V";
    454				regulator-min-microvolt = <1950000>;
    455				regulator-max-microvolt = <1950000>;
    456				regulator-always-on;
    457				regulator-boot-on;
    458
    459				regulator-state-mem {
    460					regulator-off-in-suspend;
    461				};
    462			};
    463
    464			/* USB OTG */
    465			ldo12_reg: LDO12 {
    466				regulator-name = "VUOTG_3.0V";
    467				regulator-min-microvolt = <3000000>;
    468				regulator-max-microvolt = <3000000>;
    469				regulator-always-on;
    470				regulator-boot-on;
    471
    472				regulator-state-mem {
    473					regulator-on-in-suspend;
    474				};
    475			};
    476
    477			/* not connected */
    478			ldo13_reg: LDO13 {
    479				regulator-name = "ldo13";
    480			};
    481
    482			ldo14_reg: LDO14 {
    483				regulator-name = "VABB2_1.9V";
    484				regulator-min-microvolt = <1950000>;
    485				regulator-max-microvolt = <1950000>;
    486				regulator-always-on;
    487				regulator-boot-on;
    488
    489				regulator-state-mem {
    490					regulator-off-in-suspend;
    491				};
    492			};
    493
    494			ldo15_reg: LDO15 {
    495				regulator-name = "ldo15";
    496				regulator-always-on;
    497			};
    498
    499			ldo16_reg: LDO16 {
    500				regulator-name = "ldo16";
    501				regulator-always-on;
    502			};
    503
    504			/* not connected */
    505			ldo17_reg: LDO17 {
    506				regulator-name = "ldo17";
    507			};
    508
    509			/* Camera ISX012 */
    510			ldo18_reg: LDO18 {
    511				regulator-name = "CAM_IO_1.8V";
    512				regulator-min-microvolt = <1800000>;
    513				regulator-max-microvolt = <1800000>;
    514
    515				regulator-state-mem {
    516					regulator-off-in-suspend;
    517				};
    518			};
    519
    520			/* Camera S5K6A3 */
    521			ldo19_reg: LDO19 {
    522				regulator-name = "VT_CORE_1.8V";
    523				regulator-min-microvolt = <1800000>;
    524				regulator-max-microvolt = <1800000>;
    525
    526				regulator-state-mem {
    527					regulator-off-in-suspend;
    528				};
    529			};
    530
    531			/* not connected */
    532			ldo20_reg: LDO20 {
    533				regulator-name = "ldo20";
    534			};
    535
    536			/* MMC2 */
    537			ldo21_reg: LDO21 {
    538				regulator-name = "VTF_2.8V";
    539				regulator-min-microvolt = <2800000>;
    540				regulator-max-microvolt = <2800000>;
    541				maxim,ena-gpios = <&gpy2 0 GPIO_ACTIVE_HIGH>;
    542			};
    543
    544			/* not connected */
    545			ldo22_reg: LDO22 {
    546				regulator-name = "ldo22";
    547			};
    548
    549			/* ADC */
    550			ldo23_reg: LDO23 {
    551				regulator-name = "VDD_ADC_3.3V";
    552				regulator-min-microvolt = <3300000>;
    553				regulator-max-microvolt = <3300000>;
    554				regulator-always-on;
    555				regulator-boot-on;
    556
    557				regulator-state-mem {
    558					regulator-off-in-suspend;
    559				};
    560			};
    561
    562			/* Camera S5K6A3 */
    563			ldo24_reg: LDO24 {
    564				regulator-name = "CAM_A2.8V";
    565				regulator-min-microvolt = <2800000>;
    566				regulator-max-microvolt = <2800000>;
    567
    568				regulator-state-mem {
    569					regulator-off-in-suspend;
    570				};
    571			};
    572
    573			ldo25_reg: LDO25 {
    574				regulator-name = "VLED_3.3V";
    575				regulator-min-microvolt = <3300000>;
    576				regulator-max-microvolt = <3300000>;
    577
    578				regulator-state-mem {
    579					regulator-off-in-suspend;
    580				};
    581			};
    582
    583			/* Camera ISX012 */
    584			ldo26_reg: LDO26 {
    585				regulator-name = "3MP_AF_2.8V";
    586				regulator-min-microvolt = <2800000>;
    587				regulator-max-microvolt = <2800000>;
    588
    589				regulator-state-mem {
    590					regulator-off-in-suspend;
    591				};
    592			};
    593
    594			buck1_reg: BUCK1 {
    595				regulator-name = "VDD_MIF";
    596				regulator-min-microvolt = <850000>;
    597				regulator-max-microvolt = <1050000>;
    598				regulator-always-on;
    599				regulator-boot-on;
    600			};
    601
    602			buck2_reg: BUCK2 {
    603				regulator-name = "VDD_ARM";
    604				regulator-min-microvolt = <850000>;
    605				regulator-max-microvolt = <1500000>;
    606				regulator-always-on;
    607				regulator-boot-on;
    608			};
    609
    610			buck3_reg: BUCK3 {
    611				regulator-name = "VDD_INT";
    612				regulator-min-microvolt = <850000>;
    613				regulator-max-microvolt = <1100000>;
    614				regulator-always-on;
    615				regulator-boot-on;
    616			};
    617
    618			buck4_reg: BUCK4 {
    619				regulator-name = "VDD_G3D";
    620				regulator-min-microvolt = <850000>;
    621				regulator-max-microvolt = <1075000>;
    622				regulator-boot-on;
    623			};
    624
    625			buck5_reg: BUCK5 {
    626				regulator-name = "buck5";
    627				regulator-always-on;
    628			};
    629
    630			buck6_reg: BUCK6 {
    631				regulator-name = "buck6";
    632				regulator-always-on;
    633			};
    634
    635			buck7_reg: BUCK7 {
    636				regulator-name = "buck7";
    637				regulator-always-on;
    638			};
    639
    640			/* not connected */
    641			buck8_reg: BUCK8 {
    642				regulator-name = "buck8";
    643			};
    644
    645			buck9_reg: BUCK9 {
    646				regulator-name = "3MP_CORE_1.2V";
    647				regulator-min-microvolt = <1200000>;
    648				regulator-max-microvolt = <1200000>;
    649
    650				regulator-state-mem {
    651					regulator-off-in-suspend;
    652				};
    653			};
    654		};
    655	};
    656};
    657
    658&mshc_0 {
    659	broken-cd;
    660	non-removable;
    661	card-detect-delay = <200>;
    662	clock-frequency = <400000000>;
    663	samsung,dw-mshc-ciu-div = <0>;
    664	samsung,dw-mshc-sdr-timing = <2 3>;
    665	samsung,dw-mshc-ddr-timing = <1 2>;
    666	pinctrl-0 = <&sd4_clk &sd4_cmd &sd4_bus4 &sd4_bus8>;
    667	pinctrl-names = "default";
    668	bus-width = <4>;
    669	cap-mmc-highspeed;
    670	cap-sd-highspeed;
    671	status = "okay";
    672};
    673
    674&pinctrl_0 {
    675	pinctrl-names = "default";
    676	pinctrl-0 = <&sleep0>;
    677
    678	tsp_reg_gpio_2: tsp-reg-gpio-2-pins {
    679		samsung,pins = "gpb-5";
    680		samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
    681		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
    682	};
    683
    684	tsp_reg_gpio_3: tsp-reg-gpio-3-pins {
    685		samsung,pins = "gpb-7";
    686		samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
    687		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
    688	};
    689
    690	sleep0: sleep-state {
    691		PIN_SLP(gpa0-0, INPUT, NONE);
    692		PIN_SLP(gpa0-1, OUT0, NONE);
    693		PIN_SLP(gpa0-2, INPUT, NONE);
    694		PIN_SLP(gpa0-3, INPUT, UP);
    695		PIN_SLP(gpa0-4, INPUT, NONE);
    696		PIN_SLP(gpa0-5, INPUT, DOWN);
    697		PIN_SLP(gpa0-6, INPUT, DOWN);
    698		PIN_SLP(gpa0-7, INPUT, UP);
    699
    700		PIN_SLP(gpa1-0, INPUT, DOWN);
    701		PIN_SLP(gpa1-1, INPUT, DOWN);
    702		PIN_SLP(gpa1-2, INPUT, DOWN);
    703		PIN_SLP(gpa1-3, INPUT, DOWN);
    704		PIN_SLP(gpa1-4, INPUT, DOWN);
    705		PIN_SLP(gpa1-5, INPUT, DOWN);
    706
    707		PIN_SLP(gpb-0, INPUT, NONE);
    708		PIN_SLP(gpb-1, INPUT, NONE);
    709		PIN_SLP(gpb-2, INPUT, NONE);
    710		PIN_SLP(gpb-3, INPUT, NONE);
    711		PIN_SLP(gpb-4, INPUT, DOWN);
    712		PIN_SLP(gpb-5, INPUT, DOWN);
    713		PIN_SLP(gpb-6, INPUT, DOWN);
    714		PIN_SLP(gpb-7, INPUT, DOWN);
    715
    716		PIN_SLP(gpc0-0, INPUT, DOWN);
    717		PIN_SLP(gpc0-1, INPUT, DOWN);
    718		PIN_SLP(gpc0-2, INPUT, DOWN);
    719		PIN_SLP(gpc0-3, INPUT, DOWN);
    720		PIN_SLP(gpc0-4, INPUT, DOWN);
    721
    722		PIN_SLP(gpc1-0, INPUT, UP);
    723		PIN_SLP(gpc1-1, PREV, NONE);
    724		PIN_SLP(gpc1-2, INPUT, UP);
    725		PIN_SLP(gpc1-3, INPUT, UP);
    726		PIN_SLP(gpc1-4, INPUT, UP);
    727
    728		PIN_SLP(gpd0-0, INPUT, DOWN);
    729		PIN_SLP(gpd0-1, OUT0, NONE);
    730		PIN_SLP(gpd0-2, INPUT, NONE);
    731		PIN_SLP(gpd0-3, INPUT, NONE);
    732
    733		PIN_SLP(gpd1-0, INPUT, DOWN);
    734		PIN_SLP(gpd1-1, INPUT, DOWN);
    735		PIN_SLP(gpd1-2, INPUT, NONE);
    736		PIN_SLP(gpd1-3, INPUT, NONE);
    737
    738		PIN_SLP(gpf0-0, OUT0, NONE);
    739		PIN_SLP(gpf0-1, OUT0, NONE);
    740		PIN_SLP(gpf0-2, OUT0, NONE);
    741		PIN_SLP(gpf0-3, OUT0, NONE);
    742		PIN_SLP(gpf0-4, OUT0, NONE);
    743		PIN_SLP(gpf0-5, OUT0, NONE);
    744		PIN_SLP(gpf0-6, OUT0, NONE);
    745		PIN_SLP(gpf0-7, OUT0, NONE);
    746
    747		PIN_SLP(gpf1-0, OUT0, NONE);
    748		PIN_SLP(gpf1-1, OUT0, NONE);
    749		PIN_SLP(gpf1-2, OUT0, NONE);
    750		PIN_SLP(gpf1-3, OUT0, NONE);
    751		PIN_SLP(gpf1-4, OUT0, NONE);
    752		PIN_SLP(gpf1-5, OUT0, NONE);
    753		PIN_SLP(gpf1-6, OUT0, NONE);
    754		PIN_SLP(gpf1-7, OUT0, NONE);
    755
    756		PIN_SLP(gpf2-0, OUT0, NONE);
    757		PIN_SLP(gpf2-1, OUT0, NONE);
    758		PIN_SLP(gpf2-2, OUT0, NONE);
    759		PIN_SLP(gpf2-3, OUT0, NONE);
    760		PIN_SLP(gpf2-4, OUT0, NONE);
    761		PIN_SLP(gpf2-5, OUT0, NONE);
    762		PIN_SLP(gpf2-6, OUT0, NONE);
    763		PIN_SLP(gpf2-7, OUT0, NONE);
    764
    765		PIN_SLP(gpf3-0, OUT0, NONE);
    766		PIN_SLP(gpf3-1, OUT0, NONE);
    767		PIN_SLP(gpf3-2, OUT0, NONE);
    768		PIN_SLP(gpf3-3, OUT0, NONE);
    769		PIN_SLP(gpf3-4, OUT0, NONE);
    770		PIN_SLP(gpf3-5, OUT0, NONE);
    771
    772		PIN_SLP(gpj0-0, INPUT, DOWN);
    773		PIN_SLP(gpj0-1, INPUT, DOWN);
    774		PIN_SLP(gpj0-2, INPUT, DOWN);
    775		PIN_SLP(gpj0-3, PREV, NONE);
    776		PIN_SLP(gpj0-4, PREV, NONE);
    777		PIN_SLP(gpj0-5, OUT0, NONE);
    778		PIN_SLP(gpj0-6, OUT0, NONE);
    779		PIN_SLP(gpj0-7, OUT0, NONE);
    780
    781		PIN_SLP(gpj1-0, OUT0, NONE);
    782		PIN_SLP(gpj1-1, INPUT, DOWN);
    783		PIN_SLP(gpj1-2, PREV, NONE);
    784		PIN_SLP(gpj1-3, OUT0, NONE);
    785	};
    786};
    787
    788&pinctrl_1 {
    789	pinctrl-names = "default";
    790	pinctrl-0 = <&sleep1>;
    791
    792	sd3_wifi: sd3-wifi-pins {
    793		samsung,pins = "gpk3-3", "gpk3-4", "gpk3-5", "gpk3-6";
    794		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
    795		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
    796	};
    797
    798	bt_shutdown: bt-shutdown-pins {
    799		samsung,pins = "gpl0-6";
    800		samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
    801		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
    802	};
    803
    804	uart_sel: uart-sel-pins {
    805		samsung,pins = "gpl2-7";
    806		samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
    807		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
    808		samsung,pin-val = <1>;
    809		/* 0 = CP, 1 = AP (serial output) */
    810	};
    811
    812	tsp_rst: tsp-rst-pins {
    813		samsung,pins = "gpm0-4";
    814		samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
    815		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
    816	};
    817
    818	tsp_irq: tsp-irq-pins {
    819		samsung,pins = "gpm2-3";
    820		samsung,pin-function = <EXYNOS_PIN_FUNC_F>;
    821		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
    822	};
    823
    824	wifi_reset: wifi-reset-pins {
    825		samsung,pins = "gpm3-5";
    826		samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
    827		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
    828	};
    829
    830	tsp_reg_gpio_1: tsp-reg-gpio-1-pins {
    831		samsung,pins = "gpm4-5";
    832		samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
    833		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
    834	};
    835
    836	ak8975_irq: ak8975-irq-pins {
    837		samsung,pins = "gpm4-7";
    838		samsung,pin-function = <EXYNOS_PIN_FUNC_F>;
    839		samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
    840	};
    841
    842	stmpe_adc_irq: stmpe-adc-irq-pins {
    843		samsung,pins = "gpx0-1";
    844		samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
    845		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
    846	};
    847
    848	max77686_irq: max77686-irq-pins {
    849		samsung,pins = "gpx0-7";
    850		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
    851	};
    852
    853	gpio_keys: gpio-keys-pins {
    854		samsung,pins = "gpx2-2", "gpx2-7", "gpx3-3";
    855		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
    856	};
    857
    858	fuel_alert_irq: fuel-alert-irq-pins {
    859		samsung,pins = "gpx2-3";
    860		samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
    861		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
    862	};
    863
    864	wifi_host_wake: wifi-host-wake-pins {
    865		samsung,pins = "gpx2-5";
    866		samsung,pin-function = <EXYNOS_PIN_FUNC_F>;
    867		samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
    868	};
    869
    870	bt_host_wakeup: bt-host-wakeup-pins {
    871		samsung,pins = "gpx2-6";
    872		samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
    873		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
    874	};
    875
    876	bt_device_wakeup: bt-device-wakeup-pins {
    877		samsung,pins = "gpx3-1";
    878		samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
    879		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
    880	};
    881
    882	sdhci2_cd: sdhci2-cd-pins {
    883		samsung,pins = "gpx3-4";
    884		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
    885	};
    886
    887	sleep1: sleep-state {
    888		PIN_SLP(gpk0-0, PREV, NONE);
    889		PIN_SLP(gpk0-1, PREV, NONE);
    890		PIN_SLP(gpk0-2, PREV, NONE);
    891		PIN_SLP(gpk0-3, PREV, NONE);
    892		PIN_SLP(gpk0-4, PREV, NONE);
    893		PIN_SLP(gpk0-5, PREV, NONE);
    894		PIN_SLP(gpk0-6, PREV, NONE);
    895
    896		PIN_SLP(gpk1-0, INPUT, DOWN);
    897		PIN_SLP(gpk1-1, INPUT, DOWN);
    898		PIN_SLP(gpk1-2, INPUT, DOWN);
    899		PIN_SLP(gpk1-3, PREV, NONE);
    900		PIN_SLP(gpk1-4, PREV, NONE);
    901		PIN_SLP(gpk1-5, PREV, NONE);
    902		PIN_SLP(gpk1-6, PREV, NONE);
    903
    904		PIN_SLP(gpk2-0, INPUT, DOWN);
    905		PIN_SLP(gpk2-1, INPUT, DOWN);
    906		PIN_SLP(gpk2-2, INPUT, DOWN);
    907		PIN_SLP(gpk2-3, INPUT, DOWN);
    908		PIN_SLP(gpk2-4, INPUT, DOWN);
    909		PIN_SLP(gpk2-5, INPUT, DOWN);
    910		PIN_SLP(gpk2-6, INPUT, DOWN);
    911
    912		PIN_SLP(gpk3-0, OUT0, NONE);
    913		PIN_SLP(gpk3-1, INPUT, NONE);
    914		PIN_SLP(gpk3-2, INPUT, DOWN);
    915		PIN_SLP(gpk3-3, INPUT, NONE);
    916		PIN_SLP(gpk3-4, INPUT, NONE);
    917		PIN_SLP(gpk3-5, INPUT, NONE);
    918		PIN_SLP(gpk3-6, INPUT, NONE);
    919
    920		PIN_SLP(gpl0-0, OUT0, NONE);
    921		PIN_SLP(gpl0-1, INPUT, NONE);
    922		PIN_SLP(gpl0-2, INPUT, NONE);
    923		PIN_SLP(gpl0-3, INPUT, DOWN);
    924		PIN_SLP(gpl0-4, PREV, NONE);
    925		PIN_SLP(gpl0-6, PREV, NONE);
    926
    927		PIN_SLP(gpl1-0, OUT0, NONE);
    928		PIN_SLP(gpl1-1, OUT0, NONE);
    929
    930		PIN_SLP(gpl2-0, INPUT, DOWN);
    931		PIN_SLP(gpl2-1, INPUT, DOWN);
    932		PIN_SLP(gpl2-2, INPUT, DOWN);
    933		PIN_SLP(gpl2-3, INPUT, DOWN);
    934		PIN_SLP(gpl2-4, OUT0, NONE);
    935		PIN_SLP(gpl2-5, INPUT, DOWN);
    936		PIN_SLP(gpl2-6, PREV, NONE);
    937		PIN_SLP(gpl2-7, PREV, NONE);
    938
    939		PIN_SLP(gpm0-0, PREV, NONE);
    940		PIN_SLP(gpm0-1, OUT0, NONE);
    941		PIN_SLP(gpm0-2, INPUT, DOWN);
    942		PIN_SLP(gpm0-3, INPUT, NONE);
    943		PIN_SLP(gpm0-4, OUT0, NONE);
    944		PIN_SLP(gpm0-5, OUT0, NONE);
    945		PIN_SLP(gpm0-6, INPUT, DOWN);
    946		PIN_SLP(gpm0-7, OUT0, NONE);
    947
    948		PIN_SLP(gpm1-0, INPUT, NONE);
    949		PIN_SLP(gpm1-1, INPUT, NONE);
    950		PIN_SLP(gpm1-2, INPUT, NONE);
    951		PIN_SLP(gpm1-3, INPUT, NONE);
    952		PIN_SLP(gpm1-4, INPUT, NONE);
    953		PIN_SLP(gpm1-5, INPUT, NONE);
    954		PIN_SLP(gpm1-6, INPUT, DOWN);
    955
    956		PIN_SLP(gpm2-0, INPUT, NONE);
    957		PIN_SLP(gpm2-1, INPUT, NONE);
    958		PIN_SLP(gpm2-2, OUT0, NONE);
    959		PIN_SLP(gpm2-3, OUT0, DOWN);
    960		PIN_SLP(gpm2-4, INPUT, DOWN);
    961
    962		PIN_SLP(gpm3-0, PREV, NONE);
    963		PIN_SLP(gpm3-1, PREV, NONE);
    964		PIN_SLP(gpm3-2, PREV, NONE);
    965		PIN_SLP(gpm3-3, OUT1, NONE);
    966		PIN_SLP(gpm3-4, OUT0, DOWN);
    967		PIN_SLP(gpm3-5, PREV, NONE);
    968		PIN_SLP(gpm3-6, PREV, NONE);
    969		PIN_SLP(gpm3-7, OUT0, NONE);
    970
    971		PIN_SLP(gpm4-0, INPUT, NONE);
    972		PIN_SLP(gpm4-1, INPUT, NONE);
    973		PIN_SLP(gpm4-2, INPUT, DOWN);
    974		PIN_SLP(gpm4-3, INPUT, DOWN);
    975		PIN_SLP(gpm4-4, PREV, NONE);
    976		PIN_SLP(gpm4-5, OUT0, NONE);
    977		PIN_SLP(gpm4-6, OUT0, NONE);
    978		PIN_SLP(gpm4-7, INPUT, DOWN);
    979
    980		PIN_SLP(gpy0-0, INPUT, DOWN);
    981		PIN_SLP(gpy0-1, INPUT, DOWN);
    982		PIN_SLP(gpy0-2, INPUT, NONE);
    983		PIN_SLP(gpy0-3, INPUT, NONE);
    984		PIN_SLP(gpy0-4, INPUT, NONE);
    985		PIN_SLP(gpy0-5, INPUT, NONE);
    986
    987		PIN_SLP(gpy1-0, INPUT, DOWN);
    988		PIN_SLP(gpy1-1, INPUT, DOWN);
    989		PIN_SLP(gpy1-2, INPUT, DOWN);
    990		PIN_SLP(gpy1-3, INPUT, DOWN);
    991
    992		PIN_SLP(gpy2-0, PREV, NONE);
    993		PIN_SLP(gpy2-1, INPUT, DOWN);
    994		PIN_SLP(gpy2-2, INPUT, NONE);
    995		PIN_SLP(gpy2-3, INPUT, NONE);
    996		PIN_SLP(gpy2-4, INPUT, NONE);
    997		PIN_SLP(gpy2-5, INPUT, NONE);
    998
    999		PIN_SLP(gpy3-0, INPUT, DOWN);
   1000		PIN_SLP(gpy3-1, INPUT, DOWN);
   1001		PIN_SLP(gpy3-2, INPUT, DOWN);
   1002		PIN_SLP(gpy3-3, INPUT, DOWN);
   1003		PIN_SLP(gpy3-4, INPUT, DOWN);
   1004		PIN_SLP(gpy3-5, INPUT, DOWN);
   1005		PIN_SLP(gpy3-6, INPUT, DOWN);
   1006		PIN_SLP(gpy3-7, INPUT, DOWN);
   1007
   1008		PIN_SLP(gpy4-0, INPUT, DOWN);
   1009		PIN_SLP(gpy4-1, INPUT, DOWN);
   1010		PIN_SLP(gpy4-2, INPUT, DOWN);
   1011		PIN_SLP(gpy4-3, INPUT, DOWN);
   1012		PIN_SLP(gpy4-4, INPUT, DOWN);
   1013		PIN_SLP(gpy4-5, INPUT, DOWN);
   1014		PIN_SLP(gpy4-6, INPUT, DOWN);
   1015		PIN_SLP(gpy4-7, INPUT, DOWN);
   1016
   1017		PIN_SLP(gpy5-0, INPUT, DOWN);
   1018		PIN_SLP(gpy5-1, INPUT, DOWN);
   1019		PIN_SLP(gpy5-2, INPUT, DOWN);
   1020		PIN_SLP(gpy5-3, INPUT, DOWN);
   1021		PIN_SLP(gpy5-4, INPUT, DOWN);
   1022		PIN_SLP(gpy5-5, INPUT, DOWN);
   1023		PIN_SLP(gpy5-6, INPUT, DOWN);
   1024		PIN_SLP(gpy5-7, INPUT, DOWN);
   1025
   1026		PIN_SLP(gpy6-0, INPUT, DOWN);
   1027		PIN_SLP(gpy6-1, INPUT, DOWN);
   1028		PIN_SLP(gpy6-2, INPUT, DOWN);
   1029		PIN_SLP(gpy6-3, INPUT, DOWN);
   1030		PIN_SLP(gpy6-4, INPUT, DOWN);
   1031		PIN_SLP(gpy6-5, INPUT, DOWN);
   1032		PIN_SLP(gpy6-6, INPUT, DOWN);
   1033		PIN_SLP(gpy6-7, INPUT, DOWN);
   1034	};
   1035};
   1036
   1037&pinctrl_2 {
   1038	pinctrl-names = "default";
   1039	pinctrl-0 = <&sleep2>;
   1040
   1041	sleep2: sleep-state {
   1042		PIN_SLP(gpz-0, INPUT, DOWN);
   1043		PIN_SLP(gpz-1, INPUT, DOWN);
   1044		PIN_SLP(gpz-2, INPUT, DOWN);
   1045		PIN_SLP(gpz-3, INPUT, DOWN);
   1046		PIN_SLP(gpz-4, INPUT, DOWN);
   1047		PIN_SLP(gpz-5, INPUT, DOWN);
   1048		PIN_SLP(gpz-6, INPUT, DOWN);
   1049	};
   1050};
   1051
   1052&pinctrl_3 {
   1053	pinctrl-names = "default";
   1054	pinctrl-0 = <&sleep3>;
   1055
   1056	sleep3: sleep-state {
   1057		PIN_SLP(gpv0-0, INPUT, DOWN);
   1058		PIN_SLP(gpv0-1, INPUT, DOWN);
   1059		PIN_SLP(gpv0-2, INPUT, DOWN);
   1060		PIN_SLP(gpv0-3, INPUT, DOWN);
   1061		PIN_SLP(gpv0-4, INPUT, DOWN);
   1062		PIN_SLP(gpv0-5, INPUT, DOWN);
   1063		PIN_SLP(gpv0-6, INPUT, DOWN);
   1064		PIN_SLP(gpv0-7, INPUT, DOWN);
   1065
   1066		PIN_SLP(gpv1-0, INPUT, DOWN);
   1067		PIN_SLP(gpv1-1, INPUT, DOWN);
   1068		PIN_SLP(gpv1-2, INPUT, DOWN);
   1069		PIN_SLP(gpv1-3, INPUT, DOWN);
   1070		PIN_SLP(gpv1-4, INPUT, DOWN);
   1071		PIN_SLP(gpv1-5, INPUT, DOWN);
   1072		PIN_SLP(gpv1-6, INPUT, DOWN);
   1073		PIN_SLP(gpv1-7, INPUT, DOWN);
   1074
   1075		PIN_SLP(gpv2-0, INPUT, DOWN);
   1076		PIN_SLP(gpv2-1, INPUT, DOWN);
   1077		PIN_SLP(gpv2-2, INPUT, DOWN);
   1078		PIN_SLP(gpv2-3, INPUT, DOWN);
   1079		PIN_SLP(gpv2-4, INPUT, DOWN);
   1080		PIN_SLP(gpv2-5, INPUT, DOWN);
   1081		PIN_SLP(gpv2-6, INPUT, DOWN);
   1082		PIN_SLP(gpv2-7, INPUT, DOWN);
   1083
   1084		PIN_SLP(gpv3-0, INPUT, DOWN);
   1085		PIN_SLP(gpv3-1, INPUT, DOWN);
   1086		PIN_SLP(gpv3-2, INPUT, DOWN);
   1087		PIN_SLP(gpv3-3, INPUT, DOWN);
   1088		PIN_SLP(gpv3-4, INPUT, DOWN);
   1089		PIN_SLP(gpv3-5, INPUT, DOWN);
   1090		PIN_SLP(gpv3-6, INPUT, DOWN);
   1091		PIN_SLP(gpv3-7, INPUT, DOWN);
   1092
   1093		PIN_SLP(gpv4-0, INPUT, DOWN);
   1094		PIN_SLP(gpv4-1, INPUT, DOWN);
   1095	};
   1096};
   1097
   1098&pmu_system_controller {
   1099	assigned-clocks = <&pmu_system_controller 0>;
   1100	assigned-clock-parents = <&clock CLK_XUSBXTI>;
   1101};
   1102
   1103&rtc {
   1104	clocks = <&clock CLK_RTC>, <&max77686 MAX77686_CLK_AP>;
   1105	clock-names = "rtc", "rtc_src";
   1106	status = "okay";
   1107};
   1108
   1109&sdhci_2 {
   1110	bus-width = <4>;
   1111	cd-gpios = <&gpx3 4 GPIO_ACTIVE_LOW>;
   1112	pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus4 &sdhci2_cd>;
   1113	pinctrl-names = "default";
   1114	vmmc-supply = <&ldo21_reg>;
   1115	status = "okay";
   1116};
   1117
   1118&sdhci_3 {
   1119	#address-cells = <1>;
   1120	#size-cells = <0>;
   1121	non-removable;
   1122	bus-width = <4>;
   1123	mmc-pwrseq = <&wlan_pwrseq>;
   1124
   1125	pinctrl-names = "default";
   1126	pinctrl-0 = <&sd3_clk &sd3_cmd &sd3_wifi>;
   1127	status = "okay";
   1128
   1129	wifi@1 {
   1130		compatible = "brcm,bcm4329-fmac";
   1131		reg = <0x1>;
   1132		pinctrl-names = "default";
   1133		pinctrl-0 = <&wifi_host_wake>;
   1134		interrupt-parent = <&gpx2>;
   1135		interrupts = <5 IRQ_TYPE_LEVEL_HIGH>;
   1136		interrupt-names = "host-wake";
   1137	};
   1138};
   1139
   1140&serial_0 {
   1141	pinctrl-0 = <&uart0_data &uart0_fctl>;
   1142	pinctrl-names = "default";
   1143	status = "okay";
   1144
   1145	bluetooth {
   1146		compatible = "brcm,bcm4330-bt";
   1147		pinctrl-0 = <&bt_shutdown &bt_device_wakeup &bt_host_wakeup>;
   1148		pinctrl-names = "default";
   1149
   1150		max-speed = <2000000>;
   1151		shutdown-gpios = <&gpl0 6 GPIO_ACTIVE_HIGH>;
   1152		device-wakeup-gpios = <&gpx3 1 GPIO_ACTIVE_HIGH>;
   1153		host-wakeup-gpios = <&gpx2 6 GPIO_ACTIVE_HIGH>;
   1154		clocks = <&max77686 MAX77686_CLK_PMIC>;
   1155		clock-names = "lpo";
   1156	};
   1157};
   1158
   1159&serial_2 {
   1160	pinctrl-0 = <&uart_sel>;
   1161	pinctrl-names = "default";
   1162	status = "okay";
   1163};
   1164
   1165&tmu {
   1166	status = "okay";
   1167};