All of lore.kernel.org
 help / color / mirror / Atom feed
From: Rajendra Nayak <rnayak@ti.com>
To: Sumit Semwal <sumit.semwal@ti.com>,
	tomi.valkeinen@nokia.com, paul@pwsan.com,
	Kevin Hilman <khilman@ti.com>, Vaibhav Hiremath <hvaibhav@ti.com>,
	linux-omap@vger.kernel.org, Benoit
Subject: RE: [PATCH v2 1/4] OMAP2PLUS: opt-clocks: align dss clock roles and names
Date: Thu, 27 Jan 2011 11:23:59 +0530	[thread overview]
Message-ID: <251c5094ce38ddb6473cc35940e6bcec@mail.gmail.com> (raw)
In-Reply-To: <1295960398-25329-2-git-send-email-sumit.semwal@ti.com>

Hi Sumit,

> -----Original Message-----
> From: linux-omap-owner@vger.kernel.org
[mailto:linux-omap-owner@vger.kernel.org] On Behalf Of Sumit Semwal
> Sent: Tuesday, January 25, 2011 6:30 PM
> To: tomi.valkeinen@nokia.com; paul@pwsan.com; khilman@ti.com;
hvaibhav@ti.com; linux-omap@vger.kernel.org; b-
> cousson@ti.com
> Cc: Sumit Semwal
> Subject: [PATCH v2 1/4] OMAP2PLUS: opt-clocks: align dss clock roles and
names
>
> opt clocks require (NULL, act-clock-name) as entries in clock database,
> so that hwmod can replace it with (dev, role) tuple during hwmod data
init.
>
> These role names are aligned to be same across OMAP2420, 2430, 3xxx,
44xx
> platforms, and also with dss clk handling code, so
clk_get/put/enable/disable
> APIs in dss can use uniform role names.
>
> Signed-off-by: Sumit Semwal <sumit.semwal@ti.com>
> ---
>  arch/arm/mach-omap2/clock2420_data.c       |   10 +++++++---
>  arch/arm/mach-omap2/clock2430_data.c       |   10 +++++++---
>  arch/arm/mach-omap2/clock3xxx_data.c       |   22
+++++++++++++++-------
>  arch/arm/mach-omap2/clock44xx_data.c       |    7 ++++++-
>  arch/arm/mach-omap2/omap_hwmod_3xxx_data.c |    2 +-
>  drivers/video/omap2/dss/dss.c              |    8 ++++----
>  6 files changed, 40 insertions(+), 19 deletions(-)
>
> diff --git a/arch/arm/mach-omap2/clock2420_data.c
b/arch/arm/mach-omap2/clock2420_data.c
> index d2abc2f..72a1872 100644
> --- a/arch/arm/mach-omap2/clock2420_data.c
> +++ b/arch/arm/mach-omap2/clock2420_data.c
> @@ -1787,9 +1787,13 @@ static struct omap_clk omap2420_clks[] = {
>  	CLK(NULL,	"gfx_ick",	&gfx_ick,	CK_242X),
>  	/* DSS domain clocks */
>  	CLK("omap_dss",	"ick",		&dss_ick,	CK_242X),
> -	CLK("omap_dss",	"dss1_fck",	&dss1_fck,	CK_242X),
> -	CLK("omap_dss",	"dss2_fck",	&dss2_fck,	CK_242X),
> -	CLK("omap_dss",	"tv_fck",	&dss_54m_fck,	CK_242X),
> +	CLK("omap_dss",	"fck",		&dss1_fck,	CK_242X),
> +	/*
> +	 * clocks handled via hwmod opt_clk mechanism need dev=NULL,
> +	 * con=clock name as per actual clk structure, NOT role
> +	 */

I don't think that's true. The hmmod framework uses the
omap_clk_get_by_name api which does not look up the
clkdev table at all. It just looks up the clk->name, so the
clkdev entries need not be changed with role=clk->name.
Same applies to all other such instances in this patch.

Regards,
Rajendra

> +	CLK(NULL,	"dss2_fck",	&dss2_fck,	CK_242X),
> +	CLK(NULL,	"dss_54m_fck",	&dss_54m_fck,	CK_242X),
>  	/* L3 domain clocks */
>  	CLK(NULL,	"core_l3_ck",	&core_l3_ck,	CK_242X),
>  	CLK(NULL,	"ssi_fck",	&ssi_ssr_sst_fck, CK_242X),
> diff --git a/arch/arm/mach-omap2/clock2430_data.c
b/arch/arm/mach-omap2/clock2430_data.c
> index 663f298..b99f881 100644
> --- a/arch/arm/mach-omap2/clock2430_data.c
> +++ b/arch/arm/mach-omap2/clock2430_data.c
> @@ -1891,9 +1891,13 @@ static struct omap_clk omap2430_clks[] = {
>  	CLK(NULL,	"mdm_osc_ck",	&mdm_osc_ck,	CK_243X),
>  	/* DSS domain clocks */
>  	CLK("omap_dss",	"ick",		&dss_ick,	CK_243X),
> -	CLK("omap_dss",	"dss1_fck",	&dss1_fck,	CK_243X),
> -	CLK("omap_dss",	"dss2_fck",	&dss2_fck,	CK_243X),
> -	CLK("omap_dss",	"tv_fck",	&dss_54m_fck,	CK_243X),
> +	CLK("omap_dss",	"fck",		&dss1_fck,	CK_243X),
> +	/*
> +	 * clocks handled via hwmod opt_clk mechanism need dev=NULL,
> +	 * con=clock name as per actual clk structure, NOT role
> +	 */
> +	CLK(NULL,	"dss2_fck",	&dss2_fck,	CK_243X),
> +	CLK(NULL,	"dss_54m_fck",	&dss_54m_fck,	CK_243X),
>  	/* L3 domain clocks */
>  	CLK(NULL,	"core_l3_ck",	&core_l3_ck,	CK_243X),
>  	CLK(NULL,	"ssi_fck",	&ssi_ssr_sst_fck, CK_243X),
> diff --git a/arch/arm/mach-omap2/clock3xxx_data.c
b/arch/arm/mach-omap2/clock3xxx_data.c
> index 5c97b93..c32df5d 100644
> --- a/arch/arm/mach-omap2/clock3xxx_data.c
> +++ b/arch/arm/mach-omap2/clock3xxx_data.c
> @@ -3357,13 +3357,21 @@ static struct omap_clk omap3xxx_clks[] = {
>  	CLK("omap_rng",	"ick",		&rng_ick,	CK_34XX |
CK_36XX),
>  	CLK(NULL,	"sha11_ick",	&sha11_ick,	CK_34XX |
CK_36XX),
>  	CLK(NULL,	"des1_ick",	&des1_ick,	CK_34XX |
CK_36XX),
> -	CLK("omap_dss",	"dss1_fck",	&dss1_alwon_fck_3430es1,
CK_3430ES1),
> -	CLK("omap_dss",	"dss1_fck",	&dss1_alwon_fck_3430es2,
CK_3430ES2PLUS | CK_AM35XX | CK_36XX),
> -	CLK("omap_dss",	"tv_fck",	&dss_tv_fck,	CK_3XXX),
> -	CLK("omap_dss",	"video_fck",	&dss_96m_fck,	CK_3XXX),
> -	CLK("omap_dss",	"dss2_fck",	&dss2_alwon_fck, CK_3XXX),
> -	CLK("omap_dss",	"ick",		&dss_ick_3430es1,
CK_3430ES1),
> -	CLK("omap_dss",	"ick",		&dss_ick_3430es2,
CK_3430ES2PLUS | CK_AM35XX | CK_36XX),
> +	/* DSS clocks */
> +	CLK("omap_dss",	"fck",		&dss1_alwon_fck_3430es1,
CK_3430ES1),
> +	CLK("omap_dss",	"fck",		&dss1_alwon_fck_3430es2,
CK_3430ES2PLUS
> +								|
CK_AM35XX),
> +	CLK("omap_dss",	"ick",		&dss_ick_3430es1, CK_3430ES1),
> +	CLK("omap_dss",	"ick",		&dss_ick_3430es2, CK_3430ES2PLUS
> +								|
CK_AM35XX),
> +	/*
> +	 * clocks handled via hwmod opt_clk mechanism need dev=NULL,
> +	 * con=clock name as per actual clk structure, NOT role
> +	 */
> +	CLK(NULL,       "dss_tv_fck",   &dss_tv_fck,    CK_3XXX),
> +	CLK(NULL,       "dss_96m_fck",  &dss_96m_fck,   CK_3XXX),
> +	CLK(NULL,       "dss2_alwon_fck",       &dss2_alwon_fck,
CK_3XXX),
> +
>  	CLK(NULL,	"cam_mclk",	&cam_mclk,	CK_34XX |
CK_36XX),
>  	CLK(NULL,	"cam_ick",	&cam_ick,	CK_34XX |
CK_36XX),
>  	CLK(NULL,	"csi2_96m_fck",	&csi2_96m_fck,	CK_34XX |
CK_36XX),
> diff --git a/arch/arm/mach-omap2/clock44xx_data.c
b/arch/arm/mach-omap2/clock44xx_data.c
> index e8cb32f..74db324 100644
> --- a/arch/arm/mach-omap2/clock44xx_data.c
> +++ b/arch/arm/mach-omap2/clock44xx_data.c
> @@ -3107,11 +3107,16 @@ static struct omap_clk omap44xx_clks[] = {
>  	CLK(NULL,	"dmic_sync_mux_ck",		&dmic_sync_mux_ck,
CK_443X),
>  	CLK(NULL,	"dmic_fck",			&dmic_fck,
CK_443X),
>  	CLK(NULL,	"dsp_fck",			&dsp_fck,
CK_443X),
> +	/* dss clocks */
> +	CLK(NULL,	"fck",				&dss_fck,
CK_443X),
> +	/*
> +	 * clocks handled via hwmod opt_clk mechanism need dev=NULL,
> +	 * con=clock name as per actual clk structure, NOT role
> +	 */
>  	CLK(NULL,	"dss_sys_clk",			&dss_sys_clk,
CK_443X),
>  	CLK(NULL,	"dss_tv_clk",			&dss_tv_clk,
CK_443X),
>  	CLK(NULL,	"dss_dss_clk",			&dss_dss_clk,
CK_443X),
>  	CLK(NULL,	"dss_48mhz_clk",		&dss_48mhz_clk,
CK_443X),
> -	CLK(NULL,	"dss_fck",			&dss_fck,
CK_443X),
>  	CLK(NULL,	"efuse_ctrl_cust_fck",
&efuse_ctrl_cust_fck,	CK_443X),
>  	CLK(NULL,	"emif1_fck",			&emif1_fck,
CK_443X),
>  	CLK(NULL,	"emif2_fck",			&emif2_fck,
CK_443X),
> diff --git a/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c
b/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c
> index 713165d..cb0c624 100644
> --- a/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c
> +++ b/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c
> @@ -770,7 +770,7 @@ static struct omap_hwmod_ocp_if
*omap3xxx_dss_slaves[] = {
>
>  static struct omap_hwmod_opt_clk dss_opt_clks[] = {
>  	{ .role = "tv_clk", .clk = "dss_tv_fck" },
> -	{ .role = "dssclk", .clk = "dss_96m_fck" },
> +	{ .role = "video_clk", .clk = "dss_96m_fck" },
>  	{ .role = "sys_clk", .clk = "dss2_alwon_fck" },
>  };
>
> diff --git a/drivers/video/omap2/dss/dss.c
b/drivers/video/omap2/dss/dss.c
> index f9390b4..91f8cf7 100644
> --- a/drivers/video/omap2/dss/dss.c
> +++ b/drivers/video/omap2/dss/dss.c
> @@ -758,19 +758,19 @@ static int dss_get_clocks(void)
>  	if (r)
>  		goto err;
>
> -	r = dss_get_clock(&dss.dss1_fck, "dss1_fck");
> +	r = dss_get_clock(&dss.dss1_fck, "fck");
>  	if (r)
>  		goto err;
>
> -	r = dss_get_clock(&dss.dss2_fck, "dss2_fck");
> +	r = dss_get_clock(&dss.dss2_fck, "sys_clk");
>  	if (r)
>  		goto err;
>
> -	r = dss_get_clock(&dss.dss_54m_fck, "tv_fck");
> +	r = dss_get_clock(&dss.dss_54m_fck, "tv_clk");
>  	if (r)
>  		goto err;
>
> -	r = dss_get_clock(&dss.dss_96m_fck, "video_fck");
> +	r = dss_get_clock(&dss.dss_96m_fck, "video_clk");
>  	if (r)
>  		goto err;
>
> --
> 1.7.1
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-omap" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

  reply	other threads:[~2011-01-27  6:50 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-01-25 12:59 [PATCH v2 0/4] OMAP2PLUS: DSS: Generalize clock names Sumit Semwal
2011-01-25 12:59 ` [PATCH v2 1/4] OMAP2PLUS: opt-clocks: align dss clock roles and names Sumit Semwal
2011-01-27  5:53   ` Rajendra Nayak [this message]
2011-01-27 15:43     ` Rajendra Nayak
2011-01-25 12:59 ` [PATCH v2 2/4] OMAP2PLUS: DSS2: Generalize naming of PRCM related clock enums in DSS driver Sumit Semwal
2011-01-25 12:59 ` [PATCH v2 3/4] OMAP2PLUS: DSS2: Generalize external clock names in struct dss of dss.c Sumit Semwal
2011-01-25 12:59 ` [PATCH v2 4/4] OMAP4: DSS2: clocks: Add ick as dummy clock Sumit Semwal
2011-01-27 17:46   ` Kevin Hilman
2011-01-28  4:59     ` Semwal, Sumit

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=251c5094ce38ddb6473cc35940e6bcec@mail.gmail.com \
    --to=rnayak@ti.com \
    --cc=hvaibhav@ti.com \
    --cc=khilman@ti.com \
    --cc=linux-omap@vger.kernel.org \
    --cc=paul@pwsan.com \
    --cc=sumit.semwal@ti.com \
    --cc=tomi.valkeinen@nokia.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.