All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jeffrey Hugo <jhugo@codeaurora.org>
To: Stephen Boyd <sboyd@kernel.org>,
	Michael Turquette <mturquette@baylibre.com>
Cc: linux-kernel@vger.kernel.org, linux-clk@vger.kernel.org,
	Miquel Raynal <miquel.raynal@bootlin.com>,
	Jerome Brunet <jbrunet@baylibre.com>,
	Russell King <linux@armlinux.org.uk>
Subject: Re: [PATCH 2/9] clk: Introduce get_parent_hw clk op
Date: Fri, 15 Feb 2019 14:34:48 -0700	[thread overview]
Message-ID: <b5e37298-eb2b-be4e-e5b6-ecbd06bc12b5@codeaurora.org> (raw)
In-Reply-To: <155026616459.115909.14315694127255521155@swboyd.mtv.corp.google.com>

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 = __clk_init_parent(core, true);
>>>>> +     if (IS_ERR(core->parent))
>>>>> +             return PTR_ERR(core->parent);
>>>>> +
>>>>> +     /*
>>>>> +      * Populate core->parent if parent has already been clk_core_init'd. If
>>>>> +      * parent has not yet been clk_core_init'd then place clk in the orphan
>>>>> +      * list.  If clk doesn't have any parents then place it in the root
>>>>> +      * clk list.
>>>>> +      *
>>>>> +      * Every time a new clk is clk_init'd then we walk the list of orphan
>>>>> +      * clocks and re-parent any that are children of the clock currently
>>>>> +      * being clk_init'd.
>>>>> +      */
>>>>> +     if (core->parent) {
>>>>> +             hlist_add_head(&core->child_node,
>>>>> +                             &core->parent->children);
>>>>> +             core->orphan = core->parent->orphan;
>>>>> +     } else if (!core->num_parents) {
>>>>> +             hlist_add_head(&core->child_node, &clk_root_list);
>>>>> +             core->orphan = false;
>>>>> +     } else {
>>>>> +             hlist_add_head(&core->child_node, &clk_orphan_list);
>>>>
>>>> Missing "core->orphan = true;"?
>>>> The snippet below had that line.  Its not clear why it appears to be
>>>> dropped here.
>>>>
>>>
>>> Hmm. Weird. I think I may have been getting ahead of myself and moving
>>> the orphan updating code into __clk_init_parent(). I can't remember why
>>> though, so I guess I'll go all the way and move it all into
>>> __clk_init_parent() now. Thanks for pointing it out.
>>>
>>
>> No problem.
>>
>> Just FYI, I've rebased the 8998 mmcc series on top of this, and as far
>> as I can tell, everything seems to be working great.
>>
> 
> Cool. Are you using the new way to specify parents or have you
> maintained the previous design of using string names for parents?
> 

I fully converted to the new way, although I did it in stages, so both 
paths got tested during the conversion.  I plan on posting v2 next week.

-- 
Jeffrey Hugo
Qualcomm Datacenter Technologies as an affiliate of Qualcomm 
Technologies, Inc.
Qualcomm Technologies, Inc. is a member of the
Code Aurora Forum, a Linux Foundation Collaborative Project.

  reply	other threads:[~2019-02-15 21:34 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-01-29  6:10 [PATCH 0/9] Rewrite clk parent handling Stephen Boyd
2019-01-29  6:10 ` [PATCH 1/9] clk: Combine __clk_get() and __clk_create_clk() Stephen Boyd
2019-01-29  6:10 ` [PATCH 2/9] clk: Introduce get_parent_hw clk op Stephen Boyd
2019-01-29  9:34   ` Jerome Brunet
2019-01-29 21:15     ` Stephen Boyd
2019-01-30  9:53       ` Jerome Brunet
2019-01-30 21:30         ` Stephen Boyd
2019-01-31 18:40           ` Jerome Brunet
2019-02-06  0:01             ` Stephen Boyd
2019-02-13  9:16               ` Jerome Brunet
2019-02-15 17:01                 ` Stephen Boyd
2019-02-11 16:09   ` Jeffrey Hugo
2019-02-15 18:47     ` Stephen Boyd
2019-02-15 19:29       ` Jeffrey Hugo
2019-02-15 21:29         ` Stephen Boyd
2019-02-15 21:34           ` Jeffrey Hugo [this message]
2019-01-29  6:10 ` [PATCH 3/9] clk: core: clarify the check for runtime PM Stephen Boyd
2019-01-29  6:10 ` [PATCH 4/9] clk: Introduce of_clk_get_hw_from_clkspec() Stephen Boyd
2019-01-29  6:10 ` [PATCH 5/9] clk: Inform the core about consumer devices Stephen Boyd
2019-01-29  6:10 ` [PATCH 6/9] clk: Move of_clk_*() APIs into clk.c from clkdev.c Stephen Boyd
2019-01-29  6:10 ` [PATCH 7/9] clk: Allow parents to be specified without string names Stephen Boyd
2019-01-29 10:12   ` Jerome Brunet
2019-01-29 18:56     ` Stephen Boyd
2019-01-29 21:08       ` Jerome Brunet
2019-02-13  9:32       ` Jerome Brunet
2019-02-15 21:13         ` Stephen Boyd
2019-01-29  6:10 ` [PATCH 8/9] clk: qcom: gcc-sdm845: Migrate to DT parent mapping Stephen Boyd
2019-01-29  6:10 ` [PATCH 9/9] arm64: dts: qcom: Specify XO clk as input to GCC node Stephen Boyd
2019-01-29 10:12 ` [PATCH 0/9] Rewrite clk parent handling Miquel Raynal

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=b5e37298-eb2b-be4e-e5b6-ecbd06bc12b5@codeaurora.org \
    --to=jhugo@codeaurora.org \
    --cc=jbrunet@baylibre.com \
    --cc=linux-clk@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux@armlinux.org.uk \
    --cc=miquel.raynal@bootlin.com \
    --cc=mturquette@baylibre.com \
    --cc=sboyd@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.