diff --git a/arch/arm/mach-omap2/omap_hwmod.c b/arch/arm/mach-omap2/omap_hwmod.c index 4653efb87a2721..2b58e21c30ac37 100644 --- a/arch/arm/mach-omap2/omap_hwmod.c +++ b/arch/arm/mach-omap2/omap_hwmod.c @@ -783,7 +783,9 @@ static int _init_interface_clks(struct omap_hwmod *oh) if (IS_ERR(c)) { pr_warning("omap_hwmod: %s: cannot clk_get interface_clk %s\n", oh->name, os->clk); - ret = -EINVAL; + if (ret == 0) + ret = -EINVAL; + continue; } os->_clk = c; /* @@ -819,7 +821,9 @@ static int _init_opt_clks(struct omap_hwmod *oh) if (IS_ERR(c)) { pr_warning("omap_hwmod: %s: cannot clk_get opt_clk %s\n", oh->name, oc->clk); - ret = -EINVAL; + if (ret == 0) + ret = -EINVAL; + continue; } oc->_clk = c; /*