From: "Cousson, Benoit" <b-cousson@ti.com>
To: "Hilman, Kevin" <khilman@ti.com>
Cc: "Menon, Nishanth" <nm@ti.com>,
linux-omap <linux-omap@vger.kernel.org>,
"Sonasath, Moiz" <m-sonasath@ti.com>
Subject: Re: [RFC][PATCH 3/9] OMAP4460: HWMOD: DO not reset GPIO1 during HWMOD init
Date: Fri, 27 May 2011 09:10:05 +0200 [thread overview]
Message-ID: <4DDF4E4D.6060008@ti.com> (raw)
In-Reply-To: <87oc2p82q0.fsf@ti.com>
On 5/27/2011 1:24 AM, Hilman, Kevin wrote:
> Nishanth Menon<nm@ti.com> writes:
>
>> From: Moiz Sonasath<m-sonasath@ti.com>
>>
>> For OMAP4460, GPIO-7 of bank1 is used for controling
>> the TPS modes, hence GPIO1 should not be reset
>> during init as reset will cause the TPS voltage to
>> drop to 0.9 V.
>
> ouch. I knew one of these days something like this was going to happen
> with GPIO resets.
BTW, don't we have the same kind of issue with the debug UART? I
remember that you had to do some hacks at some point to change these
hwmod flags in the UART code.
In general we do not want to reset nor idle an IP that was potentially
already properly configured by bootloader or early Linux boot code.
Regards,
Benoit
>
> Re: $SUBJECT, hwmod is not an acronym. Please use lower case.
>
>> Originally from:
>> http://git.omapzoom.org/?p=kernel/omap.git;a=commitdiff;h=52ae4f0de03b17c064d9ce90a580230f1a596ec1
>>
>> [nm@ti.com: upstream version]
>> Signed-off-by: Nishanth Menon<nm@ti.com>
>> Signed-off-by: Moiz Sonasath<m-sonasath@ti.com>
>> ---
>> arch/arm/mach-omap2/omap_hwmod_44xx_data.c | 27 ++++++++++++++++++++++++---
>> 1 files changed, 24 insertions(+), 3 deletions(-)
>>
>> diff --git a/arch/arm/mach-omap2/omap_hwmod_44xx_data.c b/arch/arm/mach-omap2/omap_hwmod_44xx_data.c
>> index 2f51a5a..27319c4 100644
>> --- a/arch/arm/mach-omap2/omap_hwmod_44xx_data.c
>> +++ b/arch/arm/mach-omap2/omap_hwmod_44xx_data.c
>> @@ -1745,7 +1745,7 @@ static struct omap_hwmod_opt_clk gpio1_opt_clks[] = {
>> { .role = "dbclk", .clk = "gpio1_dbclk" },
>> };
>>
>> -static struct omap_hwmod omap44xx_gpio1_hwmod = {
>> +static struct omap_hwmod omap443x_gpio1_hwmod = {
>> .name = "gpio1",
>> .class =&omap44xx_gpio_hwmod_class,
>> .mpu_irqs = omap44xx_gpio1_irqs,
>> @@ -1761,7 +1761,27 @@ static struct omap_hwmod omap44xx_gpio1_hwmod = {
>> .dev_attr =&gpio_dev_attr,
>> .slaves = omap44xx_gpio1_slaves,
>> .slaves_cnt = ARRAY_SIZE(omap44xx_gpio1_slaves),
>> - .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP44XX),
>> + .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP4430),
>> +};
>> +
>> +static struct omap_hwmod omap446x_gpio1_hwmod = {
>> + .name = "gpio1",
>> + .class =&omap44xx_gpio_hwmod_class,
>> + .flags = HWMOD_INIT_NO_RESET,
>> + .mpu_irqs = omap44xx_gpio1_irqs,
>> + .mpu_irqs_cnt = ARRAY_SIZE(omap44xx_gpio1_irqs),
>> + .main_clk = "gpio1_ick",
>> + .prcm = {
>> + .omap4 = {
>> + .clkctrl_reg = OMAP4430_CM_WKUP_GPIO1_CLKCTRL,
>> + },
>> + },
>> + .opt_clks = gpio1_opt_clks,
>> + .opt_clks_cnt = ARRAY_SIZE(gpio1_opt_clks),
>> + .dev_attr =&gpio_dev_attr,
>> + .slaves = omap44xx_gpio1_slaves,
>> + .slaves_cnt = ARRAY_SIZE(omap44xx_gpio1_slaves),
>> + .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP4460),
>> };
>
> This is a board-specific problem that you've "fixed" in a way that
> affects every 4460-based device.
>
> Rather than setting the flag in the hwmod data, you need to fix this
> in a board-specific way.
>
> The hwmod layer provides an API for this: omap_hwmod_no_setup_reset()
> which should be called by board-specific code.
>
> Kevin
>
>> /* gpio2 */
>> @@ -5079,7 +5099,8 @@ static __initdata struct omap_hwmod *omap44xx_hwmods[] = {
>> &omap44xx_dss_venc_hwmod,
>>
>> /* gpio class */
>> - &omap44xx_gpio1_hwmod,
>> + &omap443x_gpio1_hwmod,
>> + &omap446x_gpio1_hwmod,
>> &omap44xx_gpio2_hwmod,
>> &omap44xx_gpio3_hwmod,
>> &omap44xx_gpio4_hwmod,
> --
> 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
next prev parent reply other threads:[~2011-05-27 7:10 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-05-26 1:56 [RFC][PATCH 0/9] OMAP4: Add 4460 base support Nishanth Menon
2011-05-26 1:56 ` [RFC][PATCH 1/9] OMAP: ID: introduce chip detection for OMAP4460 Nishanth Menon
2011-05-26 8:33 ` Premi, Sanjeev
2011-05-26 14:27 ` Nishanth Menon
2011-05-26 23:15 ` Kevin Hilman
2011-05-26 23:35 ` Menon, Nishanth
2011-05-26 1:56 ` [RFC][PATCH 2/9] OMAP4: HWMOD: make current hwmods common for 4460 and 4430 Nishanth Menon
2011-05-30 9:01 ` Vladimir Pantelic
2011-05-30 11:50 ` Nishanth Menon
2011-05-26 1:56 ` [RFC][PATCH 3/9] OMAP4460: HWMOD: DO not reset GPIO1 during HWMOD init Nishanth Menon
2011-05-26 8:36 ` Premi, Sanjeev
2011-05-26 14:28 ` Nishanth Menon
2011-05-26 23:24 ` Kevin Hilman
2011-05-26 23:37 ` Menon, Nishanth
2011-05-27 7:10 ` Cousson, Benoit [this message]
[not found] ` <BANLkTi=dHknRn5KJSh3_bG-o19BUg2AjrA@mail.gmail.com>
2011-05-27 12:16 ` Cousson, Benoit
2011-05-27 14:59 ` Kevin Hilman
2011-05-27 15:06 ` Cousson, Benoit
2011-05-27 19:35 ` Kevin Hilman
2011-05-27 19:38 ` Kevin Hilman
2011-05-29 1:11 ` Menon, Nishanth
2011-05-29 21:04 ` Steve Calfee
2011-05-30 8:32 ` Cousson, Benoit
2011-05-30 10:53 ` Koen Kooi
2011-05-26 1:56 ` [RFC][PATCH 4/9] OMAP4: clocks: distinguish 4430 and 4460 Nishanth Menon
2011-05-26 8:41 ` Premi, Sanjeev
2011-05-26 1:56 ` [RFC][PATCH 5/9] OMAP4: PRM: OMAP4460 specific PRM and CM register bitshifts Nishanth Menon
2011-05-26 1:56 ` [RFC][PATCH 6/9] OMAP4: clocks: Update the clock tree with 4460 clock nodes Nishanth Menon
2011-05-26 1:56 ` [RFC][PATCH 7/9] OMAP4: powerdomain: Update MPU powerdomain for 4460 Nishanth Menon
2011-05-26 8:52 ` Premi, Sanjeev
2011-05-26 14:30 ` Nishanth Menon
2011-05-26 1:56 ` [RFC][PATCH 8/9] OMAP4: clockdomain: Use CHIP_IS_44XX to reuse all CD's on 4460 Nishanth Menon
2011-05-26 8:47 ` Premi, Sanjeev
2011-05-26 1:56 ` [RFC][PATCH 9/9] OMAP4460: dpll: Support MPU frequencies > 1 Ghz Nishanth Menon
2011-05-26 3:16 ` Todd Poynor
2011-05-26 4:13 ` Rajendra Nayak
2011-05-26 4:53 ` Menon, Nishanth
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=4DDF4E4D.6060008@ti.com \
--to=b-cousson@ti.com \
--cc=khilman@ti.com \
--cc=linux-omap@vger.kernel.org \
--cc=m-sonasath@ti.com \
--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;
as well as URLs for NNTP newsgroup(s).