arm64: dts: ti: k3-am62a7-sk: Add support for TPS6593 PMIC
authorJulien Panis <jpanis@baylibre.com>
Tue, 3 Oct 2023 09:11:33 +0000 (14:41 +0530)
committerVignesh Raghavendra <vigneshr@ti.com>
Thu, 5 Oct 2023 15:26:09 +0000 (20:56 +0530)
This patch adds support for TPS6593 PMIC on main I2C0 bus.
This device provides regulators (bucks and LDOs), but also
GPIOs, a RTC, a watchdog, an ESM (Error Signal Monitor)
which monitors the SoC error output signal, and a PFSM
(Pre-configurable Finite State Machine) which manages the
operational modes of the PMIC.

Signed-off-by: Julien Panis <jpanis@baylibre.com>
Signed-off-by: Esteban Blanc <eblanc@baylibre.com>
Signed-off-by: Jai Luthra <j-luthra@ti.com>
Link: https://lore.kernel.org/r/20231003-mcasp_am62a-v3-4-2b631ff319ca@ti.com
Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
arch/arm64/boot/dts/ti/k3-am62a7-sk.dts

index 866b2725f775d63fcff9f4297a83f74352715df9..377ab823bbcc5c371f6a5976d54dc9ec20a349ef 100644 (file)
        };
 };
 
+&mcu_pmx0 {
+       status = "okay";
+
+       pmic_irq_pins_default: pmic-irq-default-pins {
+               pinctrl-single,pins = <
+                       AM62AX_MCU_IOPAD(0x000, PIN_INPUT, 7) /* (E11) MCU_GPIO0_0 */
+               >;
+       };
+};
+
+&mcu_gpio0 {
+       status = "okay";
+};
+
 &main_i2c0 {
        status = "okay";
        pinctrl-names = "default";
                        };
                };
        };
+
+       tps659312: pmic@48 {
+               compatible = "ti,tps6593-q1";
+               reg = <0x48>;
+               ti,primary-pmic;
+               system-power-controller;
+
+               gpio-controller;
+               #gpio-cells = <2>;
+
+               pinctrl-names = "default";
+               pinctrl-0 = <&pmic_irq_pins_default>;
+               interrupt-parent = <&mcu_gpio0>;
+               interrupts = <0 IRQ_TYPE_EDGE_FALLING>;
+
+               buck123-supply = <&vcc_3v3_sys>;
+               buck4-supply = <&vcc_3v3_sys>;
+               buck5-supply = <&vcc_3v3_sys>;
+               ldo1-supply = <&vcc_3v3_sys>;
+               ldo2-supply = <&vcc_3v3_sys>;
+               ldo3-supply = <&buck5>;
+               ldo4-supply = <&vcc_3v3_sys>;
+
+               regulators {
+                       buck123: buck123 {
+                               regulator-name = "vcc_core";
+                               regulator-min-microvolt = <715000>;
+                               regulator-max-microvolt = <895000>;
+                               regulator-boot-on;
+                               regulator-always-on;
+                       };
+
+                       buck4: buck4 {
+                               regulator-name = "vcc_1v1";
+                               regulator-min-microvolt = <1100000>;
+                               regulator-max-microvolt = <1100000>;
+                               regulator-boot-on;
+                               regulator-always-on;
+                       };
+
+                       buck5: buck5 {
+                               regulator-name = "vcc_1v8_sys";
+                               regulator-min-microvolt = <1800000>;
+                               regulator-max-microvolt = <1800000>;
+                               regulator-boot-on;
+                               regulator-always-on;
+                       };
+
+                       ldo1: ldo1 {
+                               regulator-name = "vddshv5_sdio";
+                               regulator-min-microvolt = <3300000>;
+                               regulator-max-microvolt = <3300000>;
+                               regulator-boot-on;
+                               regulator-always-on;
+                       };
+
+                       ldo2: ldo2 {
+                               regulator-name = "vpp_1v8";
+                               regulator-min-microvolt = <1800000>;
+                               regulator-max-microvolt = <1800000>;
+                               regulator-boot-on;
+                               regulator-always-on;
+                       };
+
+                       ldo3: ldo3 {
+                               regulator-name = "vcc_0v85";
+                               regulator-min-microvolt = <850000>;
+                               regulator-max-microvolt = <850000>;
+                               regulator-boot-on;
+                               regulator-always-on;
+                       };
+
+                       ldo4: ldo4 {
+                               regulator-name = "vdda_1v8";
+                               regulator-min-microvolt = <1800000>;
+                               regulator-max-microvolt = <1800000>;
+                               regulator-boot-on;
+                               regulator-always-on;
+                       };
+               };
+       };
 };
 
 &main_i2c1 {