arm64: dts: mediatek: add mt6357 device-tree
authorFabien Parent <fparent@baylibre.com>
Wed, 29 Mar 2023 08:54:26 +0000 (10:54 +0200)
committerMatthias Brugger <matthias.bgg@gmail.com>
Thu, 30 Mar 2023 17:21:16 +0000 (19:21 +0200)
This new device-tree add the regulators, rtc and keys support
for the MT6357 PMIC.

Signed-off-by: Fabien Parent <fparent@baylibre.com>
Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
Link: https://lore.kernel.org/r/20230203-evk-board-support-v3-5-0003e80e0095@baylibre.com
Signed-off-by: Matthias Brugger <matthias.bgg@gmail.com>
arch/arm64/boot/dts/mediatek/mt6357.dtsi [new file with mode: 0644]

diff --git a/arch/arm64/boot/dts/mediatek/mt6357.dtsi b/arch/arm64/boot/dts/mediatek/mt6357.dtsi
new file mode 100644 (file)
index 0000000..3330a03
--- /dev/null
@@ -0,0 +1,282 @@
+// SPDX-License-Identifier: (GPL-2.0 OR MIT)
+/*
+ * Copyright (c) 2020 MediaTek Inc.
+ * Copyright (c) 2023 BayLibre Inc.
+ */
+
+#include <dt-bindings/input/input.h>
+
+&pwrap {
+       mt6357_pmic: pmic {
+               compatible = "mediatek,mt6357";
+
+               regulators {
+                       mt6357_vproc_reg: buck-vproc {
+                               regulator-name = "vproc";
+                               regulator-min-microvolt = <518750>;
+                               regulator-max-microvolt = <1312500>;
+                               regulator-ramp-delay = <6250>;
+                               regulator-enable-ramp-delay = <220>;
+                               regulator-always-on;
+                       };
+
+                       mt6357_vcore_reg: buck-vcore {
+                               regulator-name = "vcore";
+                               regulator-min-microvolt = <518750>;
+                               regulator-max-microvolt = <1312500>;
+                               regulator-ramp-delay = <6250>;
+                               regulator-enable-ramp-delay = <220>;
+                               regulator-always-on;
+                       };
+
+                       mt6357_vmodem_reg: buck-vmodem {
+                               regulator-name = "vmodem";
+                               regulator-min-microvolt = <500000>;
+                               regulator-max-microvolt = <1193750>;
+                               regulator-ramp-delay = <6250>;
+                               regulator-enable-ramp-delay = <220>;
+                       };
+
+                       mt6357_vs1_reg: buck-vs1 {
+                               regulator-name = "vs1";
+                               regulator-min-microvolt = <1200000>;
+                               regulator-max-microvolt = <2200000>;
+                               regulator-ramp-delay = <12500>;
+                               regulator-enable-ramp-delay = <220>;
+                               regulator-always-on;
+                       };
+
+                       mt6357_vpa_reg: buck-vpa {
+                               regulator-name = "vpa";
+                               regulator-min-microvolt = <500000>;
+                               regulator-max-microvolt = <3650000>;
+                               regulator-ramp-delay = <50000>;
+                               regulator-enable-ramp-delay = <220>;
+                       };
+
+                       mt6357_vfe28_reg: ldo-vfe28 {
+                               compatible = "regulator-fixed";
+                               regulator-name = "vfe28";
+                               regulator-min-microvolt = <2800000>;
+                               regulator-max-microvolt = <2800000>;
+                               regulator-enable-ramp-delay = <264>;
+                       };
+
+                       mt6357_vxo22_reg: ldo-vxo22 {
+                               regulator-name = "vxo22";
+                               regulator-min-microvolt = <2200000>;
+                               regulator-max-microvolt = <2400000>;
+                               regulator-enable-ramp-delay = <110>;
+                       };
+
+                       mt6357_vrf18_reg: ldo-vrf18 {
+                               compatible = "regulator-fixed";
+                               regulator-name = "vrf18";
+                               regulator-min-microvolt = <1800000>;
+                               regulator-max-microvolt = <1800000>;
+                               regulator-enable-ramp-delay = <110>;
+                       };
+
+                       mt6357_vrf12_reg: ldo-vrf12 {
+                               compatible = "regulator-fixed";
+                               regulator-name = "vrf12";
+                               regulator-min-microvolt = <1200000>;
+                               regulator-max-microvolt = <1200000>;
+                               regulator-enable-ramp-delay = <110>;
+                       };
+
+                       mt6357_vefuse_reg: ldo-vefuse {
+                               regulator-name = "vefuse";
+                               regulator-min-microvolt = <1200000>;
+                               regulator-max-microvolt = <3300000>;
+                               regulator-enable-ramp-delay = <264>;
+                       };
+
+                       mt6357_vcn33_bt_reg: ldo-vcn33-bt {
+                               regulator-name = "vcn33-bt";
+                               regulator-min-microvolt = <3300000>;
+                               regulator-max-microvolt = <3500000>;
+                               regulator-enable-ramp-delay = <264>;
+                       };
+
+                       mt6357_vcn33_wifi_reg: ldo-vcn33-wifi {
+                               regulator-name = "vcn33-wifi";
+                               regulator-min-microvolt = <3300000>;
+                               regulator-max-microvolt = <3500000>;
+                               regulator-enable-ramp-delay = <264>;
+                       };
+
+                       mt6357_vcn28_reg: ldo-vcn28 {
+                               compatible = "regulator-fixed";
+                               regulator-name = "vcn28";
+                               regulator-min-microvolt = <2800000>;
+                               regulator-max-microvolt = <2800000>;
+                               regulator-enable-ramp-delay = <264>;
+                       };
+
+                       mt6357_vcn18_reg: ldo-vcn18 {
+                               compatible = "regulator-fixed";
+                               regulator-name = "vcn18";
+                               regulator-min-microvolt = <1800000>;
+                               regulator-max-microvolt = <1800000>;
+                               regulator-enable-ramp-delay = <264>;
+                       };
+
+                       mt6357_vcama_reg: ldo-vcama {
+                               regulator-name = "vcama";
+                               regulator-min-microvolt = <2500000>;
+                               regulator-max-microvolt = <2800000>;
+                               regulator-enable-ramp-delay = <264>;
+                       };
+
+                       mt6357_vcamd_reg: ldo-vcamd {
+                               regulator-name = "vcamd";
+                               regulator-min-microvolt = <1000000>;
+                               regulator-max-microvolt = <1800000>;
+                               regulator-enable-ramp-delay = <264>;
+                       };
+
+                       mt6357_vcamio_reg: ldo-vcamio18 {
+                               compatible = "regulator-fixed";
+                               regulator-name = "vcamio";
+                               regulator-min-microvolt = <1800000>;
+                               regulator-max-microvolt = <1800000>;
+                               regulator-enable-ramp-delay = <264>;
+                       };
+
+                       mt6357_vldo28_reg: ldo-vldo28 {
+                               regulator-name = "vldo28";
+                               regulator-min-microvolt = <2800000>;
+                               regulator-max-microvolt = <3000000>;
+                               regulator-enable-ramp-delay = <264>;
+                       };
+
+                       mt6357_vsram_others_reg: ldo-vsram-others {
+                               regulator-name = "vsram-others";
+                               regulator-min-microvolt = <518750>;
+                               regulator-max-microvolt = <1312500>;
+                               regulator-ramp-delay = <6250>;
+                               regulator-enable-ramp-delay = <110>;
+                               regulator-always-on;
+                       };
+
+                       mt6357_vsram_proc_reg: ldo-vsram-proc {
+                               regulator-name = "vsram-proc";
+                               regulator-min-microvolt = <518750>;
+                               regulator-max-microvolt = <1312500>;
+                               regulator-ramp-delay = <6250>;
+                               regulator-enable-ramp-delay = <110>;
+                               regulator-always-on;
+                       };
+
+                       mt6357_vaux18_reg: ldo-vaux18 {
+                               compatible = "regulator-fixed";
+                               regulator-name = "vaux18";
+                               regulator-min-microvolt = <1800000>;
+                               regulator-max-microvolt = <1800000>;
+                               regulator-enable-ramp-delay = <264>;
+                       };
+
+                       mt6357_vaud28_reg: ldo-vaud28 {
+                               compatible = "regulator-fixed";
+                               regulator-name = "vaud28";
+                               regulator-min-microvolt = <2800000>;
+                               regulator-max-microvolt = <2800000>;
+                               regulator-enable-ramp-delay = <264>;
+                       };
+
+                       mt6357_vio28_reg: ldo-vio28 {
+                               compatible = "regulator-fixed";
+                               regulator-name = "vio28";
+                               regulator-min-microvolt = <2800000>;
+                               regulator-max-microvolt = <2800000>;
+                               regulator-enable-ramp-delay = <264>;
+                       };
+
+                       mt6357_vio18_reg: ldo-vio18 {
+                               compatible = "regulator-fixed";
+                               regulator-name = "vio18";
+                               regulator-min-microvolt = <1800000>;
+                               regulator-max-microvolt = <1800000>;
+                               regulator-enable-ramp-delay = <264>;
+                               regulator-always-on;
+                       };
+
+                       mt6357_vdram_reg: ldo-vdram {
+                               regulator-name = "vdram";
+                               regulator-min-microvolt = <1100000>;
+                               regulator-max-microvolt = <1200000>;
+                               regulator-enable-ramp-delay = <3300>;
+                       };
+
+                       mt6357_vmc_reg: ldo-vmc {
+                               regulator-name = "vmc";
+                               regulator-min-microvolt = <1800000>;
+                               regulator-max-microvolt = <3300000>;
+                               regulator-enable-ramp-delay = <44>;
+                       };
+
+                       mt6357_vmch_reg: ldo-vmch {
+                               regulator-name = "vmch";
+                               regulator-min-microvolt = <2900000>;
+                               regulator-max-microvolt = <3300000>;
+                               regulator-enable-ramp-delay = <44>;
+                       };
+
+                       mt6357_vemc_reg: ldo-vemc {
+                               regulator-name = "vemc";
+                               regulator-min-microvolt = <2900000>;
+                               regulator-max-microvolt = <3300000>;
+                               regulator-enable-ramp-delay = <44>;
+                               regulator-always-on;
+                       };
+
+                       mt6357_vsim1_reg: ldo-vsim1 {
+                               regulator-name = "vsim1";
+                               regulator-min-microvolt = <1700000>;
+                               regulator-max-microvolt = <3100000>;
+                               regulator-enable-ramp-delay = <264>;
+                       };
+
+                       mt6357_vsim2_reg: ldo-vsim2 {
+                               regulator-name = "vsim2";
+                               regulator-min-microvolt = <1700000>;
+                               regulator-max-microvolt = <3100000>;
+                               regulator-enable-ramp-delay = <264>;
+                       };
+
+                       mt6357_vibr_reg: ldo-vibr {
+                               regulator-name = "vibr";
+                               regulator-min-microvolt = <1200000>;
+                               regulator-max-microvolt = <3300000>;
+                               regulator-enable-ramp-delay = <44>;
+                       };
+
+                       mt6357_vusb33_reg: ldo-vusb33 {
+                               regulator-name = "vusb33";
+                               regulator-min-microvolt = <3000000>;
+                               regulator-max-microvolt = <3100000>;
+                               regulator-enable-ramp-delay = <264>;
+                       };
+               };
+
+               rtc {
+                       compatible = "mediatek,mt6357-rtc";
+               };
+
+               keys {
+                       compatible = "mediatek,mt6357-keys";
+
+                       key-power {
+                               linux,keycodes = <KEY_POWER>;
+                               wakeup-source;
+                       };
+
+                       key-home {
+                               linux,keycodes = <KEY_HOME>;
+                               wakeup-source;
+                       };
+
+               };
+       };
+};