From: Greg KH <gregkh@linuxfoundation.org>
To: Sylwester Nawrocki <s.nawrocki@samsung.com>
Cc: Ben Dooks <ben.dooks@codethink.co.uk>,
devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-arm-kernel@lists.infradead.org, mturquette@linaro.org,
linux@arm.linux.org.uk, robh+dt@kernel.org,
grant.likely@linaro.org, mark.rutland@arm.com,
galak@codeaurora.org, kyungmin.park@samsung.com,
sw0312.kim@samsung.com, m.szyprowski@samsung.com,
t.figa@samsung.com, laurent.pinchart@ideasonboard.com,
s.hauer@pengutronix.de
Subject: Re: [PATCH RFC v4 2/2] clk: Add handling of clk parent and rate assigned from DT
Date: Tue, 1 Apr 2014 09:37:44 -0700 [thread overview]
Message-ID: <20140401163744.GE3842@kroah.com> (raw)
In-Reply-To: <533ACBD0.8030209@samsung.com>
On Tue, Apr 01, 2014 at 04:23:12PM +0200, Sylwester Nawrocki wrote:
> On 01/04/14 15:19, Ben Dooks wrote:
> > On 31/03/14 21:06, Greg KH wrote:
> >> > On Mon, Mar 31, 2014 at 06:41:56PM +0200, Sylwester Nawrocki wrote:
> [...]
> >> > I don't understand why you need the driver core to initialize this one
> >> > type of thing? That should be in a driver, or in a class, or at worse
> >> > case, the platform code.
> >> >
> >> > What makes clocks so "unique" here?
>
> The reason I put it in the driver core was mainly to avoid having many
> drivers doing same call to this initialization function.
> I was considering moving it to the bus code, still there are several
> buses for which it would need to be repeated.
"several" is how many? 2? 3? 10?
Please fix it "correctly" and don't put it in the driver core just
because it seems easier that way.
> Maybe really_probe() is not a best place to put this, nonetheless
> the requirements I could list were:
>
> 1. not involving individual drivers,
Why not?
> 2. have such an initialization call done for all devices, irrespective
> of Linux bus or class type,
Why? Do _all_ devices that Linux supports have this issue to be
resolved?
> 3. Handle errors properly, e.g. defer driver probing if a clock for
> a device is not yet available.
Then do it in the bus that controls that device, as it knows to defer
probing at that point in time.
> One advantage I could see from making the call from within a device
> driver is that a device could keep using the common DT bindings and
> replace the common initialization function with a private one, if
> there is a need for some quirks handled for a device. With approach
> as in this patch it's difficult to override the default behaviour.
> However then there is a question whether we strive for the clocks
> management to be possibly kept away from device drivers.
>
> > I suppose the issue here is that a lot of drivers currently use
> > clocks and a number of systems have badly setup default clock trees
> > at start time.
> >
> > Mark Brown and others have argued that the management of clocks which
> > is common to all devices should not live in the driver.
>
> True, motivation behind this patch series was also replacing custom
> code in multiple drivers doing similar clock rate or parent setting
> by a common code, using standardized DT binding.
Then put it in the bus that controls these broken devices / platforms.
greg k-h
next prev parent reply other threads:[~2014-04-01 16:37 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-03-31 16:41 [PATCH RFC v4 0/2] clk: Support for DT assigned clock parents and rates Sylwester Nawrocki
[not found] ` <1396284116-19178-1-git-send-email-s.nawrocki-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org>
2014-03-31 16:41 ` [PATCH RFC v4 1/2] clk: Add function parsing arbitrary clock list DT property Sylwester Nawrocki
2014-03-31 16:41 ` [PATCH RFC v4 2/2] clk: Add handling of clk parent and rate assigned from DT Sylwester Nawrocki
[not found] ` <1396284116-19178-3-git-send-email-s.nawrocki-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org>
2014-03-31 17:04 ` Ben Dooks
[not found] ` <5339A036.6090703-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org>
2014-04-01 6:23 ` Sascha Hauer
[not found] ` <20140401062306.GS17250-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
2014-04-01 9:31 ` Sylwester Nawrocki
2014-03-31 20:06 ` Greg KH
[not found] ` <20140331200620.GA13881-U8xfFu+wG4EAvxtiuMwx3w@public.gmane.org>
2014-04-01 13:19 ` Ben Dooks
[not found] ` <533ABCEC.8040701-4yDnlxn2s6sWdaTGBSpHTA@public.gmane.org>
2014-04-01 14:23 ` Sylwester Nawrocki
2014-04-01 16:37 ` Greg KH [this message]
[not found] ` <20140401163744.GE3842-U8xfFu+wG4EAvxtiuMwx3w@public.gmane.org>
2014-04-02 5:37 ` Sascha Hauer
2014-04-02 10:24 ` Sylwester Nawrocki
2014-04-02 10:18 ` Sylwester Nawrocki
2014-04-02 8:01 ` Peter De Schrijver
[not found] ` <20140402080102.GK2931-Rysk9IDjsxmJz7etNGeUX8VPkgjIgRvpAL8bYrjMMd8@public.gmane.org>
2014-04-02 13:02 ` Sylwester Nawrocki
2014-04-01 16:35 ` Greg KH
2014-04-01 13:15 ` Laurent Pinchart
2014-04-01 14:52 ` Sylwester Nawrocki
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=20140401163744.GE3842@kroah.com \
--to=gregkh@linuxfoundation.org \
--cc=ben.dooks@codethink.co.uk \
--cc=devicetree@vger.kernel.org \
--cc=galak@codeaurora.org \
--cc=grant.likely@linaro.org \
--cc=kyungmin.park@samsung.com \
--cc=laurent.pinchart@ideasonboard.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux@arm.linux.org.uk \
--cc=m.szyprowski@samsung.com \
--cc=mark.rutland@arm.com \
--cc=mturquette@linaro.org \
--cc=robh+dt@kernel.org \
--cc=s.hauer@pengutronix.de \
--cc=s.nawrocki@samsung.com \
--cc=sw0312.kim@samsung.com \
--cc=t.figa@samsung.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).