All of lore.kernel.org
 help / color / mirror / Atom feed
From: Stephen Boyd <sboyd@codeaurora.org>
To: Masahiro Yamada <yamada.masahiro@socionext.com>
Cc: linux-clk@vger.kernel.org, Stephen Warren <swarren@wwwdotorg.org>,
	linux-fbdev@vger.kernel.org,
	Michael Turquette <mturquette@baylibre.com>,
	Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>,
	linux-kernel@vger.kernel.org, Hans de Goede <hdegoede@redhat.com>,
	Russell King <linux@armlinux.org.uk>,
	Shawn Guo <shawnguo@kernel.org>,
	Dong Aisheng <aisheng.dong@nxp.com>
Subject: Re: [RFC PATCH] clk: move of_clk_get_parent_count() declaration to <linux/__clk.h>
Date: Thu, 12 Oct 2017 16:17:09 -0700	[thread overview]
Message-ID: <20171012231709.GH18706@codeaurora.org> (raw)
In-Reply-To: <1507166751-2012-1-git-send-email-yamada.masahiro@socionext.com>

On 10/05, Masahiro Yamada wrote:
> The clock consumer, drivers/video/fbdev/simplefb.c, includes
> <linux/clk-provider.h> just for calling of_clk_get_parent_count().
> This is ugly.
> 
> Looking at simplefb_clocks_get(), of_clk_get_parent_count() seems
> useful for clock consumers as well as for clock providers.
> 
> Unfortunately, we do not have a good home for declarations shared
> between consumers and providers.
> 
> Create a new header <linux/__clk.h>, and move it over to it.  This
> header must be included via <linux/clk.h> or <linux/clk-provider.h>
> (this is why it is prefixed with double-underscore).  Add #error
> so the build terminates if it is included directly.
> 
> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
> ---

How about we add a get_all_the_clks_for_the_device() sort of API
that uses the bulk clk code but also allocates the array by
reading the number of clks from DT? Please think of a better name
of course. We can figure out how to handle non-DT platforms if we
need to. With clkdev we could probably handle it with some sort
of lookup table search given a device name. Don't add that part
until we have a user though. I assume simplefb is all DT
platforms?

Either way, it looks like what we really want here is a way to
get every clk for a device and not look at the details. USB has a
similar case, which I think Shawn Guo/Dong Aisheng was trying to
add an OF based bulk clk_get() API called of_clk_bulk_get()
for[1]. If this get all clks API works there too then we should
use it. If it can be non-DT specific, even better.

[1] http://lkml.kernel.org/r/1506415441-4435-1-git-send-email-aisheng.dong@nxp.com

-- 
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
a Linux Foundation Collaborative Project

WARNING: multiple messages have this Message-ID (diff)
From: Stephen Boyd <sboyd@codeaurora.org>
To: Masahiro Yamada <yamada.masahiro@socionext.com>
Cc: linux-clk@vger.kernel.org, Stephen Warren <swarren@wwwdotorg.org>,
	linux-fbdev@vger.kernel.org,
	Michael Turquette <mturquette@baylibre.com>,
	Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>,
	linux-kernel@vger.kernel.org, Hans de Goede <hdegoede@redhat.com>,
	Russell King <linux@armlinux.org.uk>,
	Shawn Guo <shawnguo@kernel.org>,
	Dong Aisheng <aisheng.dong@nxp.com>
Subject: Re: [RFC PATCH] clk: move of_clk_get_parent_count() declaration to <linux/__clk.h>
Date: Thu, 12 Oct 2017 23:17:09 +0000	[thread overview]
Message-ID: <20171012231709.GH18706@codeaurora.org> (raw)
In-Reply-To: <1507166751-2012-1-git-send-email-yamada.masahiro@socionext.com>

On 10/05, Masahiro Yamada wrote:
> The clock consumer, drivers/video/fbdev/simplefb.c, includes
> <linux/clk-provider.h> just for calling of_clk_get_parent_count().
> This is ugly.
> 
> Looking at simplefb_clocks_get(), of_clk_get_parent_count() seems
> useful for clock consumers as well as for clock providers.
> 
> Unfortunately, we do not have a good home for declarations shared
> between consumers and providers.
> 
> Create a new header <linux/__clk.h>, and move it over to it.  This
> header must be included via <linux/clk.h> or <linux/clk-provider.h>
> (this is why it is prefixed with double-underscore).  Add #error
> so the build terminates if it is included directly.
> 
> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
> ---

How about we add a get_all_the_clks_for_the_device() sort of API
that uses the bulk clk code but also allocates the array by
reading the number of clks from DT? Please think of a better name
of course. We can figure out how to handle non-DT platforms if we
need to. With clkdev we could probably handle it with some sort
of lookup table search given a device name. Don't add that part
until we have a user though. I assume simplefb is all DT
platforms?

Either way, it looks like what we really want here is a way to
get every clk for a device and not look at the details. USB has a
similar case, which I think Shawn Guo/Dong Aisheng was trying to
add an OF based bulk clk_get() API called of_clk_bulk_get()
for[1]. If this get all clks API works there too then we should
use it. If it can be non-DT specific, even better.

[1] http://lkml.kernel.org/r/1506415441-4435-1-git-send-email-aisheng.dong@nxp.com

-- 
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
a Linux Foundation Collaborative Project

  reply	other threads:[~2017-10-12 23:17 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-10-05  1:25 [RFC PATCH] clk: move of_clk_get_parent_count() declaration to <linux/__clk.h> Masahiro Yamada
2017-10-05  1:25 ` Masahiro Yamada
2017-10-12 23:17 ` Stephen Boyd [this message]
2017-10-12 23:17   ` Stephen Boyd
2017-10-28 17:35   ` Masahiro Yamada
2017-10-28 17:35     ` Masahiro Yamada
2017-11-02  5:32     ` Stephen Boyd
2017-11-02  5:32       ` Stephen Boyd

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=20171012231709.GH18706@codeaurora.org \
    --to=sboyd@codeaurora.org \
    --cc=aisheng.dong@nxp.com \
    --cc=b.zolnierkie@samsung.com \
    --cc=hdegoede@redhat.com \
    --cc=linux-clk@vger.kernel.org \
    --cc=linux-fbdev@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux@armlinux.org.uk \
    --cc=mturquette@baylibre.com \
    --cc=shawnguo@kernel.org \
    --cc=swarren@wwwdotorg.org \
    --cc=yamada.masahiro@socionext.com \
    /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.