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