From: Tero Kristo <t-kristo@ti.com>
To: Russell King - ARM Linux <linux@arm.linux.org.uk>
Cc: linux-omap@vger.kernel.org, paul@pwsan.com, tony@atomide.com,
nm@ti.com, rnayak@ti.com, mturquette@linaro.org,
linux-arm-kernel@lists.infradead.org, devicetree@vger.kernel.org
Subject: Re: [PATCHv5 01/31] CLK: clkdev: add support for looking up clocks from DT
Date: Mon, 26 Aug 2013 17:36:15 +0300 [thread overview]
Message-ID: <521B67DF.4000005@ti.com> (raw)
In-Reply-To: <20130803183143.GE23053@n2100.arm.linux.org.uk>
On 08/03/2013 09:31 PM, Russell King - ARM Linux wrote:
> On Fri, Aug 02, 2013 at 07:25:20PM +0300, Tero Kristo wrote:
>> +
>> + if (cl)
>> + return cl;
>> +
>> + /* If clock was not found, attempt to look-up from DT */
>> + node = of_find_node_by_name(NULL, con_id);
>
> This is utterly broken if you're looking up purely by a connection ID.
> Please, go back and read clk_get()'s documentation in linux/clk.h.
> It's spelt out very plainly there.
>
> NAK.
>
Hi Russell,
After looking at this a bit more, it seems difficult to get rid of the
clk_get -> of_clk_get conversion, however based on this comment I am
somewhat stuck. Do you think it would be acceptable if I change the
implementation of this patch to work like this:
1) both dev_id + con_id defined:
a) search for device node named dev_id
b) check clock-names for matching con_id
c) return matching clock
Example in kernel:
clocksource-nomadik-mtu.c :
clk_get_sys("mtu0", "apb_pclk");
ste-nomadik-snt8815.dts:
mtu0: mtu@101e2000 {
/* Nomadik system timer */
compatible = "st,nomadik-mtu";
reg = <0x101e2000 0x1000>;
interrupt-parent = <&vica>;
interrupts = <4>;
clocks = <&timclk>, <&pclk>;
clock-names = "timclk", "apb_pclk";
};
2) dev_id = NULL, con_id defined (current patch implementation, most of
the OMAP clocks use this approach):
a) search for a device node named con_id
b) return corresponding clock from the node
Alternatively I must implement a regression and break some of the OMAP
drivers with this set, and also implement omap internal clk_get
functionality (basically adding a similar wrapper that I have
implemented in this patch) under mach-omap2 to get some basic OMAP infra
to work properly (namely, hwmod.) I can probably avoid part of this by
adding more beef to the *.dts files for the critical parts to get boot
working at least.
-Tero
next parent reply other threads:[~2013-08-26 14:36 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <1375460751-23676-1-git-send-email-t-kristo@ti.com>
[not found] ` <1375460751-23676-2-git-send-email-t-kristo@ti.com>
[not found] ` <20130803183143.GE23053@n2100.arm.linux.org.uk>
2013-08-26 14:36 ` Tero Kristo [this message]
2013-08-26 17:03 ` [PATCHv5 01/31] CLK: clkdev: add support for looking up clocks from DT Russell King - ARM Linux
2013-08-26 18:12 ` Tero Kristo
2013-08-27 6:55 ` Tony Lindgren
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=521B67DF.4000005@ti.com \
--to=t-kristo@ti.com \
--cc=devicetree@vger.kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-omap@vger.kernel.org \
--cc=linux@arm.linux.org.uk \
--cc=mturquette@linaro.org \
--cc=nm@ti.com \
--cc=paul@pwsan.com \
--cc=rnayak@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 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).