From a2bd99549c61768b67ec55bb104b9f2abaf52960 Mon Sep 17 00:00:00 2001
From: Marek Vasut <marek.vasut+renesas@mailbox.org>
Date: Sat, 25 Apr 2020 14:57:55 +0200
Subject: [PATCH] clk: renesas: Tear clock controller down last before booting
 OS

Once all the other drivers got torn down in preparation for the OS
to start, tear down the clock controller last. The clock controller
must be torn down last as some of the clock which get turned off
might have still been needed during the teardown stage of the other
drivers.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Signed-off-by: Tam Nguyen <tam.nguyen.xa@renesas.com>
Signed-off-by: Hai Pham <hai.pham.ud@renesas.com>
---
 drivers/clk/renesas/clk-rcar-gen3.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/clk/renesas/clk-rcar-gen3.c b/drivers/clk/renesas/clk-rcar-gen3.c
index c8a5512b65..0d274bb986 100644
--- a/drivers/clk/renesas/clk-rcar-gen3.c
+++ b/drivers/clk/renesas/clk-rcar-gen3.c
@@ -526,6 +526,7 @@ U_BOOT_DRIVER(clk_gen3) = {
 	.ops		= &gen3_clk_ops,
 	.probe		= gen3_clk_probe,
 	.remove		= gen3_clk_remove,
+	.flags          = DM_FLAG_OS_PREPARE | DM_FLAG_VITAL,
 };
 
 static int gen3_reset_assert(struct reset_ctl *reset_ctl)
@@ -565,6 +566,7 @@ U_BOOT_DRIVER(rst_gen3) = {
 	.name = "rst_gen3",
 	.id = UCLASS_RESET,
 	.ops = &rst_gen3_ops,
+	.flags = DM_FLAG_OS_PREPARE | DM_FLAG_VITAL,
 };
 
 int gen3_cpg_bind(struct udevice *parent)
-- 
2.39.5