Re: [PATCH v4] clk: add CS2000 Fractional-N driver

From: Kuninori Morimoto
Date: Wed Oct 14 2015 - 21:35:35 EST



Hi Stephen

> > Can I confirm ?
> > Does this "i2c device down" means call i2c_set_clientdata()
> > in this function ?
>
> I mean passing a struct device pointer to this function and then
> using it here in the clk_register() function.

I understand. will fix in v5

> > > > +static int cs2000_clk_init(struct cs2000_priv *priv)
> > > > +{
> > > > + struct device *dev = priv_to_dev(priv);
> > > > + struct device_node *np = dev->of_node;
> > > > + u32 rate;
> > > > + int ch = 0; /* it uses ch0 only at this point */
> > > > + int ret;
> > > > +
> > > > + if (of_property_read_u32(np, "clock-frequency", &rate))
> > >
> > > Why can't we do this with DT assigned rates?
> >
> > What doesn this "DT assigned rates" mean ?
> > this rate will be used as default output
>
> See the "Assigned clock parents and rates" section of
> Documentation/devicetree/bindings/clock/clock-bindings.txt and
> commit 86be408bfbd8 (clk: Support for clock parents and rates
> assigned from device tree, 2014-06-18).

I understand. If my understanding is correct, user driver
setups/enables this clock.
If so, I still want this "clock-frequency" feature.
because this clock requests other clock on my board.
And requested clock requests this clock too.
Thus, these clocks have dead lock on probe time

cs2000: clk_multiplier@4f {
...
clocks = <&rcar_sound 0>, ...
...
};

&rcar_sound {
...
assigned-clocks = <&cs2000>;
assigned-clock-rates = <24576000>;
...
};



Best regards
---
Kuninori Morimoto
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/