/* Called from _init_clocks(). Populates the @oh omap_hwmod_opt_clk clock pointers. Returns 0 on success or -EINVAL on error.  */
static int _init_opt_clks(struct omap_hwmod *oh)
/* Called from _init_clocks(). Populates the @oh omap_hwmod_opt_clk clock pointers. Returns 0 on success or -EINVAL on error.  */
static int _init_opt_clks(struct omap_hwmod *oh)
{
	struct omap_hwmod_opt_clk *oc;
	struct clk *c;
	int i;
	int ret = 0;
	for (i = oh->opt_clks_cnt, oc = oh->opt_clks; i > 0; i--, oc++) {
		c = clk_get_sys(oc->clkdev_dev_id, oc->clkdev_con_id);
		WARN(IS_ERR(c), "omap_hwmod: %s: cannot clk_get opt_clk "
		     "%s.%s\n", oh->name, oc->clkdev_dev_id,
		     oc->clkdev_con_id);
		if (IS_ERR(c))
			ret = -EINVAL;
		oc->_clk = c;
	}
	return ret;
}