diff options
| author | Doug Zobel <dzobel1@motorola.com> | 2013-11-15 14:29:07 -0600 | 
|---|---|---|
| committer | James Wylder <jwylder@motorola.com> | 2014-03-05 17:46:52 -0600 | 
| commit | d2a782003a6047da120a33e6f8ee6fd33bb825d6 (patch) | |
| tree | 8d20bd4ecda62a06e98993c4108456bc1acb0d0b /drivers/video/omap2/dss/dsi.c | |
| parent | 32fd2d36d2464056d4522a9c02797b7c2b2e884f (diff) | |
| download | olio-linux-3.10-d2a782003a6047da120a33e6f8ee6fd33bb825d6.tar.xz olio-linux-3.10-d2a782003a6047da120a33e6f8ee6fd33bb825d6.zip  | |
CW integration and minnow bringup
  * create minnow machine type
  * create Android makefile
  * add pre-commit syntax check
  * enable -Werror
  * Add drivers: CPCAP, TPS65xxx, m4sensorhub, atmxt, lm3535,
                 usb gadget, minnow display, TI 12xx wireless
Change-Id: I7962f5e1256715f2452aed5a62a4f2f2383d5046
Diffstat (limited to 'drivers/video/omap2/dss/dsi.c')
| -rw-r--r-- | drivers/video/omap2/dss/dsi.c | 26 | 
1 files changed, 15 insertions, 11 deletions
diff --git a/drivers/video/omap2/dss/dsi.c b/drivers/video/omap2/dss/dsi.c index a73dedc3310..749aa38605a 100644 --- a/drivers/video/omap2/dss/dsi.c +++ b/drivers/video/omap2/dss/dsi.c @@ -4272,10 +4272,6 @@ static void dsi_update_screen_dispc(struct platform_device *dsidev)  	dsi_perf_mark_start(dsidev); -	r = schedule_delayed_work(&dsi->framedone_timeout_work, -		msecs_to_jiffies(250)); -	BUG_ON(r == 0); -  	dss_mgr_set_timings(mgr, &dsi->timings);  	dss_mgr_start_update(mgr); @@ -4291,6 +4287,11 @@ static void dsi_update_screen_dispc(struct platform_device *dsidev)  		mod_timer(&dsi->te_timer, jiffies + msecs_to_jiffies(250));  #endif  	} +	/* Start timer at bottom to avoid dispc update start delayed sometimes +	 */ +	r = schedule_delayed_work(&dsi->framedone_timeout_work, +		msecs_to_jiffies(250)); +	BUG_ON(r == 0);  }  #ifdef DSI_CATCH_MISSING_TE @@ -4593,6 +4594,9 @@ int omapdss_dsi_display_enable(struct omap_dss_device *dssdev)  	dsi_enable_pll_clock(dsidev, 1); +	dsi_vc_enable(dsidev, 0, 0); +	dsi_vc_enable(dsidev, 1, 0); +  	_dsi_initialize_irq(dsidev);  	r = dsi_display_init_dsi(dsidev); @@ -5521,13 +5525,6 @@ static int omap_dsihw_probe(struct platform_device *dsidev)  		return -ENODEV;  	} -	r = devm_request_irq(&dsidev->dev, dsi->irq, omap_dsi_irq_handler, -			     IRQF_SHARED, dev_name(&dsidev->dev), dsi->pdev); -	if (r < 0) { -		DSSERR("request_irq failed\n"); -		return r; -	} -  	/* DSI VCs initialization */  	for (i = 0; i < ARRAY_SIZE(dsi->vc); i++) {  		dsi->vc[i].source = DSI_VC_SOURCE_L4; @@ -5547,6 +5544,13 @@ static int omap_dsihw_probe(struct platform_device *dsidev)  	if (r)  		goto err_runtime_get; +	r = devm_request_irq(&dsidev->dev, dsi->irq, omap_dsi_irq_handler, +			     IRQF_SHARED, dev_name(&dsidev->dev), dsi->pdev); +	if (r < 0) { +		DSSERR("request_irq failed\n"); +		goto err_runtime_get; +	} +  	rev = dsi_read_reg(dsidev, DSI_REVISION);  	dev_dbg(&dsidev->dev, "OMAP DSI rev %d.%d\n",  	       FLD_GET(rev, 7, 4), FLD_GET(rev, 3, 0));  |