The clock passed as an argument to clk_mux_determine_rate_flags() can not have a parent clock if is either a root clock or an orphan. In those cases parent is NULL so parent->hw shouldn't be dereferenced. Fixes: 035a61c314eb3 ("clk: Make clk API return per-user struct clk instances") Signed-off-by: Javier Martinez Canillas <javier.martinez@xxxxxxxxxxxxxxx> --- drivers/clk/clk.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/clk/clk.c b/drivers/clk/clk.c index 7f53166af5e6..7bd8893c94d6 100644 --- a/drivers/clk/clk.c +++ b/drivers/clk/clk.c @@ -799,7 +799,7 @@ clk_mux_determine_rate_flags(struct clk_hw *hw, unsigned long rate, /* if NO_REPARENT flag set, pass through to current parent */ if (core->flags & CLK_SET_RATE_NO_REPARENT) { parent = core->parent; - if (core->flags & CLK_SET_RATE_PARENT) + if (core->flags & CLK_SET_RATE_PARENT && parent) best = __clk_determine_rate(parent->hw, rate, min_rate, max_rate); else if (parent) -- 2.1.3 -- To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html