From: sebastian.hesselbarth@gmail.com (Sebastian Hesselbarth)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH RFC] clk: Introduce userspace clock driver
Date: Mon, 13 May 2013 18:21:13 +0200 [thread overview]
Message-ID: <519112F9.2010102@gmail.com> (raw)
In-Reply-To: <0bf5a185-86f7-4a93-a90f-42caefb06a1d@TX2EHSMHS009.ehs.local>
On 05/13/13 18:09, S?ren Brinkmann wrote:
> On Mon, May 13, 2013 at 09:21:35AM +0400, Mark Brown wrote:
>> On Sun, May 12, 2013 at 12:05:04PM -0700, S?ren Brinkmann wrote:
>>> On Sun, May 12, 2013 at 06:33:44PM +0400, Mark Brown wrote:
>>>> No, there's no confusion here - the clocks that are being exposed to
>>>> userspace are the clocks which enter the FPGA. The driver or whatever
>>>> that understands the FPGA can do what is needed to control them,
>>>> including routing them on to subdevices it instantiates or exposing them
>>>> to userspace.
>>
>>> Such a driver does not exist in general.
>>> For some IP cores, Linux drivers do exist and then
>>> they are supposed to directly use the CCF, IMHO, no need to expose
>>> things to userspace in that case.
>>> I'm trying to cover cases, in which there is no driver available/needed for
>>> the FPGA design, other than some simple clock controls.
>>
>> You're not understanding the point here. If you've got a
>> reprogrammmable FPGA you at least need some way to get the FPGA image in
>> there. This driver is presumably responsible for instantiating whatever
>> is needed to control what is on the FPGA, that could include punting the
>> clocks to userspace if that's sane.
> Well, that driver actually exists. But that just programs a bitstream
> you give it to program. It does not know anything about the design it
> programs and cannot make any kind of decision whether the clocks should
> be userspace controlled or not.
Soeren,
what Mark wants to point out is that you add fabric clocks to the Xilinx
driver instead. This way, you will have user-space controllable clocks
but only if you loaded the xilinx driver first.
IIRC the fabric clock controller provided by Zynq _is_ always there and
accessible from ARM CPUs. You just don't have a new generic driver
allowing to poke with all clocks, but a xilinx only driver allowing you
to set the (xilinx only) fabric clocks.
I've played with Zynq a while ago, did Xilinx mainline the bitfile
driver already? If not, why don't you give it a shot?
Sebastian
WARNING: multiple messages have this Message-ID (diff)
From: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
To: "Sören Brinkmann" <soren.brinkmann@xilinx.com>
Cc: Mark Brown <broonie@kernel.org>,
Mike Turquette <mturquette@linaro.org>,
linux-kernel@vger.kernel.org,
linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH RFC] clk: Introduce userspace clock driver
Date: Mon, 13 May 2013 18:21:13 +0200 [thread overview]
Message-ID: <519112F9.2010102@gmail.com> (raw)
In-Reply-To: <0bf5a185-86f7-4a93-a90f-42caefb06a1d@TX2EHSMHS009.ehs.local>
On 05/13/13 18:09, Sören Brinkmann wrote:
> On Mon, May 13, 2013 at 09:21:35AM +0400, Mark Brown wrote:
>> On Sun, May 12, 2013 at 12:05:04PM -0700, Sören Brinkmann wrote:
>>> On Sun, May 12, 2013 at 06:33:44PM +0400, Mark Brown wrote:
>>>> No, there's no confusion here - the clocks that are being exposed to
>>>> userspace are the clocks which enter the FPGA. The driver or whatever
>>>> that understands the FPGA can do what is needed to control them,
>>>> including routing them on to subdevices it instantiates or exposing them
>>>> to userspace.
>>
>>> Such a driver does not exist in general.
>>> For some IP cores, Linux drivers do exist and then
>>> they are supposed to directly use the CCF, IMHO, no need to expose
>>> things to userspace in that case.
>>> I'm trying to cover cases, in which there is no driver available/needed for
>>> the FPGA design, other than some simple clock controls.
>>
>> You're not understanding the point here. If you've got a
>> reprogrammmable FPGA you at least need some way to get the FPGA image in
>> there. This driver is presumably responsible for instantiating whatever
>> is needed to control what is on the FPGA, that could include punting the
>> clocks to userspace if that's sane.
> Well, that driver actually exists. But that just programs a bitstream
> you give it to program. It does not know anything about the design it
> programs and cannot make any kind of decision whether the clocks should
> be userspace controlled or not.
Soeren,
what Mark wants to point out is that you add fabric clocks to the Xilinx
driver instead. This way, you will have user-space controllable clocks
but only if you loaded the xilinx driver first.
IIRC the fabric clock controller provided by Zynq _is_ always there and
accessible from ARM CPUs. You just don't have a new generic driver
allowing to poke with all clocks, but a xilinx only driver allowing you
to set the (xilinx only) fabric clocks.
I've played with Zynq a while ago, did Xilinx mainline the bitfile
driver already? If not, why don't you give it a shot?
Sebastian
next prev parent reply other threads:[~2013-05-13 16:21 UTC|newest]
Thread overview: 76+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-05-10 17:31 [PATCH RFC] User space clock driver Soren Brinkmann
2013-05-10 17:31 ` Soren Brinkmann
2013-05-10 17:31 ` [PATCH RFC] clk: Introduce userspace " Soren Brinkmann
2013-05-10 17:31 ` Soren Brinkmann
2013-05-10 17:44 ` Emilio López
2013-05-10 17:44 ` Emilio López
2013-05-10 18:15 ` Sören Brinkmann
2013-05-10 18:15 ` Sören Brinkmann
2013-05-10 18:49 ` Emilio López
2013-05-10 18:49 ` Emilio López
2013-05-10 22:18 ` Mike Turquette
2013-05-10 22:18 ` Mike Turquette
2013-05-10 23:01 ` Saravana Kannan
2013-05-10 23:01 ` Saravana Kannan
2013-05-10 23:06 ` Sören Brinkmann
2013-05-10 23:06 ` Sören Brinkmann
2013-05-10 23:25 ` Saravana Kannan
2013-05-10 23:25 ` Saravana Kannan
2013-05-10 23:36 ` Sören Brinkmann
2013-05-10 23:36 ` Sören Brinkmann
2013-05-11 14:21 ` Mark Brown
2013-05-11 14:21 ` Mark Brown
2013-05-16 4:23 ` Saravana Kannan
2013-05-16 4:23 ` Saravana Kannan
2013-05-16 18:21 ` Mark Brown
2013-05-16 18:21 ` Mark Brown
2013-05-10 23:08 ` Sören Brinkmann
2013-05-10 23:08 ` Sören Brinkmann
2013-05-13 8:31 ` Peter De Schrijver
2013-05-13 8:31 ` Peter De Schrijver
[not found] ` <CAHp75Vcr10d=XesGQvrC_v+ijdp3nK+m=w5E7d6GCo1Z9ogWnw@mail.gmail.com>
2013-05-10 18:03 ` Sören Brinkmann
2013-05-10 18:03 ` Sören Brinkmann
2013-05-10 21:24 ` Mark Brown
2013-05-10 21:24 ` Mark Brown
2013-05-11 16:54 ` Sören Brinkmann
2013-05-11 16:54 ` Sören Brinkmann
2013-05-12 14:33 ` Mark Brown
2013-05-12 14:33 ` Mark Brown
2013-05-12 19:05 ` Sören Brinkmann
2013-05-12 19:05 ` Sören Brinkmann
2013-05-13 5:21 ` Mark Brown
2013-05-13 5:21 ` Mark Brown
2013-05-13 16:09 ` Sören Brinkmann
2013-05-13 16:09 ` Sören Brinkmann
2013-05-13 16:21 ` Sebastian Hesselbarth [this message]
2013-05-13 16:21 ` Sebastian Hesselbarth
2013-05-13 17:24 ` Sören Brinkmann
2013-05-13 17:24 ` Sören Brinkmann
2013-05-13 17:37 ` Sebastian Hesselbarth
2013-05-13 17:37 ` Sebastian Hesselbarth
2013-05-13 17:58 ` Sören Brinkmann
2013-05-13 17:58 ` Sören Brinkmann
2013-05-13 18:18 ` Sebastian Hesselbarth
2013-05-13 18:18 ` Sebastian Hesselbarth
2013-05-14 16:46 ` Mike Turquette
2013-05-14 16:46 ` Mike Turquette
2013-05-14 18:09 ` Philip Balister
2013-05-14 18:09 ` Philip Balister
2013-05-15 4:46 ` Mark Brown
2013-05-15 4:46 ` Mark Brown
2013-05-16 4:28 ` Saravana Kannan
2013-05-16 4:28 ` Saravana Kannan
2013-05-16 14:44 ` Philip Balister
2013-05-16 14:44 ` Philip Balister
2013-05-16 17:26 ` Mark Brown
2013-05-16 17:26 ` Mark Brown
2013-05-16 18:55 ` Sören Brinkmann
2013-05-16 18:55 ` Sören Brinkmann
2013-05-17 11:02 ` Mark Brown
2013-05-17 11:02 ` Mark Brown
2013-05-13 18:16 ` Mark Brown
2013-05-13 18:16 ` Mark Brown
2013-05-13 18:20 ` Sebastian Hesselbarth
2013-05-13 18:20 ` Sebastian Hesselbarth
2013-05-13 18:44 ` Mark Brown
2013-05-13 18:44 ` Mark Brown
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=519112F9.2010102@gmail.com \
--to=sebastian.hesselbarth@gmail.com \
--cc=linux-arm-kernel@lists.infradead.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.