From: "Cousson, Benoit" <b-cousson@ti.com>
To: "Valkeinen, Tomi" <tomi.valkeinen@ti.com>
Cc: Paul Walmsley <paul@pwsan.com>,
"Semwal, Sumit" <sumit.semwal@ti.com>,
"Taneja, Archit" <archit@ti.com>,
linux-omap <linux-omap@vger.kernel.org>
Subject: Re: OMAP4 DSS clock setup
Date: Wed, 30 Mar 2011 11:32:09 +0200 [thread overview]
Message-ID: <4D92F899.7010606@ti.com> (raw)
In-Reply-To: <1301467733.2333.83.camel@deskari>
Hi Tomi,
On 3/30/2011 8:48 AM, Valkeinen, Tomi wrote:
> Hi Benoit, Paul,
>
> I've been discussing with Sumit and Archit to understand how the DSS
> clocks are set up on OMAP4. I think I now have some idea how things
> work, but I'm still at loss why things are the way they are.
>
> So, if I look at OMAP4 TRM, Figure 10-4 DSS Clock Tree, there are two
> clocks in PRCM block that are relevant to this discussion: DSS_L3_ICLK
> and DSS_FCLK. To my understanding DSS_L3_ICLK is not really
> controllable, but it is affected by MODULEMODE bit.
>
> Then we have two relevant clocks defined in clock44xx_data.c: dss_fck
> and dss_dss_clk. dss_fck controls the MODULEMODE bit, and dss_dss_clk is
> the TRM's DSS_FCLK.
>
> Was that correct?
Yes. For the moment, but this is not the final state.
> If so, from DSS driver's perspective, the dss_fck sounds very much like
> an interface clock (it's always needed when DSS is used) and dss_dss_clk
> sounds very much like functional clock (it's always needed, except if
> DSI PLL is used for DSS functional clock).
>
> If "dss_fck" would control DSS_FCLK and "dss_ick" would control
> MODULEMODE, they would be about the same as the clocks in OMAP2 and 3,
> and we wouldn't need any omap4 spesific trickery in the DSS driver.
> ("dss_dss_clk" wouldn't be needed).
You cannot play with iclk, because this clock is supposed to be handled
automatically by the HW. This was the case on OMAP2 & 3 as well BTW.
> Why are the clocks set up in this strange fashion?
There are a lot of historical reasons and some changes from OMAP3 to
OMAP4 that are not well handle by the current clock fmwk / hwmod fmwk.
We are still trying to mimic OMAP2&3 clock management for OMAP4, and in
fact we should do the opposite.
The issue is due to the confusion with the MODULEMODE and the real input
clock state.
The MODULEMODE is just enabling the module (using iclk, fclk, opt clock)
or whatever clk is used as input clock.
In the case of the DSS, several optional clocks can be used as fclk.
SYS_CLK, DSSCLK or the output of the DSI.
In theory the MODULEMODE should be directly handled by hwmod since it is
similar to enable / disable the module. Using a clock to manage the
MODULEMODE is a temporary hack we are still using for the moment but
that should be removed at some point.
The clock fmwk should be used only to select / enable the proper
optional clocks.
In theory the current OMAP2 and OMAP3 iclken/fclken at PRCM level should
be handled as a OMAP4 MODULEMODE and not as 2 clock nodes like it is the
case today. Then we will have a consistent module / clock management.
Hope this will help and clarify a little bit the current mess :-)
Bottom-line is that you cannot do much at your level, the whole clock +
hwmod fmwk should be improved.
Benoit
next prev parent reply other threads:[~2011-03-30 9:32 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-03-30 6:48 OMAP4 DSS clock setup Tomi Valkeinen
2011-03-30 9:32 ` Cousson, Benoit [this message]
2011-03-30 11:03 ` Tomi Valkeinen
2011-03-30 12:12 ` Cousson, Benoit
2011-03-30 12:58 ` Tomi Valkeinen
2011-03-30 13:21 ` Cousson, Benoit
2011-03-31 6:42 ` Archit Taneja
2011-03-31 9:36 ` Cousson, Benoit
2011-03-31 7:34 ` Tomi Valkeinen
2011-04-02 2:12 ` Paul Walmsley
2011-04-04 6:53 ` Tomi Valkeinen
2011-04-06 9:09 ` Tomi Valkeinen
2011-04-07 19:27 ` Paul Walmsley
2011-04-08 5:51 ` Tomi Valkeinen
2011-04-08 14:55 ` Paul Walmsley
2011-04-11 9:05 ` Tomi Valkeinen
2011-04-11 18:20 ` Paul Walmsley
2011-04-12 7:17 ` Tomi Valkeinen
2011-04-08 15:36 ` Cousson, Benoit
2011-04-08 16:35 ` Tomi Valkeinen
2011-04-08 16:28 ` Paul Walmsley
2011-04-11 8:56 ` Tomi Valkeinen
2011-04-11 16:05 ` Paul Walmsley
2011-04-11 21:06 ` Cousson, Benoit
2011-04-11 21:29 ` Cousson, Benoit
2011-04-12 7:29 ` Tomi Valkeinen
2011-04-08 14:23 ` Cousson, Benoit
2011-04-08 16:50 ` Paul Walmsley
2011-04-11 9:09 ` 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=4D92F899.7010606@ti.com \
--to=b-cousson@ti.com \
--cc=archit@ti.com \
--cc=linux-omap@vger.kernel.org \
--cc=paul@pwsan.com \
--cc=sumit.semwal@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;
as well as URLs for NNTP newsgroup(s).