Re: [PATCH 19/33] ARM i.MX: prepare for common clock framework

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

On Fri, Apr 27, 2012 at 02:40:09PM +0800, Shawn Guo wrote:
> On Wed, Apr 25, 2012 at 05:28:09PM +0200, Sascha Hauer wrote:
> > - Add necessary #ifdefs for CONFIG_COMMON_CLOCK
> > - Add a global spinlock to protect the CCM registers
> > 
> > Signed-off-by: Sascha Hauer <s.hauer@xxxxxxxxxxxxxx>
> > ---
> > +
> > +static inline struct clk *imx_clk_mux(const char *name, void __iomem *reg,
> > +		u8 shift, u8 width, const char **parents, int num_parents)
> > +{
> > +	return clk_register_mux(NULL, name, parents, num_parents, 0, reg, shift,
> I think the fourth parameter should be CLK_SET_RATE_PARENT too, as mux
> could also likely be in a clk_set_rate propagation path, saying it has
> a parent clk who has .round_rate and .set_rate operations.

Nope, we can't do this. When we do this every clock_set_rate on a leaf
node will propagate up to the ipg, ahb, main_clk, plls and whatever is
up there.

I made the assumption that we can safely propagate up to the next mux
but not further. It may turn out that this is to simple and needs
adjustments, but generally adding a CLK_SET_RATE_PARENT to a mux won't


Pengutronix e.K.                           |                             |
Industrial Linux Solutions                 |  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |

linux-arm-kernel mailing list

[Linux ARM (vger)]     [Linux ARM MSM]     [Linux Omap]     [Linux Arm]     [Linux Tegra]     [Fedora ARM]     [eCos]     [Linux Fastboot]     [Gcc Help]     [Git]     [DCCP]     [IETF Announce]     [Security]     [PDAs]     [Linux]     [Linux MIPS]     [Yosemite Campsites]     [Photos]

Add to Google Follow linuxarm on Twitter