ARM: dts: msm: Add support for diwali QRD platform with PM8350B

This is an example change of adding PM8350B supporting in diwali QRD
platform.

Change-Id: I53e2d04859657eccc5dd92cf557d7fcd9ccce2d7
This commit is contained in:
Fenglin Wu
2023-03-16 18:04:30 +08:00
parent 3ba27e2e63
commit 72119e52ba
7 changed files with 373 additions and 2 deletions

View File

@@ -226,7 +226,8 @@ dtbo-$(CONFIG_ARCH_DIWALI) += diwali-rumi-overlay.dtbo \
diwali-idp-usbc-overlay.dtbo \
diwali-idp-hsp-overlay.dtbo \
diwali-idp-nopmi-overlay.dtbo \
diwali-qrd-nopmi-overlay.dtbo
diwali-qrd-nopmi-overlay.dtbo \
diwali-qrd-pm8350b-overlay.dtbo
diwali-rumi-overlay.dtbo-base := diwali.dtb
diwali-idp-overlay.dtbo-base := diwali.dtb diwalip.dtb diwali-lte.dtb
@@ -237,6 +238,7 @@ diwali-idp-usbc-overlay.dtbo-base := diwali.dtb diwalip.dtb diwali-lte.dtb
diwali-idp-hsp-overlay.dtbo-base := diwali-hsp.dtb diwalip.dtb diwali-lte.dtb
diwali-idp-nopmi-overlay.dtbo-base := diwali.dtb diwalip.dtb diwali-lte.dtb
diwali-qrd-nopmi-overlay.dtbo-base := diwali.dtb diwalip.dtb diwali-lte.dtb
diwali-qrd-pm8350b-overlay.dtbo-base := diwali.dtb diwalip.dtb diwali-lte.dtb
else
dtb-$(CONFIG_ARCH_DIWALI) += diwali-rumi.dtb \
diwali-idp.dtb \
@@ -247,6 +249,7 @@ dtb-$(CONFIG_ARCH_DIWALI) += diwali-rumi.dtb \
diwali-idp-hsp.dtb \
diwali-idp-nopmi.dtb \
diwali-qrd-nopmi.dtb \
diwali-qrd-pm8350b.dtb \
diwalip-idp.dtb \
diwalip-atp.dtb \
diwalip-qrd.dtb \
@@ -255,6 +258,7 @@ dtb-$(CONFIG_ARCH_DIWALI) += diwali-rumi.dtb \
diwalip-idp-hsp.dtb \
diwalip-idp-nopmi.dtb \
diwalip-qrd-nopmi.dtb \
diwalip-qrd-pm8350b.dtb \
diwali-lte-idp.dtb \
diwali-lte-atp.dtb \
diwali-lte-qrd.dtb \
@@ -262,7 +266,8 @@ dtb-$(CONFIG_ARCH_DIWALI) += diwali-rumi.dtb \
diwali-lte-idp-usbc.dtb \
diwali-lte-idp-hsp.dtb \
diwali-lte-idp-nopmi.dtb \
diwali-lte-qrd-nopmi.dtb
diwali-lte-qrd-nopmi.dtbi \
diwali-lte-qrd-pm8350b.dtb
endif
ifeq ($(CONFIG_BUILD_ARM64_DT_OVERLAY),y)

View File

@@ -0,0 +1,11 @@
/dts-v1/;
#include "diwali-lte.dtsi"
#include "diwali-qrd.dtsi"
#include "diwali-qrd-pm8350b.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Diwali LTE QRD";
compatible = "qcom,diwali-lte-qrd", "qcom,diwali-lte", "qcom,qrd";
qcom,board-id = <0x1000B 0>;
};

239
qcom/diwali-pm8350b.dtsi Normal file
View File

@@ -0,0 +1,239 @@
#include <dt-bindings/clock/qcom,rpmh.h>
#include <dt-bindings/iio/qcom,spmi-adc7-smb139x.h>
#include <dt-bindings/regulator/qcom,rpmh-regulator-levels.h>
#include <dt-bindings/thermal/thermal_qti.h>
#include "pm8350b.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 = <&spmi1_bus>;
/* Primary SPMI bus */
spmi@0 {
reg = <0>;
#address-cells = <2>;
#size-cells = <0>;
qcom,pm8350b-debug@3 {
compatible = "qcom,spmi-pmic";
reg = <3 SPMI_USID>;
qcom,can-sleep;
};
};
/* Secondary SPMI bus */
spmi@1 {
reg = <1>;
#address-cells = <2>;
#size-cells = <0>;
smb1394_glink_debug: qcom,smb1394-debug@9 {
compatible = "qcom,spmi-pmic";
reg = <9 SPMI_USID>;
qcom,can-sleep;
};
qcom,smb1394-debug@b {
compatible = "qcom,spmi-pmic";
reg = <11 SPMI_USID>;
qcom,can-sleep;
};
qcom,smb1394-debug@c {
compatible = "qcom,spmi-pmic";
reg = <12 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 {
depends-on2-supply = <&smb1394_glink_debug>;
qcom,pm8350b-debug@3 {
compatible = "qcom,spmi-pmic";
reg = <3 SPMI_USID>;
#address-cells = <2>;
#size-cells = <0>;
qcom,can-sleep;
};
};
&apps_rsc {
rpmh-regulator-ldod1 {
compatible = "qcom,rpmh-vrm-regulator";
qcom,resource-name = "ldod1";
qcom,regulator-type = "pmic5-ldo";
qcom,supported-modes =
<RPMH_REGULATOR_MODE_LPM
RPMH_REGULATOR_MODE_HPM>;
qcom,mode-threshold-currents = <0 30000>;
L1D: pm8350b_l1: regulator-pm8350b-l1 {
regulator-name = "pm8350b_l1";
qcom,set = <RPMH_REGULATOR_SET_ALL>;
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1296000>;
qcom,init-voltage = <1200000>;
qcom,init-mode = <RPMH_REGULATOR_MODE_HPM>;
};
};
};
&pmk8350_sdam_2 {
hap_cl_brake: cl_brake@7c {
reg = <0x7c 0x1>;
bits = <0 8>;
};
};
&pm8350b_haptics {
nvmem-cell-names = "hap_cl_brake";
nvmem-cells = <&hap_cl_brake>;
nvmem-names = "hap_cfg_sdam";
nvmem = <&pmk8350_sdam_46>;
qcom,pbs-client = <&pm8350b_pbs2>;
};
&pmk8350_vadc {
pm8350b_ref_gnd {
reg = <PM8350B_ADC7_REF_GND>;
label = "pm8350b_ref_gnd";
qcom,pre-scaling = <1 1>;
};
pm8350b_vref_1p25 {
reg = <PM8350B_ADC7_1P25VREF>;
label = "pm8350b_vref_1p25";
qcom,pre-scaling = <1 1>;
};
pm8350b_die_temp {
reg = <PM8350B_ADC7_DIE_TEMP>;
label = "pm8350b_die_temp";
qcom,pre-scaling = <1 1>;
};
pm8350b_vph_pwr {
reg = <PM8350B_ADC7_VPH_PWR>;
label = "pm8350b_vph_pwr";
qcom,pre-scaling = <1 3>;
};
pm8350b_vbat_sns {
reg = <PM8350B_ADC7_VBAT_SNS>;
label = "pm8350b_vbat_sns";
qcom,pre-scaling = <1 3>;
};
pm8350b_chg_temp {
reg = <PM8350B_ADC7_CHG_TEMP>;
label = "pm8350b_chg_temp";
qcom,pre-scaling = <1 1>;
};
pm8350b_iin_fb {
reg = <PM8350B_ADC7_IIN_FB>;
label = "pm8350b_iin_fb";
qcom,pre-scaling = <32 100>;
};
pm8350b_ichg_fb {
reg = <PM8350B_ADC7_ICHG_FB>;
label = "pm8350b_ichg_fb";
qcom,pre-scaling = <1000 305185>;
};
pm8350b_usb_in_v_div_16 {
reg = <PM8350B_ADC7_USB_IN_V_16>;
label = "pm8350b_usb_in_v_div_16";
qcom,pre-scaling = <1 16>;
};
smb139x_1_smb_temp {
reg = <SMB1394_1_ADC7_SMB_TEMP>;
label = "smb139x_1_smb_temp";
qcom,hw-settle-time = <200>;
};
smb139x_1_ichg_smb {
reg = <SMB1394_1_ADC7_ICHG_SMB>;
label = "smb139x_1_ichg_smb";
qcom,hw-settle-time = <200>;
};
smb139x_1_iin_smb {
reg = <SMB1394_1_ADC7_IIN_SMB>;
label = "smb139x_1_iin_smb";
qcom,hw-settle-time = <200>;
};
smb139x_2_smb_temp {
reg = <SMB1394_2_ADC7_SMB_TEMP>;
label = "smb139x_2_smb_temp";
qcom,hw-settle-time = <200>;
};
smb139x_2_ichg_smb {
reg = <SMB1394_2_ADC7_ICHG_SMB>;
label = "smb139x_2_ichg_smb";
qcom,hw-settle-time = <200>;
};
smb139x_2_iin_smb {
reg = <SMB1394_2_ADC7_IIN_SMB>;
label = "smb139x_2_iin_smb";
qcom,hw-settle-time = <200>;
};
};
&pm8350b_tz {
io-channels = <&pmk8350_vadc PM8350B_ADC7_DIE_TEMP>;
io-channel-names = "thermal";
};

View File

@@ -0,0 +1,12 @@
/dts-v1/;
/plugin/;
#include "diwali-qrd.dtsi"
#include "diwali-qrd-pm8350b.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Diwali QRD";
compatible = "qcom,diwali-qrd", "qcom,diwali", "qcom,qrd";
qcom,msm-id = <506 0x10000>, <547 0x10000>, <564 0x10000>;
qcom,board-id = <0x1000B 0>;
};

View File

@@ -0,0 +1,11 @@
/dts-v1/;
#include "diwali.dtsi"
#include "diwali-qrd.dtsi"
#include "diwali-qrd-pm8350b.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Diwali QRD";
compatible = "qcom,diwali-qrd", "qcom,diwali", "qcom,qrd";
qcom,board-id = <0x1000B 0>;
};

View File

@@ -0,0 +1,82 @@
#include "diwali-pm8350b.dtsi"
/ {
qcom,pmic-id-size = <4>;
qcom,pmic-id = <0x0 0x0 0x0 0x32>;
};
&battery_charger {
qcom,thermal-mitigation = <11500000 11000000 10500000 10000000 9500000
9000000 8500000 8000000 7500000 7000000 6500000
6000000 5500000 5000000 4500000 4000000 3500000
3000000 2500000 2000000 1500000 1000000 500000>;
};
&usb0 {
usb-role-switch;
extcon = <&eud>;
dwc3@a600000 {
usb-role-switch;
dr_mode = "otg";
};
port {
usb_port0: endpoint {
remote-endpoint = <&usb_port0_connector>;
};
};
};
&ucsi {
connector {
port {
usb_port0_connector: endpoint {
remote-endpoint = <&usb_port0>;
};
};
};
};
&qupv3_se2_i2c {
status = "ok";
redriver: redriver@1c {
compatible = "onnn,redriver";
reg = <0x1c>;
pinctrl-names = "default";
pinctrl-0 = <&usb3phy_portselect_gpio>;
gpios = <&tlmm 122 0>;
lane-channel-swap;
eq = /bits/ 8 <
/* Parameters for USB */
0x7 0x4 0x4 0x4
/* Parameters for DP */
0x7 0x5 0x5 0x7>;
flat-gain = /bits/ 8 <
/* Parameters for USB */
0x2 0x1 0x1 0x3
/* Parameters for DP */
0x0 0x3 0x3 0x0>;
output-comp = /bits/ 8 <
/* Parameters for USB */
0x3 0x3 0x3 0x3
/* Parameters for DP */
0x3 0x3 0x3 0x3>;
loss-match = /bits/ 8 <
/* Parameters for USB */
0x1 0x3 0x3 0x1
/* Parameters for DP */
0x3 0x3 0x3 0x3>;
};
};
&usb_qmp_dp_phy {
pinctrl-names = "unused";
};
&usb0 {
ssusb_redriver = <&redriver>;
};

View File

@@ -0,0 +1,11 @@
/dts-v1/;
#include "diwalip.dtsi"
#include "diwali-qrd.dtsi"
#include "diwali-qrd-pm8350b.dtsi"
/ {
model = "Qualcomm Technologies, Inc. DiwaliP QRD";
compatible = "qcom,diwalip-qrd", "qcom,diwalip", "qcom,qrd";
qcom,board-id = <0x1000B 0>;
};