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