Skip to content

Commit

Permalink
drm: rcar-du: lvds: Set LVEN and LVRES bits together on D3
Browse files Browse the repository at this point in the history
On the D3 SoC the LVDS PHY must be enabled in the same register write
that enables the LVDS output. Skip writing the LVEN bit independently
on that platform, it will be set by the write that sets LVRES.

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Reviewed-by: Jacopo Mondi <jacopo+renesas@jmondi.org>
  • Loading branch information
Laurent Pinchart committed Mar 28, 2019
1 parent 8713703 commit 00d082c
Showing 1 changed file with 6 additions and 2 deletions.
8 changes: 6 additions & 2 deletions drivers/gpu/drm/rcar-du/rcar_lvds.c
Original file line number Diff line number Diff line change
Expand Up @@ -485,9 +485,13 @@ static void rcar_lvds_enable(struct drm_bridge *bridge)
}

if (lvds->info->quirks & RCAR_LVDS_QUIRK_GEN3_LVEN) {
/* Turn on the LVDS PHY. */
/*
* Turn on the LVDS PHY. On D3, the LVEN and LVRES bit must be
* set at the same time, so don't write the register yet.
*/
lvdcr0 |= LVDCR0_LVEN;
rcar_lvds_write(lvds, LVDCR0, lvdcr0);
if (!(lvds->info->quirks & RCAR_LVDS_QUIRK_PWD))
rcar_lvds_write(lvds, LVDCR0, lvdcr0);
}

if (!(lvds->info->quirks & RCAR_LVDS_QUIRK_EXT_PLL)) {
Expand Down

0 comments on commit 00d082c

Please sign in to comment.