From: Kevin Hilman <khilman@ti.com>
To: Nishanth Menon <nm@ti.com>
Cc: linux-omap <linux-omap@vger.kernel.org>
Subject: Re: [PM-WIP_CPUFREQ][PATCH v4 2/4] OMAP2+: cpufreq: use OPP library
Date: Thu, 02 Jun 2011 15:10:13 -0700 [thread overview]
Message-ID: <87tyc7rika.fsf@ti.com> (raw)
In-Reply-To: <1306463960-27340-3-git-send-email-nm@ti.com> (Nishanth Menon's message of "Thu, 26 May 2011 19:39:18 -0700")
Nishanth Menon <nm@ti.com> writes:
> OMAP2 is the only family using clk_[init|exit]_cpufreq_table, however,
> the cpufreq code has does not use clk_init_cpufreq_table. As a result,
> it is unusuable for OMAP2 and only usable only on platforms using OPP
> library.
>
> So move the compilation for cpufreq only if OPP is available for the
> architecture and deny OMAP2 in multi-OMAP builds until OMAP2 is fixed.
Let's not prevent the build, just print a failure warning when the
freq_table is empty because there were no OPPs found. We need this also
for any new platforms that are added but don't yet have OPPs available.
> Signed-off-by: Nishanth Menon <nm@ti.com>
> ---
> arch/arm/mach-omap2/Makefile | 4 ++--
> arch/arm/mach-omap2/omap2plus-cpufreq.c | 12 +++++++-----
> 2 files changed, 9 insertions(+), 7 deletions(-)
>
> diff --git a/arch/arm/mach-omap2/Makefile b/arch/arm/mach-omap2/Makefile
> index dcf5200..70c9fc7 100644
> --- a/arch/arm/mach-omap2/Makefile
> +++ b/arch/arm/mach-omap2/Makefile
> @@ -54,10 +54,10 @@ ifeq ($(CONFIG_PM_OPP),y)
> obj-y += opp.o
> obj-$(CONFIG_ARCH_OMAP3) += opp3xxx_data.o
> obj-$(CONFIG_ARCH_OMAP4) += opp4xxx_data.o
> -endif
> -
> # CPUFREQ driver
> obj-$(CONFIG_CPU_FREQ) += omap2plus-cpufreq.o
> +endif
> +
>
> # Power Management
> ifeq ($(CONFIG_PM),y)
> diff --git a/arch/arm/mach-omap2/omap2plus-cpufreq.c b/arch/arm/mach-omap2/omap2plus-cpufreq.c
> index acf18e8..e10fcf8 100644
> --- a/arch/arm/mach-omap2/omap2plus-cpufreq.c
> +++ b/arch/arm/mach-omap2/omap2plus-cpufreq.c
> @@ -1,7 +1,7 @@
> /*
> * OMAP2PLUS cpufreq driver
> *
> - * CPU frequency scaling for OMAP
> + * CPU frequency scaling for OMAP using OPP information
> *
> * Copyright (C) 2005 Nokia Corporation
> * Written by Tony Lindgren <tony@atomide.com>
> @@ -203,7 +203,6 @@ static int __cpuinit omap_cpu_init(struct cpufreq_policy *policy)
>
> static int omap_cpu_exit(struct cpufreq_policy *policy)
> {
> - clk_exit_cpufreq_table(&freq_table);
> clk_put(mpu_clk);
> return 0;
> }
> @@ -226,12 +225,15 @@ static struct cpufreq_driver omap_driver = {
>
> static int __init omap_cpufreq_init(void)
> {
> - if (cpu_is_omap24xx())
> + if (cpu_is_omap24xx()) {
> mpu_clk_name = "virt_prcm_set";
> - else if (cpu_is_omap34xx())
> + pr_warning("%s: omap2 cpufreq needs fixing\n", __func__);
Rather than the warning here, just have it fail with a warning when/if
the freq_table creation fails because of no OPPs.
Kevin
> + return -EINVAL;
> + } else if (cpu_is_omap34xx()) {
> mpu_clk_name = "dpll1_ck";
> - else if (cpu_is_omap44xx())
> + } else if (cpu_is_omap44xx()) {
> mpu_clk_name = "dpll_mpu_ck";
> + }
>
> if (!mpu_clk_name) {
> pr_err("%s: unsupported Silicon?\n", __func__);
next prev parent reply other threads:[~2011-06-02 22:10 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-05-27 2:39 [PM-WIP_CPUFREQ][PATCH v4 0/4] Cleanups for cpufreq Nishanth Menon
2011-05-27 2:39 ` [PM-WIP_CPUFREQ][PATCH v4 1/4] OMAP2+: cpufreq: dont support !freq_table Nishanth Menon
2011-06-02 22:11 ` Kevin Hilman
2011-05-27 2:39 ` [PM-WIP_CPUFREQ][PATCH v4 2/4] OMAP2+: cpufreq: use OPP library Nishanth Menon
2011-06-02 22:10 ` Kevin Hilman [this message]
2011-06-02 22:45 ` Kevin Hilman
2011-06-02 23:14 ` Menon, Nishanth
2011-05-27 2:39 ` [PM-WIP_CPUFREQ][PATCH v4 3/4] OMAP2+: cpufreq: put clk if cpu_init failed Nishanth Menon
2011-06-02 22:12 ` Kevin Hilman
2011-05-27 2:39 ` [PM-WIP_CPUFREQ][PATCH v4 4/4] OMAP2+: cpufreq: fix freq_table leak 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=87tyc7rika.fsf@ti.com \
--to=khilman@ti.com \
--cc=linux-omap@vger.kernel.org \
--cc=nm@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