From: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
To: Stephen Warren <swarren@wwwdotorg.org>
Cc: Guenter Roeck <linux@roeck-us.net>,
Mark Rutland <mark.rutland@arm.com>,
devicetree@vger.kernel.org,
Mike Turquette <mturquette@linaro.org>,
Hyun Kwon <hyunk@xilinx.com>, Pawel Moll <pawel.moll@arm.com>,
Ian Campbell <ijc+devicetree@hellion.org.uk>,
linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org,
Rob Herring <rob.herring@calxeda.com>,
linux-arm-kernel@lists.infradead.org,
Rob Landley <rob@landley.net>,
Grant Likely <grant.likely@linaro.org>,
Soren Brinkmann <soren.brinkmann@xilinx.com>
Subject: Re: [PATCH] clk: si570: Add a driver for SI570 oscillators
Date: Tue, 17 Sep 2013 09:59:17 +0200 [thread overview]
Message-ID: <52380BD5.8080105@gmail.com> (raw)
In-Reply-To: <52374FF7.8040604@wwwdotorg.org>
On 09/16/2013 08:37 PM, Stephen Warren wrote:
> On 09/16/2013 11:35 AM, Guenter Roeck wrote:
>> On Mon, Sep 16, 2013 at 10:59:58AM -0600, Stephen Warren wrote:
>>> On 09/16/2013 10:49 AM, Guenter Roeck wrote:
>>>> On Mon, Sep 16, 2013 at 10:34:28AM -0600, Stephen Warren wrote:
>>>>> On 09/12/2013 06:55 PM, Soren Brinkmann wrote:
>>>>>> Add a driver for SILabs 570, 571, 598, 599 programmable oscillators.
>>>>>> The devices generate low-jitter clock signals and are reprogrammable via
>>>>>> an I2C interface.
> ...
>>>>>> +Optional properties:
>>>>>> + - initial-fout: Initial output frequency to set during probe
>>>>>
>>>>> "probe" is a Linux-specific concept. This property should be removed. If
>>>>> the driver is asked to set a specific frequency, it should do so, but I
>>>>> don't think it should program something pro-actively just because it
>>>>> starts up.
>>>>>
>>>>> If this property is acceptable, it'd be better to describe it more along
>>>>> the lines of the following:
>>>>>
>>>>> initial-fout: The frequency at which the system requires the clock to
>>>>> operate.
>>>>
>>>> It should probably be something like "clock-frequency". In many use cases
>>>> the programmed frequency is set to a constant frequency at system startup
>>>> and never changed, similar to other clocks.
>>>
>>> I was going to suggest that too, but re-considered since I think
>>> clock-frequency is more appropriate for fixed-frequency clocks, rather
>>> than to specify the value at which a programmable clock generator should
>>> operate?
>>>
>>> I don't think we have a good story yet for how to represent
>>> how-we-want-the-clock-tree-configured, as opposed to representing the HW
>>> itself (which is what DT should be more about).
>>
>> In many cases the chip _is_ used to generate a fixed frequency, so we will
>> have to have a means to describe it. That it _can_ be used differently is a
>> different matter. After all, that is true for many clock generators.
>
> Perhaps if clock-frequency is specified, the driver should refuse to
> provide anything else. If clock-frequency isn't specified, the driver
> shouldn't touch the HW when it initializes, but should honor any
> requests that come in from other drivers? That would maintain what I
> feel is clock-frequency's connection to being a fixed clock.
For the clk-si5351 programmable clock driver in mainline, it already
uses "clock-frequency" for initial clock setup but allows to set it
later on. IMHO that is ok, because from a initial point-of-view, an
initial frequency is fixed. As soon as the driver takes over, the user
is free to do whatever he wants and should not be limited by DT.
But if we vote against that approach, we should probably also modifiy
clk-si5351 accordingly.
Sebastian
next prev parent reply other threads:[~2013-09-17 7:59 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-09-13 0:55 [PATCH] SI570 clock driver Soren Brinkmann
[not found] ` <1379033737-30015-1-git-send-email-soren.brinkmann-gjFFaj9aHVfQT0dZR+AlfA@public.gmane.org>
2013-09-13 0:55 ` [PATCH] clk: si570: Add a driver for SI570 oscillators Soren Brinkmann
2013-09-13 17:00 ` Guenter Roeck
2013-09-13 17:26 ` Sören Brinkmann
2013-09-13 19:48 ` Guenter Roeck
[not found] ` <20130913194822.GA12117-0h96xk9xTtrk1uMJSBkQmQ@public.gmane.org>
2013-09-13 21:05 ` Sören Brinkmann
2013-09-13 21:14 ` Guenter Roeck
[not found] ` <c6755ff6-104d-40fe-a753-0e165cff1e10-dAX9Bq04yCSXHCJdrdq+zrjjLBE8jN/0@public.gmane.org>
2013-09-14 8:01 ` Sebastian Hesselbarth
2013-09-16 16:34 ` Stephen Warren
2013-09-16 16:49 ` Guenter Roeck
[not found] ` <20130916164927.GB21352-0h96xk9xTtrk1uMJSBkQmQ@public.gmane.org>
2013-09-16 16:59 ` Stephen Warren
[not found] ` <5237390E.5070203-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2013-09-16 17:35 ` Guenter Roeck
[not found] ` <20130916173540.GA3481-0h96xk9xTtrk1uMJSBkQmQ@public.gmane.org>
2013-09-16 18:37 ` Stephen Warren
2013-09-16 19:14 ` Guenter Roeck
2013-09-17 7:59 ` Sebastian Hesselbarth [this message]
2013-09-17 13:08 ` Guenter Roeck
2013-09-17 16:14 ` Stephen Warren
2013-09-18 20:41 ` Sören Brinkmann
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=52380BD5.8080105@gmail.com \
--to=sebastian.hesselbarth@gmail.com \
--cc=devicetree@vger.kernel.org \
--cc=grant.likely@linaro.org \
--cc=hyunk@xilinx.com \
--cc=ijc+devicetree@hellion.org.uk \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux@roeck-us.net \
--cc=mark.rutland@arm.com \
--cc=mturquette@linaro.org \
--cc=pawel.moll@arm.com \
--cc=rob.herring@calxeda.com \
--cc=rob@landley.net \
--cc=soren.brinkmann@xilinx.com \
--cc=swarren@wwwdotorg.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 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).