]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
clk: en7523: Add clock for eMMC for EN7581
authorChristian Marangi <ansuelsmth@gmail.com>
Mon, 13 Jan 2025 23:10:05 +0000 (00:10 +0100)
committerStephen Boyd <sboyd@kernel.org>
Mon, 13 Jan 2025 23:24:12 +0000 (15:24 -0800)
Add clock for eMMC for EN7581. This is used to give info of the current
eMMC source clock and to switch it from 200MHz or 150MHz.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Link: https://lore.kernel.org/r/20250113231030.6735-5-ansuelsmth@gmail.com
Signed-off-by: Stephen Boyd <sboyd@kernel.org>
drivers/clk/clk-en7523.c

index 3a4b7ed40af43fbf69e5da599b416fd874ef1b99..6a763bc9ac1a96a0fdc4863d0af3f971dc1dc3fd 100644 (file)
@@ -91,6 +91,7 @@ static const u32 emi7581_base[] = { 540000000, 480000000, 400000000, 300000000 }
 static const u32 bus7581_base[] = { 600000000, 540000000 };
 static const u32 npu7581_base[] = { 800000000, 750000000, 720000000, 600000000 };
 static const u32 crypto_base[] = { 540000000, 480000000 };
+static const u32 emmc7581_base[] = { 200000000, 150000000 };
 
 static const struct en_clk_desc en7523_base_clks[] = {
        {
@@ -281,6 +282,15 @@ static const struct en_clk_desc en7581_base_clks[] = {
                .base_shift = 0,
                .base_values = crypto_base,
                .n_base_values = ARRAY_SIZE(crypto_base),
+       }, {
+               .id = EN7581_CLK_EMMC,
+               .name = "emmc",
+
+               .base_reg = REG_CRYPTO_CLKSRC2,
+               .base_bits = 1,
+               .base_shift = 12,
+               .base_values = emmc7581_base,
+               .n_base_values = ARRAY_SIZE(emmc7581_base),
        }
 };