1c66ec88fSEmmanuel Vadot// SPDX-License-Identifier: BSD-3-Clause 2c66ec88fSEmmanuel Vadot/* 3354d7675SEmmanuel Vadot * Copyright (c) 2020, Konrad Dybcio <konrad.dybcio@somainline.org> 4354d7675SEmmanuel Vadot * Copyright (c) 2020, AngeloGioacchino Del Regno 5354d7675SEmmanuel Vadot * <angelogioacchino.delregno@somainline.org> 6c66ec88fSEmmanuel Vadot */ 7c66ec88fSEmmanuel Vadot 8c66ec88fSEmmanuel Vadot#include "pm660.dtsi" 9c66ec88fSEmmanuel Vadot#include "pm660l.dtsi" 10c66ec88fSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h> 11c66ec88fSEmmanuel Vadot#include <dt-bindings/input/input.h> 12c66ec88fSEmmanuel Vadot#include <dt-bindings/input/gpio-keys.h> 13b97ee269SEmmanuel Vadot#include <dt-bindings/leds/common.h> 14c66ec88fSEmmanuel Vadot 15c66ec88fSEmmanuel Vadot/ { 16c66ec88fSEmmanuel Vadot /* required for bootloader to select correct board */ 17c66ec88fSEmmanuel Vadot qcom,msm-id = <318 0>; 18c66ec88fSEmmanuel Vadot qcom,board-id = <8 1>; 19c66ec88fSEmmanuel Vadot qcom,pmic-id = <0x1001b 0x101011a 0x00 0x00 0x1001b 0x201011a 0x00 0x00>; 20c66ec88fSEmmanuel Vadot 21c66ec88fSEmmanuel Vadot /* This part enables graphical output via bootloader-enabled display */ 22c66ec88fSEmmanuel Vadot chosen { 23c66ec88fSEmmanuel Vadot bootargs = "earlycon=tty0 console=tty0"; 24c66ec88fSEmmanuel Vadot 25c66ec88fSEmmanuel Vadot #address-cells = <2>; 26c66ec88fSEmmanuel Vadot #size-cells = <2>; 27c66ec88fSEmmanuel Vadot ranges; 28c66ec88fSEmmanuel Vadot 29c66ec88fSEmmanuel Vadot stdout-path = "framebuffer0"; 30c66ec88fSEmmanuel Vadot 31c66ec88fSEmmanuel Vadot framebuffer0: framebuffer@9d400000 { 32c66ec88fSEmmanuel Vadot compatible = "simple-framebuffer"; 33c66ec88fSEmmanuel Vadot reg = <0 0x9d400000 0 (1920 * 1080 * 4)>; 34c66ec88fSEmmanuel Vadot width = <1080>; 35c66ec88fSEmmanuel Vadot height = <1920>; 36c66ec88fSEmmanuel Vadot stride = <(1080 * 4)>; 37c66ec88fSEmmanuel Vadot format = "a8r8g8b8"; 38c66ec88fSEmmanuel Vadot status = "okay"; 39c66ec88fSEmmanuel Vadot }; 40c66ec88fSEmmanuel Vadot }; 41c66ec88fSEmmanuel Vadot 42354d7675SEmmanuel Vadot board_vbat: vbat-regulator { 43354d7675SEmmanuel Vadot compatible = "regulator-fixed"; 44354d7675SEmmanuel Vadot regulator-name = "VBAT"; 45354d7675SEmmanuel Vadot 46354d7675SEmmanuel Vadot regulator-min-microvolt = <4000000>; 47354d7675SEmmanuel Vadot regulator-max-microvolt = <4000000>; 48354d7675SEmmanuel Vadot regulator-always-on; 49354d7675SEmmanuel Vadot regulator-boot-on; 50354d7675SEmmanuel Vadot }; 51354d7675SEmmanuel Vadot 52354d7675SEmmanuel Vadot vph_pwr: vph-pwr-regulator { 53354d7675SEmmanuel Vadot compatible = "regulator-fixed"; 54354d7675SEmmanuel Vadot regulator-name = "vph_pwr"; 55354d7675SEmmanuel Vadot 56354d7675SEmmanuel Vadot regulator-always-on; 57354d7675SEmmanuel Vadot regulator-boot-on; 58354d7675SEmmanuel Vadot }; 59354d7675SEmmanuel Vadot 60*cb7aa33aSEmmanuel Vadot cam_vdig_imx300_219_vreg: cam-vdig-imx300-219-regulator { 61354d7675SEmmanuel Vadot compatible = "regulator-fixed"; 62354d7675SEmmanuel Vadot regulator-name = "cam_vdig_imx300_219_vreg"; 63354d7675SEmmanuel Vadot startup-delay-us = <0>; 64354d7675SEmmanuel Vadot enable-active-high; 65354d7675SEmmanuel Vadot gpio = <&tlmm 52 GPIO_ACTIVE_HIGH>; 66354d7675SEmmanuel Vadot pinctrl-names = "default"; 67354d7675SEmmanuel Vadot pinctrl-0 = <&cam_vdig_default>; 68354d7675SEmmanuel Vadot }; 69354d7675SEmmanuel Vadot 70*cb7aa33aSEmmanuel Vadot cam_vana_front_vreg: cam-vana-front-regulator { 71354d7675SEmmanuel Vadot compatible = "regulator-fixed"; 72354d7675SEmmanuel Vadot regulator-name = "cam_vana_front_vreg"; 73354d7675SEmmanuel Vadot startup-delay-us = <0>; 74354d7675SEmmanuel Vadot enable-active-high; 75354d7675SEmmanuel Vadot gpio = <&tlmm 51 GPIO_ACTIVE_HIGH>; 76354d7675SEmmanuel Vadot pinctrl-names = "default"; 77354d7675SEmmanuel Vadot pinctrl-0 = <&imx219_vana_default>; 78354d7675SEmmanuel Vadot }; 79354d7675SEmmanuel Vadot 80*cb7aa33aSEmmanuel Vadot cam_vana_rear_vreg: cam-vana-rear-regulator { 81354d7675SEmmanuel Vadot compatible = "regulator-fixed"; 82354d7675SEmmanuel Vadot regulator-name = "cam_vana_rear_vreg"; 83354d7675SEmmanuel Vadot startup-delay-us = <0>; 84354d7675SEmmanuel Vadot enable-active-high; 85354d7675SEmmanuel Vadot gpio = <&tlmm 50 GPIO_ACTIVE_HIGH>; 86354d7675SEmmanuel Vadot regulator-always-on; 87354d7675SEmmanuel Vadot pinctrl-names = "default"; 88354d7675SEmmanuel Vadot pinctrl-0 = <&imx300_vana_default>; 89354d7675SEmmanuel Vadot }; 90354d7675SEmmanuel Vadot 91b97ee269SEmmanuel Vadot gpio-keys { 92c66ec88fSEmmanuel Vadot compatible = "gpio-keys"; 93c66ec88fSEmmanuel Vadot 94b97ee269SEmmanuel Vadot key-camera-focus { 95c66ec88fSEmmanuel Vadot label = "Camera Focus"; 96c66ec88fSEmmanuel Vadot gpios = <&tlmm 64 GPIO_ACTIVE_LOW>; 97c66ec88fSEmmanuel Vadot linux,input-type = <1>; 98c66ec88fSEmmanuel Vadot linux,code = <KEY_CAMERA_FOCUS>; 99c66ec88fSEmmanuel Vadot debounce-interval = <15>; 100c66ec88fSEmmanuel Vadot }; 101c66ec88fSEmmanuel Vadot 102b97ee269SEmmanuel Vadot key-camera-snapshot { 103c66ec88fSEmmanuel Vadot label = "Camera Snapshot"; 104c66ec88fSEmmanuel Vadot gpios = <&tlmm 113 GPIO_ACTIVE_LOW>; 105c66ec88fSEmmanuel Vadot linux,input-type = <1>; 106c66ec88fSEmmanuel Vadot linux,code = <KEY_CAMERA>; 107c66ec88fSEmmanuel Vadot debounce-interval = <15>; 108c66ec88fSEmmanuel Vadot }; 109c66ec88fSEmmanuel Vadot 110b97ee269SEmmanuel Vadot key-vol-down { 111c66ec88fSEmmanuel Vadot label = "Volume Down"; 112c66ec88fSEmmanuel Vadot gpios = <&pm660l_gpios 7 GPIO_ACTIVE_LOW>; 113c66ec88fSEmmanuel Vadot linux,input-type = <1>; 114c66ec88fSEmmanuel Vadot linux,code = <KEY_VOLUMEDOWN>; 115c66ec88fSEmmanuel Vadot gpio-key,wakeup; 116c66ec88fSEmmanuel Vadot debounce-interval = <15>; 117c66ec88fSEmmanuel Vadot }; 118c66ec88fSEmmanuel Vadot }; 119c66ec88fSEmmanuel Vadot 120c66ec88fSEmmanuel Vadot reserved-memory { 121c66ec88fSEmmanuel Vadot #address-cells = <2>; 122c66ec88fSEmmanuel Vadot #size-cells = <2>; 123c66ec88fSEmmanuel Vadot ranges; 124c66ec88fSEmmanuel Vadot 125c66ec88fSEmmanuel Vadot ramoops@ffc00000 { 126c66ec88fSEmmanuel Vadot compatible = "ramoops"; 127c66ec88fSEmmanuel Vadot reg = <0x0 0xffc00000 0x0 0x100000>; 128c66ec88fSEmmanuel Vadot record-size = <0x10000>; 129c66ec88fSEmmanuel Vadot console-size = <0x60000>; 130c66ec88fSEmmanuel Vadot ftrace-size = <0x10000>; 131c66ec88fSEmmanuel Vadot pmsg-size = <0x20000>; 132c66ec88fSEmmanuel Vadot ecc-size = <16>; 133c66ec88fSEmmanuel Vadot status = "okay"; 134c66ec88fSEmmanuel Vadot }; 135c66ec88fSEmmanuel Vadot 136*cb7aa33aSEmmanuel Vadot debug@ffb00000 { 137c66ec88fSEmmanuel Vadot reg = <0x00 0xffb00000 0x00 0x100000>; 138c66ec88fSEmmanuel Vadot no-map; 139c66ec88fSEmmanuel Vadot }; 140c66ec88fSEmmanuel Vadot 141*cb7aa33aSEmmanuel Vadot reserved@85800000 { 142c66ec88fSEmmanuel Vadot reg = <0x00 0x85800000 0x00 0x3700000>; 143c66ec88fSEmmanuel Vadot no-map; 144c66ec88fSEmmanuel Vadot }; 145*cb7aa33aSEmmanuel Vadot 146*cb7aa33aSEmmanuel Vadot cont_splash_mem: splash@9d400000 { 147*cb7aa33aSEmmanuel Vadot reg = <0 0x9d400000 0 (1920 * 1080 * 4)>; 148*cb7aa33aSEmmanuel Vadot no-map; 149*cb7aa33aSEmmanuel Vadot }; 150c66ec88fSEmmanuel Vadot }; 151c66ec88fSEmmanuel Vadot 152354d7675SEmmanuel Vadot /* 153354d7675SEmmanuel Vadot * Until we hook up type-c detection, we 154354d7675SEmmanuel Vadot * have to stick with this. But it works. 155354d7675SEmmanuel Vadot */ 156354d7675SEmmanuel Vadot extcon_usb: extcon-usb { 157354d7675SEmmanuel Vadot compatible = "linux,extcon-usb-gpio"; 158354d7675SEmmanuel Vadot id-gpio = <&tlmm 58 GPIO_ACTIVE_HIGH>; 159354d7675SEmmanuel Vadot }; 160c66ec88fSEmmanuel Vadot}; 161c66ec88fSEmmanuel Vadot 162354d7675SEmmanuel Vadot&adsp_pil { 1638bab661aSEmmanuel Vadot firmware-name = "qcom/sdm630/Sony/nile/adsp.mdt"; 164c66ec88fSEmmanuel Vadot}; 165c66ec88fSEmmanuel Vadot 166354d7675SEmmanuel Vadot&blsp_i2c1 { 167354d7675SEmmanuel Vadot status = "okay"; 168354d7675SEmmanuel Vadot 169354d7675SEmmanuel Vadot touchscreen: synaptics-rmi4-i2c@70 { 170354d7675SEmmanuel Vadot compatible = "syna,rmi4-i2c"; 171354d7675SEmmanuel Vadot reg = <0x70>; 172354d7675SEmmanuel Vadot #address-cells = <1>; 173354d7675SEmmanuel Vadot #size-cells = <0>; 174354d7675SEmmanuel Vadot interrupts-extended = <&tlmm 45 0x2008>; 175354d7675SEmmanuel Vadot 176354d7675SEmmanuel Vadot pinctrl-names = "default"; 177354d7675SEmmanuel Vadot pinctrl-0 = <&ts_int_active &ts_lcd_id_active>; 178354d7675SEmmanuel Vadot 179354d7675SEmmanuel Vadot syna,reset-delay-ms = <200>; 180354d7675SEmmanuel Vadot syna,startup-delay-ms = <220>; 181354d7675SEmmanuel Vadot 182354d7675SEmmanuel Vadot rmi4-f01@1 { 183354d7675SEmmanuel Vadot reg = <0x01>; 184354d7675SEmmanuel Vadot syna,nosleep-mode = <1>; 185354d7675SEmmanuel Vadot }; 186354d7675SEmmanuel Vadot 187354d7675SEmmanuel Vadot rmi4-f11@11 { 188354d7675SEmmanuel Vadot reg = <0x11>; 189354d7675SEmmanuel Vadot syna,sensor-type = <1>; 190354d7675SEmmanuel Vadot }; 191354d7675SEmmanuel Vadot }; 192354d7675SEmmanuel Vadot}; 193354d7675SEmmanuel Vadot 194354d7675SEmmanuel Vadot&blsp_i2c2 { 195c66ec88fSEmmanuel Vadot status = "okay"; 196c66ec88fSEmmanuel Vadot 197c66ec88fSEmmanuel Vadot /* SMB1351 charger */ 198c66ec88fSEmmanuel Vadot}; 199c66ec88fSEmmanuel Vadot 200c66ec88fSEmmanuel Vadot/* I2C3, 4, 5, 7 and 8 are disabled on this board. */ 201c66ec88fSEmmanuel Vadot 202354d7675SEmmanuel Vadot&blsp_i2c6 { 203c66ec88fSEmmanuel Vadot status = "okay"; 204c66ec88fSEmmanuel Vadot 205c66ec88fSEmmanuel Vadot /* NXP NFC */ 206c66ec88fSEmmanuel Vadot}; 207354d7675SEmmanuel Vadot 208354d7675SEmmanuel Vadot&blsp1_uart2 { 209354d7675SEmmanuel Vadot status = "okay"; 210354d7675SEmmanuel Vadot 211354d7675SEmmanuel Vadot /* MSM serial console */ 212c66ec88fSEmmanuel Vadot}; 213354d7675SEmmanuel Vadot 214354d7675SEmmanuel Vadot&blsp2_uart1 { 215354d7675SEmmanuel Vadot status = "okay"; 216354d7675SEmmanuel Vadot 217354d7675SEmmanuel Vadot /* HCI Bluetooth */ 218354d7675SEmmanuel Vadot}; 219354d7675SEmmanuel Vadot 220b97ee269SEmmanuel Vadot&pm660l_lpg { 221b97ee269SEmmanuel Vadot qcom,power-source = <1>; 222b97ee269SEmmanuel Vadot 223b97ee269SEmmanuel Vadot status = "okay"; 224b97ee269SEmmanuel Vadot 225b97ee269SEmmanuel Vadot multi-led { 226b97ee269SEmmanuel Vadot color = <LED_COLOR_ID_RGB>; 227b97ee269SEmmanuel Vadot function = LED_FUNCTION_STATUS; 228b97ee269SEmmanuel Vadot 229b97ee269SEmmanuel Vadot #address-cells = <1>; 230b97ee269SEmmanuel Vadot #size-cells = <0>; 231b97ee269SEmmanuel Vadot 232b97ee269SEmmanuel Vadot led@1 { 233b97ee269SEmmanuel Vadot reg = <1>; 234b97ee269SEmmanuel Vadot color = <LED_COLOR_ID_BLUE>; 235b97ee269SEmmanuel Vadot }; 236b97ee269SEmmanuel Vadot 237b97ee269SEmmanuel Vadot led@2 { 238b97ee269SEmmanuel Vadot reg = <2>; 239b97ee269SEmmanuel Vadot color = <LED_COLOR_ID_GREEN>; 240b97ee269SEmmanuel Vadot }; 241b97ee269SEmmanuel Vadot 242b97ee269SEmmanuel Vadot led@3 { 243b97ee269SEmmanuel Vadot reg = <3>; 244b97ee269SEmmanuel Vadot color = <LED_COLOR_ID_RED>; 245b97ee269SEmmanuel Vadot }; 246b97ee269SEmmanuel Vadot }; 247b97ee269SEmmanuel Vadot}; 248b97ee269SEmmanuel Vadot 249e67e8565SEmmanuel Vadot&pon_pwrkey { 250e67e8565SEmmanuel Vadot status = "okay"; 251354d7675SEmmanuel Vadot}; 252e67e8565SEmmanuel Vadot 253e67e8565SEmmanuel Vadot&pon_resin { 254e67e8565SEmmanuel Vadot status = "okay"; 255e67e8565SEmmanuel Vadot 256e67e8565SEmmanuel Vadot linux,code = <KEY_VOLUMEUP>; 257354d7675SEmmanuel Vadot}; 258354d7675SEmmanuel Vadot 259b97ee269SEmmanuel Vadot&qusb2phy0 { 260354d7675SEmmanuel Vadot status = "okay"; 261354d7675SEmmanuel Vadot 262354d7675SEmmanuel Vadot vdd-supply = <&vreg_l1b_0p925>; 263354d7675SEmmanuel Vadot vdda-pll-supply = <&vreg_l10a_1p8>; 264354d7675SEmmanuel Vadot vdda-phy-dpdm-supply = <&vreg_l7b_3p125>; 265354d7675SEmmanuel Vadot}; 266354d7675SEmmanuel Vadot 267354d7675SEmmanuel Vadot&rpm_requests { 2688bab661aSEmmanuel Vadot regulators-0 { 269354d7675SEmmanuel Vadot compatible = "qcom,rpm-pm660l-regulators"; 270354d7675SEmmanuel Vadot 271354d7675SEmmanuel Vadot vdd_s1-supply = <&vph_pwr>; 272354d7675SEmmanuel Vadot vdd_s2-supply = <&vph_pwr>; 273354d7675SEmmanuel Vadot vdd_s3_s4-supply = <&vph_pwr>; 274354d7675SEmmanuel Vadot vdd_s5-supply = <&vph_pwr>; 275354d7675SEmmanuel Vadot vdd_s6-supply = <&vph_pwr>; 276354d7675SEmmanuel Vadot 277354d7675SEmmanuel Vadot vdd_l1_l9_l10-supply = <&vreg_s2b_1p05>; 278354d7675SEmmanuel Vadot vdd_l2-supply = <&vreg_bob>; 279354d7675SEmmanuel Vadot vdd_l3_l5_l7_l8-supply = <&vreg_bob>; 280354d7675SEmmanuel Vadot vdd_l4_l6-supply = <&vreg_bob>; 281354d7675SEmmanuel Vadot vdd_bob-supply = <&vph_pwr>; 282354d7675SEmmanuel Vadot 283354d7675SEmmanuel Vadot vreg_s1b_1p125: s1 { 284354d7675SEmmanuel Vadot regulator-min-microvolt = <1125000>; 285354d7675SEmmanuel Vadot regulator-max-microvolt = <1125000>; 286354d7675SEmmanuel Vadot regulator-enable-ramp-delay = <200>; 287354d7675SEmmanuel Vadot regulator-ramp-delay = <0>; 288354d7675SEmmanuel Vadot }; 289354d7675SEmmanuel Vadot 290354d7675SEmmanuel Vadot vreg_s2b_1p05: s2 { 291354d7675SEmmanuel Vadot regulator-min-microvolt = <1050000>; 292354d7675SEmmanuel Vadot regulator-max-microvolt = <1050000>; 293354d7675SEmmanuel Vadot regulator-enable-ramp-delay = <200>; 294354d7675SEmmanuel Vadot regulator-ramp-delay = <0>; 295354d7675SEmmanuel Vadot }; 296354d7675SEmmanuel Vadot 297354d7675SEmmanuel Vadot /* 298354d7675SEmmanuel Vadot * At least on Nile's configuration, S3B/S4B (VDD_CX) and 299354d7675SEmmanuel Vadot * S5B (VDD_MX) are managed only through RPM Power Domains. 300354d7675SEmmanuel Vadot * Trying to set a voltage on the main supply will create 301354d7675SEmmanuel Vadot * havoc and freeze the SoC. 302354d7675SEmmanuel Vadot * In any case, reference voltages for these regulators are: 303354d7675SEmmanuel Vadot * S3B/S4B: 0.870V 304354d7675SEmmanuel Vadot * S5B: 0.915V 305354d7675SEmmanuel Vadot */ 306354d7675SEmmanuel Vadot 307354d7675SEmmanuel Vadot /* LDOs */ 308354d7675SEmmanuel Vadot vreg_l1b_0p925: l1 { 309354d7675SEmmanuel Vadot regulator-min-microvolt = <920000>; 310354d7675SEmmanuel Vadot regulator-max-microvolt = <928000>; 311354d7675SEmmanuel Vadot regulator-enable-ramp-delay = <250>; 312354d7675SEmmanuel Vadot regulator-ramp-delay = <0>; 313354d7675SEmmanuel Vadot regulator-allow-set-load; 314354d7675SEmmanuel Vadot }; 315354d7675SEmmanuel Vadot 316354d7675SEmmanuel Vadot vreg_l2b_2p95: l2 { 317354d7675SEmmanuel Vadot /* 318354d7675SEmmanuel Vadot * This regulator supports 1.648 - 3.104V on this board 319354d7675SEmmanuel Vadot * but we set a max voltage of anything less than 2.7V 320354d7675SEmmanuel Vadot * to satisfy a condition in sdhci.c that will disable 321354d7675SEmmanuel Vadot * 3.3V SDHCI signaling, which happens to be not really 322354d7675SEmmanuel Vadot * supported on the Xperia Nile/Ganges platform. 323354d7675SEmmanuel Vadot */ 324354d7675SEmmanuel Vadot regulator-min-microvolt = <1648000>; 325354d7675SEmmanuel Vadot regulator-max-microvolt = <2696000>; 326354d7675SEmmanuel Vadot regulator-enable-ramp-delay = <250>; 327354d7675SEmmanuel Vadot regulator-ramp-delay = <0>; 328354d7675SEmmanuel Vadot regulator-allow-set-load; 329354d7675SEmmanuel Vadot }; 330354d7675SEmmanuel Vadot 331354d7675SEmmanuel Vadot vreg_l3b_3p0: l3 { 332354d7675SEmmanuel Vadot regulator-min-microvolt = <2800000>; 333354d7675SEmmanuel Vadot regulator-max-microvolt = <2800000>; 334354d7675SEmmanuel Vadot regulator-enable-ramp-delay = <250>; 335354d7675SEmmanuel Vadot regulator-ramp-delay = <0>; 336354d7675SEmmanuel Vadot regulator-min-microamp = <200>; 337354d7675SEmmanuel Vadot regulator-max-microamp = <600000>; 338354d7675SEmmanuel Vadot regulator-system-load = <100000>; 339354d7675SEmmanuel Vadot regulator-allow-set-load; 340354d7675SEmmanuel Vadot }; 341354d7675SEmmanuel Vadot 3428cc087a1SEmmanuel Vadot vreg_l4b_2p95: l4 { 343354d7675SEmmanuel Vadot regulator-min-microvolt = <2944000>; 344354d7675SEmmanuel Vadot regulator-max-microvolt = <2952000>; 345354d7675SEmmanuel Vadot regulator-enable-ramp-delay = <250>; 346354d7675SEmmanuel Vadot regulator-ramp-delay = <0>; 347354d7675SEmmanuel Vadot 348354d7675SEmmanuel Vadot regulator-min-microamp = <200>; 349354d7675SEmmanuel Vadot regulator-max-microamp = <600000>; 350354d7675SEmmanuel Vadot regulator-system-load = <570000>; 351354d7675SEmmanuel Vadot regulator-allow-set-load; 352354d7675SEmmanuel Vadot }; 353354d7675SEmmanuel Vadot 354354d7675SEmmanuel Vadot /* 355354d7675SEmmanuel Vadot * Downstream specifies a range of 1721-3600mV, 356354d7675SEmmanuel Vadot * but the only assigned consumers are SDHCI2 VMMC 357354d7675SEmmanuel Vadot * and Coresight QPDI that both request pinned 2.95V. 358354d7675SEmmanuel Vadot * Tighten the range to 1.8-3.328 (closest to 3.3) to 359354d7675SEmmanuel Vadot * make the mmc driver happy. 360354d7675SEmmanuel Vadot */ 3618cc087a1SEmmanuel Vadot vreg_l5b_2p95: l5 { 362354d7675SEmmanuel Vadot regulator-min-microvolt = <1800000>; 363354d7675SEmmanuel Vadot regulator-max-microvolt = <3328000>; 364354d7675SEmmanuel Vadot regulator-enable-ramp-delay = <250>; 365354d7675SEmmanuel Vadot regulator-ramp-delay = <0>; 366354d7675SEmmanuel Vadot regulator-allow-set-load; 367354d7675SEmmanuel Vadot regulator-system-load = <800000>; 368354d7675SEmmanuel Vadot }; 369354d7675SEmmanuel Vadot 370354d7675SEmmanuel Vadot vreg_l6b_3p3: l6 { 371354d7675SEmmanuel Vadot regulator-min-microvolt = <1704000>; 372354d7675SEmmanuel Vadot regulator-max-microvolt = <3312000>; 373354d7675SEmmanuel Vadot regulator-enable-ramp-delay = <250>; 374354d7675SEmmanuel Vadot regulator-ramp-delay = <0>; 375354d7675SEmmanuel Vadot }; 376354d7675SEmmanuel Vadot 377354d7675SEmmanuel Vadot vreg_l7b_3p125: l7 { 378354d7675SEmmanuel Vadot regulator-min-microvolt = <2704000>; 379354d7675SEmmanuel Vadot regulator-max-microvolt = <3128000>; 380354d7675SEmmanuel Vadot regulator-enable-ramp-delay = <250>; 381354d7675SEmmanuel Vadot regulator-ramp-delay = <0>; 382354d7675SEmmanuel Vadot }; 383354d7675SEmmanuel Vadot 384354d7675SEmmanuel Vadot vreg_l8b_3p3: l8 { 385354d7675SEmmanuel Vadot regulator-min-microvolt = <2800000>; 386354d7675SEmmanuel Vadot regulator-max-microvolt = <3400000>; 387354d7675SEmmanuel Vadot regulator-enable-ramp-delay = <250>; 388354d7675SEmmanuel Vadot regulator-ramp-delay = <0>; 389354d7675SEmmanuel Vadot }; 390354d7675SEmmanuel Vadot 391354d7675SEmmanuel Vadot /* L9B (870mV) is currently unused */ 392354d7675SEmmanuel Vadot /* L10B (915mV) is currently unused */ 393354d7675SEmmanuel Vadot 394354d7675SEmmanuel Vadot vreg_bob: bob { 395354d7675SEmmanuel Vadot regulator-min-microvolt = <3304000>; 396354d7675SEmmanuel Vadot regulator-max-microvolt = <3624000>; 397354d7675SEmmanuel Vadot regulator-enable-ramp-delay = <500>; 398354d7675SEmmanuel Vadot regulator-ramp-delay = <0>; 399354d7675SEmmanuel Vadot }; 400354d7675SEmmanuel Vadot }; 401354d7675SEmmanuel Vadot 4028bab661aSEmmanuel Vadot regulators-1 { 403354d7675SEmmanuel Vadot compatible = "qcom,rpm-pm660-regulators"; 404354d7675SEmmanuel Vadot 405354d7675SEmmanuel Vadot vdd_s1-supply = <&vph_pwr>; 406354d7675SEmmanuel Vadot vdd_s2-supply = <&vph_pwr>; 407354d7675SEmmanuel Vadot vdd_s3-supply = <&vph_pwr>; 408354d7675SEmmanuel Vadot vdd_s4-supply = <&vph_pwr>; 409354d7675SEmmanuel Vadot vdd_s5-supply = <&vph_pwr>; 410354d7675SEmmanuel Vadot vdd_s6-supply = <&vph_pwr>; 411354d7675SEmmanuel Vadot 412354d7675SEmmanuel Vadot vdd_l1_l6_l7-supply = <&vreg_s5a_1p35>; 413354d7675SEmmanuel Vadot vdd_l2_l3-supply = <&vreg_s2b_1p05>; 414354d7675SEmmanuel Vadot vdd_l5-supply = <&vreg_s2b_1p05>; 415354d7675SEmmanuel Vadot vdd_l8_l9_l10_l11_l12_l13_l14-supply = <&vreg_s4a_2p04>; 416354d7675SEmmanuel Vadot vdd_l15_l16_l17_l18_l19-supply = <&vreg_bob>; 417354d7675SEmmanuel Vadot 418354d7675SEmmanuel Vadot /* 419354d7675SEmmanuel Vadot * S1A (FTAPC0), S2A (FTAPC1), S3A (HFAPC1) are managed 420354d7675SEmmanuel Vadot * by the Core Power Reduction hardened (CPRh) and the 421354d7675SEmmanuel Vadot * Operating State Manager (OSM) HW automatically. 422354d7675SEmmanuel Vadot */ 423354d7675SEmmanuel Vadot 424354d7675SEmmanuel Vadot vreg_s4a_2p04: s4 { 425354d7675SEmmanuel Vadot regulator-min-microvolt = <2040000>; 426354d7675SEmmanuel Vadot regulator-max-microvolt = <2040000>; 427354d7675SEmmanuel Vadot regulator-enable-ramp-delay = <200>; 428354d7675SEmmanuel Vadot regulator-ramp-delay = <0>; 429354d7675SEmmanuel Vadot regulator-always-on; 430354d7675SEmmanuel Vadot }; 431354d7675SEmmanuel Vadot 432354d7675SEmmanuel Vadot vreg_s5a_1p35: s5 { 433354d7675SEmmanuel Vadot regulator-min-microvolt = <1224000>; 434354d7675SEmmanuel Vadot regulator-max-microvolt = <1350000>; 435354d7675SEmmanuel Vadot regulator-enable-ramp-delay = <200>; 436354d7675SEmmanuel Vadot regulator-ramp-delay = <0>; 437354d7675SEmmanuel Vadot }; 438354d7675SEmmanuel Vadot 439354d7675SEmmanuel Vadot vreg_s6a_0p87: s6 { 440354d7675SEmmanuel Vadot regulator-min-microvolt = <504000>; 441354d7675SEmmanuel Vadot regulator-max-microvolt = <992000>; 442354d7675SEmmanuel Vadot regulator-enable-ramp-delay = <150>; 443354d7675SEmmanuel Vadot regulator-ramp-delay = <0>; 444354d7675SEmmanuel Vadot }; 445354d7675SEmmanuel Vadot 446354d7675SEmmanuel Vadot /* LDOs */ 447354d7675SEmmanuel Vadot vreg_l1a_1p225: l1 { 448354d7675SEmmanuel Vadot regulator-min-microvolt = <1226000>; 449354d7675SEmmanuel Vadot regulator-max-microvolt = <1250000>; 450354d7675SEmmanuel Vadot regulator-enable-ramp-delay = <250>; 451354d7675SEmmanuel Vadot regulator-ramp-delay = <0>; 452354d7675SEmmanuel Vadot regulator-allow-set-load; 453354d7675SEmmanuel Vadot }; 454354d7675SEmmanuel Vadot 455354d7675SEmmanuel Vadot vreg_l2a_1p0: l2 { 456354d7675SEmmanuel Vadot regulator-min-microvolt = <944000>; 457354d7675SEmmanuel Vadot regulator-max-microvolt = <1008000>; 458354d7675SEmmanuel Vadot regulator-enable-ramp-delay = <250>; 459354d7675SEmmanuel Vadot regulator-ramp-delay = <0>; 460354d7675SEmmanuel Vadot }; 461354d7675SEmmanuel Vadot 462354d7675SEmmanuel Vadot vreg_l3a_1p0: l3 { 463354d7675SEmmanuel Vadot regulator-min-microvolt = <944000>; 464354d7675SEmmanuel Vadot regulator-max-microvolt = <1008000>; 465354d7675SEmmanuel Vadot regulator-enable-ramp-delay = <250>; 466354d7675SEmmanuel Vadot regulator-ramp-delay = <0>; 467354d7675SEmmanuel Vadot }; 468354d7675SEmmanuel Vadot 469354d7675SEmmanuel Vadot vreg_l5a_0p848: l5 { 470354d7675SEmmanuel Vadot regulator-min-microvolt = <800000>; 471354d7675SEmmanuel Vadot regulator-max-microvolt = <952000>; 472354d7675SEmmanuel Vadot regulator-enable-ramp-delay = <250>; 473354d7675SEmmanuel Vadot regulator-ramp-delay = <0>; 474354d7675SEmmanuel Vadot }; 475354d7675SEmmanuel Vadot 476354d7675SEmmanuel Vadot vreg_l6a_1p3: l6 { 477354d7675SEmmanuel Vadot regulator-min-microvolt = <1304000>; 478354d7675SEmmanuel Vadot regulator-max-microvolt = <1368000>; 479354d7675SEmmanuel Vadot regulator-allow-set-load; 480354d7675SEmmanuel Vadot regulator-enable-ramp-delay = <250>; 481354d7675SEmmanuel Vadot regulator-ramp-delay = <0>; 482354d7675SEmmanuel Vadot }; 483354d7675SEmmanuel Vadot 484354d7675SEmmanuel Vadot vreg_l7a_1p2: l7 { 485354d7675SEmmanuel Vadot regulator-min-microvolt = <1200000>; 486354d7675SEmmanuel Vadot regulator-max-microvolt = <1200000>; 487354d7675SEmmanuel Vadot regulator-enable-ramp-delay = <250>; 488354d7675SEmmanuel Vadot regulator-ramp-delay = <0>; 489354d7675SEmmanuel Vadot }; 490354d7675SEmmanuel Vadot 491354d7675SEmmanuel Vadot vreg_l8a_1p8: l8 { 492354d7675SEmmanuel Vadot regulator-min-microvolt = <1800000>; 493354d7675SEmmanuel Vadot regulator-max-microvolt = <1800000>; 494354d7675SEmmanuel Vadot regulator-enable-ramp-delay = <250>; 495354d7675SEmmanuel Vadot regulator-ramp-delay = <0>; 496354d7675SEmmanuel Vadot regulator-system-load = <325000>; 497354d7675SEmmanuel Vadot regulator-allow-set-load; 498354d7675SEmmanuel Vadot }; 499354d7675SEmmanuel Vadot 500354d7675SEmmanuel Vadot vreg_l9a_1p8: l9 { 501354d7675SEmmanuel Vadot regulator-min-microvolt = <1804000>; 502354d7675SEmmanuel Vadot regulator-max-microvolt = <1896000>; 503354d7675SEmmanuel Vadot regulator-enable-ramp-delay = <250>; 504354d7675SEmmanuel Vadot regulator-ramp-delay = <0>; 505354d7675SEmmanuel Vadot regulator-allow-set-load; 506354d7675SEmmanuel Vadot }; 507354d7675SEmmanuel Vadot 508354d7675SEmmanuel Vadot vreg_l10a_1p8: l10 { 509354d7675SEmmanuel Vadot regulator-min-microvolt = <1800000>; 510354d7675SEmmanuel Vadot regulator-max-microvolt = <1944000>; 511354d7675SEmmanuel Vadot regulator-enable-ramp-delay = <250>; 512354d7675SEmmanuel Vadot regulator-ramp-delay = <0>; 513354d7675SEmmanuel Vadot regulator-allow-set-load; 514354d7675SEmmanuel Vadot }; 515354d7675SEmmanuel Vadot 516354d7675SEmmanuel Vadot vreg_l11a_1p8: l11 { 517354d7675SEmmanuel Vadot regulator-min-microvolt = <1784000>; 518354d7675SEmmanuel Vadot regulator-max-microvolt = <1944000>; 519354d7675SEmmanuel Vadot regulator-enable-ramp-delay = <250>; 520354d7675SEmmanuel Vadot regulator-ramp-delay = <0>; 521354d7675SEmmanuel Vadot }; 522354d7675SEmmanuel Vadot 523354d7675SEmmanuel Vadot vreg_l12a_1p8: l12 { 524354d7675SEmmanuel Vadot regulator-min-microvolt = <1800000>; 525354d7675SEmmanuel Vadot regulator-max-microvolt = <1944000>; 526354d7675SEmmanuel Vadot regulator-enable-ramp-delay = <250>; 527354d7675SEmmanuel Vadot regulator-ramp-delay = <0>; 528354d7675SEmmanuel Vadot }; 529354d7675SEmmanuel Vadot 530354d7675SEmmanuel Vadot /* This gives power to the LPDDR4: never turn it off! */ 531354d7675SEmmanuel Vadot vreg_l13a_1p8: l13 { 532354d7675SEmmanuel Vadot regulator-min-microvolt = <1800000>; 533354d7675SEmmanuel Vadot regulator-max-microvolt = <1944000>; 534354d7675SEmmanuel Vadot regulator-enable-ramp-delay = <250>; 535354d7675SEmmanuel Vadot regulator-ramp-delay = <0>; 536354d7675SEmmanuel Vadot regulator-boot-on; 537354d7675SEmmanuel Vadot regulator-always-on; 538354d7675SEmmanuel Vadot }; 539354d7675SEmmanuel Vadot 540354d7675SEmmanuel Vadot vreg_l14a_1p8: l14 { 541354d7675SEmmanuel Vadot regulator-min-microvolt = <1710000>; 542354d7675SEmmanuel Vadot regulator-max-microvolt = <1904000>; 543354d7675SEmmanuel Vadot regulator-enable-ramp-delay = <250>; 544354d7675SEmmanuel Vadot regulator-ramp-delay = <0>; 545354d7675SEmmanuel Vadot }; 546354d7675SEmmanuel Vadot 547354d7675SEmmanuel Vadot vreg_l15a_1p8: l15 { 548354d7675SEmmanuel Vadot regulator-min-microvolt = <1648000>; 549354d7675SEmmanuel Vadot regulator-max-microvolt = <2952000>; 550354d7675SEmmanuel Vadot regulator-enable-ramp-delay = <250>; 551354d7675SEmmanuel Vadot regulator-ramp-delay = <0>; 552354d7675SEmmanuel Vadot }; 553354d7675SEmmanuel Vadot 554354d7675SEmmanuel Vadot /* L16A (2.70V) is unused */ 555354d7675SEmmanuel Vadot 556354d7675SEmmanuel Vadot vreg_l17a_1p8: l17 { 557354d7675SEmmanuel Vadot regulator-min-microvolt = <1648000>; 558354d7675SEmmanuel Vadot regulator-max-microvolt = <2952000>; 559354d7675SEmmanuel Vadot regulator-enable-ramp-delay = <250>; 560354d7675SEmmanuel Vadot regulator-ramp-delay = <0>; 561354d7675SEmmanuel Vadot }; 562354d7675SEmmanuel Vadot 563354d7675SEmmanuel Vadot vreg_l18a_1v8: l18 { 564354d7675SEmmanuel Vadot regulator-min-microvolt = <1800000>; 565354d7675SEmmanuel Vadot regulator-max-microvolt = <1800000>; 566354d7675SEmmanuel Vadot regulator-enable-ramp-delay = <250>; 567354d7675SEmmanuel Vadot regulator-ramp-delay = <10>; 568354d7675SEmmanuel Vadot regulator-min-microamp = <200>; 569354d7675SEmmanuel Vadot regulator-max-microamp = <50000>; 570354d7675SEmmanuel Vadot regulator-system-load = <10000>; 571354d7675SEmmanuel Vadot regulator-allow-set-load; 572354d7675SEmmanuel Vadot }; 573354d7675SEmmanuel Vadot 574354d7675SEmmanuel Vadot vreg_l19a_3p3: l19 { 575354d7675SEmmanuel Vadot regulator-min-microvolt = <3312000>; 576354d7675SEmmanuel Vadot regulator-max-microvolt = <3400000>; 577354d7675SEmmanuel Vadot regulator-enable-ramp-delay = <250>; 578354d7675SEmmanuel Vadot regulator-ramp-delay = <0>; 579354d7675SEmmanuel Vadot regulator-allow-set-load; 580354d7675SEmmanuel Vadot }; 581354d7675SEmmanuel Vadot }; 582354d7675SEmmanuel Vadot}; 583354d7675SEmmanuel Vadot 584b97ee269SEmmanuel Vadot&sdc2_state_on { 5858bab661aSEmmanuel Vadot sd-cd-pins { 586b97ee269SEmmanuel Vadot pins = "gpio54"; 5878bab661aSEmmanuel Vadot function = "gpio"; 588b97ee269SEmmanuel Vadot bias-pull-up; 589b97ee269SEmmanuel Vadot drive-strength = <2>; 590b97ee269SEmmanuel Vadot }; 591b97ee269SEmmanuel Vadot}; 592b97ee269SEmmanuel Vadot 593b97ee269SEmmanuel Vadot&sdc2_state_off { 5948bab661aSEmmanuel Vadot sd-cd-pins { 595b97ee269SEmmanuel Vadot pins = "gpio54"; 5968bab661aSEmmanuel Vadot function = "gpio"; 597b97ee269SEmmanuel Vadot bias-disable; 598b97ee269SEmmanuel Vadot drive-strength = <2>; 599b97ee269SEmmanuel Vadot }; 600b97ee269SEmmanuel Vadot}; 601b97ee269SEmmanuel Vadot 602354d7675SEmmanuel Vadot&sdhc_1 { 603354d7675SEmmanuel Vadot status = "okay"; 604354d7675SEmmanuel Vadot supports-cqe; 605354d7675SEmmanuel Vadot 606354d7675SEmmanuel Vadot /* SoMC Nile platform's eMMC doesn't support HS200 mode */ 607354d7675SEmmanuel Vadot mmc-ddr-1_8v; 608354d7675SEmmanuel Vadot mmc-hs400-1_8v; 609354d7675SEmmanuel Vadot mmc-hs400-enhanced-strobe; 610354d7675SEmmanuel Vadot 6118cc087a1SEmmanuel Vadot vmmc-supply = <&vreg_l4b_2p95>; 612354d7675SEmmanuel Vadot vqmmc-supply = <&vreg_l8a_1p8>; 613354d7675SEmmanuel Vadot}; 614354d7675SEmmanuel Vadot 615354d7675SEmmanuel Vadot&sdhc_2 { 616354d7675SEmmanuel Vadot status = "okay"; 617354d7675SEmmanuel Vadot 6188cc087a1SEmmanuel Vadot vmmc-supply = <&vreg_l5b_2p95>; 619354d7675SEmmanuel Vadot vqmmc-supply = <&vreg_l2b_2p95>; 620354d7675SEmmanuel Vadot}; 621354d7675SEmmanuel Vadot 622354d7675SEmmanuel Vadot&tlmm { 623354d7675SEmmanuel Vadot gpio-reserved-ranges = <8 4>; 624354d7675SEmmanuel Vadot 6258bab661aSEmmanuel Vadot ts_int_active: ts-int-active-state { 626354d7675SEmmanuel Vadot pins = "gpio45"; 6278bab661aSEmmanuel Vadot function = "gpio"; 628354d7675SEmmanuel Vadot drive-strength = <8>; 629354d7675SEmmanuel Vadot bias-pull-up; 630354d7675SEmmanuel Vadot }; 631354d7675SEmmanuel Vadot 6328bab661aSEmmanuel Vadot ts_lcd_id_active: ts-lcd-id-active-state { 633354d7675SEmmanuel Vadot pins = "gpio56"; 6348bab661aSEmmanuel Vadot function = "gpio"; 635354d7675SEmmanuel Vadot drive-strength = <8>; 636354d7675SEmmanuel Vadot bias-disable; 637354d7675SEmmanuel Vadot }; 638354d7675SEmmanuel Vadot 6398bab661aSEmmanuel Vadot imx300_vana_default: imx300-vana-default-state { 640354d7675SEmmanuel Vadot pins = "gpio50"; 641354d7675SEmmanuel Vadot function = "gpio"; 642354d7675SEmmanuel Vadot bias-disable; 643354d7675SEmmanuel Vadot drive-strength = <2>; 644354d7675SEmmanuel Vadot }; 645354d7675SEmmanuel Vadot 6468bab661aSEmmanuel Vadot imx219_vana_default: imx219-vana-default-state { 647354d7675SEmmanuel Vadot pins = "gpio51"; 648354d7675SEmmanuel Vadot function = "gpio"; 649354d7675SEmmanuel Vadot bias-disable; 650354d7675SEmmanuel Vadot drive-strength = <2>; 651354d7675SEmmanuel Vadot }; 652354d7675SEmmanuel Vadot 6538bab661aSEmmanuel Vadot cam_vdig_default: cam-vdig-default-state { 654354d7675SEmmanuel Vadot pins = "gpio52"; 655354d7675SEmmanuel Vadot function = "gpio"; 656354d7675SEmmanuel Vadot bias-disable; 657354d7675SEmmanuel Vadot drive-strength = <2>; 658354d7675SEmmanuel Vadot }; 659354d7675SEmmanuel Vadot}; 660354d7675SEmmanuel Vadot 661354d7675SEmmanuel Vadot&usb3 { 662354d7675SEmmanuel Vadot status = "okay"; 663354d7675SEmmanuel Vadot}; 664354d7675SEmmanuel Vadot 665354d7675SEmmanuel Vadot&usb3_dwc3 { 666354d7675SEmmanuel Vadot dr_mode = "peripheral"; 667354d7675SEmmanuel Vadot extcon = <&extcon_usb>; 668c66ec88fSEmmanuel Vadot}; 669