Hi Ville, > -----Original Message----- > From: [email protected] [mailto:linux-omap- > [email protected]] On Behalf Of [email protected] > Sent: Friday, March 05, 2010 7:26 AM > To: Tomi Valkeinen > Cc: [email protected]; [email protected]; Ville Syrjälä > Subject: [PATCH 4/4] DSS2: clear spurious SYNC_LOST_DIGIT interrupts > > From: Ville Syrjälä <[email protected]> > > When DSS transitions from off mode to on VENC may generate a spurious > SYNC_LOST_DIGIT error. Just ack it when restoring the context. Also > restore IRQENABLE last to avoid triggering interrupts before the > context is fully restored.
(Tomi or anyone can correct me if I'm wrong) AFAIK, The solution for spurious interrupts is to flush posted bus writes during interrupt handling, which can be achieved by reading the same register just after you have written it. Tomi, what do you think? Regards, Sergio > > Signed-off-by: Ville Syrjälä <[email protected]> > --- > drivers/video/omap2/dss/dispc.c | 11 ++++++++++- > 1 files changed, 10 insertions(+), 1 deletions(-) > > diff --git a/drivers/video/omap2/dss/dispc.c > b/drivers/video/omap2/dss/dispc.c > index e777e35..b8c1603 100644 > --- a/drivers/video/omap2/dss/dispc.c > +++ b/drivers/video/omap2/dss/dispc.c > @@ -335,7 +335,7 @@ void dispc_save_context(void) > void dispc_restore_context(void) > { > RR(SYSCONFIG); > - RR(IRQENABLE); > + /*RR(IRQENABLE);*/ > /*RR(CONTROL);*/ > RR(CONFIG); > RR(DEFAULT_COLOR0); > @@ -472,6 +472,15 @@ void dispc_restore_context(void) > > /* enable last, because LCD & DIGIT enable are here */ > RR(CONTROL); > + > + /* clear spurious SYNC_LOST_DIGIT interrupts */ > + dispc_write_reg(DISPC_IRQSTATUS, DISPC_IRQ_SYNC_LOST_DIGIT); > + > + /* > + * enable last so IRQs won't trigger before > + * the context is fully restored > + */ > + RR(IRQENABLE); > } > > #undef SR > -- > 1.6.4.4 > > -- > To unsubscribe from this list: send the line "unsubscribe linux-omap" in > the body of a message to [email protected] > More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
