Merge "ARM: dts: msm: Enable download/restart mode drivers for Ravelin"

This commit is contained in:
qctecmdr
2022-11-12 09:23:43 -08:00
committed by Gerrit - the friendly Code Review server
7 changed files with 1089 additions and 2 deletions

View File

@@ -1,3 +1,6 @@
#include "ravelin-pmic-overlay.dtsi"
#include "ravelin-pm7250b.dtsi"
&soc {
};

View File

@@ -1,2 +1,5 @@
#include "ravelin-pmic-overlay.dtsi"
#include "ravelin-pm7250b.dtsi"
&soc {
};

200
qcom/ravelin-pm7250b.dtsi Normal file
View File

@@ -0,0 +1,200 @@
#include <dt-bindings/clock/qcom,rpmh.h>
#include <dt-bindings/thermal/thermal_qti.h>
#include "pm7250b.dtsi"
&soc {
qcom,pmic_glink {
status = "okay";
};
qcom,pmic_glink_log {
compatible = "qcom,pmic-glink";
qcom,pmic-glink-channel = "PMIC_LOGS_ADSP_APPS";
qcom,battery_debug {
compatible = "qcom,battery-debug";
};
qcom,charger_ulog_glink {
compatible = "qcom,charger-ulog-glink";
};
spmi_glink_debug: qcom,spmi_glink_debug {
compatible = "qcom,spmi-glink-debug";
#address-cells = <1>;
#size-cells = <0>;
depends-on-supply = <&spmi0_bus>;
/* Primary SPMI bus */
spmi@0 {
reg = <0>;
#address-cells = <2>;
#size-cells = <0>;
qcom,pm7250b-debug@8 {
compatible = "qcom,spmi-pmic";
reg = <8 SPMI_USID>;
qcom,can-sleep;
};
};
};
};
};
&glink_edge {
qcom,pmic_glink_rpmsg {
qcom,glink-channels = "PMIC_RTR_ADSP_APPS";
};
qcom,pmic_glink_log_rpmsg {
qcom,glink-channels = "PMIC_LOGS_ADSP_APPS";
qcom,intents = <0x800 5
0xc00 3
0x2000 1>;
};
};
&battery_charger {
status = "okay";
};
&ucsi {
status = "okay";
};
&altmode {
status = "okay";
};
&spmi0_debug_bus {
qcom,pm7250b-debug@8 {
compatible = "qcom,spmi-pmic";
reg = <8 SPMI_USID>;
#address-cells = <2>;
#size-cells = <0>;
qcom,can-sleep;
};
qcom,pm7250b-debug@9 {
compatible = "qcom,spmi-pmic";
reg = <9 SPMI_USID>;
#address-cells = <2>;
#size-cells = <0>;
qcom,can-sleep;
};
};
&pm7250b_2 {
/* Slave ID - 8 */
reg = <8 SPMI_USID>;
};
&pm7250b_3 {
/* Slave ID - 9 */
reg = <9 SPMI_USID>;
};
&pm7250b_clkdiv {
clocks = <&rpmhcc RPMH_CXO_CLK>;
};
&pm7250b_vadc {
interrupts = <0x8 0x31 0x0 IRQ_TYPE_EDGE_RISING>;
pm7250b_usb_conn_therm {
reg = <ADC5_AMUX_THM3_100K_PU>;
label = "pm7250b_usb_conn_therm";
qcom,ratiometric;
qcom,hw-settle-time = <200>;
qcom,pre-scaling = <1 1>;
};
pm7250b_charger_skin_therm {
reg = <ADC5_AMUX_THM1_100K_PU>;
label = "pm7250b_charger_skin_therm";
qcom,ratiometric;
qcom,hw-settle-time = <200>;
qcom,pre-scaling = <1 1>;
};
};
&pm7250b_adc_tm {
interrupts = <0x8 0x35 0x0 IRQ_TYPE_EDGE_RISING>;
io-channels = <&pm7250b_vadc ADC5_AMUX_THM3_100K_PU>,
<&pm7250b_vadc ADC5_AMUX_THM1_100K_PU>;
pm7250b_usb_conn_therm {
reg = <ADC5_AMUX_THM3_100K_PU>;
qcom,ratiometric;
qcom,hw-settle-time = <200>;
};
pm7250b_charger_skin_therm {
reg = <ADC5_AMUX_THM1_100K_PU>;
qcom,ratiometric;
qcom,hw-settle-time = <200>;
};
};
&thermal_zones {
sys-therm-6 {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&pm7250b_adc_tm ADC5_AMUX_THM3_100K_PU>;
trips {
active-config0 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
active-config1 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
};
};
sys-therm-5 {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&pm7250b_adc_tm ADC5_AMUX_THM1_100K_PU>;
trips {
active-config0 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
active-config1 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
};
};
};
&pm7250b_tz {
interrupts = <0x8 0x24 0x0 IRQ_TYPE_EDGE_BOTH>;
};
&pm7250b_bcl {
interrupts = <0x8 0x1d 0x0 IRQ_TYPE_EDGE_RISING>,
<0x8 0x1d 0x1 IRQ_TYPE_EDGE_RISING>,
<0x8 0x1d 0x2 IRQ_TYPE_EDGE_RISING>;
};
/* Below peripherals are supported over ADSP Glink */
&pm7250b_charger {
status = "disabled";
};
&pm7250b_qg {
status = "disabled";
};
&pm7250b_pdphy {
status = "disabled";
};

230
qcom/ravelin-pmi632.dtsi Normal file
View File

@@ -0,0 +1,230 @@
#include <dt-bindings/clock/qcom,rpmh.h>
#include <dt-bindings/thermal/thermal_qti.h>
#include "pmi632.dtsi"
&soc {
qcom,pmic_glink {
status = "okay";
};
qcom,pmic_glink_log {
compatible = "qcom,pmic-glink";
qcom,pmic-glink-channel = "PMIC_LOGS_ADSP_APPS";
qcom,battery_debug {
compatible = "qcom,battery-debug";
};
qcom,charger_ulog_glink {
compatible = "qcom,charger-ulog-glink";
};
spmi_glink_debug: qcom,spmi_glink_debug {
compatible = "qcom,spmi-glink-debug";
#address-cells = <1>;
#size-cells = <0>;
depends-on-supply = <&spmi0_bus>;
/* Primary SPMI bus */
spmi@0 {
reg = <0>;
#address-cells = <2>;
#size-cells = <0>;
qcom,pmi632-debug@2 {
compatible = "qcom,spmi-pmic";
reg = <2 SPMI_USID>;
qcom,can-sleep;
};
};
};
};
};
&glink_edge {
qcom,pmic_glink_rpmsg {
qcom,glink-channels = "PMIC_RTR_ADSP_APPS";
};
qcom,pmic_glink_log_rpmsg {
qcom,glink-channels = "PMIC_LOGS_ADSP_APPS";
qcom,intents = <0x800 5
0xc00 3
0x2000 1>;
};
};
&battery_charger {
status = "okay";
};
&ucsi {
status = "okay";
};
&altmode {
status = "disabled";
};
&spmi0_debug_bus {
qcom,pmi632-debug@2 {
compatible = "qcom,spmi-pmic";
reg = <2 SPMI_USID>;
#address-cells = <2>;
#size-cells = <0>;
qcom,can-sleep;
};
qcom,pmi632-debug@3 {
compatible = "qcom,spmi-pmic";
reg = <3 SPMI_USID>;
#address-cells = <2>;
#size-cells = <0>;
qcom,can-sleep;
};
};
&pmi632_gpios {
usb_conn_therm {
usb_conn_therm_default: usb_conn_therm_default {
pins = "gpio1";
bias-high-impedance;
};
};
charger_skin_temp {
charger_skin_temp_default: charger_skin_temp_default {
pins = "gpio3";
bias-high-impedance;
};
};
smb_skin_therm {
smb_skin_therm_default: smb_skin_therm_default {
pins = "gpio4";
bias-high-impedance;
};
};
};
&pmi632_vadc {
pinctrl-names = "default";
pinctrl-0 = <&usb_conn_therm_default &charger_skin_temp_default
&smb_skin_therm_default>;
pmi632_usb_conn_therm {
reg = <ADC5_GPIO1_100K_PU>;
label = "pmi632_usb_conn_therm";
qcom,ratiometric;
qcom,hw-settle-time = <200>;
qcom,pre-scaling = <1 1>;
};
pmi632_charger_skin_temp {
reg = <ADC5_GPIO2_100K_PU>;
label = "pmi632_charger_skin_temp";
qcom,ratiometric;
qcom,hw-settle-time = <200>;
qcom,pre-scaling = <1 1>;
};
pmi632_smb_skin_therm {
reg = <ADC5_GPIO3_100K_PU>;
label = "pmi632_smb_skin_therm";
qcom,ratiometric;
qcom,hw-settle-time = <200>;
qcom,pre-scaling = <1 1>;
};
};
&pmi632_adc_tm {
io-channels = <&pmi632_vadc ADC5_GPIO1_100K_PU>,
<&pmi632_vadc ADC5_GPIO2_100K_PU>,
<&pmi632_vadc ADC5_GPIO3_100K_PU>;
pmi632_usb_conn_therm {
reg = <ADC5_GPIO1_100K_PU>;
qcom,ratiometric;
qcom,hw-settle-time = <200>;
};
pmi632_charger_skin_temp {
reg = <ADC5_GPIO2_100K_PU>;
qcom,ratiometric;
qcom,hw-settle-time = <200>;
};
pmi632_smb_skin_therm {
reg = <ADC5_GPIO3_100K_PU>;
qcom,ratiometric;
qcom,hw-settle-time = <200>;
};
};
&thermal_zones {
sys-therm-5 {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&pmi632_adc_tm ADC5_GPIO1_100K_PU>;
trips {
active-config0 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
active-config1 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
};
};
sys-therm-6 {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&pmi632_adc_tm ADC5_GPIO2_100K_PU>;
trips {
active-config0 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
active-config1 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
};
};
sys-therm-7 {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&pmi632_adc_tm ADC5_GPIO3_100K_PU>;
trips {
active-config0 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
active-config1 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
};
};
};
&flash_led {
qcom,use-qti-battery-interface;
};
&pmi632_lcdb {
status = "ok";
};

View File

@@ -0,0 +1,566 @@
#include <dt-bindings/clock/qcom,rpmh.h>
#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
#include <dt-bindings/iio/qcom,spmi-adc7-pm6450.h>
#include <dt-bindings/gpio/gpio.h>
#include "pmk8350.dtsi"
#include "pm6450.dtsi"
&soc {
reboot_reason {
compatible = "qcom,reboot-reason";
nvmem-cells = <&restart_reason>;
nvmem-cell-names = "restart_reason";
};
pmic-pon-log {
compatible = "qcom,pmic-pon-log";
nvmem = <&pmk8350_sdam_5>;
nvmem-names = "pon_log";
};
};
&pmk8350 {
/delete-node/ pon_pbs@800;
/delete-node/ pon_hlos@1300;
pon_hlos@1300 {
compatible = "qcom,pm8998-pon";
reg = <0x1300>, <0x800>;
reg-names = "pon_hlos", "pon_pbs";
qcom,log-kpd-event;
pwrkey {
compatible = "qcom,pmk8350-pwrkey";
interrupts = <0x0 0x13 0x7 IRQ_TYPE_EDGE_BOTH>;
linux,code = <KEY_POWER>;
};
resin {
compatible = "qcom,pmk8350-resin";
interrupts = <0x0 0x13 0x6 IRQ_TYPE_EDGE_BOTH>;
linux,code = <KEY_VOLUMEDOWN>;
};
};
};
&pmk8350_vadc {
pinctrl-names = "default";
pinctrl-0 = <&quiet_therm_default &wide_rfc_therm_default
&rear_cam_flash_therm_default &msm_therm_default>;
/delete-node/ pm8350_ref_gnd;
/delete-node/ pm8350_vref_1p25;
/delete-node/ pm8350_die_temp;
/delete-node/ pm8350_vph_pwr;
/delete-node/ pm8350b_ref_gnd;
/delete-node/ pm8350b_vref_1p25;
/delete-node/ pm8350b_die_temp;
/delete-node/ pm8350b_vph_pwr;
/delete-node/ pm8350b_vbat_sns;
/delete-node/ pmr735b_ref_gnd;
/delete-node/ pmr735b_vref_1p25;
/delete-node/ pmr735b_die_temp;
/delete-node/ pmr735a_ref_gnd;
/delete-node/ pmr735a_vref_1p25;
/delete-node/ pmr735a_die_temp;
/* PM6450 Channel nodes */
pm6450_ref_gnd {
reg = <PM6450_ADC7_REF_GND>;
label = "pm6450_ref_gnd";
qcom,pre-scaling = <1 1>;
};
pm6450_vref_1p25 {
reg = <PM6450_ADC7_1P25VREF>;
label = "pm6450_vref_1p25";
qcom,pre-scaling = <1 1>;
};
pm6450_die_temp {
reg = <PM6450_ADC7_DIE_TEMP>;
label = "pm6450_die_temp";
qcom,pre-scaling = <1 1>;
};
pm6450_quiet_therm {
reg = <PM6450_ADC7_AMUX1_GPIO2_100K_PU>;
label = "pm6450_quiet_therm";
qcom,ratiometric;
qcom,hw-settle-time = <200>;
qcom,pre-scaling = <1 1>;
};
pmk8350_wide_rfc_therm {
reg = <PMK8350_ADC7_AMUX_THM2_100K_PU>;
label = "pmk8350_wide_rfc_therm";
qcom,ratiometric;
qcom,hw-settle-time = <200>;
qcom,pre-scaling = <1 1>;
};
pm6450_rear_cam_flash_therm {
reg = <PM6450_ADC7_AMUX4_GPIO5_100K_PU>;
label = "pm6450_rear_cam_flash_therm";
qcom,ratiometric;
qcom,hw-settle-time = <200>;
qcom,pre-scaling = <1 1>;
};
pm6450_msm_therm {
reg = <PM6450_ADC7_AMUX2_GPIO3_100K_PU>;
label = "pm6450_msm_therm";
qcom,ratiometric;
qcom,hw-settle-time = <200>;
qcom,pre-scaling = <1 1>;
};
};
&spmi_bus {
#address-cells = <2>;
#size-cells = <0>;
interrupt-controller;
#interrupt-cells = <4>;
pm8010_e: qcom,pm8010@4 {
compatible = "qcom,spmi-pmic";
reg = <4 SPMI_USID>;
#address-cells = <1>;
#size-cells = <0>;
pm8010e_tz: pm8010-e-temp-alarm@2400 {
compatible = "qcom,spmi-temp-alarm";
reg = <0x2400>;
interrupts = <0x4 0x24 0x0 IRQ_TYPE_EDGE_BOTH>;
#thermal-sensor-cells = <0>;
};
};
};
&pmk8350_adc_tm {
io-channels = <&pmk8350_vadc PMK8350_ADC7_AMUX_THM1_100K_PU>,
<&pmk8350_vadc PM6450_ADC7_AMUX1_GPIO2_100K_PU>,
<&pmk8350_vadc PMK8350_ADC7_AMUX_THM2_100K_PU>,
<&pmk8350_vadc PM6450_ADC7_AMUX4_GPIO5_100K_PU>,
<&pmk8350_vadc PM6450_ADC7_AMUX2_GPIO3_100K_PU>;
pmk8350_xo_therm {
reg = <PMK8350_ADC7_AMUX_THM1_100K_PU>;
qcom,ratiometric;
qcom,hw-settle-time = <200>;
};
pm6450_quiet_therm {
reg = <PM6450_ADC7_AMUX1_GPIO2_100K_PU>;
qcom,ratiometric;
qcom,hw-settle-time = <200>;
};
pmk8350_wide_rfc_therm {
reg = <PMK8350_ADC7_AMUX_THM2_100K_PU>;
qcom,ratiometric;
qcom,hw-settle-time = <200>;
};
pm6450_rear_cam_flash_therm {
reg = <PM6450_ADC7_AMUX4_GPIO5_100K_PU>;
qcom,ratiometric;
qcom,hw-settle-time = <200>;
};
pm6450_msm_therm {
reg = <PM6450_ADC7_AMUX2_GPIO3_100K_PU>;
qcom,ratiometric;
qcom,hw-settle-time = <200>;
};
};
&pmk8350_gpios {
wide_rfc_therm {
wide_rfc_therm_default: wide_rfc_therm_default {
pins = "gpio1";
bias-high-impedance;
};
};
};
&pmk8350_sdam_23 {
adc_scaling: scaling@bf {
reg = <0xbf 0x1>;
bits = <0 2>;
};
};
&pmk8350_sdam_1 {
ufs_dev: ufs_dev@94 {
reg = <0x94 0x1>;
bits = <0 0>;
};
};
&pm6450_gpios {
quiet_therm {
quiet_therm_default: quiet_therm_default {
pins = "gpio2";
bias-high-impedance;
};
};
rear_cam_flash_therm {
rear_cam_flash_therm_default: rear_cam_flash_therm_default {
pins = "gpio5";
bias-high-impedance;
};
};
msm_therm {
msm_therm_default: msm_therm_default {
pins = "gpio3";
bias-high-impedance;
};
};
};
&thermal_zones {
sys-therm-0 {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&pmk8350_adc_tm PMK8350_ADC7_AMUX_THM1_100K_PU>;
trips {
active-config0 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
active-config1 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
};
};
sys-therm-1 {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&pmk8350_adc_tm PMK8350_ADC7_AMUX_THM2_100K_PU>;
trips {
active-config0 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
active-config1 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
};
};
sys-therm-2 {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&pmk8350_adc_tm PM6450_ADC7_AMUX1_GPIO2_100K_PU>;
trips {
active-config0 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
active-config1 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
};
};
sys-therm-3 {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&pmk8350_adc_tm PM6450_ADC7_AMUX4_GPIO5_100K_PU>;
trips {
active-config0 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
active-config1 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
};
};
sys-therm-4 {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&pmk8350_adc_tm PM6450_ADC7_AMUX2_GPIO3_100K_PU>;
trips {
active-config0 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
active-config1 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
};
};
};
&tlmm {
key_vol_up_default: key_vol_up_default {
mux {
pins = "gpio53";
function = "gpio";
};
config {
pins = "gpio53";
drive-strength = <2>;
bias-pull-up;
input-enable;
};
};
pm8010m_active: pm8010m-active {
mux {
pins = "gpio29";
function = "gpio";
};
config {
pins = "gpio29";
bias-pull-up;
output-high;
drive-strength = <2>;
};
};
pm8010n_active: pm8010n-active {
mux {
pins = "gpio30";
function = "gpio";
};
config {
pins = "gpio30";
bias-pull-up;
output-high;
drive-strength = <2>;
};
};
};
&soc {
gpio_keys {
compatible = "gpio-keys";
label = "gpio-keys";
pinctrl-names = "default";
pinctrl-0 = <&key_vol_up_default>;
vol_up {
label = "volume_up";
gpios = <&tlmm 53 GPIO_ACTIVE_LOW>;
linux,input-type = <1>;
linux,code = <KEY_VOLUMEUP>;
gpio-key,wakeup;
debounce-interval = <15>;
linux,can-disable;
};
};
};
/*
* Each QUP device that's a parent to PMIC must be listed as a critical device
* to GCC
*/
&gcc {
qcom,critical-devices = <&qupv3_se8_i2c>;
};
&qupv3_se8_i2c {
#address-cells = <1>;
#size-cells = <0>;
status = "ok";
pm8010m@8 {
compatible = "qcom,i2c-pmic";
reg = <0x8>;
#address-cells = <1>;
#size-cells = <0>;
pinctrl-names = "default";
pinctrl-0 = <&pm8010m_active>;
pm8010-chip@900 {
compatible = "qcom,pm8008-chip";
reg = <0x900>;
PM8010M_EN: qcom,pm8008-chip-en {
regulator-name = "pm8010m-chip-en";
};
};
qcom,revid@100 {
compatible = "qcom,qpnp-revid";
reg = <0x100>;
};
};
pm8010m@9 {
compatible = "qcom,i2c-pmic";
reg = <0x9>;
#address-cells = <1>;
#size-cells = <0>;
qcom,pm8010m-regulator {
compatible = "qcom,pm8010-regulator";
#address-cells = <1>;
#size-cells = <0>;
pm8008_en-supply = <&PM8010M_EN>;
vdd_l1_l2-supply = <&S8B>;
L1M: pm8010m_l1: regulator@4000 {
reg = <0x4000>;
regulator-name = "pm8010m_l1";
regulator-min-microvolt = <1000000>;
regulator-max-microvolt = <1200000>;
qcom,min-dropout-voltage = <88000>;
qcom,hpm-min-load = <30000>;
};
L2M: pm8010m_l2: regulator@4100 {
reg = <0x4100>;
regulator-name = "pm8010m_l2";
regulator-min-microvolt = <950000>;
regulator-max-microvolt = <1150000>;
qcom,min-dropout-voltage = <64000>;
qcom,hpm-min-load = <30000>;
};
L3M: pm8010m_l3: regulator@4200 {
reg = <0x4200>;
regulator-name = "pm8010m_l3";
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <3000000>;
qcom,hpm-min-load = <0>;
};
L4M: pm8010m_l4: regulator@4300 {
reg = <0x4300>;
regulator-name = "pm8010m_l4";
regulator-min-microvolt = <2700000>;
regulator-max-microvolt = <2900000>;
qcom,hpm-min-load = <0>;
};
L6M: pm8010m_l6: regulator@4500 {
reg = <0x4500>;
regulator-name = "pm8010m_l6";
regulator-min-microvolt = <2700000>;
regulator-max-microvolt = <3000000>;
qcom,hpm-min-load = <0>;
};
L7M: pm8010m_l7: regulator@4600 {
reg = <0x4600>;
regulator-name = "pm8010m_l7";
regulator-min-microvolt = <2650000>;
regulator-max-microvolt = <2950000>;
qcom,hpm-min-load = <0>;
};
};
};
pm8010n@c {
compatible = "qcom,i2c-pmic";
reg = <0xc>;
#address-cells = <1>;
#size-cells = <0>;
pinctrl-names = "default";
pinctrl-0 = <&pm8010n_active>;
pm8010-chip@900 {
compatible = "qcom,pm8008-chip";
reg = <0x900>;
PM8010N_EN: qcom,pm8008-chip-en {
regulator-name = "pm8010n-chip-en";
};
};
qcom,revid@100 {
compatible = "qcom,qpnp-revid";
reg = <0x100>;
};
};
pm8010n@d {
compatible = "qcom,i2c-pmic";
reg = <0xd>;
#address-cells = <1>;
#size-cells = <0>;
qcom,pm8010n-regulator {
compatible = "qcom,pm8010-regulator";
#address-cells = <1>;
#size-cells = <0>;
pm8008_en-supply = <&PM8010N_EN>;
vdd_l1_l2-supply = <&S8B>;
vdd_l3_l4-supply = <&S9B>;
L1N: pm8010n_l1: regulator@4000 {
reg = <0x4000>;
regulator-name = "pm8010n_l1";
regulator-min-microvolt = <950000>;
regulator-max-microvolt = <1150000>;
qcom,min-dropout-voltage = <48000>;
qcom,hpm-min-load = <30000>;
};
L3N: pm8010n_l3: regulator@4200 {
reg = <0x4200>;
regulator-name = "pm8010n_l3";
regulator-min-microvolt = <1792000>;
regulator-max-microvolt = <3312000>;
qcom,hpm-min-load = <0>;
};
L4N: pm8010n_l4: regulator@4300 {
reg = <0x4300>;
regulator-name = "pm8010N_l4";
regulator-min-microvolt = <1792000>;
regulator-max-microvolt = <1900000>;
qcom,hpm-min-load = <0>;
};
L6N: pm8010n_l6: regulator@4500 {
reg = <0x4500>;
regulator-name = "pm8010n_l6";
regulator-min-microvolt = <2700000>;
regulator-max-microvolt = <3000000>;
qcom,hpm-min-load = <0>;
};
};
};
};

View File

@@ -1,3 +1,5 @@
#include "ravelin-pmic-overlay.dtsi"
#include "ravelin-pmi632.dtsi"
&soc {
};

View File

@@ -10,6 +10,7 @@
#include <dt-bindings/interconnect/qcom,icc.h>
#include <dt-bindings/interconnect/qcom,ravelin.h>
#include <dt-bindings/regulator/qcom,rpmh-regulator-levels.h>
#include <dt-bindings/spmi/spmi.h>
/ {
model = "Qualcomm Technologies, Inc. Ravelin";
@@ -325,7 +326,6 @@
};
#include "ravelin-stub-regulator.dtsi"
#include "msm-arm-smmu-ravelin.dtsi"
#include "ravelin-dma-heaps.dtsi"
#include "ravelin-reserved-memory.dtsi"
@@ -416,6 +416,7 @@
&firmware {
qcom_scm {
compatible = "qcom,scm";
qcom,dload-mode = <&tcsr 0x13000>;
};
qtee_shmbridge {
@@ -1949,6 +1950,87 @@
};
};
spmi_bus: spmi0_bus: qcom,spmi@c42d000 {
compatible = "qcom,spmi-pmic-arb";
reg = <0xc42d000 0x4000>,
<0xc400000 0x3000>,
<0xc500000 0x400000>,
<0xc440000 0x80000>,
<0xc4c0000 0x10000>;
reg-names = "cnfg", "core", "chnls", "obsrvr", "intr";
interrupts-extended = <&pdc 1 IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "periph_irq";
interrupt-controller;
#interrupt-cells = <4>;
#address-cells = <2>;
#size-cells = <0>;
cell-index = <0>;
qcom,channel = <0>;
qcom,ee = <0>;
qcom,bus-id = <0>;
};
spmi0_debug_bus: qcom,spmi-debug@10b14000 {
compatible = "qcom,spmi-pmic-arb-debug";
reg = <0x10b14000 0x60>, <0x221c8784 0x4>;
reg-names = "core", "fuse";
clocks = <&aoss_qmp>;
clock-names = "core_clk";
qcom,fuse-enable-bit = <18>;
#address-cells = <2>;
#size-cells = <0>;
depends-on-supply = <&spmi0_bus>;
qcom,pmk8350-debug@0 {
compatible = "qcom,spmi-pmic";
reg = <0 SPMI_USID>;
#address-cells = <2>;
#size-cells = <0>;
qcom,can-sleep;
};
qcom,pm6450-debug@1 {
compatible = "qcom,spmi-pmic";
reg = <1 SPMI_USID>;
#address-cells = <2>;
#size-cells = <0>;
qcom,can-sleep;
};
qcom,pm8010-debug@4 {
compatible = "qcom,spmi-pmic";
reg = <4 SPMI_USID>;
#address-cells = <2>;
#size-cells = <0>;
qcom,can-sleep;
};
};
qcom,pmic_glink {
compatible = "qcom,pmic-glink";
qcom,pmic-glink-channel = "PMIC_RTR_ADSP_APPS";
qcom,subsys-name = "lpass";
qcom,protection-domain = "tms/servreg", "msm/adsp/charger_pd";
depends-on-supply = <&ipcc_mproc>;
status = "disabled";
battery_charger: qcom,battery_charger {
compatible = "qcom,battery-charger";
status = "disabled";
};
ucsi: qcom,ucsi {
compatible = "qcom,ucsi-glink";
status = "disabled";
};
altmode: qcom,altmode {
compatible = "qcom,altmode-glink";
#altmode-cells = <1>;
status = "disabled";
};
};
thermal_zones: thermal-zones {
};
@@ -2000,6 +2082,7 @@
#include "diwali-gdsc.dtsi"
#include "ipcc-test-ravelin.dtsi"
#include "ravelin-qupv3.dtsi"
#include "ravelin-regulators.dtsi"
&qupv3_se7_2uart {
status = "ok";