Thara Gopinath <th...@ti.com> writes:

> This patch series introduces smartreflex and voltage driver support
> for OMAP3430 and OMAP3630. SmartReflex modules do adaptive voltage
> control for real-time voltage adjustments.
>
> Originally all the functionalities introduced in this patch
> were present in arch/arm/mach-omap2/smartreflex.c file in Kevin's
> pm tree. This patch series does a major rewrite of this file
> and introduces a separate voltage driver. Major contributors
> to the original driver are

This is excellent, thanks for the rebase/reorg/compress.

While not yet get getting to a full review of this series, I'd like it
to get some broader testing.  To that end, I've replaced the pm-sr
branch in my pm tree with this series, and rebuilt a new PM branch
using it.

Note that it is also based on top of a new pm-opp branch which is
Nishanth's condensed version which is also upstream bound for the next
merge window.

I had to do a couple minor fixes to apply against v2.6.35-rc1 (mainly
fixing usage of #defines that were renamed to have a _MASK suffix.)

It currently boots fine on OMAP3EVM (no efuse values, so no SR) but
when I try it on Zoom3, I get repeated errors:

  Wake up daisy chain activation failed. 

I haven't fully isolated the root cause yet, but it looks like it
might be because omap3_enable_io_chain() seems confused about whether
it should be writing PM_WKEN or PM_WKST reg.

The patch below (on top of new PM branch) seems to have fixed that
problem for Zoom3.

Kevin

diff --git a/arch/arm/mach-omap2/pm34xx.c b/arch/arm/mach-omap2/pm34xx.c
index e531621..207905d 100644
--- a/arch/arm/mach-omap2/pm34xx.c
+++ b/arch/arm/mach-omap2/pm34xx.c
@@ -115,7 +115,7 @@ static void omap3_enable_io_chain(void)
                /* Do a readback to assure write has been done */
                prm_read_mod_reg(WKUP_MOD, PM_WKEN);
 
-               while (!(prm_read_mod_reg(WKUP_MOD, PM_WKST) &
+               while (!(prm_read_mod_reg(WKUP_MOD, PM_WKEN) &
                         OMAP3430_ST_IO_CHAIN_MASK)) {
                        timeout++;
                        if (timeout > 1000) {
@@ -124,7 +124,7 @@ static void omap3_enable_io_chain(void)
                                return;
                        }
                        prm_set_mod_reg_bits(OMAP3430_ST_IO_CHAIN_MASK,
-                                            WKUP_MOD, PM_WKST);
+                                            WKUP_MOD, PM_WKEN);
                }
        }
 }
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to