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