Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 75024aae authored by Brian Masney's avatar Brian Masney Committed by Greg Kroah-Hartman
Browse files

rtc: pcf8563: fix incorrect maximum clock rate handling



[ Upstream commit 906726a5efeefe0ef0103ccff5312a09080c04ae ]

When pcf8563_clkout_round_rate() is called with a requested rate higher
than the highest supported rate, it currently returns 0, which disables
the clock. According to the clk API, round_rate() should instead return
the highest supported rate. Update the function to return the maximum
supported rate in this case.

Fixes: a39a6405 ("rtc: pcf8563: add CLKOUT to common clock framework")
Signed-off-by: default avatarBrian Masney <bmasney@redhat.com>
Link: https://lore.kernel.org/r/20250710-rtc-clk-round-rate-v1-5-33140bb2278e@redhat.com


Signed-off-by: default avatarAlexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: default avatarSasha Levin <sashal@kernel.org>
parent 53ac364d
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -421,7 +421,7 @@ static long pcf8563_clkout_round_rate(struct clk_hw *hw, unsigned long rate,
		if (clkout_rates[i] <= rate)
			return clkout_rates[i];

	return 0;
	return clkout_rates[0];
}

static int pcf8563_clkout_set_rate(struct clk_hw *hw, unsigned long rate,