From: "Cousson, Benoit" <b-cousson@ti.com>
To: "Valkeinen, Tomi" <tomi.valkeinen@ti.com>
Cc: "paul@pwsan.com" <paul@pwsan.com>,
"Nayak, Rajendra" <rnayak@ti.com>,
"Shilimkar, Santosh" <santosh.shilimkar@ti.com>,
"linux-omap@vger.kernel.org" <linux-omap@vger.kernel.org>
Subject: Re: [PATCH 4/7] OMAP4: hwmod data: Replace main_clk with the real input clock
Date: Tue, 28 Jun 2011 10:27:38 +0200 [thread overview]
Message-ID: <4E09907A.5020308@ti.com> (raw)
In-Reply-To: <1309248860.1825.43.camel@deskari>
On 6/28/2011 10:14 AM, Valkeinen, Tomi wrote:
> On Tue, 2011-06-28 at 10:10 +0200, Cousson, Benoit wrote:
>> Hi Tomi,
>>
>> On 6/28/2011 8:40 AM, Valkeinen, Tomi wrote:
>>> On Mon, 2011-06-27 at 18:33 +0200, Benoit Cousson wrote:
>>>> Previously, main_clk was a fake clock node that was accessing the
>>>> PRCM modulemode register. Since the module mode is directly
>>>> controlled by the hwmod fmwk, these fake clock node are not
>>>> needed anymore. The hwmod main_clk will point directly to the
>>>> input clock node if applicable.
>>>> For example, some IPs, like the GPIOs, do not have any functional
>>>> clock and are using only the iclk. In that case, the main_clk
>>>> field will be empty.
>>>>
>>>> In the case of the DSS, we can now consider all the optional clock as
>>>> main clock.
>>>> That will simplify greatly the driver management and the integration
>>>> with hwmod.
>>>>
>>>> Signed-off-by: Benoit Cousson<b-cousson@ti.com>
>>>> Cc: Tomi Valkeinen<tomi.valkeinen@ti.com>
>>>> Cc: Paul Walmsley<paul@pwsan.com>
>>>> Cc: Rajendra Nayak<rnayak@ti.com>
>>>> ---
>>>> arch/arm/mach-omap2/omap_hwmod_44xx_data.c | 111 +++++++++++++---------------
>>>> 1 files changed, 51 insertions(+), 60 deletions(-)
>>>>
>>>> diff --git a/arch/arm/mach-omap2/omap_hwmod_44xx_data.c b/arch/arm/mach-omap2/omap_hwmod_44xx_data.c
>>>> index e10d3f7..5c196a1 100644
>>>> --- a/arch/arm/mach-omap2/omap_hwmod_44xx_data.c
>>>> +++ b/arch/arm/mach-omap2/omap_hwmod_44xx_data.c
>>>
>>> <snip>
>
>>>> @@ -1456,7 +1455,7 @@ static struct omap_hwmod omap44xx_dss_dsi1_hwmod = {
>>>> .mpu_irqs_cnt = ARRAY_SIZE(omap44xx_dss_dsi1_irqs),
>>>> .sdma_reqs = omap44xx_dss_dsi1_sdma_reqs,
>>>> .sdma_reqs_cnt = ARRAY_SIZE(omap44xx_dss_dsi1_sdma_reqs),
>>>> - .main_clk = "dss_fck",
>>>> + .main_clk = "dss_sys_clk",
>>>> .prcm = {
>>>> .omap4 = {
>>>> .clkctrl_offs = OMAP4_CM_DSS_DSS_CLKCTRL_OFFSET,
>>>
>>> Hmm... I don't think this is right. By default the DSI uses dss_dss_clk
>>> as the functional clock. sys_clk goes to the DSI PLL, and the output of
>>> which can be later used as the fclk for DSI. But that requires setup.
>>
>> OK, it was not super clear from the DSS clock tree which one should be
>> the main one.
>> So you'd prefer to have the dss_dss_clk as main clock and keep the
>> dss_sys_clk as a opt_clock?
>
> Yes, I think that makes more sense.
>
> My patch set had dss_dss_clk as the mainclock for all DSS blocks. You
> have it a bit differently for venc, hdmi, rfbi.
Yep, I saw that but, I don't think it should be done like that.
> It's a bit difficult to
> verify those, as the DSS and DISPC are anyway enabled before
> venc/hdmi/rfbi, so the dss_dss_clk is anyway enabled. But they do make
> sense by looking at the clock tree.
Mmm, I'm not sure of that. In theory the dss_dss_clk is mainly the
functional clock for the DISPC. It can be used as the source clock for
some other module like DSI, but it is not mandatory.
In the case of venc, rfbi and hdmi, that dss_dss_clk is not even
connected to them.
You do have a functional dependency between the DISPC and all the DSS
IPs, but that does not mean that the dss_dss_clk should be affected to
all the sub IPs.
This is up to your driver stack to handle that functional dependency.
That's why here I was trying to focus only on the main functionnal clock
for each IP. There is no point to expose the dss_dss_clk to every hwmod
if the driver does not have anything to do with them.
Regards,
Benoit
next prev parent reply other threads:[~2011-06-28 8:27 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-06-27 16:33 [PATCH 0/7] OMAP4: Add modulemode support to hwmod framework (part 2) Benoit Cousson
2011-06-27 16:33 ` [PATCH 1/7] OMAP: hwmod: Add warnings if enable failed Benoit Cousson
2011-06-27 16:33 ` [PATCH 2/7] OMAP: omap_device: Create clkdev entry for hwmod main_clk Benoit Cousson
2011-06-27 18:56 ` Todd Poynor
2011-06-28 14:10 ` Cousson, Benoit
2011-06-28 18:21 ` Todd Poynor
2011-06-28 20:09 ` Cousson, Benoit
2011-06-27 16:33 ` [PATCH 3/7] OMAP4: hwmod data: TEMP: Do not idle MMC1 & MMC2 after boot Benoit Cousson
2011-06-28 0:17 ` Kevin Hilman
2011-06-28 9:40 ` Cousson, Benoit
2011-06-27 16:33 ` [PATCH 4/7] OMAP4: hwmod data: Replace main_clk with the real input clock Benoit Cousson
2011-06-28 6:40 ` Tomi Valkeinen
2011-06-28 8:10 ` Cousson, Benoit
2011-06-28 8:14 ` Tomi Valkeinen
2011-06-28 8:27 ` Cousson, Benoit [this message]
2011-06-28 8:37 ` Tomi Valkeinen
2011-06-27 16:33 ` [PATCH 5/7] OMAP4: clock data: Remove leaf clock nodes Benoit Cousson
2011-06-27 16:33 ` [PATCH 6/7] OMAP4: hwmod data: TEMP: Fix timer1 main_clk Benoit Cousson
2011-06-28 0:19 ` Kevin Hilman
2011-06-28 9:27 ` Cousson, Benoit
2011-06-28 15:17 ` Kevin Hilman
2011-06-27 16:33 ` [PATCH 7/7] OMAP4: prcm: Remove macros with absolute address Benoit Cousson
2011-06-28 0:30 ` [PATCH 0/7] OMAP4: Add modulemode support to hwmod framework (part 2) Kevin Hilman
2011-06-28 14:45 ` Cousson, Benoit
2011-06-28 6:56 ` Tomi Valkeinen
2011-06-28 8:14 ` Cousson, Benoit
2011-06-28 8:29 ` Tomi Valkeinen
2011-06-28 9:14 ` Cousson, Benoit
2011-06-28 9:20 ` Tomi Valkeinen
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=4E09907A.5020308@ti.com \
--to=b-cousson@ti.com \
--cc=linux-omap@vger.kernel.org \
--cc=paul@pwsan.com \
--cc=rnayak@ti.com \
--cc=santosh.shilimkar@ti.com \
--cc=tomi.valkeinen@ti.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