1f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0 2f126890aSEmmanuel Vadot#include <dt-bindings/input/input.h> 3f126890aSEmmanuel Vadot 4f126890aSEmmanuel Vadot#include "qcom-msm8960.dtsi" 5*8d13bc63SEmmanuel Vadot#include "pm8921.dtsi" 6f126890aSEmmanuel Vadot 7f126890aSEmmanuel Vadot/ { 8f126890aSEmmanuel Vadot model = "Qualcomm MSM8960 CDP"; 9f126890aSEmmanuel Vadot compatible = "qcom,msm8960-cdp", "qcom,msm8960"; 10f126890aSEmmanuel Vadot 11f126890aSEmmanuel Vadot aliases { 12f126890aSEmmanuel Vadot serial0 = &gsbi5_serial; 13f126890aSEmmanuel Vadot }; 14f126890aSEmmanuel Vadot 15f126890aSEmmanuel Vadot chosen { 16f126890aSEmmanuel Vadot stdout-path = "serial0:115200n8"; 17f126890aSEmmanuel Vadot }; 18f126890aSEmmanuel Vadot 19f126890aSEmmanuel Vadot ext_l2: gpio-regulator { 20f126890aSEmmanuel Vadot compatible = "regulator-fixed"; 21f126890aSEmmanuel Vadot regulator-name = "ext_l2"; 22f126890aSEmmanuel Vadot gpio = <&msmgpio 91 0>; 23f126890aSEmmanuel Vadot startup-delay-us = <10000>; 24f126890aSEmmanuel Vadot enable-active-high; 25f126890aSEmmanuel Vadot }; 26f126890aSEmmanuel Vadot}; 27f126890aSEmmanuel Vadot 28f126890aSEmmanuel Vadot&gsbi1 { 29f126890aSEmmanuel Vadot qcom,mode = <GSBI_PROT_SPI>; 30f126890aSEmmanuel Vadot pinctrl-names = "default"; 31f126890aSEmmanuel Vadot pinctrl-0 = <&spi1_default>; 32f126890aSEmmanuel Vadot status = "okay"; 33f126890aSEmmanuel Vadot}; 34f126890aSEmmanuel Vadot 35f126890aSEmmanuel Vadot&gsbi1_spi { 36f126890aSEmmanuel Vadot status = "okay"; 37f126890aSEmmanuel Vadot 38f126890aSEmmanuel Vadot ethernet@0 { 39f126890aSEmmanuel Vadot compatible = "micrel,ks8851"; 40f126890aSEmmanuel Vadot reg = <0>; 41f126890aSEmmanuel Vadot interrupt-parent = <&msmgpio>; 42f126890aSEmmanuel Vadot interrupts = <90 IRQ_TYPE_LEVEL_LOW>; 43f126890aSEmmanuel Vadot spi-max-frequency = <5400000>; 44f126890aSEmmanuel Vadot vdd-supply = <&ext_l2>; 45f126890aSEmmanuel Vadot vdd-io-supply = <&pm8921_lvs6>; 46f126890aSEmmanuel Vadot reset-gpios = <&msmgpio 89 0>; 47f126890aSEmmanuel Vadot }; 48f126890aSEmmanuel Vadot}; 49f126890aSEmmanuel Vadot 50f126890aSEmmanuel Vadot&gsbi5 { 51f126890aSEmmanuel Vadot qcom,mode = <GSBI_PROT_I2C_UART>; 52f126890aSEmmanuel Vadot status = "okay"; 53f126890aSEmmanuel Vadot}; 54f126890aSEmmanuel Vadot 55f126890aSEmmanuel Vadot&gsbi5_serial { 56f126890aSEmmanuel Vadot status = "okay"; 57f126890aSEmmanuel Vadot}; 58f126890aSEmmanuel Vadot 59f126890aSEmmanuel Vadot&msmgpio { 60f126890aSEmmanuel Vadot spi1_default: spi1-default-state { 61f126890aSEmmanuel Vadot mosi-pins { 62f126890aSEmmanuel Vadot pins = "gpio6"; 63f126890aSEmmanuel Vadot function = "gsbi1"; 64f126890aSEmmanuel Vadot drive-strength = <12>; 65f126890aSEmmanuel Vadot bias-disable; 66f126890aSEmmanuel Vadot }; 67f126890aSEmmanuel Vadot 68f126890aSEmmanuel Vadot miso-pins { 69f126890aSEmmanuel Vadot pins = "gpio7"; 70f126890aSEmmanuel Vadot function = "gsbi1"; 71f126890aSEmmanuel Vadot drive-strength = <12>; 72f126890aSEmmanuel Vadot bias-disable; 73f126890aSEmmanuel Vadot }; 74f126890aSEmmanuel Vadot 75f126890aSEmmanuel Vadot cs-pins { 76f126890aSEmmanuel Vadot pins = "gpio8"; 77f126890aSEmmanuel Vadot function = "gsbi1"; 78f126890aSEmmanuel Vadot drive-strength = <12>; 79f126890aSEmmanuel Vadot bias-disable; 80f126890aSEmmanuel Vadot output-low; 81f126890aSEmmanuel Vadot }; 82f126890aSEmmanuel Vadot 83f126890aSEmmanuel Vadot clk-pins { 84f126890aSEmmanuel Vadot pins = "gpio9"; 85f126890aSEmmanuel Vadot function = "gsbi1"; 86f126890aSEmmanuel Vadot drive-strength = <12>; 87f126890aSEmmanuel Vadot bias-disable; 88f126890aSEmmanuel Vadot }; 89f126890aSEmmanuel Vadot }; 90f126890aSEmmanuel Vadot}; 91f126890aSEmmanuel Vadot 92*8d13bc63SEmmanuel Vadot&pm8921 { 93*8d13bc63SEmmanuel Vadot interrupts-extended = <&msmgpio 104 IRQ_TYPE_LEVEL_LOW>; 94*8d13bc63SEmmanuel Vadot}; 95*8d13bc63SEmmanuel Vadot 96*8d13bc63SEmmanuel Vadot&pm8921_keypad { 97f126890aSEmmanuel Vadot linux,keymap = < 98f126890aSEmmanuel Vadot MATRIX_KEY(0, 0, KEY_VOLUMEUP) 99f126890aSEmmanuel Vadot MATRIX_KEY(0, 1, KEY_VOLUMEDOWN) 100f126890aSEmmanuel Vadot MATRIX_KEY(0, 2, KEY_CAMERA_FOCUS) 101f126890aSEmmanuel Vadot MATRIX_KEY(0, 3, KEY_CAMERA) 102f126890aSEmmanuel Vadot >; 103f126890aSEmmanuel Vadot keypad,num-rows = <1>; 104f126890aSEmmanuel Vadot keypad,num-columns = <5>; 105*8d13bc63SEmmanuel Vadot 106*8d13bc63SEmmanuel Vadot status = "okay"; 107f126890aSEmmanuel Vadot}; 108f126890aSEmmanuel Vadot 109f126890aSEmmanuel Vadot&rpm { 110f126890aSEmmanuel Vadot regulators { 111f126890aSEmmanuel Vadot compatible = "qcom,rpm-pm8921-regulators"; 112f126890aSEmmanuel Vadot vin_lvs1_3_6-supply = <&pm8921_s4>; 113f126890aSEmmanuel Vadot vin_lvs2-supply = <&pm8921_s4>; 114f126890aSEmmanuel Vadot vin_lvs4_5_7-supply = <&pm8921_s4>; 115f126890aSEmmanuel Vadot vdd_ncp-supply = <&pm8921_l6>; 116f126890aSEmmanuel Vadot vdd_l1_l2_l12_l18-supply = <&pm8921_s4>; 117f126890aSEmmanuel Vadot vdd_l21_l23_l29-supply = <&pm8921_s8>; 118f126890aSEmmanuel Vadot vdd_l24-supply = <&pm8921_s1>; 119f126890aSEmmanuel Vadot vdd_l25-supply = <&pm8921_s1>; 120f126890aSEmmanuel Vadot vdd_l27-supply = <&pm8921_s7>; 121f126890aSEmmanuel Vadot vdd_l28-supply = <&pm8921_s7>; 122f126890aSEmmanuel Vadot 123f126890aSEmmanuel Vadot /* Buck SMPS */ 124f126890aSEmmanuel Vadot pm8921_s1: s1 { 125f126890aSEmmanuel Vadot regulator-always-on; 126f126890aSEmmanuel Vadot regulator-min-microvolt = <1225000>; 127f126890aSEmmanuel Vadot regulator-max-microvolt = <1225000>; 128f126890aSEmmanuel Vadot qcom,switch-mode-frequency = <3200000>; 129f126890aSEmmanuel Vadot bias-pull-down; 130f126890aSEmmanuel Vadot }; 131f126890aSEmmanuel Vadot 132f126890aSEmmanuel Vadot pm8921_s2: s2 { 133f126890aSEmmanuel Vadot regulator-min-microvolt = <1300000>; 134f126890aSEmmanuel Vadot regulator-max-microvolt = <1300000>; 135f126890aSEmmanuel Vadot qcom,switch-mode-frequency = <1600000>; 136f126890aSEmmanuel Vadot bias-pull-down; 137f126890aSEmmanuel Vadot }; 138f126890aSEmmanuel Vadot 139f126890aSEmmanuel Vadot pm8921_s3: s3 { 140f126890aSEmmanuel Vadot regulator-min-microvolt = <500000>; 141f126890aSEmmanuel Vadot regulator-max-microvolt = <1150000>; 142f126890aSEmmanuel Vadot qcom,switch-mode-frequency = <4800000>; 143f126890aSEmmanuel Vadot bias-pull-down; 144f126890aSEmmanuel Vadot }; 145f126890aSEmmanuel Vadot 146f126890aSEmmanuel Vadot pm8921_s4: s4 { 147f126890aSEmmanuel Vadot regulator-always-on; 148f126890aSEmmanuel Vadot regulator-min-microvolt = <1800000>; 149f126890aSEmmanuel Vadot regulator-max-microvolt = <1800000>; 150f126890aSEmmanuel Vadot qcom,switch-mode-frequency = <1600000>; 151f126890aSEmmanuel Vadot bias-pull-down; 152f126890aSEmmanuel Vadot qcom,force-mode = <QCOM_RPM_FORCE_MODE_AUTO>; 153f126890aSEmmanuel Vadot }; 154f126890aSEmmanuel Vadot 155f126890aSEmmanuel Vadot pm8921_s7: s7 { 156f126890aSEmmanuel Vadot regulator-min-microvolt = <1150000>; 157f126890aSEmmanuel Vadot regulator-max-microvolt = <1150000>; 158f126890aSEmmanuel Vadot qcom,switch-mode-frequency = <3200000>; 159f126890aSEmmanuel Vadot bias-pull-down; 160f126890aSEmmanuel Vadot }; 161f126890aSEmmanuel Vadot 162f126890aSEmmanuel Vadot pm8921_s8: s8 { 163f126890aSEmmanuel Vadot regulator-always-on; 164f126890aSEmmanuel Vadot regulator-min-microvolt = <2050000>; 165f126890aSEmmanuel Vadot regulator-max-microvolt = <2050000>; 166f126890aSEmmanuel Vadot qcom,switch-mode-frequency = <1600000>; 167f126890aSEmmanuel Vadot bias-pull-down; 168f126890aSEmmanuel Vadot }; 169f126890aSEmmanuel Vadot 170f126890aSEmmanuel Vadot /* PMOS LDO */ 171f126890aSEmmanuel Vadot pm8921_l1: l1 { 172f126890aSEmmanuel Vadot regulator-always-on; 173f126890aSEmmanuel Vadot regulator-min-microvolt = <1050000>; 174f126890aSEmmanuel Vadot regulator-max-microvolt = <1050000>; 175f126890aSEmmanuel Vadot bias-pull-down; 176f126890aSEmmanuel Vadot }; 177f126890aSEmmanuel Vadot 178f126890aSEmmanuel Vadot pm8921_l2: l2 { 179f126890aSEmmanuel Vadot regulator-min-microvolt = <1200000>; 180f126890aSEmmanuel Vadot regulator-max-microvolt = <1200000>; 181f126890aSEmmanuel Vadot bias-pull-down; 182f126890aSEmmanuel Vadot }; 183f126890aSEmmanuel Vadot 184f126890aSEmmanuel Vadot pm8921_l3: l3 { 185f126890aSEmmanuel Vadot regulator-min-microvolt = <3075000>; 186f126890aSEmmanuel Vadot regulator-max-microvolt = <3075000>; 187f126890aSEmmanuel Vadot bias-pull-down; 188f126890aSEmmanuel Vadot }; 189f126890aSEmmanuel Vadot 190f126890aSEmmanuel Vadot pm8921_l4: l4 { 191f126890aSEmmanuel Vadot regulator-always-on; 192f126890aSEmmanuel Vadot regulator-min-microvolt = <1800000>; 193f126890aSEmmanuel Vadot regulator-max-microvolt = <1800000>; 194f126890aSEmmanuel Vadot bias-pull-down; 195f126890aSEmmanuel Vadot }; 196f126890aSEmmanuel Vadot 197f126890aSEmmanuel Vadot pm8921_l5: l5 { 198f126890aSEmmanuel Vadot regulator-min-microvolt = <2950000>; 199f126890aSEmmanuel Vadot regulator-max-microvolt = <2950000>; 200f126890aSEmmanuel Vadot bias-pull-down; 201f126890aSEmmanuel Vadot }; 202f126890aSEmmanuel Vadot 203f126890aSEmmanuel Vadot pm8921_l6: l6 { 204f126890aSEmmanuel Vadot regulator-min-microvolt = <2950000>; 205f126890aSEmmanuel Vadot regulator-max-microvolt = <2950000>; 206f126890aSEmmanuel Vadot bias-pull-down; 207f126890aSEmmanuel Vadot }; 208f126890aSEmmanuel Vadot 209f126890aSEmmanuel Vadot pm8921_l7: l7 { 210f126890aSEmmanuel Vadot regulator-always-on; 211f126890aSEmmanuel Vadot regulator-min-microvolt = <1850000>; 212f126890aSEmmanuel Vadot regulator-max-microvolt = <2950000>; 213f126890aSEmmanuel Vadot bias-pull-down; 214f126890aSEmmanuel Vadot }; 215f126890aSEmmanuel Vadot 216f126890aSEmmanuel Vadot pm8921_l8: l8 { 217f126890aSEmmanuel Vadot regulator-min-microvolt = <2800000>; 218f126890aSEmmanuel Vadot regulator-max-microvolt = <3000000>; 219f126890aSEmmanuel Vadot bias-pull-down; 220f126890aSEmmanuel Vadot }; 221f126890aSEmmanuel Vadot 222f126890aSEmmanuel Vadot pm8921_l9: l9 { 223f126890aSEmmanuel Vadot regulator-min-microvolt = <3000000>; 224f126890aSEmmanuel Vadot regulator-max-microvolt = <3000000>; 225f126890aSEmmanuel Vadot bias-pull-down; 226f126890aSEmmanuel Vadot }; 227f126890aSEmmanuel Vadot 228f126890aSEmmanuel Vadot pm8921_l10: l10 { 229f126890aSEmmanuel Vadot regulator-min-microvolt = <3000000>; 230f126890aSEmmanuel Vadot regulator-max-microvolt = <3000000>; 231f126890aSEmmanuel Vadot bias-pull-down; 232f126890aSEmmanuel Vadot }; 233f126890aSEmmanuel Vadot 234f126890aSEmmanuel Vadot pm8921_l11: l11 { 235f126890aSEmmanuel Vadot regulator-min-microvolt = <2850000>; 236f126890aSEmmanuel Vadot regulator-max-microvolt = <2850000>; 237f126890aSEmmanuel Vadot bias-pull-down; 238f126890aSEmmanuel Vadot }; 239f126890aSEmmanuel Vadot 240f126890aSEmmanuel Vadot pm8921_l12: l12 { 241f126890aSEmmanuel Vadot regulator-min-microvolt = <1200000>; 242f126890aSEmmanuel Vadot regulator-max-microvolt = <1200000>; 243f126890aSEmmanuel Vadot bias-pull-down; 244f126890aSEmmanuel Vadot }; 245f126890aSEmmanuel Vadot 246f126890aSEmmanuel Vadot pm8921_l14: l14 { 247f126890aSEmmanuel Vadot regulator-min-microvolt = <1800000>; 248f126890aSEmmanuel Vadot regulator-max-microvolt = <1800000>; 249f126890aSEmmanuel Vadot bias-pull-down; 250f126890aSEmmanuel Vadot }; 251f126890aSEmmanuel Vadot 252f126890aSEmmanuel Vadot pm8921_l15: l15 { 253f126890aSEmmanuel Vadot regulator-min-microvolt = <1800000>; 254f126890aSEmmanuel Vadot regulator-max-microvolt = <2950000>; 255f126890aSEmmanuel Vadot bias-pull-down; 256f126890aSEmmanuel Vadot }; 257f126890aSEmmanuel Vadot 258f126890aSEmmanuel Vadot pm8921_l16: l16 { 259f126890aSEmmanuel Vadot regulator-min-microvolt = <2800000>; 260f126890aSEmmanuel Vadot regulator-max-microvolt = <2800000>; 261f126890aSEmmanuel Vadot bias-pull-down; 262f126890aSEmmanuel Vadot }; 263f126890aSEmmanuel Vadot 264f126890aSEmmanuel Vadot pm8921_l17: l17 { 265f126890aSEmmanuel Vadot regulator-min-microvolt = <1800000>; 266f126890aSEmmanuel Vadot regulator-max-microvolt = <2950000>; 267f126890aSEmmanuel Vadot bias-pull-down; 268f126890aSEmmanuel Vadot }; 269f126890aSEmmanuel Vadot 270f126890aSEmmanuel Vadot pm8921_l18: l18 { 271f126890aSEmmanuel Vadot regulator-min-microvolt = <1300000>; 272f126890aSEmmanuel Vadot regulator-max-microvolt = <1300000>; 273f126890aSEmmanuel Vadot bias-pull-down; 274f126890aSEmmanuel Vadot }; 275f126890aSEmmanuel Vadot 276f126890aSEmmanuel Vadot pm8921_l21: l21 { 277f126890aSEmmanuel Vadot regulator-min-microvolt = <1900000>; 278f126890aSEmmanuel Vadot regulator-max-microvolt = <1900000>; 279f126890aSEmmanuel Vadot bias-pull-down; 280f126890aSEmmanuel Vadot }; 281f126890aSEmmanuel Vadot 282f126890aSEmmanuel Vadot pm8921_l22: l22 { 283f126890aSEmmanuel Vadot regulator-min-microvolt = <2750000>; 284f126890aSEmmanuel Vadot regulator-max-microvolt = <2750000>; 285f126890aSEmmanuel Vadot bias-pull-down; 286f126890aSEmmanuel Vadot }; 287f126890aSEmmanuel Vadot 288f126890aSEmmanuel Vadot pm8921_l23: l23 { 289f126890aSEmmanuel Vadot regulator-always-on; 290f126890aSEmmanuel Vadot regulator-min-microvolt = <1800000>; 291f126890aSEmmanuel Vadot regulator-max-microvolt = <1800000>; 292f126890aSEmmanuel Vadot bias-pull-down; 293f126890aSEmmanuel Vadot }; 294f126890aSEmmanuel Vadot 295f126890aSEmmanuel Vadot pm8921_l24: l24 { 296f126890aSEmmanuel Vadot regulator-min-microvolt = <750000>; 297f126890aSEmmanuel Vadot regulator-max-microvolt = <1150000>; 298f126890aSEmmanuel Vadot bias-pull-down; 299f126890aSEmmanuel Vadot }; 300f126890aSEmmanuel Vadot 301f126890aSEmmanuel Vadot pm8921_l25: l25 { 302f126890aSEmmanuel Vadot regulator-always-on; 303f126890aSEmmanuel Vadot regulator-min-microvolt = <1250000>; 304f126890aSEmmanuel Vadot regulator-max-microvolt = <1250000>; 305f126890aSEmmanuel Vadot bias-pull-down; 306f126890aSEmmanuel Vadot }; 307f126890aSEmmanuel Vadot 308f126890aSEmmanuel Vadot /* Low Voltage Switch */ 309f126890aSEmmanuel Vadot pm8921_lvs1: lvs1 { 310f126890aSEmmanuel Vadot bias-pull-down; 311f126890aSEmmanuel Vadot }; 312f126890aSEmmanuel Vadot 313f126890aSEmmanuel Vadot pm8921_lvs2: lvs2 { 314f126890aSEmmanuel Vadot bias-pull-down; 315f126890aSEmmanuel Vadot }; 316f126890aSEmmanuel Vadot 317f126890aSEmmanuel Vadot pm8921_lvs3: lvs3 { 318f126890aSEmmanuel Vadot bias-pull-down; 319f126890aSEmmanuel Vadot }; 320f126890aSEmmanuel Vadot 321f126890aSEmmanuel Vadot pm8921_lvs4: lvs4 { 322f126890aSEmmanuel Vadot bias-pull-down; 323f126890aSEmmanuel Vadot }; 324f126890aSEmmanuel Vadot 325f126890aSEmmanuel Vadot pm8921_lvs5: lvs5 { 326f126890aSEmmanuel Vadot bias-pull-down; 327f126890aSEmmanuel Vadot }; 328f126890aSEmmanuel Vadot 329f126890aSEmmanuel Vadot pm8921_lvs6: lvs6 { 330f126890aSEmmanuel Vadot bias-pull-down; 331f126890aSEmmanuel Vadot }; 332f126890aSEmmanuel Vadot 333f126890aSEmmanuel Vadot pm8921_lvs7: lvs7 { 334f126890aSEmmanuel Vadot bias-pull-down; 335f126890aSEmmanuel Vadot }; 336f126890aSEmmanuel Vadot 337f126890aSEmmanuel Vadot pm8921_ncp: ncp { 338f126890aSEmmanuel Vadot regulator-min-microvolt = <1800000>; 339f126890aSEmmanuel Vadot regulator-max-microvolt = <1800000>; 340f126890aSEmmanuel Vadot qcom,switch-mode-frequency = <1600000>; 341f126890aSEmmanuel Vadot }; 342f126890aSEmmanuel Vadot }; 343f126890aSEmmanuel Vadot}; 344f126890aSEmmanuel Vadot 345f126890aSEmmanuel Vadot/* eMMC */ 346f126890aSEmmanuel Vadot&sdcc1 { 347f126890aSEmmanuel Vadot status = "okay"; 348f126890aSEmmanuel Vadot}; 349f126890aSEmmanuel Vadot 350f126890aSEmmanuel Vadot/* External micro SD card */ 351f126890aSEmmanuel Vadot&sdcc3 { 352f126890aSEmmanuel Vadot status = "okay"; 353f126890aSEmmanuel Vadot}; 354