linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* clk: dt: bindings for mux-clock
@ 2015-03-19 21:50 Sergej Sawazki
  2015-03-22 17:10 ` Michael Turquette
  0 siblings, 1 reply; 4+ messages in thread
From: Sergej Sawazki @ 2015-03-19 21:50 UTC (permalink / raw)
  To: mturquette, linux-kernel

Hi Mike,

I came across your "[PATCH v2 0/5] clk: dt: bindings for mux, divider & 
gate clocks" email from 16 Jun 2013. The DT bindings for simple clock 
multiplexers would be very helpful for a board I am working on. Do you 
see any chance to get it into mainline?

Many thanks in advance!
Regards,
Sergej

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: clk: dt: bindings for mux-clock
  2015-03-19 21:50 clk: dt: bindings for mux-clock Sergej Sawazki
@ 2015-03-22 17:10 ` Michael Turquette
  2015-03-25 19:19   ` Sergej Sawazki
  0 siblings, 1 reply; 4+ messages in thread
From: Michael Turquette @ 2015-03-22 17:10 UTC (permalink / raw)
  To: Sergej Sawazki, linux-kernel

Quoting Sergej Sawazki (2015-03-19 14:50:50)
> Hi Mike,
> 
> I came across your "[PATCH v2 0/5] clk: dt: bindings for mux, divider & 
> gate clocks" email from 16 Jun 2013. The DT bindings for simple clock 
> multiplexers would be very helpful for a board I am working on. Do you 
> see any chance to get it into mainline?

Hi Sergej,

I abandoned those binding a while back. The reason is that those are
one-node-per-clock bindings, which are unpopular with the DT crowd.
Instead most bindings today use a single node to represent a clock
provider, which maps onto a clock driver in Linux.

Is your clock provider made up of only a single clock? If so then the
bindings you mentioned above may be appropriate. But if you have a clock
controller IP block that manages several clocks then it is better for
you to follow the clock provider binding style. There is no shortage of
good examples on how to do this. See the QCOM, Samsung and Nvidia
bindings for ideas.

Regards,
Mike

> 
> Many thanks in advance!
> Regards,
> Sergej

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: clk: dt: bindings for mux-clock
  2015-03-22 17:10 ` Michael Turquette
@ 2015-03-25 19:19   ` Sergej Sawazki
  2015-04-01  1:40     ` Michael Turquette
  0 siblings, 1 reply; 4+ messages in thread
From: Sergej Sawazki @ 2015-03-25 19:19 UTC (permalink / raw)
  To: Michael Turquette, linux-kernel, jsarha

Am 22.03.2015 um 18:10 schrieb Michael Turquette:
> Quoting Sergej Sawazki (2015-03-19 14:50:50)
>> Hi Mike,
>>
>> I came across your "[PATCH v2 0/5] clk: dt: bindings for mux, divider &
>> gate clocks" email from 16 Jun 2013. The DT bindings for simple clock
>> multiplexers would be very helpful for a board I am working on. Do you
>> see any chance to get it into mainline?
>
> Hi Sergej,
>
> I abandoned those binding a while back. The reason is that those are
> one-node-per-clock bindings, which are unpopular with the DT crowd.
> Instead most bindings today use a single node to represent a clock
> provider, which maps onto a clock driver in Linux.
>
> Is your clock provider made up of only a single clock? If so then the
> bindings you mentioned above may be appropriate. But if you have a clock
> controller IP block that manages several clocks then it is better for
> you to follow the clock provider binding style. There is no shortage of
> good examples on how to do this. See the QCOM, Samsung and Nvidia
> bindings for ideas.
>
> Regards,
> Mike
>
>>
>> Many thanks in advance!
>> Regards,
>> Sergej
Hi Mike, many thanks for your answer.

My clock provider is made up of two external oscillators and an
external clock multiplexer. The clock multiplexer has two inputs and
one output. See IDT 853S01I for example. The oscillators are connected
to the multiplexer inputs. The clock consumer is connected to the
output of the multiplexer. The multiplexer is controlled by a gpio to
select one of the oscillators.

Based on clk-gpio-gate.c, I am considering to develop a driver for a
gpio controlled clock multiplexer. Do you think it makes sense? Or
should I choose a different approach?

Regards,
Sergej


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: clk: dt: bindings for mux-clock
  2015-03-25 19:19   ` Sergej Sawazki
@ 2015-04-01  1:40     ` Michael Turquette
  0 siblings, 0 replies; 4+ messages in thread
From: Michael Turquette @ 2015-04-01  1:40 UTC (permalink / raw)
  To: Sergej Sawazki, linux-kernel, jsarha

Quoting Sergej Sawazki (2015-03-25 12:19:42)
> Am 22.03.2015 um 18:10 schrieb Michael Turquette:
> > Quoting Sergej Sawazki (2015-03-19 14:50:50)
> >> Hi Mike,
> >>
> >> I came across your "[PATCH v2 0/5] clk: dt: bindings for mux, divider &
> >> gate clocks" email from 16 Jun 2013. The DT bindings for simple clock
> >> multiplexers would be very helpful for a board I am working on. Do you
> >> see any chance to get it into mainline?
> >
> > Hi Sergej,
> >
> > I abandoned those binding a while back. The reason is that those are
> > one-node-per-clock bindings, which are unpopular with the DT crowd.
> > Instead most bindings today use a single node to represent a clock
> > provider, which maps onto a clock driver in Linux.
> >
> > Is your clock provider made up of only a single clock? If so then the
> > bindings you mentioned above may be appropriate. But if you have a clock
> > controller IP block that manages several clocks then it is better for
> > you to follow the clock provider binding style. There is no shortage of
> > good examples on how to do this. See the QCOM, Samsung and Nvidia
> > bindings for ideas.
> >
> > Regards,
> > Mike
> >
> >>
> >> Many thanks in advance!
> >> Regards,
> >> Sergej
> Hi Mike, many thanks for your answer.
> 
> My clock provider is made up of two external oscillators and an
> external clock multiplexer. The clock multiplexer has two inputs and
> one output. See IDT 853S01I for example. The oscillators are connected
> to the multiplexer inputs. The clock consumer is connected to the
> output of the multiplexer. The multiplexer is controlled by a gpio to
> select one of the oscillators.
> 
> Based on clk-gpio-gate.c, I am considering to develop a driver for a
> gpio controlled clock multiplexer. Do you think it makes sense? Or
> should I choose a different approach?

It makes enough sense to try. Hopefully there will be others on the list
that can use it. Be sure to reference the hardware you are using in your
commitlog as that tends to help.

Also I haven't spent much time looking at the gpio gate stuff, but you
might consider whether your mux code should be combined with that
somehow.

Regards,
Mike

> 
> Regards,
> Sergej
> 

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2015-04-01  1:40 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-03-19 21:50 clk: dt: bindings for mux-clock Sergej Sawazki
2015-03-22 17:10 ` Michael Turquette
2015-03-25 19:19   ` Sergej Sawazki
2015-04-01  1:40     ` Michael Turquette

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).