]> www.infradead.org Git - users/hch/misc.git/commitdiff
clk: bcm: rpi: Maximize V3D clock
authorMaíra Canal <mcanal@igalia.com>
Thu, 31 Jul 2025 21:06:19 +0000 (18:06 -0300)
committerStephen Boyd <sboyd@kernel.org>
Sun, 21 Sep 2025 16:09:51 +0000 (09:09 -0700)
Although minimizing the clock rate is the best for most scenarios, as
stated in commit 4d85abb0fb8e ("clk: bcm: rpi: Enable minimize for all
firmware clocks"), when it comes to the GPU, it's ideal to have the
maximum rate allowed.

Add an option to maximize a firmware clock's rate when the clock is
enabled and set this option for V3D.

Signed-off-by: Maíra Canal <mcanal@igalia.com>
Signed-off-by: Stephen Boyd <sboyd@kernel.org>
drivers/clk/bcm/clk-raspberrypi.c

index 70acfa68827d84670c645bedd17bf0e181aadfbb..1a9162f0ae31e330c46f6eafdd00350599b0eede 100644 (file)
@@ -68,6 +68,7 @@ struct raspberrypi_clk_variant {
        char            *clkdev;
        unsigned long   min_rate;
        bool            minimize;
+       bool            maximize;
        u32             flags;
 };
 
@@ -135,7 +136,7 @@ raspberrypi_clk_variants[RPI_FIRMWARE_NUM_CLK_ID] = {
        },
        [RPI_FIRMWARE_V3D_CLK_ID] = {
                .export = true,
-               .minimize = true,
+               .maximize = true,
        },
        [RPI_FIRMWARE_PIXEL_CLK_ID] = {
                .export = true,
@@ -386,6 +387,9 @@ static struct clk_hw *raspberrypi_clk_register(struct raspberrypi_clk *rpi,
                }
        }
 
+       if (variant->maximize)
+               variant->min_rate = max_rate;
+
        if (variant->min_rate) {
                unsigned long rate;