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 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.