162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0 262306a36Sopenharmony_ci/* 362306a36Sopenharmony_ci * Samsung's Exynos4210 based Galaxy S2 (GT-I9100 version) device tree 462306a36Sopenharmony_ci * 562306a36Sopenharmony_ci * Copyright (c) 2012 Samsung Electronics Co., Ltd. 662306a36Sopenharmony_ci * http://www.samsung.com 762306a36Sopenharmony_ci * Copyright (c) 2020 Stenkin Evgeniy <stenkinevgeniy@gmail.com> 862306a36Sopenharmony_ci * Copyright (c) 2020 Paul Cercueil <paul@crapouillou.net> 962306a36Sopenharmony_ci */ 1062306a36Sopenharmony_ci 1162306a36Sopenharmony_ci/dts-v1/; 1262306a36Sopenharmony_ci#include "exynos4210.dtsi" 1362306a36Sopenharmony_ci#include "exynos4412-ppmu-common.dtsi" 1462306a36Sopenharmony_ci 1562306a36Sopenharmony_ci#include <dt-bindings/gpio/gpio.h> 1662306a36Sopenharmony_ci#include <dt-bindings/input/linux-event-codes.h> 1762306a36Sopenharmony_ci 1862306a36Sopenharmony_ci/ { 1962306a36Sopenharmony_ci model = "Samsung Galaxy S2 (GT-I9100)"; 2062306a36Sopenharmony_ci compatible = "samsung,i9100", "samsung,exynos4210", "samsung,exynos4"; 2162306a36Sopenharmony_ci chassis-type = "handset"; 2262306a36Sopenharmony_ci 2362306a36Sopenharmony_ci memory@40000000 { 2462306a36Sopenharmony_ci device_type = "memory"; 2562306a36Sopenharmony_ci reg = <0x40000000 0x40000000>; 2662306a36Sopenharmony_ci }; 2762306a36Sopenharmony_ci 2862306a36Sopenharmony_ci aliases { 2962306a36Sopenharmony_ci mmc0 = &sdhci_0; 3062306a36Sopenharmony_ci mmc1 = &sdhci_2; 3162306a36Sopenharmony_ci mmc2 = &sdhci_3; 3262306a36Sopenharmony_ci }; 3362306a36Sopenharmony_ci 3462306a36Sopenharmony_ci chosen { 3562306a36Sopenharmony_ci stdout-path = "serial2:115200n8"; 3662306a36Sopenharmony_ci }; 3762306a36Sopenharmony_ci 3862306a36Sopenharmony_ci vemmc_reg: regulator-0 { 3962306a36Sopenharmony_ci compatible = "regulator-fixed"; 4062306a36Sopenharmony_ci regulator-name = "VMEM_VDD_2.8V"; 4162306a36Sopenharmony_ci regulator-min-microvolt = <2800000>; 4262306a36Sopenharmony_ci regulator-max-microvolt = <2800000>; 4362306a36Sopenharmony_ci gpio = <&gpk0 2 GPIO_ACTIVE_HIGH>; 4462306a36Sopenharmony_ci enable-active-high; 4562306a36Sopenharmony_ci }; 4662306a36Sopenharmony_ci 4762306a36Sopenharmony_ci tsp_reg: regulator-1 { 4862306a36Sopenharmony_ci compatible = "regulator-fixed"; 4962306a36Sopenharmony_ci regulator-name = "TSP_FIXED_VOLTAGES"; 5062306a36Sopenharmony_ci regulator-min-microvolt = <3300000>; 5162306a36Sopenharmony_ci regulator-max-microvolt = <3300000>; 5262306a36Sopenharmony_ci gpio = <&gpl0 3 GPIO_ACTIVE_HIGH>; 5362306a36Sopenharmony_ci startup-delay-us = <70000>; 5462306a36Sopenharmony_ci enable-active-high; 5562306a36Sopenharmony_ci regulator-boot-on; 5662306a36Sopenharmony_ci regulator-always-on; 5762306a36Sopenharmony_ci }; 5862306a36Sopenharmony_ci 5962306a36Sopenharmony_ci cam_af_28v_reg: regulator-2 { 6062306a36Sopenharmony_ci compatible = "regulator-fixed"; 6162306a36Sopenharmony_ci regulator-name = "8M_AF_2.8V_EN"; 6262306a36Sopenharmony_ci regulator-min-microvolt = <2800000>; 6362306a36Sopenharmony_ci regulator-max-microvolt = <2800000>; 6462306a36Sopenharmony_ci gpio = <&gpk1 1 GPIO_ACTIVE_HIGH>; 6562306a36Sopenharmony_ci enable-active-high; 6662306a36Sopenharmony_ci }; 6762306a36Sopenharmony_ci 6862306a36Sopenharmony_ci cam_io_en_reg: regulator-3 { 6962306a36Sopenharmony_ci compatible = "regulator-fixed"; 7062306a36Sopenharmony_ci regulator-name = "CAM_IO_EN"; 7162306a36Sopenharmony_ci regulator-min-microvolt = <2800000>; 7262306a36Sopenharmony_ci regulator-max-microvolt = <2800000>; 7362306a36Sopenharmony_ci gpio = <&gpe2 1 GPIO_ACTIVE_HIGH>; 7462306a36Sopenharmony_ci enable-active-high; 7562306a36Sopenharmony_ci }; 7662306a36Sopenharmony_ci 7762306a36Sopenharmony_ci cam_io_12v_reg: regulator-4 { 7862306a36Sopenharmony_ci compatible = "regulator-fixed"; 7962306a36Sopenharmony_ci regulator-name = "8M_1.2V_EN"; 8062306a36Sopenharmony_ci regulator-min-microvolt = <1200000>; 8162306a36Sopenharmony_ci regulator-max-microvolt = <1200000>; 8262306a36Sopenharmony_ci gpio = <&gpe2 5 GPIO_ACTIVE_HIGH>; 8362306a36Sopenharmony_ci enable-active-high; 8462306a36Sopenharmony_ci }; 8562306a36Sopenharmony_ci 8662306a36Sopenharmony_ci vt_core_15v_reg: regulator-5 { 8762306a36Sopenharmony_ci compatible = "regulator-fixed"; 8862306a36Sopenharmony_ci regulator-name = "VT_CORE_1.5V"; 8962306a36Sopenharmony_ci regulator-min-microvolt = <1500000>; 9062306a36Sopenharmony_ci regulator-max-microvolt = <1500000>; 9162306a36Sopenharmony_ci gpio = <&gpe2 2 GPIO_ACTIVE_HIGH>; 9262306a36Sopenharmony_ci enable-active-high; 9362306a36Sopenharmony_ci }; 9462306a36Sopenharmony_ci 9562306a36Sopenharmony_ci gpio-keys { 9662306a36Sopenharmony_ci compatible = "gpio-keys"; 9762306a36Sopenharmony_ci 9862306a36Sopenharmony_ci key-vol-down { 9962306a36Sopenharmony_ci gpios = <&gpx2 1 GPIO_ACTIVE_LOW>; 10062306a36Sopenharmony_ci linux,code = <KEY_VOLUMEDOWN>; 10162306a36Sopenharmony_ci label = "volume down"; 10262306a36Sopenharmony_ci debounce-interval = <10>; 10362306a36Sopenharmony_ci }; 10462306a36Sopenharmony_ci 10562306a36Sopenharmony_ci key-vol-up { 10662306a36Sopenharmony_ci gpios = <&gpx2 0 GPIO_ACTIVE_LOW>; 10762306a36Sopenharmony_ci linux,code = <KEY_VOLUMEUP>; 10862306a36Sopenharmony_ci label = "volume up"; 10962306a36Sopenharmony_ci debounce-interval = <10>; 11062306a36Sopenharmony_ci }; 11162306a36Sopenharmony_ci 11262306a36Sopenharmony_ci key-power { 11362306a36Sopenharmony_ci gpios = <&gpx2 7 GPIO_ACTIVE_LOW>; 11462306a36Sopenharmony_ci linux,code = <KEY_POWER>; 11562306a36Sopenharmony_ci label = "power"; 11662306a36Sopenharmony_ci debounce-interval = <10>; 11762306a36Sopenharmony_ci wakeup-source; 11862306a36Sopenharmony_ci }; 11962306a36Sopenharmony_ci 12062306a36Sopenharmony_ci key-ok { 12162306a36Sopenharmony_ci gpios = <&gpx3 5 GPIO_ACTIVE_LOW>; 12262306a36Sopenharmony_ci linux,code = <KEY_OK>; 12362306a36Sopenharmony_ci label = "ok"; 12462306a36Sopenharmony_ci debounce-interval = <10>; 12562306a36Sopenharmony_ci }; 12662306a36Sopenharmony_ci }; 12762306a36Sopenharmony_ci 12862306a36Sopenharmony_ci wlan_pwrseq: sdhci3-pwrseq { 12962306a36Sopenharmony_ci compatible = "mmc-pwrseq-simple"; 13062306a36Sopenharmony_ci reset-gpios = <&gpl1 2 GPIO_ACTIVE_LOW>; 13162306a36Sopenharmony_ci }; 13262306a36Sopenharmony_ci 13362306a36Sopenharmony_ci i2c_max17042_fuel: i2c-gpio-0 { 13462306a36Sopenharmony_ci compatible = "i2c-gpio"; 13562306a36Sopenharmony_ci #address-cells = <1>; 13662306a36Sopenharmony_ci #size-cells = <0>; 13762306a36Sopenharmony_ci 13862306a36Sopenharmony_ci sda-gpios = <&gpy4 0 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 13962306a36Sopenharmony_ci scl-gpios = <&gpy4 1 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 14062306a36Sopenharmony_ci i2c-gpio,delay-us = <5>; 14162306a36Sopenharmony_ci 14262306a36Sopenharmony_ci battery@36 { 14362306a36Sopenharmony_ci compatible = "maxim,max17042"; 14462306a36Sopenharmony_ci 14562306a36Sopenharmony_ci interrupt-parent = <&gpx2>; 14662306a36Sopenharmony_ci interrupts = <3 IRQ_TYPE_LEVEL_LOW>; 14762306a36Sopenharmony_ci 14862306a36Sopenharmony_ci pinctrl-0 = <&max17042_fuel_irq>; 14962306a36Sopenharmony_ci pinctrl-names = "default"; 15062306a36Sopenharmony_ci 15162306a36Sopenharmony_ci reg = <0x36>; 15262306a36Sopenharmony_ci maxim,over-heat-temp = <700>; 15362306a36Sopenharmony_ci maxim,over-volt = <4500>; 15462306a36Sopenharmony_ci }; 15562306a36Sopenharmony_ci }; 15662306a36Sopenharmony_ci 15762306a36Sopenharmony_ci i2c_s5k5baf: i2c-gpio-1 { 15862306a36Sopenharmony_ci compatible = "i2c-gpio"; 15962306a36Sopenharmony_ci #address-cells = <1>; 16062306a36Sopenharmony_ci #size-cells = <0>; 16162306a36Sopenharmony_ci 16262306a36Sopenharmony_ci sda-gpios = <&gpc1 0 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 16362306a36Sopenharmony_ci scl-gpios = <&gpc1 2 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 16462306a36Sopenharmony_ci i2c-gpio,delay-us = <2>; 16562306a36Sopenharmony_ci 16662306a36Sopenharmony_ci image-sensor@2d { 16762306a36Sopenharmony_ci compatible = "samsung,s5k5baf"; 16862306a36Sopenharmony_ci reg = <0x2d>; 16962306a36Sopenharmony_ci vdda-supply = <&cam_io_en_reg>; 17062306a36Sopenharmony_ci vddreg-supply = <&vt_core_15v_reg>; 17162306a36Sopenharmony_ci vddio-supply = <&vtcam_reg>; 17262306a36Sopenharmony_ci clocks = <&camera 0>; 17362306a36Sopenharmony_ci clock-names = "mclk"; 17462306a36Sopenharmony_ci stbyn-gpios = <&gpl2 0 GPIO_ACTIVE_LOW>; 17562306a36Sopenharmony_ci rstn-gpios = <&gpl2 1 GPIO_ACTIVE_LOW>; 17662306a36Sopenharmony_ci clock-frequency = <24000000>; 17762306a36Sopenharmony_ci 17862306a36Sopenharmony_ci port { 17962306a36Sopenharmony_ci s5k5bafx_ep: endpoint { 18062306a36Sopenharmony_ci remote-endpoint = <&csis1_ep>; 18162306a36Sopenharmony_ci data-lanes = <1>; 18262306a36Sopenharmony_ci }; 18362306a36Sopenharmony_ci }; 18462306a36Sopenharmony_ci }; 18562306a36Sopenharmony_ci }; 18662306a36Sopenharmony_ci 18762306a36Sopenharmony_ci spi-3 { 18862306a36Sopenharmony_ci compatible = "spi-gpio"; 18962306a36Sopenharmony_ci #address-cells = <1>; 19062306a36Sopenharmony_ci #size-cells = <0>; 19162306a36Sopenharmony_ci 19262306a36Sopenharmony_ci num-chipselects = <1>; 19362306a36Sopenharmony_ci cs-gpios = <&gpy4 3 GPIO_ACTIVE_LOW>; 19462306a36Sopenharmony_ci sck-gpios = <&gpy3 1 GPIO_ACTIVE_HIGH>; 19562306a36Sopenharmony_ci mosi-gpios = <&gpy3 3 GPIO_ACTIVE_HIGH>; 19662306a36Sopenharmony_ci 19762306a36Sopenharmony_ci lcd@0 { 19862306a36Sopenharmony_ci compatible = "samsung,ld9040"; 19962306a36Sopenharmony_ci reg = <0>; 20062306a36Sopenharmony_ci 20162306a36Sopenharmony_ci spi-max-frequency = <1200000>; 20262306a36Sopenharmony_ci 20362306a36Sopenharmony_ci vdd3-supply = <&vmipi_reg>; 20462306a36Sopenharmony_ci vci-supply = <&vcclcd_reg>; 20562306a36Sopenharmony_ci 20662306a36Sopenharmony_ci reset-gpios = <&gpy4 5 GPIO_ACTIVE_HIGH>; 20762306a36Sopenharmony_ci power-on-delay = <10>; 20862306a36Sopenharmony_ci reset-delay = <10>; 20962306a36Sopenharmony_ci 21062306a36Sopenharmony_ci panel-width-mm = <56>; 21162306a36Sopenharmony_ci panel-height-mm = <93>; 21262306a36Sopenharmony_ci 21362306a36Sopenharmony_ci display-timings { 21462306a36Sopenharmony_ci timing { 21562306a36Sopenharmony_ci clock-frequency = <23492370>; 21662306a36Sopenharmony_ci hactive = <480>; 21762306a36Sopenharmony_ci vactive = <800>; 21862306a36Sopenharmony_ci hback-porch = <16>; 21962306a36Sopenharmony_ci hfront-porch = <16>; 22062306a36Sopenharmony_ci vback-porch = <2>; 22162306a36Sopenharmony_ci vfront-porch = <28>; 22262306a36Sopenharmony_ci hsync-len = <2>; 22362306a36Sopenharmony_ci vsync-len = <1>; 22462306a36Sopenharmony_ci hsync-active = <0>; 22562306a36Sopenharmony_ci vsync-active = <0>; 22662306a36Sopenharmony_ci de-active = <0>; 22762306a36Sopenharmony_ci pixelclk-active = <0>; 22862306a36Sopenharmony_ci }; 22962306a36Sopenharmony_ci }; 23062306a36Sopenharmony_ci 23162306a36Sopenharmony_ci port { 23262306a36Sopenharmony_ci lcd_ep: endpoint { 23362306a36Sopenharmony_ci remote-endpoint = <&fimd_dpi_ep>; 23462306a36Sopenharmony_ci }; 23562306a36Sopenharmony_ci }; 23662306a36Sopenharmony_ci }; 23762306a36Sopenharmony_ci }; 23862306a36Sopenharmony_ci 23962306a36Sopenharmony_ci fixed-rate-clocks { 24062306a36Sopenharmony_ci xxti { 24162306a36Sopenharmony_ci compatible = "samsung,clock-xxti"; 24262306a36Sopenharmony_ci clock-frequency = <0>; 24362306a36Sopenharmony_ci }; 24462306a36Sopenharmony_ci 24562306a36Sopenharmony_ci xusbxti { 24662306a36Sopenharmony_ci compatible = "samsung,clock-xusbxti"; 24762306a36Sopenharmony_ci clock-frequency = <24000000>; 24862306a36Sopenharmony_ci }; 24962306a36Sopenharmony_ci 25062306a36Sopenharmony_ci pmic_ap_clk: pmic-ap-clk { 25162306a36Sopenharmony_ci /* Workaround for missing clock on max8997 PMIC */ 25262306a36Sopenharmony_ci compatible = "fixed-clock"; 25362306a36Sopenharmony_ci #clock-cells = <0>; 25462306a36Sopenharmony_ci clock-frequency = <32768>; 25562306a36Sopenharmony_ci }; 25662306a36Sopenharmony_ci }; 25762306a36Sopenharmony_ci}; 25862306a36Sopenharmony_ci 25962306a36Sopenharmony_ci&camera { 26062306a36Sopenharmony_ci pinctrl-0 = <&cam_port_a_clk_active>; 26162306a36Sopenharmony_ci pinctrl-names = "default"; 26262306a36Sopenharmony_ci status = "okay"; 26362306a36Sopenharmony_ci assigned-clocks = <&clock CLK_MOUT_CAM0>, <&clock CLK_MOUT_CAM1>; 26462306a36Sopenharmony_ci assigned-clock-parents = <&clock CLK_XUSBXTI>, <&clock CLK_XUSBXTI>; 26562306a36Sopenharmony_ci}; 26662306a36Sopenharmony_ci 26762306a36Sopenharmony_ci&csis_1 { 26862306a36Sopenharmony_ci status = "okay"; 26962306a36Sopenharmony_ci vddcore-supply = <&vusb_reg>; 27062306a36Sopenharmony_ci vddio-supply = <&vmipi_reg>; 27162306a36Sopenharmony_ci clock-frequency = <160000000>; 27262306a36Sopenharmony_ci #address-cells = <1>; 27362306a36Sopenharmony_ci #size-cells = <0>; 27462306a36Sopenharmony_ci 27562306a36Sopenharmony_ci port@4 { 27662306a36Sopenharmony_ci reg = <4>; 27762306a36Sopenharmony_ci csis1_ep: endpoint { 27862306a36Sopenharmony_ci remote-endpoint = <&s5k5bafx_ep>; 27962306a36Sopenharmony_ci data-lanes = <1>; 28062306a36Sopenharmony_ci samsung,csis-hs-settle = <6>; 28162306a36Sopenharmony_ci }; 28262306a36Sopenharmony_ci }; 28362306a36Sopenharmony_ci}; 28462306a36Sopenharmony_ci 28562306a36Sopenharmony_ci&cpu0 { 28662306a36Sopenharmony_ci cpu0-supply = <&varm_breg>; 28762306a36Sopenharmony_ci}; 28862306a36Sopenharmony_ci 28962306a36Sopenharmony_ci&cpu_thermal { 29062306a36Sopenharmony_ci cooling-maps { 29162306a36Sopenharmony_ci map0 { 29262306a36Sopenharmony_ci /* Corresponds to 800MHz */ 29362306a36Sopenharmony_ci cooling-device = <&cpu0 2 2>; 29462306a36Sopenharmony_ci }; 29562306a36Sopenharmony_ci map1 { 29662306a36Sopenharmony_ci /* Corresponds to 200MHz */ 29762306a36Sopenharmony_ci cooling-device = <&cpu0 4 4>; 29862306a36Sopenharmony_ci }; 29962306a36Sopenharmony_ci }; 30062306a36Sopenharmony_ci}; 30162306a36Sopenharmony_ci 30262306a36Sopenharmony_ci&ehci { 30362306a36Sopenharmony_ci status = "okay"; 30462306a36Sopenharmony_ci 30562306a36Sopenharmony_ci phys = <&exynos_usbphy 1>; 30662306a36Sopenharmony_ci phy-names = "host"; 30762306a36Sopenharmony_ci}; 30862306a36Sopenharmony_ci 30962306a36Sopenharmony_ci&exynos_usbphy { 31062306a36Sopenharmony_ci status = "okay"; 31162306a36Sopenharmony_ci 31262306a36Sopenharmony_ci vbus-supply = <&safe1_sreg>; 31362306a36Sopenharmony_ci}; 31462306a36Sopenharmony_ci 31562306a36Sopenharmony_ci&fimc_0 { 31662306a36Sopenharmony_ci status = "okay"; 31762306a36Sopenharmony_ci 31862306a36Sopenharmony_ci assigned-clocks = <&clock CLK_MOUT_FIMC0>, <&clock CLK_SCLK_FIMC0>; 31962306a36Sopenharmony_ci assigned-clock-parents = <&clock CLK_SCLK_MPLL>; 32062306a36Sopenharmony_ci assigned-clock-rates = <0>, <160000000>; 32162306a36Sopenharmony_ci}; 32262306a36Sopenharmony_ci 32362306a36Sopenharmony_ci&fimc_1 { 32462306a36Sopenharmony_ci /* Back camera not implemented */ 32562306a36Sopenharmony_ci status = "disabled"; 32662306a36Sopenharmony_ci 32762306a36Sopenharmony_ci assigned-clocks = <&clock CLK_MOUT_FIMC1>, <&clock CLK_SCLK_FIMC1>; 32862306a36Sopenharmony_ci assigned-clock-parents = <&clock CLK_SCLK_MPLL>; 32962306a36Sopenharmony_ci assigned-clock-rates = <0>, <160000000>; 33062306a36Sopenharmony_ci}; 33162306a36Sopenharmony_ci 33262306a36Sopenharmony_ci&fimc_2 { 33362306a36Sopenharmony_ci status = "okay"; 33462306a36Sopenharmony_ci 33562306a36Sopenharmony_ci assigned-clocks = <&clock CLK_MOUT_FIMC2>, <&clock CLK_SCLK_FIMC2>; 33662306a36Sopenharmony_ci assigned-clock-parents = <&clock CLK_SCLK_MPLL>; 33762306a36Sopenharmony_ci assigned-clock-rates = <0>, <160000000>; 33862306a36Sopenharmony_ci}; 33962306a36Sopenharmony_ci 34062306a36Sopenharmony_ci&fimc_3 { 34162306a36Sopenharmony_ci /* Back camera not implemented */ 34262306a36Sopenharmony_ci status = "disabled"; 34362306a36Sopenharmony_ci 34462306a36Sopenharmony_ci assigned-clocks = <&clock CLK_MOUT_FIMC3>, <&clock CLK_SCLK_FIMC3>; 34562306a36Sopenharmony_ci assigned-clock-parents = <&clock CLK_SCLK_MPLL>; 34662306a36Sopenharmony_ci assigned-clock-rates = <0>, <160000000>; 34762306a36Sopenharmony_ci}; 34862306a36Sopenharmony_ci 34962306a36Sopenharmony_ci&fimd { 35062306a36Sopenharmony_ci status = "okay"; 35162306a36Sopenharmony_ci #address-cells = <1>; 35262306a36Sopenharmony_ci #size-cells = <0>; 35362306a36Sopenharmony_ci 35462306a36Sopenharmony_ci samsung,invert-vden; 35562306a36Sopenharmony_ci samsung,invert-vclk; 35662306a36Sopenharmony_ci 35762306a36Sopenharmony_ci pinctrl-0 = <&lcd_clk>, <&lcd_data24>; 35862306a36Sopenharmony_ci pinctrl-names = "default"; 35962306a36Sopenharmony_ci 36062306a36Sopenharmony_ci port@3 { 36162306a36Sopenharmony_ci reg = <3>; 36262306a36Sopenharmony_ci 36362306a36Sopenharmony_ci fimd_dpi_ep: endpoint { 36462306a36Sopenharmony_ci remote-endpoint = <&lcd_ep>; 36562306a36Sopenharmony_ci }; 36662306a36Sopenharmony_ci }; 36762306a36Sopenharmony_ci}; 36862306a36Sopenharmony_ci 36962306a36Sopenharmony_ci&gpu { 37062306a36Sopenharmony_ci status = "okay"; 37162306a36Sopenharmony_ci 37262306a36Sopenharmony_ci mali-supply = <&vg3d_breg>; 37362306a36Sopenharmony_ci}; 37462306a36Sopenharmony_ci 37562306a36Sopenharmony_ci&hsotg { 37662306a36Sopenharmony_ci status = "okay"; 37762306a36Sopenharmony_ci 37862306a36Sopenharmony_ci dr_mode = "otg"; 37962306a36Sopenharmony_ci vusb_d-supply = <&vusb_reg>; 38062306a36Sopenharmony_ci vusb_a-supply = <&vusbdac_reg>; 38162306a36Sopenharmony_ci}; 38262306a36Sopenharmony_ci 38362306a36Sopenharmony_ci&i2c_3 { 38462306a36Sopenharmony_ci status = "okay"; 38562306a36Sopenharmony_ci 38662306a36Sopenharmony_ci samsung,i2c-sda-delay = <100>; 38762306a36Sopenharmony_ci samsung,i2c-slave-addr = <0x10>; 38862306a36Sopenharmony_ci samsung,i2c-max-bus-freq = <100000>; 38962306a36Sopenharmony_ci 39062306a36Sopenharmony_ci pinctrl-0 = <&i2c3_bus>; 39162306a36Sopenharmony_ci pinctrl-names = "default"; 39262306a36Sopenharmony_ci 39362306a36Sopenharmony_ci touchscreen@4a { 39462306a36Sopenharmony_ci compatible = "atmel,maxtouch"; 39562306a36Sopenharmony_ci reg = <0x4a>; 39662306a36Sopenharmony_ci 39762306a36Sopenharmony_ci interrupt-parent = <&gpx0>; 39862306a36Sopenharmony_ci interrupts = <4 IRQ_TYPE_EDGE_FALLING>; 39962306a36Sopenharmony_ci }; 40062306a36Sopenharmony_ci}; 40162306a36Sopenharmony_ci 40262306a36Sopenharmony_ci&i2c_5 { 40362306a36Sopenharmony_ci status = "okay"; 40462306a36Sopenharmony_ci 40562306a36Sopenharmony_ci samsung,i2c-sda-delay = <100>; 40662306a36Sopenharmony_ci samsung,i2c-slave-addr = <0x10>; 40762306a36Sopenharmony_ci samsung,i2c-max-bus-freq = <100000>; 40862306a36Sopenharmony_ci 40962306a36Sopenharmony_ci pinctrl-0 = <&i2c5_bus>; 41062306a36Sopenharmony_ci pinctrl-names = "default"; 41162306a36Sopenharmony_ci 41262306a36Sopenharmony_ci pmic@66 { 41362306a36Sopenharmony_ci compatible = "maxim,max8997-pmic"; 41462306a36Sopenharmony_ci reg = <0x66>; 41562306a36Sopenharmony_ci 41662306a36Sopenharmony_ci interrupts-extended = <&gpx0 7 IRQ_TYPE_NONE>, 41762306a36Sopenharmony_ci <&gpx2 3 IRQ_TYPE_EDGE_FALLING>; 41862306a36Sopenharmony_ci 41962306a36Sopenharmony_ci max8997,pmic-buck1-uses-gpio-dvs; 42062306a36Sopenharmony_ci max8997,pmic-buck2-uses-gpio-dvs; 42162306a36Sopenharmony_ci max8997,pmic-buck5-uses-gpio-dvs; 42262306a36Sopenharmony_ci 42362306a36Sopenharmony_ci max8997,pmic-ignore-gpiodvs-side-effect; 42462306a36Sopenharmony_ci max8997,pmic-buck125-default-dvs-idx = <0>; 42562306a36Sopenharmony_ci 42662306a36Sopenharmony_ci max8997,pmic-buck125-dvs-gpios = <&gpx0 5 GPIO_ACTIVE_HIGH>, 42762306a36Sopenharmony_ci <&gpx0 6 GPIO_ACTIVE_HIGH>, 42862306a36Sopenharmony_ci <&gpl0 0 GPIO_ACTIVE_HIGH>; 42962306a36Sopenharmony_ci 43062306a36Sopenharmony_ci max8997,pmic-buck1-dvs-voltage = <1350000>, <1300000>, 43162306a36Sopenharmony_ci <1250000>, <1200000>, 43262306a36Sopenharmony_ci <1150000>, <1100000>, 43362306a36Sopenharmony_ci <1000000>, <950000>; 43462306a36Sopenharmony_ci 43562306a36Sopenharmony_ci max8997,pmic-buck2-dvs-voltage = <1100000>, <1000000>, 43662306a36Sopenharmony_ci <950000>, <900000>, 43762306a36Sopenharmony_ci <1100000>, <1000000>, 43862306a36Sopenharmony_ci <950000>, <900000>; 43962306a36Sopenharmony_ci 44062306a36Sopenharmony_ci max8997,pmic-buck5-dvs-voltage = <1200000>, <1200000>, 44162306a36Sopenharmony_ci <1200000>, <1200000>, 44262306a36Sopenharmony_ci <1200000>, <1200000>, 44362306a36Sopenharmony_ci <1200000>, <1200000>; 44462306a36Sopenharmony_ci 44562306a36Sopenharmony_ci pinctrl-0 = <&max8997_irq>, <&otg_gp>, <&usb_sel>; 44662306a36Sopenharmony_ci pinctrl-names = "default"; 44762306a36Sopenharmony_ci 44862306a36Sopenharmony_ci charger-supply = <&charger_reg>; 44962306a36Sopenharmony_ci 45062306a36Sopenharmony_ci regulators { 45162306a36Sopenharmony_ci vadc_reg: LDO1 { 45262306a36Sopenharmony_ci regulator-name = "VADC_3.3V_C210"; 45362306a36Sopenharmony_ci regulator-min-microvolt = <3300000>; 45462306a36Sopenharmony_ci regulator-max-microvolt = <3300000>; 45562306a36Sopenharmony_ci regulator-always-on; 45662306a36Sopenharmony_ci 45762306a36Sopenharmony_ci }; 45862306a36Sopenharmony_ci valive_reg: LDO2 { 45962306a36Sopenharmony_ci regulator-name = "VALIVE_1.1V_C210"; 46062306a36Sopenharmony_ci regulator-min-microvolt = <1100000>; 46162306a36Sopenharmony_ci regulator-max-microvolt = <1100000>; 46262306a36Sopenharmony_ci regulator-always-on; 46362306a36Sopenharmony_ci 46462306a36Sopenharmony_ci }; 46562306a36Sopenharmony_ci 46662306a36Sopenharmony_ci vusb_reg: LDO3 { 46762306a36Sopenharmony_ci regulator-name = "VUSB_1.1V_C210"; 46862306a36Sopenharmony_ci regulator-min-microvolt = <1100000>; 46962306a36Sopenharmony_ci regulator-max-microvolt = <1100000>; 47062306a36Sopenharmony_ci }; 47162306a36Sopenharmony_ci 47262306a36Sopenharmony_ci vmipi_reg: LDO4 { 47362306a36Sopenharmony_ci regulator-name = "VMIPI_1.8V"; 47462306a36Sopenharmony_ci regulator-min-microvolt = <1800000>; 47562306a36Sopenharmony_ci regulator-max-microvolt = <1800000>; 47662306a36Sopenharmony_ci regulator-always-on; 47762306a36Sopenharmony_ci }; 47862306a36Sopenharmony_ci 47962306a36Sopenharmony_ci vhsic_reg: LDO5 { 48062306a36Sopenharmony_ci regulator-name = "VHSIC_1.2V"; 48162306a36Sopenharmony_ci regulator-min-microvolt = <1200000>; 48262306a36Sopenharmony_ci regulator-max-microvolt = <1200000>; 48362306a36Sopenharmony_ci regulator-always-on; 48462306a36Sopenharmony_ci }; 48562306a36Sopenharmony_ci 48662306a36Sopenharmony_ci vpda_reg: LDO6 { 48762306a36Sopenharmony_ci regulator-name = "VCC_1.8V_PDA"; 48862306a36Sopenharmony_ci regulator-min-microvolt = <1800000>; 48962306a36Sopenharmony_ci regulator-max-microvolt = <1800000>; 49062306a36Sopenharmony_ci regulator-always-on; 49162306a36Sopenharmony_ci }; 49262306a36Sopenharmony_ci 49362306a36Sopenharmony_ci vcam_reg: LDO7 { 49462306a36Sopenharmony_ci regulator-name = "CAM_ISP_1.8V"; 49562306a36Sopenharmony_ci regulator-min-microvolt = <1800000>; 49662306a36Sopenharmony_ci regulator-max-microvolt = <1800000>; 49762306a36Sopenharmony_ci }; 49862306a36Sopenharmony_ci 49962306a36Sopenharmony_ci vusbdac_reg: LDO8 { 50062306a36Sopenharmony_ci regulator-name = "VUSB+VDAC_3.3V_C210"; 50162306a36Sopenharmony_ci regulator-min-microvolt = <3300000>; 50262306a36Sopenharmony_ci regulator-max-microvolt = <3300000>; 50362306a36Sopenharmony_ci }; 50462306a36Sopenharmony_ci 50562306a36Sopenharmony_ci vccpda_reg: LDO9 { 50662306a36Sopenharmony_ci regulator-name = "VCC_2.8V_PDA"; 50762306a36Sopenharmony_ci regulator-min-microvolt = <2800000>; 50862306a36Sopenharmony_ci regulator-max-microvolt = <2800000>; 50962306a36Sopenharmony_ci regulator-always-on; 51062306a36Sopenharmony_ci }; 51162306a36Sopenharmony_ci 51262306a36Sopenharmony_ci vtouch_reg: LDO11 { 51362306a36Sopenharmony_ci regulator-name = "TOUCH_2.8V"; 51462306a36Sopenharmony_ci regulator-min-microvolt = <2800000>; 51562306a36Sopenharmony_ci regulator-max-microvolt = <2800000>; 51662306a36Sopenharmony_ci regulator-always-on; 51762306a36Sopenharmony_ci }; 51862306a36Sopenharmony_ci 51962306a36Sopenharmony_ci vpll_reg: LDO10 { 52062306a36Sopenharmony_ci regulator-name = "VPLL_1.1V"; 52162306a36Sopenharmony_ci regulator-min-microvolt = <1100000>; 52262306a36Sopenharmony_ci regulator-max-microvolt = <1100000>; 52362306a36Sopenharmony_ci regulator-always-on; 52462306a36Sopenharmony_ci }; 52562306a36Sopenharmony_ci 52662306a36Sopenharmony_ci vtcam_reg: LDO12 { 52762306a36Sopenharmony_ci regulator-name = "VT_CAM_1.8V"; 52862306a36Sopenharmony_ci regulator-min-microvolt = <1800000>; 52962306a36Sopenharmony_ci regulator-max-microvolt = <1800000>; 53062306a36Sopenharmony_ci 53162306a36Sopenharmony_ci /* 53262306a36Sopenharmony_ci * Force-enable this regulator; otherwise the 53362306a36Sopenharmony_ci * kernel hangs very early in the boot process 53462306a36Sopenharmony_ci * for about 12 seconds, without apparent 53562306a36Sopenharmony_ci * reason. 53662306a36Sopenharmony_ci */ 53762306a36Sopenharmony_ci regulator-always-on; 53862306a36Sopenharmony_ci }; 53962306a36Sopenharmony_ci 54062306a36Sopenharmony_ci vcclcd_reg: LDO13 { 54162306a36Sopenharmony_ci regulator-name = "VCC_3.0V_LCD"; 54262306a36Sopenharmony_ci regulator-min-microvolt = <3000000>; 54362306a36Sopenharmony_ci regulator-max-microvolt = <3000000>; 54462306a36Sopenharmony_ci }; 54562306a36Sopenharmony_ci 54662306a36Sopenharmony_ci vmotor_reg: LDO14 { 54762306a36Sopenharmony_ci regulator-name = "VCC_2.8V_MOTOR"; 54862306a36Sopenharmony_ci regulator-min-microvolt = <2800000>; 54962306a36Sopenharmony_ci regulator-max-microvolt = <2800000>; 55062306a36Sopenharmony_ci }; 55162306a36Sopenharmony_ci 55262306a36Sopenharmony_ci vled_reg: LDO15 { 55362306a36Sopenharmony_ci regulator-name = "LED_A_2.8V"; 55462306a36Sopenharmony_ci regulator-min-microvolt = <2800000>; 55562306a36Sopenharmony_ci regulator-max-microvolt = <2800000>; 55662306a36Sopenharmony_ci }; 55762306a36Sopenharmony_ci 55862306a36Sopenharmony_ci camsensor_reg: LDO16 { 55962306a36Sopenharmony_ci regulator-name = "CAM_SENSOR_IO_1.8V"; 56062306a36Sopenharmony_ci regulator-min-microvolt = <1800000>; 56162306a36Sopenharmony_ci regulator-max-microvolt = <1800000>; 56262306a36Sopenharmony_ci }; 56362306a36Sopenharmony_ci 56462306a36Sopenharmony_ci vtf_reg: LDO17 { 56562306a36Sopenharmony_ci regulator-name = "VTF_2.8V"; 56662306a36Sopenharmony_ci regulator-min-microvolt = <2800000>; 56762306a36Sopenharmony_ci regulator-max-microvolt = <2800000>; 56862306a36Sopenharmony_ci }; 56962306a36Sopenharmony_ci 57062306a36Sopenharmony_ci vtouchled_reg: LDO18 { 57162306a36Sopenharmony_ci regulator-name = "TOUCH_LED_3.3V"; 57262306a36Sopenharmony_ci regulator-min-microvolt = <2500000>; 57362306a36Sopenharmony_ci regulator-max-microvolt = <3300000>; 57462306a36Sopenharmony_ci }; 57562306a36Sopenharmony_ci 57662306a36Sopenharmony_ci vddq_reg: LDO21 { 57762306a36Sopenharmony_ci regulator-name = "VDDQ_M1M2_1.2V"; 57862306a36Sopenharmony_ci regulator-min-microvolt = <1200000>; 57962306a36Sopenharmony_ci regulator-max-microvolt = <1200000>; 58062306a36Sopenharmony_ci regulator-always-on; 58162306a36Sopenharmony_ci }; 58262306a36Sopenharmony_ci 58362306a36Sopenharmony_ci varm_breg: BUCK1 { 58462306a36Sopenharmony_ci regulator-name = "VARM_1.2V_C210"; 58562306a36Sopenharmony_ci regulator-min-microvolt = <65000>; 58662306a36Sopenharmony_ci regulator-max-microvolt = <2225000>; 58762306a36Sopenharmony_ci regulator-always-on; 58862306a36Sopenharmony_ci }; 58962306a36Sopenharmony_ci 59062306a36Sopenharmony_ci vint_breg: BUCK2 { 59162306a36Sopenharmony_ci regulator-name = "VINT_1.1V_C210"; 59262306a36Sopenharmony_ci regulator-min-microvolt = <65000>; 59362306a36Sopenharmony_ci regulator-max-microvolt = <2225000>; 59462306a36Sopenharmony_ci regulator-always-on; 59562306a36Sopenharmony_ci }; 59662306a36Sopenharmony_ci 59762306a36Sopenharmony_ci vg3d_breg: BUCK3 { 59862306a36Sopenharmony_ci regulator-name = "G3D_1.1V"; 59962306a36Sopenharmony_ci regulator-min-microvolt = <900000>; 60062306a36Sopenharmony_ci regulator-max-microvolt = <1200000>; 60162306a36Sopenharmony_ci regulator-microvolt-offset = <50000>; 60262306a36Sopenharmony_ci regulator-always-on; 60362306a36Sopenharmony_ci }; 60462306a36Sopenharmony_ci 60562306a36Sopenharmony_ci camisp_breg: BUCK4 { 60662306a36Sopenharmony_ci regulator-name = "CAM_ISP_CORE_1.2V"; 60762306a36Sopenharmony_ci regulator-min-microvolt = <1200000>; 60862306a36Sopenharmony_ci regulator-max-microvolt = <1200000>; 60962306a36Sopenharmony_ci }; 61062306a36Sopenharmony_ci 61162306a36Sopenharmony_ci vmem_breg: BUCK5 { 61262306a36Sopenharmony_ci regulator-name = "VMEM_1.2V"; 61362306a36Sopenharmony_ci regulator-min-microvolt = <1200000>; 61462306a36Sopenharmony_ci regulator-max-microvolt = <1200000>; 61562306a36Sopenharmony_ci regulator-always-on; 61662306a36Sopenharmony_ci }; 61762306a36Sopenharmony_ci 61862306a36Sopenharmony_ci vccsub_breg: BUCK7 { 61962306a36Sopenharmony_ci regulator-name = "VCC_SUB_2.0V"; 62062306a36Sopenharmony_ci regulator-min-microvolt = <2000000>; 62162306a36Sopenharmony_ci regulator-max-microvolt = <2000000>; 62262306a36Sopenharmony_ci regulator-always-on; 62362306a36Sopenharmony_ci }; 62462306a36Sopenharmony_ci 62562306a36Sopenharmony_ci safe1_sreg: ESAFEOUT1 { 62662306a36Sopenharmony_ci regulator-name = "SAFEOUT1"; 62762306a36Sopenharmony_ci }; 62862306a36Sopenharmony_ci 62962306a36Sopenharmony_ci safe2_sreg: ESAFEOUT2 { 63062306a36Sopenharmony_ci regulator-name = "SAFEOUT2"; 63162306a36Sopenharmony_ci regulator-boot-on; 63262306a36Sopenharmony_ci }; 63362306a36Sopenharmony_ci 63462306a36Sopenharmony_ci EN32KHZ_AP { 63562306a36Sopenharmony_ci regulator-name = "EN32KHZ_AP"; 63662306a36Sopenharmony_ci regulator-always-on; 63762306a36Sopenharmony_ci }; 63862306a36Sopenharmony_ci 63962306a36Sopenharmony_ci EN32KHZ_CP { 64062306a36Sopenharmony_ci regulator-name = "EN32KHZ_CP"; 64162306a36Sopenharmony_ci regulator-always-on; 64262306a36Sopenharmony_ci }; 64362306a36Sopenharmony_ci 64462306a36Sopenharmony_ci charger_reg: CHARGER { 64562306a36Sopenharmony_ci regulator-name = "CHARGER"; 64662306a36Sopenharmony_ci regulator-min-microamp = <200000>; 64762306a36Sopenharmony_ci regulator-max-microamp = <950000>; 64862306a36Sopenharmony_ci }; 64962306a36Sopenharmony_ci 65062306a36Sopenharmony_ci chargercv_reg: CHARGER_CV { 65162306a36Sopenharmony_ci regulator-name = "CHARGER_CV"; 65262306a36Sopenharmony_ci regulator-min-microvolt = <4200000>; 65362306a36Sopenharmony_ci regulator-max-microvolt = <4200000>; 65462306a36Sopenharmony_ci regulator-always-on; 65562306a36Sopenharmony_ci }; 65662306a36Sopenharmony_ci 65762306a36Sopenharmony_ci CHARGER_TOPOFF { 65862306a36Sopenharmony_ci regulator-name = "CHARGER_TOPOFF"; 65962306a36Sopenharmony_ci regulator-min-microamp = <200000>; 66062306a36Sopenharmony_ci regulator-max-microamp = <200000>; 66162306a36Sopenharmony_ci regulator-always-on; 66262306a36Sopenharmony_ci }; 66362306a36Sopenharmony_ci }; 66462306a36Sopenharmony_ci }; 66562306a36Sopenharmony_ci}; 66662306a36Sopenharmony_ci 66762306a36Sopenharmony_ci&i2c_7 { 66862306a36Sopenharmony_ci status = "okay"; 66962306a36Sopenharmony_ci 67062306a36Sopenharmony_ci samsung,i2c-sda-delay = <100>; 67162306a36Sopenharmony_ci samsung,i2c-slave-addr = <0x10>; 67262306a36Sopenharmony_ci samsung,i2c-max-bus-freq = <400000>; 67362306a36Sopenharmony_ci 67462306a36Sopenharmony_ci pinctrl-0 = <&i2c7_bus>; 67562306a36Sopenharmony_ci pinctrl-names = "default"; 67662306a36Sopenharmony_ci 67762306a36Sopenharmony_ci magnetometer@c { 67862306a36Sopenharmony_ci compatible = "asahi-kasei,ak8975"; 67962306a36Sopenharmony_ci reg = <0x0c>; 68062306a36Sopenharmony_ci 68162306a36Sopenharmony_ci gpios = <&gpx2 2 GPIO_ACTIVE_HIGH>; 68262306a36Sopenharmony_ci }; 68362306a36Sopenharmony_ci}; 68462306a36Sopenharmony_ci 68562306a36Sopenharmony_ci&pinctrl_0 { 68662306a36Sopenharmony_ci pinctrl-names = "default"; 68762306a36Sopenharmony_ci pinctrl-0 = <&sleep0>; 68862306a36Sopenharmony_ci 68962306a36Sopenharmony_ci sleep0: sleep-state { 69062306a36Sopenharmony_ci gpa0-0-pin { 69162306a36Sopenharmony_ci samsung,pins = "gpa0-0"; 69262306a36Sopenharmony_ci samsung,pin-con-pdn = <EXYNOS_PIN_PDN_INPUT>; 69362306a36Sopenharmony_ci samsung,pin-pud-pdn = <EXYNOS_PIN_PULL_NONE>; 69462306a36Sopenharmony_ci }; 69562306a36Sopenharmony_ci 69662306a36Sopenharmony_ci gpa0-1-pin { 69762306a36Sopenharmony_ci samsung,pins = "gpa0-1"; 69862306a36Sopenharmony_ci samsung,pin-con-pdn = <EXYNOS_PIN_PDN_OUT0>; 69962306a36Sopenharmony_ci samsung,pin-pud-pdn = <EXYNOS_PIN_PULL_NONE>; 70062306a36Sopenharmony_ci }; 70162306a36Sopenharmony_ci 70262306a36Sopenharmony_ci gpa0-2-pin { 70362306a36Sopenharmony_ci samsung,pins = "gpa0-2"; 70462306a36Sopenharmony_ci samsung,pin-con-pdn = <EXYNOS_PIN_PDN_INPUT>; 70562306a36Sopenharmony_ci samsung,pin-pud-pdn = <EXYNOS_PIN_PULL_NONE>; 70662306a36Sopenharmony_ci }; 70762306a36Sopenharmony_ci 70862306a36Sopenharmony_ci gpa0-3-pin { 70962306a36Sopenharmony_ci samsung,pins = "gpa0-3"; 71062306a36Sopenharmony_ci samsung,pin-con-pdn = <EXYNOS_PIN_PDN_OUT1>; 71162306a36Sopenharmony_ci samsung,pin-pud-pdn = <EXYNOS_PIN_PULL_NONE>; 71262306a36Sopenharmony_ci }; 71362306a36Sopenharmony_ci }; 71462306a36Sopenharmony_ci}; 71562306a36Sopenharmony_ci 71662306a36Sopenharmony_ci&pinctrl_1 { 71762306a36Sopenharmony_ci mhl_int: mhl-int-pins { 71862306a36Sopenharmony_ci samsung,pins = "gpf3-5"; 71962306a36Sopenharmony_ci samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 72062306a36Sopenharmony_ci }; 72162306a36Sopenharmony_ci 72262306a36Sopenharmony_ci i2c_mhl_bus: i2c-mhl-bus-pins { 72362306a36Sopenharmony_ci samsung,pins = "gpf0-4", "gpf0-6"; 72462306a36Sopenharmony_ci samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 72562306a36Sopenharmony_ci samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>; 72662306a36Sopenharmony_ci samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 72762306a36Sopenharmony_ci }; 72862306a36Sopenharmony_ci 72962306a36Sopenharmony_ci usb_sel: usb-sel-pins { 73062306a36Sopenharmony_ci samsung,pins = "gpl0-6"; 73162306a36Sopenharmony_ci samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>; 73262306a36Sopenharmony_ci samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 73362306a36Sopenharmony_ci samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 73462306a36Sopenharmony_ci samsung,pin-val = <0>; 73562306a36Sopenharmony_ci }; 73662306a36Sopenharmony_ci 73762306a36Sopenharmony_ci bt_en: bt-en-pins { 73862306a36Sopenharmony_ci samsung,pins = "gpl0-4"; 73962306a36Sopenharmony_ci samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>; 74062306a36Sopenharmony_ci samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 74162306a36Sopenharmony_ci samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>; 74262306a36Sopenharmony_ci samsung,pin-val = <0>; 74362306a36Sopenharmony_ci }; 74462306a36Sopenharmony_ci 74562306a36Sopenharmony_ci bt_res: bt-res-pins { 74662306a36Sopenharmony_ci samsung,pins = "gpl1-0"; 74762306a36Sopenharmony_ci samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>; 74862306a36Sopenharmony_ci samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 74962306a36Sopenharmony_ci samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>; 75062306a36Sopenharmony_ci samsung,pin-val = <0>; 75162306a36Sopenharmony_ci }; 75262306a36Sopenharmony_ci 75362306a36Sopenharmony_ci otg_gp: otg-gp-pins { 75462306a36Sopenharmony_ci samsung,pins = "gpx3-3"; 75562306a36Sopenharmony_ci samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>; 75662306a36Sopenharmony_ci samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 75762306a36Sopenharmony_ci samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 75862306a36Sopenharmony_ci samsung,pin-val = <0>; 75962306a36Sopenharmony_ci }; 76062306a36Sopenharmony_ci 76162306a36Sopenharmony_ci mag_mhl_gpio: mag-mhl-pins { 76262306a36Sopenharmony_ci samsung,pins = "gpd0-2"; 76362306a36Sopenharmony_ci samsung,pin-function = <EXYNOS_PIN_FUNC_3>; 76462306a36Sopenharmony_ci samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 76562306a36Sopenharmony_ci }; 76662306a36Sopenharmony_ci 76762306a36Sopenharmony_ci max8997_irq: max8997-irq-pins { 76862306a36Sopenharmony_ci samsung,pins = "gpx0-7"; 76962306a36Sopenharmony_ci samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 77062306a36Sopenharmony_ci }; 77162306a36Sopenharmony_ci 77262306a36Sopenharmony_ci max17042_fuel_irq: max17042-fuel-irq-pins { 77362306a36Sopenharmony_ci samsung,pins = "gpx2-3"; 77462306a36Sopenharmony_ci samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 77562306a36Sopenharmony_ci }; 77662306a36Sopenharmony_ci 77762306a36Sopenharmony_ci tsp224_irq: tsp224-irq-pins { 77862306a36Sopenharmony_ci samsung,pins = "gpx0-4"; 77962306a36Sopenharmony_ci samsung,pin-pud = <EXYNOS_PIN_PULL_UP>; 78062306a36Sopenharmony_ci }; 78162306a36Sopenharmony_ci}; 78262306a36Sopenharmony_ci 78362306a36Sopenharmony_ci&rtc { 78462306a36Sopenharmony_ci status = "okay"; 78562306a36Sopenharmony_ci clocks = <&clock CLK_RTC>, <&pmic_ap_clk>; 78662306a36Sopenharmony_ci clock-names = "rtc", "rtc_src"; 78762306a36Sopenharmony_ci}; 78862306a36Sopenharmony_ci 78962306a36Sopenharmony_ci&sdhci_0 { 79062306a36Sopenharmony_ci status = "okay"; 79162306a36Sopenharmony_ci 79262306a36Sopenharmony_ci bus-width = <8>; 79362306a36Sopenharmony_ci non-removable; 79462306a36Sopenharmony_ci vmmc-supply = <&vemmc_reg>; 79562306a36Sopenharmony_ci 79662306a36Sopenharmony_ci pinctrl-0 = <&sd0_clk>, <&sd0_cmd>, <&sd0_bus8>; 79762306a36Sopenharmony_ci pinctrl-names = "default"; 79862306a36Sopenharmony_ci}; 79962306a36Sopenharmony_ci 80062306a36Sopenharmony_ci&sdhci_2 { 80162306a36Sopenharmony_ci status = "okay"; 80262306a36Sopenharmony_ci 80362306a36Sopenharmony_ci bus-width = <4>; 80462306a36Sopenharmony_ci cd-gpios = <&gpx3 4 GPIO_ACTIVE_LOW>; 80562306a36Sopenharmony_ci vmmc-supply = <&vtf_reg>; 80662306a36Sopenharmony_ci 80762306a36Sopenharmony_ci pinctrl-0 = <&sd2_clk>, <&sd2_cmd>, <&sd2_bus4>; 80862306a36Sopenharmony_ci pinctrl-names = "default"; 80962306a36Sopenharmony_ci}; 81062306a36Sopenharmony_ci 81162306a36Sopenharmony_ci&sdhci_3 { 81262306a36Sopenharmony_ci status = "okay"; 81362306a36Sopenharmony_ci 81462306a36Sopenharmony_ci #address-cells = <1>; 81562306a36Sopenharmony_ci #size-cells = <0>; 81662306a36Sopenharmony_ci 81762306a36Sopenharmony_ci non-removable; 81862306a36Sopenharmony_ci bus-width = <4>; 81962306a36Sopenharmony_ci mmc-pwrseq = <&wlan_pwrseq>; 82062306a36Sopenharmony_ci vmmc-supply = <&vtf_reg>; 82162306a36Sopenharmony_ci 82262306a36Sopenharmony_ci pinctrl-names = "default"; 82362306a36Sopenharmony_ci pinctrl-0 = <&sd3_clk>, <&sd3_cmd>, <&sd3_bus4>; 82462306a36Sopenharmony_ci 82562306a36Sopenharmony_ci brcmf: wifi@1 { 82662306a36Sopenharmony_ci compatible = "brcm,bcm4330-fmac", "brcm,bcm4329-fmac"; 82762306a36Sopenharmony_ci reg = <1>; 82862306a36Sopenharmony_ci 82962306a36Sopenharmony_ci interrupt-parent = <&gpx2>; 83062306a36Sopenharmony_ci interrupts = <5 IRQ_TYPE_LEVEL_HIGH>; 83162306a36Sopenharmony_ci interrupt-names = "host-wake"; 83262306a36Sopenharmony_ci }; 83362306a36Sopenharmony_ci}; 83462306a36Sopenharmony_ci 83562306a36Sopenharmony_ci&serial_0 { 83662306a36Sopenharmony_ci status = "okay"; 83762306a36Sopenharmony_ci 83862306a36Sopenharmony_ci pinctrl-names = "default"; 83962306a36Sopenharmony_ci pinctrl-0 = <&bt_en>, <&bt_res>, <&uart0_data>, <&uart0_fctl>; 84062306a36Sopenharmony_ci 84162306a36Sopenharmony_ci bluetooth { 84262306a36Sopenharmony_ci compatible = "brcm,bcm4330-bt"; 84362306a36Sopenharmony_ci 84462306a36Sopenharmony_ci shutdown-gpios = <&gpl0 4 GPIO_ACTIVE_HIGH>; 84562306a36Sopenharmony_ci reset-gpios = <&gpl1 0 GPIO_ACTIVE_LOW>; 84662306a36Sopenharmony_ci device-wakeup-gpios = <&gpx3 1 GPIO_ACTIVE_HIGH>; 84762306a36Sopenharmony_ci 84862306a36Sopenharmony_ci interrupt-parent = <&gpx2>; 84962306a36Sopenharmony_ci interrupts = <6 IRQ_TYPE_EDGE_FALLING>; 85062306a36Sopenharmony_ci interrupt-names = "host-wakeup"; 85162306a36Sopenharmony_ci }; 85262306a36Sopenharmony_ci}; 85362306a36Sopenharmony_ci 85462306a36Sopenharmony_ci&serial_1 { 85562306a36Sopenharmony_ci status = "okay"; 85662306a36Sopenharmony_ci}; 85762306a36Sopenharmony_ci 85862306a36Sopenharmony_ci&serial_2 { 85962306a36Sopenharmony_ci status = "okay"; 86062306a36Sopenharmony_ci}; 86162306a36Sopenharmony_ci 86262306a36Sopenharmony_ci&serial_3 { 86362306a36Sopenharmony_ci status = "okay"; 86462306a36Sopenharmony_ci}; 86562306a36Sopenharmony_ci 86662306a36Sopenharmony_ci&tmu { 86762306a36Sopenharmony_ci status = "okay"; 86862306a36Sopenharmony_ci}; 869