diff options
Diffstat (limited to 'drivers/video/omap2')
-rw-r--r-- | drivers/video/omap2/displays/panel-taal.c | 30 |
1 files changed, 23 insertions, 7 deletions
diff --git a/drivers/video/omap2/displays/panel-taal.c b/drivers/video/omap2/displays/panel-taal.c index b1e968d9e8bf..2c2f1924b2c3 100644 --- a/drivers/video/omap2/displays/panel-taal.c +++ b/drivers/video/omap2/displays/panel-taal.c | |||
@@ -696,16 +696,32 @@ static int taal_power_on(struct omap_dss_device *dssdev) | |||
696 | if (id2 == 0x00 || id2 == 0xff || id2 == 0x81) | 696 | if (id2 == 0x00 || id2 == 0xff || id2 == 0x81) |
697 | td->cabc_broken = true; | 697 | td->cabc_broken = true; |
698 | 698 | ||
699 | taal_dcs_write_1(DCS_BRIGHTNESS, 0xff); | 699 | r = taal_dcs_write_1(DCS_BRIGHTNESS, 0xff); |
700 | taal_dcs_write_1(DCS_CTRL_DISPLAY, (1<<2) | (1<<5)); /* BL | BCTRL */ | 700 | if (r) |
701 | goto err; | ||
701 | 702 | ||
702 | taal_dcs_write_1(DCS_PIXEL_FORMAT, 0x7); /* 24bit/pixel */ | 703 | r = taal_dcs_write_1(DCS_CTRL_DISPLAY, |
704 | (1<<2) | (1<<5)); /* BL | BCTRL */ | ||
705 | if (r) | ||
706 | goto err; | ||
703 | 707 | ||
704 | taal_set_addr_mode(td->rotate, td->mirror); | 708 | r = taal_dcs_write_1(DCS_PIXEL_FORMAT, 0x7); /* 24bit/pixel */ |
705 | if (!td->cabc_broken) | 709 | if (r) |
706 | taal_dcs_write_1(DCS_WRITE_CABC, td->cabc_mode); | 710 | goto err; |
707 | 711 | ||
708 | taal_dcs_write_0(DCS_DISPLAY_ON); | 712 | r = taal_set_addr_mode(td->rotate, td->mirror); |
713 | if (r) | ||
714 | goto err; | ||
715 | |||
716 | if (!td->cabc_broken) { | ||
717 | r = taal_dcs_write_1(DCS_WRITE_CABC, td->cabc_mode); | ||
718 | if (r) | ||
719 | goto err; | ||
720 | } | ||
721 | |||
722 | r = taal_dcs_write_0(DCS_DISPLAY_ON); | ||
723 | if (r) | ||
724 | goto err; | ||
709 | 725 | ||
710 | r = _taal_enable_te(dssdev, td->te_enabled); | 726 | r = _taal_enable_te(dssdev, td->te_enabled); |
711 | if (r) | 727 | if (r) |