From bf657ee312ed9c56982e43e5a7bfacb8e278a495 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Wed, 12 Nov 2025 08:51:20 +0000 Subject: [PATCH] mmc: bcm2835-mmc: Relax the 50MHz overclock check EMMC clock speeds are based around divisions of 52Mhz, not the 50MHz used by SD. As such, relax the "full speed" check (intended to stop any overclock whenever an operation has to be retried) so that any requested speed of 50MHz or higher will be overclocked. See: https://github.com/raspberrypi/linux/issues/7120 Signed-off-by: Phil Elwell --- drivers/mmc/host/bcm2835-mmc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/mmc/host/bcm2835-mmc.c b/drivers/mmc/host/bcm2835-mmc.c index fec210b33231..c0d25994b166 100644 --- a/drivers/mmc/host/bcm2835-mmc.c +++ b/drivers/mmc/host/bcm2835-mmc.c @@ -1068,7 +1068,7 @@ static void bcm2835_mmc_set_clock(struct bcm2835_host *host, unsigned int clock) unsigned long timeout; unsigned int input_clock = clock; - if (host->overclock_50 && (clock == 50000000)) + if (host->overclock_50 && (clock >= 50000000)) clock = host->overclock_50 * 1000000 + 999999; host->mmc->actual_clock = 0;