Re: [PATCH 2/9] clk: Introduce get_parent_hw clk op

2019-02-15 Thread Stephen Boyd
Quoting Jeffrey Hugo (2019-02-11 08:09:00) > On 1/28/2019 11:10 PM, Stephen Boyd wrote: > > > +static int clk_init_parent(struct clk_core *core) > > +{ > > + core->parent = __clk_init_parent(core, true); > > + if (IS_ERR(core->parent)) > > + return PTR_ERR(core->parent); > > +

Re: [PATCH 2/9] clk: Introduce get_parent_hw clk op

2019-02-15 Thread Jeffrey Hugo
On 2/15/2019 2:29 PM, Stephen Boyd wrote: Quoting Jeffrey Hugo (2019-02-15 11:29:26) On 2/15/2019 11:47 AM, Stephen Boyd wrote: Quoting Jeffrey Hugo (2019-02-11 08:09:00) On 1/28/2019 11:10 PM, Stephen Boyd wrote: +static int clk_init_parent(struct clk_core *core) +{ + core->parent = __c

Re: [PATCH 2/9] clk: Introduce get_parent_hw clk op

2019-02-15 Thread Stephen Boyd
Quoting Jeffrey Hugo (2019-02-15 11:29:26) > On 2/15/2019 11:47 AM, Stephen Boyd wrote: > > Quoting Jeffrey Hugo (2019-02-11 08:09:00) > >> On 1/28/2019 11:10 PM, Stephen Boyd wrote: > >> > >>> +static int clk_init_parent(struct clk_core *core) > >>> +{ > >>> + core->parent = __clk_init_parent(

Re: [PATCH 2/9] clk: Introduce get_parent_hw clk op

2019-02-15 Thread Jeffrey Hugo
On 2/15/2019 11:47 AM, Stephen Boyd wrote: Quoting Jeffrey Hugo (2019-02-11 08:09:00) On 1/28/2019 11:10 PM, Stephen Boyd wrote: +static int clk_init_parent(struct clk_core *core) +{ + core->parent = __clk_init_parent(core, true); + if (IS_ERR(core->parent)) + return PTR_ER

Re: [PATCH 2/9] clk: Introduce get_parent_hw clk op

2019-02-15 Thread Stephen Boyd
Quoting Jerome Brunet (2019-02-13 01:16:18) > On Tue, 2019-02-05 at 16:01 -0800, Stephen Boyd wrote: > > > > > > I really don't understand why you insist on keeping this special case for > > > num_parent == 1, when we know it is not coherent. > > > > > > Considering, that I already proposed the f

Re: [PATCH 2/9] clk: Introduce get_parent_hw clk op

2019-02-13 Thread Jerome Brunet
On Tue, 2019-02-05 at 16:01 -0800, Stephen Boyd wrote: > Quoting Jerome Brunet (2019-01-31 10:40:07) > > On Wed, 2019-01-30 at 13:30 -0800, Stephen Boyd wrote: > > > > With this quirk, CCF is making an assumption that might be wrong. > > > > > > > > The quirk is very easy put in the get_parent() c

Re: [PATCH 2/9] clk: Introduce get_parent_hw clk op

2019-02-11 Thread Jeffrey Hugo
On 1/28/2019 11:10 PM, Stephen Boyd wrote: The clk_ops::get_parent function is limited in ability to return errors because it returns a u8. A "workaround" to return an error is to return a number >= the number of parents of a clk. This will in turn cause the framework to "orphan" the clk and make

Re: [PATCH 2/9] clk: Introduce get_parent_hw clk op

2019-02-05 Thread Stephen Boyd
Quoting Jerome Brunet (2019-01-31 10:40:07) > On Wed, 2019-01-30 at 13:30 -0800, Stephen Boyd wrote: > > > With this quirk, CCF is making an assumption that might be wrong. > > > > > > The quirk is very easy put in the get_parent() callback of the said > > > driver, or > > > even better, don't pro

Re: [PATCH 2/9] clk: Introduce get_parent_hw clk op

2019-01-31 Thread Jerome Brunet
On Wed, 2019-01-30 at 13:30 -0800, Stephen Boyd wrote: > > With this quirk, CCF is making an assumption that might be wrong. > > > > The quirk is very easy put in the get_parent() callback of the said > > driver, or > > even better, don't provide the callback if it should not be called. > > > > I

Re: [PATCH 2/9] clk: Introduce get_parent_hw clk op

2019-01-30 Thread Stephen Boyd
Quoting Jerome Brunet (2019-01-30 01:53:41) > > It is the value we find in the register after the bootloader. Since we have no > idea what it is, we must assume it is invalid. Ok, so my understanding is correct. > > The problem was that there only one known parent for this particular clock, > a

Re: [PATCH 2/9] clk: Introduce get_parent_hw clk op

2019-01-30 Thread Jerome Brunet
On Tue, 2019-01-29 at 13:15 -0800, Stephen Boyd wrote: > > I suppose this is the answer the discussion we had last year. I'm not sure > > it > > answer the problem. In the case I presented, we have no idea wether the > > setting is valid or not. > > > > We can't assume it is `at least something va

Re: [PATCH 2/9] clk: Introduce get_parent_hw clk op

2019-01-29 Thread Stephen Boyd
Quoting Jerome Brunet (2019-01-29 01:34:38) > On Mon, 2019-01-28 at 22:10 -0800, Stephen Boyd wrote: > > --- > > drivers/clk/clk.c| 117 ++- > > include/linux/clk-provider.h | 9 +++ > > 2 files changed, 96 insertions(+), 30 deletions(-) > > > > diff

Re: [PATCH 2/9] clk: Introduce get_parent_hw clk op

2019-01-29 Thread Jerome Brunet
On Mon, 2019-01-28 at 22:10 -0800, Stephen Boyd wrote: > The clk_ops::get_parent function is limited in ability to return errors > because it returns a u8. A "workaround" to return an error is to return > a number >= the number of parents of a clk. This will in turn cause the > framework to "orphan

[PATCH 2/9] clk: Introduce get_parent_hw clk op

2019-01-28 Thread Stephen Boyd
The clk_ops::get_parent function is limited in ability to return errors because it returns a u8. A "workaround" to return an error is to return a number >= the number of parents of a clk. This will in turn cause the framework to "orphan" the clk and make the parent of the clk NULL. This isn't reall