1e781633bSKonrad Dybcio// SPDX-License-Identifier: BSD-3-Clause 2e781633bSKonrad Dybcio/* 38b36c824SAngeloGioacchino Del Regno * Copyright (c) 2020, Konrad Dybcio <konrad.dybcio@somainline.org> 48b36c824SAngeloGioacchino Del Regno * Copyright (c) 2020, AngeloGioacchino Del Regno 58b36c824SAngeloGioacchino Del Regno * <angelogioacchino.delregno@somainline.org> 6e781633bSKonrad Dybcio */ 7e781633bSKonrad Dybcio 8e781633bSKonrad Dybcio#include "pm660.dtsi" 9e781633bSKonrad Dybcio#include "pm660l.dtsi" 10e781633bSKonrad Dybcio#include <dt-bindings/gpio/gpio.h> 11e781633bSKonrad Dybcio#include <dt-bindings/input/input.h> 12e781633bSKonrad Dybcio#include <dt-bindings/input/gpio-keys.h> 13dd764e1aSMarijn Suijten#include <dt-bindings/leds/common.h> 14e781633bSKonrad Dybcio 15e781633bSKonrad Dybcio/ { 16e781633bSKonrad Dybcio /* required for bootloader to select correct board */ 17e781633bSKonrad Dybcio qcom,msm-id = <318 0>; 18e781633bSKonrad Dybcio qcom,board-id = <8 1>; 19e781633bSKonrad Dybcio qcom,pmic-id = <0x1001b 0x101011a 0x00 0x00 0x1001b 0x201011a 0x00 0x00>; 20e781633bSKonrad Dybcio 21e781633bSKonrad Dybcio /* This part enables graphical output via bootloader-enabled display */ 22e781633bSKonrad Dybcio chosen { 23e781633bSKonrad Dybcio bootargs = "earlycon=tty0 console=tty0"; 24e781633bSKonrad Dybcio 25e781633bSKonrad Dybcio #address-cells = <2>; 26e781633bSKonrad Dybcio #size-cells = <2>; 27e781633bSKonrad Dybcio ranges; 28e781633bSKonrad Dybcio 29e781633bSKonrad Dybcio stdout-path = "framebuffer0"; 30e781633bSKonrad Dybcio 31e781633bSKonrad Dybcio framebuffer0: framebuffer@9d400000 { 32e781633bSKonrad Dybcio compatible = "simple-framebuffer"; 33e781633bSKonrad Dybcio reg = <0 0x9d400000 0 (1920 * 1080 * 4)>; 34e781633bSKonrad Dybcio width = <1080>; 35e781633bSKonrad Dybcio height = <1920>; 36e781633bSKonrad Dybcio stride = <(1080 * 4)>; 37e781633bSKonrad Dybcio format = "a8r8g8b8"; 38e781633bSKonrad Dybcio status = "okay"; 39e781633bSKonrad Dybcio }; 40e781633bSKonrad Dybcio }; 41e781633bSKonrad Dybcio 428b36c824SAngeloGioacchino Del Regno board_vbat: vbat-regulator { 438b36c824SAngeloGioacchino Del Regno compatible = "regulator-fixed"; 448b36c824SAngeloGioacchino Del Regno regulator-name = "VBAT"; 458b36c824SAngeloGioacchino Del Regno 468b36c824SAngeloGioacchino Del Regno regulator-min-microvolt = <4000000>; 478b36c824SAngeloGioacchino Del Regno regulator-max-microvolt = <4000000>; 488b36c824SAngeloGioacchino Del Regno regulator-always-on; 498b36c824SAngeloGioacchino Del Regno regulator-boot-on; 508b36c824SAngeloGioacchino Del Regno }; 518b36c824SAngeloGioacchino Del Regno 528b36c824SAngeloGioacchino Del Regno vph_pwr: vph-pwr-regulator { 538b36c824SAngeloGioacchino Del Regno compatible = "regulator-fixed"; 548b36c824SAngeloGioacchino Del Regno regulator-name = "vph_pwr"; 558b36c824SAngeloGioacchino Del Regno 568b36c824SAngeloGioacchino Del Regno regulator-always-on; 578b36c824SAngeloGioacchino Del Regno regulator-boot-on; 588b36c824SAngeloGioacchino Del Regno }; 598b36c824SAngeloGioacchino Del Regno 608b36c824SAngeloGioacchino Del Regno cam_vdig_imx300_219_vreg: cam_vdig_imx300_219_vreg { 618b36c824SAngeloGioacchino Del Regno compatible = "regulator-fixed"; 628b36c824SAngeloGioacchino Del Regno regulator-name = "cam_vdig_imx300_219_vreg"; 638b36c824SAngeloGioacchino Del Regno startup-delay-us = <0>; 648b36c824SAngeloGioacchino Del Regno enable-active-high; 658b36c824SAngeloGioacchino Del Regno gpio = <&tlmm 52 GPIO_ACTIVE_HIGH>; 668b36c824SAngeloGioacchino Del Regno pinctrl-names = "default"; 678b36c824SAngeloGioacchino Del Regno pinctrl-0 = <&cam_vdig_default>; 688b36c824SAngeloGioacchino Del Regno }; 698b36c824SAngeloGioacchino Del Regno 708b36c824SAngeloGioacchino Del Regno cam_vana_front_vreg: cam_vana_front_vreg { 718b36c824SAngeloGioacchino Del Regno compatible = "regulator-fixed"; 728b36c824SAngeloGioacchino Del Regno regulator-name = "cam_vana_front_vreg"; 738b36c824SAngeloGioacchino Del Regno startup-delay-us = <0>; 748b36c824SAngeloGioacchino Del Regno enable-active-high; 758b36c824SAngeloGioacchino Del Regno gpio = <&tlmm 51 GPIO_ACTIVE_HIGH>; 768b36c824SAngeloGioacchino Del Regno pinctrl-names = "default"; 778b36c824SAngeloGioacchino Del Regno pinctrl-0 = <&imx219_vana_default>; 788b36c824SAngeloGioacchino Del Regno }; 798b36c824SAngeloGioacchino Del Regno 808b36c824SAngeloGioacchino Del Regno cam_vana_rear_vreg: cam_vana_rear_vreg { 818b36c824SAngeloGioacchino Del Regno compatible = "regulator-fixed"; 828b36c824SAngeloGioacchino Del Regno regulator-name = "cam_vana_rear_vreg"; 838b36c824SAngeloGioacchino Del Regno startup-delay-us = <0>; 848b36c824SAngeloGioacchino Del Regno enable-active-high; 858b36c824SAngeloGioacchino Del Regno gpio = <&tlmm 50 GPIO_ACTIVE_HIGH>; 868b36c824SAngeloGioacchino Del Regno regulator-always-on; 878b36c824SAngeloGioacchino Del Regno pinctrl-names = "default"; 888b36c824SAngeloGioacchino Del Regno pinctrl-0 = <&imx300_vana_default>; 898b36c824SAngeloGioacchino Del Regno }; 908b36c824SAngeloGioacchino Del Regno 91b08f5cbdSKrzysztof Kozlowski gpio-keys { 92e781633bSKonrad Dybcio compatible = "gpio-keys"; 93e781633bSKonrad Dybcio 94b08f5cbdSKrzysztof Kozlowski key-camera-focus { 95e781633bSKonrad Dybcio label = "Camera Focus"; 96e781633bSKonrad Dybcio gpios = <&tlmm 64 GPIO_ACTIVE_LOW>; 97e781633bSKonrad Dybcio linux,input-type = <1>; 98e781633bSKonrad Dybcio linux,code = <KEY_CAMERA_FOCUS>; 99e781633bSKonrad Dybcio debounce-interval = <15>; 100e781633bSKonrad Dybcio }; 101e781633bSKonrad Dybcio 102b08f5cbdSKrzysztof Kozlowski key-camera-snapshot { 103e781633bSKonrad Dybcio label = "Camera Snapshot"; 104e781633bSKonrad Dybcio gpios = <&tlmm 113 GPIO_ACTIVE_LOW>; 105e781633bSKonrad Dybcio linux,input-type = <1>; 106e781633bSKonrad Dybcio linux,code = <KEY_CAMERA>; 107e781633bSKonrad Dybcio debounce-interval = <15>; 108e781633bSKonrad Dybcio }; 109e781633bSKonrad Dybcio 110b08f5cbdSKrzysztof Kozlowski key-vol-down { 111e781633bSKonrad Dybcio label = "Volume Down"; 112e781633bSKonrad Dybcio gpios = <&pm660l_gpios 7 GPIO_ACTIVE_LOW>; 113e781633bSKonrad Dybcio linux,input-type = <1>; 114e781633bSKonrad Dybcio linux,code = <KEY_VOLUMEDOWN>; 115e781633bSKonrad Dybcio gpio-key,wakeup; 116e781633bSKonrad Dybcio debounce-interval = <15>; 117e781633bSKonrad Dybcio }; 118e781633bSKonrad Dybcio }; 119e781633bSKonrad Dybcio 120e781633bSKonrad Dybcio reserved-memory { 121e781633bSKonrad Dybcio #address-cells = <2>; 122e781633bSKonrad Dybcio #size-cells = <2>; 123e781633bSKonrad Dybcio ranges; 124e781633bSKonrad Dybcio 125e781633bSKonrad Dybcio ramoops@ffc00000 { 126e781633bSKonrad Dybcio compatible = "ramoops"; 127e781633bSKonrad Dybcio reg = <0x0 0xffc00000 0x0 0x100000>; 128e781633bSKonrad Dybcio record-size = <0x10000>; 129e781633bSKonrad Dybcio console-size = <0x60000>; 130e781633bSKonrad Dybcio ftrace-size = <0x10000>; 131e781633bSKonrad Dybcio pmsg-size = <0x20000>; 132e781633bSKonrad Dybcio ecc-size = <16>; 133e781633bSKonrad Dybcio status = "okay"; 134e781633bSKonrad Dybcio }; 135e781633bSKonrad Dybcio 136e781633bSKonrad Dybcio debug_region@ffb00000 { 137e781633bSKonrad Dybcio reg = <0x00 0xffb00000 0x00 0x100000>; 138e781633bSKonrad Dybcio no-map; 139e781633bSKonrad Dybcio }; 140e781633bSKonrad Dybcio 141e781633bSKonrad Dybcio removed_region@85800000 { 142e781633bSKonrad Dybcio reg = <0x00 0x85800000 0x00 0x3700000>; 143e781633bSKonrad Dybcio no-map; 144e781633bSKonrad Dybcio }; 145e781633bSKonrad Dybcio }; 1462c616239SKonrad Dybcio 1472c616239SKonrad Dybcio /* 1482c616239SKonrad Dybcio * Until we hook up type-c detection, we 1492c616239SKonrad Dybcio * have to stick with this. But it works. 1502c616239SKonrad Dybcio */ 1512c616239SKonrad Dybcio extcon_usb: extcon-usb { 1522c616239SKonrad Dybcio compatible = "linux,extcon-usb-gpio"; 1532c616239SKonrad Dybcio id-gpio = <&tlmm 58 GPIO_ACTIVE_HIGH>; 1542c616239SKonrad Dybcio }; 155e781633bSKonrad Dybcio}; 156e781633bSKonrad Dybcio 157bc81940dSKonrad Dybcio&adsp_pil { 158bc81940dSKonrad Dybcio firmware-name = "adsp.mdt"; 159bc81940dSKonrad Dybcio}; 160bc81940dSKonrad Dybcio 161158f80a6SKonrad Dybcio&blsp_i2c1 { 162e781633bSKonrad Dybcio status = "okay"; 163e781633bSKonrad Dybcio 164f8fc1c43SKonrad Dybcio touchscreen: synaptics-rmi4-i2c@70 { 165f8fc1c43SKonrad Dybcio compatible = "syna,rmi4-i2c"; 166f8fc1c43SKonrad Dybcio reg = <0x70>; 167f8fc1c43SKonrad Dybcio #address-cells = <1>; 168f8fc1c43SKonrad Dybcio #size-cells = <0>; 169f8fc1c43SKonrad Dybcio interrupts-extended = <&tlmm 45 0x2008>; 170f8fc1c43SKonrad Dybcio 171f8fc1c43SKonrad Dybcio pinctrl-names = "default"; 172f8fc1c43SKonrad Dybcio pinctrl-0 = <&ts_int_active &ts_lcd_id_active>; 173f8fc1c43SKonrad Dybcio 174f8fc1c43SKonrad Dybcio syna,reset-delay-ms = <200>; 175f8fc1c43SKonrad Dybcio syna,startup-delay-ms = <220>; 176f8fc1c43SKonrad Dybcio 177f8fc1c43SKonrad Dybcio rmi4-f01@1 { 178f8fc1c43SKonrad Dybcio reg = <0x01>; 179f8fc1c43SKonrad Dybcio syna,nosleep-mode = <1>; 180f8fc1c43SKonrad Dybcio }; 181f8fc1c43SKonrad Dybcio 182f8fc1c43SKonrad Dybcio rmi4-f11@11 { 183f8fc1c43SKonrad Dybcio reg = <0x11>; 184f8fc1c43SKonrad Dybcio syna,sensor-type = <1>; 185f8fc1c43SKonrad Dybcio }; 186f8fc1c43SKonrad Dybcio }; 187e781633bSKonrad Dybcio}; 188e781633bSKonrad Dybcio 189158f80a6SKonrad Dybcio&blsp_i2c2 { 190e781633bSKonrad Dybcio status = "okay"; 191e781633bSKonrad Dybcio 192e781633bSKonrad Dybcio /* SMB1351 charger */ 193e781633bSKonrad Dybcio}; 194e781633bSKonrad Dybcio 195e781633bSKonrad Dybcio/* I2C3, 4, 5, 7 and 8 are disabled on this board. */ 196e781633bSKonrad Dybcio 197158f80a6SKonrad Dybcio&blsp_i2c6 { 198e781633bSKonrad Dybcio status = "okay"; 199e781633bSKonrad Dybcio 200e781633bSKonrad Dybcio /* NXP NFC */ 201e781633bSKonrad Dybcio}; 202158f80a6SKonrad Dybcio 203158f80a6SKonrad Dybcio&blsp1_uart2 { 204158f80a6SKonrad Dybcio status = "okay"; 205158f80a6SKonrad Dybcio 206158f80a6SKonrad Dybcio /* MSM serial console */ 207e781633bSKonrad Dybcio}; 208158f80a6SKonrad Dybcio 209158f80a6SKonrad Dybcio&blsp2_uart1 { 210158f80a6SKonrad Dybcio status = "okay"; 211158f80a6SKonrad Dybcio 212158f80a6SKonrad Dybcio /* HCI Bluetooth */ 213e781633bSKonrad Dybcio}; 2148b36c824SAngeloGioacchino Del Regno 215dd764e1aSMarijn Suijten&pm660l_lpg { 216dd764e1aSMarijn Suijten qcom,power-source = <1>; 217dd764e1aSMarijn Suijten 218dd764e1aSMarijn Suijten status = "okay"; 219dd764e1aSMarijn Suijten 220dd764e1aSMarijn Suijten multi-led { 221dd764e1aSMarijn Suijten color = <LED_COLOR_ID_RGB>; 222dd764e1aSMarijn Suijten function = LED_FUNCTION_STATUS; 223dd764e1aSMarijn Suijten 224dd764e1aSMarijn Suijten #address-cells = <1>; 225dd764e1aSMarijn Suijten #size-cells = <0>; 226dd764e1aSMarijn Suijten 227dd764e1aSMarijn Suijten led@1 { 228dd764e1aSMarijn Suijten reg = <1>; 229dd764e1aSMarijn Suijten color = <LED_COLOR_ID_BLUE>; 230dd764e1aSMarijn Suijten }; 231dd764e1aSMarijn Suijten 232dd764e1aSMarijn Suijten led@2 { 233dd764e1aSMarijn Suijten reg = <2>; 234dd764e1aSMarijn Suijten color = <LED_COLOR_ID_GREEN>; 235dd764e1aSMarijn Suijten }; 236dd764e1aSMarijn Suijten 237dd764e1aSMarijn Suijten led@3 { 238dd764e1aSMarijn Suijten reg = <3>; 239dd764e1aSMarijn Suijten color = <LED_COLOR_ID_RED>; 240dd764e1aSMarijn Suijten }; 241dd764e1aSMarijn Suijten }; 242dd764e1aSMarijn Suijten}; 243dd764e1aSMarijn Suijten 2449f6cbe37SDang Huynh&pon_pwrkey { 2459f6cbe37SDang Huynh status = "okay"; 246fcbcd062SKonrad Dybcio}; 2479f6cbe37SDang Huynh 2489f6cbe37SDang Huynh&pon_resin { 2499f6cbe37SDang Huynh status = "okay"; 2509f6cbe37SDang Huynh 2519f6cbe37SDang Huynh linux,code = <KEY_VOLUMEUP>; 252fcbcd062SKonrad Dybcio}; 253fcbcd062SKonrad Dybcio 254696dea7eSDmitry Baryshkov&qusb2phy0 { 2552c616239SKonrad Dybcio status = "okay"; 2562c616239SKonrad Dybcio 2572c616239SKonrad Dybcio vdd-supply = <&vreg_l1b_0p925>; 2582c616239SKonrad Dybcio vdda-pll-supply = <&vreg_l10a_1p8>; 2592c616239SKonrad Dybcio vdda-phy-dpdm-supply = <&vreg_l7b_3p125>; 2602c616239SKonrad Dybcio}; 2612c616239SKonrad Dybcio 2628b36c824SAngeloGioacchino Del Regno&rpm_requests { 263*372698e8SKrzysztof Kozlowski regulators-0 { 2648b36c824SAngeloGioacchino Del Regno compatible = "qcom,rpm-pm660l-regulators"; 2658b36c824SAngeloGioacchino Del Regno 2668b36c824SAngeloGioacchino Del Regno vdd_s1-supply = <&vph_pwr>; 2678b36c824SAngeloGioacchino Del Regno vdd_s2-supply = <&vph_pwr>; 2688b36c824SAngeloGioacchino Del Regno vdd_s3_s4-supply = <&vph_pwr>; 2698b36c824SAngeloGioacchino Del Regno vdd_s5-supply = <&vph_pwr>; 2708b36c824SAngeloGioacchino Del Regno vdd_s6-supply = <&vph_pwr>; 2718b36c824SAngeloGioacchino Del Regno 2728b36c824SAngeloGioacchino Del Regno vdd_l1_l9_l10-supply = <&vreg_s2b_1p05>; 2738b36c824SAngeloGioacchino Del Regno vdd_l2-supply = <&vreg_bob>; 2748b36c824SAngeloGioacchino Del Regno vdd_l3_l5_l7_l8-supply = <&vreg_bob>; 2758b36c824SAngeloGioacchino Del Regno vdd_l4_l6-supply = <&vreg_bob>; 2768b36c824SAngeloGioacchino Del Regno vdd_bob-supply = <&vph_pwr>; 2778b36c824SAngeloGioacchino Del Regno 2788b36c824SAngeloGioacchino Del Regno vreg_s1b_1p125: s1 { 2798b36c824SAngeloGioacchino Del Regno regulator-min-microvolt = <1125000>; 2808b36c824SAngeloGioacchino Del Regno regulator-max-microvolt = <1125000>; 2818b36c824SAngeloGioacchino Del Regno regulator-enable-ramp-delay = <200>; 2828b36c824SAngeloGioacchino Del Regno regulator-ramp-delay = <0>; 2838b36c824SAngeloGioacchino Del Regno }; 2848b36c824SAngeloGioacchino Del Regno 2858b36c824SAngeloGioacchino Del Regno vreg_s2b_1p05: s2 { 2868b36c824SAngeloGioacchino Del Regno regulator-min-microvolt = <1050000>; 2878b36c824SAngeloGioacchino Del Regno regulator-max-microvolt = <1050000>; 2888b36c824SAngeloGioacchino Del Regno regulator-enable-ramp-delay = <200>; 2898b36c824SAngeloGioacchino Del Regno regulator-ramp-delay = <0>; 2908b36c824SAngeloGioacchino Del Regno }; 2918b36c824SAngeloGioacchino Del Regno 2928b36c824SAngeloGioacchino Del Regno /* 2938b36c824SAngeloGioacchino Del Regno * At least on Nile's configuration, S3B/S4B (VDD_CX) and 2948b36c824SAngeloGioacchino Del Regno * S5B (VDD_MX) are managed only through RPM Power Domains. 2958b36c824SAngeloGioacchino Del Regno * Trying to set a voltage on the main supply will create 2968b36c824SAngeloGioacchino Del Regno * havoc and freeze the SoC. 2978b36c824SAngeloGioacchino Del Regno * In any case, reference voltages for these regulators are: 2988b36c824SAngeloGioacchino Del Regno * S3B/S4B: 0.870V 2998b36c824SAngeloGioacchino Del Regno * S5B: 0.915V 3008b36c824SAngeloGioacchino Del Regno */ 3018b36c824SAngeloGioacchino Del Regno 3028b36c824SAngeloGioacchino Del Regno /* LDOs */ 3038b36c824SAngeloGioacchino Del Regno vreg_l1b_0p925: l1 { 3048b36c824SAngeloGioacchino Del Regno regulator-min-microvolt = <920000>; 3058b36c824SAngeloGioacchino Del Regno regulator-max-microvolt = <928000>; 3068b36c824SAngeloGioacchino Del Regno regulator-enable-ramp-delay = <250>; 3078b36c824SAngeloGioacchino Del Regno regulator-ramp-delay = <0>; 3088b36c824SAngeloGioacchino Del Regno regulator-allow-set-load; 3098b36c824SAngeloGioacchino Del Regno }; 3108b36c824SAngeloGioacchino Del Regno 3118b36c824SAngeloGioacchino Del Regno vreg_l2b_2p95: l2 { 3128b36c824SAngeloGioacchino Del Regno /* 3138b36c824SAngeloGioacchino Del Regno * This regulator supports 1.648 - 3.104V on this board 3148b36c824SAngeloGioacchino Del Regno * but we set a max voltage of anything less than 2.7V 3158b36c824SAngeloGioacchino Del Regno * to satisfy a condition in sdhci.c that will disable 3168b36c824SAngeloGioacchino Del Regno * 3.3V SDHCI signaling, which happens to be not really 3178b36c824SAngeloGioacchino Del Regno * supported on the Xperia Nile/Ganges platform. 3188b36c824SAngeloGioacchino Del Regno */ 3198b36c824SAngeloGioacchino Del Regno regulator-min-microvolt = <1648000>; 3208b36c824SAngeloGioacchino Del Regno regulator-max-microvolt = <2696000>; 3218b36c824SAngeloGioacchino Del Regno regulator-enable-ramp-delay = <250>; 3228b36c824SAngeloGioacchino Del Regno regulator-ramp-delay = <0>; 3238b36c824SAngeloGioacchino Del Regno regulator-allow-set-load; 3248b36c824SAngeloGioacchino Del Regno }; 3258b36c824SAngeloGioacchino Del Regno 3268b36c824SAngeloGioacchino Del Regno vreg_l3b_3p0: l3 { 3278b36c824SAngeloGioacchino Del Regno regulator-min-microvolt = <2800000>; 3288b36c824SAngeloGioacchino Del Regno regulator-max-microvolt = <2800000>; 3298b36c824SAngeloGioacchino Del Regno regulator-enable-ramp-delay = <250>; 3308b36c824SAngeloGioacchino Del Regno regulator-ramp-delay = <0>; 3318b36c824SAngeloGioacchino Del Regno regulator-min-microamp = <200>; 3328b36c824SAngeloGioacchino Del Regno regulator-max-microamp = <600000>; 3338b36c824SAngeloGioacchino Del Regno regulator-system-load = <100000>; 3348b36c824SAngeloGioacchino Del Regno regulator-allow-set-load; 3358b36c824SAngeloGioacchino Del Regno }; 3368b36c824SAngeloGioacchino Del Regno 337c22441a7SShawn Guo vreg_l4b_2p95: l4 { 3388b36c824SAngeloGioacchino Del Regno regulator-min-microvolt = <2944000>; 3398b36c824SAngeloGioacchino Del Regno regulator-max-microvolt = <2952000>; 3408b36c824SAngeloGioacchino Del Regno regulator-enable-ramp-delay = <250>; 3418b36c824SAngeloGioacchino Del Regno regulator-ramp-delay = <0>; 3428b36c824SAngeloGioacchino Del Regno 3438b36c824SAngeloGioacchino Del Regno regulator-min-microamp = <200>; 3448b36c824SAngeloGioacchino Del Regno regulator-max-microamp = <600000>; 3458b36c824SAngeloGioacchino Del Regno regulator-system-load = <570000>; 3468b36c824SAngeloGioacchino Del Regno regulator-allow-set-load; 3478b36c824SAngeloGioacchino Del Regno }; 3488b36c824SAngeloGioacchino Del Regno 3498b36c824SAngeloGioacchino Del Regno /* 3508b36c824SAngeloGioacchino Del Regno * Downstream specifies a range of 1721-3600mV, 3518b36c824SAngeloGioacchino Del Regno * but the only assigned consumers are SDHCI2 VMMC 3528b36c824SAngeloGioacchino Del Regno * and Coresight QPDI that both request pinned 2.95V. 3538b36c824SAngeloGioacchino Del Regno * Tighten the range to 1.8-3.328 (closest to 3.3) to 3548b36c824SAngeloGioacchino Del Regno * make the mmc driver happy. 3558b36c824SAngeloGioacchino Del Regno */ 356c22441a7SShawn Guo vreg_l5b_2p95: l5 { 3578b36c824SAngeloGioacchino Del Regno regulator-min-microvolt = <1800000>; 3588b36c824SAngeloGioacchino Del Regno regulator-max-microvolt = <3328000>; 3598b36c824SAngeloGioacchino Del Regno regulator-enable-ramp-delay = <250>; 3608b36c824SAngeloGioacchino Del Regno regulator-ramp-delay = <0>; 3618b36c824SAngeloGioacchino Del Regno regulator-allow-set-load; 362e634d819SKonrad Dybcio regulator-system-load = <800000>; 3638b36c824SAngeloGioacchino Del Regno }; 3648b36c824SAngeloGioacchino Del Regno 3658b36c824SAngeloGioacchino Del Regno vreg_l6b_3p3: l6 { 3668b36c824SAngeloGioacchino Del Regno regulator-min-microvolt = <1704000>; 3678b36c824SAngeloGioacchino Del Regno regulator-max-microvolt = <3312000>; 3688b36c824SAngeloGioacchino Del Regno regulator-enable-ramp-delay = <250>; 3698b36c824SAngeloGioacchino Del Regno regulator-ramp-delay = <0>; 3708b36c824SAngeloGioacchino Del Regno }; 3718b36c824SAngeloGioacchino Del Regno 3728b36c824SAngeloGioacchino Del Regno vreg_l7b_3p125: l7 { 3738b36c824SAngeloGioacchino Del Regno regulator-min-microvolt = <2704000>; 3748b36c824SAngeloGioacchino Del Regno regulator-max-microvolt = <3128000>; 3758b36c824SAngeloGioacchino Del Regno regulator-enable-ramp-delay = <250>; 3768b36c824SAngeloGioacchino Del Regno regulator-ramp-delay = <0>; 3778b36c824SAngeloGioacchino Del Regno }; 3788b36c824SAngeloGioacchino Del Regno 3798b36c824SAngeloGioacchino Del Regno vreg_l8b_3p3: l8 { 3808b36c824SAngeloGioacchino Del Regno regulator-min-microvolt = <2800000>; 3818b36c824SAngeloGioacchino Del Regno regulator-max-microvolt = <3400000>; 3828b36c824SAngeloGioacchino Del Regno regulator-enable-ramp-delay = <250>; 3838b36c824SAngeloGioacchino Del Regno regulator-ramp-delay = <0>; 3848b36c824SAngeloGioacchino Del Regno }; 3858b36c824SAngeloGioacchino Del Regno 3868b36c824SAngeloGioacchino Del Regno /* L9B (870mV) is currently unused */ 3878b36c824SAngeloGioacchino Del Regno /* L10B (915mV) is currently unused */ 3888b36c824SAngeloGioacchino Del Regno 3898b36c824SAngeloGioacchino Del Regno vreg_bob: bob { 3908b36c824SAngeloGioacchino Del Regno regulator-min-microvolt = <3304000>; 3918b36c824SAngeloGioacchino Del Regno regulator-max-microvolt = <3624000>; 3928b36c824SAngeloGioacchino Del Regno regulator-enable-ramp-delay = <500>; 3938b36c824SAngeloGioacchino Del Regno regulator-ramp-delay = <0>; 3948b36c824SAngeloGioacchino Del Regno }; 3958b36c824SAngeloGioacchino Del Regno }; 3968b36c824SAngeloGioacchino Del Regno 397*372698e8SKrzysztof Kozlowski regulators-1 { 3988b36c824SAngeloGioacchino Del Regno compatible = "qcom,rpm-pm660-regulators"; 3998b36c824SAngeloGioacchino Del Regno 4008b36c824SAngeloGioacchino Del Regno vdd_s1-supply = <&vph_pwr>; 4018b36c824SAngeloGioacchino Del Regno vdd_s2-supply = <&vph_pwr>; 4028b36c824SAngeloGioacchino Del Regno vdd_s3-supply = <&vph_pwr>; 4038b36c824SAngeloGioacchino Del Regno vdd_s4-supply = <&vph_pwr>; 4048b36c824SAngeloGioacchino Del Regno vdd_s5-supply = <&vph_pwr>; 4058b36c824SAngeloGioacchino Del Regno vdd_s6-supply = <&vph_pwr>; 4068b36c824SAngeloGioacchino Del Regno 4078b36c824SAngeloGioacchino Del Regno vdd_l1_l6_l7-supply = <&vreg_s5a_1p35>; 4088b36c824SAngeloGioacchino Del Regno vdd_l2_l3-supply = <&vreg_s2b_1p05>; 4098b36c824SAngeloGioacchino Del Regno vdd_l5-supply = <&vreg_s2b_1p05>; 4108b36c824SAngeloGioacchino Del Regno vdd_l8_l9_l10_l11_l12_l13_l14-supply = <&vreg_s4a_2p04>; 4118b36c824SAngeloGioacchino Del Regno vdd_l15_l16_l17_l18_l19-supply = <&vreg_bob>; 4128b36c824SAngeloGioacchino Del Regno 4138b36c824SAngeloGioacchino Del Regno /* 4148b36c824SAngeloGioacchino Del Regno * S1A (FTAPC0), S2A (FTAPC1), S3A (HFAPC1) are managed 4158b36c824SAngeloGioacchino Del Regno * by the Core Power Reduction hardened (CPRh) and the 4168b36c824SAngeloGioacchino Del Regno * Operating State Manager (OSM) HW automatically. 4178b36c824SAngeloGioacchino Del Regno */ 4188b36c824SAngeloGioacchino Del Regno 4198b36c824SAngeloGioacchino Del Regno vreg_s4a_2p04: s4 { 4208b36c824SAngeloGioacchino Del Regno regulator-min-microvolt = <2040000>; 4218b36c824SAngeloGioacchino Del Regno regulator-max-microvolt = <2040000>; 4228b36c824SAngeloGioacchino Del Regno regulator-enable-ramp-delay = <200>; 4238b36c824SAngeloGioacchino Del Regno regulator-ramp-delay = <0>; 4248b36c824SAngeloGioacchino Del Regno regulator-always-on; 4258b36c824SAngeloGioacchino Del Regno }; 4268b36c824SAngeloGioacchino Del Regno 4278b36c824SAngeloGioacchino Del Regno vreg_s5a_1p35: s5 { 4288b36c824SAngeloGioacchino Del Regno regulator-min-microvolt = <1224000>; 4298b36c824SAngeloGioacchino Del Regno regulator-max-microvolt = <1350000>; 4308b36c824SAngeloGioacchino Del Regno regulator-enable-ramp-delay = <200>; 4318b36c824SAngeloGioacchino Del Regno regulator-ramp-delay = <0>; 4328b36c824SAngeloGioacchino Del Regno }; 4338b36c824SAngeloGioacchino Del Regno 4348b36c824SAngeloGioacchino Del Regno vreg_s6a_0p87: s6 { 4358b36c824SAngeloGioacchino Del Regno regulator-min-microvolt = <504000>; 4368b36c824SAngeloGioacchino Del Regno regulator-max-microvolt = <992000>; 4378b36c824SAngeloGioacchino Del Regno regulator-enable-ramp-delay = <150>; 4388b36c824SAngeloGioacchino Del Regno regulator-ramp-delay = <0>; 4398b36c824SAngeloGioacchino Del Regno }; 4408b36c824SAngeloGioacchino Del Regno 4418b36c824SAngeloGioacchino Del Regno /* LDOs */ 4428b36c824SAngeloGioacchino Del Regno vreg_l1a_1p225: l1 { 4438b36c824SAngeloGioacchino Del Regno regulator-min-microvolt = <1226000>; 4448b36c824SAngeloGioacchino Del Regno regulator-max-microvolt = <1250000>; 4458b36c824SAngeloGioacchino Del Regno regulator-enable-ramp-delay = <250>; 4468b36c824SAngeloGioacchino Del Regno regulator-ramp-delay = <0>; 4478b36c824SAngeloGioacchino Del Regno regulator-allow-set-load; 4488b36c824SAngeloGioacchino Del Regno }; 4498b36c824SAngeloGioacchino Del Regno 4508b36c824SAngeloGioacchino Del Regno vreg_l2a_1p0: l2 { 4518b36c824SAngeloGioacchino Del Regno regulator-min-microvolt = <944000>; 4528b36c824SAngeloGioacchino Del Regno regulator-max-microvolt = <1008000>; 4538b36c824SAngeloGioacchino Del Regno regulator-enable-ramp-delay = <250>; 4548b36c824SAngeloGioacchino Del Regno regulator-ramp-delay = <0>; 4558b36c824SAngeloGioacchino Del Regno }; 4568b36c824SAngeloGioacchino Del Regno 4578b36c824SAngeloGioacchino Del Regno vreg_l3a_1p0: l3 { 4588b36c824SAngeloGioacchino Del Regno regulator-min-microvolt = <944000>; 4598b36c824SAngeloGioacchino Del Regno regulator-max-microvolt = <1008000>; 4608b36c824SAngeloGioacchino Del Regno regulator-enable-ramp-delay = <250>; 4618b36c824SAngeloGioacchino Del Regno regulator-ramp-delay = <0>; 4628b36c824SAngeloGioacchino Del Regno }; 4638b36c824SAngeloGioacchino Del Regno 4648b36c824SAngeloGioacchino Del Regno vreg_l5a_0p848: l5 { 4658b36c824SAngeloGioacchino Del Regno regulator-min-microvolt = <800000>; 4668b36c824SAngeloGioacchino Del Regno regulator-max-microvolt = <952000>; 4678b36c824SAngeloGioacchino Del Regno regulator-enable-ramp-delay = <250>; 4688b36c824SAngeloGioacchino Del Regno regulator-ramp-delay = <0>; 4698b36c824SAngeloGioacchino Del Regno }; 4708b36c824SAngeloGioacchino Del Regno 4718b36c824SAngeloGioacchino Del Regno vreg_l6a_1p3: l6 { 4728b36c824SAngeloGioacchino Del Regno regulator-min-microvolt = <1304000>; 4738b36c824SAngeloGioacchino Del Regno regulator-max-microvolt = <1368000>; 4748b36c824SAngeloGioacchino Del Regno regulator-allow-set-load; 4758b36c824SAngeloGioacchino Del Regno regulator-enable-ramp-delay = <250>; 4768b36c824SAngeloGioacchino Del Regno regulator-ramp-delay = <0>; 4778b36c824SAngeloGioacchino Del Regno }; 4788b36c824SAngeloGioacchino Del Regno 4798b36c824SAngeloGioacchino Del Regno vreg_l7a_1p2: l7 { 4808b36c824SAngeloGioacchino Del Regno regulator-min-microvolt = <1200000>; 4818b36c824SAngeloGioacchino Del Regno regulator-max-microvolt = <1200000>; 4828b36c824SAngeloGioacchino Del Regno regulator-enable-ramp-delay = <250>; 4838b36c824SAngeloGioacchino Del Regno regulator-ramp-delay = <0>; 4848b36c824SAngeloGioacchino Del Regno }; 4858b36c824SAngeloGioacchino Del Regno 4868b36c824SAngeloGioacchino Del Regno vreg_l8a_1p8: l8 { 4878b36c824SAngeloGioacchino Del Regno regulator-min-microvolt = <1800000>; 4888b36c824SAngeloGioacchino Del Regno regulator-max-microvolt = <1800000>; 4898b36c824SAngeloGioacchino Del Regno regulator-enable-ramp-delay = <250>; 4908b36c824SAngeloGioacchino Del Regno regulator-ramp-delay = <0>; 4918b36c824SAngeloGioacchino Del Regno regulator-system-load = <325000>; 4928b36c824SAngeloGioacchino Del Regno regulator-allow-set-load; 4938b36c824SAngeloGioacchino Del Regno }; 4948b36c824SAngeloGioacchino Del Regno 4958b36c824SAngeloGioacchino Del Regno vreg_l9a_1p8: l9 { 4968b36c824SAngeloGioacchino Del Regno regulator-min-microvolt = <1804000>; 4978b36c824SAngeloGioacchino Del Regno regulator-max-microvolt = <1896000>; 4988b36c824SAngeloGioacchino Del Regno regulator-enable-ramp-delay = <250>; 4998b36c824SAngeloGioacchino Del Regno regulator-ramp-delay = <0>; 5008b36c824SAngeloGioacchino Del Regno regulator-allow-set-load; 5018b36c824SAngeloGioacchino Del Regno }; 5028b36c824SAngeloGioacchino Del Regno 5038b36c824SAngeloGioacchino Del Regno vreg_l10a_1p8: l10 { 5048b36c824SAngeloGioacchino Del Regno regulator-min-microvolt = <1800000>; 5058b36c824SAngeloGioacchino Del Regno regulator-max-microvolt = <1944000>; 5068b36c824SAngeloGioacchino Del Regno regulator-enable-ramp-delay = <250>; 5078b36c824SAngeloGioacchino Del Regno regulator-ramp-delay = <0>; 5088b36c824SAngeloGioacchino Del Regno regulator-allow-set-load; 5098b36c824SAngeloGioacchino Del Regno }; 5108b36c824SAngeloGioacchino Del Regno 5118b36c824SAngeloGioacchino Del Regno vreg_l11a_1p8: l11 { 5128b36c824SAngeloGioacchino Del Regno regulator-min-microvolt = <1784000>; 5138b36c824SAngeloGioacchino Del Regno regulator-max-microvolt = <1944000>; 5148b36c824SAngeloGioacchino Del Regno regulator-enable-ramp-delay = <250>; 5158b36c824SAngeloGioacchino Del Regno regulator-ramp-delay = <0>; 5168b36c824SAngeloGioacchino Del Regno }; 5178b36c824SAngeloGioacchino Del Regno 5188b36c824SAngeloGioacchino Del Regno vreg_l12a_1p8: l12 { 5198b36c824SAngeloGioacchino Del Regno regulator-min-microvolt = <1800000>; 5208b36c824SAngeloGioacchino Del Regno regulator-max-microvolt = <1944000>; 5218b36c824SAngeloGioacchino Del Regno regulator-enable-ramp-delay = <250>; 5228b36c824SAngeloGioacchino Del Regno regulator-ramp-delay = <0>; 5238b36c824SAngeloGioacchino Del Regno }; 5248b36c824SAngeloGioacchino Del Regno 5258b36c824SAngeloGioacchino Del Regno /* This gives power to the LPDDR4: never turn it off! */ 5268b36c824SAngeloGioacchino Del Regno vreg_l13a_1p8: l13 { 5278b36c824SAngeloGioacchino Del Regno regulator-min-microvolt = <1800000>; 5288b36c824SAngeloGioacchino Del Regno regulator-max-microvolt = <1944000>; 5298b36c824SAngeloGioacchino Del Regno regulator-enable-ramp-delay = <250>; 5308b36c824SAngeloGioacchino Del Regno regulator-ramp-delay = <0>; 5318b36c824SAngeloGioacchino Del Regno regulator-boot-on; 5328b36c824SAngeloGioacchino Del Regno regulator-always-on; 5338b36c824SAngeloGioacchino Del Regno }; 5348b36c824SAngeloGioacchino Del Regno 5358b36c824SAngeloGioacchino Del Regno vreg_l14a_1p8: l14 { 5368b36c824SAngeloGioacchino Del Regno regulator-min-microvolt = <1710000>; 5378b36c824SAngeloGioacchino Del Regno regulator-max-microvolt = <1904000>; 5388b36c824SAngeloGioacchino Del Regno regulator-enable-ramp-delay = <250>; 5398b36c824SAngeloGioacchino Del Regno regulator-ramp-delay = <0>; 5408b36c824SAngeloGioacchino Del Regno }; 5418b36c824SAngeloGioacchino Del Regno 5428b36c824SAngeloGioacchino Del Regno vreg_l15a_1p8: l15 { 5438b36c824SAngeloGioacchino Del Regno regulator-min-microvolt = <1648000>; 5448b36c824SAngeloGioacchino Del Regno regulator-max-microvolt = <2952000>; 5458b36c824SAngeloGioacchino Del Regno regulator-enable-ramp-delay = <250>; 5468b36c824SAngeloGioacchino Del Regno regulator-ramp-delay = <0>; 5478b36c824SAngeloGioacchino Del Regno }; 5488b36c824SAngeloGioacchino Del Regno 5498b36c824SAngeloGioacchino Del Regno /* L16A (2.70V) is unused */ 5508b36c824SAngeloGioacchino Del Regno 5518b36c824SAngeloGioacchino Del Regno vreg_l17a_1p8: l17 { 5528b36c824SAngeloGioacchino Del Regno regulator-min-microvolt = <1648000>; 5538b36c824SAngeloGioacchino Del Regno regulator-max-microvolt = <2952000>; 5548b36c824SAngeloGioacchino Del Regno regulator-enable-ramp-delay = <250>; 5558b36c824SAngeloGioacchino Del Regno regulator-ramp-delay = <0>; 5568b36c824SAngeloGioacchino Del Regno }; 5578b36c824SAngeloGioacchino Del Regno 5588b36c824SAngeloGioacchino Del Regno vreg_l18a_1v8: l18 { 5598b36c824SAngeloGioacchino Del Regno regulator-min-microvolt = <1800000>; 5608b36c824SAngeloGioacchino Del Regno regulator-max-microvolt = <1800000>; 5618b36c824SAngeloGioacchino Del Regno regulator-enable-ramp-delay = <250>; 5628b36c824SAngeloGioacchino Del Regno regulator-ramp-delay = <10>; 5638b36c824SAngeloGioacchino Del Regno regulator-min-microamp = <200>; 5648b36c824SAngeloGioacchino Del Regno regulator-max-microamp = <50000>; 5658b36c824SAngeloGioacchino Del Regno regulator-system-load = <10000>; 5668b36c824SAngeloGioacchino Del Regno regulator-allow-set-load; 5678b36c824SAngeloGioacchino Del Regno }; 5688b36c824SAngeloGioacchino Del Regno 5698b36c824SAngeloGioacchino Del Regno vreg_l19a_3p3: l19 { 5708b36c824SAngeloGioacchino Del Regno regulator-min-microvolt = <3312000>; 5718b36c824SAngeloGioacchino Del Regno regulator-max-microvolt = <3400000>; 5728b36c824SAngeloGioacchino Del Regno regulator-enable-ramp-delay = <250>; 5738b36c824SAngeloGioacchino Del Regno regulator-ramp-delay = <0>; 5748b36c824SAngeloGioacchino Del Regno regulator-allow-set-load; 5758b36c824SAngeloGioacchino Del Regno }; 5768b36c824SAngeloGioacchino Del Regno }; 5778b36c824SAngeloGioacchino Del Regno}; 5788b36c824SAngeloGioacchino Del Regno 5795e9bc1baSDmitry Baryshkov&sdc2_state_on { 5805e9bc1baSDmitry Baryshkov sd-cd { 5815e9bc1baSDmitry Baryshkov pins = "gpio54"; 5825e9bc1baSDmitry Baryshkov bias-pull-up; 5835e9bc1baSDmitry Baryshkov drive-strength = <2>; 5845e9bc1baSDmitry Baryshkov }; 5855e9bc1baSDmitry Baryshkov}; 5865e9bc1baSDmitry Baryshkov 5875e9bc1baSDmitry Baryshkov&sdc2_state_off { 5885e9bc1baSDmitry Baryshkov sd-cd { 5895e9bc1baSDmitry Baryshkov pins = "gpio54"; 5905e9bc1baSDmitry Baryshkov bias-disable; 5915e9bc1baSDmitry Baryshkov drive-strength = <2>; 5925e9bc1baSDmitry Baryshkov }; 5935e9bc1baSDmitry Baryshkov}; 5945e9bc1baSDmitry Baryshkov 595158f80a6SKonrad Dybcio&sdhc_1 { 596158f80a6SKonrad Dybcio status = "okay"; 597158f80a6SKonrad Dybcio supports-cqe; 598158f80a6SKonrad Dybcio 599158f80a6SKonrad Dybcio /* SoMC Nile platform's eMMC doesn't support HS200 mode */ 600158f80a6SKonrad Dybcio mmc-ddr-1_8v; 601158f80a6SKonrad Dybcio mmc-hs400-1_8v; 602158f80a6SKonrad Dybcio mmc-hs400-enhanced-strobe; 603158f80a6SKonrad Dybcio 604c22441a7SShawn Guo vmmc-supply = <&vreg_l4b_2p95>; 605158f80a6SKonrad Dybcio vqmmc-supply = <&vreg_l8a_1p8>; 606158f80a6SKonrad Dybcio}; 607158f80a6SKonrad Dybcio 608e634d819SKonrad Dybcio&sdhc_2 { 609e634d819SKonrad Dybcio status = "okay"; 610e634d819SKonrad Dybcio 611c22441a7SShawn Guo vmmc-supply = <&vreg_l5b_2p95>; 612e634d819SKonrad Dybcio vqmmc-supply = <&vreg_l2b_2p95>; 613e634d819SKonrad Dybcio}; 614e634d819SKonrad Dybcio 6158b36c824SAngeloGioacchino Del Regno&tlmm { 6168b36c824SAngeloGioacchino Del Regno gpio-reserved-ranges = <8 4>; 6178b36c824SAngeloGioacchino Del Regno 618f8fc1c43SKonrad Dybcio ts_int_active: ts-int-active { 619f8fc1c43SKonrad Dybcio pins = "gpio45"; 620f8fc1c43SKonrad Dybcio drive-strength = <8>; 621f8fc1c43SKonrad Dybcio bias-pull-up; 622f8fc1c43SKonrad Dybcio }; 623f8fc1c43SKonrad Dybcio 624f8fc1c43SKonrad Dybcio ts_lcd_id_active: ts-lcd-id-active { 625f8fc1c43SKonrad Dybcio pins = "gpio56"; 626f8fc1c43SKonrad Dybcio drive-strength = <8>; 627f8fc1c43SKonrad Dybcio bias-disable; 628f8fc1c43SKonrad Dybcio }; 629f8fc1c43SKonrad Dybcio 6308b36c824SAngeloGioacchino Del Regno imx300_vana_default: imx300-vana-default { 6318b36c824SAngeloGioacchino Del Regno pins = "gpio50"; 6328b36c824SAngeloGioacchino Del Regno function = "gpio"; 6338b36c824SAngeloGioacchino Del Regno bias-disable; 6348b36c824SAngeloGioacchino Del Regno drive-strength = <2>; 6358b36c824SAngeloGioacchino Del Regno }; 6368b36c824SAngeloGioacchino Del Regno 6378b36c824SAngeloGioacchino Del Regno imx219_vana_default: imx219-vana-default { 6388b36c824SAngeloGioacchino Del Regno pins = "gpio51"; 6398b36c824SAngeloGioacchino Del Regno function = "gpio"; 6408b36c824SAngeloGioacchino Del Regno bias-disable; 6418b36c824SAngeloGioacchino Del Regno drive-strength = <2>; 6428b36c824SAngeloGioacchino Del Regno }; 6438b36c824SAngeloGioacchino Del Regno 6448b36c824SAngeloGioacchino Del Regno cam_vdig_default: cam-vdig-default { 6458b36c824SAngeloGioacchino Del Regno pins = "gpio52"; 6468b36c824SAngeloGioacchino Del Regno function = "gpio"; 6478b36c824SAngeloGioacchino Del Regno bias-disable; 6488b36c824SAngeloGioacchino Del Regno drive-strength = <2>; 6498b36c824SAngeloGioacchino Del Regno }; 6508b36c824SAngeloGioacchino Del Regno}; 6512c616239SKonrad Dybcio 6522c616239SKonrad Dybcio&usb3 { 6532c616239SKonrad Dybcio status = "okay"; 6542c616239SKonrad Dybcio}; 6552c616239SKonrad Dybcio 6562c616239SKonrad Dybcio&usb3_dwc3 { 6572c616239SKonrad Dybcio dr_mode = "peripheral"; 6582c616239SKonrad Dybcio extcon = <&extcon_usb>; 6592c616239SKonrad Dybcio}; 660