All of lore.kernel.org
 help / color / mirror / Atom feed
From: Nishanth Menon <nm@ti.com>
To: Rajendra Nayak <rnayak@ti.com>
Cc: "Kevin Hilman" <khilman@linaro.org>,
	linux-omap@vger.kernel.org, "Rob Herring" <robherring2@gmail.com>,
	cpufreq@vger.kernel.org, linux-pm@vger.kernel.org,
	"Paul Walmsley" <paul@pwsan.com>,
	"Benoît Cousson" <b-cousson@ti.com>,
	"Jon Hunter" <jon-hunter@ti.com>, Keerthy <j-keerthy@ti.com>,
	"Santosh Shilimkar" <santosh.shilimkar@ti.com>,
	"Shawn Guo" <shawn.guo@linaro.org>
Subject: Re: [PATCH V3 1/2] ARM: OMAP3+: use cpu0-cpufreq driver in device tree supported boot
Date: Thu, 4 Apr 2013 14:00:53 -0500	[thread overview]
Message-ID: <20130404190053.GA4371@kahuna> (raw)
In-Reply-To: <515D0BF1.7060802@ti.com>

On 10:43-20130404, Rajendra Nayak wrote:
> On Thursday 04 April 2013 08:22 AM, Nishanth Menon wrote:
> > On 11:47-20130403, Kevin Hilman wrote:
> >> Nishanth Menon <nm@ti.com> writes:
> >>
> > [...]
> >>> diff --git a/arch/arm/mach-omap2/board-generic.c b/arch/arm/mach-omap2/board-generic.c
> >>> index afa509a..5b147ef 100644
> >>> --- a/arch/arm/mach-omap2/board-generic.c
> >>> +++ b/arch/arm/mach-omap2/board-generic.c
> >>> @@ -49,6 +49,11 @@ static void __init omap_generic_init(void)
> >>>  		omap4_panda_display_init_of();
> >>>  	else if (of_machine_is_compatible("ti,omap4-sdp"))
> >>>  		omap_4430sdp_display_init_of();
> >>> +
> >>> +	if (IS_ENABLED(CONFIG_GENERIC_CPUFREQ_CPU0)) {
> >>> +		struct platform_device_info devinfo = { .name = "cpufreq-cpu0", };
> >>> +		platform_device_register_full(&devinfo);
> >>> +	}
> >>
> >> Rather than adding new clkdev nodes below, how about using clk add_alias
> >> here?
> > Thanks for pointing this out, I spend some time implementing such a
> > scheme and following is my opinion:
> > 
> > Summary:
> > There is one major problem which forces us to introduce this "clock
> > hack" - clock nodes are not in device tree yet. Yes, clock add alias
> 
> There's already a patch floating around for this..
> https://lkml.org/lkml/2013/4/2/84
Not really. Try on OMAP4 PandaBoard:
Based on
git://git.kernel.org/pub/scm/linux/kernel/git/bcousson/linux-omap-dt.git
for_3.10/dts  d114294 ARM: dts: AM33XX: Corrects typo in interrupt field in SPI node
+ the patch https://patchwork.kernel.org/patch/2335671/ applied
Pandaboard 4 Log: http://pastebin.com/qsdsbv7p
The Patch does not even work, unless there is un-documented patch
dependencies!

Secondly, even if it did work, it would still continue to need yet another
hack[1] - I am agree with Tony in his discussion in
http://marc.info/?t=136370325600009&r=1&w=2

*if* we are moving clock to DT, we should move the data to DT as well -
similar to what other platforms do - highbank as far as i can quickly
see. (drivers/clk/clk-highbank.c and arch/arm/boot/dts/ecx-common.dtsi
as examples). Clk alias might have been a solution, but in this case,
clk add alias (as I indicated in this thread is not really worth the
effort for the mess of code it creates for cpu clock).

[1]
diff --git a/arch/arm/boot/dts/omap4.dtsi b/arch/arm/boot/dts/omap4.dtsi
index dd8f58f..9282b4c 100644
--- a/arch/arm/boot/dts/omap4.dtsi
+++ b/arch/arm/boot/dts/omap4.dtsi
@@ -635,4 +635,9 @@
 			ti,has-mailbox;
 		};
 	};
+
+	dpll_mpu: scrmclks {
+		compatible = "ti,omap4-clock";
+		#clock-cells = <1>;
+	};
 };
diff --git a/arch/arm/boot/dts/omap443x.dtsi b/arch/arm/boot/dts/omap443x.dtsi
index cccf39a..1587a5f 100644
--- a/arch/arm/boot/dts/omap443x.dtsi
+++ b/arch/arm/boot/dts/omap443x.dtsi
@@ -21,6 +21,8 @@
 				800000  1313000
 				1008000 1375000
 			>;
+			clocks = <&dpll_mpu>;
+			clock-names = "cpu";
 			clock-latency = <300000>; /* From legacy driver */
 		};
 	};
diff --git a/arch/arm/mach-omap2/board-generic.c b/arch/arm/mach-omap2/board-generic.c
index afa509a..5b147ef 100644
--- a/arch/arm/mach-omap2/board-generic.c
+++ b/arch/arm/mach-omap2/board-generic.c
@@ -49,6 +49,11 @@ static void __init omap_generic_init(void)
 		omap4_panda_display_init_of();
 	else if (of_machine_is_compatible("ti,omap4-sdp"))
 		omap_4430sdp_display_init_of();
+
+	if (IS_ENABLED(CONFIG_GENERIC_CPUFREQ_CPU0)) {
+		struct platform_device_info devinfo = { .name = "cpufreq-cpu0", };
+		platform_device_register_full(&devinfo);
+	}
 }
 
 #ifdef CONFIG_SOC_OMAP2420
diff --git a/arch/arm/mach-omap2/cclock44xx_data.c b/arch/arm/mach-omap2/cclock44xx_data.c
index a93617b..ba4562a 100644
--- a/arch/arm/mach-omap2/cclock44xx_data.c
+++ b/arch/arm/mach-omap2/cclock44xx_data.c
@@ -1675,6 +1675,7 @@ static struct clk *dt_clks[] = {
 	&auxclk3_ck,
 	&auxclk4_ck,
 	&auxclk5_ck,
+	&dpll_mpu_ck,
 };
 
 static struct clk_onecell_data clock_data;

-- 
Regards,
Nishanth Menon

  reply	other threads:[~2013-04-04 19:00 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-03-28 21:52 [PATCH V3 0/2] ARM: OMAP3+: support cpufreq-cpu0 for device tree boot Nishanth Menon
2013-03-28 21:52 ` Nishanth Menon
2013-03-28 21:52 ` [PATCH V3 1/2] ARM: OMAP3+: use cpu0-cpufreq driver in device tree supported boot Nishanth Menon
2013-03-28 21:52   ` Nishanth Menon
2013-04-03 18:47   ` Kevin Hilman
2013-04-03 18:47     ` Kevin Hilman
2013-04-04  2:52     ` Nishanth Menon
2013-04-04  5:13       ` Rajendra Nayak
2013-04-04 19:00         ` Nishanth Menon [this message]
2013-04-05  9:50           ` Rajendra Nayak
2013-04-05 11:26             ` Nishanth Menon
2013-04-05 16:13               ` Tony Lindgren
2013-04-05 16:32                 ` Nishanth Menon
2013-04-05 17:05                   ` Tony Lindgren
2013-04-05 17:17                     ` Nishanth Menon
2013-04-05 19:28                       ` Tony Lindgren
2013-04-05 20:02                         ` Nishanth Menon
2013-04-05 21:10                           ` Tony Lindgren
2013-04-05 21:32                             ` Nishanth Menon
2013-04-05 21:40                               ` Tony Lindgren
2013-04-05 22:10                                 ` Nishanth Menon
2013-04-05 22:17                                   ` Tony Lindgren
2013-04-05 22:23                                     ` Nishanth Menon
2013-03-28 21:52 ` [PATCH V3 2/2] cpufreq: OMAP: instantiate omap-cpufreq as a platform_driver Nishanth Menon
2013-03-28 21:52   ` Nishanth Menon
2013-03-29  2:59   ` Viresh Kumar
2013-04-05 17:07     ` Nishanth Menon
2013-04-05 21:34       ` Kevin Hilman
2013-04-05 21:34         ` Kevin Hilman
2013-04-05 21:36         ` Nishanth Menon
2013-04-03 17:47 ` [PATCH V3 0/2] ARM: OMAP3+: support cpufreq-cpu0 for device tree boot Kevin Hilman
2013-04-03 18:22   ` Nishanth Menon

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=20130404190053.GA4371@kahuna \
    --to=nm@ti.com \
    --cc=b-cousson@ti.com \
    --cc=cpufreq@vger.kernel.org \
    --cc=j-keerthy@ti.com \
    --cc=jon-hunter@ti.com \
    --cc=khilman@linaro.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=paul@pwsan.com \
    --cc=rnayak@ti.com \
    --cc=robherring2@gmail.com \
    --cc=santosh.shilimkar@ti.com \
    --cc=shawn.guo@linaro.org \
    /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.