1 // SPDX-License-Identifier: GPL-2.0 1 // SPDX-License-Identifier: GPL-2.0 2 /* 2 /* 3 * Copyright (c) 2019, Linaro Ltd. 3 * Copyright (c) 2019, Linaro Ltd. 4 */ 4 */ 5 5 6 /dts-v1/; 6 /dts-v1/; 7 7 8 #include <dt-bindings/leds/common.h> 8 #include <dt-bindings/leds/common.h> 9 #include <dt-bindings/pinctrl/qcom,pmic-gpio.h 9 #include <dt-bindings/pinctrl/qcom,pmic-gpio.h> 10 #include <dt-bindings/regulator/qcom,rpmh-regu 10 #include <dt-bindings/regulator/qcom,rpmh-regulator.h> 11 #include <dt-bindings/sound/qcom,q6afe.h> 11 #include <dt-bindings/sound/qcom,q6afe.h> 12 #include <dt-bindings/sound/qcom,q6asm.h> 12 #include <dt-bindings/sound/qcom,q6asm.h> 13 #include "sdm845.dtsi" 13 #include "sdm845.dtsi" 14 #include "sdm845-wcd9340.dtsi" << 15 #include "pm8998.dtsi" 14 #include "pm8998.dtsi" 16 #include "pmi8998.dtsi" 15 #include "pmi8998.dtsi" 17 16 18 / { 17 / { 19 model = "Thundercomm Dragonboard 845c" 18 model = "Thundercomm Dragonboard 845c"; 20 compatible = "thundercomm,db845c", "qc 19 compatible = "thundercomm,db845c", "qcom,sdm845"; 21 qcom,msm-id = <341 0x20001>; 20 qcom,msm-id = <341 0x20001>; 22 qcom,board-id = <8 0>; 21 qcom,board-id = <8 0>; 23 22 24 aliases { 23 aliases { 25 serial0 = &uart9; 24 serial0 = &uart9; 26 serial1 = &uart6; 25 serial1 = &uart6; 27 }; 26 }; 28 27 29 chosen { 28 chosen { 30 stdout-path = "serial0:115200n 29 stdout-path = "serial0:115200n8"; 31 }; 30 }; 32 31 33 /* Fixed crystal oscillator dedicated 32 /* Fixed crystal oscillator dedicated to MCP2517FD */ 34 clk40M: can-clock { 33 clk40M: can-clock { 35 compatible = "fixed-clock"; 34 compatible = "fixed-clock"; 36 #clock-cells = <0>; 35 #clock-cells = <0>; 37 clock-frequency = <40000000>; 36 clock-frequency = <40000000>; 38 }; 37 }; 39 38 40 dc12v: dc12v-regulator { 39 dc12v: dc12v-regulator { 41 compatible = "regulator-fixed" 40 compatible = "regulator-fixed"; 42 regulator-name = "DC12V"; 41 regulator-name = "DC12V"; 43 regulator-min-microvolt = <120 42 regulator-min-microvolt = <12000000>; 44 regulator-max-microvolt = <120 43 regulator-max-microvolt = <12000000>; 45 regulator-always-on; 44 regulator-always-on; 46 }; 45 }; 47 46 48 gpio-keys { 47 gpio-keys { 49 compatible = "gpio-keys"; 48 compatible = "gpio-keys"; 50 autorepeat; 49 autorepeat; 51 50 52 pinctrl-names = "default"; 51 pinctrl-names = "default"; 53 pinctrl-0 = <&vol_up_pin_a>; 52 pinctrl-0 = <&vol_up_pin_a>; 54 53 55 key-vol-up { 54 key-vol-up { 56 label = "Volume Up"; 55 label = "Volume Up"; 57 linux,code = <KEY_VOLU 56 linux,code = <KEY_VOLUMEUP>; 58 gpios = <&pm8998_gpios !! 57 gpios = <&pm8998_gpio 6 GPIO_ACTIVE_LOW>; 59 }; 58 }; 60 }; 59 }; 61 60 62 leds { 61 leds { 63 compatible = "gpio-leds"; 62 compatible = "gpio-leds"; 64 63 65 led-0 { 64 led-0 { 66 label = "green:user4"; 65 label = "green:user4"; 67 function = LED_FUNCTIO 66 function = LED_FUNCTION_INDICATOR; 68 color = <LED_COLOR_ID_ 67 color = <LED_COLOR_ID_GREEN>; 69 gpios = <&pm8998_gpios !! 68 gpios = <&pm8998_gpio 13 GPIO_ACTIVE_HIGH>; >> 69 linux,default-trigger = "panic-indicator"; 70 default-state = "off"; 70 default-state = "off"; 71 panic-indicator; << 72 }; 71 }; 73 72 74 led-1 { 73 led-1 { 75 label = "yellow:wlan"; 74 label = "yellow:wlan"; 76 function = LED_FUNCTIO 75 function = LED_FUNCTION_WLAN; 77 color = <LED_COLOR_ID_ 76 color = <LED_COLOR_ID_YELLOW>; 78 gpios = <&pm8998_gpios !! 77 gpios = <&pm8998_gpio 9 GPIO_ACTIVE_HIGH>; 79 linux,default-trigger 78 linux,default-trigger = "phy0tx"; 80 default-state = "off"; 79 default-state = "off"; 81 }; 80 }; 82 81 83 led-2 { 82 led-2 { 84 label = "blue:bt"; 83 label = "blue:bt"; 85 function = LED_FUNCTIO 84 function = LED_FUNCTION_BLUETOOTH; 86 color = <LED_COLOR_ID_ 85 color = <LED_COLOR_ID_BLUE>; 87 gpios = <&pm8998_gpios !! 86 gpios = <&pm8998_gpio 5 GPIO_ACTIVE_HIGH>; 88 linux,default-trigger 87 linux,default-trigger = "bluetooth-power"; 89 default-state = "off"; 88 default-state = "off"; 90 }; 89 }; 91 }; 90 }; 92 91 93 hdmi-out { 92 hdmi-out { 94 compatible = "hdmi-connector"; 93 compatible = "hdmi-connector"; 95 type = "a"; 94 type = "a"; 96 95 97 port { 96 port { 98 hdmi_con: endpoint { 97 hdmi_con: endpoint { 99 remote-endpoin 98 remote-endpoint = <<9611_out>; 100 }; 99 }; 101 }; 100 }; 102 }; 101 }; 103 102 104 reserved-memory { << 105 /* Cont splash region set up b << 106 cont_splash_mem: framebuffer@9 << 107 reg = <0x0 0x9d400000 << 108 no-map; << 109 }; << 110 }; << 111 << 112 lt9611_1v8: lt9611-vdd18-regulator { 103 lt9611_1v8: lt9611-vdd18-regulator { 113 compatible = "regulator-fixed" 104 compatible = "regulator-fixed"; 114 regulator-name = "LT9611_1V8"; 105 regulator-name = "LT9611_1V8"; 115 106 116 vin-supply = <&vdc_5v>; 107 vin-supply = <&vdc_5v>; 117 regulator-min-microvolt = <180 108 regulator-min-microvolt = <1800000>; 118 regulator-max-microvolt = <180 109 regulator-max-microvolt = <1800000>; 119 110 120 gpio = <&tlmm 89 GPIO_ACTIVE_H 111 gpio = <&tlmm 89 GPIO_ACTIVE_HIGH>; 121 enable-active-high; 112 enable-active-high; 122 }; 113 }; 123 114 124 lt9611_3v3: lt9611-3v3 { 115 lt9611_3v3: lt9611-3v3 { 125 compatible = "regulator-fixed" 116 compatible = "regulator-fixed"; 126 regulator-name = "LT9611_3V3"; 117 regulator-name = "LT9611_3V3"; 127 118 128 vin-supply = <&vdc_3v3>; 119 vin-supply = <&vdc_3v3>; 129 regulator-min-microvolt = <330 120 regulator-min-microvolt = <3300000>; 130 regulator-max-microvolt = <330 121 regulator-max-microvolt = <3300000>; 131 122 132 /* 123 /* 133 * TODO: make it possible to d 124 * TODO: make it possible to drive same GPIO from two clients 134 * gpio = <&tlmm 89 GPIO_ACTIV 125 * gpio = <&tlmm 89 GPIO_ACTIVE_HIGH>; 135 * enable-active-high; 126 * enable-active-high; 136 */ 127 */ 137 }; 128 }; 138 129 139 pcie0_1p05v: pcie-0-1p05v-regulator { 130 pcie0_1p05v: pcie-0-1p05v-regulator { 140 compatible = "regulator-fixed" 131 compatible = "regulator-fixed"; 141 regulator-name = "PCIE0_1.05V" 132 regulator-name = "PCIE0_1.05V"; 142 133 143 vin-supply = <&vbat>; 134 vin-supply = <&vbat>; 144 regulator-min-microvolt = <105 135 regulator-min-microvolt = <1050000>; 145 regulator-max-microvolt = <105 136 regulator-max-microvolt = <1050000>; 146 137 147 /* 138 /* 148 * TODO: make it possible to d 139 * TODO: make it possible to drive same GPIO from two clients 149 * gpio = <&tlmm 90 GPIO_ACTIV 140 * gpio = <&tlmm 90 GPIO_ACTIVE_HIGH>; 150 * enable-active-high; 141 * enable-active-high; 151 */ 142 */ 152 }; 143 }; 153 144 154 cam0_dvdd_1v2: cam0-dvdd-1v2-regulator !! 145 cam0_dvdd_1v2: reg_cam0_dvdd_1v2 { 155 compatible = "regulator-fixed" 146 compatible = "regulator-fixed"; 156 regulator-name = "CAM0_DVDD_1V 147 regulator-name = "CAM0_DVDD_1V2"; 157 regulator-min-microvolt = <120 148 regulator-min-microvolt = <1200000>; 158 regulator-max-microvolt = <120 149 regulator-max-microvolt = <1200000>; 159 enable-active-high; 150 enable-active-high; 160 gpio = <&pm8998_gpios 12 GPIO_ !! 151 gpio = <&pm8998_gpio 12 GPIO_ACTIVE_HIGH>; 161 pinctrl-names = "default"; 152 pinctrl-names = "default"; 162 pinctrl-0 = <&cam0_dvdd_1v2_en 153 pinctrl-0 = <&cam0_dvdd_1v2_en_default>; 163 vin-supply = <&vbat>; 154 vin-supply = <&vbat>; 164 }; 155 }; 165 156 166 cam0_avdd_2v8: cam0-avdd-2v8-regulator !! 157 cam0_avdd_2v8: reg_cam0_avdd_2v8 { 167 compatible = "regulator-fixed" 158 compatible = "regulator-fixed"; 168 regulator-name = "CAM0_AVDD_2V 159 regulator-name = "CAM0_AVDD_2V8"; 169 regulator-min-microvolt = <280 160 regulator-min-microvolt = <2800000>; 170 regulator-max-microvolt = <280 161 regulator-max-microvolt = <2800000>; 171 enable-active-high; 162 enable-active-high; 172 gpio = <&pm8998_gpios 10 GPIO_ !! 163 gpio = <&pm8998_gpio 10 GPIO_ACTIVE_HIGH>; 173 pinctrl-names = "default"; 164 pinctrl-names = "default"; 174 pinctrl-0 = <&cam0_avdd_2v8_en 165 pinctrl-0 = <&cam0_avdd_2v8_en_default>; 175 vin-supply = <&vbat>; 166 vin-supply = <&vbat>; 176 }; 167 }; 177 168 178 /* This regulator is enabled when the 169 /* This regulator is enabled when the VREG_LVS1A_1P8 trace is enabled */ 179 cam3_avdd_2v8: cam3-avdd-2v8-regulator !! 170 cam3_avdd_2v8: reg_cam3_avdd_2v8 { 180 compatible = "regulator-fixed" 171 compatible = "regulator-fixed"; 181 regulator-name = "CAM3_AVDD_2V 172 regulator-name = "CAM3_AVDD_2V8"; 182 regulator-min-microvolt = <280 173 regulator-min-microvolt = <2800000>; 183 regulator-max-microvolt = <280 174 regulator-max-microvolt = <2800000>; 184 regulator-always-on; 175 regulator-always-on; 185 vin-supply = <&vbat>; 176 vin-supply = <&vbat>; 186 }; 177 }; 187 178 188 pcie0_3p3v_dual: vldo-3v3-regulator { 179 pcie0_3p3v_dual: vldo-3v3-regulator { 189 compatible = "regulator-fixed" 180 compatible = "regulator-fixed"; 190 regulator-name = "VLDO_3V3"; 181 regulator-name = "VLDO_3V3"; 191 182 192 vin-supply = <&vbat>; 183 vin-supply = <&vbat>; 193 regulator-min-microvolt = <330 184 regulator-min-microvolt = <3300000>; 194 regulator-max-microvolt = <330 185 regulator-max-microvolt = <3300000>; 195 186 196 gpio = <&tlmm 90 GPIO_ACTIVE_H 187 gpio = <&tlmm 90 GPIO_ACTIVE_HIGH>; 197 enable-active-high; 188 enable-active-high; 198 /* << 199 * FIXME: this regulator is re << 200 * port. Keep it always on unt << 201 * relationship. << 202 */ << 203 regulator-always-on; << 204 189 205 pinctrl-names = "default"; 190 pinctrl-names = "default"; 206 pinctrl-0 = <&pcie0_pwren_stat 191 pinctrl-0 = <&pcie0_pwren_state>; 207 }; 192 }; 208 193 209 v5p0_hdmiout: v5p0-hdmiout-regulator { 194 v5p0_hdmiout: v5p0-hdmiout-regulator { 210 compatible = "regulator-fixed" 195 compatible = "regulator-fixed"; 211 regulator-name = "V5P0_HDMIOUT 196 regulator-name = "V5P0_HDMIOUT"; 212 197 213 vin-supply = <&vdc_5v>; 198 vin-supply = <&vdc_5v>; 214 regulator-min-microvolt = <500 199 regulator-min-microvolt = <500000>; 215 regulator-max-microvolt = <500 200 regulator-max-microvolt = <500000>; 216 201 217 /* 202 /* 218 * TODO: make it possible to d 203 * TODO: make it possible to drive same GPIO from two clients 219 * gpio = <&tlmm 89 GPIO_ACTIV 204 * gpio = <&tlmm 89 GPIO_ACTIVE_HIGH>; 220 * enable-active-high; 205 * enable-active-high; 221 */ 206 */ 222 }; 207 }; 223 208 224 vbat: vbat-regulator { 209 vbat: vbat-regulator { 225 compatible = "regulator-fixed" 210 compatible = "regulator-fixed"; 226 regulator-name = "VBAT"; 211 regulator-name = "VBAT"; 227 212 228 vin-supply = <&dc12v>; 213 vin-supply = <&dc12v>; 229 regulator-min-microvolt = <420 214 regulator-min-microvolt = <4200000>; 230 regulator-max-microvolt = <420 215 regulator-max-microvolt = <4200000>; 231 regulator-always-on; 216 regulator-always-on; 232 }; 217 }; 233 218 234 vbat_som: vbat-som-regulator { 219 vbat_som: vbat-som-regulator { 235 compatible = "regulator-fixed" 220 compatible = "regulator-fixed"; 236 regulator-name = "VBAT_SOM"; 221 regulator-name = "VBAT_SOM"; 237 222 238 vin-supply = <&dc12v>; 223 vin-supply = <&dc12v>; 239 regulator-min-microvolt = <420 224 regulator-min-microvolt = <4200000>; 240 regulator-max-microvolt = <420 225 regulator-max-microvolt = <4200000>; 241 regulator-always-on; 226 regulator-always-on; 242 }; 227 }; 243 228 244 vdc_3v3: vdc-3v3-regulator { 229 vdc_3v3: vdc-3v3-regulator { 245 compatible = "regulator-fixed" 230 compatible = "regulator-fixed"; 246 regulator-name = "VDC_3V3"; 231 regulator-name = "VDC_3V3"; 247 vin-supply = <&dc12v>; 232 vin-supply = <&dc12v>; 248 regulator-min-microvolt = <330 233 regulator-min-microvolt = <3300000>; 249 regulator-max-microvolt = <330 234 regulator-max-microvolt = <3300000>; 250 regulator-always-on; 235 regulator-always-on; 251 }; 236 }; 252 237 253 vdc_5v: vdc-5v-regulator { 238 vdc_5v: vdc-5v-regulator { 254 compatible = "regulator-fixed" 239 compatible = "regulator-fixed"; 255 regulator-name = "VDC_5V"; 240 regulator-name = "VDC_5V"; 256 241 257 vin-supply = <&dc12v>; 242 vin-supply = <&dc12v>; 258 regulator-min-microvolt = <500 243 regulator-min-microvolt = <500000>; 259 regulator-max-microvolt = <500 244 regulator-max-microvolt = <500000>; 260 regulator-always-on; 245 regulator-always-on; 261 }; 246 }; 262 247 263 vreg_s4a_1p8: vreg-s4a-1p8 { 248 vreg_s4a_1p8: vreg-s4a-1p8 { 264 compatible = "regulator-fixed" 249 compatible = "regulator-fixed"; 265 regulator-name = "vreg_s4a_1p8 250 regulator-name = "vreg_s4a_1p8"; 266 251 267 regulator-min-microvolt = <180 252 regulator-min-microvolt = <1800000>; 268 regulator-max-microvolt = <180 253 regulator-max-microvolt = <1800000>; 269 regulator-always-on; 254 regulator-always-on; 270 }; 255 }; 271 256 272 vph_pwr: vph-pwr-regulator { 257 vph_pwr: vph-pwr-regulator { 273 compatible = "regulator-fixed" 258 compatible = "regulator-fixed"; 274 regulator-name = "vph_pwr"; 259 regulator-name = "vph_pwr"; 275 260 276 vin-supply = <&vbat_som>; 261 vin-supply = <&vbat_som>; 277 }; 262 }; 278 }; 263 }; 279 264 280 &adsp_pas { 265 &adsp_pas { 281 status = "okay"; 266 status = "okay"; 282 267 283 firmware-name = "qcom/sdm845/adsp.mbn" 268 firmware-name = "qcom/sdm845/adsp.mbn"; 284 }; 269 }; 285 270 286 &apps_rsc { 271 &apps_rsc { 287 regulators-0 { !! 272 pm8998-rpmh-regulators { 288 compatible = "qcom,pm8998-rpmh 273 compatible = "qcom,pm8998-rpmh-regulators"; 289 qcom,pmic-id = "a"; 274 qcom,pmic-id = "a"; 290 vdd-s1-supply = <&vph_pwr>; 275 vdd-s1-supply = <&vph_pwr>; 291 vdd-s2-supply = <&vph_pwr>; 276 vdd-s2-supply = <&vph_pwr>; 292 vdd-s3-supply = <&vph_pwr>; 277 vdd-s3-supply = <&vph_pwr>; 293 vdd-s4-supply = <&vph_pwr>; 278 vdd-s4-supply = <&vph_pwr>; 294 vdd-s5-supply = <&vph_pwr>; 279 vdd-s5-supply = <&vph_pwr>; 295 vdd-s6-supply = <&vph_pwr>; 280 vdd-s6-supply = <&vph_pwr>; 296 vdd-s7-supply = <&vph_pwr>; 281 vdd-s7-supply = <&vph_pwr>; 297 vdd-s8-supply = <&vph_pwr>; 282 vdd-s8-supply = <&vph_pwr>; 298 vdd-s9-supply = <&vph_pwr>; 283 vdd-s9-supply = <&vph_pwr>; 299 vdd-s10-supply = <&vph_pwr>; 284 vdd-s10-supply = <&vph_pwr>; 300 vdd-s11-supply = <&vph_pwr>; 285 vdd-s11-supply = <&vph_pwr>; 301 vdd-s12-supply = <&vph_pwr>; 286 vdd-s12-supply = <&vph_pwr>; 302 vdd-s13-supply = <&vph_pwr>; 287 vdd-s13-supply = <&vph_pwr>; 303 vdd-l1-l27-supply = <&vreg_s7a 288 vdd-l1-l27-supply = <&vreg_s7a_1p025>; 304 vdd-l2-l8-l17-supply = <&vreg_ 289 vdd-l2-l8-l17-supply = <&vreg_s3a_1p35>; 305 vdd-l3-l11-supply = <&vreg_s7a 290 vdd-l3-l11-supply = <&vreg_s7a_1p025>; 306 vdd-l4-l5-supply = <&vreg_s7a_ 291 vdd-l4-l5-supply = <&vreg_s7a_1p025>; 307 vdd-l6-supply = <&vph_pwr>; 292 vdd-l6-supply = <&vph_pwr>; 308 vdd-l7-l12-l14-l15-supply = <& 293 vdd-l7-l12-l14-l15-supply = <&vreg_s5a_2p04>; 309 vdd-l9-supply = <&vreg_bob>; 294 vdd-l9-supply = <&vreg_bob>; 310 vdd-l10-l23-l25-supply = <&vre 295 vdd-l10-l23-l25-supply = <&vreg_bob>; 311 vdd-l13-l19-l21-supply = <&vre 296 vdd-l13-l19-l21-supply = <&vreg_bob>; 312 vdd-l16-l28-supply = <&vreg_bo 297 vdd-l16-l28-supply = <&vreg_bob>; 313 vdd-l18-l22-supply = <&vreg_bo 298 vdd-l18-l22-supply = <&vreg_bob>; 314 vdd-l20-l24-supply = <&vreg_bo 299 vdd-l20-l24-supply = <&vreg_bob>; 315 vdd-l26-supply = <&vreg_s3a_1p 300 vdd-l26-supply = <&vreg_s3a_1p35>; 316 vin-lvs-1-2-supply = <&vreg_s4 301 vin-lvs-1-2-supply = <&vreg_s4a_1p8>; 317 302 318 vreg_s3a_1p35: smps3 { 303 vreg_s3a_1p35: smps3 { 319 regulator-min-microvol 304 regulator-min-microvolt = <1352000>; 320 regulator-max-microvol 305 regulator-max-microvolt = <1352000>; 321 }; 306 }; 322 307 323 vreg_s5a_2p04: smps5 { 308 vreg_s5a_2p04: smps5 { 324 regulator-min-microvol 309 regulator-min-microvolt = <1904000>; 325 regulator-max-microvol 310 regulator-max-microvolt = <2040000>; 326 }; 311 }; 327 312 328 vreg_s7a_1p025: smps7 { 313 vreg_s7a_1p025: smps7 { 329 regulator-min-microvol 314 regulator-min-microvolt = <900000>; 330 regulator-max-microvol 315 regulator-max-microvolt = <1028000>; 331 }; 316 }; 332 317 333 vreg_l1a_0p875: ldo1 { 318 vreg_l1a_0p875: ldo1 { 334 regulator-min-microvol 319 regulator-min-microvolt = <880000>; 335 regulator-max-microvol 320 regulator-max-microvolt = <880000>; 336 regulator-initial-mode 321 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 337 }; 322 }; 338 323 339 vreg_l5a_0p8: ldo5 { 324 vreg_l5a_0p8: ldo5 { 340 regulator-min-microvol 325 regulator-min-microvolt = <800000>; 341 regulator-max-microvol 326 regulator-max-microvolt = <800000>; 342 regulator-initial-mode 327 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 343 }; 328 }; 344 329 345 vreg_l12a_1p8: ldo12 { 330 vreg_l12a_1p8: ldo12 { 346 regulator-min-microvol 331 regulator-min-microvolt = <1800000>; 347 regulator-max-microvol 332 regulator-max-microvolt = <1800000>; 348 regulator-initial-mode 333 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 349 }; 334 }; 350 335 351 vreg_l7a_1p8: ldo7 { 336 vreg_l7a_1p8: ldo7 { 352 regulator-min-microvol 337 regulator-min-microvolt = <1800000>; 353 regulator-max-microvol 338 regulator-max-microvolt = <1800000>; 354 regulator-initial-mode 339 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 355 }; 340 }; 356 341 357 vreg_l13a_2p95: ldo13 { 342 vreg_l13a_2p95: ldo13 { 358 regulator-min-microvol 343 regulator-min-microvolt = <1800000>; 359 regulator-max-microvol 344 regulator-max-microvolt = <2960000>; 360 regulator-initial-mode 345 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 361 }; 346 }; 362 347 363 vreg_l17a_1p3: ldo17 { 348 vreg_l17a_1p3: ldo17 { 364 regulator-min-microvol 349 regulator-min-microvolt = <1304000>; 365 regulator-max-microvol 350 regulator-max-microvolt = <1304000>; 366 regulator-initial-mode 351 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 367 }; 352 }; 368 353 369 vreg_l20a_2p95: ldo20 { 354 vreg_l20a_2p95: ldo20 { 370 regulator-min-microvol 355 regulator-min-microvolt = <2960000>; 371 regulator-max-microvol 356 regulator-max-microvolt = <2968000>; 372 regulator-initial-mode 357 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 373 }; 358 }; 374 359 375 vreg_l21a_2p95: ldo21 { 360 vreg_l21a_2p95: ldo21 { 376 regulator-min-microvol 361 regulator-min-microvolt = <2960000>; 377 regulator-max-microvol 362 regulator-max-microvolt = <2968000>; 378 regulator-initial-mode 363 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 379 }; 364 }; 380 365 381 vreg_l24a_3p075: ldo24 { 366 vreg_l24a_3p075: ldo24 { 382 regulator-min-microvol 367 regulator-min-microvolt = <3088000>; 383 regulator-max-microvol 368 regulator-max-microvolt = <3088000>; 384 regulator-initial-mode 369 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 385 }; 370 }; 386 371 387 vreg_l25a_3p3: ldo25 { 372 vreg_l25a_3p3: ldo25 { 388 regulator-min-microvol 373 regulator-min-microvolt = <3300000>; 389 regulator-max-microvol 374 regulator-max-microvolt = <3312000>; 390 regulator-initial-mode 375 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 391 }; 376 }; 392 377 393 vreg_l26a_1p2: ldo26 { 378 vreg_l26a_1p2: ldo26 { 394 regulator-min-microvol 379 regulator-min-microvolt = <1200000>; 395 regulator-max-microvol 380 regulator-max-microvolt = <1200000>; 396 regulator-initial-mode 381 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 397 }; 382 }; 398 383 399 vreg_lvs1a_1p8: lvs1 { 384 vreg_lvs1a_1p8: lvs1 { 400 regulator-min-microvol 385 regulator-min-microvolt = <1800000>; 401 regulator-max-microvol 386 regulator-max-microvolt = <1800000>; 402 regulator-always-on; 387 regulator-always-on; 403 }; 388 }; 404 389 405 vreg_lvs2a_1p8: lvs2 { 390 vreg_lvs2a_1p8: lvs2 { 406 regulator-min-microvol 391 regulator-min-microvolt = <1800000>; 407 regulator-max-microvol 392 regulator-max-microvolt = <1800000>; 408 regulator-always-on; 393 regulator-always-on; 409 }; 394 }; 410 }; 395 }; 411 396 412 regulators-1 { !! 397 pmi8998-rpmh-regulators { 413 compatible = "qcom,pmi8998-rpm 398 compatible = "qcom,pmi8998-rpmh-regulators"; 414 qcom,pmic-id = "b"; 399 qcom,pmic-id = "b"; 415 400 416 vdd-bob-supply = <&vph_pwr>; 401 vdd-bob-supply = <&vph_pwr>; 417 402 418 vreg_bob: bob { 403 vreg_bob: bob { 419 regulator-min-microvol 404 regulator-min-microvolt = <3312000>; 420 regulator-max-microvol 405 regulator-max-microvolt = <3600000>; 421 regulator-initial-mode 406 regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>; 422 regulator-allow-bypass 407 regulator-allow-bypass; 423 }; 408 }; 424 }; 409 }; 425 }; 410 }; 426 411 427 &camss { !! 412 &cdsp_pas { 428 status = "okay"; 413 status = "okay"; >> 414 firmware-name = "qcom/sdm845/cdsp.mbn"; >> 415 }; 429 416 430 vdda-phy-supply = <&vreg_l1a_0p875>; !! 417 &dsi0 { 431 vdda-pll-supply = <&vreg_l26a_1p2>; !! 418 status = "okay"; >> 419 vdda-supply = <&vreg_l26a_1p2>; >> 420 >> 421 ports { >> 422 port@1 { >> 423 endpoint { >> 424 remote-endpoint = <<9611_a>; >> 425 data-lanes = <0 1 2 3>; >> 426 }; >> 427 }; >> 428 }; 432 }; 429 }; 433 430 434 &cdsp_pas { !! 431 &dsi0_phy { 435 status = "okay"; 432 status = "okay"; 436 firmware-name = "qcom/sdm845/cdsp.mbn" !! 433 vdds-supply = <&vreg_l1a_0p875>; 437 }; 434 }; 438 435 439 &gcc { 436 &gcc { 440 protected-clocks = <GCC_QSPI_CORE_CLK> 437 protected-clocks = <GCC_QSPI_CORE_CLK>, 441 <GCC_QSPI_CORE_CLK_ 438 <GCC_QSPI_CORE_CLK_SRC>, 442 <GCC_QSPI_CNOC_PERI 439 <GCC_QSPI_CNOC_PERIPH_AHB_CLK>, 443 <GCC_LPASS_Q6_AXI_C 440 <GCC_LPASS_Q6_AXI_CLK>, 444 <GCC_LPASS_SWAY_CLK 441 <GCC_LPASS_SWAY_CLK>; 445 }; 442 }; 446 443 447 &gmu { 444 &gmu { 448 status = "okay"; 445 status = "okay"; 449 }; 446 }; 450 447 451 &gpi_dma0 { 448 &gpi_dma0 { 452 status = "okay"; 449 status = "okay"; 453 }; 450 }; 454 451 455 &gpi_dma1 { 452 &gpi_dma1 { 456 status = "okay"; 453 status = "okay"; 457 }; 454 }; 458 455 459 &gpu { 456 &gpu { 460 status = "okay"; 457 status = "okay"; 461 zap-shader { 458 zap-shader { 462 memory-region = <&gpu_mem>; 459 memory-region = <&gpu_mem>; 463 firmware-name = "qcom/sdm845/a 460 firmware-name = "qcom/sdm845/a630_zap.mbn"; 464 }; 461 }; 465 }; 462 }; 466 463 467 &i2c10 { 464 &i2c10 { 468 status = "okay"; 465 status = "okay"; 469 clock-frequency = <400000>; 466 clock-frequency = <400000>; 470 467 471 lt9611_codec: hdmi-bridge@3b { 468 lt9611_codec: hdmi-bridge@3b { 472 compatible = "lontium,lt9611"; 469 compatible = "lontium,lt9611"; 473 reg = <0x3b>; 470 reg = <0x3b>; 474 #sound-dai-cells = <1>; 471 #sound-dai-cells = <1>; 475 472 476 interrupts-extended = <&tlmm 8 473 interrupts-extended = <&tlmm 84 IRQ_TYPE_EDGE_FALLING>; 477 474 478 reset-gpios = <&tlmm 128 GPIO_ 475 reset-gpios = <&tlmm 128 GPIO_ACTIVE_HIGH>; 479 476 480 vdd-supply = <<9611_1v8>; 477 vdd-supply = <<9611_1v8>; 481 vcc-supply = <<9611_3v3>; 478 vcc-supply = <<9611_3v3>; 482 479 483 pinctrl-names = "default"; 480 pinctrl-names = "default"; 484 pinctrl-0 = <<9611_irq_pin>, 481 pinctrl-0 = <<9611_irq_pin>, <&dsi_sw_sel>; 485 482 486 ports { 483 ports { 487 #address-cells = <1>; 484 #address-cells = <1>; 488 #size-cells = <0>; 485 #size-cells = <0>; 489 486 490 port@0 { 487 port@0 { 491 reg = <0>; 488 reg = <0>; 492 489 493 lt9611_a: endp 490 lt9611_a: endpoint { 494 remote !! 491 remote-endpoint = <&dsi0_out>; 495 }; << 496 }; << 497 << 498 port@1 { << 499 reg = <1>; << 500 << 501 lt9611_b: endp << 502 remote << 503 }; 492 }; 504 }; 493 }; 505 494 506 port@2 { 495 port@2 { 507 reg = <2>; 496 reg = <2>; 508 497 509 lt9611_out: en 498 lt9611_out: endpoint { 510 remote 499 remote-endpoint = <&hdmi_con>; 511 }; 500 }; 512 }; 501 }; 513 }; 502 }; 514 }; 503 }; 515 }; 504 }; 516 505 517 &i2c11 { 506 &i2c11 { 518 /* On Low speed expansion */ 507 /* On Low speed expansion */ 519 clock-frequency = <100000>; 508 clock-frequency = <100000>; >> 509 label = "LS-I2C1"; 520 status = "okay"; 510 status = "okay"; 521 }; 511 }; 522 512 523 &i2c14 { 513 &i2c14 { 524 /* On Low speed expansion */ 514 /* On Low speed expansion */ 525 clock-frequency = <100000>; 515 clock-frequency = <100000>; >> 516 label = "LS-I2C0"; 526 status = "okay"; 517 status = "okay"; 527 }; 518 }; 528 519 529 &mdss { 520 &mdss { 530 memory-region = <&cont_splash_mem>; << 531 status = "okay"; << 532 }; << 533 << 534 &mdss_dsi0 { << 535 status = "okay"; << 536 vdda-supply = <&vreg_l26a_1p2>; << 537 << 538 qcom,dual-dsi-mode; << 539 qcom,master-dsi; << 540 << 541 ports { << 542 port@1 { << 543 endpoint { << 544 remote-endpoin << 545 data-lanes = < << 546 }; << 547 }; << 548 }; << 549 }; << 550 << 551 &mdss_dsi0_phy { << 552 status = "okay"; << 553 vdds-supply = <&vreg_l1a_0p875>; << 554 }; << 555 << 556 &mdss_dsi1 { << 557 vdda-supply = <&vreg_l26a_1p2>; << 558 << 559 qcom,dual-dsi-mode; << 560 << 561 /* DSI1 is slave, so use DSI0 clocks * << 562 assigned-clock-parents = <&mdss_dsi0_p << 563 << 564 status = "okay"; << 565 << 566 ports { << 567 port@1 { << 568 endpoint { << 569 remote-endpoin << 570 data-lanes = < << 571 }; << 572 }; << 573 }; << 574 }; << 575 << 576 &mdss_dsi1_phy { << 577 vdds-supply = <&vreg_l1a_0p875>; << 578 status = "okay"; 521 status = "okay"; 579 }; 522 }; 580 523 581 &mss_pil { 524 &mss_pil { 582 status = "okay"; 525 status = "okay"; 583 firmware-name = "qcom/sdm845/mba.mbn", 526 firmware-name = "qcom/sdm845/mba.mbn", "qcom/sdm845/modem.mbn"; 584 }; 527 }; 585 528 586 &pcie0 { 529 &pcie0 { 587 status = "okay"; 530 status = "okay"; 588 perst-gpios = <&tlmm 35 GPIO_ACTIVE_LO 531 perst-gpios = <&tlmm 35 GPIO_ACTIVE_LOW>; 589 wake-gpios = <&tlmm 134 GPIO_ACTIVE_HI !! 532 enable-gpio = <&tlmm 134 GPIO_ACTIVE_HIGH>; 590 533 591 vddpe-3v3-supply = <&pcie0_3p3v_dual>; 534 vddpe-3v3-supply = <&pcie0_3p3v_dual>; 592 535 593 pinctrl-names = "default"; 536 pinctrl-names = "default"; 594 pinctrl-0 = <&pcie0_default_state>; 537 pinctrl-0 = <&pcie0_default_state>; 595 }; 538 }; 596 539 597 &pcie0_phy { 540 &pcie0_phy { 598 status = "okay"; 541 status = "okay"; 599 542 600 vdda-phy-supply = <&vreg_l1a_0p875>; 543 vdda-phy-supply = <&vreg_l1a_0p875>; 601 vdda-pll-supply = <&vreg_l26a_1p2>; 544 vdda-pll-supply = <&vreg_l26a_1p2>; 602 }; 545 }; 603 546 604 &pcie1 { 547 &pcie1 { 605 status = "okay"; 548 status = "okay"; 606 perst-gpios = <&tlmm 102 GPIO_ACTIVE_L 549 perst-gpios = <&tlmm 102 GPIO_ACTIVE_LOW>; 607 550 608 pinctrl-names = "default"; 551 pinctrl-names = "default"; 609 pinctrl-0 = <&pcie1_default_state>; 552 pinctrl-0 = <&pcie1_default_state>; 610 }; 553 }; 611 554 612 &pcie1_phy { 555 &pcie1_phy { 613 status = "okay"; 556 status = "okay"; 614 557 615 vdda-phy-supply = <&vreg_l1a_0p875>; 558 vdda-phy-supply = <&vreg_l1a_0p875>; 616 vdda-pll-supply = <&vreg_l26a_1p2>; 559 vdda-pll-supply = <&vreg_l26a_1p2>; 617 }; 560 }; 618 561 619 &pm8998_gpios { !! 562 &pm8998_gpio { 620 gpio-line-names = 563 gpio-line-names = 621 "NC", 564 "NC", 622 "NC", 565 "NC", 623 "WLAN_SW_CTRL", 566 "WLAN_SW_CTRL", 624 "NC", 567 "NC", 625 "PM_GPIO5_BLUE_BT_LED", 568 "PM_GPIO5_BLUE_BT_LED", 626 "VOL_UP_N", 569 "VOL_UP_N", 627 "NC", 570 "NC", 628 "ADC_IN1", 571 "ADC_IN1", 629 "PM_GPIO9_YEL_WIFI_LED", 572 "PM_GPIO9_YEL_WIFI_LED", 630 "CAM0_AVDD_EN", 573 "CAM0_AVDD_EN", 631 "NC", 574 "NC", 632 "CAM0_DVDD_EN", 575 "CAM0_DVDD_EN", 633 "PM_GPIO13_GREEN_U4_LED", 576 "PM_GPIO13_GREEN_U4_LED", 634 "DIV_CLK2", 577 "DIV_CLK2", 635 "NC", 578 "NC", 636 "NC", 579 "NC", 637 "NC", 580 "NC", 638 "SMB_STAT", 581 "SMB_STAT", 639 "NC", 582 "NC", 640 "NC", 583 "NC", 641 "ADC_IN2", 584 "ADC_IN2", 642 "OPTION1", 585 "OPTION1", 643 "WCSS_PWR_REQ", 586 "WCSS_PWR_REQ", 644 "PM845_GPIO24", 587 "PM845_GPIO24", 645 "OPTION2", 588 "OPTION2", 646 "PM845_SLB"; 589 "PM845_SLB"; 647 590 648 cam0_dvdd_1v2_en_default: cam0-dvdd-1v 591 cam0_dvdd_1v2_en_default: cam0-dvdd-1v2-en-state { 649 pins = "gpio12"; 592 pins = "gpio12"; 650 function = "normal"; 593 function = "normal"; 651 594 652 bias-pull-up; 595 bias-pull-up; 653 drive-push-pull; 596 drive-push-pull; 654 qcom,drive-strength = <PMIC_GP 597 qcom,drive-strength = <PMIC_GPIO_STRENGTH_HIGH>; 655 }; 598 }; 656 599 657 cam0_avdd_2v8_en_default: cam0-avdd-2v 600 cam0_avdd_2v8_en_default: cam0-avdd-2v8-en-state { 658 pins = "gpio10"; 601 pins = "gpio10"; 659 function = "normal"; 602 function = "normal"; 660 603 661 bias-pull-up; 604 bias-pull-up; 662 drive-push-pull; 605 drive-push-pull; 663 qcom,drive-strength = <PMIC_GP 606 qcom,drive-strength = <PMIC_GPIO_STRENGTH_HIGH>; 664 }; 607 }; 665 608 666 vol_up_pin_a: vol-up-active-state { 609 vol_up_pin_a: vol-up-active-state { 667 pins = "gpio6"; 610 pins = "gpio6"; 668 function = "normal"; 611 function = "normal"; 669 input-enable; 612 input-enable; 670 bias-pull-up; 613 bias-pull-up; 671 qcom,drive-strength = <PMIC_GP 614 qcom,drive-strength = <PMIC_GPIO_STRENGTH_NO>; 672 }; 615 }; 673 }; 616 }; 674 617 675 &pm8998_resin { 618 &pm8998_resin { 676 linux,code = <KEY_VOLUMEDOWN>; 619 linux,code = <KEY_VOLUMEDOWN>; 677 status = "okay"; 620 status = "okay"; 678 }; 621 }; 679 622 680 &pmi8998_lpg { 623 &pmi8998_lpg { 681 status = "okay"; 624 status = "okay"; 682 625 683 qcom,power-source = <1>; 626 qcom,power-source = <1>; 684 627 685 led@3 { 628 led@3 { 686 reg = <3>; 629 reg = <3>; 687 color = <LED_COLOR_ID_GREEN>; 630 color = <LED_COLOR_ID_GREEN>; 688 function = LED_FUNCTION_HEARTB 631 function = LED_FUNCTION_HEARTBEAT; 689 function-enumerator = <3>; 632 function-enumerator = <3>; 690 633 691 linux,default-trigger = "heart 634 linux,default-trigger = "heartbeat"; 692 default-state = "on"; 635 default-state = "on"; 693 }; 636 }; 694 637 695 led@4 { 638 led@4 { 696 reg = <4>; 639 reg = <4>; 697 color = <LED_COLOR_ID_GREEN>; 640 color = <LED_COLOR_ID_GREEN>; 698 function = LED_FUNCTION_INDICA 641 function = LED_FUNCTION_INDICATOR; 699 function-enumerator = <2>; 642 function-enumerator = <2>; 700 }; 643 }; 701 644 702 led@5 { 645 led@5 { 703 reg = <5>; 646 reg = <5>; 704 color = <LED_COLOR_ID_GREEN>; 647 color = <LED_COLOR_ID_GREEN>; 705 function = LED_FUNCTION_INDICA 648 function = LED_FUNCTION_INDICATOR; 706 function-enumerator = <1>; 649 function-enumerator = <1>; 707 }; 650 }; 708 }; 651 }; 709 652 >> 653 &pmi8998_rradc { >> 654 status = "okay"; >> 655 }; >> 656 710 /* QUAT I2S Uses 4 I2S SD Lines for audio on L 657 /* QUAT I2S Uses 4 I2S SD Lines for audio on LT9611 HDMI Bridge */ 711 &q6afedai { 658 &q6afedai { 712 dai@22 { 659 dai@22 { 713 reg = <QUATERNARY_MI2S_RX>; 660 reg = <QUATERNARY_MI2S_RX>; 714 qcom,sd-lines = <0 1 2 3>; 661 qcom,sd-lines = <0 1 2 3>; 715 }; 662 }; 716 }; 663 }; 717 664 718 &q6asmdai { 665 &q6asmdai { 719 dai@0 { 666 dai@0 { 720 reg = <0>; 667 reg = <0>; 721 }; 668 }; 722 669 723 dai@1 { 670 dai@1 { 724 reg = <1>; 671 reg = <1>; 725 }; 672 }; 726 673 727 dai@2 { 674 dai@2 { 728 reg = <2>; 675 reg = <2>; 729 }; 676 }; 730 677 731 dai@3 { 678 dai@3 { 732 reg = <3>; 679 reg = <3>; 733 direction = <2>; 680 direction = <2>; 734 is-compress-dai; 681 is-compress-dai; 735 }; 682 }; 736 }; 683 }; 737 684 738 &qupv3_id_0 { 685 &qupv3_id_0 { 739 status = "okay"; 686 status = "okay"; 740 }; 687 }; 741 688 742 &qupv3_id_1 { 689 &qupv3_id_1 { 743 status = "okay"; 690 status = "okay"; 744 }; 691 }; 745 692 746 &sdhc_2 { 693 &sdhc_2 { 747 status = "okay"; 694 status = "okay"; 748 695 749 pinctrl-names = "default"; 696 pinctrl-names = "default"; 750 pinctrl-0 = <&sdc2_default_state &sdc2 697 pinctrl-0 = <&sdc2_default_state &sdc2_card_det_n>; 751 698 752 vmmc-supply = <&vreg_l21a_2p95>; 699 vmmc-supply = <&vreg_l21a_2p95>; 753 vqmmc-supply = <&vreg_l13a_2p95>; 700 vqmmc-supply = <&vreg_l13a_2p95>; 754 701 755 bus-width = <4>; 702 bus-width = <4>; 756 cd-gpios = <&tlmm 126 GPIO_ACTIVE_LOW> 703 cd-gpios = <&tlmm 126 GPIO_ACTIVE_LOW>; 757 }; 704 }; 758 705 759 &sound { 706 &sound { 760 compatible = "qcom,db845c-sndcard", "q !! 707 compatible = "qcom,db845c-sndcard"; 761 pinctrl-0 = <&quat_mi2s_active 708 pinctrl-0 = <&quat_mi2s_active 762 &quat_mi2s_sd0_active 709 &quat_mi2s_sd0_active 763 &quat_mi2s_sd1_active 710 &quat_mi2s_sd1_active 764 &quat_mi2s_sd2_active 711 &quat_mi2s_sd2_active 765 &quat_mi2s_sd3_active 712 &quat_mi2s_sd3_active>; 766 pinctrl-names = "default"; 713 pinctrl-names = "default"; 767 model = "DB845c"; 714 model = "DB845c"; 768 audio-routing = 715 audio-routing = 769 "RX_BIAS", "MCLK", 716 "RX_BIAS", "MCLK", 770 "AMIC1", "MIC BIAS1", 717 "AMIC1", "MIC BIAS1", 771 "AMIC2", "MIC BIAS2", 718 "AMIC2", "MIC BIAS2", 772 "DMIC0", "MIC BIAS1", 719 "DMIC0", "MIC BIAS1", 773 "DMIC1", "MIC BIAS1", 720 "DMIC1", "MIC BIAS1", 774 "DMIC2", "MIC BIAS3", 721 "DMIC2", "MIC BIAS3", 775 "DMIC3", "MIC BIAS3", 722 "DMIC3", "MIC BIAS3", 776 "SpkrLeft IN", "SPK1 OUT", 723 "SpkrLeft IN", "SPK1 OUT", 777 "SpkrRight IN", "SPK2 OUT", 724 "SpkrRight IN", "SPK2 OUT", 778 "MM_DL1", "MultiMedia1 Playba 725 "MM_DL1", "MultiMedia1 Playback", 779 "MM_DL2", "MultiMedia2 Playba 726 "MM_DL2", "MultiMedia2 Playback", 780 "MM_DL4", "MultiMedia4 Playba 727 "MM_DL4", "MultiMedia4 Playback", 781 "MultiMedia3 Capture", "MM_UL3 728 "MultiMedia3 Capture", "MM_UL3"; 782 729 783 mm1-dai-link { 730 mm1-dai-link { 784 link-name = "MultiMedia1"; 731 link-name = "MultiMedia1"; 785 cpu { 732 cpu { 786 sound-dai = <&q6asmdai 733 sound-dai = <&q6asmdai MSM_FRONTEND_DAI_MULTIMEDIA1>; 787 }; 734 }; 788 }; 735 }; 789 736 790 mm2-dai-link { 737 mm2-dai-link { 791 link-name = "MultiMedia2"; 738 link-name = "MultiMedia2"; 792 cpu { 739 cpu { 793 sound-dai = <&q6asmdai 740 sound-dai = <&q6asmdai MSM_FRONTEND_DAI_MULTIMEDIA2>; 794 }; 741 }; 795 }; 742 }; 796 743 797 mm3-dai-link { 744 mm3-dai-link { 798 link-name = "MultiMedia3"; 745 link-name = "MultiMedia3"; 799 cpu { 746 cpu { 800 sound-dai = <&q6asmdai 747 sound-dai = <&q6asmdai MSM_FRONTEND_DAI_MULTIMEDIA3>; 801 }; 748 }; 802 }; 749 }; 803 750 804 mm4-dai-link { 751 mm4-dai-link { 805 link-name = "MultiMedia4"; 752 link-name = "MultiMedia4"; 806 cpu { 753 cpu { 807 sound-dai = <&q6asmdai 754 sound-dai = <&q6asmdai MSM_FRONTEND_DAI_MULTIMEDIA4>; 808 }; 755 }; 809 }; 756 }; 810 757 811 hdmi-dai-link { 758 hdmi-dai-link { 812 link-name = "HDMI Playback"; 759 link-name = "HDMI Playback"; 813 cpu { 760 cpu { 814 sound-dai = <&q6afedai 761 sound-dai = <&q6afedai QUATERNARY_MI2S_RX>; 815 }; 762 }; 816 763 817 platform { 764 platform { 818 sound-dai = <&q6routin 765 sound-dai = <&q6routing>; 819 }; 766 }; 820 767 821 codec { 768 codec { 822 sound-dai = <<9611_c 769 sound-dai = <<9611_codec 0>; 823 }; 770 }; 824 }; 771 }; 825 772 826 slim-dai-link { 773 slim-dai-link { 827 link-name = "SLIM Playback"; 774 link-name = "SLIM Playback"; 828 cpu { 775 cpu { 829 sound-dai = <&q6afedai 776 sound-dai = <&q6afedai SLIMBUS_0_RX>; 830 }; 777 }; 831 778 832 platform { 779 platform { 833 sound-dai = <&q6routin 780 sound-dai = <&q6routing>; 834 }; 781 }; 835 782 836 codec { 783 codec { 837 sound-dai = <&left_spk 784 sound-dai = <&left_spkr>, <&right_spkr>, <&swm 0>, <&wcd9340 0>; 838 }; 785 }; 839 }; 786 }; 840 787 841 slimcap-dai-link { 788 slimcap-dai-link { 842 link-name = "SLIM Capture"; 789 link-name = "SLIM Capture"; 843 cpu { 790 cpu { 844 sound-dai = <&q6afedai 791 sound-dai = <&q6afedai SLIMBUS_0_TX>; 845 }; 792 }; 846 793 847 platform { 794 platform { 848 sound-dai = <&q6routin 795 sound-dai = <&q6routing>; 849 }; 796 }; 850 797 851 codec { 798 codec { 852 sound-dai = <&wcd9340 799 sound-dai = <&wcd9340 1>; 853 }; 800 }; 854 }; 801 }; 855 }; 802 }; 856 803 857 &spi0 { 804 &spi0 { 858 status = "okay"; 805 status = "okay"; 859 pinctrl-names = "default"; 806 pinctrl-names = "default"; 860 pinctrl-0 = <&qup_spi0_default>; 807 pinctrl-0 = <&qup_spi0_default>; 861 cs-gpios = <&tlmm 3 GPIO_ACTIVE_LOW>; 808 cs-gpios = <&tlmm 3 GPIO_ACTIVE_LOW>; 862 809 863 can@0 { 810 can@0 { 864 compatible = "microchip,mcp251 811 compatible = "microchip,mcp2517fd"; 865 reg = <0>; 812 reg = <0>; 866 clocks = <&clk40M>; 813 clocks = <&clk40M>; 867 interrupts-extended = <&tlmm 1 814 interrupts-extended = <&tlmm 104 IRQ_TYPE_LEVEL_LOW>; 868 spi-max-frequency = <10000000> 815 spi-max-frequency = <10000000>; 869 vdd-supply = <&vdc_5v>; 816 vdd-supply = <&vdc_5v>; 870 xceiver-supply = <&vdc_5v>; 817 xceiver-supply = <&vdc_5v>; 871 }; 818 }; 872 }; 819 }; 873 820 874 &spi2 { 821 &spi2 { 875 /* On Low speed expansion */ 822 /* On Low speed expansion */ >> 823 label = "LS-SPI0"; 876 status = "okay"; 824 status = "okay"; 877 }; 825 }; 878 826 879 &tlmm { 827 &tlmm { 880 cam0_default: cam0-default-state { !! 828 cam0_default: cam0_default { 881 rst-pins { !! 829 rst { 882 pins = "gpio9"; 830 pins = "gpio9"; 883 function = "gpio"; 831 function = "gpio"; 884 832 885 drive-strength = <16>; 833 drive-strength = <16>; 886 bias-disable; 834 bias-disable; 887 }; 835 }; 888 836 889 mclk0-pins { !! 837 mclk0 { 890 pins = "gpio13"; 838 pins = "gpio13"; 891 function = "cam_mclk"; 839 function = "cam_mclk"; 892 840 893 drive-strength = <16>; 841 drive-strength = <16>; 894 bias-disable; 842 bias-disable; 895 }; 843 }; 896 }; 844 }; 897 845 898 cam3_default: cam3-default-state { !! 846 cam3_default: cam3_default { 899 rst-pins { !! 847 rst { 900 function = "gpio"; 848 function = "gpio"; 901 pins = "gpio21"; 849 pins = "gpio21"; 902 850 903 drive-strength = <16>; 851 drive-strength = <16>; 904 bias-disable; 852 bias-disable; 905 }; 853 }; 906 854 907 mclk3-pins { !! 855 mclk3 { 908 function = "cam_mclk"; 856 function = "cam_mclk"; 909 pins = "gpio16"; 857 pins = "gpio16"; 910 858 911 drive-strength = <16>; 859 drive-strength = <16>; 912 bias-disable; 860 bias-disable; 913 }; 861 }; 914 }; 862 }; 915 863 916 dsi_sw_sel: dsi-sw-sel-state { !! 864 dsi_sw_sel: dsi-sw-sel { 917 pins = "gpio120"; 865 pins = "gpio120"; 918 function = "gpio"; 866 function = "gpio"; 919 867 920 drive-strength = <2>; 868 drive-strength = <2>; 921 bias-disable; 869 bias-disable; 922 output-high; 870 output-high; 923 }; 871 }; 924 872 925 lt9611_irq_pin: lt9611-irq-state { !! 873 lt9611_irq_pin: lt9611-irq { 926 pins = "gpio84"; 874 pins = "gpio84"; 927 function = "gpio"; 875 function = "gpio"; 928 bias-disable; 876 bias-disable; 929 }; 877 }; 930 878 931 pcie0_default_state: pcie0-default-sta !! 879 pcie0_default_state: pcie0-default { 932 clkreq-pins { !! 880 clkreq { 933 pins = "gpio36"; 881 pins = "gpio36"; 934 function = "pci_e0"; 882 function = "pci_e0"; 935 bias-pull-up; 883 bias-pull-up; 936 }; 884 }; 937 885 938 reset-n-pins { !! 886 reset-n { 939 pins = "gpio35"; 887 pins = "gpio35"; 940 function = "gpio"; 888 function = "gpio"; 941 889 942 drive-strength = <2>; 890 drive-strength = <2>; 943 output-low; 891 output-low; 944 bias-pull-down; 892 bias-pull-down; 945 }; 893 }; 946 894 947 wake-n-pins { !! 895 wake-n { 948 pins = "gpio37"; 896 pins = "gpio37"; 949 function = "gpio"; 897 function = "gpio"; 950 898 951 drive-strength = <2>; 899 drive-strength = <2>; 952 bias-pull-up; 900 bias-pull-up; 953 }; 901 }; 954 }; 902 }; 955 903 956 pcie0_pwren_state: pcie0-pwren-state { !! 904 pcie0_pwren_state: pcie0-pwren { 957 pins = "gpio90"; 905 pins = "gpio90"; 958 function = "gpio"; 906 function = "gpio"; 959 907 960 drive-strength = <2>; 908 drive-strength = <2>; 961 bias-disable; 909 bias-disable; 962 }; 910 }; 963 911 964 pcie1_default_state: pcie1-default-sta !! 912 pcie1_default_state: pcie1-default { 965 perst-n-pins { !! 913 perst-n { 966 pins = "gpio102"; 914 pins = "gpio102"; 967 function = "gpio"; 915 function = "gpio"; 968 916 969 drive-strength = <16>; 917 drive-strength = <16>; 970 bias-disable; 918 bias-disable; 971 }; 919 }; 972 920 973 clkreq-pins { !! 921 clkreq { 974 pins = "gpio103"; 922 pins = "gpio103"; 975 function = "pci_e1"; 923 function = "pci_e1"; 976 bias-pull-up; 924 bias-pull-up; 977 }; 925 }; 978 926 979 wake-n-pins { !! 927 wake-n { 980 pins = "gpio11"; 928 pins = "gpio11"; 981 function = "gpio"; 929 function = "gpio"; 982 930 983 drive-strength = <2>; 931 drive-strength = <2>; 984 bias-pull-up; 932 bias-pull-up; 985 }; 933 }; 986 934 987 reset-n-pins { !! 935 reset-n { 988 pins = "gpio75"; 936 pins = "gpio75"; 989 function = "gpio"; 937 function = "gpio"; 990 938 991 drive-strength = <16>; 939 drive-strength = <16>; 992 bias-pull-up; 940 bias-pull-up; 993 output-high; 941 output-high; 994 }; 942 }; 995 }; 943 }; 996 944 997 sdc2_default_state: sdc2-default-state !! 945 sdc2_default_state: sdc2-default { 998 clk-pins { !! 946 clk { 999 pins = "sdc2_clk"; 947 pins = "sdc2_clk"; 1000 bias-disable; 948 bias-disable; 1001 949 1002 /* 950 /* 1003 * It seems that mmc_ 951 * It seems that mmc_test reports errors if drive 1004 * strength is not 16 952 * strength is not 16 on clk, cmd, and data pins. 1005 */ 953 */ 1006 drive-strength = <16> 954 drive-strength = <16>; 1007 }; 955 }; 1008 956 1009 cmd-pins { !! 957 cmd { 1010 pins = "sdc2_cmd"; 958 pins = "sdc2_cmd"; 1011 bias-pull-up; 959 bias-pull-up; 1012 drive-strength = <10> 960 drive-strength = <10>; 1013 }; 961 }; 1014 962 1015 data-pins { !! 963 data { 1016 pins = "sdc2_data"; 964 pins = "sdc2_data"; 1017 bias-pull-up; 965 bias-pull-up; 1018 drive-strength = <10> 966 drive-strength = <10>; 1019 }; 967 }; 1020 }; 968 }; 1021 969 1022 sdc2_card_det_n: sd-card-det-n-state !! 970 sdc2_card_det_n: sd-card-det-n { 1023 pins = "gpio126"; 971 pins = "gpio126"; 1024 function = "gpio"; 972 function = "gpio"; 1025 bias-pull-up; 973 bias-pull-up; 1026 }; 974 }; >> 975 >> 976 wcd_intr_default: wcd_intr_default { >> 977 pins = "gpio54"; >> 978 function = "gpio"; >> 979 >> 980 input-enable; >> 981 bias-pull-down; >> 982 drive-strength = <2>; >> 983 }; 1027 }; 984 }; 1028 985 1029 &uart3 { 986 &uart3 { 1030 label = "LS-UART0"; 987 label = "LS-UART0"; 1031 pinctrl-0 = <&qup_uart3_4pin>; << 1032 << 1033 status = "disabled"; 988 status = "disabled"; 1034 }; 989 }; 1035 990 1036 &uart6 { 991 &uart6 { 1037 status = "okay"; 992 status = "okay"; 1038 993 1039 pinctrl-0 = <&qup_uart6_4pin>; 994 pinctrl-0 = <&qup_uart6_4pin>; 1040 995 1041 bluetooth { 996 bluetooth { 1042 compatible = "qcom,wcn3990-bt 997 compatible = "qcom,wcn3990-bt"; 1043 998 1044 vddio-supply = <&vreg_s4a_1p8 999 vddio-supply = <&vreg_s4a_1p8>; 1045 vddxo-supply = <&vreg_l7a_1p8 1000 vddxo-supply = <&vreg_l7a_1p8>; 1046 vddrf-supply = <&vreg_l17a_1p 1001 vddrf-supply = <&vreg_l17a_1p3>; 1047 vddch0-supply = <&vreg_l25a_3 1002 vddch0-supply = <&vreg_l25a_3p3>; 1048 max-speed = <3200000>; 1003 max-speed = <3200000>; 1049 }; 1004 }; 1050 }; 1005 }; 1051 1006 1052 &uart9 { 1007 &uart9 { 1053 label = "LS-UART1"; 1008 label = "LS-UART1"; 1054 status = "okay"; 1009 status = "okay"; 1055 }; 1010 }; 1056 1011 1057 &usb_1 { 1012 &usb_1 { 1058 status = "okay"; 1013 status = "okay"; 1059 }; 1014 }; 1060 1015 1061 &usb_1_dwc3 { 1016 &usb_1_dwc3 { 1062 dr_mode = "peripheral"; 1017 dr_mode = "peripheral"; 1063 }; 1018 }; 1064 1019 1065 &usb_1_hsphy { 1020 &usb_1_hsphy { 1066 status = "okay"; 1021 status = "okay"; 1067 1022 1068 vdd-supply = <&vreg_l1a_0p875>; 1023 vdd-supply = <&vreg_l1a_0p875>; 1069 vdda-pll-supply = <&vreg_l12a_1p8>; 1024 vdda-pll-supply = <&vreg_l12a_1p8>; 1070 vdda-phy-dpdm-supply = <&vreg_l24a_3p 1025 vdda-phy-dpdm-supply = <&vreg_l24a_3p075>; 1071 1026 1072 qcom,imp-res-offset-value = <8>; 1027 qcom,imp-res-offset-value = <8>; 1073 qcom,hstx-trim-value = <QUSB2_V2_HSTX 1028 qcom,hstx-trim-value = <QUSB2_V2_HSTX_TRIM_21_6_MA>; 1074 qcom,preemphasis-level = <QUSB2_V2_PR 1029 qcom,preemphasis-level = <QUSB2_V2_PREEMPHASIS_5_PERCENT>; 1075 qcom,preemphasis-width = <QUSB2_V2_PR 1030 qcom,preemphasis-width = <QUSB2_V2_PREEMPHASIS_WIDTH_HALF_BIT>; 1076 }; 1031 }; 1077 1032 1078 &usb_1_qmpphy { 1033 &usb_1_qmpphy { 1079 status = "okay"; 1034 status = "okay"; 1080 1035 1081 vdda-phy-supply = <&vreg_l26a_1p2>; 1036 vdda-phy-supply = <&vreg_l26a_1p2>; 1082 vdda-pll-supply = <&vreg_l1a_0p875>; 1037 vdda-pll-supply = <&vreg_l1a_0p875>; 1083 }; 1038 }; 1084 1039 1085 &usb_2 { 1040 &usb_2 { 1086 status = "okay"; 1041 status = "okay"; 1087 }; 1042 }; 1088 1043 1089 &usb_2_dwc3 { 1044 &usb_2_dwc3 { 1090 dr_mode = "host"; 1045 dr_mode = "host"; 1091 }; 1046 }; 1092 1047 1093 &usb_2_hsphy { 1048 &usb_2_hsphy { 1094 status = "okay"; 1049 status = "okay"; 1095 1050 1096 vdd-supply = <&vreg_l1a_0p875>; 1051 vdd-supply = <&vreg_l1a_0p875>; 1097 vdda-pll-supply = <&vreg_l12a_1p8>; 1052 vdda-pll-supply = <&vreg_l12a_1p8>; 1098 vdda-phy-dpdm-supply = <&vreg_l24a_3p 1053 vdda-phy-dpdm-supply = <&vreg_l24a_3p075>; 1099 1054 1100 qcom,imp-res-offset-value = <8>; 1055 qcom,imp-res-offset-value = <8>; 1101 qcom,hstx-trim-value = <QUSB2_V2_HSTX 1056 qcom,hstx-trim-value = <QUSB2_V2_HSTX_TRIM_22_8_MA>; 1102 }; 1057 }; 1103 1058 1104 &usb_2_qmpphy { 1059 &usb_2_qmpphy { 1105 status = "okay"; 1060 status = "okay"; 1106 1061 1107 vdda-phy-supply = <&vreg_l26a_1p2>; 1062 vdda-phy-supply = <&vreg_l26a_1p2>; 1108 vdda-pll-supply = <&vreg_l1a_0p875>; 1063 vdda-pll-supply = <&vreg_l1a_0p875>; 1109 }; 1064 }; 1110 1065 1111 &ufs_mem_hc { 1066 &ufs_mem_hc { 1112 status = "okay"; 1067 status = "okay"; 1113 1068 1114 reset-gpios = <&tlmm 150 GPIO_ACTIVE_ 1069 reset-gpios = <&tlmm 150 GPIO_ACTIVE_LOW>; 1115 1070 1116 vcc-supply = <&vreg_l20a_2p95>; 1071 vcc-supply = <&vreg_l20a_2p95>; 1117 vcc-max-microamp = <800000>; 1072 vcc-max-microamp = <800000>; 1118 }; 1073 }; 1119 1074 1120 &ufs_mem_phy { 1075 &ufs_mem_phy { 1121 status = "okay"; 1076 status = "okay"; 1122 1077 1123 vdda-phy-supply = <&vreg_l1a_0p875>; 1078 vdda-phy-supply = <&vreg_l1a_0p875>; 1124 vdda-pll-supply = <&vreg_l26a_1p2>; 1079 vdda-pll-supply = <&vreg_l26a_1p2>; 1125 }; 1080 }; 1126 1081 1127 &venus { 1082 &venus { 1128 status = "okay"; 1083 status = "okay"; 1129 }; 1084 }; 1130 1085 1131 &wcd9340 { 1086 &wcd9340 { >> 1087 pinctrl-0 = <&wcd_intr_default>; >> 1088 pinctrl-names = "default"; >> 1089 clock-names = "extclk"; >> 1090 clocks = <&rpmhcc RPMH_LN_BB_CLK2>; 1132 reset-gpios = <&tlmm 64 GPIO_ACTIVE_H 1091 reset-gpios = <&tlmm 64 GPIO_ACTIVE_HIGH>; 1133 vdd-buck-supply = <&vreg_s4a_1p8>; 1092 vdd-buck-supply = <&vreg_s4a_1p8>; 1134 vdd-buck-sido-supply = <&vreg_s4a_1p8 1093 vdd-buck-sido-supply = <&vreg_s4a_1p8>; 1135 vdd-tx-supply = <&vreg_s4a_1p8>; 1094 vdd-tx-supply = <&vreg_s4a_1p8>; 1136 vdd-rx-supply = <&vreg_s4a_1p8>; 1095 vdd-rx-supply = <&vreg_s4a_1p8>; 1137 vdd-io-supply = <&vreg_s4a_1p8>; 1096 vdd-io-supply = <&vreg_s4a_1p8>; 1138 1097 1139 swm: soundwire@c85 { !! 1098 swm: swm@c85 { 1140 left_spkr: speaker@0,1 { 1099 left_spkr: speaker@0,1 { 1141 compatible = "sdw1021 1100 compatible = "sdw10217201000"; 1142 reg = <0 1>; 1101 reg = <0 1>; 1143 powerdown-gpios = <&w 1102 powerdown-gpios = <&wcdgpio 1 GPIO_ACTIVE_HIGH>; 1144 #thermal-sensor-cells 1103 #thermal-sensor-cells = <0>; 1145 sound-name-prefix = " 1104 sound-name-prefix = "SpkrLeft"; 1146 #sound-dai-cells = <0 1105 #sound-dai-cells = <0>; 1147 }; 1106 }; 1148 1107 1149 right_spkr: speaker@0,2 { 1108 right_spkr: speaker@0,2 { 1150 compatible = "sdw1021 1109 compatible = "sdw10217201000"; 1151 powerdown-gpios = <&w 1110 powerdown-gpios = <&wcdgpio 1 GPIO_ACTIVE_HIGH>; 1152 reg = <0 2>; 1111 reg = <0 2>; 1153 #thermal-sensor-cells 1112 #thermal-sensor-cells = <0>; 1154 sound-name-prefix = " 1113 sound-name-prefix = "SpkrRight"; 1155 #sound-dai-cells = <0 1114 #sound-dai-cells = <0>; 1156 }; 1115 }; 1157 }; 1116 }; 1158 }; 1117 }; 1159 1118 1160 &wifi { 1119 &wifi { 1161 status = "okay"; 1120 status = "okay"; 1162 1121 1163 vdd-0.8-cx-mx-supply = <&vreg_l5a_0p8 1122 vdd-0.8-cx-mx-supply = <&vreg_l5a_0p8>; 1164 vdd-1.8-xo-supply = <&vreg_l7a_1p8>; 1123 vdd-1.8-xo-supply = <&vreg_l7a_1p8>; 1165 vdd-1.3-rfa-supply = <&vreg_l17a_1p3> 1124 vdd-1.3-rfa-supply = <&vreg_l17a_1p3>; 1166 vdd-3.3-ch0-supply = <&vreg_l25a_3p3> 1125 vdd-3.3-ch0-supply = <&vreg_l25a_3p3>; 1167 1126 1168 qcom,snoc-host-cap-8bit-quirk; 1127 qcom,snoc-host-cap-8bit-quirk; 1169 qcom,ath10k-calibration-variant = "Th 1128 qcom,ath10k-calibration-variant = "Thundercomm_DB845C"; 1170 }; 1129 }; 1171 1130 1172 /* PINCTRL - additions to nodes defined in sd 1131 /* PINCTRL - additions to nodes defined in sdm845.dtsi */ 1173 &qup_spi2_default { 1132 &qup_spi2_default { 1174 drive-strength = <16>; !! 1133 pinconf { >> 1134 pins = "gpio27", "gpio28", "gpio29", "gpio30"; >> 1135 drive-strength = <16>; >> 1136 }; >> 1137 }; >> 1138 >> 1139 &qup_uart3_default { >> 1140 pinmux { >> 1141 pins = "gpio41", "gpio42", "gpio43", "gpio44"; >> 1142 function = "qup3"; >> 1143 }; 1175 }; 1144 }; 1176 1145 1177 &qup_i2c10_default { 1146 &qup_i2c10_default { 1178 drive-strength = <2>; !! 1147 pinconf { 1179 bias-disable; !! 1148 pins = "gpio55", "gpio56"; >> 1149 drive-strength = <2>; >> 1150 bias-disable; >> 1151 }; 1180 }; 1152 }; 1181 1153 1182 &qup_uart9_rx { !! 1154 &qup_uart9_default { 1183 drive-strength = <2>; !! 1155 pinconf-tx { 1184 bias-pull-up; !! 1156 pins = "gpio4"; >> 1157 drive-strength = <2>; >> 1158 bias-disable; >> 1159 }; >> 1160 >> 1161 pinconf-rx { >> 1162 pins = "gpio5"; >> 1163 drive-strength = <2>; >> 1164 bias-pull-up; >> 1165 }; 1185 }; 1166 }; 1186 1167 1187 &qup_uart9_tx { !! 1168 &pm8998_gpio { 1188 drive-strength = <2>; !! 1169 1189 bias-disable; << 1190 }; 1170 }; 1191 1171 1192 /* PINCTRL - additions to nodes defined in sd 1172 /* PINCTRL - additions to nodes defined in sdm845.dtsi */ 1193 &qup_spi0_default { 1173 &qup_spi0_default { 1194 drive-strength = <6>; !! 1174 config { 1195 bias-disable; !! 1175 drive-strength = <6>; >> 1176 bias-disable; >> 1177 }; 1196 }; 1178 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.