Re: [PATCH 03/27] OMAP: DSS2: Reset LANEx_ULPS_SIG2 bits after use
From: Tomi Valkeinen <hidden>
Date: 2011-06-06 07:21:34
Also in:
linux-omap
On Mon, 2011-06-06 at 11:11 +0530, Archit Taneja wrote:
Hi, On Friday 03 June 2011 03:30 PM, Valkeinen, Tomi wrote:quoted
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<redacted> --- 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