1724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0 2724ba675SRob Herring/* 3724ba675SRob Herring * Samsung's Exynos4210 based Galaxy S2 (GT-I9100 version) device tree 4724ba675SRob Herring * 5724ba675SRob Herring * Copyright (c) 2012 Samsung Electronics Co., Ltd. 6724ba675SRob Herring * http://www.samsung.com 7724ba675SRob Herring * Copyright (c) 2020 Stenkin Evgeniy <stenkinevgeniy@gmail.com> 8724ba675SRob Herring * Copyright (c) 2020 Paul Cercueil <paul@crapouillou.net> 9724ba675SRob Herring */ 10724ba675SRob Herring 11724ba675SRob Herring/dts-v1/; 12724ba675SRob Herring#include "exynos4210.dtsi" 13724ba675SRob Herring#include "exynos4412-ppmu-common.dtsi" 14724ba675SRob Herring 15724ba675SRob Herring#include <dt-bindings/gpio/gpio.h> 16724ba675SRob Herring#include <dt-bindings/input/linux-event-codes.h> 17724ba675SRob Herring 18724ba675SRob Herring/ { 19724ba675SRob Herring model = "Samsung Galaxy S2 (GT-I9100)"; 20724ba675SRob Herring compatible = "samsung,i9100", "samsung,exynos4210", "samsung,exynos4"; 21724ba675SRob Herring chassis-type = "handset"; 22724ba675SRob Herring 23724ba675SRob Herring memory@40000000 { 24724ba675SRob Herring device_type = "memory"; 25724ba675SRob Herring reg = <0x40000000 0x40000000>; 26724ba675SRob Herring }; 27724ba675SRob Herring 28724ba675SRob Herring aliases { 29724ba675SRob Herring mmc0 = &sdhci_0; 30724ba675SRob Herring mmc1 = &sdhci_2; 31724ba675SRob Herring mmc2 = &sdhci_3; 32724ba675SRob Herring }; 33724ba675SRob Herring 34724ba675SRob Herring chosen { 35724ba675SRob Herring stdout-path = "serial2:115200n8"; 36724ba675SRob Herring }; 37724ba675SRob Herring 38724ba675SRob Herring vemmc_reg: regulator-0 { 39724ba675SRob Herring compatible = "regulator-fixed"; 40724ba675SRob Herring regulator-name = "VMEM_VDD_2.8V"; 41724ba675SRob Herring regulator-min-microvolt = <2800000>; 42724ba675SRob Herring regulator-max-microvolt = <2800000>; 43724ba675SRob Herring gpio = <&gpk0 2 GPIO_ACTIVE_HIGH>; 44724ba675SRob Herring enable-active-high; 45724ba675SRob Herring }; 46724ba675SRob Herring 47724ba675SRob Herring tsp_reg: regulator-1 { 48724ba675SRob Herring compatible = "regulator-fixed"; 49724ba675SRob Herring regulator-name = "TSP_FIXED_VOLTAGES"; 50724ba675SRob Herring regulator-min-microvolt = <3300000>; 51724ba675SRob Herring regulator-max-microvolt = <3300000>; 52724ba675SRob Herring gpio = <&gpl0 3 GPIO_ACTIVE_HIGH>; 53724ba675SRob Herring startup-delay-us = <70000>; 54724ba675SRob Herring enable-active-high; 55724ba675SRob Herring regulator-boot-on; 56724ba675SRob Herring regulator-always-on; 57724ba675SRob Herring }; 58724ba675SRob Herring 59724ba675SRob Herring cam_af_28v_reg: regulator-2 { 60724ba675SRob Herring compatible = "regulator-fixed"; 61724ba675SRob Herring regulator-name = "8M_AF_2.8V_EN"; 62724ba675SRob Herring regulator-min-microvolt = <2800000>; 63724ba675SRob Herring regulator-max-microvolt = <2800000>; 64724ba675SRob Herring gpio = <&gpk1 1 GPIO_ACTIVE_HIGH>; 65724ba675SRob Herring enable-active-high; 66724ba675SRob Herring }; 67724ba675SRob Herring 68724ba675SRob Herring cam_io_en_reg: regulator-3 { 69724ba675SRob Herring compatible = "regulator-fixed"; 70724ba675SRob Herring regulator-name = "CAM_IO_EN"; 71724ba675SRob Herring regulator-min-microvolt = <2800000>; 72724ba675SRob Herring regulator-max-microvolt = <2800000>; 73724ba675SRob Herring gpio = <&gpe2 1 GPIO_ACTIVE_HIGH>; 74724ba675SRob Herring enable-active-high; 75724ba675SRob Herring }; 76724ba675SRob Herring 77724ba675SRob Herring cam_io_12v_reg: regulator-4 { 78724ba675SRob Herring compatible = "regulator-fixed"; 79724ba675SRob Herring regulator-name = "8M_1.2V_EN"; 80724ba675SRob Herring regulator-min-microvolt = <1200000>; 81724ba675SRob Herring regulator-max-microvolt = <1200000>; 82724ba675SRob Herring gpio = <&gpe2 5 GPIO_ACTIVE_HIGH>; 83724ba675SRob Herring enable-active-high; 84724ba675SRob Herring }; 85724ba675SRob Herring 86724ba675SRob Herring vt_core_15v_reg: regulator-5 { 87724ba675SRob Herring compatible = "regulator-fixed"; 88724ba675SRob Herring regulator-name = "VT_CORE_1.5V"; 89724ba675SRob Herring regulator-min-microvolt = <1500000>; 90724ba675SRob Herring regulator-max-microvolt = <1500000>; 91724ba675SRob Herring gpio = <&gpe2 2 GPIO_ACTIVE_HIGH>; 92724ba675SRob Herring enable-active-high; 93724ba675SRob Herring }; 94724ba675SRob Herring 95724ba675SRob Herring gpio-keys { 96724ba675SRob Herring compatible = "gpio-keys"; 97724ba675SRob Herring 98724ba675SRob Herring key-vol-down { 99724ba675SRob Herring gpios = <&gpx2 1 GPIO_ACTIVE_LOW>; 100724ba675SRob Herring linux,code = <KEY_VOLUMEDOWN>; 101724ba675SRob Herring label = "volume down"; 102724ba675SRob Herring debounce-interval = <10>; 103724ba675SRob Herring }; 104724ba675SRob Herring 105724ba675SRob Herring key-vol-up { 106724ba675SRob Herring gpios = <&gpx2 0 GPIO_ACTIVE_LOW>; 107724ba675SRob Herring linux,code = <KEY_VOLUMEUP>; 108724ba675SRob Herring label = "volume up"; 109724ba675SRob Herring debounce-interval = <10>; 110724ba675SRob Herring }; 111724ba675SRob Herring 112724ba675SRob Herring key-power { 113724ba675SRob Herring gpios = <&gpx2 7 GPIO_ACTIVE_LOW>; 114724ba675SRob Herring linux,code = <KEY_POWER>; 115724ba675SRob Herring label = "power"; 116724ba675SRob Herring debounce-interval = <10>; 117724ba675SRob Herring wakeup-source; 118724ba675SRob Herring }; 119724ba675SRob Herring 120724ba675SRob Herring key-ok { 121724ba675SRob Herring gpios = <&gpx3 5 GPIO_ACTIVE_LOW>; 122724ba675SRob Herring linux,code = <KEY_OK>; 123724ba675SRob Herring label = "ok"; 124724ba675SRob Herring debounce-interval = <10>; 125724ba675SRob Herring }; 126724ba675SRob Herring }; 127724ba675SRob Herring 128724ba675SRob Herring wlan_pwrseq: sdhci3-pwrseq { 129724ba675SRob Herring compatible = "mmc-pwrseq-simple"; 130724ba675SRob Herring reset-gpios = <&gpl1 2 GPIO_ACTIVE_LOW>; 131724ba675SRob Herring }; 132724ba675SRob Herring 133724ba675SRob Herring i2c_max17042_fuel: i2c-gpio-0 { 134724ba675SRob Herring compatible = "i2c-gpio"; 135724ba675SRob Herring #address-cells = <1>; 136724ba675SRob Herring #size-cells = <0>; 137724ba675SRob Herring 138724ba675SRob Herring sda-gpios = <&gpy4 0 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 139724ba675SRob Herring scl-gpios = <&gpy4 1 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 140724ba675SRob Herring i2c-gpio,delay-us = <5>; 141724ba675SRob Herring 142724ba675SRob Herring battery@36 { 143724ba675SRob Herring compatible = "maxim,max17042"; 144724ba675SRob Herring 145724ba675SRob Herring interrupt-parent = <&gpx2>; 146724ba675SRob Herring interrupts = <3 IRQ_TYPE_LEVEL_LOW>; 147724ba675SRob Herring 148724ba675SRob Herring pinctrl-0 = <&max17042_fuel_irq>; 149724ba675SRob Herring pinctrl-names = "default"; 150724ba675SRob Herring 151724ba675SRob Herring reg = <0x36>; 152724ba675SRob Herring maxim,over-heat-temp = <700>; 153724ba675SRob Herring maxim,over-volt = <4500>; 154724ba675SRob Herring }; 155724ba675SRob Herring }; 156724ba675SRob Herring 157724ba675SRob Herring i2c_s5k5baf: i2c-gpio-1 { 158724ba675SRob Herring compatible = "i2c-gpio"; 159724ba675SRob Herring #address-cells = <1>; 160724ba675SRob Herring #size-cells = <0>; 161724ba675SRob Herring 162724ba675SRob Herring sda-gpios = <&gpc1 0 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 163724ba675SRob Herring scl-gpios = <&gpc1 2 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 164724ba675SRob Herring i2c-gpio,delay-us = <2>; 165724ba675SRob Herring 166724ba675SRob Herring image-sensor@2d { 167724ba675SRob Herring compatible = "samsung,s5k5baf"; 168724ba675SRob Herring reg = <0x2d>; 169724ba675SRob Herring vdda-supply = <&cam_io_en_reg>; 170724ba675SRob Herring vddreg-supply = <&vt_core_15v_reg>; 171724ba675SRob Herring vddio-supply = <&vtcam_reg>; 172724ba675SRob Herring clocks = <&camera 0>; 173724ba675SRob Herring clock-names = "mclk"; 174724ba675SRob Herring stbyn-gpios = <&gpl2 0 GPIO_ACTIVE_LOW>; 175724ba675SRob Herring rstn-gpios = <&gpl2 1 GPIO_ACTIVE_LOW>; 176724ba675SRob Herring clock-frequency = <24000000>; 177724ba675SRob Herring 178724ba675SRob Herring port { 179724ba675SRob Herring s5k5bafx_ep: endpoint { 180724ba675SRob Herring remote-endpoint = <&csis1_ep>; 181724ba675SRob Herring data-lanes = <1>; 182724ba675SRob Herring }; 183724ba675SRob Herring }; 184724ba675SRob Herring }; 185724ba675SRob Herring }; 186724ba675SRob Herring 187724ba675SRob Herring spi-3 { 188724ba675SRob Herring compatible = "spi-gpio"; 189724ba675SRob Herring #address-cells = <1>; 190724ba675SRob Herring #size-cells = <0>; 191724ba675SRob Herring 192724ba675SRob Herring num-chipselects = <1>; 193724ba675SRob Herring cs-gpios = <&gpy4 3 GPIO_ACTIVE_LOW>; 194724ba675SRob Herring sck-gpios = <&gpy3 1 GPIO_ACTIVE_HIGH>; 195724ba675SRob Herring mosi-gpios = <&gpy3 3 GPIO_ACTIVE_HIGH>; 196724ba675SRob Herring 197724ba675SRob Herring lcd@0 { 198724ba675SRob Herring compatible = "samsung,ld9040"; 199724ba675SRob Herring reg = <0>; 200724ba675SRob Herring 201724ba675SRob Herring spi-max-frequency = <1200000>; 202724ba675SRob Herring 203724ba675SRob Herring vdd3-supply = <&vmipi_reg>; 204724ba675SRob Herring vci-supply = <&vcclcd_reg>; 205724ba675SRob Herring 206724ba675SRob Herring reset-gpios = <&gpy4 5 GPIO_ACTIVE_HIGH>; 207724ba675SRob Herring power-on-delay = <10>; 208724ba675SRob Herring reset-delay = <10>; 209724ba675SRob Herring 210*b3f3fc32SPaul Cercueil panel-width-mm = <56>; 211*b3f3fc32SPaul Cercueil panel-height-mm = <93>; 212724ba675SRob Herring 213724ba675SRob Herring display-timings { 214724ba675SRob Herring timing { 215724ba675SRob Herring clock-frequency = <23492370>; 216724ba675SRob Herring hactive = <480>; 217724ba675SRob Herring vactive = <800>; 218724ba675SRob Herring hback-porch = <16>; 219724ba675SRob Herring hfront-porch = <16>; 220724ba675SRob Herring vback-porch = <2>; 221724ba675SRob Herring vfront-porch = <28>; 222724ba675SRob Herring hsync-len = <2>; 223724ba675SRob Herring vsync-len = <1>; 224724ba675SRob Herring hsync-active = <0>; 225724ba675SRob Herring vsync-active = <0>; 226724ba675SRob Herring de-active = <0>; 227724ba675SRob Herring pixelclk-active = <0>; 228724ba675SRob Herring }; 229724ba675SRob Herring }; 230724ba675SRob Herring 231724ba675SRob Herring port { 232724ba675SRob Herring lcd_ep: endpoint { 233724ba675SRob Herring remote-endpoint = <&fimd_dpi_ep>; 234724ba675SRob Herring }; 235724ba675SRob Herring }; 236724ba675SRob Herring }; 237724ba675SRob Herring }; 238724ba675SRob Herring 239724ba675SRob Herring fixed-rate-clocks { 240724ba675SRob Herring xxti { 241724ba675SRob Herring compatible = "samsung,clock-xxti"; 242724ba675SRob Herring clock-frequency = <0>; 243724ba675SRob Herring }; 244724ba675SRob Herring 245724ba675SRob Herring xusbxti { 246724ba675SRob Herring compatible = "samsung,clock-xusbxti"; 247724ba675SRob Herring clock-frequency = <24000000>; 248724ba675SRob Herring }; 249724ba675SRob Herring 250724ba675SRob Herring pmic_ap_clk: pmic-ap-clk { 251724ba675SRob Herring /* Workaround for missing clock on max8997 PMIC */ 252724ba675SRob Herring compatible = "fixed-clock"; 253724ba675SRob Herring #clock-cells = <0>; 254724ba675SRob Herring clock-frequency = <32768>; 255724ba675SRob Herring }; 256724ba675SRob Herring }; 257724ba675SRob Herring}; 258724ba675SRob Herring 259724ba675SRob Herring&camera { 260724ba675SRob Herring pinctrl-0 = <&cam_port_a_clk_active>; 261724ba675SRob Herring pinctrl-names = "default"; 262724ba675SRob Herring status = "okay"; 263724ba675SRob Herring assigned-clocks = <&clock CLK_MOUT_CAM0>, <&clock CLK_MOUT_CAM1>; 264724ba675SRob Herring assigned-clock-parents = <&clock CLK_XUSBXTI>, <&clock CLK_XUSBXTI>; 265724ba675SRob Herring}; 266724ba675SRob Herring 267724ba675SRob Herring&csis_1 { 268724ba675SRob Herring status = "okay"; 269724ba675SRob Herring vddcore-supply = <&vusb_reg>; 270724ba675SRob Herring vddio-supply = <&vmipi_reg>; 271724ba675SRob Herring clock-frequency = <160000000>; 272724ba675SRob Herring #address-cells = <1>; 273724ba675SRob Herring #size-cells = <0>; 274724ba675SRob Herring 275724ba675SRob Herring port@4 { 276724ba675SRob Herring reg = <4>; 277724ba675SRob Herring csis1_ep: endpoint { 278724ba675SRob Herring remote-endpoint = <&s5k5bafx_ep>; 279724ba675SRob Herring data-lanes = <1>; 280724ba675SRob Herring samsung,csis-hs-settle = <6>; 281724ba675SRob Herring }; 282724ba675SRob Herring }; 283724ba675SRob Herring}; 284724ba675SRob Herring 285724ba675SRob Herring&cpu0 { 286724ba675SRob Herring cpu0-supply = <&varm_breg>; 287724ba675SRob Herring}; 288724ba675SRob Herring 289724ba675SRob Herring&cpu_thermal { 290724ba675SRob Herring cooling-maps { 291724ba675SRob Herring map0 { 292724ba675SRob Herring /* Corresponds to 800MHz */ 293724ba675SRob Herring cooling-device = <&cpu0 2 2>; 294724ba675SRob Herring }; 295724ba675SRob Herring map1 { 296724ba675SRob Herring /* Corresponds to 200MHz */ 297724ba675SRob Herring cooling-device = <&cpu0 4 4>; 298724ba675SRob Herring }; 299724ba675SRob Herring }; 300724ba675SRob Herring}; 301724ba675SRob Herring 302724ba675SRob Herring&ehci { 303724ba675SRob Herring status = "okay"; 304724ba675SRob Herring 305724ba675SRob Herring phys = <&exynos_usbphy 1>; 306724ba675SRob Herring phy-names = "host"; 307724ba675SRob Herring}; 308724ba675SRob Herring 309724ba675SRob Herring&exynos_usbphy { 310724ba675SRob Herring status = "okay"; 311724ba675SRob Herring 312724ba675SRob Herring vbus-supply = <&safe1_sreg>; 313724ba675SRob Herring}; 314724ba675SRob Herring 315724ba675SRob Herring&fimc_0 { 316724ba675SRob Herring status = "okay"; 317724ba675SRob Herring 318724ba675SRob Herring assigned-clocks = <&clock CLK_MOUT_FIMC0>, <&clock CLK_SCLK_FIMC0>; 319724ba675SRob Herring assigned-clock-parents = <&clock CLK_SCLK_MPLL>; 320724ba675SRob Herring assigned-clock-rates = <0>, <160000000>; 321724ba675SRob Herring}; 322724ba675SRob Herring 323724ba675SRob Herring&fimc_1 { 324724ba675SRob Herring /* Back camera not implemented */ 325724ba675SRob Herring status = "disabled"; 326724ba675SRob Herring 327724ba675SRob Herring assigned-clocks = <&clock CLK_MOUT_FIMC1>, <&clock CLK_SCLK_FIMC1>; 328724ba675SRob Herring assigned-clock-parents = <&clock CLK_SCLK_MPLL>; 329724ba675SRob Herring assigned-clock-rates = <0>, <160000000>; 330724ba675SRob Herring}; 331724ba675SRob Herring 332724ba675SRob Herring&fimc_2 { 333724ba675SRob Herring status = "okay"; 334724ba675SRob Herring 335724ba675SRob Herring assigned-clocks = <&clock CLK_MOUT_FIMC2>, <&clock CLK_SCLK_FIMC2>; 336724ba675SRob Herring assigned-clock-parents = <&clock CLK_SCLK_MPLL>; 337724ba675SRob Herring assigned-clock-rates = <0>, <160000000>; 338724ba675SRob Herring}; 339724ba675SRob Herring 340724ba675SRob Herring&fimc_3 { 341724ba675SRob Herring /* Back camera not implemented */ 342724ba675SRob Herring status = "disabled"; 343724ba675SRob Herring 344724ba675SRob Herring assigned-clocks = <&clock CLK_MOUT_FIMC3>, <&clock CLK_SCLK_FIMC3>; 345724ba675SRob Herring assigned-clock-parents = <&clock CLK_SCLK_MPLL>; 346724ba675SRob Herring assigned-clock-rates = <0>, <160000000>; 347724ba675SRob Herring}; 348724ba675SRob Herring 349724ba675SRob Herring&fimd { 350724ba675SRob Herring status = "okay"; 351724ba675SRob Herring #address-cells = <1>; 352724ba675SRob Herring #size-cells = <0>; 353724ba675SRob Herring 354724ba675SRob Herring samsung,invert-vden; 355724ba675SRob Herring samsung,invert-vclk; 356724ba675SRob Herring 357724ba675SRob Herring pinctrl-0 = <&lcd_clk>, <&lcd_data24>; 358724ba675SRob Herring pinctrl-names = "default"; 359724ba675SRob Herring 360724ba675SRob Herring port@3 { 361724ba675SRob Herring reg = <3>; 362724ba675SRob Herring 363724ba675SRob Herring fimd_dpi_ep: endpoint { 364724ba675SRob Herring remote-endpoint = <&lcd_ep>; 365724ba675SRob Herring }; 366724ba675SRob Herring }; 367724ba675SRob Herring}; 368724ba675SRob Herring 369724ba675SRob Herring&gpu { 370724ba675SRob Herring status = "okay"; 371724ba675SRob Herring 372724ba675SRob Herring mali-supply = <&vg3d_breg>; 373724ba675SRob Herring}; 374724ba675SRob Herring 375724ba675SRob Herring&hsotg { 376724ba675SRob Herring status = "okay"; 377724ba675SRob Herring 378724ba675SRob Herring dr_mode = "otg"; 379724ba675SRob Herring vusb_d-supply = <&vusb_reg>; 380724ba675SRob Herring vusb_a-supply = <&vusbdac_reg>; 381724ba675SRob Herring}; 382724ba675SRob Herring 383724ba675SRob Herring&i2c_3 { 384724ba675SRob Herring status = "okay"; 385724ba675SRob Herring 386724ba675SRob Herring samsung,i2c-sda-delay = <100>; 387724ba675SRob Herring samsung,i2c-slave-addr = <0x10>; 388724ba675SRob Herring samsung,i2c-max-bus-freq = <100000>; 389724ba675SRob Herring 390724ba675SRob Herring pinctrl-0 = <&i2c3_bus>; 391724ba675SRob Herring pinctrl-names = "default"; 392724ba675SRob Herring 393724ba675SRob Herring touchscreen@4a { 394724ba675SRob Herring compatible = "atmel,maxtouch"; 395724ba675SRob Herring reg = <0x4a>; 396724ba675SRob Herring 397724ba675SRob Herring interrupt-parent = <&gpx0>; 398724ba675SRob Herring interrupts = <4 IRQ_TYPE_EDGE_FALLING>; 399724ba675SRob Herring }; 400724ba675SRob Herring}; 401724ba675SRob Herring 402724ba675SRob Herring&i2c_5 { 403724ba675SRob Herring status = "okay"; 404724ba675SRob Herring 405724ba675SRob Herring samsung,i2c-sda-delay = <100>; 406724ba675SRob Herring samsung,i2c-slave-addr = <0x10>; 407724ba675SRob Herring samsung,i2c-max-bus-freq = <100000>; 408724ba675SRob Herring 409724ba675SRob Herring pinctrl-0 = <&i2c5_bus>; 410724ba675SRob Herring pinctrl-names = "default"; 411724ba675SRob Herring 412724ba675SRob Herring pmic@66 { 413724ba675SRob Herring compatible = "maxim,max8997-pmic"; 414724ba675SRob Herring reg = <0x66>; 415724ba675SRob Herring 416724ba675SRob Herring interrupts-extended = <&gpx0 7 IRQ_TYPE_NONE>, 417724ba675SRob Herring <&gpx2 3 IRQ_TYPE_EDGE_FALLING>; 418724ba675SRob Herring 419724ba675SRob Herring max8997,pmic-buck1-uses-gpio-dvs; 420724ba675SRob Herring max8997,pmic-buck2-uses-gpio-dvs; 421724ba675SRob Herring max8997,pmic-buck5-uses-gpio-dvs; 422724ba675SRob Herring 423724ba675SRob Herring max8997,pmic-ignore-gpiodvs-side-effect; 424724ba675SRob Herring max8997,pmic-buck125-default-dvs-idx = <0>; 425724ba675SRob Herring 426724ba675SRob Herring max8997,pmic-buck125-dvs-gpios = <&gpx0 5 GPIO_ACTIVE_HIGH>, 427724ba675SRob Herring <&gpx0 6 GPIO_ACTIVE_HIGH>, 428724ba675SRob Herring <&gpl0 0 GPIO_ACTIVE_HIGH>; 429724ba675SRob Herring 430724ba675SRob Herring max8997,pmic-buck1-dvs-voltage = <1350000>, <1300000>, 431724ba675SRob Herring <1250000>, <1200000>, 432724ba675SRob Herring <1150000>, <1100000>, 433724ba675SRob Herring <1000000>, <950000>; 434724ba675SRob Herring 435724ba675SRob Herring max8997,pmic-buck2-dvs-voltage = <1100000>, <1000000>, 436724ba675SRob Herring <950000>, <900000>, 437724ba675SRob Herring <1100000>, <1000000>, 438724ba675SRob Herring <950000>, <900000>; 439724ba675SRob Herring 440724ba675SRob Herring max8997,pmic-buck5-dvs-voltage = <1200000>, <1200000>, 441724ba675SRob Herring <1200000>, <1200000>, 442724ba675SRob Herring <1200000>, <1200000>, 443724ba675SRob Herring <1200000>, <1200000>; 444724ba675SRob Herring 445724ba675SRob Herring pinctrl-0 = <&max8997_irq>, <&otg_gp>, <&usb_sel>; 446724ba675SRob Herring pinctrl-names = "default"; 447724ba675SRob Herring 448724ba675SRob Herring charger-supply = <&charger_reg>; 449724ba675SRob Herring 450724ba675SRob Herring regulators { 451724ba675SRob Herring vadc_reg: LDO1 { 452724ba675SRob Herring regulator-name = "VADC_3.3V_C210"; 453724ba675SRob Herring regulator-min-microvolt = <3300000>; 454724ba675SRob Herring regulator-max-microvolt = <3300000>; 455724ba675SRob Herring regulator-always-on; 456724ba675SRob Herring 457724ba675SRob Herring }; 458724ba675SRob Herring valive_reg: LDO2 { 459724ba675SRob Herring regulator-name = "VALIVE_1.1V_C210"; 460724ba675SRob Herring regulator-min-microvolt = <1100000>; 461724ba675SRob Herring regulator-max-microvolt = <1100000>; 462724ba675SRob Herring regulator-always-on; 463724ba675SRob Herring 464724ba675SRob Herring }; 465724ba675SRob Herring 466724ba675SRob Herring vusb_reg: LDO3 { 467724ba675SRob Herring regulator-name = "VUSB_1.1V_C210"; 468724ba675SRob Herring regulator-min-microvolt = <1100000>; 469724ba675SRob Herring regulator-max-microvolt = <1100000>; 470724ba675SRob Herring }; 471724ba675SRob Herring 472724ba675SRob Herring vmipi_reg: LDO4 { 473724ba675SRob Herring regulator-name = "VMIPI_1.8V"; 474724ba675SRob Herring regulator-min-microvolt = <1800000>; 475724ba675SRob Herring regulator-max-microvolt = <1800000>; 476724ba675SRob Herring regulator-always-on; 477724ba675SRob Herring }; 478724ba675SRob Herring 479724ba675SRob Herring vhsic_reg: LDO5 { 480724ba675SRob Herring regulator-name = "VHSIC_1.2V"; 481724ba675SRob Herring regulator-min-microvolt = <1200000>; 482724ba675SRob Herring regulator-max-microvolt = <1200000>; 483724ba675SRob Herring regulator-always-on; 484724ba675SRob Herring }; 485724ba675SRob Herring 486724ba675SRob Herring vpda_reg: LDO6 { 487724ba675SRob Herring regulator-name = "VCC_1.8V_PDA"; 488724ba675SRob Herring regulator-min-microvolt = <1800000>; 489724ba675SRob Herring regulator-max-microvolt = <1800000>; 490724ba675SRob Herring regulator-always-on; 491724ba675SRob Herring }; 492724ba675SRob Herring 493724ba675SRob Herring vcam_reg: LDO7 { 494724ba675SRob Herring regulator-name = "CAM_ISP_1.8V"; 495724ba675SRob Herring regulator-min-microvolt = <1800000>; 496724ba675SRob Herring regulator-max-microvolt = <1800000>; 497724ba675SRob Herring }; 498724ba675SRob Herring 499724ba675SRob Herring vusbdac_reg: LDO8 { 500724ba675SRob Herring regulator-name = "VUSB+VDAC_3.3V_C210"; 501724ba675SRob Herring regulator-min-microvolt = <3300000>; 502724ba675SRob Herring regulator-max-microvolt = <3300000>; 503724ba675SRob Herring }; 504724ba675SRob Herring 505724ba675SRob Herring vccpda_reg: LDO9 { 506724ba675SRob Herring regulator-name = "VCC_2.8V_PDA"; 507724ba675SRob Herring regulator-min-microvolt = <2800000>; 508724ba675SRob Herring regulator-max-microvolt = <2800000>; 509724ba675SRob Herring regulator-always-on; 510724ba675SRob Herring }; 511724ba675SRob Herring 512724ba675SRob Herring vtouch_reg: LDO11 { 513724ba675SRob Herring regulator-name = "TOUCH_2.8V"; 514724ba675SRob Herring regulator-min-microvolt = <2800000>; 515724ba675SRob Herring regulator-max-microvolt = <2800000>; 516724ba675SRob Herring regulator-always-on; 517724ba675SRob Herring }; 518724ba675SRob Herring 519724ba675SRob Herring vpll_reg: LDO10 { 520724ba675SRob Herring regulator-name = "VPLL_1.1V"; 521724ba675SRob Herring regulator-min-microvolt = <1100000>; 522724ba675SRob Herring regulator-max-microvolt = <1100000>; 523724ba675SRob Herring regulator-always-on; 524724ba675SRob Herring }; 525724ba675SRob Herring 526724ba675SRob Herring vtcam_reg: LDO12 { 527724ba675SRob Herring regulator-name = "VT_CAM_1.8V"; 528724ba675SRob Herring regulator-min-microvolt = <1800000>; 529724ba675SRob Herring regulator-max-microvolt = <1800000>; 530724ba675SRob Herring }; 531724ba675SRob Herring 532724ba675SRob Herring vcclcd_reg: LDO13 { 533724ba675SRob Herring regulator-name = "VCC_3.0V_LCD"; 534724ba675SRob Herring regulator-min-microvolt = <3000000>; 535724ba675SRob Herring regulator-max-microvolt = <3000000>; 536724ba675SRob Herring }; 537724ba675SRob Herring 538724ba675SRob Herring vmotor_reg: LDO14 { 539724ba675SRob Herring regulator-name = "VCC_2.8V_MOTOR"; 540724ba675SRob Herring regulator-min-microvolt = <2800000>; 541724ba675SRob Herring regulator-max-microvolt = <2800000>; 542724ba675SRob Herring }; 543724ba675SRob Herring 544724ba675SRob Herring vled_reg: LDO15 { 545724ba675SRob Herring regulator-name = "LED_A_2.8V"; 546724ba675SRob Herring regulator-min-microvolt = <2800000>; 547724ba675SRob Herring regulator-max-microvolt = <2800000>; 548724ba675SRob Herring }; 549724ba675SRob Herring 550724ba675SRob Herring camsensor_reg: LDO16 { 551724ba675SRob Herring regulator-name = "CAM_SENSOR_IO_1.8V"; 552724ba675SRob Herring regulator-min-microvolt = <1800000>; 553724ba675SRob Herring regulator-max-microvolt = <1800000>; 554724ba675SRob Herring }; 555724ba675SRob Herring 556724ba675SRob Herring vtf_reg: LDO17 { 557724ba675SRob Herring regulator-name = "VTF_2.8V"; 558724ba675SRob Herring regulator-min-microvolt = <2800000>; 559724ba675SRob Herring regulator-max-microvolt = <2800000>; 560724ba675SRob Herring }; 561724ba675SRob Herring 562724ba675SRob Herring vtouchled_reg: LDO18 { 563724ba675SRob Herring regulator-name = "TOUCH_LED_3.3V"; 564724ba675SRob Herring regulator-min-microvolt = <2500000>; 565724ba675SRob Herring regulator-max-microvolt = <3300000>; 566724ba675SRob Herring }; 567724ba675SRob Herring 568724ba675SRob Herring vddq_reg: LDO21 { 569724ba675SRob Herring regulator-name = "VDDQ_M1M2_1.2V"; 570724ba675SRob Herring regulator-min-microvolt = <1200000>; 571724ba675SRob Herring regulator-max-microvolt = <1200000>; 572724ba675SRob Herring regulator-always-on; 573724ba675SRob Herring }; 574724ba675SRob Herring 575724ba675SRob Herring varm_breg: BUCK1 { 576724ba675SRob Herring regulator-name = "VARM_1.2V_C210"; 577724ba675SRob Herring regulator-min-microvolt = <65000>; 578724ba675SRob Herring regulator-max-microvolt = <2225000>; 579724ba675SRob Herring regulator-always-on; 580724ba675SRob Herring }; 581724ba675SRob Herring 582724ba675SRob Herring vint_breg: BUCK2 { 583724ba675SRob Herring regulator-name = "VINT_1.1V_C210"; 584724ba675SRob Herring regulator-min-microvolt = <65000>; 585724ba675SRob Herring regulator-max-microvolt = <2225000>; 586724ba675SRob Herring regulator-always-on; 587724ba675SRob Herring }; 588724ba675SRob Herring 589724ba675SRob Herring vg3d_breg: BUCK3 { 590724ba675SRob Herring regulator-name = "G3D_1.1V"; 591724ba675SRob Herring regulator-min-microvolt = <900000>; 592724ba675SRob Herring regulator-max-microvolt = <1200000>; 593724ba675SRob Herring regulator-microvolt-offset = <50000>; 594724ba675SRob Herring regulator-always-on; 595724ba675SRob Herring }; 596724ba675SRob Herring 597724ba675SRob Herring camisp_breg: BUCK4 { 598724ba675SRob Herring regulator-name = "CAM_ISP_CORE_1.2V"; 599724ba675SRob Herring regulator-min-microvolt = <1200000>; 600724ba675SRob Herring regulator-max-microvolt = <1200000>; 601724ba675SRob Herring }; 602724ba675SRob Herring 603724ba675SRob Herring vmem_breg: BUCK5 { 604724ba675SRob Herring regulator-name = "VMEM_1.2V"; 605724ba675SRob Herring regulator-min-microvolt = <1200000>; 606724ba675SRob Herring regulator-max-microvolt = <1200000>; 607724ba675SRob Herring regulator-always-on; 608724ba675SRob Herring }; 609724ba675SRob Herring 610724ba675SRob Herring vccsub_breg: BUCK7 { 611724ba675SRob Herring regulator-name = "VCC_SUB_2.0V"; 612724ba675SRob Herring regulator-min-microvolt = <2000000>; 613724ba675SRob Herring regulator-max-microvolt = <2000000>; 614724ba675SRob Herring regulator-always-on; 615724ba675SRob Herring }; 616724ba675SRob Herring 617724ba675SRob Herring safe1_sreg: ESAFEOUT1 { 618724ba675SRob Herring regulator-name = "SAFEOUT1"; 619724ba675SRob Herring }; 620724ba675SRob Herring 621724ba675SRob Herring safe2_sreg: ESAFEOUT2 { 622724ba675SRob Herring regulator-name = "SAFEOUT2"; 623724ba675SRob Herring regulator-boot-on; 624724ba675SRob Herring }; 625724ba675SRob Herring 626724ba675SRob Herring EN32KHZ_AP { 627724ba675SRob Herring regulator-name = "EN32KHZ_AP"; 628724ba675SRob Herring regulator-always-on; 629724ba675SRob Herring }; 630724ba675SRob Herring 631724ba675SRob Herring EN32KHZ_CP { 632724ba675SRob Herring regulator-name = "EN32KHZ_CP"; 633724ba675SRob Herring regulator-always-on; 634724ba675SRob Herring }; 635724ba675SRob Herring 636724ba675SRob Herring charger_reg: CHARGER { 637724ba675SRob Herring regulator-name = "CHARGER"; 638724ba675SRob Herring regulator-min-microamp = <200000>; 639724ba675SRob Herring regulator-max-microamp = <950000>; 640724ba675SRob Herring }; 641724ba675SRob Herring 642724ba675SRob Herring chargercv_reg: CHARGER_CV { 643724ba675SRob Herring regulator-name = "CHARGER_CV"; 644724ba675SRob Herring regulator-min-microvolt = <4200000>; 645724ba675SRob Herring regulator-max-microvolt = <4200000>; 646724ba675SRob Herring regulator-always-on; 647724ba675SRob Herring }; 648724ba675SRob Herring 649724ba675SRob Herring CHARGER_TOPOFF { 650724ba675SRob Herring regulator-name = "CHARGER_TOPOFF"; 651724ba675SRob Herring regulator-min-microamp = <200000>; 652724ba675SRob Herring regulator-max-microamp = <200000>; 653724ba675SRob Herring regulator-always-on; 654724ba675SRob Herring }; 655724ba675SRob Herring }; 656724ba675SRob Herring }; 657724ba675SRob Herring}; 658724ba675SRob Herring 659724ba675SRob Herring&i2c_7 { 660724ba675SRob Herring status = "okay"; 661724ba675SRob Herring 662724ba675SRob Herring samsung,i2c-sda-delay = <100>; 663724ba675SRob Herring samsung,i2c-slave-addr = <0x10>; 664724ba675SRob Herring samsung,i2c-max-bus-freq = <400000>; 665724ba675SRob Herring 666724ba675SRob Herring pinctrl-0 = <&i2c7_bus>; 667724ba675SRob Herring pinctrl-names = "default"; 668724ba675SRob Herring 669724ba675SRob Herring magnetometer@c { 670724ba675SRob Herring compatible = "asahi-kasei,ak8975"; 671724ba675SRob Herring reg = <0x0c>; 672724ba675SRob Herring 673724ba675SRob Herring gpios = <&gpx2 2 GPIO_ACTIVE_HIGH>; 674724ba675SRob Herring }; 675724ba675SRob Herring}; 676724ba675SRob Herring 677724ba675SRob Herring&pinctrl_0 { 678724ba675SRob Herring pinctrl-names = "default"; 679724ba675SRob Herring pinctrl-0 = <&sleep0>; 680724ba675SRob Herring 681724ba675SRob Herring sleep0: sleep-state { 682724ba675SRob Herring gpa0-0-pin { 683724ba675SRob Herring samsung,pins = "gpa0-0"; 684724ba675SRob Herring samsung,pin-con-pdn = <EXYNOS_PIN_PDN_INPUT>; 685724ba675SRob Herring samsung,pin-pud-pdn = <EXYNOS_PIN_PULL_NONE>; 686724ba675SRob Herring }; 687724ba675SRob Herring 688724ba675SRob Herring gpa0-1-pin { 689724ba675SRob Herring samsung,pins = "gpa0-1"; 690724ba675SRob Herring samsung,pin-con-pdn = <EXYNOS_PIN_PDN_OUT0>; 691724ba675SRob Herring samsung,pin-pud-pdn = <EXYNOS_PIN_PULL_NONE>; 692724ba675SRob Herring }; 693724ba675SRob Herring 694724ba675SRob Herring gpa0-2-pin { 695724ba675SRob Herring samsung,pins = "gpa0-2"; 696724ba675SRob Herring samsung,pin-con-pdn = <EXYNOS_PIN_PDN_INPUT>; 697724ba675SRob Herring samsung,pin-pud-pdn = <EXYNOS_PIN_PULL_NONE>; 698724ba675SRob Herring }; 699724ba675SRob Herring 700724ba675SRob Herring gpa0-3-pin { 701724ba675SRob Herring samsung,pins = "gpa0-3"; 702724ba675SRob Herring samsung,pin-con-pdn = <EXYNOS_PIN_PDN_OUT1>; 703724ba675SRob Herring samsung,pin-pud-pdn = <EXYNOS_PIN_PULL_NONE>; 704724ba675SRob Herring }; 705724ba675SRob Herring }; 706724ba675SRob Herring}; 707724ba675SRob Herring 708724ba675SRob Herring&pinctrl_1 { 709724ba675SRob Herring mhl_int: mhl-int-pins { 710724ba675SRob Herring samsung,pins = "gpf3-5"; 711724ba675SRob Herring samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 712724ba675SRob Herring }; 713724ba675SRob Herring 714724ba675SRob Herring i2c_mhl_bus: i2c-mhl-bus-pins { 715724ba675SRob Herring samsung,pins = "gpf0-4", "gpf0-6"; 716724ba675SRob Herring samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 717724ba675SRob Herring samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>; 718724ba675SRob Herring samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 719724ba675SRob Herring }; 720724ba675SRob Herring 721724ba675SRob Herring usb_sel: usb-sel-pins { 722724ba675SRob Herring samsung,pins = "gpl0-6"; 723724ba675SRob Herring samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>; 724724ba675SRob Herring samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 725724ba675SRob Herring samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 726724ba675SRob Herring samsung,pin-val = <0>; 727724ba675SRob Herring }; 728724ba675SRob Herring 729724ba675SRob Herring bt_en: bt-en-pins { 730724ba675SRob Herring samsung,pins = "gpl0-4"; 731724ba675SRob Herring samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>; 732724ba675SRob Herring samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 733724ba675SRob Herring samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>; 734724ba675SRob Herring samsung,pin-val = <0>; 735724ba675SRob Herring }; 736724ba675SRob Herring 737724ba675SRob Herring bt_res: bt-res-pins { 738724ba675SRob Herring samsung,pins = "gpl1-0"; 739724ba675SRob Herring samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>; 740724ba675SRob Herring samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 741724ba675SRob Herring samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>; 742724ba675SRob Herring samsung,pin-val = <0>; 743724ba675SRob Herring }; 744724ba675SRob Herring 745724ba675SRob Herring otg_gp: otg-gp-pins { 746724ba675SRob Herring samsung,pins = "gpx3-3"; 747724ba675SRob Herring samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>; 748724ba675SRob Herring samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 749724ba675SRob Herring samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 750724ba675SRob Herring samsung,pin-val = <0>; 751724ba675SRob Herring }; 752724ba675SRob Herring 753724ba675SRob Herring mag_mhl_gpio: mag-mhl-pins { 754724ba675SRob Herring samsung,pins = "gpd0-2"; 755724ba675SRob Herring samsung,pin-function = <EXYNOS_PIN_FUNC_3>; 756724ba675SRob Herring samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 757724ba675SRob Herring }; 758724ba675SRob Herring 759724ba675SRob Herring max8997_irq: max8997-irq-pins { 760724ba675SRob Herring samsung,pins = "gpx0-7"; 761724ba675SRob Herring samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 762724ba675SRob Herring }; 763724ba675SRob Herring 764724ba675SRob Herring max17042_fuel_irq: max17042-fuel-irq-pins { 765724ba675SRob Herring samsung,pins = "gpx2-3"; 766724ba675SRob Herring samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 767724ba675SRob Herring }; 768724ba675SRob Herring 769724ba675SRob Herring tsp224_irq: tsp224-irq-pins { 770724ba675SRob Herring samsung,pins = "gpx0-4"; 771724ba675SRob Herring samsung,pin-pud = <EXYNOS_PIN_PULL_UP>; 772724ba675SRob Herring }; 773724ba675SRob Herring}; 774724ba675SRob Herring 775724ba675SRob Herring&rtc { 776724ba675SRob Herring status = "okay"; 777724ba675SRob Herring clocks = <&clock CLK_RTC>, <&pmic_ap_clk>; 778724ba675SRob Herring clock-names = "rtc", "rtc_src"; 779724ba675SRob Herring}; 780724ba675SRob Herring 781724ba675SRob Herring&sdhci_0 { 782724ba675SRob Herring status = "okay"; 783724ba675SRob Herring 784724ba675SRob Herring bus-width = <8>; 785724ba675SRob Herring non-removable; 786724ba675SRob Herring vmmc-supply = <&vemmc_reg>; 787724ba675SRob Herring 788724ba675SRob Herring pinctrl-0 = <&sd0_clk>, <&sd0_cmd>, <&sd0_bus8>; 789724ba675SRob Herring pinctrl-names = "default"; 790724ba675SRob Herring}; 791724ba675SRob Herring 792724ba675SRob Herring&sdhci_2 { 793724ba675SRob Herring status = "okay"; 794724ba675SRob Herring 795724ba675SRob Herring bus-width = <4>; 796724ba675SRob Herring cd-gpios = <&gpx3 4 GPIO_ACTIVE_LOW>; 797724ba675SRob Herring vmmc-supply = <&vtf_reg>; 798724ba675SRob Herring 799724ba675SRob Herring pinctrl-0 = <&sd2_clk>, <&sd2_cmd>, <&sd2_bus4>; 800724ba675SRob Herring pinctrl-names = "default"; 801724ba675SRob Herring}; 802724ba675SRob Herring 803724ba675SRob Herring&sdhci_3 { 804724ba675SRob Herring status = "okay"; 805724ba675SRob Herring 806724ba675SRob Herring #address-cells = <1>; 807724ba675SRob Herring #size-cells = <0>; 808724ba675SRob Herring 809724ba675SRob Herring non-removable; 810724ba675SRob Herring bus-width = <4>; 811724ba675SRob Herring mmc-pwrseq = <&wlan_pwrseq>; 812724ba675SRob Herring vmmc-supply = <&vtf_reg>; 813724ba675SRob Herring 814724ba675SRob Herring pinctrl-names = "default"; 815724ba675SRob Herring pinctrl-0 = <&sd3_clk>, <&sd3_cmd>, <&sd3_bus4>; 816724ba675SRob Herring 817724ba675SRob Herring brcmf: wifi@1 { 818724ba675SRob Herring compatible = "brcm,bcm4330-fmac", "brcm,bcm4329-fmac"; 819724ba675SRob Herring reg = <1>; 820724ba675SRob Herring 821724ba675SRob Herring interrupt-parent = <&gpx2>; 822724ba675SRob Herring interrupts = <5 IRQ_TYPE_LEVEL_HIGH>; 823724ba675SRob Herring interrupt-names = "host-wake"; 824724ba675SRob Herring }; 825724ba675SRob Herring}; 826724ba675SRob Herring 827724ba675SRob Herring&serial_0 { 828724ba675SRob Herring status = "okay"; 829724ba675SRob Herring 830724ba675SRob Herring pinctrl-names = "default"; 831724ba675SRob Herring pinctrl-0 = <&bt_en>, <&bt_res>, <&uart0_data>, <&uart0_fctl>; 832724ba675SRob Herring 833724ba675SRob Herring bluetooth { 834724ba675SRob Herring compatible = "brcm,bcm4330-bt"; 835724ba675SRob Herring 836724ba675SRob Herring shutdown-gpios = <&gpl0 4 GPIO_ACTIVE_HIGH>; 837724ba675SRob Herring reset-gpios = <&gpl1 0 GPIO_ACTIVE_LOW>; 838724ba675SRob Herring device-wakeup-gpios = <&gpx3 1 GPIO_ACTIVE_HIGH>; 839724ba675SRob Herring 840724ba675SRob Herring interrupt-parent = <&gpx2>; 841724ba675SRob Herring interrupts = <6 IRQ_TYPE_EDGE_FALLING>; 842724ba675SRob Herring interrupt-names = "host-wakeup"; 843724ba675SRob Herring }; 844724ba675SRob Herring}; 845724ba675SRob Herring 846724ba675SRob Herring&serial_1 { 847724ba675SRob Herring status = "okay"; 848724ba675SRob Herring}; 849724ba675SRob Herring 850724ba675SRob Herring&serial_2 { 851724ba675SRob Herring status = "okay"; 852724ba675SRob Herring}; 853724ba675SRob Herring 854724ba675SRob Herring&serial_3 { 855724ba675SRob Herring status = "okay"; 856724ba675SRob Herring}; 857724ba675SRob Herring 858724ba675SRob Herring&tmu { 859724ba675SRob Herring status = "okay"; 860724ba675SRob Herring}; 861