clk: meson: g12a: mark fclk_div3 as critical
authorNeil Armstrong <narmstrong@baylibre.com>
Tue, 28 May 2019 08:07:58 +0000 (10:07 +0200)
committerJerome Brunet <jbrunet@baylibre.com>
Tue, 11 Jun 2019 09:28:44 +0000 (11:28 +0200)
On Amlogic Meson G12b platform, the fclk_div3 seems to be necessary for
the system to operate correctly.

Disabling it cause the entire system to freeze, including peripherals.

Let's mark this clock as critical, fixing boot on G12b platforms.

Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
Signed-off-by: Jerome Brunet <jbrunet@baylibre.com>
drivers/clk/meson/g12a.c

index 3ab83e5..db1c4ed 100644 (file)
@@ -1350,6 +1350,16 @@ static struct clk_regmap g12a_fclk_div3 = {
                .ops = &clk_regmap_gate_ops,
                .parent_names = (const char *[]){ "fclk_div3_div" },
                .num_parents = 1,
+               /*
+                * This clock is used by the resident firmware and is required
+                * by the platform to operate correctly.
+                * Until the following condition are met, we need this clock to
+                * be marked as critical:
+                * a) Mark the clock used by a firmware resource, if possible
+                * b) CCF has a clock hand-off mechanism to make the sure the
+                *    clock stays on until the proper driver comes along
+                */
+               .flags = CLK_IS_CRITICAL,
        },
 };