1// SPDX-License-Identifier: GPL-2.0-only 2#include "qcom-msm8974pro.dtsi" 3#include "pm8841.dtsi" 4#include "pm8941.dtsi" 5#include <dt-bindings/input/input.h> 6 7/ { 8 model = "HTC One (M8)"; 9 compatible = "htc,m8", "qcom,msm8974pro", "qcom,msm8974"; 10 chassis-type = "handset"; 11 12 aliases { 13 mmc0 = &sdhc_1; 14 }; 15 16 gpio-keys { 17 compatible = "gpio-keys"; 18 19 pinctrl-0 = <&gpio_keys_default>; 20 pinctrl-names = "default"; 21 22 key-volume-down { 23 label = "volume_down"; 24 gpios = <&tlmm 27 GPIO_ACTIVE_LOW>; 25 linux,code = <KEY_VOLUMEDOWN>; 26 debounce-interval = <20>; 27 wakeup-source; 28 }; 29 30 key-volume-up { 31 label = "volume_up"; 32 gpios = <&tlmm 28 GPIO_ACTIVE_LOW>; 33 linux,code = <KEY_VOLUMEUP>; 34 debounce-interval = <20>; 35 wakeup-source; 36 }; 37 }; 38 39 vreg_boost: vreg-boost { 40 compatible = "regulator-fixed"; 41 42 regulator-name = "vreg-boost"; 43 regulator-min-microvolt = <3150000>; 44 regulator-max-microvolt = <3150000>; 45 46 regulator-always-on; 47 regulator-boot-on; 48 49 gpio = <&pm8941_gpios 21 GPIO_ACTIVE_HIGH>; 50 enable-active-high; 51 52 pinctrl-0 = <&boost_bypass_n_pin>; 53 pinctrl-names = "default"; 54 }; 55 56 vreg_vph_pwr: vreg-vph-pwr { 57 compatible = "regulator-fixed"; 58 regulator-name = "vph-pwr"; 59 60 regulator-min-microvolt = <3600000>; 61 regulator-max-microvolt = <3600000>; 62 63 regulator-always-on; 64 }; 65}; 66 67&pm8941_vib { 68 status = "okay"; 69}; 70 71&pronto { 72 vddmx-supply = <&pm8841_s1>; 73 vddcx-supply = <&pm8841_s2>; 74 vddpx-supply = <&pm8941_s3>; 75 76 pinctrl-0 = <&wcnss_pin_a>; 77 pinctrl-names = "default"; 78 79 status = "okay"; 80 81 iris { 82 vddxo-supply = <&pm8941_l6>; 83 vddrfa-supply = <&pm8941_l11>; 84 vddpa-supply = <&pm8941_l19>; 85 vdddig-supply = <&pm8941_s3>; 86 }; 87 88 smd-edge { 89 qcom,remote-pid = <4>; 90 label = "pronto"; 91 92 wcnss { 93 status = "okay"; 94 }; 95 }; 96}; 97 98&rpm_requests { 99 regulators-0 { 100 compatible = "qcom,rpm-pm8841-regulators"; 101 102 pm8841_s1: s1 { 103 regulator-min-microvolt = <675000>; 104 regulator-max-microvolt = <1050000>; 105 }; 106 107 pm8841_s2: s2 { 108 regulator-min-microvolt = <500000>; 109 regulator-max-microvolt = <1050000>; 110 }; 111 112 pm8841_s3: s3 { 113 regulator-min-microvolt = <1050000>; 114 regulator-max-microvolt = <1050000>; 115 }; 116 117 pm8841_s4: s4 { 118 regulator-min-microvolt = <815000>; 119 regulator-max-microvolt = <900000>; 120 }; 121 }; 122 123 regulators-1 { 124 compatible = "qcom,rpm-pm8941-regulators"; 125 126 vdd_l1_l3-supply = <&pm8941_s1>; 127 vdd_l2_lvs1_2_3-supply = <&pm8941_s3>; 128 vdd_l4_l11-supply = <&pm8941_s1>; 129 vdd_l5_l7-supply = <&pm8941_s2>; 130 vdd_l6_l12_l14_l15-supply = <&pm8941_s2>; 131 vdd_l8_l16_l18_l19-supply = <&vreg_vph_pwr>; 132 vdd_l9_l10_l17_l22-supply = <&vreg_boost>; 133 vdd_l13_l20_l23_l24-supply = <&vreg_boost>; 134 vdd_l21-supply = <&vreg_boost>; 135 136 pm8941_s1: s1 { 137 regulator-min-microvolt = <1300000>; 138 regulator-max-microvolt = <1300000>; 139 regulator-always-on; 140 regulator-boot-on; 141 }; 142 143 pm8941_s2: s2 { 144 regulator-min-microvolt = <2150000>; 145 regulator-max-microvolt = <2150000>; 146 regulator-boot-on; 147 }; 148 149 pm8941_s3: s3 { 150 regulator-min-microvolt = <1800000>; 151 regulator-max-microvolt = <1800000>; 152 regulator-always-on; 153 regulator-boot-on; 154 }; 155 156 pm8941_l1: l1 { 157 regulator-min-microvolt = <1225000>; 158 regulator-max-microvolt = <1225000>; 159 regulator-always-on; 160 regulator-boot-on; 161 }; 162 163 pm8941_l2: l2 { 164 regulator-min-microvolt = <1200000>; 165 regulator-max-microvolt = <1200000>; 166 }; 167 168 pm8941_l3: l3 { 169 regulator-min-microvolt = <1200000>; 170 regulator-max-microvolt = <1200000>; 171 }; 172 173 pm8941_l4: l4 { 174 regulator-min-microvolt = <1225000>; 175 regulator-max-microvolt = <1225000>; 176 }; 177 178 pm8941_l5: l5 { 179 regulator-min-microvolt = <1800000>; 180 regulator-max-microvolt = <1800000>; 181 }; 182 183 pm8941_l6: l6 { 184 regulator-min-microvolt = <1800000>; 185 regulator-max-microvolt = <1800000>; 186 regulator-boot-on; 187 }; 188 189 pm8941_l7: l7 { 190 regulator-min-microvolt = <1800000>; 191 regulator-max-microvolt = <1800000>; 192 regulator-boot-on; 193 }; 194 195 pm8941_l8: l8 { 196 regulator-min-microvolt = <1800000>; 197 regulator-max-microvolt = <1800000>; 198 }; 199 200 pm8941_l9: l9 { 201 regulator-min-microvolt = <1800000>; 202 regulator-max-microvolt = <2950000>; 203 }; 204 205 pm8941_l10: l10 { 206 regulator-min-microvolt = <1800000>; 207 regulator-max-microvolt = <2950000>; 208 }; 209 210 pm8941_l11: l11 { 211 regulator-min-microvolt = <1225000>; 212 regulator-max-microvolt = <1350000>; 213 }; 214 215 pm8941_l12: l12 { 216 regulator-min-microvolt = <1800000>; 217 regulator-max-microvolt = <1800000>; 218 regulator-always-on; 219 regulator-boot-on; 220 }; 221 222 pm8941_l13: l13 { 223 regulator-min-microvolt = <1800000>; 224 regulator-max-microvolt = <2950000>; 225 regulator-boot-on; 226 }; 227 228 pm8941_l14: l14 { 229 regulator-min-microvolt = <1800000>; 230 regulator-max-microvolt = <1800000>; 231 }; 232 233 pm8941_l15: l15 { 234 regulator-min-microvolt = <2050000>; 235 regulator-max-microvolt = <2050000>; 236 }; 237 238 pm8941_l16: l16 { 239 regulator-min-microvolt = <2700000>; 240 regulator-max-microvolt = <2700000>; 241 }; 242 243 pm8941_l17: l17 { 244 regulator-min-microvolt = <2850000>; 245 regulator-max-microvolt = <2850000>; 246 }; 247 248 pm8941_l18: l18 { 249 regulator-min-microvolt = <2850000>; 250 regulator-max-microvolt = <2850000>; 251 }; 252 253 pm8941_l19: l19 { 254 regulator-min-microvolt = <2900000>; 255 regulator-max-microvolt = <3350000>; 256 }; 257 258 pm8941_l20: l20 { 259 regulator-min-microvolt = <2950000>; 260 regulator-max-microvolt = <2950000>; 261 regulator-system-load = <200000>; 262 regulator-allow-set-load; 263 regulator-boot-on; 264 }; 265 266 pm8941_l21: l21 { 267 regulator-min-microvolt = <2950000>; 268 regulator-max-microvolt = <2950000>; 269 regulator-boot-on; 270 }; 271 272 pm8941_l22: l22 { 273 regulator-min-microvolt = <3300000>; 274 regulator-max-microvolt = <3300000>; 275 }; 276 277 pm8941_l23: l23 { 278 regulator-min-microvolt = <3000000>; 279 regulator-max-microvolt = <3000000>; 280 }; 281 282 pm8941_l24: l24 { 283 regulator-min-microvolt = <3075000>; 284 regulator-max-microvolt = <3075000>; 285 regulator-boot-on; 286 }; 287 }; 288}; 289 290&sdhc_1 { 291 vmmc-supply = <&pm8941_l20>; 292 vqmmc-supply = <&pm8941_s3>; 293 294 pinctrl-0 = <&sdc1_on>; 295 pinctrl-1 = <&sdc1_off>; 296 pinctrl-names = "default", "sleep"; 297 298 status = "okay"; 299}; 300 301&smbb { 302 status = "okay"; 303}; 304 305&tlmm { 306 gpio_keys_default: gpio-keys-default-state { 307 pins = "gpio27", "gpio28"; 308 function = "gpio"; 309 bias-pull-up; 310 }; 311 312 sdc1_on: sdc1-on-state { 313 clk-pins { 314 pins = "sdc1_clk"; 315 drive-strength = <10>; 316 bias-disable; 317 }; 318 319 cmd-data-pins { 320 pins = "sdc1_cmd", "sdc1_data"; 321 drive-strength = <10>; 322 bias-pull-up; 323 }; 324 }; 325 326 wcnss_pin_a: wcnss-pin-active-state { 327 pins = "gpio36", "gpio37", "gpio38", "gpio39", "gpio40"; 328 function = "wlan"; 329 drive-strength = <6>; 330 bias-pull-down; 331 }; 332}; 333 334&usb { 335 phys = <&usb_hs1_phy>; 336 phy-select = <&tcsr 0xb000 0>; 337 extcon = <&smbb>, <&usb_id>; 338 vbus-supply = <&chg_otg>; 339 340 hnp-disable; 341 srp-disable; 342 adp-disable; 343 344 status = "okay"; 345}; 346 347&usb_hs1_phy { 348 v1p8-supply = <&pm8941_l6>; 349 v3p3-supply = <&pm8941_l24>; 350 extcon = <&smbb>; 351 qcom,init-seq = /bits/ 8 <0x1 0x63>; 352 status = "okay"; 353}; 354