1 // SPDX-License-Identifier: BSD-3-Clause 1 // SPDX-License-Identifier: BSD-3-Clause 2 /* 2 /* 3 * sc7280 IDP board device tree source (common 3 * sc7280 IDP board device tree source (common between SKU1 and SKU2) 4 * 4 * 5 * Copyright (c) 2021, The Linux Foundation. A 5 * Copyright (c) 2021, The Linux Foundation. All rights reserved. 6 */ 6 */ 7 7 8 #include <dt-bindings/iio/qcom,spmi-adc7-pmk83 8 #include <dt-bindings/iio/qcom,spmi-adc7-pmk8350.h> 9 #include <dt-bindings/input/linux-event-codes. 9 #include <dt-bindings/input/linux-event-codes.h> 10 #include "sc7280.dtsi" 10 #include "sc7280.dtsi" 11 #include "pm7325.dtsi" 11 #include "pm7325.dtsi" 12 #include "pm8350c.dtsi" 12 #include "pm8350c.dtsi" 13 #include "pmk8350.dtsi" 13 #include "pmk8350.dtsi" 14 14 15 #include "sc7280-chrome-common.dtsi" 15 #include "sc7280-chrome-common.dtsi" 16 #include "sc7280-herobrine-lte-sku.dtsi" 16 #include "sc7280-herobrine-lte-sku.dtsi" 17 17 18 / { 18 / { 19 aliases { 19 aliases { 20 bluetooth0 = &bluetooth; 20 bluetooth0 = &bluetooth; 21 serial1 = &uart7; 21 serial1 = &uart7; 22 wifi0 = &wifi; << 23 }; 22 }; 24 23 25 max98360a: audio-codec-0 { 24 max98360a: audio-codec-0 { 26 compatible = "maxim,max98360a" 25 compatible = "maxim,max98360a"; 27 pinctrl-names = "default"; 26 pinctrl-names = "default"; 28 pinctrl-0 = <&_en>; 27 pinctrl-0 = <&_en>; 29 sdmode-gpios = <&tlmm 63 GPIO_ 28 sdmode-gpios = <&tlmm 63 GPIO_ACTIVE_HIGH>; 30 #sound-dai-cells = <0>; 29 #sound-dai-cells = <0>; 31 }; 30 }; 32 31 33 wcd9385: audio-codec-1 { 32 wcd9385: audio-codec-1 { 34 compatible = "qcom,wcd9385-cod 33 compatible = "qcom,wcd9385-codec"; 35 pinctrl-names = "default", "sl 34 pinctrl-names = "default", "sleep"; 36 pinctrl-0 = <&wcd_reset_n>; 35 pinctrl-0 = <&wcd_reset_n>; 37 pinctrl-1 = <&wcd_reset_n_slee 36 pinctrl-1 = <&wcd_reset_n_sleep>; 38 37 39 reset-gpios = <&tlmm 83 GPIO_A 38 reset-gpios = <&tlmm 83 GPIO_ACTIVE_LOW>; 40 39 41 qcom,rx-device = <&wcd_rx>; 40 qcom,rx-device = <&wcd_rx>; 42 qcom,tx-device = <&wcd_tx>; 41 qcom,tx-device = <&wcd_tx>; 43 42 44 vdd-rxtx-supply = <&vreg_l18b_ 43 vdd-rxtx-supply = <&vreg_l18b_1p8>; 45 vdd-io-supply = <&vreg_l18b_1p 44 vdd-io-supply = <&vreg_l18b_1p8>; 46 vdd-buck-supply = <&vreg_l17b_ 45 vdd-buck-supply = <&vreg_l17b_1p8>; 47 vdd-mic-bias-supply = <&vreg_b 46 vdd-mic-bias-supply = <&vreg_bob>; 48 47 49 qcom,micbias1-microvolt = <180 48 qcom,micbias1-microvolt = <1800000>; 50 qcom,micbias2-microvolt = <180 49 qcom,micbias2-microvolt = <1800000>; 51 qcom,micbias3-microvolt = <180 50 qcom,micbias3-microvolt = <1800000>; 52 qcom,micbias4-microvolt = <180 51 qcom,micbias4-microvolt = <1800000>; 53 52 54 qcom,mbhc-buttons-vthreshold-m 53 qcom,mbhc-buttons-vthreshold-microvolt = <75000 150000 237000 500000 500000 55 54 500000 500000 500000>; 56 qcom,mbhc-headset-vthreshold-m 55 qcom,mbhc-headset-vthreshold-microvolt = <1700000>; 57 qcom,mbhc-headphone-vthreshold 56 qcom,mbhc-headphone-vthreshold-microvolt = <50000>; 58 #sound-dai-cells = <1>; 57 #sound-dai-cells = <1>; 59 }; 58 }; 60 59 61 gpio-keys { 60 gpio-keys { 62 compatible = "gpio-keys"; 61 compatible = "gpio-keys"; 63 label = "gpio-keys"; 62 label = "gpio-keys"; 64 63 65 pinctrl-names = "default"; 64 pinctrl-names = "default"; 66 pinctrl-0 = <&key_vol_up_defau 65 pinctrl-0 = <&key_vol_up_default>; 67 66 68 key-volume-up { 67 key-volume-up { 69 label = "volume_up"; 68 label = "volume_up"; 70 gpios = <&pm7325_gpios 69 gpios = <&pm7325_gpios 6 GPIO_ACTIVE_LOW>; 71 linux,input-type = <1> 70 linux,input-type = <1>; 72 linux,code = <KEY_VOLU 71 linux,code = <KEY_VOLUMEUP>; 73 wakeup-source; !! 72 gpio-key,wakeup; 74 debounce-interval = <1 73 debounce-interval = <15>; 75 linux,can-disable; 74 linux,can-disable; 76 }; 75 }; 77 }; 76 }; 78 77 79 nvme_3v3_regulator: nvme-3v3-regulator 78 nvme_3v3_regulator: nvme-3v3-regulator { 80 compatible = "regulator-fixed" 79 compatible = "regulator-fixed"; 81 regulator-name = "VLDO_3V3"; 80 regulator-name = "VLDO_3V3"; 82 81 83 regulator-min-microvolt = <330 82 regulator-min-microvolt = <3300000>; 84 regulator-max-microvolt = <330 83 regulator-max-microvolt = <3300000>; 85 84 86 enable-active-high; 85 enable-active-high; 87 pinctrl-names = "default"; 86 pinctrl-names = "default"; 88 pinctrl-0 = <&nvme_pwren>; 87 pinctrl-0 = <&nvme_pwren>; 89 }; 88 }; 90 89 91 sound: sound { 90 sound: sound { 92 compatible = "google,sc7280-he 91 compatible = "google,sc7280-herobrine"; 93 model = "sc7280-wcd938x-max983 92 model = "sc7280-wcd938x-max98360a-1mic"; 94 93 95 audio-routing = 94 audio-routing = 96 "IN1_HPHL", "HPHL_OUT" 95 "IN1_HPHL", "HPHL_OUT", 97 "IN2_HPHR", "HPHR_OUT" 96 "IN2_HPHR", "HPHR_OUT", 98 "AMIC1", "MIC BIAS1", 97 "AMIC1", "MIC BIAS1", 99 "AMIC2", "MIC BIAS2", 98 "AMIC2", "MIC BIAS2", 100 "VA DMIC0", "MIC BIAS3 99 "VA DMIC0", "MIC BIAS3", 101 "VA DMIC1", "MIC BIAS3 100 "VA DMIC1", "MIC BIAS3", 102 "VA DMIC2", "MIC BIAS1 101 "VA DMIC2", "MIC BIAS1", 103 "VA DMIC3", "MIC BIAS1 102 "VA DMIC3", "MIC BIAS1", 104 "TX SWR_ADC0", "ADC1_O 103 "TX SWR_ADC0", "ADC1_OUTPUT", 105 "TX SWR_ADC1", "ADC2_O 104 "TX SWR_ADC1", "ADC2_OUTPUT", 106 "TX SWR_ADC2", "ADC3_O 105 "TX SWR_ADC2", "ADC3_OUTPUT", 107 "TX SWR_DMIC0", "DMIC1 106 "TX SWR_DMIC0", "DMIC1_OUTPUT", 108 "TX SWR_DMIC1", "DMIC2 107 "TX SWR_DMIC1", "DMIC2_OUTPUT", 109 "TX SWR_DMIC2", "DMIC3 108 "TX SWR_DMIC2", "DMIC3_OUTPUT", 110 "TX SWR_DMIC3", "DMIC4 109 "TX SWR_DMIC3", "DMIC4_OUTPUT", 111 "TX SWR_DMIC4", "DMIC5 110 "TX SWR_DMIC4", "DMIC5_OUTPUT", 112 "TX SWR_DMIC5", "DMIC6 111 "TX SWR_DMIC5", "DMIC6_OUTPUT", 113 "TX SWR_DMIC6", "DMIC7 112 "TX SWR_DMIC6", "DMIC7_OUTPUT", 114 "TX SWR_DMIC7", "DMIC8 113 "TX SWR_DMIC7", "DMIC8_OUTPUT"; 115 114 >> 115 qcom,msm-mbhc-hphl-swh = <1>; >> 116 qcom,msm-mbhc-gnd-swh = <1>; >> 117 116 #address-cells = <1>; 118 #address-cells = <1>; 117 #size-cells = <0>; 119 #size-cells = <0>; >> 120 #sound-dai-cells = <0>; 118 121 119 dai-link@0 { 122 dai-link@0 { 120 link-name = "MAX98360A 123 link-name = "MAX98360A"; 121 reg = <0>; 124 reg = <0>; 122 125 123 cpu { 126 cpu { 124 sound-dai = <& 127 sound-dai = <&lpass_cpu MI2S_SECONDARY>; 125 }; 128 }; 126 129 127 codec { 130 codec { 128 sound-dai = <& 131 sound-dai = <&max98360a>; 129 }; 132 }; 130 }; 133 }; 131 134 132 dai-link@1 { 135 dai-link@1 { 133 link-name = "DisplayPo 136 link-name = "DisplayPort"; 134 reg = <1>; 137 reg = <1>; 135 138 136 cpu { 139 cpu { 137 sound-dai = <& 140 sound-dai = <&lpass_cpu LPASS_DP_RX>; 138 }; 141 }; 139 142 140 codec { 143 codec { 141 sound-dai = <& 144 sound-dai = <&mdss_dp>; 142 }; 145 }; 143 }; 146 }; 144 147 145 dai-link@2 { 148 dai-link@2 { 146 link-name = "WCD9385 P 149 link-name = "WCD9385 Playback"; 147 reg = <2>; 150 reg = <2>; 148 151 149 cpu { 152 cpu { 150 sound-dai = <& 153 sound-dai = <&lpass_cpu LPASS_CDC_DMA_RX0>; 151 }; 154 }; 152 155 153 codec { 156 codec { 154 sound-dai = <& 157 sound-dai = <&wcd9385 0>, <&swr0 0>, <&lpass_rx_macro 0>; 155 }; 158 }; 156 }; 159 }; 157 160 158 dai-link@3 { 161 dai-link@3 { 159 link-name = "WCD9385 C 162 link-name = "WCD9385 Capture"; 160 reg = <3>; 163 reg = <3>; 161 164 162 cpu { 165 cpu { 163 sound-dai = <& 166 sound-dai = <&lpass_cpu LPASS_CDC_DMA_TX3>; 164 }; 167 }; 165 168 166 codec { 169 codec { 167 sound-dai = <& 170 sound-dai = <&wcd9385 1>, <&swr1 0>, <&lpass_tx_macro 0>; 168 }; 171 }; 169 }; 172 }; 170 173 171 dai-link@4 { 174 dai-link@4 { 172 link-name = "DMIC"; 175 link-name = "DMIC"; 173 reg = <4>; 176 reg = <4>; 174 177 175 cpu { 178 cpu { 176 sound-dai = <& 179 sound-dai = <&lpass_cpu LPASS_CDC_DMA_VA_TX0>; 177 }; 180 }; 178 181 179 codec { 182 codec { 180 sound-dai = <& 183 sound-dai = <&lpass_va_macro 0>; 181 }; 184 }; 182 }; 185 }; 183 }; 186 }; 184 }; 187 }; 185 188 186 &apps_rsc { 189 &apps_rsc { 187 regulators-0 { !! 190 pm7325-regulators { 188 compatible = "qcom,pm7325-rpmh 191 compatible = "qcom,pm7325-rpmh-regulators"; 189 qcom,pmic-id = "b"; 192 qcom,pmic-id = "b"; 190 193 191 vreg_s1b_1p8: smps1 { 194 vreg_s1b_1p8: smps1 { 192 regulator-min-microvol 195 regulator-min-microvolt = <1856000>; 193 regulator-max-microvol 196 regulator-max-microvolt = <2040000>; 194 }; 197 }; 195 198 196 vreg_s7b_0p9: smps7 { 199 vreg_s7b_0p9: smps7 { 197 regulator-min-microvol 200 regulator-min-microvolt = <535000>; 198 regulator-max-microvol 201 regulator-max-microvolt = <1120000>; 199 }; 202 }; 200 203 201 vreg_s8b_1p2: smps8 { 204 vreg_s8b_1p2: smps8 { 202 regulator-min-microvol 205 regulator-min-microvolt = <1256000>; 203 regulator-max-microvol 206 regulator-max-microvolt = <1500000>; 204 }; 207 }; 205 208 206 vreg_l1b_0p8: ldo1 { 209 vreg_l1b_0p8: ldo1 { 207 regulator-min-microvol 210 regulator-min-microvolt = <825000>; 208 regulator-max-microvol 211 regulator-max-microvolt = <925000>; 209 }; 212 }; 210 213 211 vreg_l2b_3p0: ldo2 { 214 vreg_l2b_3p0: ldo2 { 212 regulator-min-microvol 215 regulator-min-microvolt = <2700000>; 213 regulator-max-microvol 216 regulator-max-microvolt = <3544000>; 214 }; 217 }; 215 218 216 vreg_l6b_1p2: ldo6 { 219 vreg_l6b_1p2: ldo6 { 217 regulator-min-microvol 220 regulator-min-microvolt = <1140000>; 218 regulator-max-microvol 221 regulator-max-microvolt = <1260000>; 219 }; 222 }; 220 223 221 vreg_l7b_2p9: ldo7 { 224 vreg_l7b_2p9: ldo7 { 222 regulator-min-microvol 225 regulator-min-microvolt = <2960000>; 223 regulator-max-microvol 226 regulator-max-microvolt = <2960000>; 224 }; 227 }; 225 228 226 vreg_l8b_0p9: ldo8 { 229 vreg_l8b_0p9: ldo8 { 227 regulator-min-microvol 230 regulator-min-microvolt = <870000>; 228 regulator-max-microvol 231 regulator-max-microvolt = <970000>; 229 }; 232 }; 230 233 231 vreg_l9b_1p2: ldo9 { 234 vreg_l9b_1p2: ldo9 { 232 regulator-min-microvol 235 regulator-min-microvolt = <1080000>; 233 regulator-max-microvol 236 regulator-max-microvolt = <1304000>; 234 }; 237 }; 235 238 236 vreg_l11b_1p7: ldo11 { 239 vreg_l11b_1p7: ldo11 { 237 regulator-min-microvol 240 regulator-min-microvolt = <1504000>; 238 regulator-max-microvol 241 regulator-max-microvolt = <2000000>; 239 }; 242 }; 240 243 241 vreg_l12b_0p8: ldo12 { 244 vreg_l12b_0p8: ldo12 { 242 regulator-min-microvol 245 regulator-min-microvolt = <751000>; 243 regulator-max-microvol 246 regulator-max-microvolt = <824000>; 244 }; 247 }; 245 248 246 vreg_l13b_0p8: ldo13 { 249 vreg_l13b_0p8: ldo13 { 247 regulator-min-microvol 250 regulator-min-microvolt = <530000>; 248 regulator-max-microvol 251 regulator-max-microvolt = <824000>; 249 }; 252 }; 250 253 251 vreg_l14b_1p2: ldo14 { 254 vreg_l14b_1p2: ldo14 { 252 regulator-min-microvol 255 regulator-min-microvolt = <1080000>; 253 regulator-max-microvol 256 regulator-max-microvolt = <1304000>; 254 }; 257 }; 255 258 256 vreg_l15b_0p8: ldo15 { 259 vreg_l15b_0p8: ldo15 { 257 regulator-min-microvol 260 regulator-min-microvolt = <765000>; 258 regulator-max-microvol 261 regulator-max-microvolt = <1020000>; 259 }; 262 }; 260 263 261 vreg_l16b_1p2: ldo16 { 264 vreg_l16b_1p2: ldo16 { 262 regulator-min-microvol 265 regulator-min-microvolt = <1100000>; 263 regulator-max-microvol 266 regulator-max-microvolt = <1300000>; 264 }; 267 }; 265 268 266 vreg_l17b_1p8: ldo17 { 269 vreg_l17b_1p8: ldo17 { 267 regulator-min-microvol 270 regulator-min-microvolt = <1700000>; 268 regulator-max-microvol 271 regulator-max-microvolt = <1900000>; 269 }; 272 }; 270 273 271 vreg_l18b_1p8: ldo18 { 274 vreg_l18b_1p8: ldo18 { 272 regulator-min-microvol 275 regulator-min-microvolt = <1800000>; 273 regulator-max-microvol 276 regulator-max-microvolt = <2000000>; 274 }; 277 }; 275 278 276 vreg_l19b_1p8: ldo19 { 279 vreg_l19b_1p8: ldo19 { 277 regulator-min-microvol 280 regulator-min-microvolt = <1800000>; 278 regulator-max-microvol 281 regulator-max-microvolt = <1800000>; 279 }; 282 }; 280 }; 283 }; 281 284 282 regulators-1 { !! 285 pm8350c-regulators { 283 compatible = "qcom,pm8350c-rpm 286 compatible = "qcom,pm8350c-rpmh-regulators"; 284 qcom,pmic-id = "c"; 287 qcom,pmic-id = "c"; 285 288 286 vreg_s1c_2p2: smps1 { 289 vreg_s1c_2p2: smps1 { 287 regulator-min-microvol 290 regulator-min-microvolt = <2190000>; 288 regulator-max-microvol 291 regulator-max-microvolt = <2210000>; 289 }; 292 }; 290 293 291 vreg_s9c_1p0: smps9 { 294 vreg_s9c_1p0: smps9 { 292 regulator-min-microvol 295 regulator-min-microvolt = <1010000>; 293 regulator-max-microvol 296 regulator-max-microvolt = <1170000>; 294 }; 297 }; 295 298 296 vreg_l1c_1p8: ldo1 { 299 vreg_l1c_1p8: ldo1 { 297 regulator-min-microvol 300 regulator-min-microvolt = <1800000>; 298 regulator-max-microvol 301 regulator-max-microvolt = <1980000>; 299 }; 302 }; 300 303 301 vreg_l2c_1p8: ldo2 { 304 vreg_l2c_1p8: ldo2 { 302 regulator-min-microvol 305 regulator-min-microvolt = <1620000>; 303 regulator-max-microvol 306 regulator-max-microvolt = <1980000>; 304 }; 307 }; 305 308 306 vreg_l3c_3p0: ldo3 { 309 vreg_l3c_3p0: ldo3 { 307 regulator-min-microvol 310 regulator-min-microvolt = <2800000>; 308 regulator-max-microvol 311 regulator-max-microvolt = <3540000>; 309 }; 312 }; 310 313 311 vreg_l4c_1p8: ldo4 { 314 vreg_l4c_1p8: ldo4 { 312 regulator-min-microvol 315 regulator-min-microvolt = <1620000>; 313 regulator-max-microvol 316 regulator-max-microvolt = <3300000>; 314 }; 317 }; 315 318 316 vreg_l5c_1p8: ldo5 { 319 vreg_l5c_1p8: ldo5 { 317 regulator-min-microvol 320 regulator-min-microvolt = <1620000>; 318 regulator-max-microvol 321 regulator-max-microvolt = <3300000>; 319 }; 322 }; 320 323 321 vreg_l6c_2p9: ldo6 { 324 vreg_l6c_2p9: ldo6 { 322 regulator-min-microvol 325 regulator-min-microvolt = <1800000>; 323 regulator-max-microvol 326 regulator-max-microvolt = <2950000>; 324 }; 327 }; 325 328 326 vreg_l7c_3p0: ldo7 { 329 vreg_l7c_3p0: ldo7 { 327 regulator-min-microvol 330 regulator-min-microvolt = <3000000>; 328 regulator-max-microvol 331 regulator-max-microvolt = <3544000>; 329 }; 332 }; 330 333 331 vreg_l8c_1p8: ldo8 { 334 vreg_l8c_1p8: ldo8 { 332 regulator-min-microvol 335 regulator-min-microvolt = <1620000>; 333 regulator-max-microvol 336 regulator-max-microvolt = <2000000>; 334 }; 337 }; 335 338 336 vreg_l9c_2p9: ldo9 { 339 vreg_l9c_2p9: ldo9 { 337 regulator-min-microvol 340 regulator-min-microvolt = <2960000>; 338 regulator-max-microvol 341 regulator-max-microvolt = <2960000>; 339 }; 342 }; 340 343 341 vreg_l10c_0p8: ldo10 { 344 vreg_l10c_0p8: ldo10 { 342 regulator-min-microvol 345 regulator-min-microvolt = <720000>; 343 regulator-max-microvol 346 regulator-max-microvolt = <1050000>; 344 }; 347 }; 345 348 346 vreg_l11c_2p8: ldo11 { 349 vreg_l11c_2p8: ldo11 { 347 regulator-min-microvol 350 regulator-min-microvolt = <2800000>; 348 regulator-max-microvol 351 regulator-max-microvolt = <3544000>; 349 }; 352 }; 350 353 351 vreg_l12c_1p8: ldo12 { 354 vreg_l12c_1p8: ldo12 { 352 regulator-min-microvol 355 regulator-min-microvolt = <1650000>; 353 regulator-max-microvol 356 regulator-max-microvolt = <2000000>; 354 }; 357 }; 355 358 356 vreg_l13c_3p0: ldo13 { 359 vreg_l13c_3p0: ldo13 { 357 regulator-min-microvol 360 regulator-min-microvolt = <2700000>; 358 regulator-max-microvol 361 regulator-max-microvolt = <3544000>; 359 }; 362 }; 360 363 361 vreg_bob: bob { 364 vreg_bob: bob { 362 regulator-min-microvol 365 regulator-min-microvolt = <3008000>; 363 regulator-max-microvol 366 regulator-max-microvolt = <3960000>; 364 }; 367 }; 365 }; 368 }; 366 }; 369 }; 367 370 368 &gpi_dma0 { 371 &gpi_dma0 { 369 status = "okay"; 372 status = "okay"; 370 }; 373 }; 371 374 372 &gpi_dma1 { 375 &gpi_dma1 { 373 status = "okay"; 376 status = "okay"; 374 }; 377 }; 375 378 >> 379 &ipa { >> 380 status = "okay"; >> 381 modem-init; >> 382 }; >> 383 376 &lpass_cpu { 384 &lpass_cpu { 377 status = "okay"; 385 status = "okay"; 378 386 379 pinctrl-names = "default"; 387 pinctrl-names = "default"; 380 pinctrl-0 = <&mi2s1_data0>, <&mi2s1_sc 388 pinctrl-0 = <&mi2s1_data0>, <&mi2s1_sclk>, <&mi2s1_ws>; 381 389 382 dai-link@1 { 390 dai-link@1 { 383 reg = <MI2S_SECONDARY>; 391 reg = <MI2S_SECONDARY>; 384 qcom,playback-sd-lines = <0>; 392 qcom,playback-sd-lines = <0>; 385 }; 393 }; 386 394 387 dai-link@5 { 395 dai-link@5 { 388 reg = <LPASS_DP_RX>; 396 reg = <LPASS_DP_RX>; 389 }; 397 }; 390 398 391 dai-link@6 { 399 dai-link@6 { 392 reg = <LPASS_CDC_DMA_RX0>; 400 reg = <LPASS_CDC_DMA_RX0>; 393 }; 401 }; 394 402 395 dai-link@19 { 403 dai-link@19 { 396 reg = <LPASS_CDC_DMA_TX3>; 404 reg = <LPASS_CDC_DMA_TX3>; 397 }; 405 }; 398 406 399 dai-link@25 { 407 dai-link@25 { 400 reg = <LPASS_CDC_DMA_VA_TX0>; 408 reg = <LPASS_CDC_DMA_VA_TX0>; 401 }; 409 }; 402 }; 410 }; 403 411 404 &lpass_rx_macro { 412 &lpass_rx_macro { 405 status = "okay"; 413 status = "okay"; 406 }; 414 }; 407 415 408 &lpass_tx_macro { 416 &lpass_tx_macro { 409 status = "okay"; 417 status = "okay"; 410 }; 418 }; 411 419 412 &lpass_va_macro { 420 &lpass_va_macro { 413 status = "okay"; 421 status = "okay"; 414 vdd-micb-supply = <&vreg_bob>; 422 vdd-micb-supply = <&vreg_bob>; 415 }; 423 }; 416 424 417 &pcie1 { 425 &pcie1 { 418 status = "okay"; 426 status = "okay"; 419 perst-gpios = <&tlmm 2 GPIO_ACTIVE_LOW 427 perst-gpios = <&tlmm 2 GPIO_ACTIVE_LOW>; 420 428 421 vddpe-3v3-supply = <&nvme_3v3_regulato 429 vddpe-3v3-supply = <&nvme_3v3_regulator>; 422 430 423 pinctrl-names = "default"; 431 pinctrl-names = "default"; 424 pinctrl-0 = <&pcie1_reset_n>, <&pcie1_ 432 pinctrl-0 = <&pcie1_reset_n>, <&pcie1_wake_n>; 425 }; 433 }; 426 434 427 &pcie1_phy { 435 &pcie1_phy { 428 status = "okay"; 436 status = "okay"; 429 437 430 vdda-phy-supply = <&vreg_l10c_0p8>; 438 vdda-phy-supply = <&vreg_l10c_0p8>; 431 vdda-pll-supply = <&vreg_l6b_1p2>; 439 vdda-pll-supply = <&vreg_l6b_1p2>; 432 }; 440 }; 433 441 434 &pmk8350_vadc { 442 &pmk8350_vadc { 435 channel@3 { !! 443 pmk8350-die-temp@3 { 436 reg = <PMK8350_ADC7_DIE_TEMP>; 444 reg = <PMK8350_ADC7_DIE_TEMP>; 437 label = "pmk8350_die_temp"; 445 label = "pmk8350_die_temp"; 438 qcom,pre-scaling = <1 1>; 446 qcom,pre-scaling = <1 1>; 439 }; 447 }; 440 }; 448 }; 441 449 442 &qfprom { 450 &qfprom { 443 vcc-supply = <&vreg_l1c_1p8>; 451 vcc-supply = <&vreg_l1c_1p8>; 444 }; 452 }; 445 453 446 &qupv3_id_0 { 454 &qupv3_id_0 { 447 status = "okay"; 455 status = "okay"; 448 }; 456 }; 449 457 450 &qupv3_id_1 { 458 &qupv3_id_1 { 451 status = "okay"; 459 status = "okay"; 452 }; 460 }; 453 461 454 &sdhc_1 { 462 &sdhc_1 { 455 status = "okay"; 463 status = "okay"; 456 464 457 non-removable; 465 non-removable; 458 no-sd; 466 no-sd; 459 no-sdio; 467 no-sdio; 460 468 461 vmmc-supply = <&vreg_l7b_2p9>; 469 vmmc-supply = <&vreg_l7b_2p9>; 462 vqmmc-supply = <&vreg_l19b_1p8>; 470 vqmmc-supply = <&vreg_l19b_1p8>; 463 }; 471 }; 464 472 465 &sdhc_2 { 473 &sdhc_2 { 466 status = "okay"; 474 status = "okay"; 467 475 468 pinctrl-0 = <&sdc2_clk>, <&sdc2_cmd>, 476 pinctrl-0 = <&sdc2_clk>, <&sdc2_cmd>, <&sdc2_data>, <&sd_cd>; 469 pinctrl-1 = <&sdc2_clk_sleep>, <&sdc2_ 477 pinctrl-1 = <&sdc2_clk_sleep>, <&sdc2_cmd_sleep>, <&sdc2_data_sleep>, <&sd_cd>; 470 478 471 vmmc-supply = <&vreg_l9c_2p9>; 479 vmmc-supply = <&vreg_l9c_2p9>; 472 vqmmc-supply = <&vreg_l6c_2p9>; 480 vqmmc-supply = <&vreg_l6c_2p9>; 473 481 474 cd-gpios = <&tlmm 91 GPIO_ACTIVE_LOW>; 482 cd-gpios = <&tlmm 91 GPIO_ACTIVE_LOW>; 475 }; 483 }; 476 484 477 &swr0 { 485 &swr0 { 478 status = "okay"; 486 status = "okay"; 479 487 480 wcd_rx: codec@0,4 { 488 wcd_rx: codec@0,4 { 481 compatible = "sdw20217010d00"; 489 compatible = "sdw20217010d00"; 482 reg = <0 4>; 490 reg = <0 4>; 483 qcom,rx-port-mapping = <1 2 3 491 qcom,rx-port-mapping = <1 2 3 4 5>; 484 }; 492 }; 485 }; 493 }; 486 494 487 &swr1 { 495 &swr1 { 488 status = "okay"; 496 status = "okay"; 489 497 490 wcd_tx: codec@0,3 { 498 wcd_tx: codec@0,3 { 491 compatible = "sdw20217010d00"; 499 compatible = "sdw20217010d00"; 492 reg = <0 3>; 500 reg = <0 3>; 493 qcom,tx-port-mapping = <1 2 3 501 qcom,tx-port-mapping = <1 2 3 4>; 494 }; 502 }; 495 }; 503 }; 496 504 497 &uart5 { 505 &uart5 { 498 status = "okay"; !! 506 compatible = "qcom,geni-debug-uart"; 499 }; << 500 << 501 &ufs_mem_hc { << 502 reset-gpios = <&tlmm 175 GPIO_ACTIVE_L << 503 vcc-supply = <&vreg_l7b_2p9>; << 504 vcc-max-microamp = <800000>; << 505 vccq-supply = <&vreg_l9b_1p2>; << 506 vccq-max-microamp = <900000>; << 507 vccq2-supply = <&vreg_l9b_1p2>; << 508 vccq2-max-microamp = <900000>; << 509 << 510 status = "okay"; << 511 }; << 512 << 513 &ufs_mem_phy { << 514 vdda-phy-supply = <&vreg_l10c_0p8>; << 515 vdda-pll-supply = <&vreg_l6b_1p2>; << 516 << 517 status = "okay"; 507 status = "okay"; 518 }; 508 }; 519 509 520 &usb_1 { 510 &usb_1 { 521 status = "okay"; 511 status = "okay"; 522 }; 512 }; 523 513 524 &usb_1_dwc3 { 514 &usb_1_dwc3 { 525 dr_mode = "host"; 515 dr_mode = "host"; 526 }; 516 }; 527 517 528 &usb_1_hsphy { 518 &usb_1_hsphy { 529 status = "okay"; 519 status = "okay"; 530 520 531 vdda-pll-supply = <&vreg_l10c_0p8>; 521 vdda-pll-supply = <&vreg_l10c_0p8>; 532 vdda33-supply = <&vreg_l2b_3p0>; 522 vdda33-supply = <&vreg_l2b_3p0>; 533 vdda18-supply = <&vreg_l1c_1p8>; 523 vdda18-supply = <&vreg_l1c_1p8>; 534 qcom,hs-rise-fall-time-bp = <0>; << 535 qcom,squelch-detector-bp = <(-2090)>; << 536 qcom,hs-disconnect-bp = <1743>; << 537 qcom,hs-amplitude-bp = <1780>; << 538 qcom,hs-crossover-voltage-microvolt = << 539 qcom,hs-output-impedance-micro-ohms = << 540 }; 524 }; 541 525 542 &usb_1_qmpphy { 526 &usb_1_qmpphy { 543 status = "okay"; 527 status = "okay"; 544 528 545 vdda-phy-supply = <&vreg_l6b_1p2>; 529 vdda-phy-supply = <&vreg_l6b_1p2>; 546 vdda-pll-supply = <&vreg_l1b_0p8>; 530 vdda-pll-supply = <&vreg_l1b_0p8>; 547 }; 531 }; 548 532 549 &uart7 { 533 &uart7 { 550 status = "okay"; 534 status = "okay"; 551 535 552 /delete-property/interrupts; 536 /delete-property/interrupts; 553 interrupts-extended = <&intc GIC_SPI 6 537 interrupts-extended = <&intc GIC_SPI 608 IRQ_TYPE_LEVEL_HIGH>, 554 <&tlmm 31 IRQ_ 538 <&tlmm 31 IRQ_TYPE_EDGE_FALLING>; 555 pinctrl-names = "default", "sleep"; 539 pinctrl-names = "default", "sleep"; 556 pinctrl-1 = <&qup_uart7_sleep_cts>, <& 540 pinctrl-1 = <&qup_uart7_sleep_cts>, <&qup_uart7_sleep_rts>, <&qup_uart7_sleep_tx>, <&qup_uart7_sleep_rx>; 557 541 558 bluetooth: bluetooth { 542 bluetooth: bluetooth { 559 compatible = "qcom,wcn6750-bt" 543 compatible = "qcom,wcn6750-bt"; 560 pinctrl-names = "default"; 544 pinctrl-names = "default"; 561 pinctrl-0 = <&bt_en>, <&sw_ctr 545 pinctrl-0 = <&bt_en>, <&sw_ctrl>; 562 enable-gpios = <&tlmm 85 GPIO_ 546 enable-gpios = <&tlmm 85 GPIO_ACTIVE_HIGH>; 563 swctrl-gpios = <&tlmm 86 GPIO_ 547 swctrl-gpios = <&tlmm 86 GPIO_ACTIVE_HIGH>; 564 vddaon-supply = <&vreg_s7b_0p9 548 vddaon-supply = <&vreg_s7b_0p9>; 565 vddbtcxmx-supply = <&vreg_s7b_ 549 vddbtcxmx-supply = <&vreg_s7b_0p9>; 566 vddrfacmn-supply = <&vreg_s7b_ 550 vddrfacmn-supply = <&vreg_s7b_0p9>; 567 vddrfa0p8-supply = <&vreg_s7b_ 551 vddrfa0p8-supply = <&vreg_s7b_0p9>; 568 vddrfa1p7-supply = <&vreg_s1b_ 552 vddrfa1p7-supply = <&vreg_s1b_1p8>; 569 vddrfa1p2-supply = <&vreg_s8b_ 553 vddrfa1p2-supply = <&vreg_s8b_1p2>; 570 vddrfa2p2-supply = <&vreg_s1c_ 554 vddrfa2p2-supply = <&vreg_s1c_2p2>; 571 vddasd-supply = <&vreg_l11c_2p 555 vddasd-supply = <&vreg_l11c_2p8>; 572 max-speed = <3200000>; 556 max-speed = <3200000>; 573 }; 557 }; 574 }; 558 }; 575 559 576 /* PINCTRL - additions to nodes defined in sc7 560 /* PINCTRL - additions to nodes defined in sc7280.dtsi */ 577 561 578 &dp_hot_plug_det { 562 &dp_hot_plug_det { 579 bias-disable; 563 bias-disable; 580 }; 564 }; 581 565 582 &lpass_dmic01_clk { 566 &lpass_dmic01_clk { 583 drive-strength = <8>; 567 drive-strength = <8>; 584 bias-disable; 568 bias-disable; 585 }; 569 }; 586 570 >> 571 &lpass_dmic01_clk_sleep { >> 572 drive-strength = <2>; >> 573 }; >> 574 587 &lpass_dmic01_data { 575 &lpass_dmic01_data { 588 bias-pull-down; 576 bias-pull-down; 589 }; 577 }; 590 578 591 &lpass_dmic23_clk { 579 &lpass_dmic23_clk { 592 drive-strength = <8>; 580 drive-strength = <8>; 593 bias-disable; 581 bias-disable; 594 }; 582 }; 595 583 >> 584 &lpass_dmic23_clk_sleep { >> 585 drive-strength = <2>; >> 586 }; >> 587 596 &lpass_dmic23_data { 588 &lpass_dmic23_data { 597 bias-pull-down; 589 bias-pull-down; 598 }; 590 }; 599 591 600 &lpass_rx_swr_clk { 592 &lpass_rx_swr_clk { 601 drive-strength = <2>; 593 drive-strength = <2>; 602 slew-rate = <1>; 594 slew-rate = <1>; 603 bias-disable; 595 bias-disable; 604 }; 596 }; 605 597 >> 598 &lpass_rx_swr_clk_sleep { >> 599 bias-pull-down; >> 600 }; >> 601 606 &lpass_rx_swr_data { 602 &lpass_rx_swr_data { 607 drive-strength = <2>; 603 drive-strength = <2>; 608 slew-rate = <1>; 604 slew-rate = <1>; 609 bias-bus-hold; 605 bias-bus-hold; 610 }; 606 }; 611 607 >> 608 &lpass_rx_swr_data_sleep { >> 609 bias-pull-down; >> 610 }; >> 611 612 &lpass_tx_swr_clk { 612 &lpass_tx_swr_clk { 613 drive-strength = <2>; 613 drive-strength = <2>; 614 slew-rate = <1>; 614 slew-rate = <1>; 615 bias-disable; 615 bias-disable; 616 }; 616 }; 617 617 >> 618 &lpass_tx_swr_clk_sleep { >> 619 bias-pull-down; >> 620 }; >> 621 618 &lpass_tx_swr_data { 622 &lpass_tx_swr_data { 619 drive-strength = <2>; 623 drive-strength = <2>; 620 slew-rate = <1>; 624 slew-rate = <1>; 621 bias-bus-hold; 625 bias-bus-hold; 622 }; 626 }; 623 627 624 &mi2s1_data0 { 628 &mi2s1_data0 { 625 drive-strength = <6>; 629 drive-strength = <6>; 626 bias-disable; 630 bias-disable; 627 }; 631 }; 628 632 629 &mi2s1_sclk { 633 &mi2s1_sclk { 630 drive-strength = <6>; 634 drive-strength = <6>; 631 bias-disable; 635 bias-disable; 632 }; 636 }; 633 637 634 &mi2s1_ws { 638 &mi2s1_ws { 635 drive-strength = <6>; 639 drive-strength = <6>; 636 }; 640 }; 637 641 638 &pm7325_gpios { 642 &pm7325_gpios { 639 key_vol_up_default: key-vol-up-state { 643 key_vol_up_default: key-vol-up-state { 640 pins = "gpio6"; 644 pins = "gpio6"; 641 function = "normal"; 645 function = "normal"; 642 input-enable; 646 input-enable; 643 bias-pull-up; 647 bias-pull-up; 644 power-source = <0>; 648 power-source = <0>; 645 qcom,drive-strength = <3>; 649 qcom,drive-strength = <3>; 646 }; 650 }; 647 }; 651 }; 648 652 649 &pcie1_clkreq_n { 653 &pcie1_clkreq_n { 650 bias-pull-up; 654 bias-pull-up; 651 drive-strength = <2>; 655 drive-strength = <2>; 652 }; 656 }; 653 657 654 &qspi_cs0 { 658 &qspi_cs0 { 655 bias-disable; /* External pu !! 659 bias-disable; 656 }; 660 }; 657 661 658 &qspi_clk { 662 &qspi_clk { 659 bias-pull-down; /* No external !! 663 bias-disable; 660 }; << 661 << 662 &qspi_data0 { << 663 bias-pull-down; /* No external << 664 }; 664 }; 665 665 666 &qspi_data1 { !! 666 &qspi_data01 { 667 bias-pull-down; /* No external !! 667 /* High-Z when no transfers; nice to park the lines */ >> 668 bias-pull-up; 668 }; 669 }; 669 670 670 &qup_uart5_tx { 671 &qup_uart5_tx { 671 drive-strength = <2>; 672 drive-strength = <2>; 672 bias-disable; 673 bias-disable; 673 }; 674 }; 674 675 675 &qup_uart5_rx { 676 &qup_uart5_rx { 676 drive-strength = <2>; 677 drive-strength = <2>; 677 bias-pull-up; 678 bias-pull-up; 678 }; 679 }; 679 680 680 &qup_uart7_cts { 681 &qup_uart7_cts { 681 /* 682 /* 682 * Configure a bias-bus-hold on CTS to 683 * Configure a bias-bus-hold on CTS to lower power 683 * usage when Bluetooth is turned off. 684 * usage when Bluetooth is turned off. Bus hold will 684 * maintain a low power state regardle 685 * maintain a low power state regardless of whether 685 * the Bluetooth module drives the pin 686 * the Bluetooth module drives the pin in either 686 * direction or leaves the pin fully u 687 * direction or leaves the pin fully unpowered. 687 */ 688 */ 688 bias-bus-hold; 689 bias-bus-hold; 689 }; 690 }; 690 691 691 &qup_uart7_rts { 692 &qup_uart7_rts { 692 /* We'll drive RTS, so no pull */ 693 /* We'll drive RTS, so no pull */ 693 drive-strength = <2>; 694 drive-strength = <2>; 694 bias-disable; 695 bias-disable; 695 }; 696 }; 696 697 697 &qup_uart7_tx { 698 &qup_uart7_tx { 698 /* We'll drive TX, so no pull */ 699 /* We'll drive TX, so no pull */ 699 drive-strength = <2>; 700 drive-strength = <2>; 700 bias-disable; 701 bias-disable; 701 }; 702 }; 702 703 703 &qup_uart7_rx { 704 &qup_uart7_rx { 704 /* 705 /* 705 * Configure a pull-up on RX. This is 706 * Configure a pull-up on RX. This is needed to avoid 706 * garbage data when the TX pin of the 707 * garbage data when the TX pin of the Bluetooth module is 707 * in tri-state (module powered off or 708 * in tri-state (module powered off or not driving the 708 * signal yet). 709 * signal yet). 709 */ 710 */ 710 bias-pull-up; 711 bias-pull-up; 711 }; 712 }; 712 713 713 &sdc1_clk { 714 &sdc1_clk { 714 bias-disable; 715 bias-disable; 715 drive-strength = <16>; 716 drive-strength = <16>; 716 }; 717 }; 717 718 718 &sdc1_cmd { 719 &sdc1_cmd { 719 bias-pull-up; 720 bias-pull-up; 720 drive-strength = <10>; 721 drive-strength = <10>; 721 }; 722 }; 722 723 723 &sdc1_data { 724 &sdc1_data { 724 bias-pull-up; 725 bias-pull-up; 725 drive-strength = <10>; 726 drive-strength = <10>; 726 }; 727 }; 727 728 728 &sdc1_rclk { 729 &sdc1_rclk { 729 bias-pull-down; 730 bias-pull-down; 730 }; 731 }; 731 732 732 &sdc2_clk { 733 &sdc2_clk { 733 bias-disable; 734 bias-disable; 734 drive-strength = <16>; 735 drive-strength = <16>; 735 }; 736 }; 736 737 737 &sdc2_cmd { 738 &sdc2_cmd { 738 bias-pull-up; 739 bias-pull-up; 739 drive-strength = <10>; 740 drive-strength = <10>; 740 }; 741 }; 741 742 742 &sdc2_data { 743 &sdc2_data { 743 bias-pull-up; 744 bias-pull-up; 744 drive-strength = <10>; 745 drive-strength = <10>; 745 }; 746 }; 746 747 747 &tlmm { 748 &tlmm { 748 amp_en: amp-en-state { !! 749 amp_en: amp-en { 749 pins = "gpio63"; 750 pins = "gpio63"; 750 function = "gpio"; << 751 bias-pull-down; 751 bias-pull-down; 752 drive-strength = <2>; 752 drive-strength = <2>; 753 }; 753 }; 754 754 755 bt_en: bt-en-state { !! 755 bt_en: bt-en-pins { 756 pins = "gpio85"; 756 pins = "gpio85"; 757 function = "gpio"; 757 function = "gpio"; 758 output-low; 758 output-low; 759 bias-disable; 759 bias-disable; 760 }; 760 }; 761 761 762 nvme_pwren: nvme-pwren-state { !! 762 nvme_pwren: nvme-pwren-pins { 763 function = "gpio"; 763 function = "gpio"; 764 }; 764 }; 765 765 766 pcie1_reset_n: pcie1-reset-n-state { !! 766 pcie1_reset_n: pcie1-reset-n-pins { 767 pins = "gpio2"; 767 pins = "gpio2"; 768 function = "gpio"; 768 function = "gpio"; 769 769 770 drive-strength = <16>; 770 drive-strength = <16>; 771 output-low; 771 output-low; 772 bias-disable; 772 bias-disable; 773 }; 773 }; 774 774 775 pcie1_wake_n: pcie1-wake-n-state { !! 775 pcie1_wake_n: pcie1-wake-n-pins { 776 pins = "gpio3"; 776 pins = "gpio3"; 777 function = "gpio"; 777 function = "gpio"; 778 778 779 drive-strength = <2>; 779 drive-strength = <2>; 780 bias-pull-up; 780 bias-pull-up; 781 }; 781 }; 782 782 783 qup_uart7_sleep_cts: qup-uart7-sleep-c !! 783 qup_uart7_sleep_cts: qup-uart7-sleep-cts-pins { 784 pins = "gpio28"; 784 pins = "gpio28"; 785 function = "gpio"; 785 function = "gpio"; 786 /* 786 /* 787 * Configure a bias-bus-hold o 787 * Configure a bias-bus-hold on CTS to lower power 788 * usage when Bluetooth is tur 788 * usage when Bluetooth is turned off. Bus hold will 789 * maintain a low power state 789 * maintain a low power state regardless of whether 790 * the Bluetooth module drives 790 * the Bluetooth module drives the pin in either 791 * direction or leaves the pin 791 * direction or leaves the pin fully unpowered. 792 */ 792 */ 793 bias-bus-hold; 793 bias-bus-hold; 794 }; 794 }; 795 795 796 qup_uart7_sleep_rts: qup-uart7-sleep-r !! 796 qup_uart7_sleep_rts: qup-uart7-sleep-rts-pins { 797 pins = "gpio29"; 797 pins = "gpio29"; 798 function = "gpio"; 798 function = "gpio"; 799 /* 799 /* 800 * Configure pull-down on RTS. 800 * Configure pull-down on RTS. As RTS is active low 801 * signal, pull it low to indi 801 * signal, pull it low to indicate the BT SoC that it 802 * can wakeup the system anyti 802 * can wakeup the system anytime from suspend state by 803 * pulling RX low (by sending 803 * pulling RX low (by sending wakeup bytes). 804 */ 804 */ 805 bias-pull-down; 805 bias-pull-down; 806 }; 806 }; 807 807 808 qup_uart7_sleep_tx: qup-uart7-sleep-tx !! 808 qup_uart7_sleep_tx: qup-uart7-sleep-tx-pins { 809 pins = "gpio30"; 809 pins = "gpio30"; 810 function = "gpio"; 810 function = "gpio"; 811 /* 811 /* 812 * Configure pull-up on TX whe 812 * Configure pull-up on TX when it isn't actively driven 813 * to prevent BT SoC from rece 813 * to prevent BT SoC from receiving garbage during sleep. 814 */ 814 */ 815 bias-pull-up; 815 bias-pull-up; 816 }; 816 }; 817 817 818 qup_uart7_sleep_rx: qup-uart7-sleep-rx !! 818 qup_uart7_sleep_rx: qup-uart7-sleep-rx-pins { 819 pins = "gpio31"; 819 pins = "gpio31"; 820 function = "gpio"; 820 function = "gpio"; 821 /* 821 /* 822 * Configure a pull-up on RX. 822 * Configure a pull-up on RX. This is needed to avoid 823 * garbage data when the TX pi 823 * garbage data when the TX pin of the Bluetooth module 824 * is floating which may cause 824 * is floating which may cause spurious wakeups. 825 */ 825 */ 826 bias-pull-up; 826 bias-pull-up; 827 }; 827 }; 828 828 829 sd_cd: sd-cd-state { !! 829 sd_cd: sd-cd-pins { 830 pins = "gpio91"; 830 pins = "gpio91"; 831 function = "gpio"; 831 function = "gpio"; 832 bias-pull-up; 832 bias-pull-up; 833 }; 833 }; 834 834 835 sw_ctrl: sw-ctrl-state { !! 835 sw_ctrl: sw-ctrl-pins { 836 pins = "gpio86"; 836 pins = "gpio86"; 837 function = "gpio"; 837 function = "gpio"; 838 bias-pull-down; 838 bias-pull-down; 839 }; 839 }; 840 840 841 wcd_reset_n: wcd-reset-n-state { !! 841 wcd_reset_n: wcd-reset-n { 842 pins = "gpio83"; 842 pins = "gpio83"; 843 function = "gpio"; 843 function = "gpio"; 844 drive-strength = <8>; 844 drive-strength = <8>; 845 }; 845 }; 846 846 847 wcd_reset_n_sleep: wcd-reset-n-sleep-s !! 847 wcd_reset_n_sleep: wcd-reset-n-sleep { 848 pins = "gpio83"; 848 pins = "gpio83"; 849 function = "gpio"; 849 function = "gpio"; 850 drive-strength = <8>; 850 drive-strength = <8>; 851 bias-disable; 851 bias-disable; 852 }; 852 }; 853 }; 853 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.