From 2ce6dedf0b3cb8a4ff97f47061ca10526ea95370 Mon Sep 17 00:00:00 2001 From: Lokesh Vutla Date: Tue, 11 May 2021 10:22:13 -0500 Subject: [PATCH] ram: k3-ddrss: Enable vtt regulator if present Attempt to get and enable a vtt regulator if one is provided from the dts. If we do not find one, continue as not all platforms have this. Signed-off-by: Nishanth Menon Signed-off-by: Lokesh Vutla Signed-off-by: Dave Gerlach --- drivers/ram/k3-ddrss/k3-ddrss.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/drivers/ram/k3-ddrss/k3-ddrss.c b/drivers/ram/k3-ddrss/k3-ddrss.c index 8d9e7d2adb..cb8edcbc15 100644 --- a/drivers/ram/k3-ddrss/k3-ddrss.c +++ b/drivers/ram/k3-ddrss/k3-ddrss.c @@ -15,6 +15,7 @@ #include #include #include +#include #include "lpddr4_obj_if.h" #include "lpddr4_if.h" @@ -40,6 +41,7 @@ struct k3_ddrss_desc { u32 ddr_freq1; u32 ddr_freq2; u32 ddr_fhs_cnt; + struct udevice *vtt_supply; }; static lpddr4_obj *driverdt; @@ -215,6 +217,18 @@ static int k3_ddrss_power_on(struct k3_ddrss_desc *ddrss) return ret; } + ret = device_get_supply_regulator(ddrss->dev, "vtt-supply", + &ddrss->vtt_supply); + if (ret) { + dev_dbg(ddrss->dev, "vtt-supply not found.\n"); + } else { + ret = regulator_set_value(ddrss->vtt_supply, 3300000); + if (ret) + return ret; + dev_dbg(ddrss->dev, "VTT regulator enabled, volt = %d\n", + regulator_get_value(ddrss->vtt_supply)); + } + return 0; } -- 2.39.5