forked from Qortal/Brooklyn
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
956 lines
19 KiB
956 lines
19 KiB
// SPDX-License-Identifier: BSD-3-Clause |
|
/* |
|
* Copyright (c) 2021, AngeloGioacchino Del Regno |
|
* <[email protected]> |
|
* Copyright (c) 2021, Konrad Dybcio <[email protected]> |
|
*/ |
|
|
|
#include "msm8996.dtsi" |
|
#include "pm8994.dtsi" |
|
#include "pmi8994.dtsi" |
|
#include <dt-bindings/input/input.h> |
|
#include <dt-bindings/gpio/gpio.h> |
|
#include <dt-bindings/pinctrl/qcom,pmic-gpio.h> |
|
#include <dt-bindings/pinctrl/qcom,pmic-mpp.h> |
|
|
|
/delete-node/ &slpi_region; |
|
/delete-node/ &venus_region; |
|
/delete-node/ &zap_shader_region; |
|
|
|
/ { |
|
qcom,msm-id = <246 0x30001>; /* MSM8996 V3.1 (Final) */ |
|
qcom,pmic-id = <0x20009 0x2000a 0 0>; /* PM8994 + PMI8994 */ |
|
qcom,board-id = <8 0>; |
|
|
|
chosen { |
|
/* |
|
* Due to an unknown-for-a-few-years regression, |
|
* SDHCI only works on MSM8996 in PIO (lame) mode. |
|
*/ |
|
bootargs = "sdhci.debug_quirks=0x40 sdhci.debug_quirks2=0x4 maxcpus=2"; |
|
}; |
|
|
|
reserved-memory { |
|
ramoops@a7f00000 { |
|
compatible = "ramoops"; |
|
reg = <0 0xa7f00000 0 0x100000>; |
|
record-size = <0x20000>; |
|
console-size = <0x40000>; |
|
ftrace-size = <0x20000>; |
|
pmsg-size = <0x20000>; |
|
ecc-size = <16>; |
|
}; |
|
|
|
cont_splash_mem: memory@83401000 { |
|
reg = <0 0x83401000 0 0x23ff000>; |
|
no-map; |
|
}; |
|
|
|
zap_shader_region: gpu@90400000 { |
|
compatible = "shared-dma-pool"; |
|
reg = <0x0 0x90400000 0x0 0x2000>; |
|
no-map; |
|
}; |
|
|
|
slpi_region: memory@90500000 { |
|
reg = <0 0x90500000 0 0xa00000>; |
|
no-map; |
|
}; |
|
|
|
venus_region: memory@90f00000 { |
|
reg = <0 0x90f00000 0 0x500000>; |
|
no-map; |
|
}; |
|
}; |
|
|
|
panel_tvdd: tvdd-regulator { |
|
compatible = "regulator-fixed"; |
|
regulator-name = "panel_tvdd"; |
|
gpio = <&tlmm 50 GPIO_ACTIVE_LOW>; |
|
pinctrl-0 = <&tp_vddio_en>; |
|
pinctrl-names = "default"; |
|
}; |
|
|
|
usb3_id: usb3-id { |
|
compatible = "linux,extcon-usb-gpio"; |
|
id-gpio = <&tlmm 25 GPIO_ACTIVE_LOW>; |
|
pinctrl-names = "default"; |
|
pinctrl-0 = <&usb_detect>; |
|
}; |
|
|
|
vph_pwr: vph-pwr-regulator { |
|
compatible = "regulator-fixed"; |
|
regulator-min-microvolt = <3700000>; |
|
regulator-max-microvolt = <3700000>; |
|
regulator-name = "vph_pwr"; |
|
regulator-always-on; |
|
regulator-boot-on; |
|
}; |
|
|
|
wlan_en: wlan-en-1-8v { |
|
compatible = "regulator-fixed"; |
|
regulator-name = "wlan-en-regulator"; |
|
regulator-min-microvolt = <1800000>; |
|
regulator-max-microvolt = <1800000>; |
|
gpio = <&tlmm 84 GPIO_ACTIVE_HIGH>; |
|
pinctrl-names = "default"; |
|
pinctrl-0 = <&wl_reg_on>; |
|
|
|
/* WLAN card specific delay */ |
|
startup-delay-us = <70000>; |
|
enable-active-high; |
|
}; |
|
}; |
|
|
|
&blsp1_i2c3 { |
|
status = "okay"; |
|
clock-frequency = <355000>; |
|
|
|
tof_sensor: vl53l0x@29 { |
|
compatible = "st,vl53l0x"; |
|
reg = <0x29>; |
|
}; |
|
}; |
|
|
|
&blsp1_uart2 { |
|
status = "okay"; |
|
}; |
|
|
|
&blsp2_i2c5 { |
|
status = "okay"; |
|
clock-frequency = <355000>; |
|
|
|
/* FUSB301 USB-C controller */ |
|
}; |
|
|
|
&blsp2_i2c6 { |
|
status = "okay"; |
|
clock-frequency = <355000>; |
|
|
|
synaptics@2c { |
|
compatible = "syna,rmi4-i2c"; |
|
reg = <0x2c>; |
|
interrupt-parent = <&tlmm>; |
|
interrupts = <125 IRQ_TYPE_EDGE_FALLING>; |
|
vdd-supply = <&panel_tvdd>; |
|
|
|
syna,reset-delay-ms = <220>; |
|
syna,startup-delay-ms = <220>; |
|
#address-cells = <1>; |
|
#size-cells = <0>; |
|
|
|
rmi4-f01@1 { |
|
reg = <0x1>; |
|
syna,nosleep-mode = <1>; |
|
}; |
|
|
|
rmi4-f11@11 { |
|
reg = <0x11>; |
|
syna,sensor-type = <1>; |
|
}; |
|
}; |
|
}; |
|
|
|
&blsp2_uart2 { |
|
status = "okay"; |
|
}; |
|
|
|
&camera0_mclk { |
|
drive-strength = <2>; |
|
output-low; |
|
}; |
|
|
|
&camera0_pwdn { |
|
drive-strength = <2>; |
|
output-low; |
|
}; |
|
|
|
&camera0_rst { |
|
pins = "gpio30"; |
|
drive-strength = <2>; |
|
output-low; |
|
}; |
|
|
|
&camera2_mclk { |
|
drive-strength = <2>; |
|
output-low; |
|
}; |
|
|
|
&camera2_rst { |
|
drive-strength = <2>; |
|
output-low; |
|
}; |
|
|
|
&hsusb_phy1 { |
|
status = "okay"; |
|
|
|
vdda-pll-supply = <&pm8994_l12>; |
|
vdda-phy-dpdm-supply = <&pm8994_l24>; |
|
}; |
|
|
|
&mmcc { |
|
vdd-gfx-supply = <&vdd_gfx>; |
|
}; |
|
|
|
&pcie0 { |
|
status = "okay"; |
|
perst-gpio = <&tlmm 35 GPIO_ACTIVE_LOW>; |
|
wake-gpio = <&tlmm 37 GPIO_ACTIVE_HIGH>; |
|
vddpe-3v3-supply = <&wlan_en>; |
|
vdda-supply = <&pm8994_l28>; |
|
}; |
|
|
|
&pcie_phy { |
|
status = "okay"; |
|
|
|
vdda-phy-supply = <&pm8994_l28>; |
|
vdda-pll-supply = <&pm8994_l12>; |
|
}; |
|
|
|
&pm8994_gpios { |
|
pinctrl-names = "default"; |
|
pinctrl-0 = <&pm8994_gpios_defaults>; |
|
gpio-line-names = |
|
"NC", |
|
"VOL_DOWN_N", |
|
"VOL_UP_N", |
|
"SNAPSHOT_N", |
|
"FOCUS_N", |
|
"NC", |
|
"NFC_VEN", |
|
"NC", |
|
"NC", |
|
"NC", |
|
"NC", |
|
"NC", |
|
"EAR_EN", |
|
"NC", |
|
"PM_DIVCLK1", |
|
"PMI_CLK", |
|
"NC", |
|
"WL_SLEEP_CLK", |
|
"NC", |
|
"PMIC_SPON", |
|
"UIM_BATT_ALARM", |
|
"PMK_SLEEP_CLK"; |
|
|
|
/* |
|
* We don't yet know for sure which GPIOs are of our interest, but what |
|
* we do know is that if a vendor sets the pins to a non-default state, there's |
|
* probably a reason for it, and just to be on the safe side, we follow suit. |
|
*/ |
|
pm8994_gpios_defaults: pm8994-gpios-default-state { |
|
pm8994-gpio1-nc { |
|
pins = "gpio1"; |
|
function = PMIC_GPIO_FUNC_NORMAL; |
|
drive-push-pull; |
|
bias-high-impedance; |
|
}; |
|
|
|
vol-down-n { |
|
pins = "gpio2"; |
|
function = PMIC_GPIO_FUNC_NORMAL; |
|
drive-push-pull; |
|
input-enable; |
|
bias-pull-up; |
|
qcom,drive-strength = <PMIC_GPIO_STRENGTH_NO>; |
|
power-source = <PM8994_GPIO_S4>; |
|
}; |
|
|
|
vol-up-n { |
|
pins = "gpio3"; |
|
function = PMIC_GPIO_FUNC_NORMAL; |
|
drive-push-pull; |
|
input-enable; |
|
bias-pull-up; |
|
power-source = <PM8994_GPIO_S4>; |
|
}; |
|
|
|
camera-snapshot-n { |
|
pins = "gpio4"; |
|
function = PMIC_GPIO_FUNC_NORMAL; |
|
drive-push-pull; |
|
input-enable; |
|
bias-pull-up; |
|
qcom,drive-strength = <PMIC_GPIO_STRENGTH_NO>; |
|
power-source = <PM8994_GPIO_S4>; |
|
}; |
|
|
|
camera-focus-n { |
|
pins = "gpio5"; |
|
function = PMIC_GPIO_FUNC_NORMAL; |
|
drive-push-pull; |
|
input-enable; |
|
bias-pull-up; |
|
qcom,drive-strength = <PMIC_GPIO_STRENGTH_NO>; |
|
power-source = <PM8994_GPIO_S4>; |
|
}; |
|
|
|
pm8994-gpio6-nc { |
|
pins = "gpio6"; |
|
function = PMIC_GPIO_FUNC_NORMAL; |
|
drive-push-pull; |
|
bias-high-impedance; |
|
power-source = <PM8994_GPIO_VPH>; |
|
}; |
|
|
|
nfc-download { |
|
pins = "gpio7"; |
|
function = PMIC_GPIO_FUNC_NORMAL; |
|
output-low; |
|
drive-push-pull; |
|
bias-disable; |
|
qcom,drive-strength = <PMIC_GPIO_STRENGTH_LOW>; |
|
power-source = <PM8994_GPIO_S4>; |
|
}; |
|
|
|
pm8994-gpio8-nc { |
|
pins = "gpio8"; |
|
function = PMIC_GPIO_FUNC_NORMAL; |
|
output-low; |
|
drive-push-pull; |
|
bias-high-impedance; |
|
qcom,drive-strength = <PMIC_GPIO_STRENGTH_NO>; |
|
power-source = <PM8994_GPIO_VPH>; |
|
}; |
|
|
|
pm8994-gpio9-nc { |
|
pins = "gpio9"; |
|
function = PMIC_GPIO_FUNC_NORMAL; |
|
output-high; |
|
drive-push-pull; |
|
bias-high-impedance; |
|
qcom,drive-strength = <PMIC_GPIO_STRENGTH_LOW>; |
|
power-source = <PM8994_GPIO_VPH>; |
|
}; |
|
|
|
nfc-clock { |
|
pins = "gpio10"; |
|
function = PMIC_GPIO_FUNC_NORMAL; |
|
input-enable; |
|
drive-push-pull; |
|
bias-pull-down; |
|
qcom,drive-strength = <PMIC_GPIO_STRENGTH_NO>; |
|
power-source = <PM8994_GPIO_S4>; |
|
}; |
|
|
|
pm8994-gpio11-nc { |
|
pins = "gpio11"; |
|
function = PMIC_GPIO_FUNC_NORMAL; |
|
drive-push-pull; |
|
bias-high-impedance; |
|
power-source = <PM8994_GPIO_VPH>; |
|
}; |
|
|
|
pm8994-gpio12-nc { |
|
pins = "gpio12"; |
|
function = PMIC_GPIO_FUNC_NORMAL; |
|
drive-push-pull; |
|
bias-high-impedance; |
|
power-source = <PM8994_GPIO_VPH>; |
|
}; |
|
|
|
ear-enable { |
|
pins = "gpio13"; |
|
function = PMIC_GPIO_FUNC_NORMAL; |
|
output-high; |
|
drive-push-pull; |
|
bias-disable; |
|
qcom,drive-strength = <PMIC_GPIO_STRENGTH_LOW>; |
|
power-source = <PM8994_GPIO_S4>; |
|
}; |
|
|
|
pm8994-gpio14-nc { |
|
pins = "gpio14"; |
|
function = PMIC_GPIO_FUNC_NORMAL; |
|
drive-push-pull; |
|
input-enable; |
|
bias-high-impedance; |
|
qcom,drive-strength = <PMIC_GPIO_STRENGTH_LOW>; |
|
power-source = <PM8994_GPIO_VPH>; |
|
}; |
|
|
|
pm-divclk1-gpio { |
|
pins = "gpio15"; |
|
function = "func1"; |
|
output-high; |
|
drive-push-pull; |
|
bias-high-impedance; |
|
qcom,drive-strength = <PMIC_GPIO_STRENGTH_LOW>; |
|
power-source = <PM8994_GPIO_VPH>; |
|
}; |
|
|
|
pmi-clk-gpio { |
|
pins = "gpio16"; |
|
function = PMIC_GPIO_FUNC_NORMAL; |
|
drive-push-pull; |
|
}; |
|
|
|
pm8994-gpio17-nc { |
|
pins = "gpio17"; |
|
function = PMIC_GPIO_FUNC_NORMAL; |
|
drive-push-pull; |
|
bias-high-impedance; |
|
power-source = <PM8994_GPIO_VPH>; |
|
}; |
|
|
|
rome-sleep { |
|
pins = "gpio18"; |
|
function = PMIC_GPIO_FUNC_FUNC2; |
|
output-low; |
|
drive-push-pull; |
|
bias-disable; |
|
qcom,drive-strength = <PMIC_GPIO_STRENGTH_MED>; |
|
power-source = <PM8994_GPIO_S4>; |
|
}; |
|
|
|
pm8994-gpio19-nc { |
|
pins = "gpio19"; |
|
function = PMIC_GPIO_FUNC_NORMAL; |
|
output-low; |
|
drive-push-pull; |
|
bias-high-impedance; |
|
qcom,drive-strength = <PMIC_GPIO_STRENGTH_NO>; |
|
power-source = <PM8994_GPIO_VPH>; |
|
}; |
|
|
|
pm8994-gpio22-nc { |
|
pins = "gpio22"; |
|
function = PMIC_GPIO_FUNC_NORMAL; |
|
drive-push-pull; |
|
bias-high-impedance; |
|
power-source = <PM8994_GPIO_VPH>; |
|
}; |
|
}; |
|
}; |
|
|
|
&pm8994_mpps { |
|
pinctrl-names = "default"; |
|
pinctrl-0 = <&pm8994_mpps_defaults>; |
|
|
|
gpio-line-names = |
|
"SDC_UIM_VBIAS", |
|
"LCD_ID_ADC", |
|
"VREF_DACX", |
|
"NC", |
|
"FLASH_THERM", |
|
"NC", |
|
"NC", |
|
"RF_ID"; |
|
|
|
pm8994_mpps_defaults: pm8994-mpps-default-state { |
|
lcd-id_adc-mpp { |
|
pins = "mpp2"; |
|
function = "analog"; |
|
input-enable; |
|
qcom,amux-route = <PMIC_MPP_AMUX_ROUTE_CH6>; |
|
}; |
|
|
|
pm-mpp4-nc { |
|
pins = "mpp4"; |
|
function = "digital"; |
|
bias-high-impedance; |
|
power-source = <PM8994_GPIO_VPH>; |
|
}; |
|
|
|
flash-therm-mpp { |
|
pins = "mpp5"; |
|
function = "analog"; |
|
input-enable; |
|
qcom,amux-route = <PMIC_MPP_AMUX_ROUTE_CH5>; |
|
}; |
|
|
|
mpp6-nc { |
|
pins = "mpp6"; |
|
function = "digital"; |
|
bias-high-impedance; |
|
}; |
|
|
|
rf-id-mpp { |
|
pins = "mpp8"; |
|
function = "analog"; |
|
input-enable; |
|
qcom,amux-route = <PMIC_MPP_AMUX_ROUTE_CH8>; |
|
}; |
|
}; |
|
}; |
|
|
|
&pm8994_resin { |
|
status = "okay"; |
|
linux,code = <KEY_VOLUMEUP>; |
|
}; |
|
|
|
&pmi8994_gpios { |
|
pinctrl-names = "default"; |
|
pinctrl-0 = <&pmi8994_gpios_defaults>; |
|
|
|
gpio-line-names = |
|
"VIB_LDO_EN", |
|
"NC", |
|
"NC", |
|
"NC", |
|
"NC", |
|
"NC", |
|
"NC", |
|
"NC", |
|
"USB_SWITCH_SEL", |
|
"NC"; |
|
|
|
pmi8994_gpios_defaults: pmi8994-gpios-default-state { |
|
vib-ldo-en-gpio { |
|
pins = "gpio1"; |
|
function = PMIC_GPIO_FUNC_NORMAL; |
|
drive-push-pull; |
|
output-low; |
|
bias-disable; |
|
power-source = <PM8994_GPIO_S4>; |
|
}; |
|
|
|
pmi-gpio2-nc { |
|
pins = "gpio2"; |
|
function = PMIC_GPIO_FUNC_NORMAL; |
|
drive-push-pull; |
|
input-enable; |
|
bias-high-impedance; |
|
qcom,drive-strength = <PMIC_GPIO_STRENGTH_NO>; |
|
power-source = <PM8994_GPIO_VPH>; |
|
}; |
|
|
|
pmi-gpio3-nc { |
|
pins = "gpio3"; |
|
function = PMIC_GPIO_FUNC_NORMAL; |
|
drive-push-pull; |
|
input-enable; |
|
bias-high-impedance; |
|
qcom,drive-strength = <PMIC_GPIO_STRENGTH_NO>; |
|
power-source = <PM8994_GPIO_VPH>; |
|
}; |
|
|
|
pmi-gpio4-nc { |
|
pins = "gpio4"; |
|
function = PMIC_GPIO_FUNC_NORMAL; |
|
drive-push-pull; |
|
output-high; |
|
qcom,drive-strength = <PMIC_GPIO_STRENGTH_LOW>; |
|
power-source = <PM8994_GPIO_S4>; |
|
}; |
|
|
|
pmi-gpio5-nc { |
|
pins = "gpio5"; |
|
function = PMIC_GPIO_FUNC_NORMAL; |
|
drive-push-pull; |
|
output-high; |
|
qcom,drive-strength = <PMIC_GPIO_STRENGTH_NO>; |
|
power-source = <PM8994_GPIO_S4>; |
|
}; |
|
|
|
pmi-gpio6-nc { |
|
pins = "gpio6"; |
|
function = PMIC_GPIO_FUNC_NORMAL; |
|
drive-push-pull; |
|
output-high; |
|
qcom,drive-strength = <PMIC_GPIO_STRENGTH_LOW>; |
|
power-source = <PM8994_GPIO_S4>; |
|
}; |
|
|
|
pmi-gpio7-nc { |
|
pins = "gpio7"; |
|
function = PMIC_GPIO_FUNC_NORMAL; |
|
drive-push-pull; |
|
output-high; |
|
qcom,drive-strength = <PMIC_GPIO_STRENGTH_LOW>; |
|
power-source = <PM8994_GPIO_S4>; |
|
}; |
|
|
|
pmi-gpio8-nc { |
|
pins = "gpio8"; |
|
function = PMIC_GPIO_FUNC_NORMAL; |
|
drive-push-pull; |
|
output-high; |
|
qcom,drive-strength = <PMIC_GPIO_STRENGTH_LOW>; |
|
power-source = <PM8994_GPIO_S4>; |
|
}; |
|
|
|
usb-switch-sel { |
|
pins = "gpio9"; |
|
function = PMIC_GPIO_FUNC_NORMAL; |
|
drive-push-pull; |
|
}; |
|
|
|
pmi-gpio10-nc { |
|
pins = "gpio10"; |
|
function = PMIC_GPIO_FUNC_NORMAL; |
|
output-low; |
|
drive-push-pull; |
|
bias-disable; |
|
qcom,drive-strength = <PMIC_GPIO_STRENGTH_NO>; |
|
power-source = <PM8994_GPIO_S4>; |
|
}; |
|
}; |
|
}; |
|
|
|
&pmi8994_spmi_regulators { |
|
qcom,saw-reg = <&saw3>; |
|
|
|
vdd_gfx: |
|
pmi8994_s2: s2 { |
|
/* Pinned to a high value for now to avoid random crashes. */ |
|
regulator-min-microvolt = <1015000>; |
|
regulator-max-microvolt = <1015000>; |
|
regulator-name = "vdd_gfx"; |
|
regulator-always-on; |
|
}; |
|
|
|
pmi8994_s9: s9 { |
|
qcom,saw-slave; |
|
}; |
|
|
|
pmi8994_s10: s10 { |
|
qcom,saw-slave; |
|
}; |
|
|
|
pmi8994_s11: s11 { |
|
qcom,saw-leader; |
|
regulator-always-on; |
|
regulator-min-microvolt = <470000>; |
|
regulator-max-microvolt = <1140000>; |
|
}; |
|
}; |
|
|
|
&pmi8994_wled { |
|
status = "okay"; |
|
default-brightness = <512>; |
|
}; |
|
|
|
&rpm_requests { |
|
pm8994-regulators { |
|
compatible = "qcom,rpm-pm8994-regulators"; |
|
|
|
vdd_s1-supply = <&vph_pwr>; |
|
vdd_s2-supply = <&vph_pwr>; |
|
vdd_s3-supply = <&vph_pwr>; |
|
vdd_s4-supply = <&vph_pwr>; |
|
vdd_s5-supply = <&vph_pwr>; |
|
vdd_s6-supply = <&vph_pwr>; |
|
vdd_s7-supply = <&vph_pwr>; |
|
vdd_s8-supply = <&vph_pwr>; |
|
vdd_s9-supply = <&vph_pwr>; |
|
vdd_s10-supply = <&vph_pwr>; |
|
vdd_s11-supply = <&vph_pwr>; |
|
vdd_s12-supply = <&vph_pwr>; |
|
vdd_l1-supply = <&pm8994_s3>; |
|
vdd_l2_l26_l28-supply = <&pm8994_s3>; |
|
vdd_l3_l11-supply = <&pm8994_s3>; |
|
vdd_l4_l27_l31-supply = <&pm8994_s3>; |
|
vdd_l5_l7-supply = <&pm8994_s5>; |
|
vdd_l6_l12_l32-supply = <&pm8994_s5>; |
|
vdd_l8_l16_l30-supply = <&vph_pwr>; |
|
vdd_l14_l15-supply = <&pm8994_s5>; |
|
vdd_l20_l21-supply = <&pm8994_s5>; |
|
vdd_l25-supply = <&pm8994_s3>; |
|
vdd_lvs1_2-supply = <&pm8994_s4>; |
|
|
|
pm8994_s3: s3 { |
|
regulator-min-microvolt = <1300000>; |
|
regulator-max-microvolt = <1300000>; |
|
}; |
|
|
|
pm8994_s4: s4 { |
|
regulator-min-microvolt = <1800000>; |
|
regulator-max-microvolt = <1800000>; |
|
regulator-system-load = <325000>; |
|
regulator-always-on; |
|
}; |
|
|
|
pm8994_s5: s5 { |
|
regulator-min-microvolt = <2150000>; |
|
regulator-max-microvolt = <2150000>; |
|
}; |
|
|
|
pm8994_s7: s7 { |
|
regulator-min-microvolt = <800000>; |
|
regulator-max-microvolt = <800000>; |
|
}; |
|
|
|
pm8994_l1: l1 { |
|
regulator-min-microvolt = <1000000>; |
|
regulator-max-microvolt = <1000000>; |
|
}; |
|
|
|
pm8994_l2: l2 { |
|
regulator-min-microvolt = <1250000>; |
|
regulator-max-microvolt = <1250000>; |
|
}; |
|
|
|
pm8994_l3: l3 { |
|
regulator-min-microvolt = <1100000>; |
|
regulator-max-microvolt = <1100000>; |
|
}; |
|
|
|
pm8994_l4: l4 { |
|
regulator-min-microvolt = <1225000>; |
|
regulator-max-microvolt = <1225000>; |
|
}; |
|
|
|
/* L6 and L7 seem unused. */ |
|
|
|
pm8994_l8: l8 { |
|
regulator-min-microvolt = <1800000>; |
|
regulator-max-microvolt = <1800000>; |
|
}; |
|
|
|
pm8994_l9: l9 { |
|
regulator-min-microvolt = <1800000>; |
|
regulator-max-microvolt = <1800000>; |
|
}; |
|
|
|
pm8994_l10: l10 { |
|
regulator-min-microvolt = <1800000>; |
|
regulator-max-microvolt = <1800000>; |
|
}; |
|
|
|
pm8994_l11: l11 { |
|
regulator-min-microvolt = <1100000>; |
|
regulator-max-microvolt = <1100000>; |
|
}; |
|
|
|
pm8994_l12: l12 { |
|
regulator-min-microvolt = <1800000>; |
|
regulator-max-microvolt = <1800000>; |
|
regulator-allow-set-load; |
|
}; |
|
|
|
pm8994_l13: l13 { |
|
regulator-min-microvolt = <1800000>; |
|
regulator-max-microvolt = <2950000>; |
|
regulator-system-load = <22000>; |
|
regulator-allow-set-load; |
|
}; |
|
|
|
pm8994_l14: l14 { |
|
regulator-min-microvolt = <1700000>; |
|
regulator-max-microvolt = <1900000>; |
|
}; |
|
|
|
pm8994_l15: l15 { |
|
regulator-min-microvolt = <1800000>; |
|
regulator-max-microvolt = <1800000>; |
|
}; |
|
|
|
pm8994_l16: l16 { |
|
regulator-min-microvolt = <2700000>; |
|
regulator-max-microvolt = <2700000>; |
|
}; |
|
|
|
pm8994_l17: l17 { |
|
regulator-min-microvolt = <2200000>; |
|
regulator-max-microvolt = <2500000>; |
|
}; |
|
|
|
pm8994_l18: l18 { |
|
regulator-min-microvolt = <1800000>; |
|
regulator-max-microvolt = <1800000>; |
|
}; |
|
|
|
pm8994_l19: l19 { |
|
regulator-min-microvolt = <3000000>; |
|
regulator-max-microvolt = <3000000>; |
|
}; |
|
|
|
pm8994_l20: l20 { |
|
regulator-min-microvolt = <2950000>; |
|
regulator-max-microvolt = <2950000>; |
|
regulator-system-load = <570000>; |
|
regulator-allow-set-load; |
|
}; |
|
|
|
pm8994_l21: l21 { |
|
regulator-min-microvolt = <2950000>; |
|
regulator-max-microvolt = <2950000>; |
|
regulator-system-load = <800000>; |
|
regulator-allow-set-load; |
|
}; |
|
|
|
pm8994_l22: l22 { |
|
regulator-min-microvolt = <3000000>; |
|
regulator-max-microvolt = <3000000>; |
|
}; |
|
|
|
pm8994_l23: l23 { |
|
regulator-min-microvolt = <2700000>; |
|
regulator-max-microvolt = <2700000>; |
|
}; |
|
|
|
pm8994_l24: l24 { |
|
regulator-min-microvolt = <3075000>; |
|
regulator-max-microvolt = <3075000>; |
|
regulator-allow-set-load; |
|
}; |
|
|
|
pm8994_l25: l25 { |
|
regulator-min-microvolt = <1200000>; |
|
regulator-max-microvolt = <1200000>; |
|
regulator-allow-set-load; |
|
}; |
|
|
|
pm8994_l27: l27 { |
|
regulator-min-microvolt = <1000000>; |
|
regulator-max-microvolt = <1200000>; |
|
}; |
|
|
|
pm8994_l28: l28 { |
|
regulator-min-microvolt = <925000>; |
|
regulator-max-microvolt = <925000>; |
|
regulator-allow-set-load; |
|
}; |
|
|
|
pm8994_l29: l29 { |
|
regulator-min-microvolt = <2700000>; |
|
regulator-max-microvolt = <2700000>; |
|
}; |
|
|
|
pm8994_l30: l30 { }; |
|
|
|
pm8994_l32: l32 { |
|
regulator-min-microvolt = <1800000>; |
|
regulator-max-microvolt = <1800000>; |
|
}; |
|
}; |
|
}; |
|
|
|
&sdhc1 { |
|
/* eMMC doesn't seem to cooperate even in PIO mode.. */ |
|
status = "disabled"; |
|
|
|
vmmc-supply = <&pm8994_l20>; |
|
vqmmc-supply = <&pm8994_s4>; |
|
mmc-hs400-1_8v; |
|
mmc-hs200-1_8v; |
|
}; |
|
|
|
&sdhc2 { |
|
status = "okay"; |
|
|
|
cd-gpios = <&tlmm 40 GPIO_ACTIVE_HIGH>; |
|
vmmc-supply = <&pm8994_l21>; |
|
vqmmc-supply = <&pm8994_l13>; |
|
}; |
|
|
|
&tlmm { |
|
gpio-reserved-ranges = <0 4>; |
|
pinctrl-0 = <&sw_service_gpio>; |
|
pinctrl-names = "default"; |
|
|
|
disp_reset_n_gpio: disp-reset-n { |
|
pins = "gpio8"; |
|
function = "gpio"; |
|
drive-strength = <2>; |
|
bias-disable; |
|
}; |
|
|
|
mdp_vsync_p_gpio: mdp-vsync-p { |
|
pins = "gpio10"; |
|
function = "mdp_vsync"; |
|
drive-strength = <2>; |
|
bias-disable; |
|
}; |
|
|
|
sw_service_gpio: sw-service-gpio { |
|
pins = "gpio16"; |
|
function = "gpio"; |
|
drive-strength = <2>; |
|
bias-pull-up; |
|
}; |
|
|
|
usb_detect: usb-detect { |
|
pins = "gpio25"; |
|
function = "gpio"; |
|
drive-strength = <2>; |
|
bias-disable; |
|
output-high; |
|
}; |
|
|
|
uim_detect_en: uim-detect-en { |
|
pins = "gpio29"; |
|
function = "gpio"; |
|
drive-strength = <2>; |
|
bias-disable; |
|
output-high; |
|
}; |
|
|
|
tray_det_pin: tray-det { |
|
pins = "gpio40"; |
|
function = "gpio"; |
|
drive-strength = <2>; |
|
bias-disable; |
|
}; |
|
|
|
tp_vddio_en: tp-vddio-en { |
|
pins = "gpio50"; |
|
function = "gpio"; |
|
drive-strength = <2>; |
|
bias-disable; |
|
output-high; |
|
}; |
|
|
|
lcd_vddio_en: lcd-vddio-en { |
|
pins = "gpio51"; |
|
function = "gpio"; |
|
drive-strength = <2>; |
|
bias-disable; |
|
output-low; |
|
}; |
|
|
|
wl_host_wake: wl-host-wake { |
|
pins = "gpio79"; |
|
function = "gpio"; |
|
drive-strength = <2>; |
|
bias-pull-down; |
|
input-high; |
|
}; |
|
|
|
wl_reg_on: wl-reg-on { |
|
pins = "gpio84"; |
|
function = "gpio"; |
|
drive-strength = <2>; |
|
bias-disable; |
|
output-low; |
|
}; |
|
|
|
ts_reset_n: ts-rst-n { |
|
pins = "gpio89"; |
|
function = "gpio"; |
|
drive-strength = <2>; |
|
}; |
|
|
|
touch_int_n: touch-int-n { |
|
pins = "gpio125"; |
|
function = "gpio"; |
|
drive-strength = <2>; |
|
bias-pull-up; |
|
}; |
|
|
|
touch_int_sleep: touch-int-sleep { |
|
pins = "gpio125"; |
|
function = "gpio"; |
|
drive-strength = <2>; |
|
bias-pull-down; |
|
}; |
|
}; |
|
|
|
/* |
|
* For reasons that are currently unknown (but probably related to fusb301), USB takes about |
|
* 6 minutes to wake up (nothing interesting in kernel logs), but then it works as it should. |
|
*/ |
|
&usb3 { |
|
status = "okay"; |
|
qcom,select-utmi-as-pipe-clk; |
|
}; |
|
|
|
&usb3_dwc3 { |
|
extcon = <&usb3_id>; |
|
dr_mode = "peripheral"; |
|
phys = <&hsusb_phy1>; |
|
phy-names = "usb2-phy"; |
|
snps,hird-threshold = /bits/ 8 <0>; |
|
};
|
|
|