mirror of
https://github.com/coolsnowwolf/lede.git
synced 2025-04-16 04:13:31 +00:00
32 lines
1.1 KiB
Diff
32 lines
1.1 KiB
Diff
From 124d46f0397daf0bc13270ee43cc7d8166170f04 Mon Sep 17 00:00:00 2001
|
|
From: Robert Marko <robimarko@gmail.com>
|
|
Date: Sat, 1 Jan 2022 19:14:59 +0100
|
|
Subject: [PATCH] clk: qcom: ipq8074: SW workaround for UBI32 PLL lock
|
|
|
|
UBI32 Huayra PLL fails to lock in 5 us in some SoC silicon and thus it
|
|
will cause the wait_for_pll() to timeout and thus return the error
|
|
indicating that the PLL failed to lock.
|
|
|
|
This is bug in Huayra PLL HW for which SW workaround
|
|
is to set bit 26 of TEST_CTL register.
|
|
|
|
This is ported from the QCA 5.4 based downstream kernel.
|
|
|
|
Signed-off-by: Robert Marko <robimarko@gmail.com>
|
|
---
|
|
drivers/clk/qcom/gcc-ipq8074.c | 3 +++
|
|
1 file changed, 3 insertions(+)
|
|
|
|
--- a/drivers/clk/qcom/gcc-ipq8074.c
|
|
+++ b/drivers/clk/qcom/gcc-ipq8074.c
|
|
@@ -4841,6 +4841,9 @@ static int gcc_ipq8074_probe(struct plat
|
|
/* Disable SW_COLLAPSE for USB1 GDSCR */
|
|
regmap_update_bits(regmap, 0x3f078, BIT(0), 0x0);
|
|
|
|
+ /* SW Workaround for UBI32 Huayra PLL */
|
|
+ regmap_update_bits(regmap, 0x2501c, BIT(26), BIT(26));
|
|
+
|
|
clk_alpha_pll_configure(&ubi32_pll_main, regmap, &ubi32_pll_config);
|
|
clk_alpha_pll_configure(&nss_crypto_pll_main, regmap,
|
|
&nss_crypto_pll_config);
|