1551969adSKonrad Dybcio// SPDX-License-Identifier: BSD-3-Clause 2551969adSKonrad Dybcio/* 354b1511eSKonrad Dybcio * Copyright (c) 2020, Konrad Dybcio <konrad.dybcio@somainline.org> 4551969adSKonrad Dybcio */ 5551969adSKonrad Dybcio 6551969adSKonrad Dybcio#include "msm8994.dtsi" 7551969adSKonrad Dybcio#include "pm8994.dtsi" 8551969adSKonrad Dybcio#include "pmi8994.dtsi" 9551969adSKonrad Dybcio#include <dt-bindings/gpio/gpio.h> 10551969adSKonrad Dybcio#include <dt-bindings/input/gpio-keys.h> 11551969adSKonrad Dybcio 12551969adSKonrad Dybcio/ { 13551969adSKonrad Dybcio /* required for bootloader to select correct board */ 1472b31241SKonrad Dybcio 1572b31241SKonrad Dybcio /* 1672b31241SKonrad Dybcio * We support MSM8994 v2 (0x20000) and v2.1 (0x20001). 1772b31241SKonrad Dybcio * The V1 chip (0x0 and 0x10000) is significantly different 1872b31241SKonrad Dybcio * and requires driver-side changes (including CPR, be warned!!). 1972b31241SKonrad Dybcio * Besides that, it's very rare. 2072b31241SKonrad Dybcio */ 2172b31241SKonrad Dybcio qcom,msm-id = <207 0x20000>, <207 0x20001>; 2272b31241SKonrad Dybcio /* We only use pm8994+pmi8994. */ 23551969adSKonrad Dybcio qcom,pmic-id = <0x10009 0x1000a 0x00 0x00>; 2472b31241SKonrad Dybcio /* This property is shared across all kitakami devices. */ 25551969adSKonrad Dybcio qcom,board-id = <8 0>; 26551969adSKonrad Dybcio 27551969adSKonrad Dybcio /* Kitakami firmware doesn't support PSCI */ 28551969adSKonrad Dybcio /delete-node/ psci; 29551969adSKonrad Dybcio 30b08f5cbdSKrzysztof Kozlowski gpio-keys { 31551969adSKonrad Dybcio compatible = "gpio-keys"; 32551969adSKonrad Dybcio autorepeat; 33551969adSKonrad Dybcio 345a4b0b85SKrzysztof Kozlowski button-0 { 35551969adSKonrad Dybcio label = "Volume Down"; 36551969adSKonrad Dybcio gpios = <&pm8994_gpios 2 GPIO_ACTIVE_LOW>; 37551969adSKonrad Dybcio linux,input-type = <1>; 38551969adSKonrad Dybcio linux,code = <KEY_VOLUMEDOWN>; 39551969adSKonrad Dybcio wakeup-source; 40551969adSKonrad Dybcio debounce-interval = <15>; 41551969adSKonrad Dybcio }; 42551969adSKonrad Dybcio 435a4b0b85SKrzysztof Kozlowski button-1 { 44551969adSKonrad Dybcio label = "Volume Up"; 45551969adSKonrad Dybcio gpios = <&pm8994_gpios 3 GPIO_ACTIVE_LOW>; 46551969adSKonrad Dybcio linux,input-type = <1>; 47551969adSKonrad Dybcio linux,code = <KEY_VOLUMEUP>; 48551969adSKonrad Dybcio wakeup-source; 49551969adSKonrad Dybcio debounce-interval = <15>; 50551969adSKonrad Dybcio }; 51551969adSKonrad Dybcio 525a4b0b85SKrzysztof Kozlowski button-2 { 53551969adSKonrad Dybcio label = "Camera Snapshot"; 54551969adSKonrad Dybcio gpios = <&pm8994_gpios 4 GPIO_ACTIVE_LOW>; 55551969adSKonrad Dybcio linux,input-type = <1>; 56551969adSKonrad Dybcio linux,code = <KEY_CAMERA>; 57551969adSKonrad Dybcio wakeup-source; 58551969adSKonrad Dybcio debounce-interval = <15>; 59551969adSKonrad Dybcio }; 60551969adSKonrad Dybcio 615a4b0b85SKrzysztof Kozlowski button-3 { 62551969adSKonrad Dybcio label = "Camera Focus"; 63551969adSKonrad Dybcio gpios = <&pm8994_gpios 5 GPIO_ACTIVE_LOW>; 64551969adSKonrad Dybcio linux,input-type = <1>; 65551969adSKonrad Dybcio linux,code = <KEY_VOLUMEUP>; 66551969adSKonrad Dybcio wakeup-source; 67551969adSKonrad Dybcio debounce-interval = <15>; 68551969adSKonrad Dybcio }; 69551969adSKonrad Dybcio }; 70551969adSKonrad Dybcio 71551969adSKonrad Dybcio reserved-memory { 72551969adSKonrad Dybcio /* This is for getting crash logs using Android downstream kernels */ 73551969adSKonrad Dybcio ramoops@1fe00000 { 74551969adSKonrad Dybcio compatible = "ramoops"; 7574d6d0a1SKonrad Dybcio reg = <0 0x1fe00000 0 0x200000>; 76551969adSKonrad Dybcio console-size = <0x100000>; 77551969adSKonrad Dybcio record-size = <0x10000>; 78551969adSKonrad Dybcio ftrace-size = <0x10000>; 79551969adSKonrad Dybcio pmsg-size = <0x80000>; 80551969adSKonrad Dybcio }; 81551969adSKonrad Dybcio 82551969adSKonrad Dybcio fb_region: fb_region@40000000 { 8374d6d0a1SKonrad Dybcio reg = <0 0x40000000 0 0x1000000>; 8474d6d0a1SKonrad Dybcio no-map; 8574d6d0a1SKonrad Dybcio }; 8674d6d0a1SKonrad Dybcio 8774d6d0a1SKonrad Dybcio tzapp: memory@c7800000 { 8874d6d0a1SKonrad Dybcio reg = <0 0xc7800000 0 0x1900000>; 89551969adSKonrad Dybcio no-map; 90551969adSKonrad Dybcio }; 91551969adSKonrad Dybcio }; 92551969adSKonrad Dybcio}; 93551969adSKonrad Dybcio 94e093d1a2SGustave Monce&blsp1_spi1 { 95551969adSKonrad Dybcio status = "okay"; 96551969adSKonrad Dybcio 97551969adSKonrad Dybcio /* FPC fingerprint reader */ 98551969adSKonrad Dybcio}; 99551969adSKonrad Dybcio 100551969adSKonrad Dybcio/* I2C1 is disabled on this board */ 101551969adSKonrad Dybcio 102e093d1a2SGustave Monce&blsp1_i2c2 { 103551969adSKonrad Dybcio status = "okay"; 104e093d1a2SGustave Monce clock-frequency = <355000>; 105551969adSKonrad Dybcio 10672b31241SKonrad Dybcio /* NXP PN547 NFC */ 107551969adSKonrad Dybcio}; 108551969adSKonrad Dybcio 109e093d1a2SGustave Monce&blsp1_i2c6 { 110551969adSKonrad Dybcio status = "okay"; 111e093d1a2SGustave Monce clock-frequency = <355000>; 112551969adSKonrad Dybcio 113e8528157SKonrad Dybcio touchscreen: rmi4-i2c-dev@2c { 114e8528157SKonrad Dybcio compatible = "syna,rmi4-i2c"; 115e8528157SKonrad Dybcio reg = <0x2c>; 116e8528157SKonrad Dybcio #address-cells = <1>; 117e8528157SKonrad Dybcio #size-cells = <0>; 118e8528157SKonrad Dybcio 119e8528157SKonrad Dybcio interrupt-parent = <&tlmm>; 120e8528157SKonrad Dybcio interrupts = <42 IRQ_TYPE_EDGE_FALLING>; 121e8528157SKonrad Dybcio 122e8528157SKonrad Dybcio pinctrl-names = "default"; 123e8528157SKonrad Dybcio pinctrl-0 = <&ts_int_active &ts_reset_active>; 124e8528157SKonrad Dybcio 125e8528157SKonrad Dybcio vdd-supply = <&pm8994_l22>; 126e8528157SKonrad Dybcio vio-supply = <&pm8994_s4>; 127e8528157SKonrad Dybcio 128e8528157SKonrad Dybcio syna,reset-delay-ms = <220>; 129e8528157SKonrad Dybcio syna,startup-delay-ms = <220>; 130e8528157SKonrad Dybcio 131e8528157SKonrad Dybcio rmi4-f01@1 { 132e8528157SKonrad Dybcio reg = <0x01>; 133e8528157SKonrad Dybcio syna,nosleep-mode = <1>; 134e8528157SKonrad Dybcio }; 135e8528157SKonrad Dybcio 136e8528157SKonrad Dybcio rmi4-f11@11 { 137e8528157SKonrad Dybcio reg = <0x11>; 138e8528157SKonrad Dybcio syna,sensor-type = <1>; 139e8528157SKonrad Dybcio }; 140e8528157SKonrad Dybcio }; 141551969adSKonrad Dybcio}; 142551969adSKonrad Dybcio 143551969adSKonrad Dybcio&blsp1_uart2 { 144551969adSKonrad Dybcio status = "okay"; 145551969adSKonrad Dybcio}; 146551969adSKonrad Dybcio 147e093d1a2SGustave Monce&blsp2_i2c5 { 148e093d1a2SGustave Monce status = "okay"; 149e093d1a2SGustave Monce clock-frequency = <355000>; 150e093d1a2SGustave Monce 151e093d1a2SGustave Monce /* sii8620 HDMI/MHL bridge */ 152e093d1a2SGustave Monce}; 153e093d1a2SGustave Monce 154551969adSKonrad Dybcio&blsp2_uart2 { 155551969adSKonrad Dybcio status = "okay"; 156551969adSKonrad Dybcio}; 157551969adSKonrad Dybcio 15874d6d0a1SKonrad Dybcio/* 15974d6d0a1SKonrad Dybcio * Kitakami bootloader only turns cont_splash on when it detects 16074d6d0a1SKonrad Dybcio * specific downstream MDSS/backlight nodes in the active DTB. 16174d6d0a1SKonrad Dybcio * One way to use that framebuffer is to load a secondary instance of 16274d6d0a1SKonrad Dybcio * LK with the downstream DTB appended and then, only from there, load 16374d6d0a1SKonrad Dybcio * mainline Linux. 16474d6d0a1SKonrad Dybcio */ 16574d6d0a1SKonrad Dybcio&cont_splash_mem { 166690e8993SKonrad Dybcio reg = <0 0x03401000 0 0x2200000>; 16774d6d0a1SKonrad Dybcio}; 16874d6d0a1SKonrad Dybcio 169e9783584SKonrad Dybcio&pmi8994_spmi_regulators { 170e9783584SKonrad Dybcio /* 171e9783584SKonrad Dybcio * Yeah, this one *is* managed by RPMPD, but also needs 172e9783584SKonrad Dybcio * to be hacked up as a-o due to the GPU device only accepting a single 173e9783584SKonrad Dybcio * power domain.. which still isn't enough and forces us to bind 174e9783584SKonrad Dybcio * OXILI_CX and OXILI_GX together! 175e9783584SKonrad Dybcio */ 176*3555dd52SKrzysztof Kozlowski vdd_gfx: s2 { 177e9783584SKonrad Dybcio regulator-name = "VDD_GFX"; 178e9783584SKonrad Dybcio regulator-min-microvolt = <980000>; 179e9783584SKonrad Dybcio regulator-max-microvolt = <980000>; 180e9783584SKonrad Dybcio 181e9783584SKonrad Dybcio /* hack until we rig up the gpu consumer */ 182e9783584SKonrad Dybcio regulator-always-on; 183e9783584SKonrad Dybcio }; 184e9783584SKonrad Dybcio}; 185e9783584SKonrad Dybcio 186551969adSKonrad Dybcio&rpm_requests { 187410e1619SKonrad Dybcio /* PMI8994 should probe first, because pmi8994_bby supplies some of PM8994's regulators */ 188372698e8SKrzysztof Kozlowski pmi8994_regulators: regulators-0 { 189410e1619SKonrad Dybcio compatible = "qcom,rpm-pmi8994-regulators"; 190410e1619SKonrad Dybcio 191410e1619SKonrad Dybcio vdd_s1-supply = <&vph_pwr>; 192410e1619SKonrad Dybcio vdd_bst_byp-supply = <&vph_pwr>; 193410e1619SKonrad Dybcio 194410e1619SKonrad Dybcio pmi8994_s1: s1 { 195410e1619SKonrad Dybcio regulator-min-microvolt = <1025000>; 196410e1619SKonrad Dybcio regulator-max-microvolt = <1025000>; 197410e1619SKonrad Dybcio }; 198410e1619SKonrad Dybcio 199410e1619SKonrad Dybcio /* S2 & S3 - VDD_GFX */ 200410e1619SKonrad Dybcio 201410e1619SKonrad Dybcio pmi8994_bby: boost-bypass { 202410e1619SKonrad Dybcio regulator-min-microvolt = <3150000>; 203410e1619SKonrad Dybcio regulator-max-microvolt = <3600000>; 204410e1619SKonrad Dybcio }; 205410e1619SKonrad Dybcio }; 206410e1619SKonrad Dybcio 207372698e8SKrzysztof Kozlowski pm8994_regulators: regulators-1 { 208551969adSKonrad Dybcio compatible = "qcom,rpm-pm8994-regulators"; 209551969adSKonrad Dybcio 210676b61b4SKonrad Dybcio vdd_s3-supply = <&vph_pwr>; 211676b61b4SKonrad Dybcio vdd_s4-supply = <&vph_pwr>; 212676b61b4SKonrad Dybcio vdd_s5-supply = <&vph_pwr>; 213676b61b4SKonrad Dybcio vdd_s6-supply = <&vph_pwr>; 214676b61b4SKonrad Dybcio vdd_s7-supply = <&vph_pwr>; 215676b61b4SKonrad Dybcio vdd_l1-supply = <&pmi8994_s1>; 216676b61b4SKonrad Dybcio vdd_l2_l26_l28-supply = <&pm8994_s3>; 217676b61b4SKonrad Dybcio vdd_l3_l11-supply = <&pm8994_s3>; 218676b61b4SKonrad Dybcio vdd_l4_l27_l31-supply = <&pm8994_s3>; 219676b61b4SKonrad Dybcio vdd_l6_l12_l32-supply = <&pm8994_s5>; 220676b61b4SKonrad Dybcio vdd_l8_l16_l30-supply = <&vph_pwr>; 221676b61b4SKonrad Dybcio vdd_l9_l10_l18_l22-supply = <&pmi8994_bby>; 222676b61b4SKonrad Dybcio vdd_l13_l19_l23_l24-supply = <&pmi8994_bby>; 223676b61b4SKonrad Dybcio vdd_l14_l15-supply = <&pm8994_s5>; 224676b61b4SKonrad Dybcio vdd_l17_l29-supply = <&pmi8994_bby>; 225676b61b4SKonrad Dybcio vdd_l20_l21-supply = <&pmi8994_bby>; 226676b61b4SKonrad Dybcio vdd_l25-supply = <&pm8994_s3>; 227227ee158SDmitry Baryshkov vdd_lvs1_2-supply = <&pm8994_s4>; 228551969adSKonrad Dybcio 229676b61b4SKonrad Dybcio /* S1, S2, S6 and S12 are managed by RPMPD */ 230676b61b4SKonrad Dybcio 231676b61b4SKonrad Dybcio pm8994_s3: s3 { 232676b61b4SKonrad Dybcio regulator-min-microvolt = <1300000>; 233676b61b4SKonrad Dybcio regulator-max-microvolt = <1300000>; 234676b61b4SKonrad Dybcio }; 235676b61b4SKonrad Dybcio 236676b61b4SKonrad Dybcio pm8994_s4: s4 { 237676b61b4SKonrad Dybcio regulator-min-microvolt = <1800000>; 238676b61b4SKonrad Dybcio regulator-max-microvolt = <1800000>; 239410e1619SKonrad Dybcio regulator-system-load = <325000>; 240676b61b4SKonrad Dybcio regulator-allow-set-load; 241676b61b4SKonrad Dybcio regulator-always-on; 242676b61b4SKonrad Dybcio }; 243676b61b4SKonrad Dybcio 244676b61b4SKonrad Dybcio pm8994_s5: s5 { 245676b61b4SKonrad Dybcio regulator-min-microvolt = <2150000>; 246676b61b4SKonrad Dybcio regulator-max-microvolt = <2150000>; 247676b61b4SKonrad Dybcio }; 248676b61b4SKonrad Dybcio 249676b61b4SKonrad Dybcio pm8994_s7: s7 { 250676b61b4SKonrad Dybcio regulator-min-microvolt = <1000000>; 251676b61b4SKonrad Dybcio regulator-max-microvolt = <1000000>; 252676b61b4SKonrad Dybcio }; 253676b61b4SKonrad Dybcio 254676b61b4SKonrad Dybcio /* 255676b61b4SKonrad Dybcio * S8 - SPMI-managed VDD_APC0 256676b61b4SKonrad Dybcio * S9, S10 and S11 (the main one) - SPMI-managed VDD_APC1 257676b61b4SKonrad Dybcio */ 258676b61b4SKonrad Dybcio 259676b61b4SKonrad Dybcio pm8994_l1: l1 { 260676b61b4SKonrad Dybcio regulator-min-microvolt = <1000000>; 261676b61b4SKonrad Dybcio regulator-max-microvolt = <1000000>; 262676b61b4SKonrad Dybcio }; 263676b61b4SKonrad Dybcio 264676b61b4SKonrad Dybcio pm8994_l2: l2 { 265676b61b4SKonrad Dybcio regulator-min-microvolt = <1250000>; 266676b61b4SKonrad Dybcio regulator-max-microvolt = <1250000>; 267676b61b4SKonrad Dybcio regulator-system-load = <10000>; 268410e1619SKonrad Dybcio regulator-allow-set-load; 269676b61b4SKonrad Dybcio }; 270676b61b4SKonrad Dybcio 271676b61b4SKonrad Dybcio pm8994_l3: l3 { 272676b61b4SKonrad Dybcio regulator-min-microvolt = <1100000>; 273676b61b4SKonrad Dybcio regulator-max-microvolt = <1100000>; 274410e1619SKonrad Dybcio regulator-boot-on; 275676b61b4SKonrad Dybcio }; 276676b61b4SKonrad Dybcio 277676b61b4SKonrad Dybcio pm8994_l4: l4 { 278676b61b4SKonrad Dybcio regulator-min-microvolt = <1225000>; 279676b61b4SKonrad Dybcio regulator-max-microvolt = <1225000>; 280676b61b4SKonrad Dybcio }; 281676b61b4SKonrad Dybcio 282676b61b4SKonrad Dybcio /* L5 is inaccessible from RPM */ 283676b61b4SKonrad Dybcio 284676b61b4SKonrad Dybcio pm8994_l6: l6 { 285676b61b4SKonrad Dybcio regulator-min-microvolt = <1800000>; 286676b61b4SKonrad Dybcio regulator-max-microvolt = <1800000>; 287676b61b4SKonrad Dybcio }; 288676b61b4SKonrad Dybcio 289676b61b4SKonrad Dybcio /* L7 is inaccessible from RPM */ 290676b61b4SKonrad Dybcio 291676b61b4SKonrad Dybcio pm8994_l8: l8 { 292676b61b4SKonrad Dybcio regulator-min-microvolt = <1800000>; 293676b61b4SKonrad Dybcio regulator-max-microvolt = <1800000>; 294676b61b4SKonrad Dybcio }; 295676b61b4SKonrad Dybcio 296676b61b4SKonrad Dybcio pm8994_l9: l9 { 297676b61b4SKonrad Dybcio regulator-min-microvolt = <1800000>; 298676b61b4SKonrad Dybcio regulator-max-microvolt = <1800000>; 299676b61b4SKonrad Dybcio }; 300676b61b4SKonrad Dybcio 301676b61b4SKonrad Dybcio pm8994_l10: l10 { 302676b61b4SKonrad Dybcio regulator-min-microvolt = <1800000>; 303676b61b4SKonrad Dybcio regulator-max-microvolt = <1800000>; 304676b61b4SKonrad Dybcio }; 305676b61b4SKonrad Dybcio 306676b61b4SKonrad Dybcio pm8994_l11: l11 { 307676b61b4SKonrad Dybcio regulator-min-microvolt = <1200000>; 308676b61b4SKonrad Dybcio regulator-max-microvolt = <1200000>; 309676b61b4SKonrad Dybcio }; 310676b61b4SKonrad Dybcio 311676b61b4SKonrad Dybcio pm8994_l12: l12 { 312676b61b4SKonrad Dybcio regulator-min-microvolt = <1800000>; 313676b61b4SKonrad Dybcio regulator-max-microvolt = <1800000>; 314676b61b4SKonrad Dybcio regulator-system-load = <10000>; 315410e1619SKonrad Dybcio regulator-allow-set-load; 316676b61b4SKonrad Dybcio }; 317676b61b4SKonrad Dybcio 318676b61b4SKonrad Dybcio pm8994_l13: l13 { 319676b61b4SKonrad Dybcio regulator-min-microvolt = <1800000>; 320676b61b4SKonrad Dybcio regulator-max-microvolt = <2950000>; 321676b61b4SKonrad Dybcio }; 322676b61b4SKonrad Dybcio 323676b61b4SKonrad Dybcio pm8994_l14: l14 { 324676b61b4SKonrad Dybcio regulator-min-microvolt = <1800000>; 325676b61b4SKonrad Dybcio regulator-max-microvolt = <1800000>; 326676b61b4SKonrad Dybcio regulator-system-load = <10000>; 327410e1619SKonrad Dybcio regulator-allow-set-load; 328410e1619SKonrad Dybcio regulator-boot-on; 329676b61b4SKonrad Dybcio }; 330676b61b4SKonrad Dybcio 331676b61b4SKonrad Dybcio pm8994_l15: l15 { 332676b61b4SKonrad Dybcio regulator-min-microvolt = <1800000>; 333676b61b4SKonrad Dybcio regulator-max-microvolt = <1800000>; 334676b61b4SKonrad Dybcio }; 335676b61b4SKonrad Dybcio 336676b61b4SKonrad Dybcio pm8994_l16: l16 { 337676b61b4SKonrad Dybcio regulator-min-microvolt = <2700000>; 338676b61b4SKonrad Dybcio regulator-max-microvolt = <2700000>; 339676b61b4SKonrad Dybcio }; 340676b61b4SKonrad Dybcio 341676b61b4SKonrad Dybcio pm8994_l17: l17 { 342676b61b4SKonrad Dybcio regulator-min-microvolt = <2200000>; 343676b61b4SKonrad Dybcio regulator-max-microvolt = <2200000>; 344410e1619SKonrad Dybcio regulator-boot-on; 345676b61b4SKonrad Dybcio }; 346676b61b4SKonrad Dybcio 347676b61b4SKonrad Dybcio pm8994_l18: l18 { 348676b61b4SKonrad Dybcio regulator-min-microvolt = <2850000>; 349676b61b4SKonrad Dybcio regulator-max-microvolt = <2850000>; 350676b61b4SKonrad Dybcio regulator-always-on; 351410e1619SKonrad Dybcio regulator-boot-on; 352676b61b4SKonrad Dybcio }; 353676b61b4SKonrad Dybcio 354676b61b4SKonrad Dybcio pm8994_l19: l19 { 355676b61b4SKonrad Dybcio regulator-min-microvolt = <2850000>; 356676b61b4SKonrad Dybcio regulator-max-microvolt = <2850000>; 357410e1619SKonrad Dybcio regulator-boot-on; 358676b61b4SKonrad Dybcio }; 359676b61b4SKonrad Dybcio 360676b61b4SKonrad Dybcio pm8994_l20: l20 { 361676b61b4SKonrad Dybcio regulator-min-microvolt = <2950000>; 362676b61b4SKonrad Dybcio regulator-max-microvolt = <2950000>; 363676b61b4SKonrad Dybcio regulator-system-load = <570000>; 364410e1619SKonrad Dybcio regulator-allow-set-load; 365676b61b4SKonrad Dybcio }; 366676b61b4SKonrad Dybcio 367676b61b4SKonrad Dybcio pm8994_l21: l21 { 368676b61b4SKonrad Dybcio regulator-min-microvolt = <2950000>; 369676b61b4SKonrad Dybcio regulator-max-microvolt = <2950000>; 370ab8e4a85SKonrad Dybcio regulator-system-load = <800000>; 371410e1619SKonrad Dybcio regulator-allow-set-load; 372676b61b4SKonrad Dybcio }; 373676b61b4SKonrad Dybcio 374676b61b4SKonrad Dybcio pm8994_l22: l22 { 375676b61b4SKonrad Dybcio regulator-min-microvolt = <3000000>; 376676b61b4SKonrad Dybcio regulator-max-microvolt = <3000000>; 377410e1619SKonrad Dybcio regulator-boot-on; 378676b61b4SKonrad Dybcio }; 379676b61b4SKonrad Dybcio 380676b61b4SKonrad Dybcio pm8994_l23: l23 { 381676b61b4SKonrad Dybcio regulator-min-microvolt = <2800000>; 382676b61b4SKonrad Dybcio regulator-max-microvolt = <2800000>; 383410e1619SKonrad Dybcio regulator-always-on; 384410e1619SKonrad Dybcio regulator-boot-on; 385676b61b4SKonrad Dybcio }; 386676b61b4SKonrad Dybcio 387676b61b4SKonrad Dybcio pm8994_l24: l24 { 388676b61b4SKonrad Dybcio regulator-min-microvolt = <3075000>; 389676b61b4SKonrad Dybcio regulator-max-microvolt = <3150000>; 390676b61b4SKonrad Dybcio }; 391676b61b4SKonrad Dybcio 392676b61b4SKonrad Dybcio pm8994_l25: l25 { 393676b61b4SKonrad Dybcio regulator-min-microvolt = <1000000>; 394676b61b4SKonrad Dybcio regulator-max-microvolt = <1000000>; 395410e1619SKonrad Dybcio regulator-boot-on; 396676b61b4SKonrad Dybcio }; 397676b61b4SKonrad Dybcio 398676b61b4SKonrad Dybcio pm8994_l26: l26 { 399676b61b4SKonrad Dybcio regulator-min-microvolt = <987500>; 400676b61b4SKonrad Dybcio regulator-max-microvolt = <987500>; 401676b61b4SKonrad Dybcio }; 402676b61b4SKonrad Dybcio 403676b61b4SKonrad Dybcio pm8994_l27: l27 { 404676b61b4SKonrad Dybcio regulator-min-microvolt = <1200000>; 405676b61b4SKonrad Dybcio regulator-max-microvolt = <1200000>; 406410e1619SKonrad Dybcio regulator-boot-on; 407676b61b4SKonrad Dybcio }; 408676b61b4SKonrad Dybcio 409676b61b4SKonrad Dybcio pm8994_l28: l28 { 410676b61b4SKonrad Dybcio regulator-min-microvolt = <1000000>; 411676b61b4SKonrad Dybcio regulator-max-microvolt = <1000000>; 412676b61b4SKonrad Dybcio regulator-system-load = <10000>; 413410e1619SKonrad Dybcio regulator-allow-set-load; 414676b61b4SKonrad Dybcio }; 415676b61b4SKonrad Dybcio 416676b61b4SKonrad Dybcio pm8994_l29: l29 { 417676b61b4SKonrad Dybcio regulator-min-microvolt = <2700000>; 418676b61b4SKonrad Dybcio regulator-max-microvolt = <2700000>; 419410e1619SKonrad Dybcio regulator-boot-on; 420676b61b4SKonrad Dybcio }; 421676b61b4SKonrad Dybcio 422676b61b4SKonrad Dybcio pm8994_l30: l30 { 423676b61b4SKonrad Dybcio regulator-min-microvolt = <1800000>; 424676b61b4SKonrad Dybcio regulator-max-microvolt = <1800000>; 425410e1619SKonrad Dybcio regulator-boot-on; 426676b61b4SKonrad Dybcio }; 427676b61b4SKonrad Dybcio 428676b61b4SKonrad Dybcio pm8994_l31: l31 { 429676b61b4SKonrad Dybcio regulator-min-microvolt = <1200000>; 430676b61b4SKonrad Dybcio regulator-max-microvolt = <1200000>; 431676b61b4SKonrad Dybcio regulator-system-load = <10000>; 432410e1619SKonrad Dybcio regulator-allow-set-load; 433676b61b4SKonrad Dybcio }; 434676b61b4SKonrad Dybcio 435676b61b4SKonrad Dybcio pm8994_l32: l32 { 436676b61b4SKonrad Dybcio regulator-min-microvolt = <1800000>; 437676b61b4SKonrad Dybcio regulator-max-microvolt = <1800000>; 438676b61b4SKonrad Dybcio }; 439551969adSKonrad Dybcio 440410e1619SKonrad Dybcio pm8994_lvs1: lvs1 { 441410e1619SKonrad Dybcio regulator-boot-on; 442551969adSKonrad Dybcio }; 443410e1619SKonrad Dybcio pm8994_lvs2: lvs2 { 444410e1619SKonrad Dybcio regulator-boot-on; 445676b61b4SKonrad Dybcio }; 446551969adSKonrad Dybcio }; 447551969adSKonrad Dybcio}; 448551969adSKonrad Dybcio 449551969adSKonrad Dybcio&sdhc1 { 450676b61b4SKonrad Dybcio /* 451676b61b4SKonrad Dybcio * There is an issue with the eMMC causing permanent 452e884fb6cSKonrad Dybcio * damage to the card if a quirk isn't addressed. 453e884fb6cSKonrad Dybcio * Until it's fixed, disable the MMC so as not to brick 454e884fb6cSKonrad Dybcio * devices. 455e884fb6cSKonrad Dybcio */ 456e884fb6cSKonrad Dybcio status = "disabled"; 457551969adSKonrad Dybcio 458676b61b4SKonrad Dybcio /* 459676b61b4SKonrad Dybcio * Downstream pushes 2.95V to the sdhci device, 460551969adSKonrad Dybcio * but upstream driver REALLY wants to make vmmc 1.8v 461551969adSKonrad Dybcio * cause of the hs400-1_8v mode. MMC works fine without 462551969adSKonrad Dybcio * that regulator, so let's not use it for now. 463551969adSKonrad Dybcio * vqmmc is also disabled cause driver stll complains. 464551969adSKonrad Dybcio * 465551969adSKonrad Dybcio * vmmc-supply = <&pm8994_l20>; 466551969adSKonrad Dybcio * vqmmc-supply = <&pm8994_s4>; 467551969adSKonrad Dybcio */ 468551969adSKonrad Dybcio}; 469e8528157SKonrad Dybcio 470ab8e4a85SKonrad Dybcio&sdhc2 { 471ab8e4a85SKonrad Dybcio status = "okay"; 472ab8e4a85SKonrad Dybcio 47336c9d012SKrzysztof Kozlowski cd-gpios = <&tlmm 100 GPIO_ACTIVE_HIGH>; 474ab8e4a85SKonrad Dybcio vmmc-supply = <&pm8994_l21>; 475ab8e4a85SKonrad Dybcio vqmmc-supply = <&pm8994_l13>; 476ab8e4a85SKonrad Dybcio}; 477ab8e4a85SKonrad Dybcio 478e8528157SKonrad Dybcio&tlmm { 4799d7d01daSKrzysztof Kozlowski ts_int_active: ts-int-active-state { 480e8528157SKonrad Dybcio pins = "gpio42"; 4819d7d01daSKrzysztof Kozlowski function = "gpio"; 482e8528157SKonrad Dybcio drive-strength = <2>; 483e8528157SKonrad Dybcio bias-disable; 484e8528157SKonrad Dybcio }; 485e8528157SKonrad Dybcio 4869d7d01daSKrzysztof Kozlowski ts_reset_active: ts-reset-active-state { 487e8528157SKonrad Dybcio pins = "gpio109"; 4889d7d01daSKrzysztof Kozlowski function = "gpio"; 489e8528157SKonrad Dybcio drive-strength = <2>; 490e8528157SKonrad Dybcio bias-disable; 491e8528157SKonrad Dybcio output-low; 492e8528157SKonrad Dybcio }; 493e8528157SKonrad Dybcio}; 494