Add fix for the BeagleBone boot failure

This commit is contained in:
Peter Robinson 2018-04-12 15:33:27 +01:00 committed by Jeremy Cline
parent a81b3eb928
commit 757d9d4c83
No known key found for this signature in database
GPG Key ID: 9223308FA9B246DB
2 changed files with 62 additions and 0 deletions

View File

@ -0,0 +1,58 @@
From patchwork Tue Mar 27 17:47:04 2018
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Subject: clk: ti: fix flag space conflict with clkctrl clocks
From: Tero Kristo <t-kristo@ti.com>
X-Patchwork-Id: 10311335
Message-Id: <1522172824-14094-1-git-send-email-t-kristo@ti.com>
To: <sboyd@kernel.org>, <mturquette@baylibre.com>,
<linux-omap@vger.kernel.org>, <linux-clk@vger.kernel.org>,
<tony@atomide.com>
Cc: <arnd@arndb.de>, <linux-arm-kernel@lists.infradead.org>
Date: Tue, 27 Mar 2018 20:47:04 +0300
The introduction of support for CLK_SET_RATE_PARENT flag for clkctrl
clocks used a generic clock flag, which causes a conflict with the
rest of the clkctrl flags, namely the NO_IDLEST flag. This can cause
boot failures on certain platforms where this flag is introduced, by
omitting the wait for the clockctrl module to be fully enabled before
proceeding with rest of the code.
Fix this by moving all the clkctrl specific flags to their own bit-range.
Signed-off-by: Tero Kristo <t-kristo@ti.com>
Fixes: 49159a9dc3da ("clk: ti: add support for CLK_SET_RATE_PARENT flag")
Reported-by: Christophe Lyon <christophe.lyon@linaro.org>
Tested-by: Tony Lindgren <tony@atomide.com>
---
drivers/clk/ti/clock.h | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/drivers/clk/ti/clock.h b/drivers/clk/ti/clock.h
index 90b86aa..b582780 100644
--- a/drivers/clk/ti/clock.h
+++ b/drivers/clk/ti/clock.h
@@ -76,6 +76,11 @@ enum {
#define CLKF_CORE (1 << 9)
#define CLKF_J_TYPE (1 << 10)
+/* CLKCTRL flags */
+#define CLKF_SW_SUP BIT(5)
+#define CLKF_HW_SUP BIT(6)
+#define CLKF_NO_IDLEST BIT(7)
+
#define CLK(dev, con, ck) \
{ \
.lk = { \
@@ -185,10 +190,6 @@ struct omap_clkctrl_data {
extern const struct omap_clkctrl_data dm814_clkctrl_data[];
extern const struct omap_clkctrl_data dm816_clkctrl_data[];
-#define CLKF_SW_SUP BIT(0)
-#define CLKF_HW_SUP BIT(1)
-#define CLKF_NO_IDLEST BIT(2)
-
typedef void (*ti_of_clk_init_cb_t)(void *, struct device_node *);
struct clk *ti_clk_register(struct device *dev, struct clk_hw *hw,

View File

@ -619,6 +619,9 @@ Patch316: arm-sunxi-nvmem-fixH3.patch
# Upstream 4.17 back port
Patch317: of-i2c-fix-module-aliases.patch
# https://patchwork.kernel.org/patch/10311335/
Patch318: clk-ti-fix-flag-space-conflict-with-clkctrl-clocks.patch
# Enabling Patches for the RPi3+
Patch320: bcm2837-rpi-initial-support-for-the-3.patch
Patch321: bcm2837-gpio-expander.patch
@ -1903,6 +1906,7 @@ fi
- Further fix for ThunderX ZIP driver
- Fix for OF i2c module aliases
- Fix for nvmem on AllWinner H3/H5 SoCs
- Add fix for the BeagleBone boot failure
* Mon Apr 09 2018 Jeremy Cline <jeremy@jcline.org>
- Include the KCS IPMI BMC driver that's in F27