From: Nishanth Menon <nm@ti.com>
To: Kevin Hilman <khilman@ti.com>
Cc: l-o <linux-omap@vger.kernel.org>,
l-a <linux-arm-kernel@lists.infradead.org>,
Tony <tony@atomide.com>, Koen Kooi <koen@beagleboard.org>
Subject: Re: [PATCH 2/2] OMAP3: beagle xm: enable upto 800MHz OPP
Date: Thu, 06 Jan 2011 06:24:34 -0600 [thread overview]
Message-ID: <4D25B482.3080709@ti.com> (raw)
In-Reply-To: <874o9nvskt.fsf@ti.com>
Kevin Hilman wrote, on 01/05/2011 05:28 PM:
> Nishanth Menon<nm@ti.com> writes:
>
>> Beagle XM uses 3730 and the board design allows enabling 800MHz and 1GHz
>> OPPs. However, We need Smart reflex class 1.5 and ABB to enable 1GHz safely.
>> For the moment, we tweak the default table to allow for 800Mhz OPP usage.
>
> Isn't this common to any board using 3730 (or 3630?)
no it is not. only certain boards are capable of higher frequencies -
there is a procedure called PDN analysis and vmin search that needs to
be performed to guarentee this.
>
> IOW, what is Beagle specific about this?
beagle is one of the boards capable of higher frequencies.
>
> Kevin
>
>> Reported-by: Koen Kooi<koen@beagleboard.org>
>> Tested-by: Koen Kooi<koen@beagleboard.org>
>>
>> Signed-off-by: Nishanth Menon<nm@ti.com>
>> ---
>> arch/arm/mach-omap2/board-omap3beagle.c | 50 +++++++++++++++++++++++++++++++
>> 1 files changed, 50 insertions(+), 0 deletions(-)
>>
>> diff --git a/arch/arm/mach-omap2/board-omap3beagle.c b/arch/arm/mach-omap2/board-omap3beagle.c
>> index 6c12760..0b99b80 100644
>> --- a/arch/arm/mach-omap2/board-omap3beagle.c
>> +++ b/arch/arm/mach-omap2/board-omap3beagle.c
>> @@ -23,6 +23,7 @@
>> #include<linux/gpio.h>
>> #include<linux/input.h>
>> #include<linux/gpio_keys.h>
>> +#include<linux/opp.h>
>>
>> #include<linux/mtd/mtd.h>
>> #include<linux/mtd/partitions.h>
>> @@ -44,10 +45,12 @@
>> #include<plat/gpmc.h>
>> #include<plat/nand.h>
>> #include<plat/usb.h>
>> +#include<plat/omap_device.h>
>>
>> #include "mux.h"
>> #include "hsmmc.h"
>> #include "timer-gp.h"
>> +#include "pm.h"
>>
>> #define NAND_BLOCK_SIZE SZ_128K
>>
>> @@ -556,6 +559,52 @@ static struct omap_musb_board_data musb_board_data = {
>> .power = 100,
>> };
>>
>> +static void __init beagle_opp_init(void)
>> +{
>> + int r = 0;
>> +
>> + /* Initialize the omap3 opp table */
>> + if (omap3_opp_init()) {
>> + pr_err("%s: opp default init failed\n", __func__);
>> + return;
>> + }
>> +
>> + /* Custom OPP enabled for XM */
>> + if (omap3_beagle_get_rev() == OMAP3BEAGLE_BOARD_XM) {
>> + struct omap_hwmod *mh = omap_hwmod_lookup("mpu");
>> + struct omap_hwmod *dh = omap_hwmod_lookup("iva");
>> + struct device *dev;
>> +
>> + if (!mh || !dh) {
>> + pr_err("%s: Aiee.. no mpu/dsp devices? %p %p\n",
>> + __func__, mh, dh);
>> + r = -EINVAL;
>> + } else {
>> + /* Enable MPU 1GHz and lower opps */
>> + dev =&mh->od->pdev.dev;
>> + r = opp_enable(dev, 800000000);
>> + /* TODO: MPU 1GHz needs SR and ABB */
>> +
>> + /* Enable IVA 800MHz and lower opps */
>> + dev =&dh->od->pdev.dev;
>> + r |= opp_enable(dev, 660000000);
>> + /* TODO: DSP 800MHz needs SR and ABB */
>> + }
>> + if (r) {
>> + pr_err("%s: failed to enable higher opp %d\n",
>> + __func__, r);
>> + /*
>> + * Cleanup - disable the higher freqs - we dont care
>> + * about the results
>> + */
>> + dev =&mh->od->pdev.dev;
>> + opp_disable(dev, 800000000);
>> + dev =&dh->od->pdev.dev;
>> + opp_disable(dev, 660000000);
>> + }
>> + }
>> +}
>> +
>> static void __init omap3_beagle_init(void)
>> {
>> omap3_mux_init(board_mux, OMAP_PACKAGE_CBB);
>> @@ -579,6 +628,7 @@ static void __init omap3_beagle_init(void)
>> omap_mux_init_signal("sdrc_cke1", OMAP_PIN_OUTPUT);
>>
>> beagle_display_init();
>> + beagle_opp_init();
>> }
>>
>> MACHINE_START(OMAP3_BEAGLE, "OMAP3 Beagle Board")
--
Regards,
Nishanth Menon
next prev parent reply other threads:[~2011-01-06 12:24 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-01-05 20:49 [PATCH 0/2] OMAP3: Beagle: enable 800MHz for xm Nishanth Menon
2011-01-05 20:49 ` [PATCH 1/2] omap3|4: opp: make omapx_opp_init non-static Nishanth Menon
2011-02-01 22:01 ` Kevin Hilman
2011-01-05 20:49 ` [PATCH 2/2] OMAP3: beagle xm: enable upto 800MHz OPP Nishanth Menon
2011-01-05 23:28 ` Kevin Hilman
2011-01-06 12:24 ` Nishanth Menon [this message]
2011-01-06 13:00 ` Koen Kooi
2011-01-06 13:44 ` Nishanth Menon
2011-01-06 13:58 ` Premi, Sanjeev
2011-01-06 14:00 ` Nishanth Menon
2011-01-06 14:22 ` Premi, Sanjeev
2011-01-06 14:01 ` Koen Kooi
2011-01-06 14:07 ` Nishanth Menon
2011-01-07 13:04 ` Aaro Koskinen
2011-01-07 13:30 ` 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=4D25B482.3080709@ti.com \
--to=nm@ti.com \
--cc=khilman@ti.com \
--cc=koen@beagleboard.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-omap@vger.kernel.org \
--cc=tony@atomide.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