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