Rajendra Nayak <rnayak@xxxxxx> writes: > Do not skip the sysc programming in the hmwod framework based > on the cached value alone, since at times the module might have lost > context (due to the Powerdomain in which the module belongs > transitions to either Open Switch RET or OFF). > > Identifying if a module has lost context requires atleast one > register read, and since a register read has more latency than > a write, it makes sense to do a blind write always. > > Signed-off-by: Rajendra Nayak <rnayak@xxxxxx> > Cc: Paul Walmsley <paul@xxxxxxxxx> > Cc: Benoit Cousson <b-cousson@xxxxxx> > Cc: Santosh Shilimkar <santosh.shilimkar@xxxxxx> > Cc: Kevin Hilman <khilman@xxxxxxxxxxxxxxxxxxx> Acked-by: Kevin Hilman <khilman@xxxxxxxxxxxxxxxxxxx> > --- > arch/arm/mach-omap2/omap_hwmod.c | 7 +++---- > 1 files changed, 3 insertions(+), 4 deletions(-) > > diff --git a/arch/arm/mach-omap2/omap_hwmod.c b/arch/arm/mach-omap2/omap_hwmod.c > index 5a30658..aadd6dc 100644 > --- a/arch/arm/mach-omap2/omap_hwmod.c > +++ b/arch/arm/mach-omap2/omap_hwmod.c > @@ -209,10 +209,9 @@ static void _write_sysconfig(u32 v, struct omap_hwmod *oh) > > /* XXX ensure module interface clock is up */ > > - if (oh->_sysc_cache != v) { > - oh->_sysc_cache = v; > - omap_hwmod_write(v, oh, oh->class->sysc->sysc_offs); > - } > + /* Module might have lost context, always update cache and register */ > + oh->_sysc_cache = v; > + omap_hwmod_write(v, oh, oh->class->sysc->sysc_offs); > } > > /** -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html