The recent addition of table-based parent lookups[1] in the common
clk_mux implementation removed the width member of struct clk_mux and
replaced it with an arbitrary mask. This broke compilation for i.MX
platforms using clk_busy_mux which builds upon the common clk_mux.
Fixed by populating the mask member during clk_busy_mux registration
instead of the now non-existent width member.
[1] http://article.gmane.org/gmane.linux.ports.tegra/10028
Cc: Shawn Guo <[email protected]>
Cc: Peter De Schrijver <[email protected]>
Signed-off-by: Mike Turquette <[email protected]>
---
arch/arm/mach-imx/clk-busy.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm/mach-imx/clk-busy.c b/arch/arm/mach-imx/clk-busy.c
index 1ab91b5..85b728c 100644
--- a/arch/arm/mach-imx/clk-busy.c
+++ b/arch/arm/mach-imx/clk-busy.c
@@ -169,7 +169,7 @@ struct clk *imx_clk_busy_mux(const char *name, void __iomem *reg, u8 shift,
busy->mux.reg = reg;
busy->mux.shift = shift;
- busy->mux.width = width;
+ busy->mux.mask = BIT(width) - 1;
busy->mux.lock = &imx_ccm_lock;
busy->mux_ops = &clk_mux_ops;
--
1.7.10.4
Hi Mike,
On Tue, Mar 26, 2013 at 4:38 PM, Mike Turquette <[email protected]> wrote:
> The recent addition of table-based parent lookups[1] in the common
> clk_mux implementation removed the width member of struct clk_mux and
> replaced it with an arbitrary mask. This broke compilation for i.MX
> platforms using clk_busy_mux which builds upon the common clk_mux.
>
> Fixed by populating the mask member during clk_busy_mux registration
> instead of the now non-existent width member.
>
> [1] http://article.gmane.org/gmane.linux.ports.tegra/10028
>
> Cc: Shawn Guo <[email protected]>
> Cc: Peter De Schrijver <[email protected]>
> Signed-off-by: Mike Turquette <[email protected]>
I sent the same fix earlier today:
http://permalink.gmane.org/gmane.linux.ports.arm.kernel/226143