Commit 79e4424f authored by Tomi Valkeinen's avatar Tomi Valkeinen
Browse files

OMAP: DSS2: PicoDLP: fix error handling in power_on



Fix two problems in PicoDLP driver's error handling on
picodlp_panel_power_on:

- If omapdss_dpi_display_enable() failed, the its error value was not
  returned
- If picodlp_i2c_init() failed, dssdev->state was erroneously set to
  OMAP_DSS_DISPLAY_ACTIVE

Signed-off-by: default avatarTomi Valkeinen <tomi.valkeinen@ti.com>
parent 24305db8
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -370,16 +370,18 @@ static int picodlp_panel_power_on(struct omap_dss_device *dssdev)
	 * then only i2c commands can be successfully sent to dpp2600
	 */
	msleep(1000);
	if (omapdss_dpi_display_enable(dssdev)) {
	r = omapdss_dpi_display_enable(dssdev);
	if (r) {
		dev_err(&dssdev->dev, "failed to enable DPI\n");
		goto err1;
	}
	dssdev->state = OMAP_DSS_DISPLAY_ACTIVE;

	r = picodlp_i2c_init(picod->picodlp_i2c_client);
	if (r)
		goto err;

	dssdev->state = OMAP_DSS_DISPLAY_ACTIVE;

	return r;
err:
	omapdss_dpi_display_disable(dssdev);