From mboxrd@z Thu Jan 1 00:00:00 1970 From: Lubomir Rintel Date: Tue, 17 Nov 2020 22:00:05 +0100 Subject: [PATCH RFC 07/20] timer-uclass: Tolerate failure to get clock rate in pre_probe In-Reply-To: <20201117210018.751469-1-lkundrak@v3.sk> References: <20201117210018.751469-1-lkundrak@v3.sk> Message-ID: <20201117210018.751469-8-lkundrak@v3.sk> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Pre-probe merely guesses that the first clock is the right one -- a different one might actually be picked by probe(). In case it does not, post_probe() already has a check that will fail. Signed-off-by: Lubomir Rintel --- drivers/timer/timer-uclass.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/drivers/timer/timer-uclass.c b/drivers/timer/timer-uclass.c index 62d0e860e80..f734fa8b405 100644 --- a/drivers/timer/timer-uclass.c +++ b/drivers/timer/timer-uclass.c @@ -61,9 +61,11 @@ static int timer_pre_probe(struct udevice *dev) if (!err) { ret = clk_get_rate(&timer_clk); if (IS_ERR_VALUE(ret)) - return ret; - uc_priv->clock_rate = ret; - } else { + err = ret; + else + uc_priv->clock_rate = ret; + } + if (err) { uc_priv->clock_rate = dev_read_u32_default(dev, "clock-frequency", 0); } -- 2.28.0