Message ID | 20230412112739.160376-24-angelogioacchino.delregno@collabora.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | MediaTek Helio X10 - Mailbox, Display, MMC/SD/SDIO | expand |
On 12/04/2023 13:27, AngeloGioacchino Del Regno wrote: > MT6331 is the primary PMIC for the MediaTek Helio X10 MT6795 smartphone > platforms: add a devicetree describing its regulators, Real Time Clock > and PMIC-keys. > > Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com> Applied, thanks > --- > arch/arm64/boot/dts/mediatek/mt6331.dtsi | 284 +++++++++++++++++++++++ > 1 file changed, 289 insertions(+) > create mode 100644 arch/arm64/boot/dts/mediatek/mt6331.dtsi > > diff --git a/arch/arm64/boot/dts/mediatek/mt6331.dtsi b/arch/arm64/boot/dts/mediatek/mt6331.dtsi > new file mode 100644 > index 000000000000..fcec8c07fe39 > --- /dev/null > +++ b/arch/arm64/boot/dts/mediatek/mt6331.dtsi > @@ -0,0 +1,284 @@ > +// SPDX-License-Identifier: (GPL-2.0 OR MIT) > +/* > + * Copyright (c) 2023 Collabora Ltd. > + * Author: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com> > + */ > +#include <dt-bindings/input/input.h> > + > +&pwrap { > + pmic: mt6331 { > + compatible = "mediatek,mt6331"; > + interrupt-controller; > + #interrupt-cells = <2>; > + > + mt6331regulator: mt6331regulator { > + compatible = "mediatek,mt6331-regulator"; > + > + mt6331_vdvfs11_reg: buck-vdvfs11 { > + regulator-name = "vdvfs11"; > + regulator-min-microvolt = <700000>; > + regulator-max-microvolt = <1493750>; > + regulator-ramp-delay = <12500>; > + regulator-enable-ramp-delay = <0>; > + regulator-allowed-modes = <0 1>; > + regulator-always-on; > + }; > + > + mt6331_vdvfs12_reg: buck-vdvfs12 { > + regulator-name = "vdvfs12"; > + regulator-min-microvolt = <700000>; > + regulator-max-microvolt = <1493750>; > + regulator-ramp-delay = <12500>; > + regulator-enable-ramp-delay = <0>; > + regulator-allowed-modes = <0 1>; > + regulator-always-on; > + }; > + > + mt6331_vdvfs13_reg: buck-vdvfs13 { > + regulator-name = "vdvfs13"; > + regulator-min-microvolt = <700000>; > + regulator-max-microvolt = <1493750>; > + regulator-ramp-delay = <12500>; > + regulator-enable-ramp-delay = <0>; > + regulator-allowed-modes = <0 1>; > + regulator-always-on; > + }; > + > + mt6331_vdvfs14_reg: buck-vdvfs14 { > + regulator-name = "vdvfs14"; > + regulator-min-microvolt = <700000>; > + regulator-max-microvolt = <1493750>; > + regulator-ramp-delay = <12500>; > + regulator-enable-ramp-delay = <0>; > + regulator-allowed-modes = <0 1>; > + regulator-always-on; > + }; > + > + mt6331_vcore2_reg: buck-vcore2 { > + regulator-name = "vcore2"; > + regulator-min-microvolt = <700000>; > + regulator-max-microvolt = <1493750>; > + regulator-ramp-delay = <12500>; > + regulator-enable-ramp-delay = <0>; > + regulator-allowed-modes = <0 1>; > + regulator-always-on; > + }; > + > + mt6331_vio18_reg: buck-vio18 { > + regulator-name = "vio18"; > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <1800000>; > + regulator-ramp-delay = <12500>; > + regulator-enable-ramp-delay = <0>; > + regulator-allowed-modes = <0 1>; > + regulator-always-on; > + }; > + > + mt6331_vtcxo1_reg: ldo-vtcxo1 { > + regulator-name = "vtcxo1"; > + regulator-min-microvolt = <2800000>; > + regulator-max-microvolt = <2800000>; > + regulator-ramp-delay = <0>; > + regulator-always-on; > + regulator-boot-on; > + }; > + > + mt6331_vtcxo2_reg: ldo-vtcxo2 { > + regulator-name = "vtcxo2"; > + regulator-min-microvolt = <2800000>; > + regulator-max-microvolt = <2800000>; > + regulator-ramp-delay = <0>; > + regulator-always-on; > + regulator-boot-on; > + }; > + > + mt6331_avdd32_aud_reg: ldo-avdd32aud { > + regulator-name = "avdd32_aud"; > + regulator-min-microvolt = <2800000>; > + regulator-max-microvolt = <3200000>; > + regulator-ramp-delay = <0>; > + regulator-always-on; > + regulator-boot-on; > + }; > + > + mt6331_vauxa32_reg: ldo-vauxa32 { > + regulator-name = "vauxa32"; > + regulator-min-microvolt = <2800000>; > + regulator-max-microvolt = <3200000>; > + regulator-ramp-delay = <0>; > + }; > + > + mt6331_vcama_reg: ldo-vcama { > + regulator-name = "vcama"; > + regulator-min-microvolt = <1500000>; > + regulator-max-microvolt = <2800000>; > + regulator-ramp-delay = <0>; > + }; > + > + mt6331_vio28_reg: ldo-vio28 { > + regulator-name = "vio28"; > + regulator-min-microvolt = <2800000>; > + regulator-max-microvolt = <2800000>; > + regulator-ramp-delay = <0>; > + regulator-always-on; > + regulator-boot-on; > + }; > + > + mt6331_vcamaf_reg: ldo-vcamaf { > + regulator-name = "vcam_af"; > + regulator-min-microvolt = <1200000>; > + regulator-max-microvolt = <3300000>; > + regulator-ramp-delay = <0>; > + }; > + > + mt6331_vmc_reg: ldo-vmc { > + regulator-name = "vmc"; > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <3300000>; > + regulator-ramp-delay = <0>; > + }; > + > + mt6331_vmch_reg: ldo-vmch { > + regulator-name = "vmch"; > + regulator-min-microvolt = <3000000>; > + regulator-max-microvolt = <3300000>; > + regulator-ramp-delay = <0>; > + }; > + > + mt6331_vemc33_reg: ldo-vemc33 { > + regulator-name = "vemc33"; > + regulator-min-microvolt = <3300000>; > + regulator-max-microvolt = <3300000>; > + regulator-ramp-delay = <0>; > + regulator-always-on; > + }; > + > + mt6331_vgp1_reg: ldo-vgp1 { > + regulator-name = "vgp1"; > + regulator-min-microvolt = <1200000>; > + regulator-max-microvolt = <3300000>; > + regulator-ramp-delay = <0>; > + regulator-always-on; > + }; > + > + mt6331_vsim1_reg: ldo-vsim1 { > + regulator-name = "vsim1"; > + regulator-min-microvolt = <1700000>; > + regulator-max-microvolt = <3100000>; > + regulator-ramp-delay = <0>; > + regulator-always-on; > + }; > + > + mt6331_vsim2_reg: ldo-vsim2 { > + regulator-name = "vsim2"; > + regulator-min-microvolt = <1700000>; > + regulator-max-microvolt = <3100000>; > + regulator-ramp-delay = <0>; > + }; > + > + mt6331_vmipi_reg: ldo-vmipi { > + regulator-name = "vmipi"; > + regulator-min-microvolt = <1200000>; > + regulator-max-microvolt = <3300000>; > + regulator-ramp-delay = <0>; > + regulator-always-on; > + }; > + > + mt6331_vibr_reg: ldo-vibr { > + regulator-name = "vibr"; > + regulator-min-microvolt = <1200000>; > + regulator-max-microvolt = <3300000>; > + regulator-ramp-delay = <0>; > + }; > + > + mt6331_vgp4_reg: ldo-vgp4 { > + regulator-name = "vgp4"; > + regulator-min-microvolt = <1600000>; > + regulator-max-microvolt = <2200000>; > + regulator-ramp-delay = <0>; > + regulator-always-on; > + }; > + > + mt6331_vcamd_reg: ldo-vcamd { > + regulator-name = "vcamd"; > + regulator-min-microvolt = <900000>; > + regulator-max-microvolt = <1500000>; > + regulator-ramp-delay = <0>; > + regulator-always-on; > + }; > + > + mt6331_vusb10_reg: ldo-vusb10 { > + regulator-name = "vusb"; > + regulator-min-microvolt = <1000000>; > + regulator-max-microvolt = <1300000>; > + regulator-ramp-delay = <0>; > + regulator-always-on; > + regulator-boot-on; > + }; > + > + mt6331_vcamio_reg: ldo-vcamio { > + regulator-name = "vcam_io"; > + regulator-min-microvolt = <1200000>; > + regulator-max-microvolt = <1800000>; > + regulator-ramp-delay = <0>; > + }; > + > + mt6331_vsram_reg: ldo-vsram { > + regulator-name = "vsram"; > + regulator-min-microvolt = <1012500>; > + regulator-max-microvolt = <1012500>; > + regulator-ramp-delay = <0>; > + regulator-always-on; > + regulator-boot-on; > + }; > + > + mt6331_vgp2_reg: ldo-vgp2 { > + regulator-name = "vgp2"; > + regulator-min-microvolt = <1100000>; > + regulator-max-microvolt = <1500000>; > + regulator-ramp-delay = <0>; > + regulator-always-on; > + regulator-boot-on; > + }; > + > + mt6331_vgp3_reg: ldo-vgp3 { > + regulator-name = "vgp3"; > + regulator-min-microvolt = <1200000>; > + regulator-max-microvolt = <1800000>; > + regulator-ramp-delay = <0>; > + regulator-always-on; > + }; > + > + mt6331_vrtc_reg: ldo-vrtc { > + regulator-name = "vrtc"; > + regulator-min-microvolt = <2800000>; > + regulator-max-microvolt = <2800000>; > + regulator-ramp-delay = <0>; > + regulator-always-on; > + }; > + > + mt6331_vdig18_reg: ldo-vdig18 { > + regulator-name = "dvdd18_dig"; > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <1800000>; > + regulator-ramp-delay = <0>; > + regulator-always-on; > + }; > + }; > + > + mt6331rtc: mt6331rtc { > + compatible = "mediatek,mt6331-rtc"; > + }; > + > + mt6331keys: mt6331keys { > + compatible = "mediatek,mt6331-keys"; > + power { > + linux,keycodes = <KEY_POWER>; > + wakeup-source; > + }; > + home { > + linux,keycodes = <KEY_HOME>; > + }; > + }; > + }; > +};
diff --git a/arch/arm64/boot/dts/mediatek/mt6331.dtsi b/arch/arm64/boot/dts/mediatek/mt6331.dtsi new file mode 100644 index 000000000000..fcec8c07fe39 --- /dev/null +++ b/arch/arm64/boot/dts/mediatek/mt6331.dtsi @@ -0,0 +1,284 @@ +// SPDX-License-Identifier: (GPL-2.0 OR MIT) +/* + * Copyright (c) 2023 Collabora Ltd. + * Author: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com> + */ +#include <dt-bindings/input/input.h> + +&pwrap { + pmic: mt6331 { + compatible = "mediatek,mt6331"; + interrupt-controller; + #interrupt-cells = <2>; + + mt6331regulator: mt6331regulator { + compatible = "mediatek,mt6331-regulator"; + + mt6331_vdvfs11_reg: buck-vdvfs11 { + regulator-name = "vdvfs11"; + regulator-min-microvolt = <700000>; + regulator-max-microvolt = <1493750>; + regulator-ramp-delay = <12500>; + regulator-enable-ramp-delay = <0>; + regulator-allowed-modes = <0 1>; + regulator-always-on; + }; + + mt6331_vdvfs12_reg: buck-vdvfs12 { + regulator-name = "vdvfs12"; + regulator-min-microvolt = <700000>; + regulator-max-microvolt = <1493750>; + regulator-ramp-delay = <12500>; + regulator-enable-ramp-delay = <0>; + regulator-allowed-modes = <0 1>; + regulator-always-on; + }; + + mt6331_vdvfs13_reg: buck-vdvfs13 { + regulator-name = "vdvfs13"; + regulator-min-microvolt = <700000>; + regulator-max-microvolt = <1493750>; + regulator-ramp-delay = <12500>; + regulator-enable-ramp-delay = <0>; + regulator-allowed-modes = <0 1>; + regulator-always-on; + }; + + mt6331_vdvfs14_reg: buck-vdvfs14 { + regulator-name = "vdvfs14"; + regulator-min-microvolt = <700000>; + regulator-max-microvolt = <1493750>; + regulator-ramp-delay = <12500>; + regulator-enable-ramp-delay = <0>; + regulator-allowed-modes = <0 1>; + regulator-always-on; + }; + + mt6331_vcore2_reg: buck-vcore2 { + regulator-name = "vcore2"; + regulator-min-microvolt = <700000>; + regulator-max-microvolt = <1493750>; + regulator-ramp-delay = <12500>; + regulator-enable-ramp-delay = <0>; + regulator-allowed-modes = <0 1>; + regulator-always-on; + }; + + mt6331_vio18_reg: buck-vio18 { + regulator-name = "vio18"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + regulator-ramp-delay = <12500>; + regulator-enable-ramp-delay = <0>; + regulator-allowed-modes = <0 1>; + regulator-always-on; + }; + + mt6331_vtcxo1_reg: ldo-vtcxo1 { + regulator-name = "vtcxo1"; + regulator-min-microvolt = <2800000>; + regulator-max-microvolt = <2800000>; + regulator-ramp-delay = <0>; + regulator-always-on; + regulator-boot-on; + }; + + mt6331_vtcxo2_reg: ldo-vtcxo2 { + regulator-name = "vtcxo2"; + regulator-min-microvolt = <2800000>; + regulator-max-microvolt = <2800000>; + regulator-ramp-delay = <0>; + regulator-always-on; + regulator-boot-on; + }; + + mt6331_avdd32_aud_reg: ldo-avdd32aud { + regulator-name = "avdd32_aud"; + regulator-min-microvolt = <2800000>; + regulator-max-microvolt = <3200000>; + regulator-ramp-delay = <0>; + regulator-always-on; + regulator-boot-on; + }; + + mt6331_vauxa32_reg: ldo-vauxa32 { + regulator-name = "vauxa32"; + regulator-min-microvolt = <2800000>; + regulator-max-microvolt = <3200000>; + regulator-ramp-delay = <0>; + }; + + mt6331_vcama_reg: ldo-vcama { + regulator-name = "vcama"; + regulator-min-microvolt = <1500000>; + regulator-max-microvolt = <2800000>; + regulator-ramp-delay = <0>; + }; + + mt6331_vio28_reg: ldo-vio28 { + regulator-name = "vio28"; + regulator-min-microvolt = <2800000>; + regulator-max-microvolt = <2800000>; + regulator-ramp-delay = <0>; + regulator-always-on; + regulator-boot-on; + }; + + mt6331_vcamaf_reg: ldo-vcamaf { + regulator-name = "vcam_af"; + regulator-min-microvolt = <1200000>; + regulator-max-microvolt = <3300000>; + regulator-ramp-delay = <0>; + }; + + mt6331_vmc_reg: ldo-vmc { + regulator-name = "vmc"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <3300000>; + regulator-ramp-delay = <0>; + }; + + mt6331_vmch_reg: ldo-vmch { + regulator-name = "vmch"; + regulator-min-microvolt = <3000000>; + regulator-max-microvolt = <3300000>; + regulator-ramp-delay = <0>; + }; + + mt6331_vemc33_reg: ldo-vemc33 { + regulator-name = "vemc33"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + regulator-ramp-delay = <0>; + regulator-always-on; + }; + + mt6331_vgp1_reg: ldo-vgp1 { + regulator-name = "vgp1"; + regulator-min-microvolt = <1200000>; + regulator-max-microvolt = <3300000>; + regulator-ramp-delay = <0>; + regulator-always-on; + }; + + mt6331_vsim1_reg: ldo-vsim1 { + regulator-name = "vsim1"; + regulator-min-microvolt = <1700000>; + regulator-max-microvolt = <3100000>; + regulator-ramp-delay = <0>; + regulator-always-on; + }; + + mt6331_vsim2_reg: ldo-vsim2 { + regulator-name = "vsim2"; + regulator-min-microvolt = <1700000>; + regulator-max-microvolt = <3100000>; + regulator-ramp-delay = <0>; + }; + + mt6331_vmipi_reg: ldo-vmipi { + regulator-name = "vmipi"; + regulator-min-microvolt = <1200000>; + regulator-max-microvolt = <3300000>; + regulator-ramp-delay = <0>; + regulator-always-on; + }; + + mt6331_vibr_reg: ldo-vibr { + regulator-name = "vibr"; + regulator-min-microvolt = <1200000>; + regulator-max-microvolt = <3300000>; + regulator-ramp-delay = <0>; + }; + + mt6331_vgp4_reg: ldo-vgp4 { + regulator-name = "vgp4"; + regulator-min-microvolt = <1600000>; + regulator-max-microvolt = <2200000>; + regulator-ramp-delay = <0>; + regulator-always-on; + }; + + mt6331_vcamd_reg: ldo-vcamd { + regulator-name = "vcamd"; + regulator-min-microvolt = <900000>; + regulator-max-microvolt = <1500000>; + regulator-ramp-delay = <0>; + regulator-always-on; + }; + + mt6331_vusb10_reg: ldo-vusb10 { + regulator-name = "vusb"; + regulator-min-microvolt = <1000000>; + regulator-max-microvolt = <1300000>; + regulator-ramp-delay = <0>; + regulator-always-on; + regulator-boot-on; + }; + + mt6331_vcamio_reg: ldo-vcamio { + regulator-name = "vcam_io"; + regulator-min-microvolt = <1200000>; + regulator-max-microvolt = <1800000>; + regulator-ramp-delay = <0>; + }; + + mt6331_vsram_reg: ldo-vsram { + regulator-name = "vsram"; + regulator-min-microvolt = <1012500>; + regulator-max-microvolt = <1012500>; + regulator-ramp-delay = <0>; + regulator-always-on; + regulator-boot-on; + }; + + mt6331_vgp2_reg: ldo-vgp2 { + regulator-name = "vgp2"; + regulator-min-microvolt = <1100000>; + regulator-max-microvolt = <1500000>; + regulator-ramp-delay = <0>; + regulator-always-on; + regulator-boot-on; + }; + + mt6331_vgp3_reg: ldo-vgp3 { + regulator-name = "vgp3"; + regulator-min-microvolt = <1200000>; + regulator-max-microvolt = <1800000>; + regulator-ramp-delay = <0>; + regulator-always-on; + }; + + mt6331_vrtc_reg: ldo-vrtc { + regulator-name = "vrtc"; + regulator-min-microvolt = <2800000>; + regulator-max-microvolt = <2800000>; + regulator-ramp-delay = <0>; + regulator-always-on; + }; + + mt6331_vdig18_reg: ldo-vdig18 { + regulator-name = "dvdd18_dig"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + regulator-ramp-delay = <0>; + regulator-always-on; + }; + }; + + mt6331rtc: mt6331rtc { + compatible = "mediatek,mt6331-rtc"; + }; + + mt6331keys: mt6331keys { + compatible = "mediatek,mt6331-keys"; + power { + linux,keycodes = <KEY_POWER>; + wakeup-source; + }; + home { + linux,keycodes = <KEY_HOME>; + }; + }; + }; +};
MT6331 is the primary PMIC for the MediaTek Helio X10 MT6795 smartphone platforms: add a devicetree describing its regulators, Real Time Clock and PMIC-keys. Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com> --- arch/arm64/boot/dts/mediatek/mt6331.dtsi | 284 +++++++++++++++++++++++ 1 file changed, 289 insertions(+) create mode 100644 arch/arm64/boot/dts/mediatek/mt6331.dtsi