1 // SPDX-License-Identifier: GPL-2.0 1 // SPDX-License-Identifier: GPL-2.0 2 #include "qcom-msm8974pro.dtsi" 2 #include "qcom-msm8974pro.dtsi" 3 #include "pma8084.dtsi" 3 #include "pma8084.dtsi" 4 #include <dt-bindings/input/input.h> 4 #include <dt-bindings/input/input.h> 5 #include <dt-bindings/pinctrl/qcom,pmic-gpio.h 5 #include <dt-bindings/pinctrl/qcom,pmic-gpio.h> 6 #include <dt-bindings/leds/common.h> 6 #include <dt-bindings/leds/common.h> 7 7 8 / { 8 / { 9 chassis-type = "handset"; 9 chassis-type = "handset"; 10 10 11 aliases { 11 aliases { 12 serial0 = &blsp1_uart1; 12 serial0 = &blsp1_uart1; 13 mmc0 = &sdhc_1; /* SDC1 eMMC s 13 mmc0 = &sdhc_1; /* SDC1 eMMC slot */ 14 mmc1 = &sdhc_3; /* SDC2 SD car 14 mmc1 = &sdhc_3; /* SDC2 SD card slot */ 15 }; 15 }; 16 16 17 chosen { 17 chosen { 18 stdout-path = "serial0:115200n 18 stdout-path = "serial0:115200n8"; 19 }; 19 }; 20 20 21 gpio-keys { 21 gpio-keys { 22 compatible = "gpio-keys"; 22 compatible = "gpio-keys"; 23 23 24 pinctrl-names = "default"; 24 pinctrl-names = "default"; 25 pinctrl-0 = <&gpio_keys_pin_a> 25 pinctrl-0 = <&gpio_keys_pin_a>; 26 26 27 key-volume-down { 27 key-volume-down { 28 label = "volume_down"; 28 label = "volume_down"; 29 gpios = <&pma8084_gpio 29 gpios = <&pma8084_gpios 2 GPIO_ACTIVE_LOW>; 30 linux,input-type = <1> 30 linux,input-type = <1>; 31 linux,code = <KEY_VOLU 31 linux,code = <KEY_VOLUMEDOWN>; 32 debounce-interval = <1 32 debounce-interval = <15>; 33 }; 33 }; 34 34 35 key-home { 35 key-home { 36 label = "home_key"; 36 label = "home_key"; 37 gpios = <&pma8084_gpio 37 gpios = <&pma8084_gpios 3 GPIO_ACTIVE_LOW>; 38 linux,input-type = <1> 38 linux,input-type = <1>; 39 linux,code = <KEY_HOME 39 linux,code = <KEY_HOMEPAGE>; 40 wakeup-source; 40 wakeup-source; 41 debounce-interval = <1 41 debounce-interval = <15>; 42 }; 42 }; 43 43 44 key-volume-up { 44 key-volume-up { 45 label = "volume_up"; 45 label = "volume_up"; 46 gpios = <&pma8084_gpio 46 gpios = <&pma8084_gpios 5 GPIO_ACTIVE_LOW>; 47 linux,input-type = <1> 47 linux,input-type = <1>; 48 linux,code = <KEY_VOLU 48 linux,code = <KEY_VOLUMEUP>; 49 debounce-interval = <1 49 debounce-interval = <15>; 50 }; 50 }; 51 }; 51 }; 52 52 53 i2c-gpio-touchkey { 53 i2c-gpio-touchkey { 54 compatible = "i2c-gpio"; 54 compatible = "i2c-gpio"; 55 #address-cells = <1>; 55 #address-cells = <1>; 56 #size-cells = <0>; 56 #size-cells = <0>; 57 sda-gpios = <&tlmm 95 (GPIO_AC 57 sda-gpios = <&tlmm 95 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 58 scl-gpios = <&tlmm 96 (GPIO_AC 58 scl-gpios = <&tlmm 96 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 59 pinctrl-names = "default"; 59 pinctrl-names = "default"; 60 pinctrl-0 = <&i2c_touchkey_pin 60 pinctrl-0 = <&i2c_touchkey_pins>; 61 61 62 touchkey@20 { 62 touchkey@20 { 63 compatible = "cypress, 63 compatible = "cypress,tm2-touchkey"; 64 reg = <0x20>; 64 reg = <0x20>; 65 65 66 interrupt-parent = <&p 66 interrupt-parent = <&pma8084_gpios>; 67 interrupts = <6 IRQ_TY 67 interrupts = <6 IRQ_TYPE_EDGE_FALLING>; 68 pinctrl-names = "defau 68 pinctrl-names = "default"; 69 pinctrl-0 = <&touchkey 69 pinctrl-0 = <&touchkey_pin>; 70 70 71 vcc-supply = <&max7782 71 vcc-supply = <&max77826_ldo15>; 72 vdd-supply = <&pma8084 72 vdd-supply = <&pma8084_l19>; 73 73 74 linux,keycodes = <KEY_ 74 linux,keycodes = <KEY_APPSELECT KEY_BACK>; 75 }; 75 }; 76 }; 76 }; 77 77 78 i2c_led_gpio: i2c-gpio-led { 78 i2c_led_gpio: i2c-gpio-led { 79 compatible = "i2c-gpio"; 79 compatible = "i2c-gpio"; 80 #address-cells = <1>; 80 #address-cells = <1>; 81 #size-cells = <0>; 81 #size-cells = <0>; 82 pinctrl-names = "default"; 82 pinctrl-names = "default"; 83 pinctrl-0 = <&i2c_led_gpioex_p 83 pinctrl-0 = <&i2c_led_gpioex_pins>; 84 84 85 i2c-gpio,delay-us = <2>; 85 i2c-gpio,delay-us = <2>; 86 86 87 gpio_expander: gpio@20 { 87 gpio_expander: gpio@20 { 88 compatible = "nxp,pcal 88 compatible = "nxp,pcal6416"; 89 reg = <0x20>; 89 reg = <0x20>; 90 90 91 gpio-controller; 91 gpio-controller; 92 #gpio-cells = <2>; 92 #gpio-cells = <2>; 93 93 94 vcc-supply = <&pma8084 94 vcc-supply = <&pma8084_s4>; 95 95 96 pinctrl-names = "defau 96 pinctrl-names = "default"; 97 pinctrl-0 = <&gpioex_p 97 pinctrl-0 = <&gpioex_pin>; 98 98 99 reset-gpios = <&tlmm 1 99 reset-gpios = <&tlmm 145 GPIO_ACTIVE_LOW>; 100 }; 100 }; 101 101 102 led-controller@30 { 102 led-controller@30 { 103 compatible = "panasoni 103 compatible = "panasonic,an30259a"; 104 reg = <0x30>; 104 reg = <0x30>; 105 105 106 #address-cells = <1>; 106 #address-cells = <1>; 107 #size-cells = <0>; 107 #size-cells = <0>; 108 108 109 led@1 { 109 led@1 { 110 reg = <1>; 110 reg = <1>; 111 function = LED 111 function = LED_FUNCTION_STATUS; 112 color = <LED_C 112 color = <LED_COLOR_ID_RED>; 113 }; 113 }; 114 114 115 led@2 { 115 led@2 { 116 reg = <2>; 116 reg = <2>; 117 function = LED 117 function = LED_FUNCTION_STATUS; 118 color = <LED_C 118 color = <LED_COLOR_ID_GREEN>; 119 }; 119 }; 120 120 121 led@3 { 121 led@3 { 122 reg = <3>; 122 reg = <3>; 123 function = LED 123 function = LED_FUNCTION_STATUS; 124 color = <LED_C 124 color = <LED_COLOR_ID_BLUE>; 125 }; 125 }; 126 }; 126 }; 127 }; 127 }; 128 128 129 vreg_wlan: wlan-regulator { 129 vreg_wlan: wlan-regulator { 130 compatible = "regulator-fixed" 130 compatible = "regulator-fixed"; 131 131 132 regulator-name = "wl-reg"; 132 regulator-name = "wl-reg"; 133 regulator-min-microvolt = <330 133 regulator-min-microvolt = <3300000>; 134 regulator-max-microvolt = <330 134 regulator-max-microvolt = <3300000>; 135 135 136 gpio = <&gpio_expander 8 GPIO_ 136 gpio = <&gpio_expander 8 GPIO_ACTIVE_HIGH>; 137 enable-active-high; 137 enable-active-high; 138 }; 138 }; 139 139 140 vreg_panel: panel-regulator { 140 vreg_panel: panel-regulator { 141 compatible = "regulator-fixed" 141 compatible = "regulator-fixed"; 142 142 143 pinctrl-names = "default"; 143 pinctrl-names = "default"; 144 pinctrl-0 = <&panel_en_pin>; 144 pinctrl-0 = <&panel_en_pin>; 145 145 146 regulator-name = "panel-vddr-r 146 regulator-name = "panel-vddr-reg"; 147 regulator-min-microvolt = <150 147 regulator-min-microvolt = <1500000>; 148 regulator-max-microvolt = <150 148 regulator-max-microvolt = <1500000>; 149 149 150 gpio = <&pma8084_gpios 14 GPIO 150 gpio = <&pma8084_gpios 14 GPIO_ACTIVE_HIGH>; 151 enable-active-high; 151 enable-active-high; 152 }; 152 }; 153 153 154 vreg_vph_pwr: vreg-vph-pwr { 154 vreg_vph_pwr: vreg-vph-pwr { 155 compatible = "regulator-fixed" 155 compatible = "regulator-fixed"; 156 regulator-name = "vph-pwr"; 156 regulator-name = "vph-pwr"; 157 157 158 regulator-min-microvolt = <360 158 regulator-min-microvolt = <3600000>; 159 regulator-max-microvolt = <360 159 regulator-max-microvolt = <3600000>; 160 160 161 regulator-always-on; 161 regulator-always-on; 162 }; 162 }; 163 }; 163 }; 164 164 165 &blsp1_i2c2 { 165 &blsp1_i2c2 { 166 status = "okay"; 166 status = "okay"; 167 167 168 touchscreen@20 { 168 touchscreen@20 { 169 compatible = "syna,rmi4-i2c"; 169 compatible = "syna,rmi4-i2c"; 170 reg = <0x20>; 170 reg = <0x20>; 171 171 172 interrupt-parent = <&pma8084_g 172 interrupt-parent = <&pma8084_gpios>; 173 interrupts = <8 IRQ_TYPE_EDGE_ 173 interrupts = <8 IRQ_TYPE_EDGE_FALLING>; 174 174 175 vdd-supply = <&max77826_ldo13> 175 vdd-supply = <&max77826_ldo13>; 176 vio-supply = <&pma8084_lvs2>; 176 vio-supply = <&pma8084_lvs2>; 177 177 178 pinctrl-names = "default"; 178 pinctrl-names = "default"; 179 pinctrl-0 = <&touch_pin>; 179 pinctrl-0 = <&touch_pin>; 180 180 181 syna,startup-delay-ms = <100>; 181 syna,startup-delay-ms = <100>; 182 182 183 #address-cells = <1>; 183 #address-cells = <1>; 184 #size-cells = <0>; 184 #size-cells = <0>; 185 185 186 rmi4-f01@1 { 186 rmi4-f01@1 { 187 reg = <0x1>; 187 reg = <0x1>; 188 syna,nosleep-mode = <1 188 syna,nosleep-mode = <1>; 189 }; 189 }; 190 190 191 rmi4-f12@12 { 191 rmi4-f12@12 { 192 reg = <0x12>; 192 reg = <0x12>; 193 syna,sensor-type = <1> 193 syna,sensor-type = <1>; 194 }; 194 }; 195 }; 195 }; 196 }; 196 }; 197 197 198 &blsp1_i2c6 { 198 &blsp1_i2c6 { 199 status = "okay"; 199 status = "okay"; 200 200 201 pmic@60 { 201 pmic@60 { 202 reg = <0x60>; 202 reg = <0x60>; 203 compatible = "maxim,max77826"; 203 compatible = "maxim,max77826"; 204 204 205 regulators { 205 regulators { 206 max77826_ldo1: LDO1 { 206 max77826_ldo1: LDO1 { 207 regulator-min- 207 regulator-min-microvolt = <1200000>; 208 regulator-max- 208 regulator-max-microvolt = <1200000>; 209 }; 209 }; 210 210 211 max77826_ldo2: LDO2 { 211 max77826_ldo2: LDO2 { 212 regulator-min- 212 regulator-min-microvolt = <1000000>; 213 regulator-max- 213 regulator-max-microvolt = <1000000>; 214 }; 214 }; 215 215 216 max77826_ldo3: LDO3 { 216 max77826_ldo3: LDO3 { 217 regulator-min- 217 regulator-min-microvolt = <1200000>; 218 regulator-max- 218 regulator-max-microvolt = <1200000>; 219 }; 219 }; 220 220 221 max77826_ldo4: LDO4 { 221 max77826_ldo4: LDO4 { 222 regulator-min- 222 regulator-min-microvolt = <1800000>; 223 regulator-max- 223 regulator-max-microvolt = <1800000>; 224 }; 224 }; 225 225 226 max77826_ldo5: LDO5 { 226 max77826_ldo5: LDO5 { 227 regulator-min- 227 regulator-min-microvolt = <1800000>; 228 regulator-max- 228 regulator-max-microvolt = <1800000>; 229 }; 229 }; 230 230 231 max77826_ldo6: LDO6 { 231 max77826_ldo6: LDO6 { 232 regulator-min- 232 regulator-min-microvolt = <1800000>; 233 regulator-max- 233 regulator-max-microvolt = <3300000>; 234 }; 234 }; 235 235 236 max77826_ldo7: LDO7 { 236 max77826_ldo7: LDO7 { 237 regulator-min- 237 regulator-min-microvolt = <1800000>; 238 regulator-max- 238 regulator-max-microvolt = <1800000>; 239 }; 239 }; 240 240 241 max77826_ldo8: LDO8 { 241 max77826_ldo8: LDO8 { 242 regulator-min- 242 regulator-min-microvolt = <1800000>; 243 regulator-max- 243 regulator-max-microvolt = <3300000>; 244 }; 244 }; 245 245 246 max77826_ldo9: LDO9 { 246 max77826_ldo9: LDO9 { 247 regulator-min- 247 regulator-min-microvolt = <1800000>; 248 regulator-max- 248 regulator-max-microvolt = <1800000>; 249 }; 249 }; 250 250 251 max77826_ldo10: LDO10 251 max77826_ldo10: LDO10 { 252 regulator-min- 252 regulator-min-microvolt = <2800000>; 253 regulator-max- 253 regulator-max-microvolt = <2950000>; 254 }; 254 }; 255 255 256 max77826_ldo11: LDO11 256 max77826_ldo11: LDO11 { 257 regulator-min- 257 regulator-min-microvolt = <2700000>; 258 regulator-max- 258 regulator-max-microvolt = <2950000>; 259 }; 259 }; 260 260 261 max77826_ldo12: LDO12 261 max77826_ldo12: LDO12 { 262 regulator-min- 262 regulator-min-microvolt = <2500000>; 263 regulator-max- 263 regulator-max-microvolt = <3300000>; 264 }; 264 }; 265 265 266 max77826_ldo13: LDO13 266 max77826_ldo13: LDO13 { 267 regulator-min- 267 regulator-min-microvolt = <3300000>; 268 regulator-max- 268 regulator-max-microvolt = <3300000>; 269 }; 269 }; 270 270 271 max77826_ldo14: LDO14 271 max77826_ldo14: LDO14 { 272 regulator-min- 272 regulator-min-microvolt = <3300000>; 273 regulator-max- 273 regulator-max-microvolt = <3300000>; 274 }; 274 }; 275 275 276 max77826_ldo15: LDO15 276 max77826_ldo15: LDO15 { 277 regulator-min- 277 regulator-min-microvolt = <1800000>; 278 regulator-max- 278 regulator-max-microvolt = <1800000>; 279 }; 279 }; 280 280 281 max77826_buck: BUCK { 281 max77826_buck: BUCK { 282 regulator-min- 282 regulator-min-microvolt = <1225000>; 283 regulator-max- 283 regulator-max-microvolt = <1225000>; 284 }; 284 }; 285 285 286 max77826_buckboost: BU 286 max77826_buckboost: BUCKBOOST { 287 regulator-min- 287 regulator-min-microvolt = <3400000>; 288 regulator-max- 288 regulator-max-microvolt = <3400000>; 289 }; 289 }; 290 }; 290 }; 291 }; 291 }; 292 }; 292 }; 293 293 294 &blsp1_uart2 { 294 &blsp1_uart2 { 295 status = "okay"; 295 status = "okay"; 296 }; 296 }; 297 297 298 &blsp2_i2c6 { 298 &blsp2_i2c6 { 299 status = "okay"; 299 status = "okay"; 300 300 301 fuelgauge@36 { 301 fuelgauge@36 { 302 compatible = "maxim,max17048"; 302 compatible = "maxim,max17048"; 303 reg = <0x36>; 303 reg = <0x36>; 304 304 305 maxim,double-soc; 305 maxim,double-soc; 306 maxim,rcomp = /bits/ 8 <0x56>; 306 maxim,rcomp = /bits/ 8 <0x56>; 307 307 308 interrupt-parent = <&pma8084_g 308 interrupt-parent = <&pma8084_gpios>; 309 interrupts = <21 IRQ_TYPE_LEVE 309 interrupts = <21 IRQ_TYPE_LEVEL_LOW>; 310 310 311 pinctrl-names = "default"; 311 pinctrl-names = "default"; 312 pinctrl-0 = <&fuelgauge_pin>; 312 pinctrl-0 = <&fuelgauge_pin>; 313 }; 313 }; 314 }; 314 }; 315 315 316 &blsp2_uart2 { 316 &blsp2_uart2 { 317 status = "okay"; 317 status = "okay"; 318 318 319 pinctrl-names = "default", "sleep"; 319 pinctrl-names = "default", "sleep"; 320 pinctrl-0 = <&blsp2_uart2_pins_active> 320 pinctrl-0 = <&blsp2_uart2_pins_active>; 321 pinctrl-1 = <&blsp2_uart2_pins_sleep>; 321 pinctrl-1 = <&blsp2_uart2_pins_sleep>; 322 322 323 bluetooth { 323 bluetooth { 324 compatible = "brcm,bcm43540-bt 324 compatible = "brcm,bcm43540-bt"; 325 max-speed = <3000000>; 325 max-speed = <3000000>; 326 pinctrl-names = "default"; 326 pinctrl-names = "default"; 327 pinctrl-0 = <&bt_pins>; 327 pinctrl-0 = <&bt_pins>; 328 device-wakeup-gpios = <&tlmm 9 328 device-wakeup-gpios = <&tlmm 91 GPIO_ACTIVE_HIGH>; 329 shutdown-gpios = <&gpio_expand 329 shutdown-gpios = <&gpio_expander 9 GPIO_ACTIVE_HIGH>; 330 interrupt-parent = <&tlmm>; 330 interrupt-parent = <&tlmm>; 331 interrupts = <75 IRQ_TYPE_LEVE 331 interrupts = <75 IRQ_TYPE_LEVEL_HIGH>; 332 interrupt-names = "host-wakeup 332 interrupt-names = "host-wakeup"; 333 }; 333 }; 334 }; 334 }; 335 335 336 &gpu { 336 &gpu { 337 status = "okay"; 337 status = "okay"; 338 }; 338 }; 339 339 340 &mdss { 340 &mdss { 341 status = "okay"; 341 status = "okay"; 342 }; 342 }; 343 343 344 &mdss_dsi0 { 344 &mdss_dsi0 { 345 status = "okay"; 345 status = "okay"; 346 346 347 vdda-supply = <&pma8084_l2>; 347 vdda-supply = <&pma8084_l2>; 348 vdd-supply = <&pma8084_l22>; 348 vdd-supply = <&pma8084_l22>; 349 vddio-supply = <&pma8084_l12>; 349 vddio-supply = <&pma8084_l12>; 350 350 351 panel: panel@0 { 351 panel: panel@0 { 352 reg = <0>; 352 reg = <0>; 353 compatible = "samsung,s6e3fa2" 353 compatible = "samsung,s6e3fa2"; 354 354 355 pinctrl-names = "default"; 355 pinctrl-names = "default"; 356 pinctrl-0 = <&panel_te_pin &pa 356 pinctrl-0 = <&panel_te_pin &panel_rst_pin>; 357 357 358 iovdd-supply = <&pma8084_lvs4> 358 iovdd-supply = <&pma8084_lvs4>; 359 vddr-supply = <&vreg_panel>; 359 vddr-supply = <&vreg_panel>; 360 360 361 reset-gpios = <&pma8084_gpios 361 reset-gpios = <&pma8084_gpios 17 GPIO_ACTIVE_LOW>; 362 362 363 port { 363 port { 364 panel_in: endpoint { 364 panel_in: endpoint { 365 remote-endpoin 365 remote-endpoint = <&mdss_dsi0_out>; 366 }; 366 }; 367 }; 367 }; 368 }; 368 }; 369 }; 369 }; 370 370 371 &mdss_dsi0_out { 371 &mdss_dsi0_out { 372 remote-endpoint = <&panel_in>; 372 remote-endpoint = <&panel_in>; 373 data-lanes = <0 1 2 3>; 373 data-lanes = <0 1 2 3>; 374 }; 374 }; 375 375 376 &mdss_dsi0_phy { 376 &mdss_dsi0_phy { 377 status = "okay"; 377 status = "okay"; 378 378 379 vddio-supply = <&pma8084_l12>; 379 vddio-supply = <&pma8084_l12>; 380 }; 380 }; 381 381 382 &pma8084_gpios { 382 &pma8084_gpios { 383 gpio_keys_pin_a: gpio-keys-active-stat 383 gpio_keys_pin_a: gpio-keys-active-state { 384 pins = "gpio2", "gpio3", "gpio 384 pins = "gpio2", "gpio3", "gpio5"; 385 function = "normal"; 385 function = "normal"; 386 386 387 bias-pull-up; 387 bias-pull-up; 388 power-source = <PMA8084_GPIO_S 388 power-source = <PMA8084_GPIO_S4>; 389 }; 389 }; 390 390 391 touchkey_pin: touchkey-int-state { 391 touchkey_pin: touchkey-int-state { 392 pins = "gpio6"; 392 pins = "gpio6"; 393 function = "normal"; 393 function = "normal"; 394 bias-disable; 394 bias-disable; 395 input-enable; 395 input-enable; 396 power-source = <PMA8084_GPIO_S 396 power-source = <PMA8084_GPIO_S4>; 397 }; 397 }; 398 398 399 touch_pin: touchscreen-int-state { 399 touch_pin: touchscreen-int-state { 400 pins = "gpio8"; 400 pins = "gpio8"; 401 function = "normal"; 401 function = "normal"; 402 bias-disable; 402 bias-disable; 403 input-enable; 403 input-enable; 404 power-source = <PMA8084_GPIO_S 404 power-source = <PMA8084_GPIO_S4>; 405 }; 405 }; 406 406 407 panel_en_pin: panel-en-state { 407 panel_en_pin: panel-en-state { 408 pins = "gpio14"; 408 pins = "gpio14"; 409 function = "normal"; 409 function = "normal"; 410 bias-pull-up; 410 bias-pull-up; 411 power-source = <PMA8084_GPIO_S 411 power-source = <PMA8084_GPIO_S4>; 412 qcom,drive-strength = <PMIC_GP 412 qcom,drive-strength = <PMIC_GPIO_STRENGTH_LOW>; 413 }; 413 }; 414 414 415 wlan_sleep_clk_pin: wlan-sleep-clk-sta 415 wlan_sleep_clk_pin: wlan-sleep-clk-state { 416 pins = "gpio16"; 416 pins = "gpio16"; 417 function = "func2"; 417 function = "func2"; 418 418 419 output-high; 419 output-high; 420 power-source = <PMA8084_GPIO_S 420 power-source = <PMA8084_GPIO_S4>; 421 qcom,drive-strength = <PMIC_GP 421 qcom,drive-strength = <PMIC_GPIO_STRENGTH_HIGH>; 422 }; 422 }; 423 423 424 panel_rst_pin: panel-rst-state { 424 panel_rst_pin: panel-rst-state { 425 pins = "gpio17"; 425 pins = "gpio17"; 426 function = "normal"; 426 function = "normal"; 427 bias-disable; 427 bias-disable; 428 power-source = <PMA8084_GPIO_S 428 power-source = <PMA8084_GPIO_S4>; 429 qcom,drive-strength = <PMIC_GP 429 qcom,drive-strength = <PMIC_GPIO_STRENGTH_LOW>; 430 }; 430 }; 431 431 432 fuelgauge_pin: fuelgauge-int-state { 432 fuelgauge_pin: fuelgauge-int-state { 433 pins = "gpio21"; 433 pins = "gpio21"; 434 function = "normal"; 434 function = "normal"; 435 bias-disable; 435 bias-disable; 436 input-enable; 436 input-enable; 437 power-source = <PMA8084_GPIO_S 437 power-source = <PMA8084_GPIO_S4>; 438 }; 438 }; 439 }; 439 }; 440 440 441 &reserved_memory { << 442 ramoops@3e8e0000 { << 443 compatible = "ramoops"; << 444 reg = <0x3e8e0000 0x200000>; << 445 << 446 console-size = <0x100000>; << 447 record-size = <0x10000>; << 448 ftrace-size = <0x10000>; << 449 pmsg-size = <0x80000>; << 450 ecc-size = <8>; << 451 }; << 452 }; << 453 << 454 &remoteproc_adsp { 441 &remoteproc_adsp { 455 status = "okay"; 442 status = "okay"; 456 cx-supply = <&pma8084_s2>; 443 cx-supply = <&pma8084_s2>; 457 }; 444 }; 458 445 459 &remoteproc_mss { 446 &remoteproc_mss { 460 status = "okay"; 447 status = "okay"; 461 cx-supply = <&pma8084_s2>; 448 cx-supply = <&pma8084_s2>; 462 mss-supply = <&pma8084_s6>; 449 mss-supply = <&pma8084_s6>; 463 mx-supply = <&pma8084_s1>; 450 mx-supply = <&pma8084_s1>; 464 pll-supply = <&pma8084_l12>; 451 pll-supply = <&pma8084_l12>; 465 }; 452 }; 466 453 467 &rpm_requests { 454 &rpm_requests { 468 regulators-0 { 455 regulators-0 { 469 compatible = "qcom,rpm-pma8084 456 compatible = "qcom,rpm-pma8084-regulators"; 470 457 471 pma8084_s1: s1 { 458 pma8084_s1: s1 { 472 regulator-min-microvol 459 regulator-min-microvolt = <675000>; 473 regulator-max-microvol 460 regulator-max-microvolt = <1050000>; 474 regulator-always-on; 461 regulator-always-on; 475 }; 462 }; 476 463 477 pma8084_s2: s2 { 464 pma8084_s2: s2 { 478 regulator-min-microvol 465 regulator-min-microvolt = <500000>; 479 regulator-max-microvol 466 regulator-max-microvolt = <1050000>; 480 }; 467 }; 481 468 482 pma8084_s3: s3 { 469 pma8084_s3: s3 { 483 regulator-min-microvol 470 regulator-min-microvolt = <1300000>; 484 regulator-max-microvol 471 regulator-max-microvolt = <1300000>; 485 }; 472 }; 486 473 487 pma8084_s4: s4 { 474 pma8084_s4: s4 { 488 regulator-min-microvol 475 regulator-min-microvolt = <1800000>; 489 regulator-max-microvol 476 regulator-max-microvolt = <1800000>; 490 }; 477 }; 491 478 492 pma8084_s5: s5 { 479 pma8084_s5: s5 { 493 regulator-min-microvol 480 regulator-min-microvolt = <2150000>; 494 regulator-max-microvol 481 regulator-max-microvolt = <2150000>; 495 }; 482 }; 496 483 497 pma8084_s6: s6 { 484 pma8084_s6: s6 { 498 regulator-min-microvol 485 regulator-min-microvolt = <1050000>; 499 regulator-max-microvol 486 regulator-max-microvolt = <1050000>; 500 }; 487 }; 501 488 502 pma8084_l1: l1 { 489 pma8084_l1: l1 { 503 regulator-min-microvol 490 regulator-min-microvolt = <1225000>; 504 regulator-max-microvol 491 regulator-max-microvolt = <1225000>; 505 }; 492 }; 506 493 507 pma8084_l2: l2 { 494 pma8084_l2: l2 { 508 regulator-min-microvol 495 regulator-min-microvolt = <1200000>; 509 regulator-max-microvol 496 regulator-max-microvolt = <1200000>; 510 }; 497 }; 511 498 512 pma8084_l3: l3 { 499 pma8084_l3: l3 { 513 regulator-min-microvol 500 regulator-min-microvolt = <1050000>; 514 regulator-max-microvol 501 regulator-max-microvolt = <1200000>; 515 }; 502 }; 516 503 517 pma8084_l4: l4 { 504 pma8084_l4: l4 { 518 regulator-min-microvol 505 regulator-min-microvolt = <1200000>; 519 regulator-max-microvol 506 regulator-max-microvolt = <1225000>; 520 }; 507 }; 521 508 522 pma8084_l5: l5 { 509 pma8084_l5: l5 { 523 regulator-min-microvol 510 regulator-min-microvolt = <1800000>; 524 regulator-max-microvol 511 regulator-max-microvolt = <1800000>; 525 }; 512 }; 526 513 527 pma8084_l6: l6 { 514 pma8084_l6: l6 { 528 regulator-min-microvol 515 regulator-min-microvolt = <1800000>; 529 regulator-max-microvol 516 regulator-max-microvolt = <1800000>; 530 }; 517 }; 531 518 532 pma8084_l7: l7 { 519 pma8084_l7: l7 { 533 regulator-min-microvol 520 regulator-min-microvolt = <1800000>; 534 regulator-max-microvol 521 regulator-max-microvolt = <1800000>; 535 }; 522 }; 536 523 537 pma8084_l8: l8 { 524 pma8084_l8: l8 { 538 regulator-min-microvol 525 regulator-min-microvolt = <1800000>; 539 regulator-max-microvol 526 regulator-max-microvolt = <1800000>; 540 }; 527 }; 541 528 542 pma8084_l9: l9 { 529 pma8084_l9: l9 { 543 regulator-min-microvol 530 regulator-min-microvolt = <1800000>; 544 regulator-max-microvol 531 regulator-max-microvolt = <2950000>; 545 }; 532 }; 546 533 547 pma8084_l10: l10 { 534 pma8084_l10: l10 { 548 regulator-min-microvol 535 regulator-min-microvolt = <1800000>; 549 regulator-max-microvol 536 regulator-max-microvolt = <2950000>; 550 }; 537 }; 551 538 552 pma8084_l11: l11 { 539 pma8084_l11: l11 { 553 regulator-min-microvol 540 regulator-min-microvolt = <1300000>; 554 regulator-max-microvol 541 regulator-max-microvolt = <1300000>; 555 }; 542 }; 556 543 557 pma8084_l12: l12 { 544 pma8084_l12: l12 { 558 regulator-min-microvol 545 regulator-min-microvolt = <1800000>; 559 regulator-max-microvol 546 regulator-max-microvolt = <1800000>; 560 regulator-always-on; 547 regulator-always-on; 561 }; 548 }; 562 549 563 pma8084_l13: l13 { 550 pma8084_l13: l13 { 564 regulator-min-microvol 551 regulator-min-microvolt = <1800000>; 565 regulator-max-microvol 552 regulator-max-microvolt = <2950000>; 566 }; 553 }; 567 554 568 pma8084_l14: l14 { 555 pma8084_l14: l14 { 569 regulator-min-microvol 556 regulator-min-microvolt = <1800000>; 570 regulator-max-microvol 557 regulator-max-microvolt = <1800000>; 571 }; 558 }; 572 559 573 pma8084_l15: l15 { 560 pma8084_l15: l15 { 574 regulator-min-microvol 561 regulator-min-microvolt = <2050000>; 575 regulator-max-microvol 562 regulator-max-microvolt = <2050000>; 576 }; 563 }; 577 564 578 pma8084_l16: l16 { 565 pma8084_l16: l16 { 579 regulator-min-microvol 566 regulator-min-microvolt = <2700000>; 580 regulator-max-microvol 567 regulator-max-microvolt = <2700000>; 581 }; 568 }; 582 569 583 pma8084_l17: l17 { 570 pma8084_l17: l17 { 584 regulator-min-microvol 571 regulator-min-microvolt = <2850000>; 585 regulator-max-microvol 572 regulator-max-microvolt = <2850000>; 586 }; 573 }; 587 574 588 pma8084_l18: l18 { 575 pma8084_l18: l18 { 589 regulator-min-microvol 576 regulator-min-microvolt = <2850000>; 590 regulator-max-microvol 577 regulator-max-microvolt = <2850000>; 591 }; 578 }; 592 579 593 pma8084_l19: l19 { 580 pma8084_l19: l19 { 594 regulator-min-microvol 581 regulator-min-microvolt = <3300000>; 595 regulator-max-microvol 582 regulator-max-microvolt = <3300000>; 596 }; 583 }; 597 584 598 pma8084_l20: l20 { 585 pma8084_l20: l20 { 599 regulator-min-microvol 586 regulator-min-microvolt = <2950000>; 600 regulator-max-microvol 587 regulator-max-microvolt = <2950000>; 601 regulator-system-load 588 regulator-system-load = <200000>; 602 regulator-allow-set-lo 589 regulator-allow-set-load; 603 }; 590 }; 604 591 605 pma8084_l21: l21 { 592 pma8084_l21: l21 { 606 regulator-min-microvol 593 regulator-min-microvolt = <2950000>; 607 regulator-max-microvol 594 regulator-max-microvolt = <2950000>; 608 regulator-system-load 595 regulator-system-load = <200000>; 609 regulator-allow-set-lo 596 regulator-allow-set-load; 610 }; 597 }; 611 598 612 pma8084_l22: l22 { 599 pma8084_l22: l22 { 613 regulator-min-microvol 600 regulator-min-microvolt = <3000000>; 614 regulator-max-microvol 601 regulator-max-microvolt = <3300000>; 615 }; 602 }; 616 603 617 pma8084_l23: l23 { 604 pma8084_l23: l23 { 618 regulator-min-microvol 605 regulator-min-microvolt = <3000000>; 619 regulator-max-microvol 606 regulator-max-microvolt = <3000000>; 620 }; 607 }; 621 608 622 pma8084_l24: l24 { 609 pma8084_l24: l24 { 623 regulator-min-microvol 610 regulator-min-microvolt = <3075000>; 624 regulator-max-microvol 611 regulator-max-microvolt = <3075000>; 625 }; 612 }; 626 613 627 pma8084_l25: l25 { 614 pma8084_l25: l25 { 628 regulator-min-microvol 615 regulator-min-microvolt = <2100000>; 629 regulator-max-microvol 616 regulator-max-microvolt = <2100000>; 630 }; 617 }; 631 618 632 pma8084_l26: l26 { 619 pma8084_l26: l26 { 633 regulator-min-microvol 620 regulator-min-microvolt = <1800000>; 634 regulator-max-microvol 621 regulator-max-microvolt = <2050000>; 635 }; 622 }; 636 623 637 pma8084_l27: l27 { 624 pma8084_l27: l27 { 638 regulator-min-microvol 625 regulator-min-microvolt = <1000000>; 639 regulator-max-microvol 626 regulator-max-microvolt = <1225000>; 640 }; 627 }; 641 628 642 pma8084_lvs1: lvs1 {}; 629 pma8084_lvs1: lvs1 {}; 643 pma8084_lvs2: lvs2 {}; 630 pma8084_lvs2: lvs2 {}; 644 pma8084_lvs3: lvs3 {}; 631 pma8084_lvs3: lvs3 {}; 645 pma8084_lvs4: lvs4 {}; 632 pma8084_lvs4: lvs4 {}; 646 633 647 pma8084_5vs1: 5vs1 {}; 634 pma8084_5vs1: 5vs1 {}; 648 }; 635 }; 649 }; 636 }; 650 637 651 &sdhc_1 { 638 &sdhc_1 { 652 status = "okay"; 639 status = "okay"; 653 640 654 vmmc-supply = <&pma8084_l20>; 641 vmmc-supply = <&pma8084_l20>; 655 vqmmc-supply = <&pma8084_s4>; 642 vqmmc-supply = <&pma8084_s4>; 656 643 657 pinctrl-names = "default", "sleep"; 644 pinctrl-names = "default", "sleep"; 658 pinctrl-0 = <&sdc1_on>; 645 pinctrl-0 = <&sdc1_on>; 659 pinctrl-1 = <&sdc1_off>; 646 pinctrl-1 = <&sdc1_off>; 660 }; 647 }; 661 648 662 &sdhc_2 { 649 &sdhc_2 { 663 status = "okay"; 650 status = "okay"; 664 max-frequency = <100000000>; 651 max-frequency = <100000000>; 665 vmmc-supply = <&vreg_wlan>; 652 vmmc-supply = <&vreg_wlan>; 666 vqmmc-supply = <&pma8084_s4>; 653 vqmmc-supply = <&pma8084_s4>; 667 non-removable; 654 non-removable; 668 655 669 pinctrl-names = "default", "sleep"; 656 pinctrl-names = "default", "sleep"; 670 pinctrl-0 = <&sdc2_on>; 657 pinctrl-0 = <&sdc2_on>; 671 pinctrl-1 = <&sdc2_off>; 658 pinctrl-1 = <&sdc2_off>; 672 659 673 wifi@1 { 660 wifi@1 { 674 reg = <1>; 661 reg = <1>; 675 compatible = "brcm,bcm4329-fma 662 compatible = "brcm,bcm4329-fmac"; 676 663 677 /* 664 /* 678 * Allow all klte* variants to 665 * Allow all klte* variants to load the same NVRAM file, 679 * as they have little differe 666 * as they have little difference in the WiFi part. 680 */ 667 */ 681 brcm,board-type = "samsung,klt 668 brcm,board-type = "samsung,klte"; 682 669 683 interrupt-parent = <&tlmm>; 670 interrupt-parent = <&tlmm>; 684 interrupts = <92 IRQ_TYPE_LEVE 671 interrupts = <92 IRQ_TYPE_LEVEL_HIGH>; 685 interrupt-names = "host-wake"; 672 interrupt-names = "host-wake"; 686 673 687 pinctrl-names = "default"; 674 pinctrl-names = "default"; 688 pinctrl-0 = <&wlan_sleep_clk_p 675 pinctrl-0 = <&wlan_sleep_clk_pin &wifi_pin>; 689 }; 676 }; 690 }; 677 }; 691 678 692 &sdhc_3 { 679 &sdhc_3 { 693 status = "okay"; 680 status = "okay"; 694 max-frequency = <100000000>; 681 max-frequency = <100000000>; 695 vmmc-supply = <&pma8084_l21>; 682 vmmc-supply = <&pma8084_l21>; 696 vqmmc-supply = <&pma8084_l13>; 683 vqmmc-supply = <&pma8084_l13>; 697 684 698 /* 685 /* 699 * cd-gpio is intentionally disabled. 686 * cd-gpio is intentionally disabled. If enabled, an SD card 700 * present during boot is not initiali 687 * present during boot is not initialized correctly. Without 701 * cd-gpios the driver resorts to poll 688 * cd-gpios the driver resorts to polling, so hotplug works. 702 */ 689 */ 703 pinctrl-names = "default"; 690 pinctrl-names = "default"; 704 pinctrl-0 = <&sdc3_on /* &sdhc3_cd_pin 691 pinctrl-0 = <&sdc3_on /* &sdhc3_cd_pin */>; 705 /* cd-gpios = <&tlmm 62 GPIO_ACTIVE_LO 692 /* cd-gpios = <&tlmm 62 GPIO_ACTIVE_LOW>; */ 706 }; 693 }; 707 694 708 &tlmm { 695 &tlmm { 709 /* This seems suspicious, but somebody 696 /* This seems suspicious, but somebody with this device should look into it. */ 710 blsp2_uart2_pins_active: blsp2-uart2-p 697 blsp2_uart2_pins_active: blsp2-uart2-pins-active-state { 711 pins = "gpio45", "gpio46", "gp 698 pins = "gpio45", "gpio46", "gpio47", "gpio48"; 712 function = "blsp_uart8"; 699 function = "blsp_uart8"; 713 drive-strength = <8>; 700 drive-strength = <8>; 714 bias-disable; 701 bias-disable; 715 }; 702 }; 716 703 717 blsp2_uart2_pins_sleep: blsp2-uart2-pi 704 blsp2_uart2_pins_sleep: blsp2-uart2-pins-sleep-state { 718 pins = "gpio45", "gpio46", "gp 705 pins = "gpio45", "gpio46", "gpio47", "gpio48"; 719 function = "gpio"; 706 function = "gpio"; 720 drive-strength = <2>; 707 drive-strength = <2>; 721 bias-pull-down; 708 bias-pull-down; 722 }; 709 }; 723 710 724 bt_pins: bt-pins-state { 711 bt_pins: bt-pins-state { 725 hostwake-pins { 712 hostwake-pins { 726 pins = "gpio75"; 713 pins = "gpio75"; 727 function = "gpio"; 714 function = "gpio"; 728 drive-strength = <16>; 715 drive-strength = <16>; 729 }; 716 }; 730 717 731 devwake-pins { 718 devwake-pins { 732 pins = "gpio91"; 719 pins = "gpio91"; 733 function = "gpio"; 720 function = "gpio"; 734 drive-strength = <2>; 721 drive-strength = <2>; 735 }; 722 }; 736 }; 723 }; 737 724 738 sdc1_on: sdhc1-on-state { 725 sdc1_on: sdhc1-on-state { 739 clk-pins { 726 clk-pins { 740 pins = "sdc1_clk"; 727 pins = "sdc1_clk"; 741 drive-strength = <4>; 728 drive-strength = <4>; 742 bias-disable; 729 bias-disable; 743 }; 730 }; 744 731 745 cmd-data-pins { 732 cmd-data-pins { 746 pins = "sdc1_cmd", "sd 733 pins = "sdc1_cmd", "sdc1_data"; 747 drive-strength = <4>; 734 drive-strength = <4>; 748 bias-pull-up; 735 bias-pull-up; 749 }; 736 }; 750 }; 737 }; 751 738 752 sdc3_on: sdc3-on-state { 739 sdc3_on: sdc3-on-state { 753 pins = "gpio35", "gpio36", "gp 740 pins = "gpio35", "gpio36", "gpio37", "gpio38", "gpio39", "gpio40"; 754 function = "sdc3"; 741 function = "sdc3"; 755 drive-strength = <8>; 742 drive-strength = <8>; 756 bias-disable; 743 bias-disable; 757 }; 744 }; 758 745 759 sdhc3_cd_pin: sdc3-cd-on-state { 746 sdhc3_cd_pin: sdc3-cd-on-state { 760 pins = "gpio62"; 747 pins = "gpio62"; 761 function = "gpio"; 748 function = "gpio"; 762 749 763 drive-strength = <2>; 750 drive-strength = <2>; 764 bias-disable; 751 bias-disable; 765 }; 752 }; 766 753 767 sdc2_on: sdhc2-on-state { 754 sdc2_on: sdhc2-on-state { 768 clk-pins { 755 clk-pins { 769 pins = "sdc2_clk"; 756 pins = "sdc2_clk"; 770 drive-strength = <6>; 757 drive-strength = <6>; 771 bias-disable; 758 bias-disable; 772 }; 759 }; 773 760 774 cmd-data-pins { 761 cmd-data-pins { 775 pins = "sdc2_cmd", "sd 762 pins = "sdc2_cmd", "sdc2_data"; 776 drive-strength = <6>; 763 drive-strength = <6>; 777 bias-pull-up; 764 bias-pull-up; 778 }; 765 }; 779 }; 766 }; 780 767 781 i2c_touchkey_pins: i2c-touchkey-state 768 i2c_touchkey_pins: i2c-touchkey-state { 782 pins = "gpio95", "gpio96"; 769 pins = "gpio95", "gpio96"; 783 function = "gpio"; 770 function = "gpio"; 784 bias-pull-up; 771 bias-pull-up; 785 }; 772 }; 786 773 787 i2c_led_gpioex_pins: i2c-led-gpioex-st 774 i2c_led_gpioex_pins: i2c-led-gpioex-state { 788 function = "gpio"; 775 function = "gpio"; 789 bias-pull-down; 776 bias-pull-down; 790 }; 777 }; 791 778 792 gpioex_pin: gpioex-state { 779 gpioex_pin: gpioex-state { 793 pins = "gpio145"; 780 pins = "gpio145"; 794 function = "gpio"; 781 function = "gpio"; 795 bias-pull-up; 782 bias-pull-up; 796 drive-strength = <2>; 783 drive-strength = <2>; 797 }; 784 }; 798 785 799 wifi_pin: wifi-state { 786 wifi_pin: wifi-state { 800 pins = "gpio92"; 787 pins = "gpio92"; 801 function = "gpio"; 788 function = "gpio"; 802 bias-pull-down; 789 bias-pull-down; 803 }; 790 }; 804 791 805 panel_te_pin: panel-state { 792 panel_te_pin: panel-state { 806 pins = "gpio12"; 793 pins = "gpio12"; 807 function = "mdp_vsync"; 794 function = "mdp_vsync"; 808 drive-strength = <2>; 795 drive-strength = <2>; 809 bias-disable; 796 bias-disable; 810 }; 797 }; 811 }; 798 }; 812 799 813 &usb { 800 &usb { 814 status = "okay"; 801 status = "okay"; 815 802 816 phys = <&usb_hs1_phy>; 803 phys = <&usb_hs1_phy>; 817 phy-select = <&tcsr 0xb000 0>; 804 phy-select = <&tcsr 0xb000 0>; 818 805 819 hnp-disable; 806 hnp-disable; 820 srp-disable; 807 srp-disable; 821 adp-disable; 808 adp-disable; 822 }; 809 }; 823 810 824 &usb_hs1_phy { 811 &usb_hs1_phy { 825 status = "okay"; 812 status = "okay"; 826 813 827 v1p8-supply = <&pma8084_l6>; 814 v1p8-supply = <&pma8084_l6>; 828 v3p3-supply = <&pma8084_l24>; 815 v3p3-supply = <&pma8084_l24>; 829 816 830 qcom,init-seq = /bits/ 8 <0x1 0x64>; 817 qcom,init-seq = /bits/ 8 <0x1 0x64>; 831 }; 818 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.