On 22/06/2020 13:50, Wen Su wrote: > Hi Matthias, > > On Mon, 2020-06-22 at 12:12 +0200, Matthias Brugger wrote: >> >> On 22/06/2020 08:40, Wen Su wrote: >>> From: "Wen Su" <wen.su@xxxxxxxxxxxx> >>> >>> add PMIC MT6359 related nodes which is for MT6779 platform >>> >>> Signed-off-by: Wen Su <wen.su@xxxxxxxxxxxx> >>> --- >>> arch/arm64/boot/dts/mediatek/mt6359.dtsi | 306 +++++++++++++++++++++++++++++++ >>> 1 file changed, 306 insertions(+) >>> create mode 100644 arch/arm64/boot/dts/mediatek/mt6359.dtsi >>> >>> diff --git a/arch/arm64/boot/dts/mediatek/mt6359.dtsi b/arch/arm64/boot/dts/mediatek/mt6359.dtsi >>> new file mode 100644 >>> index 0000000..4cafe1f >>> --- /dev/null >>> +++ b/arch/arm64/boot/dts/mediatek/mt6359.dtsi >>> @@ -0,0 +1,306 @@ >>> +// SPDX-License-Identifier: GPL-2.0 >>> +/* >>> + * Copyright (c) 2019 MediaTek Inc. >>> + */ >>> + >>> +&pwrap { >>> + pmic: pmic { >>> + mt6359regulator: mt6359regulator { >> >> you are missing: >> compatible = "mediatek,mt6359"; >> don't you? > > I think this compatible string is for MFD driver. > And the MFD instantiate the regulator driver when it probes. > So this regulator patch set remove this compatible string. > Is it better to add this compatible string in this patch set ? > Thanks for your suggestion. > Did you test the patch, does the regulator get's initialized? From what I understand pmic wrapper is looking for a compatible string of the PMIC to get the pwrap_slv_type. If this is not the case, then please fix the binding documentation. Regards, Matthias >> >> Regards, >> Matthias >> >>> + compatible = "mediatek,mt6359-regulator"; >>> + mt6359_vs1_buck_reg: buck_vs1 { >>> + regulator-name = "vs1"; >>> + regulator-min-microvolt = <800000>; >>> + regulator-max-microvolt = <2200000>; >>> + regulator-enable-ramp-delay = <0>; >>> + regulator-always-on; >>> + }; >>> + mt6359_vgpu11_buck_reg: buck_vgpu11 { >>> + regulator-name = "vgpu11"; >>> + regulator-min-microvolt = <400000>; >>> + regulator-max-microvolt = <1193750>; >>> + regulator-ramp-delay = <5000>; >>> + regulator-enable-ramp-delay = <200>; >>> + regulator-always-on; >>> + regulator-allowed-modes = <0 1 2>; >>> + }; >>> + mt6359_vmodem_buck_reg: buck_vmodem { >>> + regulator-name = "vmodem"; >>> + regulator-min-microvolt = <400000>; >>> + regulator-max-microvolt = <1100000>; >>> + regulator-ramp-delay = <10760>; >>> + regulator-enable-ramp-delay = <200>; >>> + regulator-always-on; >>> + }; >>> + mt6359_vpu_buck_reg: buck_vpu { >>> + regulator-name = "vpu"; >>> + regulator-min-microvolt = <400000>; >>> + regulator-max-microvolt = <1193750>; >>> + regulator-ramp-delay = <5000>; >>> + regulator-enable-ramp-delay = <200>; >>> + regulator-allowed-modes = <0 1 2>; >>> + }; >>> + mt6359_vcore_buck_reg: buck_vcore { >>> + regulator-name = "vcore"; >>> + regulator-min-microvolt = <400000>; >>> + regulator-max-microvolt = <1193750>; >>> + regulator-ramp-delay = <5000>; >>> + regulator-enable-ramp-delay = <200>; >>> + regulator-always-on; >>> + regulator-allowed-modes = <0 1 2>; >>> + }; >>> + mt6359_vs2_buck_reg: buck_vs2 { >>> + regulator-name = "vs2"; >>> + regulator-min-microvolt = <800000>; >>> + regulator-max-microvolt = <1600000>; >>> + regulator-enable-ramp-delay = <0>; >>> + regulator-always-on; >>> + }; >>> + mt6359_vpa_buck_reg: buck_vpa { >>> + regulator-name = "vpa"; >>> + regulator-min-microvolt = <500000>; >>> + regulator-max-microvolt = <3650000>; >>> + regulator-enable-ramp-delay = <300>; >>> + }; >>> + mt6359_vproc2_buck_reg: buck_vproc2 { >>> + regulator-name = "vproc2"; >>> + regulator-min-microvolt = <400000>; >>> + regulator-max-microvolt = <1193750>; >>> + regulator-ramp-delay = <7500>; >>> + regulator-enable-ramp-delay = <200>; >>> + regulator-always-on; >>> + regulator-allowed-modes = <0 1 2>; >>> + }; >>> + mt6359_vproc1_buck_reg: buck_vproc1 { >>> + regulator-name = "vproc1"; >>> + regulator-min-microvolt = <400000>; >>> + regulator-max-microvolt = <1193750>; >>> + regulator-ramp-delay = <7500>; >>> + regulator-enable-ramp-delay = <200>; >>> + regulator-always-on; >>> + regulator-allowed-modes = <0 1 2>; >>> + }; >>> + mt6359_vcore_sshub_buck_reg: buck_vcore_sshub { >>> + regulator-name = "vcore_sshub"; >>> + regulator-min-microvolt = <400000>; >>> + regulator-max-microvolt = <1193750>; >>> + }; >>> + mt6359_vaud18_ldo_reg: ldo_vaud18 { >>> + regulator-name = "vaud18"; >>> + regulator-min-microvolt = <1800000>; >>> + regulator-max-microvolt = <1800000>; >>> + regulator-enable-ramp-delay = <240>; >>> + }; >>> + mt6359_vsim1_ldo_reg: ldo_vsim1 { >>> + regulator-name = "vsim1"; >>> + regulator-min-microvolt = <1700000>; >>> + regulator-max-microvolt = <3100000>; >>> + regulator-enable-ramp-delay = <480>; >>> + }; >>> + mt6359_vibr_ldo_reg: ldo_vibr { >>> + regulator-name = "vibr"; >>> + regulator-min-microvolt = <1200000>; >>> + regulator-max-microvolt = <3300000>; >>> + regulator-enable-ramp-delay = <240>; >>> + }; >>> + mt6359_vrf12_ldo_reg: ldo_vrf12 { >>> + regulator-name = "vrf12"; >>> + regulator-min-microvolt = <1100000>; >>> + regulator-max-microvolt = <1300000>; >>> + regulator-enable-ramp-delay = <120>; >>> + }; >>> + mt6359_vusb_ldo_reg: ldo_vusb { >>> + regulator-name = "vusb"; >>> + regulator-min-microvolt = <3000000>; >>> + regulator-max-microvolt = <3000000>; >>> + regulator-enable-ramp-delay = <240>; >>> + regulator-always-on; >>> + }; >>> + mt6359_vsram_proc2_ldo_reg: ldo_vsram_proc2 { >>> + regulator-name = "vsram_proc2"; >>> + regulator-min-microvolt = <500000>; >>> + regulator-max-microvolt = <1193750>; >>> + regulator-ramp-delay = <7500>; >>> + regulator-enable-ramp-delay = <240>; >>> + regulator-always-on; >>> + }; >>> + mt6359_vio18_ldo_reg: ldo_vio18 { >>> + regulator-name = "vio18"; >>> + regulator-min-microvolt = <1700000>; >>> + regulator-max-microvolt = <1900000>; >>> + regulator-enable-ramp-delay = <960>; >>> + regulator-always-on; >>> + }; >>> + mt6359_vcamio_ldo_reg: ldo_vcamio { >>> + regulator-name = "vcamio"; >>> + regulator-min-microvolt = <1700000>; >>> + regulator-max-microvolt = <1900000>; >>> + regulator-enable-ramp-delay = <1920>; >>> + }; >>> + mt6359_vcn18_ldo_reg: ldo_vcn18 { >>> + regulator-name = "vcn18"; >>> + regulator-min-microvolt = <1800000>; >>> + regulator-max-microvolt = <1800000>; >>> + regulator-enable-ramp-delay = <240>; >>> + }; >>> + mt6359_vfe28_ldo_reg: ldo_vfe28 { >>> + regulator-name = "vfe28"; >>> + regulator-min-microvolt = <2800000>; >>> + regulator-max-microvolt = <2800000>; >>> + regulator-enable-ramp-delay = <120>; >>> + regulator-always-on; >>> + }; >>> + mt6359_vcn13_ldo_reg: ldo_vcn13 { >>> + regulator-name = "vcn13"; >>> + regulator-min-microvolt = <900000>; >>> + regulator-max-microvolt = <1300000>; >>> + regulator-enable-ramp-delay = <240>; >>> + }; >>> + mt6359_vcn33_1_bt_ldo_reg: ldo_vcn33_1_bt { >>> + regulator-name = "vcn33_1_bt"; >>> + regulator-min-microvolt = <2800000>; >>> + regulator-max-microvolt = <3500000>; >>> + regulator-enable-ramp-delay = <240>; >>> + }; >>> + mt6359_vcn33_1_wifi_ldo_reg: ldo_vcn33_1_wifi { >>> + regulator-name = "vcn33_1_wifi"; >>> + regulator-min-microvolt = <2800000>; >>> + regulator-max-microvolt = <3500000>; >>> + regulator-enable-ramp-delay = <240>; >>> + }; >>> + mt6359_vaux18_ldo_reg: ldo_vaux18 { >>> + regulator-name = "vaux18"; >>> + regulator-min-microvolt = <1800000>; >>> + regulator-max-microvolt = <1800000>; >>> + regulator-enable-ramp-delay = <240>; >>> + regulator-always-on; >>> + }; >>> + mt6359_vsram_others_ldo_reg: ldo_vsram_others { >>> + regulator-name = "vsram_others"; >>> + regulator-min-microvolt = <500000>; >>> + regulator-max-microvolt = <1193750>; >>> + regulator-ramp-delay = <5000>; >>> + regulator-enable-ramp-delay = <240>; >>> + regulator-always-on; >>> + }; >>> + mt6359_vefuse_ldo_reg: ldo_vefuse { >>> + regulator-name = "vefuse"; >>> + regulator-min-microvolt = <1700000>; >>> + regulator-max-microvolt = <2000000>; >>> + regulator-enable-ramp-delay = <240>; >>> + }; >>> + mt6359_vxo22_ldo_reg: ldo_vxo22 { >>> + regulator-name = "vxo22"; >>> + regulator-min-microvolt = <1800000>; >>> + regulator-max-microvolt = <2200000>; >>> + regulator-enable-ramp-delay = <120>; >>> + regulator-always-on; >>> + }; >>> + mt6359_vrfck_ldo_reg: ldo_vrfck { >>> + regulator-name = "vrfck"; >>> + regulator-min-microvolt = <1500000>; >>> + regulator-max-microvolt = <1700000>; >>> + regulator-enable-ramp-delay = <480>; >>> + }; >>> + mt6359_vbif28_ldo_reg: ldo_vbif28 { >>> + regulator-name = "vbif28"; >>> + regulator-min-microvolt = <2800000>; >>> + regulator-max-microvolt = <2800000>; >>> + regulator-enable-ramp-delay = <240>; >>> + regulator-always-on; >>> + }; >>> + mt6359_vio28_ldo_reg: ldo_vio28 { >>> + regulator-name = "vio28"; >>> + regulator-min-microvolt = <2800000>; >>> + regulator-max-microvolt = <3300000>; >>> + regulator-enable-ramp-delay = <240>; >>> + regulator-always-on; >>> + }; >>> + mt6359_vemc_ldo_reg: ldo_vemc { >>> + regulator-name = "vemc"; >>> + regulator-min-microvolt = <2900000>; >>> + regulator-max-microvolt = <3300000>; >>> + regulator-enable-ramp-delay = <240>; >>> + }; >>> + mt6359_vcn33_2_bt_ldo_reg: ldo_vcn33_2_bt { >>> + regulator-name = "vcn33_2_bt"; >>> + regulator-min-microvolt = <2800000>; >>> + regulator-max-microvolt = <3500000>; >>> + regulator-enable-ramp-delay = <240>; >>> + }; >>> + mt6359_vcn33_2_wifi_ldo_reg: ldo_vcn33_2_wifi { >>> + regulator-name = "vcn33_2_wifi"; >>> + regulator-min-microvolt = <2800000>; >>> + regulator-max-microvolt = <3500000>; >>> + regulator-enable-ramp-delay = <240>; >>> + }; >>> + mt6359_va12_ldo_reg: ldo_va12 { >>> + regulator-name = "va12"; >>> + regulator-min-microvolt = <1200000>; >>> + regulator-max-microvolt = <1300000>; >>> + regulator-enable-ramp-delay = <240>; >>> + regulator-always-on; >>> + }; >>> + mt6359_va09_ldo_reg: ldo_va09 { >>> + regulator-name = "va09"; >>> + regulator-min-microvolt = <800000>; >>> + regulator-max-microvolt = <1200000>; >>> + regulator-enable-ramp-delay = <240>; >>> + regulator-always-on; >>> + }; >>> + mt6359_vrf18_ldo_reg: ldo_vrf18 { >>> + regulator-name = "vrf18"; >>> + regulator-min-microvolt = <1700000>; >>> + regulator-max-microvolt = <1810000>; >>> + regulator-enable-ramp-delay = <120>; >>> + regulator-always-on; >>> + }; >>> + mt6359_vsram_md_ldo_reg: ldo_vsram_md { >>> + regulator-name = "vsram_md"; >>> + regulator-min-microvolt = <500000>; >>> + regulator-max-microvolt = <1100000>; >>> + regulator-ramp-delay = <10760>; >>> + regulator-enable-ramp-delay = <240>; >>> + regulator-always-on; >>> + }; >>> + mt6359_vufs_ldo_reg: ldo_vufs { >>> + regulator-name = "vufs"; >>> + regulator-min-microvolt = <1700000>; >>> + regulator-max-microvolt = <1900000>; >>> + regulator-enable-ramp-delay = <1920>; >>> + regulator-always-on; >>> + }; >>> + mt6359_vm18_ldo_reg: ldo_vm18 { >>> + regulator-name = "vm18"; >>> + regulator-min-microvolt = <1700000>; >>> + regulator-max-microvolt = <1900000>; >>> + regulator-enable-ramp-delay = <1920>; >>> + regulator-always-on; >>> + }; >>> + mt6359_vbbck_ldo_reg: ldo_vbbck { >>> + regulator-name = "vbbck"; >>> + regulator-min-microvolt = <1100000>; >>> + regulator-max-microvolt = <1200000>; >>> + regulator-enable-ramp-delay = <240>; >>> + }; >>> + mt6359_vsram_proc1_ldo_reg: ldo_vsram_proc1 { >>> + regulator-name = "vsram_proc1"; >>> + regulator-min-microvolt = <500000>; >>> + regulator-max-microvolt = <1193750>; >>> + regulator-ramp-delay = <7500>; >>> + regulator-enable-ramp-delay = <240>; >>> + regulator-always-on; >>> + }; >>> + mt6359_vsim2_ldo_reg: ldo_vsim2 { >>> + regulator-name = "vsim2"; >>> + regulator-min-microvolt = <1700000>; >>> + regulator-max-microvolt = <3100000>; >>> + regulator-enable-ramp-delay = <480>; >>> + }; >>> + mt6359_vsram_others_sshub_ldo: ldo_vsram_others_sshub { >>> + regulator-name = "vsram_others_sshub"; >>> + regulator-min-microvolt = <500000>; >>> + regulator-max-microvolt = <1193750>; >>> + }; >>> + }; >>> + }; >>> +}; >>> >