summaryrefslogtreecommitdiffstats
path: root/drivers/video/omap2/dss/dsi.c
diff options
context:
space:
mode:
authorTomi Valkeinen <tomi.valkeinen@ti.com>2013-02-22 12:42:59 +0100
committerTomi Valkeinen <tomi.valkeinen@ti.com>2013-04-03 14:19:01 +0200
commit2c1a3ea0dc48d6b5d580781578a40f9a9e4acef8 (patch)
treed59ba36a5093710f28559312597f4c3631d0b494 /drivers/video/omap2/dss/dsi.c
parentOMAPDSS: DSI: delay dispc initialization (diff)
downloadlinux-2c1a3ea0dc48d6b5d580781578a40f9a9e4acef8.tar.xz
linux-2c1a3ea0dc48d6b5d580781578a40f9a9e4acef8.zip
OMAPDSS: DSI: fix DSI channel source initialization
During the initialization of the DSI protocol registers, we always set the sources of all DSI channels to L4. However, we don't update the value in the dsi_data, so we may end up with a different value in the register and in the dsi_data, leading to DSI problems. This patch fixes the issue by initializing also the channel source in the dsi_data. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> Reviewed-by: Archit Taneja <archit@ti.com>
Diffstat (limited to 'drivers/video/omap2/dss/dsi.c')
-rw-r--r--drivers/video/omap2/dss/dsi.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/video/omap2/dss/dsi.c b/drivers/video/omap2/dss/dsi.c
index c9f9d0faf8e3..b0eed4323394 100644
--- a/drivers/video/omap2/dss/dsi.c
+++ b/drivers/video/omap2/dss/dsi.c
@@ -2794,6 +2794,7 @@ static int dsi_vc_enable(struct platform_device *dsidev, int channel,
static void dsi_vc_initial_config(struct platform_device *dsidev, int channel)
{
+ struct dsi_data *dsi = dsi_get_dsidrv_data(dsidev);
u32 r;
DSSDBG("Initial config of virtual channel %d", channel);
@@ -2818,6 +2819,8 @@ static void dsi_vc_initial_config(struct platform_device *dsidev, int channel)
r = FLD_MOD(r, 4, 23, 21); /* DMA_TX_REQ_NB = no dma */
dsi_write_reg(dsidev, DSI_VC_CTRL(channel), r);
+
+ dsi->vc[channel].source = DSI_VC_SOURCE_L4;
}
static int dsi_vc_config_source(struct platform_device *dsidev, int channel,