1 // SPDX-License-Identifier: BSD-3-Clause 1 // SPDX-License-Identifier: BSD-3-Clause 2 /* 2 /* 3 * Copyright (c) 2021, Luca Weiss <luca@z3ntu.x 3 * Copyright (c) 2021, Luca Weiss <luca@z3ntu.xyz> 4 */ 4 */ 5 5 6 /dts-v1/; 6 /dts-v1/; 7 7 8 #include "qcom-msm8226.dtsi" 8 #include "qcom-msm8226.dtsi" 9 #include "pm8226.dtsi" 9 #include "pm8226.dtsi" 10 #include <dt-bindings/clock/qcom,mmcc-msm8974. 10 #include <dt-bindings/clock/qcom,mmcc-msm8974.h> 11 11 12 /delete-node/ &adsp_region; 12 /delete-node/ &adsp_region; 13 13 14 / { 14 / { 15 model = "LG G Watch R"; 15 model = "LG G Watch R"; 16 compatible = "lg,lenok", "qcom,apq8026 16 compatible = "lg,lenok", "qcom,apq8026"; 17 chassis-type = "watch"; 17 chassis-type = "watch"; 18 qcom,board-id = <132 0x0a>; 18 qcom,board-id = <132 0x0a>; 19 qcom,msm-id = <199 0x20000>; 19 qcom,msm-id = <199 0x20000>; 20 20 21 aliases { 21 aliases { 22 serial0 = &blsp1_uart3; 22 serial0 = &blsp1_uart3; 23 serial1 = &blsp1_uart4; 23 serial1 = &blsp1_uart4; 24 }; 24 }; 25 25 26 chosen { 26 chosen { 27 stdout-path = "serial0:115200n 27 stdout-path = "serial0:115200n8"; 28 }; 28 }; 29 29 30 reserved-memory { 30 reserved-memory { 31 sbl_region: sbl@2f00000 { 31 sbl_region: sbl@2f00000 { 32 reg = <0x02f00000 0x10 32 reg = <0x02f00000 0x100000>; 33 no-map; 33 no-map; 34 }; 34 }; 35 35 36 external_image_region: externa 36 external_image_region: external-image@3100000 { 37 reg = <0x03100000 0x20 37 reg = <0x03100000 0x200000>; 38 no-map; 38 no-map; 39 }; 39 }; 40 40 41 adsp_region: adsp@3300000 { 41 adsp_region: adsp@3300000 { 42 reg = <0x03300000 0x14 42 reg = <0x03300000 0x1400000>; 43 no-map; 43 no-map; 44 }; 44 }; 45 }; 45 }; 46 46 47 vreg_wlan: wlan-regulator { 47 vreg_wlan: wlan-regulator { 48 compatible = "regulator-fixed" 48 compatible = "regulator-fixed"; 49 49 50 regulator-name = "wl-reg"; 50 regulator-name = "wl-reg"; 51 regulator-min-microvolt = <295 51 regulator-min-microvolt = <2950000>; 52 regulator-max-microvolt = <295 52 regulator-max-microvolt = <2950000>; 53 53 54 gpio = <&tlmm 46 GPIO_ACTIVE_H 54 gpio = <&tlmm 46 GPIO_ACTIVE_HIGH>; 55 enable-active-high; 55 enable-active-high; 56 56 57 pinctrl-names = "default"; 57 pinctrl-names = "default"; 58 pinctrl-0 = <&wlan_regulator_d 58 pinctrl-0 = <&wlan_regulator_default_state>; 59 }; 59 }; 60 60 61 pwm_vibrator: pwm { 61 pwm_vibrator: pwm { 62 compatible = "clk-pwm"; 62 compatible = "clk-pwm"; 63 clocks = <&mmcc CAMSS_GP0_CLK> 63 clocks = <&mmcc CAMSS_GP0_CLK>; 64 64 65 pinctrl-0 = <&vibrator_clk_def 65 pinctrl-0 = <&vibrator_clk_default_state>; 66 pinctrl-names = "default"; 66 pinctrl-names = "default"; 67 67 68 #pwm-cells = <2>; 68 #pwm-cells = <2>; 69 }; 69 }; 70 70 71 vibrator { 71 vibrator { 72 compatible = "pwm-vibrator"; 72 compatible = "pwm-vibrator"; 73 73 74 pwms = <&pwm_vibrator 0 10000> 74 pwms = <&pwm_vibrator 0 10000>; 75 pwm-names = "enable"; 75 pwm-names = "enable"; 76 76 77 vcc-supply = <&pm8226_l28>; 77 vcc-supply = <&pm8226_l28>; 78 enable-gpios = <&tlmm 62 GPIO_ 78 enable-gpios = <&tlmm 62 GPIO_ACTIVE_HIGH>; 79 79 80 pinctrl-0 = <&vibrator_en_defa 80 pinctrl-0 = <&vibrator_en_default_state>; 81 pinctrl-names = "default"; 81 pinctrl-names = "default"; 82 }; 82 }; 83 }; 83 }; 84 84 85 &adsp { 85 &adsp { 86 status = "okay"; 86 status = "okay"; 87 }; 87 }; 88 88 89 &blsp1_i2c1 { 89 &blsp1_i2c1 { 90 status = "okay"; 90 status = "okay"; 91 91 92 fuel-gauge@55 { 92 fuel-gauge@55 { 93 compatible = "ti,bq27421"; 93 compatible = "ti,bq27421"; 94 reg = <0x55>; 94 reg = <0x55>; 95 }; 95 }; 96 }; 96 }; 97 97 98 &blsp1_i2c5 { 98 &blsp1_i2c5 { 99 status = "okay"; 99 status = "okay"; 100 clock-frequency = <384000>; 100 clock-frequency = <384000>; 101 101 102 touchscreen@20 { 102 touchscreen@20 { 103 compatible = "syna,rmi4-i2c"; 103 compatible = "syna,rmi4-i2c"; 104 reg = <0x20>; 104 reg = <0x20>; 105 105 106 interrupts-extended = <&tlmm 1 106 interrupts-extended = <&tlmm 17 IRQ_TYPE_EDGE_FALLING>; 107 vdd-supply = <&pm8226_l15>; 107 vdd-supply = <&pm8226_l15>; 108 vio-supply = <&pm8226_l22>; 108 vio-supply = <&pm8226_l22>; 109 109 110 pinctrl-names = "default"; 110 pinctrl-names = "default"; 111 pinctrl-0 = <&touch_pins>; 111 pinctrl-0 = <&touch_pins>; 112 112 113 #address-cells = <1>; 113 #address-cells = <1>; 114 #size-cells = <0>; 114 #size-cells = <0>; 115 115 116 rmi4-f01@1 { 116 rmi4-f01@1 { 117 reg = <0x1>; 117 reg = <0x1>; 118 syna,nosleep-mode = <1 118 syna,nosleep-mode = <1>; 119 }; 119 }; 120 120 121 rmi4-f12@12 { 121 rmi4-f12@12 { 122 reg = <0x12>; 122 reg = <0x12>; 123 syna,sensor-type = <1> 123 syna,sensor-type = <1>; 124 }; 124 }; 125 }; 125 }; 126 }; 126 }; 127 127 128 &blsp1_uart3 { 128 &blsp1_uart3 { 129 status = "okay"; 129 status = "okay"; 130 }; 130 }; 131 131 132 &blsp1_uart4 { 132 &blsp1_uart4 { 133 status = "okay"; 133 status = "okay"; 134 134 135 pinctrl-names = "default"; 135 pinctrl-names = "default"; 136 pinctrl-0 = <&blsp1_uart4_default_stat 136 pinctrl-0 = <&blsp1_uart4_default_state>; 137 137 138 bluetooth { 138 bluetooth { 139 compatible = "brcm,bcm43430a0- 139 compatible = "brcm,bcm43430a0-bt"; 140 140 141 max-speed = <3000000>; 141 max-speed = <3000000>; 142 142 143 pinctrl-names = "default"; 143 pinctrl-names = "default"; 144 pinctrl-0 = <&bluetooth_defaul 144 pinctrl-0 = <&bluetooth_default_state>; 145 145 146 host-wakeup-gpios = <&tlmm 48 146 host-wakeup-gpios = <&tlmm 48 GPIO_ACTIVE_HIGH>; 147 device-wakeup-gpios = <&tlmm 4 147 device-wakeup-gpios = <&tlmm 47 GPIO_ACTIVE_HIGH>; 148 shutdown-gpios = <&tlmm 45 GPI 148 shutdown-gpios = <&tlmm 45 GPIO_ACTIVE_HIGH>; 149 }; 149 }; 150 }; 150 }; 151 151 152 &rpm_requests { 152 &rpm_requests { 153 regulators { 153 regulators { 154 compatible = "qcom,rpm-pm8226- 154 compatible = "qcom,rpm-pm8226-regulators"; 155 155 156 pm8226_s3: s3 { 156 pm8226_s3: s3 { 157 regulator-min-microvol 157 regulator-min-microvolt = <1200000>; 158 regulator-max-microvol 158 regulator-max-microvolt = <1350000>; 159 }; 159 }; 160 pm8226_s4: s4 { 160 pm8226_s4: s4 { 161 regulator-min-microvol 161 regulator-min-microvolt = <1800000>; 162 regulator-max-microvol 162 regulator-max-microvolt = <2200000>; 163 }; 163 }; 164 pm8226_s5: s5 { 164 pm8226_s5: s5 { 165 regulator-min-microvol 165 regulator-min-microvolt = <1150000>; 166 regulator-max-microvol 166 regulator-max-microvolt = <1150000>; 167 }; 167 }; 168 168 169 pm8226_l1: l1 { 169 pm8226_l1: l1 { 170 regulator-min-microvol 170 regulator-min-microvolt = <1225000>; 171 regulator-max-microvol 171 regulator-max-microvolt = <1225000>; 172 }; 172 }; 173 pm8226_l2: l2 { 173 pm8226_l2: l2 { 174 regulator-min-microvol 174 regulator-min-microvolt = <1200000>; 175 regulator-max-microvol 175 regulator-max-microvolt = <1200000>; 176 }; 176 }; 177 pm8226_l3: l3 { 177 pm8226_l3: l3 { 178 regulator-min-microvol 178 regulator-min-microvolt = <750000>; 179 regulator-max-microvol 179 regulator-max-microvolt = <1337500>; 180 }; 180 }; 181 pm8226_l4: l4 { 181 pm8226_l4: l4 { 182 regulator-min-microvol 182 regulator-min-microvolt = <1200000>; 183 regulator-max-microvol 183 regulator-max-microvolt = <1200000>; 184 }; 184 }; 185 pm8226_l5: l5 { 185 pm8226_l5: l5 { 186 regulator-min-microvol 186 regulator-min-microvolt = <1200000>; 187 regulator-max-microvol 187 regulator-max-microvolt = <1200000>; 188 }; 188 }; 189 pm8226_l6: l6 { 189 pm8226_l6: l6 { 190 regulator-min-microvol 190 regulator-min-microvolt = <1800000>; 191 regulator-max-microvol 191 regulator-max-microvolt = <1800000>; 192 }; 192 }; 193 pm8226_l7: l7 { 193 pm8226_l7: l7 { 194 regulator-min-microvol 194 regulator-min-microvolt = <1850000>; 195 regulator-max-microvol 195 regulator-max-microvolt = <1850000>; 196 }; 196 }; 197 pm8226_l8: l8 { 197 pm8226_l8: l8 { 198 regulator-min-microvol 198 regulator-min-microvolt = <1800000>; 199 regulator-max-microvol 199 regulator-max-microvolt = <1800000>; 200 }; 200 }; 201 pm8226_l9: l9 { 201 pm8226_l9: l9 { 202 regulator-min-microvol 202 regulator-min-microvolt = <2050000>; 203 regulator-max-microvol 203 regulator-max-microvolt = <2050000>; 204 }; 204 }; 205 pm8226_l10: l10 { 205 pm8226_l10: l10 { 206 regulator-min-microvol 206 regulator-min-microvolt = <1800000>; 207 regulator-max-microvol 207 regulator-max-microvolt = <1800000>; 208 }; 208 }; 209 pm8226_l12: l12 { 209 pm8226_l12: l12 { 210 regulator-min-microvol 210 regulator-min-microvolt = <1800000>; 211 regulator-max-microvol 211 regulator-max-microvolt = <1800000>; 212 }; 212 }; 213 pm8226_l14: l14 { 213 pm8226_l14: l14 { 214 regulator-min-microvol 214 regulator-min-microvolt = <2750000>; 215 regulator-max-microvol 215 regulator-max-microvolt = <2750000>; 216 }; 216 }; 217 pm8226_l15: l15 { 217 pm8226_l15: l15 { 218 regulator-min-microvol 218 regulator-min-microvolt = <3300000>; 219 regulator-max-microvol 219 regulator-max-microvolt = <3300000>; 220 }; 220 }; 221 pm8226_l16: l16 { 221 pm8226_l16: l16 { 222 regulator-min-microvol 222 regulator-min-microvolt = <3000000>; 223 regulator-max-microvol 223 regulator-max-microvolt = <3350000>; 224 }; 224 }; 225 pm8226_l17: l17 { 225 pm8226_l17: l17 { 226 regulator-min-microvol 226 regulator-min-microvolt = <2950000>; 227 regulator-max-microvol 227 regulator-max-microvolt = <2950000>; 228 }; 228 }; 229 pm8226_l18: l18 { 229 pm8226_l18: l18 { 230 regulator-min-microvol 230 regulator-min-microvolt = <3000000>; 231 regulator-max-microvol 231 regulator-max-microvolt = <3300000>; 232 }; 232 }; 233 pm8226_l19: l19 { 233 pm8226_l19: l19 { 234 regulator-min-microvol 234 regulator-min-microvolt = <3000000>; 235 regulator-max-microvol 235 regulator-max-microvolt = <3000000>; 236 }; 236 }; 237 pm8226_l20: l20 { 237 pm8226_l20: l20 { 238 regulator-min-microvol 238 regulator-min-microvolt = <3075000>; 239 regulator-max-microvol 239 regulator-max-microvolt = <3075000>; 240 }; 240 }; 241 pm8226_l21: l21 { 241 pm8226_l21: l21 { 242 regulator-min-microvol 242 regulator-min-microvolt = <1800000>; 243 regulator-max-microvol 243 regulator-max-microvolt = <2950000>; 244 }; 244 }; 245 pm8226_l22: l22 { 245 pm8226_l22: l22 { 246 regulator-min-microvol 246 regulator-min-microvolt = <1800000>; 247 regulator-max-microvol 247 regulator-max-microvolt = <1800000>; 248 }; 248 }; 249 pm8226_l23: l23 { 249 pm8226_l23: l23 { 250 regulator-min-microvol 250 regulator-min-microvolt = <1800000>; 251 regulator-max-microvol 251 regulator-max-microvolt = <2950000>; 252 }; 252 }; 253 pm8226_l24: l24 { 253 pm8226_l24: l24 { 254 regulator-min-microvol 254 regulator-min-microvolt = <1300000>; 255 regulator-max-microvol 255 regulator-max-microvolt = <1350000>; 256 }; 256 }; 257 pm8226_l25: l25 { 257 pm8226_l25: l25 { 258 regulator-min-microvol 258 regulator-min-microvolt = <1775000>; 259 regulator-max-microvol 259 regulator-max-microvolt = <2125000>; 260 }; 260 }; 261 pm8226_l26: l26 { 261 pm8226_l26: l26 { 262 regulator-min-microvol 262 regulator-min-microvolt = <1225000>; 263 regulator-max-microvol 263 regulator-max-microvolt = <1225000>; 264 }; 264 }; 265 pm8226_l27: l27 { 265 pm8226_l27: l27 { 266 regulator-min-microvol 266 regulator-min-microvolt = <2050000>; 267 regulator-max-microvol 267 regulator-max-microvolt = <2050000>; 268 }; 268 }; 269 pm8226_l28: l28 { 269 pm8226_l28: l28 { 270 regulator-min-microvol 270 regulator-min-microvolt = <2700000>; 271 regulator-max-microvol 271 regulator-max-microvolt = <3000000>; 272 }; 272 }; 273 273 274 pm8226_lvs1: lvs1 {}; 274 pm8226_lvs1: lvs1 {}; 275 }; 275 }; 276 }; 276 }; 277 277 278 &sdhc_1 { 278 &sdhc_1 { 279 status = "okay"; 279 status = "okay"; 280 280 281 vmmc-supply = <&pm8226_l17>; 281 vmmc-supply = <&pm8226_l17>; 282 vqmmc-supply = <&pm8226_l6>; 282 vqmmc-supply = <&pm8226_l6>; 283 283 284 bus-width = <8>; 284 bus-width = <8>; 285 non-removable; 285 non-removable; 286 }; 286 }; 287 287 288 &sdhc_3 { 288 &sdhc_3 { 289 status = "okay"; 289 status = "okay"; 290 290 291 max-frequency = <100000000>; 291 max-frequency = <100000000>; 292 non-removable; 292 non-removable; 293 293 294 vmmc-supply = <&vreg_wlan>; 294 vmmc-supply = <&vreg_wlan>; 295 vqmmc-supply = <&pm8226_l6>; 295 vqmmc-supply = <&pm8226_l6>; 296 296 297 #address-cells = <1>; 297 #address-cells = <1>; 298 #size-cells = <0>; 298 #size-cells = <0>; 299 299 300 wifi@1 { 300 wifi@1 { 301 compatible = "brcm,bcm43430a0- 301 compatible = "brcm,bcm43430a0-fmac", "brcm,bcm4329-fmac"; 302 reg = <1>; 302 reg = <1>; 303 303 304 interrupts-extended = <&tlmm 3 304 interrupts-extended = <&tlmm 37 IRQ_TYPE_EDGE_FALLING>; 305 interrupt-names = "host-wake"; 305 interrupt-names = "host-wake"; 306 306 307 pinctrl-names = "default"; 307 pinctrl-names = "default"; 308 pinctrl-0 = <&wlan_hostwake_de 308 pinctrl-0 = <&wlan_hostwake_default_state>; 309 }; 309 }; 310 }; 310 }; 311 311 312 &smbb { 312 &smbb { 313 qcom,fast-charge-safe-current = <45000 313 qcom,fast-charge-safe-current = <450000>; 314 qcom,fast-charge-current-limit = <4000 314 qcom,fast-charge-current-limit = <400000>; 315 qcom,fast-charge-safe-voltage = <43500 315 qcom,fast-charge-safe-voltage = <4350000>; 316 qcom,fast-charge-high-threshold-voltag 316 qcom,fast-charge-high-threshold-voltage = <4350000>; 317 qcom,auto-recharge-threshold-voltage = 317 qcom,auto-recharge-threshold-voltage = <4240000>; 318 qcom,minimum-input-voltage = <4450000> 318 qcom,minimum-input-voltage = <4450000>; 319 319 320 status = "okay"; 320 status = "okay"; 321 }; 321 }; 322 322 323 &tlmm { 323 &tlmm { 324 blsp1_uart4_default_state: blsp1-uart4 324 blsp1_uart4_default_state: blsp1-uart4-default-state { 325 pins = "gpio12", "gpio13", "gp 325 pins = "gpio12", "gpio13", "gpio14", "gpio15"; 326 function = "blsp_uart4"; 326 function = "blsp_uart4"; 327 drive-strength = <8>; 327 drive-strength = <8>; 328 bias-disable; 328 bias-disable; 329 }; 329 }; 330 330 331 bluetooth_default_state: bluetooth-def 331 bluetooth_default_state: bluetooth-default-state { 332 pins = "gpio47", "gpio48"; 332 pins = "gpio47", "gpio48"; 333 function = "gpio"; 333 function = "gpio"; 334 drive-strength = <2>; 334 drive-strength = <2>; 335 bias-disable; 335 bias-disable; 336 }; 336 }; 337 337 338 touch_pins: touch-state { 338 touch_pins: touch-state { 339 irq-pins { 339 irq-pins { 340 pins = "gpio17"; 340 pins = "gpio17"; 341 function = "gpio"; 341 function = "gpio"; 342 342 343 drive-strength = <8>; 343 drive-strength = <8>; 344 bias-pull-down; 344 bias-pull-down; 345 }; 345 }; 346 346 347 reset-pins { 347 reset-pins { 348 pins = "gpio16"; 348 pins = "gpio16"; 349 function = "gpio"; 349 function = "gpio"; 350 350 351 drive-strength = <8>; 351 drive-strength = <8>; 352 bias-disable; 352 bias-disable; 353 output-high; 353 output-high; 354 }; 354 }; 355 }; 355 }; 356 356 357 vibrator_clk_default_state: vibrator-c 357 vibrator_clk_default_state: vibrator-clk-default-state { 358 pins = "gpio33"; 358 pins = "gpio33"; 359 function = "gp0_clk"; 359 function = "gp0_clk"; 360 drive-strength = <2>; 360 drive-strength = <2>; 361 bias-disable; 361 bias-disable; 362 }; 362 }; 363 363 364 vibrator_en_default_state: vibrator-en 364 vibrator_en_default_state: vibrator-en-default-state { 365 pins = "gpio62"; 365 pins = "gpio62"; 366 function = "gpio"; 366 function = "gpio"; 367 drive-strength = <2>; 367 drive-strength = <2>; 368 bias-disable; 368 bias-disable; 369 }; 369 }; 370 370 371 wlan_hostwake_default_state: wlan-host 371 wlan_hostwake_default_state: wlan-hostwake-default-state { 372 pins = "gpio37"; 372 pins = "gpio37"; 373 function = "gpio"; 373 function = "gpio"; 374 drive-strength = <2>; 374 drive-strength = <2>; 375 bias-disable; 375 bias-disable; 376 }; 376 }; 377 377 378 wlan_regulator_default_state: wlan-reg 378 wlan_regulator_default_state: wlan-regulator-default-state { 379 pins = "gpio46"; 379 pins = "gpio46"; 380 function = "gpio"; 380 function = "gpio"; 381 drive-strength = <2>; 381 drive-strength = <2>; 382 bias-pull-up; 382 bias-pull-up; 383 }; 383 }; 384 }; 384 }; 385 385 386 &usb { 386 &usb { 387 status = "okay"; 387 status = "okay"; 388 extcon = <&smbb>; 388 extcon = <&smbb>; 389 dr_mode = "peripheral"; 389 dr_mode = "peripheral"; 390 }; 390 }; 391 391 392 &usb_hs_phy { 392 &usb_hs_phy { 393 extcon = <&smbb>; 393 extcon = <&smbb>; 394 v1p8-supply = <&pm8226_l10>; 394 v1p8-supply = <&pm8226_l10>; 395 v3p3-supply = <&pm8226_l20>; 395 v3p3-supply = <&pm8226_l20>; 396 }; 396 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.