All of lore.kernel.org
 help / color / mirror / Atom feed
From: Arnd Bergmann <arnd@arndb.de>
To: Javier Martinez Canillas <javier@dowhile0.org>
Cc: Tony Lindgren <tony@atomide.com>, Eliad Peller <eliad@wizery.com>,
	"linux-wireless@vger.kernel.org" <linux-wireless@vger.kernel.org>,
	"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
	"linux-omap@vger.kernel.org" <linux-omap@vger.kernel.org>,
	"linux-arm-kernel@lists.infradead.org"
	<linux-arm-kernel@lists.infradead.org>,
	Sekhar Nori <nsekhar@ti.com>,
	Kevin Hilman <khilman@deeprootsystems.com>
Subject: Re: [PATCH v5 3/3] ARM: dts: igep00x0: add wl18xx bindings
Date: Wed, 11 Mar 2015 13:40:12 +0100	[thread overview]
Message-ID: <6286151.8rcX893TN6@wuerfel> (raw)
In-Reply-To: <CABxcv=nE_Qd7do+dRyp=fw3wYmWFb+0eEjXYOtdjqE55Cp0zmQ@mail.gmail.com>

On Wednesday 11 March 2015 12:34:03 Javier Martinez Canillas wrote:
> Hello Arnd,
> 
> On Wed, Mar 11, 2015 at 10:53 AM, Arnd Bergmann <arnd@arndb.de> wrote:
> > On Wednesday 11 March 2015 02:00:59 Javier Martinez Canillas wrote:
> >>
> >> What do you mean by parsing here? IIUC there isn't a clock driver for
> >> these clocks and are setup directly in the
> >> drivers/net/wireless/ti/wl12xx/main.c driver.
> >>
> >> So you can't make the WLAN chip dev node a consumer of these clocks by
> >> adding a phandle to a clock provider and clock specifiers since there
> >> isn't a provider to be referenced in the DT. Or did I misunderstand?
> >
> > As I understand it, the clock signal is provided by an external oscillator,
> 
> According to [0], it seems the chip can be connected to both external
> oscillators or internal clocks provided by the chip itself.

I see, that part wasn't clear to me.

> > which we can easily model in DT, and then you call clk_get_rate on that.
> >
> 
> Right, my point wast that this can be done only if the external
> oscillator have a proper clock driver / provider which I don't think
> is the case here. Most of this stuff predates the common clock
> framework.
> 
> Or at least Luciano Coelho had a patch on his series to make the
> wilink driver a clock provider itself by registering the refclock and
> tcxoclock clocks [0].

I guess we should only do this if the clocks from the wilink device
might be used by some other device.

> Luciano also had patches for:
> 
> * Adding the clock provider dev node in the DTS [1]
> * Have a table to map the clock rate with the FW configuration values [2]
> * Getting the clock from DT and the rate as you said to configure the
> firmware accordingly [3]
> 
> I think that patch [0] should not be needed since for external clocks,
> the IP providing the clocks should have its own clock driver and for
> internal clocks, a property should be used instead as you said.

Right.

> > If there is no external clock provider for this chip and the clocks
> > are provided by the device itself, then all we need is a clock-frequency
> > property in the device node.
> >
> 
> Agreed, IIUC Luciano wanted to expose the internal clocks by
> registering in the common clock framework but if those clocks are not
> really accessible from outside the wlan chip, then I also think that a
> device node property should be used instead.

If I understand this right, that measn we can easily distinguish between
an external XTAL clock and the internal clock by they way they are
described in the DT: for the internal clock, we just provide a clock-frequency
property, while the external clock would be referenced through a clocks
property.

	Arnd

WARNING: multiple messages have this Message-ID (diff)
From: arnd@arndb.de (Arnd Bergmann)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v5 3/3] ARM: dts: igep00x0: add wl18xx bindings
Date: Wed, 11 Mar 2015 13:40:12 +0100	[thread overview]
Message-ID: <6286151.8rcX893TN6@wuerfel> (raw)
In-Reply-To: <CABxcv=nE_Qd7do+dRyp=fw3wYmWFb+0eEjXYOtdjqE55Cp0zmQ@mail.gmail.com>

On Wednesday 11 March 2015 12:34:03 Javier Martinez Canillas wrote:
> Hello Arnd,
> 
> On Wed, Mar 11, 2015 at 10:53 AM, Arnd Bergmann <arnd@arndb.de> wrote:
> > On Wednesday 11 March 2015 02:00:59 Javier Martinez Canillas wrote:
> >>
> >> What do you mean by parsing here? IIUC there isn't a clock driver for
> >> these clocks and are setup directly in the
> >> drivers/net/wireless/ti/wl12xx/main.c driver.
> >>
> >> So you can't make the WLAN chip dev node a consumer of these clocks by
> >> adding a phandle to a clock provider and clock specifiers since there
> >> isn't a provider to be referenced in the DT. Or did I misunderstand?
> >
> > As I understand it, the clock signal is provided by an external oscillator,
> 
> According to [0], it seems the chip can be connected to both external
> oscillators or internal clocks provided by the chip itself.

I see, that part wasn't clear to me.

> > which we can easily model in DT, and then you call clk_get_rate on that.
> >
> 
> Right, my point wast that this can be done only if the external
> oscillator have a proper clock driver / provider which I don't think
> is the case here. Most of this stuff predates the common clock
> framework.
> 
> Or at least Luciano Coelho had a patch on his series to make the
> wilink driver a clock provider itself by registering the refclock and
> tcxoclock clocks [0].

I guess we should only do this if the clocks from the wilink device
might be used by some other device.

> Luciano also had patches for:
> 
> * Adding the clock provider dev node in the DTS [1]
> * Have a table to map the clock rate with the FW configuration values [2]
> * Getting the clock from DT and the rate as you said to configure the
> firmware accordingly [3]
> 
> I think that patch [0] should not be needed since for external clocks,
> the IP providing the clocks should have its own clock driver and for
> internal clocks, a property should be used instead as you said.

Right.

> > If there is no external clock provider for this chip and the clocks
> > are provided by the device itself, then all we need is a clock-frequency
> > property in the device node.
> >
> 
> Agreed, IIUC Luciano wanted to expose the internal clocks by
> registering in the common clock framework but if those clocks are not
> really accessible from outside the wlan chip, then I also think that a
> device node property should be used instead.

If I understand this right, that measn we can easily distinguish between
an external XTAL clock and the internal clock by they way they are
described in the DT: for the internal clock, we just provide a clock-frequency
property, while the external clock would be referenced through a clocks
property.

	Arnd

  parent reply	other threads:[~2015-03-11 12:40 UTC|newest]

Thread overview: 111+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-03-09 15:36 [PATCH v5 1/3] dt: bindings: add wl18xx wireless device Eliad Peller
2015-03-09 15:36 ` Eliad Peller
2015-03-09 15:36 ` Eliad Peller
     [not found] ` <1425915402-10012-1-git-send-email-eliad-Ix1uc/W3ht7QT0dZR+AlfA@public.gmane.org>
2015-03-09 15:36   ` [PATCH v5 2/3] wl18xx: add basic device-tree support Eliad Peller
2015-03-09 15:36     ` Eliad Peller
2015-03-09 15:36     ` Eliad Peller
     [not found]     ` <1425915402-10012-2-git-send-email-eliad-Ix1uc/W3ht7QT0dZR+AlfA@public.gmane.org>
2015-03-09 19:47       ` Arnd Bergmann
2015-03-09 19:47         ` Arnd Bergmann
2015-03-09 19:47         ` Arnd Bergmann
2015-03-11  0:34     ` Javier Martinez Canillas
2015-03-11  0:34       ` Javier Martinez Canillas
     [not found]       ` <CABxcv=mygdT2Q+ByVKPx4+o_Oj9KSy=zVX9ng9yN25ivkfSn1A-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-03-11  9:51         ` Arnd Bergmann
2015-03-11  9:51           ` Arnd Bergmann
2015-03-11  9:51           ` Arnd Bergmann
2015-03-11 10:05           ` Javier Martinez Canillas
2015-03-11 10:05             ` Javier Martinez Canillas
2015-03-11 10:32             ` Arnd Bergmann
2015-03-11 10:32               ` Arnd Bergmann
2015-03-11 11:50           ` Eliad Peller
2015-03-11 11:50             ` Eliad Peller
2015-03-11 11:50             ` Eliad Peller
2015-03-09 15:36 ` [PATCH v5 3/3] ARM: dts: igep00x0: add wl18xx bindings Eliad Peller
2015-03-09 15:36   ` Eliad Peller
2015-03-09 15:36   ` Eliad Peller
     [not found]   ` <1425915402-10012-3-git-send-email-eliad-Ix1uc/W3ht7QT0dZR+AlfA@public.gmane.org>
2015-03-09 19:50     ` Arnd Bergmann
2015-03-09 19:50       ` Arnd Bergmann
2015-03-09 19:50       ` Arnd Bergmann
2015-03-09 21:03       ` Eliad Peller
2015-03-09 21:03         ` Eliad Peller
     [not found]         ` <CAB3XZEc_sjpA8kgfYCsO8FjGEc6O0xhE9aKO3VtgVbd+Meaakg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-03-09 22:49           ` Tony Lindgren
2015-03-09 22:49             ` Tony Lindgren
2015-03-09 22:49             ` Tony Lindgren
     [not found]             ` <20150309224929.GL5264-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2015-03-10 11:00               ` Eliad Peller
2015-03-10 11:00                 ` Eliad Peller
2015-03-10 11:00                 ` Eliad Peller
     [not found]                 ` <CAB3XZEdS+mK1MiB7OWiehFGRBnUzJ84s3rFrCy3-YFYhL-BNWw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-03-10 14:11                   ` Arnd Bergmann
2015-03-10 14:11                     ` Arnd Bergmann
2015-03-10 14:11                     ` Arnd Bergmann
2015-03-10 14:28                     ` Tony Lindgren
2015-03-10 14:28                       ` Tony Lindgren
     [not found]                       ` <20150310142805.GN5264-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2015-03-10 15:48                         ` Arnd Bergmann
2015-03-10 15:48                           ` Arnd Bergmann
2015-03-10 15:48                           ` Arnd Bergmann
2015-03-10 15:55                           ` Tony Lindgren
2015-03-10 15:55                             ` Tony Lindgren
2015-03-10 15:55                             ` Tony Lindgren
2015-03-10 14:31                     ` Eliad Peller
2015-03-10 14:31                       ` Eliad Peller
2015-03-10 14:31                       ` Eliad Peller
2015-03-10 15:52                       ` Arnd Bergmann
2015-03-10 15:52                         ` Arnd Bergmann
2015-03-10 16:11                         ` Eliad Peller
2015-03-10 16:11                           ` Eliad Peller
2015-03-10 16:11                           ` Eliad Peller
     [not found]                           ` <CAB3XZEfEQnb7qsxuAAr6pUehm1nw6Eu4ZsV1+E477yF5K1hczA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-03-10 16:18                             ` Tony Lindgren
2015-03-10 16:18                               ` Tony Lindgren
2015-03-10 16:18                               ` Tony Lindgren
     [not found]                               ` <20150310161801.GR5264-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2015-03-10 17:01                                 ` Eliad Peller
2015-03-10 17:01                                   ` Eliad Peller
2015-03-10 17:01                                   ` Eliad Peller
2015-03-10 17:35                                   ` Tony Lindgren
2015-03-10 17:35                                     ` Tony Lindgren
     [not found]                                     ` <20150310173550.GT5264-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2015-03-10 19:49                                       ` Arnd Bergmann
2015-03-10 19:49                                         ` Arnd Bergmann
2015-03-10 19:49                                         ` Arnd Bergmann
2015-03-11  1:00                                       ` Javier Martinez Canillas
2015-03-11  1:00                                         ` Javier Martinez Canillas
2015-03-11  1:00                                         ` Javier Martinez Canillas
2015-03-11  9:53                                         ` Arnd Bergmann
2015-03-11  9:53                                           ` Arnd Bergmann
2015-03-11 11:34                                           ` Javier Martinez Canillas
2015-03-11 11:34                                             ` Javier Martinez Canillas
     [not found]                                             ` <CABxcv=nE_Qd7do+dRyp=fw3wYmWFb+0eEjXYOtdjqE55Cp0zmQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-03-11 12:12                                               ` Eliad Peller
2015-03-11 12:12                                                 ` Eliad Peller
2015-03-11 12:12                                                 ` Eliad Peller
2015-03-11 13:13                                                 ` Arnd Bergmann
2015-03-11 13:13                                                   ` Arnd Bergmann
2015-03-11 12:40                                             ` Arnd Bergmann [this message]
2015-03-11 12:40                                               ` Arnd Bergmann
2015-03-11 13:07                                               ` Javier Martinez Canillas
2015-03-11 13:07                                                 ` Javier Martinez Canillas
2015-03-11 13:07                                                 ` Javier Martinez Canillas
     [not found]                                                 ` <CABxcv=mPVxW=BqL2PUL=AtS74kcqMG1yxC1WqMpxGiNOqGAnyQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-03-11 13:17                                                   ` Arnd Bergmann
2015-03-11 13:17                                                     ` Arnd Bergmann
2015-03-11 13:17                                                     ` Arnd Bergmann
2015-03-11 13:21                                                     ` Javier Martinez Canillas
2015-03-11 13:21                                                       ` Javier Martinez Canillas
     [not found]                                                       ` <CABxcv==yx3dy-beEF9cf1mKo1vjCh_LU6iLuvn1z-SKz9xG0qA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-03-11 13:38                                                         ` Eliad Peller
2015-03-11 13:38                                                           ` Eliad Peller
2015-03-11 13:38                                                           ` Eliad Peller
     [not found]                                                           ` <CAB3XZEfi49qMsB7A3p4Y7r9emzSbeyUGVy4-njzey1UnJU0qzA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-03-11 15:11                                                             ` Tony Lindgren
2015-03-11 15:11                                                               ` Tony Lindgren
2015-03-11 15:11                                                               ` Tony Lindgren
2015-03-10 14:34                     ` Sekhar Nori
2015-03-10 14:34                       ` Sekhar Nori
2015-03-10 14:34                       ` Sekhar Nori
2015-03-10 15:54         ` Arnd Bergmann
2015-03-10 15:54           ` Arnd Bergmann
2015-03-11  0:28     ` Javier Martinez Canillas
2015-03-11  0:28       ` Javier Martinez Canillas
2015-03-11  0:28       ` Javier Martinez Canillas
2015-03-11  1:19       ` Javier Martinez Canillas
2015-03-11  1:19         ` Javier Martinez Canillas
     [not found]         ` <CABxcv=kUwU2KVw5jYryh62v5us2-CiJFMnYN2nyWLRMWnEkU3w-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-03-11 11:59           ` Eliad Peller
2015-03-11 11:59             ` Eliad Peller
2015-03-11 11:59             ` Eliad Peller
     [not found]             ` <CAB3XZEdbVgOGH_uz4BX+8NXEu_vZzd=JF_1qvSPbyvvc0-O9iA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-03-11 12:07               ` Javier Martinez Canillas
2015-03-11 12:07                 ` Javier Martinez Canillas
2015-03-11 12:07                 ` Javier Martinez Canillas
2015-03-11 11:54       ` Eliad Peller
2015-03-11 11:54         ` Eliad Peller

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=6286151.8rcX893TN6@wuerfel \
    --to=arnd@arndb.de \
    --cc=devicetree@vger.kernel.org \
    --cc=eliad@wizery.com \
    --cc=javier@dowhile0.org \
    --cc=khilman@deeprootsystems.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=linux-wireless@vger.kernel.org \
    --cc=nsekhar@ti.com \
    --cc=tony@atomide.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.