1 // SPDX-License-Identifier: (GPL-2.0+ OR BSD-3 1 // SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause) 2 /* 2 /* 3 * Copyright (c) 2023, Linaro Ltd 3 * Copyright (c) 2023, 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 "qcm2290.dtsi" 9 #include "qcm2290.dtsi" 10 #include "pm4125.dtsi" 10 #include "pm4125.dtsi" 11 11 12 / { 12 / { 13 model = "Qualcomm Technologies, Inc. R 13 model = "Qualcomm Technologies, Inc. Robotics RB1"; 14 compatible = "qcom,qrb2210-rb1", "qcom 14 compatible = "qcom,qrb2210-rb1", "qcom,qrb2210", "qcom,qcm2290"; 15 15 16 aliases { 16 aliases { 17 serial0 = &uart4; 17 serial0 = &uart4; 18 sdhc1 = &sdhc_1; 18 sdhc1 = &sdhc_1; 19 sdhc2 = &sdhc_2; 19 sdhc2 = &sdhc_2; 20 }; 20 }; 21 21 22 chosen { 22 chosen { 23 stdout-path = "serial0:115200n 23 stdout-path = "serial0:115200n8"; 24 }; 24 }; 25 25 26 clocks { 26 clocks { 27 clk40M: can-clk { 27 clk40M: can-clk { 28 compatible = "fixed-cl 28 compatible = "fixed-clock"; 29 clock-frequency = <400 29 clock-frequency = <40000000>; 30 #clock-cells = <0>; 30 #clock-cells = <0>; 31 }; 31 }; 32 }; 32 }; 33 33 34 gpio-keys { 34 gpio-keys { 35 compatible = "gpio-keys"; 35 compatible = "gpio-keys"; 36 label = "gpio-keys"; 36 label = "gpio-keys"; 37 37 38 pinctrl-0 = <&key_volp_n>; 38 pinctrl-0 = <&key_volp_n>; 39 pinctrl-names = "default"; 39 pinctrl-names = "default"; 40 40 41 key-volume-up { 41 key-volume-up { 42 label = "Volume Up"; 42 label = "Volume Up"; 43 linux,code = <KEY_VOLU 43 linux,code = <KEY_VOLUMEUP>; 44 gpios = <&tlmm 96 GPIO 44 gpios = <&tlmm 96 GPIO_ACTIVE_LOW>; 45 debounce-interval = <1 45 debounce-interval = <15>; 46 linux,can-disable; 46 linux,can-disable; 47 wakeup-source; 47 wakeup-source; 48 }; 48 }; 49 }; 49 }; 50 50 51 hdmi-connector { 51 hdmi-connector { 52 compatible = "hdmi-connector"; 52 compatible = "hdmi-connector"; 53 type = "a"; 53 type = "a"; 54 54 55 port { 55 port { 56 hdmi_con: endpoint { 56 hdmi_con: endpoint { 57 remote-endpoin 57 remote-endpoint = <<9611_out>; 58 }; 58 }; 59 }; 59 }; 60 }; 60 }; 61 61 62 i2c2_gpio: i2c { 62 i2c2_gpio: i2c { 63 compatible = "i2c-gpio"; 63 compatible = "i2c-gpio"; 64 64 65 sda-gpios = <&tlmm 6 GPIO_ACTI 65 sda-gpios = <&tlmm 6 GPIO_ACTIVE_HIGH>; 66 scl-gpios = <&tlmm 7 GPIO_ACTI 66 scl-gpios = <&tlmm 7 GPIO_ACTIVE_HIGH>; 67 #address-cells = <1>; 67 #address-cells = <1>; 68 #size-cells = <0>; 68 #size-cells = <0>; 69 69 70 status = "disabled"; 70 status = "disabled"; 71 }; 71 }; 72 72 73 leds { 73 leds { 74 compatible = "gpio-leds"; 74 compatible = "gpio-leds"; 75 75 76 led-bt { 76 led-bt { 77 label = "blue:bt"; 77 label = "blue:bt"; 78 function = LED_FUNCTIO 78 function = LED_FUNCTION_BLUETOOTH; 79 color = <LED_COLOR_ID_ 79 color = <LED_COLOR_ID_BLUE>; 80 gpios = <&tlmm 45 GPIO 80 gpios = <&tlmm 45 GPIO_ACTIVE_HIGH>; 81 linux,default-trigger 81 linux,default-trigger = "bluetooth-power"; 82 default-state = "off"; 82 default-state = "off"; 83 }; 83 }; 84 84 85 led-user0 { 85 led-user0 { 86 label = "green:user0"; 86 label = "green:user0"; 87 function = LED_FUNCTIO 87 function = LED_FUNCTION_INDICATOR; 88 color = <LED_COLOR_ID_ 88 color = <LED_COLOR_ID_GREEN>; 89 gpios = <&tlmm 52 GPIO 89 gpios = <&tlmm 52 GPIO_ACTIVE_HIGH>; 90 linux,default-trigger 90 linux,default-trigger = "none"; 91 default-state = "off"; 91 default-state = "off"; 92 panic-indicator; 92 panic-indicator; 93 }; 93 }; 94 94 95 led-wlan { 95 led-wlan { 96 label = "yellow:wlan"; 96 label = "yellow:wlan"; 97 function = LED_FUNCTIO 97 function = LED_FUNCTION_WLAN; 98 color = <LED_COLOR_ID_ 98 color = <LED_COLOR_ID_YELLOW>; 99 gpios = <&tlmm 47 GPIO 99 gpios = <&tlmm 47 GPIO_ACTIVE_HIGH>; 100 linux,default-trigger 100 linux,default-trigger = "phy0tx"; 101 default-state = "off"; 101 default-state = "off"; 102 }; 102 }; 103 }; 103 }; 104 104 105 vreg_hdmi_out_1p2: regulator-hdmi-out- 105 vreg_hdmi_out_1p2: regulator-hdmi-out-1p2 { 106 compatible = "regulator-fixed" 106 compatible = "regulator-fixed"; 107 regulator-name = "VREG_HDMI_OU 107 regulator-name = "VREG_HDMI_OUT_1P2"; 108 regulator-min-microvolt = <120 108 regulator-min-microvolt = <1200000>; 109 regulator-max-microvolt = <120 109 regulator-max-microvolt = <1200000>; 110 vin-supply = <&vdc_1v2>; 110 vin-supply = <&vdc_1v2>; 111 regulator-always-on; 111 regulator-always-on; 112 regulator-boot-on; 112 regulator-boot-on; 113 }; 113 }; 114 114 115 lt9611_3v3: regulator-lt9611-3v3 { 115 lt9611_3v3: regulator-lt9611-3v3 { 116 compatible = "regulator-fixed" 116 compatible = "regulator-fixed"; 117 regulator-name = "LT9611_3V3"; 117 regulator-name = "LT9611_3V3"; 118 regulator-min-microvolt = <330 118 regulator-min-microvolt = <3300000>; 119 regulator-max-microvolt = <330 119 regulator-max-microvolt = <3300000>; 120 vin-supply = <&vdc_3v3>; 120 vin-supply = <&vdc_3v3>; 121 regulator-always-on; 121 regulator-always-on; 122 regulator-boot-on; 122 regulator-boot-on; 123 }; 123 }; 124 124 125 /* Main barrel jack input */ 125 /* Main barrel jack input */ 126 vdc_12v: regulator-vdc-12v { 126 vdc_12v: regulator-vdc-12v { 127 compatible = "regulator-fixed" 127 compatible = "regulator-fixed"; 128 regulator-name = "DC_12V"; 128 regulator-name = "DC_12V"; 129 regulator-min-microvolt = <120 129 regulator-min-microvolt = <12000000>; 130 regulator-max-microvolt = <120 130 regulator-max-microvolt = <12000000>; 131 regulator-always-on; 131 regulator-always-on; 132 regulator-boot-on; 132 regulator-boot-on; 133 }; 133 }; 134 134 135 /* 1.2V supply stepped down from the b 135 /* 1.2V supply stepped down from the barrel jack input */ 136 vdc_1v2: regulator-vdc-1v2 { 136 vdc_1v2: regulator-vdc-1v2 { 137 compatible = "regulator-fixed" 137 compatible = "regulator-fixed"; 138 regulator-name = "VDC_1V2"; 138 regulator-name = "VDC_1V2"; 139 regulator-min-microvolt = <120 139 regulator-min-microvolt = <1200000>; 140 regulator-max-microvolt = <120 140 regulator-max-microvolt = <1200000>; 141 vin-supply = <&vdc_12v>; 141 vin-supply = <&vdc_12v>; 142 regulator-always-on; 142 regulator-always-on; 143 regulator-boot-on; 143 regulator-boot-on; 144 }; 144 }; 145 145 146 /* 3.3V supply stepped down from the b 146 /* 3.3V supply stepped down from the barrel jack input */ 147 vdc_3v3: regulator-vdc-3v3 { 147 vdc_3v3: regulator-vdc-3v3 { 148 compatible = "regulator-fixed" 148 compatible = "regulator-fixed"; 149 regulator-name = "VDC_3V3"; 149 regulator-name = "VDC_3V3"; 150 regulator-min-microvolt = <330 150 regulator-min-microvolt = <3300000>; 151 regulator-max-microvolt = <330 151 regulator-max-microvolt = <3300000>; 152 vin-supply = <&vdc_12v>; 152 vin-supply = <&vdc_12v>; 153 regulator-always-on; 153 regulator-always-on; 154 regulator-boot-on; 154 regulator-boot-on; 155 }; 155 }; 156 156 157 /* 5V supply stepped down from the bar 157 /* 5V supply stepped down from the barrel jack input */ 158 vdc_5v: regulator-vdc-5v { 158 vdc_5v: regulator-vdc-5v { 159 compatible = "regulator-fixed" 159 compatible = "regulator-fixed"; 160 regulator-name = "VDC_5V"; 160 regulator-name = "VDC_5V"; 161 161 162 regulator-min-microvolt = <500 162 regulator-min-microvolt = <5000000>; 163 regulator-max-microvolt = <500 163 regulator-max-microvolt = <5000000>; 164 regulator-always-on; 164 regulator-always-on; 165 regulator-boot-on; 165 regulator-boot-on; 166 }; 166 }; 167 167 168 /* "Battery" voltage for the SoM, step 168 /* "Battery" voltage for the SoM, stepped down from the barrel jack input */ 169 vdc_vbat_som: regulator-vdc-vbat { 169 vdc_vbat_som: regulator-vdc-vbat { 170 compatible = "regulator-fixed" 170 compatible = "regulator-fixed"; 171 regulator-name = "VBAT_SOM"; 171 regulator-name = "VBAT_SOM"; 172 regulator-min-microvolt = <420 172 regulator-min-microvolt = <4200000>; 173 regulator-max-microvolt = <420 173 regulator-max-microvolt = <4200000>; 174 regulator-always-on; 174 regulator-always-on; 175 regulator-boot-on; 175 regulator-boot-on; 176 }; 176 }; 177 177 178 /* PM2250 charger out, supplied by VBA 178 /* PM2250 charger out, supplied by VBAT */ 179 vph_pwr: regulator-vph-pwr { 179 vph_pwr: regulator-vph-pwr { 180 compatible = "regulator-fixed" 180 compatible = "regulator-fixed"; 181 regulator-name = "vph_pwr"; 181 regulator-name = "vph_pwr"; 182 regulator-min-microvolt = <370 182 regulator-min-microvolt = <3700000>; 183 regulator-max-microvolt = <370 183 regulator-max-microvolt = <3700000>; 184 vin-supply = <&vdc_vbat_som>; 184 vin-supply = <&vdc_vbat_som>; 185 185 186 regulator-always-on; 186 regulator-always-on; 187 regulator-boot-on; 187 regulator-boot-on; 188 }; 188 }; 189 }; 189 }; 190 190 191 &CPU_PD0 { 191 &CPU_PD0 { 192 /delete-property/ power-domains; 192 /delete-property/ power-domains; 193 }; 193 }; 194 194 195 &CPU_PD1 { 195 &CPU_PD1 { 196 /delete-property/ power-domains; 196 /delete-property/ power-domains; 197 }; 197 }; 198 198 199 &CPU_PD2 { 199 &CPU_PD2 { 200 /delete-property/ power-domains; 200 /delete-property/ power-domains; 201 }; 201 }; 202 202 203 &CPU_PD3 { 203 &CPU_PD3 { 204 /delete-property/ power-domains; 204 /delete-property/ power-domains; 205 }; 205 }; 206 206 207 /delete-node/ &CLUSTER_PD; 207 /delete-node/ &CLUSTER_PD; 208 208 209 &gpi_dma0 { 209 &gpi_dma0 { 210 status = "okay"; 210 status = "okay"; 211 }; 211 }; 212 212 213 &gpu { 213 &gpu { 214 status = "okay"; 214 status = "okay"; 215 215 216 zap-shader { 216 zap-shader { 217 firmware-name = "qcom/qcm2290/ 217 firmware-name = "qcom/qcm2290/a702_zap.mbn"; 218 }; 218 }; 219 }; 219 }; 220 220 221 &i2c2_gpio { 221 &i2c2_gpio { 222 clock-frequency = <400000>; 222 clock-frequency = <400000>; 223 status = "okay"; 223 status = "okay"; 224 224 225 lt9611_codec: hdmi-bridge@2b { 225 lt9611_codec: hdmi-bridge@2b { 226 compatible = "lontium,lt9611ux 226 compatible = "lontium,lt9611uxc"; 227 reg = <0x2b>; 227 reg = <0x2b>; 228 interrupts-extended = <&tlmm 4 228 interrupts-extended = <&tlmm 46 IRQ_TYPE_EDGE_FALLING>; 229 reset-gpios = <&tlmm 41 GPIO_A 229 reset-gpios = <&tlmm 41 GPIO_ACTIVE_HIGH>; 230 230 231 vdd-supply = <&vreg_hdmi_out_1 231 vdd-supply = <&vreg_hdmi_out_1p2>; 232 vcc-supply = <<9611_3v3>; 232 vcc-supply = <<9611_3v3>; 233 233 234 pinctrl-0 = <<9611_irq_pin & 234 pinctrl-0 = <<9611_irq_pin <9611_rst_pin>; 235 pinctrl-names = "default"; 235 pinctrl-names = "default"; 236 #sound-dai-cells = <1>; 236 #sound-dai-cells = <1>; 237 237 238 ports { 238 ports { 239 #address-cells = <1>; 239 #address-cells = <1>; 240 #size-cells = <0>; 240 #size-cells = <0>; 241 241 242 port@0 { 242 port@0 { 243 reg = <0>; 243 reg = <0>; 244 244 245 lt9611_a: endp 245 lt9611_a: endpoint { 246 remote 246 remote-endpoint = <&mdss_dsi0_out>; 247 }; 247 }; 248 }; 248 }; 249 249 250 port@2 { 250 port@2 { 251 reg = <2>; 251 reg = <2>; 252 252 253 lt9611_out: en 253 lt9611_out: endpoint { 254 remote 254 remote-endpoint = <&hdmi_con>; 255 }; 255 }; 256 }; 256 }; 257 }; 257 }; 258 }; 258 }; 259 }; 259 }; 260 260 261 &mdss { 261 &mdss { 262 status = "okay"; 262 status = "okay"; 263 }; 263 }; 264 264 265 &mdss_dsi0 { 265 &mdss_dsi0 { 266 vdda-supply = <&pm4125_l5>; 266 vdda-supply = <&pm4125_l5>; 267 status = "okay"; 267 status = "okay"; 268 }; 268 }; 269 269 270 &mdss_dsi0_out { 270 &mdss_dsi0_out { 271 remote-endpoint = <<9611_a>; 271 remote-endpoint = <<9611_a>; 272 data-lanes = <0 1 2 3>; 272 data-lanes = <0 1 2 3>; 273 }; 273 }; 274 274 275 &mdss_dsi0_phy { 275 &mdss_dsi0_phy { 276 status = "okay"; 276 status = "okay"; 277 }; 277 }; 278 278 279 &pm4125_resin { 279 &pm4125_resin { 280 linux,code = <KEY_VOLUMEDOWN>; 280 linux,code = <KEY_VOLUMEDOWN>; 281 status = "okay"; 281 status = "okay"; 282 }; 282 }; 283 283 284 &pm4125_typec { 284 &pm4125_typec { 285 status = "okay"; 285 status = "okay"; 286 286 287 connector { 287 connector { 288 compatible = "usb-c-connector" 288 compatible = "usb-c-connector"; 289 289 290 power-role = "dual"; 290 power-role = "dual"; 291 data-role = "dual"; 291 data-role = "dual"; 292 self-powered; 292 self-powered; 293 293 294 typec-power-opmode = "default" 294 typec-power-opmode = "default"; 295 pd-disable; 295 pd-disable; 296 296 297 ports { 297 ports { 298 #address-cells = <1>; 298 #address-cells = <1>; 299 #size-cells = <0>; 299 #size-cells = <0>; 300 300 301 port@0 { 301 port@0 { 302 reg = <0>; 302 reg = <0>; 303 pm4125_hs_in: 303 pm4125_hs_in: endpoint { 304 remote 304 remote-endpoint = <&usb_dwc3_hs>; 305 }; 305 }; 306 }; 306 }; 307 307 308 port@1 { 308 port@1 { 309 reg = <1>; 309 reg = <1>; 310 pm4125_ss_in: 310 pm4125_ss_in: endpoint { 311 remote 311 remote-endpoint = <&usb_qmpphy_out>; 312 }; 312 }; 313 }; 313 }; 314 }; 314 }; 315 }; 315 }; 316 }; 316 }; 317 317 318 &pm4125_vbus { 318 &pm4125_vbus { 319 regulator-min-microamp = <500000>; 319 regulator-min-microamp = <500000>; 320 regulator-max-microamp = <500000>; 320 regulator-max-microamp = <500000>; 321 status = "okay"; 321 status = "okay"; 322 }; 322 }; 323 323 324 &qupv3_id_0 { 324 &qupv3_id_0 { 325 status = "okay"; 325 status = "okay"; 326 }; 326 }; 327 327 328 &remoteproc_adsp { 328 &remoteproc_adsp { 329 firmware-name = "qcom/qcm2290/adsp.mbn 329 firmware-name = "qcom/qcm2290/adsp.mbn"; 330 status = "okay"; 330 status = "okay"; 331 }; 331 }; 332 332 333 &remoteproc_mpss { 333 &remoteproc_mpss { 334 firmware-name = "qcom/qcm2290/modem.mb 334 firmware-name = "qcom/qcm2290/modem.mbn"; 335 status = "okay"; 335 status = "okay"; 336 }; 336 }; 337 337 338 &rpm_requests { 338 &rpm_requests { 339 regulators { 339 regulators { 340 compatible = "qcom,rpm-pm2250- 340 compatible = "qcom,rpm-pm2250-regulators"; 341 vdd_s3-supply = <&vph_pwr>; 341 vdd_s3-supply = <&vph_pwr>; 342 vdd_s4-supply = <&vph_pwr>; 342 vdd_s4-supply = <&vph_pwr>; 343 vdd_l1_l2_l3_l5_l6_l7_l8_l9_l1 343 vdd_l1_l2_l3_l5_l6_l7_l8_l9_l10_l11_l12-supply = <&pm4125_s3>; 344 vdd_l4_l17_l18_l19_l20_l21_l22 344 vdd_l4_l17_l18_l19_l20_l21_l22-supply = <&vph_pwr>; 345 vdd_l13_l14_l15_l16-supply = < 345 vdd_l13_l14_l15_l16-supply = <&pm4125_s4>; 346 346 347 /* 347 /* 348 * S1 - VDD_APC 348 * S1 - VDD_APC 349 * S2 - VDD_CX 349 * S2 - VDD_CX 350 */ 350 */ 351 351 352 pm4125_s3: s3 { 352 pm4125_s3: s3 { 353 /* 0.4V-1.6625V -> 1.3 353 /* 0.4V-1.6625V -> 1.3V (Power tree requirements) */ 354 regulator-min-microvol 354 regulator-min-microvolt = <1352000>; 355 regulator-max-microvol 355 regulator-max-microvolt = <1352000>; 356 regulator-boot-on; 356 regulator-boot-on; 357 }; 357 }; 358 358 359 pm4125_s4: s4 { 359 pm4125_s4: s4 { 360 /* 1.2V-2.35V -> 2.05V 360 /* 1.2V-2.35V -> 2.05V (Power tree requirements) */ 361 regulator-min-microvol 361 regulator-min-microvolt = <2072000>; 362 regulator-max-microvol 362 regulator-max-microvolt = <2072000>; 363 regulator-boot-on; 363 regulator-boot-on; 364 }; 364 }; 365 365 366 /* L1 - VDD_MX */ 366 /* L1 - VDD_MX */ 367 367 368 pm4125_l2: l2 { 368 pm4125_l2: l2 { 369 /* LPDDR4X VDD2 */ 369 /* LPDDR4X VDD2 */ 370 regulator-min-microvol 370 regulator-min-microvolt = <1136000>; 371 regulator-max-microvol 371 regulator-max-microvolt = <1136000>; 372 regulator-always-on; 372 regulator-always-on; 373 regulator-boot-on; 373 regulator-boot-on; 374 }; 374 }; 375 375 376 pm4125_l3: l3 { 376 pm4125_l3: l3 { 377 /* LPDDR4X VDDQ */ 377 /* LPDDR4X VDDQ */ 378 regulator-min-microvol 378 regulator-min-microvolt = <616000>; 379 regulator-max-microvol 379 regulator-max-microvolt = <616000>; 380 regulator-always-on; 380 regulator-always-on; 381 regulator-boot-on; 381 regulator-boot-on; 382 }; 382 }; 383 383 384 pm4125_l4: l4 { 384 pm4125_l4: l4 { 385 /* max = 3.05V -> max 385 /* max = 3.05V -> max = 2.7 to disable 3V signaling (SDHCI2) */ 386 regulator-min-microvol 386 regulator-min-microvolt = <1800000>; 387 regulator-max-microvol 387 regulator-max-microvolt = <2700000>; 388 regulator-allow-set-lo 388 regulator-allow-set-load; 389 }; 389 }; 390 390 391 pm4125_l5: l5 { 391 pm4125_l5: l5 { 392 /* CSI/DSI */ 392 /* CSI/DSI */ 393 regulator-min-microvol 393 regulator-min-microvolt = <1232000>; 394 regulator-max-microvol 394 regulator-max-microvolt = <1232000>; 395 regulator-allow-set-lo 395 regulator-allow-set-load; 396 regulator-boot-on; 396 regulator-boot-on; 397 }; 397 }; 398 398 399 pm4125_l6: l6 { 399 pm4125_l6: l6 { 400 /* DRAM PLL */ 400 /* DRAM PLL */ 401 regulator-min-microvol 401 regulator-min-microvolt = <928000>; 402 regulator-max-microvol 402 regulator-max-microvolt = <928000>; 403 regulator-always-on; 403 regulator-always-on; 404 regulator-boot-on; 404 regulator-boot-on; 405 }; 405 }; 406 406 407 pm4125_l7: l7 { 407 pm4125_l7: l7 { 408 /* Wi-Fi CX/MX */ 408 /* Wi-Fi CX/MX */ 409 regulator-min-microvol 409 regulator-min-microvolt = <664000>; 410 regulator-max-microvol 410 regulator-max-microvolt = <664000>; 411 }; 411 }; 412 412 413 /* 413 /* 414 * L8 - VDD_LPI_CX 414 * L8 - VDD_LPI_CX 415 * L9 - VDD_LPI_MX 415 * L9 - VDD_LPI_MX 416 */ 416 */ 417 417 418 pm4125_l10: l10 { 418 pm4125_l10: l10 { 419 /* Wi-Fi RFA */ 419 /* Wi-Fi RFA */ 420 regulator-min-microvol 420 regulator-min-microvolt = <1304000>; 421 regulator-max-microvol 421 regulator-max-microvolt = <1304000>; 422 }; 422 }; 423 423 424 pm4125_l11: l11 { 424 pm4125_l11: l11 { 425 /* GPS RF1 */ 425 /* GPS RF1 */ 426 regulator-min-microvol 426 regulator-min-microvolt = <1000000>; 427 regulator-max-microvol 427 regulator-max-microvolt = <1000000>; 428 regulator-boot-on; 428 regulator-boot-on; 429 }; 429 }; 430 430 431 pm4125_l12: l12 { 431 pm4125_l12: l12 { 432 /* USB PHYs */ 432 /* USB PHYs */ 433 regulator-min-microvol 433 regulator-min-microvolt = <928000>; 434 regulator-max-microvol 434 regulator-max-microvolt = <928000>; 435 regulator-allow-set-lo 435 regulator-allow-set-load; 436 regulator-boot-on; 436 regulator-boot-on; 437 }; 437 }; 438 438 439 pm4125_l13: l13 { 439 pm4125_l13: l13 { 440 /* USB/QFPROM/PLLs */ 440 /* USB/QFPROM/PLLs */ 441 regulator-min-microvol 441 regulator-min-microvolt = <1800000>; 442 regulator-max-microvol 442 regulator-max-microvolt = <1800000>; 443 regulator-allow-set-lo 443 regulator-allow-set-load; 444 regulator-boot-on; 444 regulator-boot-on; 445 }; 445 }; 446 446 447 pm4125_l14: l14 { 447 pm4125_l14: l14 { 448 /* SDHCI1 VQMMC */ 448 /* SDHCI1 VQMMC */ 449 regulator-min-microvol 449 regulator-min-microvolt = <1800000>; 450 regulator-max-microvol 450 regulator-max-microvolt = <1800000>; 451 regulator-allow-set-lo 451 regulator-allow-set-load; 452 /* Broken hardware, ne 452 /* Broken hardware, never turn it off! */ 453 regulator-always-on; 453 regulator-always-on; 454 }; 454 }; 455 455 456 pm4125_l15: l15 { 456 pm4125_l15: l15 { 457 /* WCD/DSI/BT VDDIO */ 457 /* WCD/DSI/BT VDDIO */ 458 regulator-min-microvol 458 regulator-min-microvolt = <1800000>; 459 regulator-max-microvol 459 regulator-max-microvolt = <1800000>; 460 regulator-allow-set-lo 460 regulator-allow-set-load; 461 regulator-always-on; 461 regulator-always-on; 462 regulator-boot-on; 462 regulator-boot-on; 463 }; 463 }; 464 464 465 pm4125_l16: l16 { 465 pm4125_l16: l16 { 466 /* GPS RF2 */ 466 /* GPS RF2 */ 467 regulator-min-microvol 467 regulator-min-microvolt = <1800000>; 468 regulator-max-microvol 468 regulator-max-microvolt = <1800000>; 469 regulator-boot-on; 469 regulator-boot-on; 470 }; 470 }; 471 471 472 pm4125_l17: l17 { 472 pm4125_l17: l17 { 473 regulator-min-microvol 473 regulator-min-microvolt = <3000000>; 474 regulator-max-microvol 474 regulator-max-microvolt = <3000000>; 475 }; 475 }; 476 476 477 pm4125_l18: l18 { 477 pm4125_l18: l18 { 478 /* VDD_PXn */ 478 /* VDD_PXn */ 479 regulator-min-microvol 479 regulator-min-microvolt = <1800000>; 480 regulator-max-microvol 480 regulator-max-microvolt = <1800000>; 481 }; 481 }; 482 482 483 pm4125_l19: l19 { 483 pm4125_l19: l19 { 484 /* VDD_PXn */ 484 /* VDD_PXn */ 485 regulator-min-microvol 485 regulator-min-microvolt = <1800000>; 486 regulator-max-microvol 486 regulator-max-microvolt = <1800000>; 487 }; 487 }; 488 488 489 pm4125_l20: l20 { 489 pm4125_l20: l20 { 490 /* SDHCI1 VMMC */ 490 /* SDHCI1 VMMC */ 491 regulator-min-microvol 491 regulator-min-microvolt = <2400000>; 492 regulator-max-microvol 492 regulator-max-microvolt = <3600000>; 493 regulator-allow-set-lo 493 regulator-allow-set-load; 494 }; 494 }; 495 495 496 pm4125_l21: l21 { 496 pm4125_l21: l21 { 497 /* SDHCI2 VMMC */ 497 /* SDHCI2 VMMC */ 498 regulator-min-microvol 498 regulator-min-microvolt = <2960000>; 499 regulator-max-microvol 499 regulator-max-microvolt = <3300000>; 500 regulator-allow-set-lo 500 regulator-allow-set-load; 501 regulator-boot-on; 501 regulator-boot-on; 502 }; 502 }; 503 503 504 pm4125_l22: l22 { 504 pm4125_l22: l22 { 505 /* Wi-Fi */ 505 /* Wi-Fi */ 506 regulator-min-microvol 506 regulator-min-microvolt = <3312000>; 507 regulator-max-microvol 507 regulator-max-microvolt = <3312000>; 508 }; 508 }; 509 }; 509 }; 510 }; 510 }; 511 511 512 &sdhc_1 { 512 &sdhc_1 { 513 vmmc-supply = <&pm4125_l20>; 513 vmmc-supply = <&pm4125_l20>; 514 vqmmc-supply = <&pm4125_l14>; 514 vqmmc-supply = <&pm4125_l14>; 515 pinctrl-0 = <&sdc1_state_on>; 515 pinctrl-0 = <&sdc1_state_on>; 516 pinctrl-1 = <&sdc1_state_off>; 516 pinctrl-1 = <&sdc1_state_off>; 517 pinctrl-names = "default", "sleep"; 517 pinctrl-names = "default", "sleep"; 518 non-removable; 518 non-removable; 519 supports-cqe; 519 supports-cqe; 520 no-sdio; 520 no-sdio; 521 no-sd; 521 no-sd; 522 status = "okay"; 522 status = "okay"; 523 }; 523 }; 524 524 525 &sdhc_2 { 525 &sdhc_2 { 526 vmmc-supply = <&pm4125_l21>; 526 vmmc-supply = <&pm4125_l21>; 527 vqmmc-supply = <&pm4125_l4>; 527 vqmmc-supply = <&pm4125_l4>; 528 cd-gpios = <&tlmm 88 GPIO_ACTIVE_LOW>; 528 cd-gpios = <&tlmm 88 GPIO_ACTIVE_LOW>; 529 pinctrl-0 = <&sdc2_state_on &sd_det_in 529 pinctrl-0 = <&sdc2_state_on &sd_det_in_on>; 530 pinctrl-1 = <&sdc2_state_off &sd_det_i 530 pinctrl-1 = <&sdc2_state_off &sd_det_in_off>; 531 pinctrl-names = "default", "sleep"; 531 pinctrl-names = "default", "sleep"; 532 no-sdio; 532 no-sdio; 533 no-mmc; 533 no-mmc; 534 status = "okay"; 534 status = "okay"; 535 }; 535 }; 536 536 537 &spi5 { 537 &spi5 { 538 status = "okay"; 538 status = "okay"; 539 539 540 can@0 { 540 can@0 { 541 compatible = "microchip,mcp251 541 compatible = "microchip,mcp2518fd"; 542 reg = <0>; 542 reg = <0>; 543 interrupts-extended = <&tlmm 3 543 interrupts-extended = <&tlmm 39 IRQ_TYPE_LEVEL_LOW>; 544 clocks = <&clk40M>; 544 clocks = <&clk40M>; 545 spi-max-frequency = <10000000> 545 spi-max-frequency = <10000000>; 546 vdd-supply = <&vdc_5v>; 546 vdd-supply = <&vdc_5v>; 547 xceiver-supply = <&vdc_5v>; 547 xceiver-supply = <&vdc_5v>; 548 }; 548 }; 549 }; 549 }; 550 550 551 &tlmm { 551 &tlmm { 552 lt9611_rst_pin: lt9611-rst-state { 552 lt9611_rst_pin: lt9611-rst-state { 553 pins = "gpio41"; 553 pins = "gpio41"; 554 function = "gpio"; 554 function = "gpio"; 555 input-disable; 555 input-disable; 556 output-high; 556 output-high; 557 }; 557 }; 558 558 559 lt9611_irq_pin: lt9611-irq-state { 559 lt9611_irq_pin: lt9611-irq-state { 560 pins = "gpio46"; 560 pins = "gpio46"; 561 function = "gpio"; 561 function = "gpio"; 562 bias-disable; 562 bias-disable; 563 }; 563 }; 564 564 565 sd_det_in_on: sd-det-in-on-state { 565 sd_det_in_on: sd-det-in-on-state { 566 pins = "gpio88"; 566 pins = "gpio88"; 567 function = "gpio"; 567 function = "gpio"; 568 drive-strength = <2>; 568 drive-strength = <2>; 569 bias-pull-up; 569 bias-pull-up; 570 }; 570 }; 571 571 572 sd_det_in_off: sd-det-in-off-state { 572 sd_det_in_off: sd-det-in-off-state { 573 pins = "gpio88"; 573 pins = "gpio88"; 574 function = "gpio"; 574 function = "gpio"; 575 drive-strength = <2>; 575 drive-strength = <2>; 576 bias-disable; 576 bias-disable; 577 }; 577 }; 578 578 579 key_volp_n: key-volp-n-state { 579 key_volp_n: key-volp-n-state { 580 pins = "gpio96"; 580 pins = "gpio96"; 581 function = "gpio"; 581 function = "gpio"; 582 bias-pull-up; 582 bias-pull-up; 583 output-disable; 583 output-disable; 584 }; 584 }; 585 }; 585 }; 586 586 587 /* UART connected to the Micro-USB port via a 587 /* UART connected to the Micro-USB port via a FTDI chip */ 588 &uart4 { 588 &uart4 { 589 compatible = "qcom,geni-debug-uart"; 589 compatible = "qcom,geni-debug-uart"; 590 status = "okay"; 590 status = "okay"; 591 }; 591 }; 592 592 593 &usb { 593 &usb { 594 status = "okay"; 594 status = "okay"; 595 }; 595 }; 596 596 597 &usb_dwc3_hs { 597 &usb_dwc3_hs { 598 remote-endpoint = <&pm4125_hs_in>; 598 remote-endpoint = <&pm4125_hs_in>; 599 }; 599 }; 600 600 601 &usb_hsphy { 601 &usb_hsphy { 602 vdd-supply = <&pm4125_l12>; 602 vdd-supply = <&pm4125_l12>; 603 vdda-pll-supply = <&pm4125_l13>; 603 vdda-pll-supply = <&pm4125_l13>; 604 vdda-phy-dpdm-supply = <&pm4125_l21>; 604 vdda-phy-dpdm-supply = <&pm4125_l21>; 605 status = "okay"; 605 status = "okay"; 606 }; 606 }; 607 607 608 &usb_qmpphy { 608 &usb_qmpphy { 609 vdda-phy-supply = <&pm4125_l12>; 609 vdda-phy-supply = <&pm4125_l12>; 610 vdda-pll-supply = <&pm4125_l13>; 610 vdda-pll-supply = <&pm4125_l13>; 611 status = "okay"; 611 status = "okay"; 612 }; 612 }; 613 613 614 &usb_qmpphy_out { 614 &usb_qmpphy_out { 615 remote-endpoint = <&pm4125_ss_in>; 615 remote-endpoint = <&pm4125_ss_in>; 616 }; 616 }; 617 617 618 &wifi { 618 &wifi { 619 vdd-0.8-cx-mx-supply = <&pm4125_l7>; 619 vdd-0.8-cx-mx-supply = <&pm4125_l7>; 620 vdd-1.8-xo-supply = <&pm4125_l13>; 620 vdd-1.8-xo-supply = <&pm4125_l13>; 621 vdd-1.3-rfa-supply = <&pm4125_l10>; 621 vdd-1.3-rfa-supply = <&pm4125_l10>; 622 vdd-3.3-ch0-supply = <&pm4125_l22>; 622 vdd-3.3-ch0-supply = <&pm4125_l22>; 623 qcom,ath10k-calibration-variant = "Thu 623 qcom,ath10k-calibration-variant = "Thundercomm_RB1"; 624 firmware-name = "qcm2290"; 624 firmware-name = "qcm2290"; 625 status = "okay"; 625 status = "okay"; 626 }; 626 }; 627 627 628 &xo_board { 628 &xo_board { 629 clock-frequency = <38400000>; 629 clock-frequency = <38400000>; 630 }; 630 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.