18cc087a1SEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-only 28bab661aSEmmanuel Vadot/* 38bab661aSEmmanuel Vadot * Copyright (C) 2019 Stephan Gerhold 48bab661aSEmmanuel Vadot */ 58cc087a1SEmmanuel Vadot 68cc087a1SEmmanuel Vadot/dts-v1/; 78cc087a1SEmmanuel Vadot 88cc087a1SEmmanuel Vadot#include "msm8916-pm8916.dtsi" 9*8d13bc63SEmmanuel Vadot#include "msm8916-modem-qdsp6.dtsi" 10*8d13bc63SEmmanuel Vadot 118cc087a1SEmmanuel Vadot#include <dt-bindings/gpio/gpio.h> 128cc087a1SEmmanuel Vadot#include <dt-bindings/input/input.h> 138cc087a1SEmmanuel Vadot#include <dt-bindings/interrupt-controller/irq.h> 148cc087a1SEmmanuel Vadot 158cc087a1SEmmanuel Vadot/* 168cc087a1SEmmanuel Vadot * NOTE: The original firmware from Samsung can only boot ARM32 kernels. 178cc087a1SEmmanuel Vadot * Unfortunately, the firmware is signed and cannot be replaced easily. 188cc087a1SEmmanuel Vadot * There seems to be no way to boot ARM64 kernels on this device at the moment, 198cc087a1SEmmanuel Vadot * even though the hardware would support it. 208cc087a1SEmmanuel Vadot * 218cc087a1SEmmanuel Vadot * However, it is possible to use this device tree by compiling an ARM32 kernel 228cc087a1SEmmanuel Vadot * instead. For clarity and build testing this device tree is maintained next 238cc087a1SEmmanuel Vadot * to the other MSM8916 device trees. However, it is actually used through 248cc087a1SEmmanuel Vadot * arch/arm/boot/dts/qcom-msm8916-samsung-serranove.dts 258cc087a1SEmmanuel Vadot */ 268cc087a1SEmmanuel Vadot 278cc087a1SEmmanuel Vadot/ { 288cc087a1SEmmanuel Vadot model = "Samsung Galaxy S4 Mini Value Edition"; 298cc087a1SEmmanuel Vadot compatible = "samsung,serranove", "qcom,msm8916"; 30e67e8565SEmmanuel Vadot chassis-type = "handset"; 318cc087a1SEmmanuel Vadot 328cc087a1SEmmanuel Vadot aliases { 33f126890aSEmmanuel Vadot mmc0 = &sdhc_1; /* eMMC */ 34f126890aSEmmanuel Vadot mmc1 = &sdhc_2; /* SD card */ 35f126890aSEmmanuel Vadot serial0 = &blsp_uart2; 368cc087a1SEmmanuel Vadot }; 378cc087a1SEmmanuel Vadot 388cc087a1SEmmanuel Vadot chosen { 398cc087a1SEmmanuel Vadot stdout-path = "serial0"; 408cc087a1SEmmanuel Vadot }; 418cc087a1SEmmanuel Vadot 428cc087a1SEmmanuel Vadot reserved-memory { 438cc087a1SEmmanuel Vadot /* Additional memory used by Samsung firmware modifications */ 448cc087a1SEmmanuel Vadot tz-apps@85500000 { 458cc087a1SEmmanuel Vadot reg = <0x0 0x85500000 0x0 0xb00000>; 468cc087a1SEmmanuel Vadot no-map; 478cc087a1SEmmanuel Vadot }; 488cc087a1SEmmanuel Vadot }; 498cc087a1SEmmanuel Vadot 508cc087a1SEmmanuel Vadot gpio-keys { 518cc087a1SEmmanuel Vadot compatible = "gpio-keys"; 528cc087a1SEmmanuel Vadot 538cc087a1SEmmanuel Vadot pinctrl-names = "default"; 548cc087a1SEmmanuel Vadot pinctrl-0 = <&gpio_keys_default>; 558cc087a1SEmmanuel Vadot 568cc087a1SEmmanuel Vadot label = "GPIO Buttons"; 578cc087a1SEmmanuel Vadot 58b97ee269SEmmanuel Vadot button-volume-up { 598cc087a1SEmmanuel Vadot label = "Volume Up"; 60f126890aSEmmanuel Vadot gpios = <&tlmm 107 GPIO_ACTIVE_LOW>; 618cc087a1SEmmanuel Vadot linux,code = <KEY_VOLUMEUP>; 628cc087a1SEmmanuel Vadot }; 638cc087a1SEmmanuel Vadot 64b97ee269SEmmanuel Vadot button-home { 658cc087a1SEmmanuel Vadot label = "Home"; 66f126890aSEmmanuel Vadot gpios = <&tlmm 109 GPIO_ACTIVE_LOW>; 678cc087a1SEmmanuel Vadot linux,code = <KEY_HOMEPAGE>; 688cc087a1SEmmanuel Vadot }; 698cc087a1SEmmanuel Vadot }; 708cc087a1SEmmanuel Vadot 718cc087a1SEmmanuel Vadot gpio-hall-sensor { 728cc087a1SEmmanuel Vadot compatible = "gpio-keys"; 738cc087a1SEmmanuel Vadot 748cc087a1SEmmanuel Vadot pinctrl-names = "default"; 758cc087a1SEmmanuel Vadot pinctrl-0 = <&gpio_hall_sensor_default>; 768cc087a1SEmmanuel Vadot 778cc087a1SEmmanuel Vadot label = "GPIO Hall Effect Sensor"; 788cc087a1SEmmanuel Vadot 79b97ee269SEmmanuel Vadot event-hall-sensor { 808cc087a1SEmmanuel Vadot label = "Hall Effect Sensor"; 81f126890aSEmmanuel Vadot gpios = <&tlmm 52 GPIO_ACTIVE_LOW>; 828cc087a1SEmmanuel Vadot linux,input-type = <EV_SW>; 838cc087a1SEmmanuel Vadot linux,code = <SW_LID>; 848cc087a1SEmmanuel Vadot linux,can-disable; 858cc087a1SEmmanuel Vadot }; 868cc087a1SEmmanuel Vadot }; 878cc087a1SEmmanuel Vadot 888cc087a1SEmmanuel Vadot reg_vdd_tsp: regulator-vdd-tsp { 898cc087a1SEmmanuel Vadot compatible = "regulator-fixed"; 908cc087a1SEmmanuel Vadot regulator-name = "vdd_tsp"; 918cc087a1SEmmanuel Vadot regulator-min-microvolt = <3300000>; 928cc087a1SEmmanuel Vadot regulator-max-microvolt = <3300000>; 938cc087a1SEmmanuel Vadot 94f126890aSEmmanuel Vadot gpio = <&tlmm 73 GPIO_ACTIVE_HIGH>; 958cc087a1SEmmanuel Vadot enable-active-high; 968cc087a1SEmmanuel Vadot 978cc087a1SEmmanuel Vadot pinctrl-names = "default"; 988cc087a1SEmmanuel Vadot pinctrl-0 = <&tsp_en_default>; 998cc087a1SEmmanuel Vadot }; 1008cc087a1SEmmanuel Vadot 1018cc087a1SEmmanuel Vadot reg_touch_key: regulator-touch-key { 1028cc087a1SEmmanuel Vadot compatible = "regulator-fixed"; 1038cc087a1SEmmanuel Vadot regulator-name = "touch_key"; 1048cc087a1SEmmanuel Vadot regulator-min-microvolt = <2800000>; 1058cc087a1SEmmanuel Vadot regulator-max-microvolt = <2800000>; 1068cc087a1SEmmanuel Vadot 107f126890aSEmmanuel Vadot gpio = <&tlmm 86 GPIO_ACTIVE_HIGH>; 1088cc087a1SEmmanuel Vadot enable-active-high; 1098cc087a1SEmmanuel Vadot 1108cc087a1SEmmanuel Vadot pinctrl-names = "default"; 1118cc087a1SEmmanuel Vadot pinctrl-0 = <&tkey_en_default>; 1128cc087a1SEmmanuel Vadot }; 1138cc087a1SEmmanuel Vadot 1148cc087a1SEmmanuel Vadot reg_key_led: regulator-key-led { 1158cc087a1SEmmanuel Vadot compatible = "regulator-fixed"; 1168cc087a1SEmmanuel Vadot regulator-name = "key_led"; 1178cc087a1SEmmanuel Vadot regulator-min-microvolt = <3300000>; 1188cc087a1SEmmanuel Vadot regulator-max-microvolt = <3300000>; 1198cc087a1SEmmanuel Vadot 120f126890aSEmmanuel Vadot gpio = <&tlmm 60 GPIO_ACTIVE_HIGH>; 1218cc087a1SEmmanuel Vadot enable-active-high; 1228cc087a1SEmmanuel Vadot 1238cc087a1SEmmanuel Vadot pinctrl-names = "default"; 1248cc087a1SEmmanuel Vadot pinctrl-0 = <&tkey_led_en_default>; 1258cc087a1SEmmanuel Vadot }; 1268cc087a1SEmmanuel Vadot 1278cc087a1SEmmanuel Vadot i2c-muic { 1288cc087a1SEmmanuel Vadot compatible = "i2c-gpio"; 129f126890aSEmmanuel Vadot sda-gpios = <&tlmm 105 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>; 130f126890aSEmmanuel Vadot scl-gpios = <&tlmm 106 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>; 1318cc087a1SEmmanuel Vadot 1328cc087a1SEmmanuel Vadot pinctrl-names = "default"; 1338cc087a1SEmmanuel Vadot pinctrl-0 = <&muic_i2c_default>; 1348cc087a1SEmmanuel Vadot 1358cc087a1SEmmanuel Vadot #address-cells = <1>; 1368cc087a1SEmmanuel Vadot #size-cells = <0>; 1378cc087a1SEmmanuel Vadot 1388cc087a1SEmmanuel Vadot muic: extcon@14 { 1398cc087a1SEmmanuel Vadot compatible = "siliconmitus,sm5504-muic"; 1408cc087a1SEmmanuel Vadot reg = <0x14>; 1418cc087a1SEmmanuel Vadot 142f126890aSEmmanuel Vadot interrupt-parent = <&tlmm>; 1438cc087a1SEmmanuel Vadot interrupts = <12 IRQ_TYPE_EDGE_FALLING>; 1448cc087a1SEmmanuel Vadot 1458cc087a1SEmmanuel Vadot pinctrl-names = "default"; 1468cc087a1SEmmanuel Vadot pinctrl-0 = <&muic_irq_default>; 147aa1a8ff2SEmmanuel Vadot 148aa1a8ff2SEmmanuel Vadot usb_con: connector { 149aa1a8ff2SEmmanuel Vadot compatible = "usb-b-connector"; 150aa1a8ff2SEmmanuel Vadot label = "micro-USB"; 151aa1a8ff2SEmmanuel Vadot type = "micro"; 152aa1a8ff2SEmmanuel Vadot }; 1538cc087a1SEmmanuel Vadot }; 1548cc087a1SEmmanuel Vadot }; 1558cc087a1SEmmanuel Vadot 1568cc087a1SEmmanuel Vadot i2c-tkey { 1578cc087a1SEmmanuel Vadot compatible = "i2c-gpio"; 158f126890aSEmmanuel Vadot sda-gpios = <&tlmm 16 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>; 159f126890aSEmmanuel Vadot scl-gpios = <&tlmm 17 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>; 1608cc087a1SEmmanuel Vadot 1618cc087a1SEmmanuel Vadot pinctrl-names = "default"; 1628cc087a1SEmmanuel Vadot pinctrl-0 = <&tkey_i2c_default>; 1638cc087a1SEmmanuel Vadot 1648cc087a1SEmmanuel Vadot #address-cells = <1>; 1658cc087a1SEmmanuel Vadot #size-cells = <0>; 1668cc087a1SEmmanuel Vadot 1678cc087a1SEmmanuel Vadot touchkey@20 { 1688cc087a1SEmmanuel Vadot compatible = "coreriver,tc360-touchkey"; 1698cc087a1SEmmanuel Vadot reg = <0x20>; 1708cc087a1SEmmanuel Vadot 171f126890aSEmmanuel Vadot interrupt-parent = <&tlmm>; 1728cc087a1SEmmanuel Vadot interrupts = <98 IRQ_TYPE_EDGE_FALLING>; 1738cc087a1SEmmanuel Vadot 1748cc087a1SEmmanuel Vadot vcc-supply = <®_touch_key>; 1758cc087a1SEmmanuel Vadot vdd-supply = <®_key_led>; 1768cc087a1SEmmanuel Vadot vddio-supply = <&pm8916_l6>; 1778cc087a1SEmmanuel Vadot 1788cc087a1SEmmanuel Vadot linux,keycodes = <KEY_APPSELECT KEY_BACK>; 1798cc087a1SEmmanuel Vadot 1808cc087a1SEmmanuel Vadot pinctrl-names = "default"; 1818cc087a1SEmmanuel Vadot pinctrl-0 = <&tkey_default>; 1828cc087a1SEmmanuel Vadot }; 1838cc087a1SEmmanuel Vadot }; 1848cc087a1SEmmanuel Vadot 1858cc087a1SEmmanuel Vadot i2c-nfc { 1868cc087a1SEmmanuel Vadot compatible = "i2c-gpio"; 187f126890aSEmmanuel Vadot sda-gpios = <&tlmm 0 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>; 188f126890aSEmmanuel Vadot scl-gpios = <&tlmm 1 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>; 1898cc087a1SEmmanuel Vadot 1908cc087a1SEmmanuel Vadot pinctrl-names = "default"; 1918cc087a1SEmmanuel Vadot pinctrl-0 = <&nfc_i2c_default>; 1928cc087a1SEmmanuel Vadot 1938cc087a1SEmmanuel Vadot #address-cells = <1>; 1948cc087a1SEmmanuel Vadot #size-cells = <0>; 1958cc087a1SEmmanuel Vadot 1968cc087a1SEmmanuel Vadot nfc@2b { 1978cc087a1SEmmanuel Vadot compatible = "nxp,pn547", "nxp,nxp-nci-i2c"; 1988cc087a1SEmmanuel Vadot reg = <0x2b>; 1998cc087a1SEmmanuel Vadot 200f126890aSEmmanuel Vadot interrupt-parent = <&tlmm>; 2018cc087a1SEmmanuel Vadot interrupts = <21 IRQ_TYPE_EDGE_RISING>; 2028cc087a1SEmmanuel Vadot 203f126890aSEmmanuel Vadot enable-gpios = <&tlmm 20 GPIO_ACTIVE_HIGH>; 204f126890aSEmmanuel Vadot firmware-gpios = <&tlmm 49 GPIO_ACTIVE_HIGH>; 2058cc087a1SEmmanuel Vadot 2068cc087a1SEmmanuel Vadot pinctrl-names = "default"; 2078cc087a1SEmmanuel Vadot pinctrl-0 = <&nfc_default>; 2088cc087a1SEmmanuel Vadot }; 2098cc087a1SEmmanuel Vadot }; 210aa1a8ff2SEmmanuel Vadot 211aa1a8ff2SEmmanuel Vadot battery: battery { 212aa1a8ff2SEmmanuel Vadot compatible = "simple-battery"; 213aa1a8ff2SEmmanuel Vadot precharge-current-microamp = <450000>; 214aa1a8ff2SEmmanuel Vadot constant-charge-current-max-microamp = <1000000>; 215aa1a8ff2SEmmanuel Vadot charge-term-current-microamp = <150000>; 216aa1a8ff2SEmmanuel Vadot precharge-upper-limit-microvolt = <3500000>; 217aa1a8ff2SEmmanuel Vadot constant-charge-voltage-max-microvolt = <4350000>; 218aa1a8ff2SEmmanuel Vadot }; 2198cc087a1SEmmanuel Vadot}; 2208cc087a1SEmmanuel Vadot 2218cc087a1SEmmanuel Vadot&blsp_i2c2 { 2228cc087a1SEmmanuel Vadot status = "okay"; 2238cc087a1SEmmanuel Vadot 2248cc087a1SEmmanuel Vadot imu@6b { 2258cc087a1SEmmanuel Vadot compatible = "st,lsm6ds3"; 2268cc087a1SEmmanuel Vadot reg = <0x6b>; 2278cc087a1SEmmanuel Vadot 228f126890aSEmmanuel Vadot interrupt-parent = <&tlmm>; 2298cc087a1SEmmanuel Vadot interrupts = <115 IRQ_TYPE_EDGE_RISING>; 2308cc087a1SEmmanuel Vadot 2318cc087a1SEmmanuel Vadot pinctrl-names = "default"; 2328cc087a1SEmmanuel Vadot pinctrl-0 = <&imu_irq_default>; 2338cc087a1SEmmanuel Vadot }; 2347ef62cebSEmmanuel Vadot 2357ef62cebSEmmanuel Vadot magnetometer@2e { 2367ef62cebSEmmanuel Vadot compatible = "yamaha,yas537"; 2377ef62cebSEmmanuel Vadot reg = <0x2e>; 2387ef62cebSEmmanuel Vadot 2397ef62cebSEmmanuel Vadot mount-matrix = "0", "1", "0", 2407ef62cebSEmmanuel Vadot "1", "0", "0", 2417ef62cebSEmmanuel Vadot "0", "0", "-1"; 2427ef62cebSEmmanuel Vadot }; 2438cc087a1SEmmanuel Vadot}; 2448cc087a1SEmmanuel Vadot 2458cc087a1SEmmanuel Vadot&blsp_i2c4 { 2468cc087a1SEmmanuel Vadot status = "okay"; 2478cc087a1SEmmanuel Vadot 248aa1a8ff2SEmmanuel Vadot fuel-gauge@35 { 2498cc087a1SEmmanuel Vadot compatible = "richtek,rt5033-battery"; 2508cc087a1SEmmanuel Vadot reg = <0x35>; 2518cc087a1SEmmanuel Vadot 252f126890aSEmmanuel Vadot interrupt-parent = <&tlmm>; 2538cc087a1SEmmanuel Vadot interrupts = <121 IRQ_TYPE_EDGE_FALLING>; 2548cc087a1SEmmanuel Vadot 2558cc087a1SEmmanuel Vadot pinctrl-names = "default"; 2568cc087a1SEmmanuel Vadot pinctrl-0 = <&fg_alert_default>; 257aa1a8ff2SEmmanuel Vadot 258aa1a8ff2SEmmanuel Vadot power-supplies = <&rt5033_charger>; 2598cc087a1SEmmanuel Vadot }; 2608cc087a1SEmmanuel Vadot}; 2618cc087a1SEmmanuel Vadot 2628cc087a1SEmmanuel Vadot&blsp_i2c5 { 2638cc087a1SEmmanuel Vadot status = "okay"; 2648cc087a1SEmmanuel Vadot 2658cc087a1SEmmanuel Vadot touchscreen@20 { 2668cc087a1SEmmanuel Vadot compatible = "zinitix,bt541"; 2678cc087a1SEmmanuel Vadot reg = <0x20>; 2688cc087a1SEmmanuel Vadot 269f126890aSEmmanuel Vadot interrupt-parent = <&tlmm>; 2708cc087a1SEmmanuel Vadot interrupts = <13 IRQ_TYPE_EDGE_FALLING>; 2718cc087a1SEmmanuel Vadot 2728cc087a1SEmmanuel Vadot touchscreen-size-x = <540>; 2738cc087a1SEmmanuel Vadot touchscreen-size-y = <960>; 2748cc087a1SEmmanuel Vadot 2758cc087a1SEmmanuel Vadot vdd-supply = <®_vdd_tsp>; 2768cc087a1SEmmanuel Vadot vddo-supply = <&pm8916_l6>; 2778cc087a1SEmmanuel Vadot 2788cc087a1SEmmanuel Vadot pinctrl-names = "default"; 2798cc087a1SEmmanuel Vadot pinctrl-0 = <&tsp_irq_default>; 2808cc087a1SEmmanuel Vadot }; 2818cc087a1SEmmanuel Vadot}; 2828cc087a1SEmmanuel Vadot 283aa1a8ff2SEmmanuel Vadot&blsp_i2c6 { 284aa1a8ff2SEmmanuel Vadot status = "okay"; 285aa1a8ff2SEmmanuel Vadot 286aa1a8ff2SEmmanuel Vadot pmic@34 { 287aa1a8ff2SEmmanuel Vadot compatible = "richtek,rt5033"; 288aa1a8ff2SEmmanuel Vadot reg = <0x34>; 289aa1a8ff2SEmmanuel Vadot 290aa1a8ff2SEmmanuel Vadot interrupt-parent = <&tlmm>; 291aa1a8ff2SEmmanuel Vadot interrupts = <62 IRQ_TYPE_EDGE_FALLING>; 292aa1a8ff2SEmmanuel Vadot 293aa1a8ff2SEmmanuel Vadot pinctrl-names = "default"; 294aa1a8ff2SEmmanuel Vadot pinctrl-0 = <&pmic_int_default>; 295aa1a8ff2SEmmanuel Vadot 296aa1a8ff2SEmmanuel Vadot regulators { 297aa1a8ff2SEmmanuel Vadot rt5033_reg_safe_ldo: SAFE_LDO { 298aa1a8ff2SEmmanuel Vadot regulator-min-microvolt = <4900000>; 299aa1a8ff2SEmmanuel Vadot regulator-max-microvolt = <4900000>; 300aa1a8ff2SEmmanuel Vadot regulator-always-on; 301aa1a8ff2SEmmanuel Vadot }; 302aa1a8ff2SEmmanuel Vadot rt5033_reg_ldo: LDO { 303aa1a8ff2SEmmanuel Vadot regulator-min-microvolt = <2800000>; 304aa1a8ff2SEmmanuel Vadot regulator-max-microvolt = <2800000>; 305aa1a8ff2SEmmanuel Vadot }; 306aa1a8ff2SEmmanuel Vadot rt5033_reg_buck: BUCK { 307aa1a8ff2SEmmanuel Vadot regulator-min-microvolt = <1200000>; 308aa1a8ff2SEmmanuel Vadot regulator-max-microvolt = <1200000>; 309aa1a8ff2SEmmanuel Vadot }; 310aa1a8ff2SEmmanuel Vadot }; 311aa1a8ff2SEmmanuel Vadot 312aa1a8ff2SEmmanuel Vadot rt5033_charger: charger { 313aa1a8ff2SEmmanuel Vadot compatible = "richtek,rt5033-charger"; 314aa1a8ff2SEmmanuel Vadot monitored-battery = <&battery>; 315aa1a8ff2SEmmanuel Vadot richtek,usb-connector = <&usb_con>; 316aa1a8ff2SEmmanuel Vadot }; 317aa1a8ff2SEmmanuel Vadot }; 318aa1a8ff2SEmmanuel Vadot}; 319aa1a8ff2SEmmanuel Vadot 320f126890aSEmmanuel Vadot&blsp_uart2 { 3218cc087a1SEmmanuel Vadot status = "okay"; 3228cc087a1SEmmanuel Vadot}; 3238cc087a1SEmmanuel Vadot 324*8d13bc63SEmmanuel Vadot&mpss_mem { 325*8d13bc63SEmmanuel Vadot reg = <0x0 0x86800000 0x0 0x5a00000>; 326*8d13bc63SEmmanuel Vadot}; 327*8d13bc63SEmmanuel Vadot 3288cc087a1SEmmanuel Vadot&pm8916_resin { 3298cc087a1SEmmanuel Vadot status = "okay"; 3308cc087a1SEmmanuel Vadot linux,code = <KEY_VOLUMEDOWN>; 3318cc087a1SEmmanuel Vadot}; 3328cc087a1SEmmanuel Vadot 3338cc087a1SEmmanuel Vadot&pm8916_vib { 3348cc087a1SEmmanuel Vadot status = "okay"; 3358cc087a1SEmmanuel Vadot}; 3368cc087a1SEmmanuel Vadot 3378cc087a1SEmmanuel Vadot&sdhc_1 { 3388cc087a1SEmmanuel Vadot status = "okay"; 3398cc087a1SEmmanuel Vadot}; 3408cc087a1SEmmanuel Vadot 3418cc087a1SEmmanuel Vadot&sdhc_2 { 3428cc087a1SEmmanuel Vadot status = "okay"; 3438cc087a1SEmmanuel Vadot non-removable; 3448cc087a1SEmmanuel Vadot 3458cc087a1SEmmanuel Vadot /* 3468cc087a1SEmmanuel Vadot * FIXME: Disable UHS-I modes since tuning fails with: 3478cc087a1SEmmanuel Vadot * 3488cc087a1SEmmanuel Vadot * sdhci_msm 7864900.sdhci: mmc1: No tuning point found 3498cc087a1SEmmanuel Vadot * mmc1: tuning execution failed: -5 3508cc087a1SEmmanuel Vadot * mmc1: error -5 whilst initialising SD card 3518cc087a1SEmmanuel Vadot * 3528cc087a1SEmmanuel Vadot * This is the quirk used on downstream, which suggests this is 3538cc087a1SEmmanuel Vadot * a hardware limitation. However, probing a card using DDR50 works 3548cc087a1SEmmanuel Vadot * (without tuning), so maybe only tuning is broken? 3558cc087a1SEmmanuel Vadot */ 3568cc087a1SEmmanuel Vadot no-1-8-v; 3578cc087a1SEmmanuel Vadot}; 3588cc087a1SEmmanuel Vadot 359*8d13bc63SEmmanuel Vadot&sound { 360*8d13bc63SEmmanuel Vadot audio-routing = 361*8d13bc63SEmmanuel Vadot "AMIC1", "MIC BIAS External1", 362*8d13bc63SEmmanuel Vadot "AMIC2", "MIC BIAS Internal2", 363*8d13bc63SEmmanuel Vadot "AMIC3", "MIC BIAS External1"; 364*8d13bc63SEmmanuel Vadot}; 365*8d13bc63SEmmanuel Vadot 3668cc087a1SEmmanuel Vadot&usb { 3678cc087a1SEmmanuel Vadot status = "okay"; 3688cc087a1SEmmanuel Vadot extcon = <&muic>, <&muic>; 3698cc087a1SEmmanuel Vadot}; 3708cc087a1SEmmanuel Vadot 3718cc087a1SEmmanuel Vadot&usb_hs_phy { 3728cc087a1SEmmanuel Vadot extcon = <&muic>; 3738cc087a1SEmmanuel Vadot}; 3748cc087a1SEmmanuel Vadot 37584943d6fSEmmanuel Vadot&venus { 37684943d6fSEmmanuel Vadot status = "okay"; 37784943d6fSEmmanuel Vadot}; 37884943d6fSEmmanuel Vadot 37984943d6fSEmmanuel Vadot&venus_mem { 38084943d6fSEmmanuel Vadot status = "okay"; 38184943d6fSEmmanuel Vadot}; 38284943d6fSEmmanuel Vadot 383fac71e4eSEmmanuel Vadot&wcnss { 384fac71e4eSEmmanuel Vadot status = "okay"; 385fac71e4eSEmmanuel Vadot}; 386fac71e4eSEmmanuel Vadot 387fac71e4eSEmmanuel Vadot&wcnss_iris { 388fac71e4eSEmmanuel Vadot compatible = "qcom,wcn3660b"; 389fac71e4eSEmmanuel Vadot}; 390fac71e4eSEmmanuel Vadot 39184943d6fSEmmanuel Vadot&wcnss_mem { 39284943d6fSEmmanuel Vadot status = "okay"; 39384943d6fSEmmanuel Vadot}; 39484943d6fSEmmanuel Vadot 395f126890aSEmmanuel Vadot&tlmm { 3968bab661aSEmmanuel Vadot fg_alert_default: fg-alert-default-state { 3978cc087a1SEmmanuel Vadot pins = "gpio121"; 3988cc087a1SEmmanuel Vadot function = "gpio"; 3998cc087a1SEmmanuel Vadot 4008cc087a1SEmmanuel Vadot drive-strength = <2>; 4018cc087a1SEmmanuel Vadot bias-disable; 4028cc087a1SEmmanuel Vadot }; 4038cc087a1SEmmanuel Vadot 4048bab661aSEmmanuel Vadot gpio_keys_default: gpio-keys-default-state { 4058cc087a1SEmmanuel Vadot pins = "gpio107", "gpio109"; 4068cc087a1SEmmanuel Vadot function = "gpio"; 4078cc087a1SEmmanuel Vadot 4088cc087a1SEmmanuel Vadot drive-strength = <2>; 4098cc087a1SEmmanuel Vadot bias-pull-up; 4108cc087a1SEmmanuel Vadot }; 4118cc087a1SEmmanuel Vadot 4128bab661aSEmmanuel Vadot gpio_hall_sensor_default: gpio-hall-sensor-default-state { 4138cc087a1SEmmanuel Vadot pins = "gpio52"; 4148cc087a1SEmmanuel Vadot function = "gpio"; 4158cc087a1SEmmanuel Vadot 4168cc087a1SEmmanuel Vadot drive-strength = <2>; 4178cc087a1SEmmanuel Vadot bias-disable; 4188cc087a1SEmmanuel Vadot }; 4198cc087a1SEmmanuel Vadot 4208bab661aSEmmanuel Vadot imu_irq_default: imu-irq-default-state { 4218cc087a1SEmmanuel Vadot pins = "gpio115"; 4228cc087a1SEmmanuel Vadot function = "gpio"; 4238cc087a1SEmmanuel Vadot 4248cc087a1SEmmanuel Vadot drive-strength = <2>; 4258cc087a1SEmmanuel Vadot bias-disable; 4268cc087a1SEmmanuel Vadot }; 4278cc087a1SEmmanuel Vadot 4288bab661aSEmmanuel Vadot muic_i2c_default: muic-i2c-default-state { 4298cc087a1SEmmanuel Vadot pins = "gpio105", "gpio106"; 4308cc087a1SEmmanuel Vadot function = "gpio"; 4318cc087a1SEmmanuel Vadot 4328cc087a1SEmmanuel Vadot drive-strength = <2>; 4338cc087a1SEmmanuel Vadot bias-disable; 4348cc087a1SEmmanuel Vadot }; 4358cc087a1SEmmanuel Vadot 4368bab661aSEmmanuel Vadot muic_irq_default: muic-irq-default-state { 4378cc087a1SEmmanuel Vadot pins = "gpio12"; 4388cc087a1SEmmanuel Vadot function = "gpio"; 4398cc087a1SEmmanuel Vadot 4408cc087a1SEmmanuel Vadot drive-strength = <2>; 4418cc087a1SEmmanuel Vadot bias-disable; 4428cc087a1SEmmanuel Vadot }; 4438cc087a1SEmmanuel Vadot 4448bab661aSEmmanuel Vadot nfc_default: nfc-default-state { 4458bab661aSEmmanuel Vadot nfc-pins { 4468cc087a1SEmmanuel Vadot pins = "gpio20", "gpio49"; 4478cc087a1SEmmanuel Vadot function = "gpio"; 4488cc087a1SEmmanuel Vadot 4498cc087a1SEmmanuel Vadot drive-strength = <2>; 4508cc087a1SEmmanuel Vadot bias-disable; 4518bab661aSEmmanuel Vadot }; 4528bab661aSEmmanuel Vadot irq-pins { 4538cc087a1SEmmanuel Vadot pins = "gpio21"; 4548cc087a1SEmmanuel Vadot function = "gpio"; 4558cc087a1SEmmanuel Vadot 4568cc087a1SEmmanuel Vadot drive-strength = <2>; 4578cc087a1SEmmanuel Vadot bias-pull-down; 4588cc087a1SEmmanuel Vadot }; 4598cc087a1SEmmanuel Vadot }; 4608cc087a1SEmmanuel Vadot 4618bab661aSEmmanuel Vadot nfc_i2c_default: nfc-i2c-default-state { 4628cc087a1SEmmanuel Vadot pins = "gpio0", "gpio1"; 4638cc087a1SEmmanuel Vadot function = "gpio"; 4648cc087a1SEmmanuel Vadot 4658cc087a1SEmmanuel Vadot drive-strength = <2>; 4668cc087a1SEmmanuel Vadot bias-disable; 4678cc087a1SEmmanuel Vadot }; 4688cc087a1SEmmanuel Vadot 469aa1a8ff2SEmmanuel Vadot pmic_int_default: pmic-int-default-state { 470aa1a8ff2SEmmanuel Vadot pins = "gpio62"; 471aa1a8ff2SEmmanuel Vadot function = "gpio"; 472aa1a8ff2SEmmanuel Vadot 473aa1a8ff2SEmmanuel Vadot drive-strength = <2>; 474aa1a8ff2SEmmanuel Vadot bias-disable; 475aa1a8ff2SEmmanuel Vadot }; 476aa1a8ff2SEmmanuel Vadot 4778bab661aSEmmanuel Vadot tkey_default: tkey-default-state { 4788cc087a1SEmmanuel Vadot pins = "gpio98"; 4798cc087a1SEmmanuel Vadot function = "gpio"; 4808cc087a1SEmmanuel Vadot 4818cc087a1SEmmanuel Vadot drive-strength = <2>; 4828cc087a1SEmmanuel Vadot bias-disable; 4838cc087a1SEmmanuel Vadot }; 4848cc087a1SEmmanuel Vadot 4858bab661aSEmmanuel Vadot tkey_en_default: tkey-en-default-state { 4868cc087a1SEmmanuel Vadot pins = "gpio86"; 4878cc087a1SEmmanuel Vadot function = "gpio"; 4888cc087a1SEmmanuel Vadot 4898cc087a1SEmmanuel Vadot drive-strength = <2>; 4908cc087a1SEmmanuel Vadot bias-disable; 4918cc087a1SEmmanuel Vadot }; 4928cc087a1SEmmanuel Vadot 4938bab661aSEmmanuel Vadot tkey_i2c_default: tkey-i2c-default-state { 4948cc087a1SEmmanuel Vadot pins = "gpio16", "gpio17"; 4958cc087a1SEmmanuel Vadot function = "gpio"; 4968cc087a1SEmmanuel Vadot 4978cc087a1SEmmanuel Vadot drive-strength = <2>; 4988cc087a1SEmmanuel Vadot bias-disable; 4998cc087a1SEmmanuel Vadot }; 5008cc087a1SEmmanuel Vadot 5018bab661aSEmmanuel Vadot tkey_led_en_default: tkey-led-en-default-state { 5028cc087a1SEmmanuel Vadot pins = "gpio60"; 5038cc087a1SEmmanuel Vadot function = "gpio"; 5048cc087a1SEmmanuel Vadot 5058cc087a1SEmmanuel Vadot drive-strength = <2>; 5068cc087a1SEmmanuel Vadot bias-disable; 5078cc087a1SEmmanuel Vadot }; 5088cc087a1SEmmanuel Vadot 5098bab661aSEmmanuel Vadot tsp_en_default: tsp-en-default-state { 5108cc087a1SEmmanuel Vadot pins = "gpio73"; 5118cc087a1SEmmanuel Vadot function = "gpio"; 5128cc087a1SEmmanuel Vadot 5138cc087a1SEmmanuel Vadot drive-strength = <2>; 5148cc087a1SEmmanuel Vadot bias-disable; 5158cc087a1SEmmanuel Vadot }; 5168cc087a1SEmmanuel Vadot 5178bab661aSEmmanuel Vadot tsp_irq_default: tsp-irq-default-state { 5188cc087a1SEmmanuel Vadot pins = "gpio13"; 5198cc087a1SEmmanuel Vadot function = "gpio"; 5208cc087a1SEmmanuel Vadot 5218cc087a1SEmmanuel Vadot drive-strength = <2>; 5228cc087a1SEmmanuel Vadot bias-disable; 5238cc087a1SEmmanuel Vadot }; 5248cc087a1SEmmanuel Vadot}; 525