Message ID | 1307095237-14805-4-git-send-email-tomi.valkeinen@ti.com (mailing list archive) |
---|---|
State | Not Applicable |
Headers | show |
Hi, On Friday 03 June 2011 03:30 PM, Valkeinen, Tomi wrote: > LANEx_ULPS_SIG2 bits are left on after entering ULPS. This doesn't cause > any problems currently, as DSI HW is reset when it is enabled. However, > if the reset is not done, operation fails if the bits are still set. > > So reset the bits after entering ULPS to ensure operation even without > HW reset. > > Signed-off-by: Tomi Valkeinen<tomi.valkeinen@ti.com> > --- > drivers/video/omap2/dss/dsi.c | 4 ++++ > 1 files changed, 4 insertions(+), 0 deletions(-) > > diff --git a/drivers/video/omap2/dss/dsi.c b/drivers/video/omap2/dss/dsi.c > index 69c2d4f..4496d09 100644 > --- a/drivers/video/omap2/dss/dsi.c > +++ b/drivers/video/omap2/dss/dsi.c > @@ -3395,6 +3395,10 @@ static int dsi_enter_ulps(struct platform_device *dsidev) > dsi_unregister_isr_cio(dsidev, dsi_completion_handler,&completion, > DSI_CIO_IRQ_ULPSACTIVENOT_ALL0); > > + /* Reset LANEx_ULPS_SIG2 */ > + REG_FLD_MOD(dsidev, DSI_COMPLEXIO_CFG2, (0<< 0) | (0<< 1) | (0<< 2), > + 7, 5); > + We may need to reset more lanes based on the number of lanes the panel is using. We could calculate a mask here instead. Archit > dsi_cio_power(dsidev, DSI_COMPLEXIO_POWER_ULPS); > > dsi_if_enable(dsidev, false); -- To unsubscribe from this list: send the line "unsubscribe linux-fbdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Mon, 2011-06-06 at 11:11 +0530, Archit Taneja wrote: > Hi, > > On Friday 03 June 2011 03:30 PM, Valkeinen, Tomi wrote: > > LANEx_ULPS_SIG2 bits are left on after entering ULPS. This doesn't cause > > any problems currently, as DSI HW is reset when it is enabled. However, > > if the reset is not done, operation fails if the bits are still set. > > > > So reset the bits after entering ULPS to ensure operation even without > > HW reset. > > > > Signed-off-by: Tomi Valkeinen<tomi.valkeinen@ti.com> > > --- > > drivers/video/omap2/dss/dsi.c | 4 ++++ > > 1 files changed, 4 insertions(+), 0 deletions(-) > > > > diff --git a/drivers/video/omap2/dss/dsi.c b/drivers/video/omap2/dss/dsi.c > > index 69c2d4f..4496d09 100644 > > --- a/drivers/video/omap2/dss/dsi.c > > +++ b/drivers/video/omap2/dss/dsi.c > > @@ -3395,6 +3395,10 @@ static int dsi_enter_ulps(struct platform_device *dsidev) > > dsi_unregister_isr_cio(dsidev, dsi_completion_handler,&completion, > > DSI_CIO_IRQ_ULPSACTIVENOT_ALL0); > > > > + /* Reset LANEx_ULPS_SIG2 */ > > + REG_FLD_MOD(dsidev, DSI_COMPLEXIO_CFG2, (0<< 0) | (0<< 1) | (0<< 2), > > + 7, 5); > > + > > We may need to reset more lanes based on the number of lanes the panel > is using. We could calculate a mask here instead. Yes, I noticed that but I decided just to fix the bug here. The same bits are set a few lines earlier. We should go through all the lane configs in dsi.c, and come up with a way to easily get the necessary masks. Tomi -- To unsubscribe from this list: send the line "unsubscribe linux-fbdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/video/omap2/dss/dsi.c b/drivers/video/omap2/dss/dsi.c index 69c2d4f..4496d09 100644 --- a/drivers/video/omap2/dss/dsi.c +++ b/drivers/video/omap2/dss/dsi.c @@ -3395,6 +3395,10 @@ static int dsi_enter_ulps(struct platform_device *dsidev) dsi_unregister_isr_cio(dsidev, dsi_completion_handler, &completion, DSI_CIO_IRQ_ULPSACTIVENOT_ALL0); + /* Reset LANEx_ULPS_SIG2 */ + REG_FLD_MOD(dsidev, DSI_COMPLEXIO_CFG2, (0 << 0) | (0 << 1) | (0 << 2), + 7, 5); + dsi_cio_power(dsidev, DSI_COMPLEXIO_POWER_ULPS); dsi_if_enable(dsidev, false);
LANEx_ULPS_SIG2 bits are left on after entering ULPS. This doesn't cause any problems currently, as DSI HW is reset when it is enabled. However, if the reset is not done, operation fails if the bits are still set. So reset the bits after entering ULPS to ensure operation even without HW reset. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> --- drivers/video/omap2/dss/dsi.c | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-)