[PATCH v2 05/10] drm: rcar-du: lvds: Remove LVDS double-enable checks
Jacopo Mondi
jacopo at jmondi.org
Tue May 28 09:40:03 UTC 2019
Hi Laurent,
On Sun, May 12, 2019 at 12:06:57AM +0300, Laurent Pinchart wrote:
> The DRM core and DU driver guarantee that the LVDS bridge will not be
> double-enabled or double-disabled. Remove the corresponding unnecessary
> checks.
>
> Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas at ideasonboard.com>
Reviewed-by: Jacopo Mondi <jacopo+renesas at jmondi.org>
Thanks
j
> ---
> drivers/gpu/drm/rcar-du/rcar_lvds.c | 19 -------------------
> 1 file changed, 19 deletions(-)
>
> diff --git a/drivers/gpu/drm/rcar-du/rcar_lvds.c b/drivers/gpu/drm/rcar-du/rcar_lvds.c
> index 620b51aab291..a331f0c32187 100644
> --- a/drivers/gpu/drm/rcar-du/rcar_lvds.c
> +++ b/drivers/gpu/drm/rcar-du/rcar_lvds.c
> @@ -63,7 +63,6 @@ struct rcar_lvds {
> struct clk *extal; /* External clock */
> struct clk *dotclkin[2]; /* External DU clocks */
> } clocks;
> - bool enabled;
>
> struct drm_display_mode display_mode;
> enum rcar_lvds_mode mode;
> @@ -368,15 +367,12 @@ int rcar_lvds_clk_enable(struct drm_bridge *bridge, unsigned long freq)
>
> dev_dbg(lvds->dev, "enabling LVDS PLL, freq=%luHz\n", freq);
>
> - WARN_ON(lvds->enabled);
> -
> ret = clk_prepare_enable(lvds->clocks.mod);
> if (ret < 0)
> return ret;
>
> __rcar_lvds_pll_setup_d3_e3(lvds, freq, true);
>
> - lvds->enabled = true;
> return 0;
> }
> EXPORT_SYMBOL_GPL(rcar_lvds_clk_enable);
> @@ -390,13 +386,9 @@ void rcar_lvds_clk_disable(struct drm_bridge *bridge)
>
> dev_dbg(lvds->dev, "disabling LVDS PLL\n");
>
> - WARN_ON(!lvds->enabled);
> -
> rcar_lvds_write(lvds, LVDPLLCR, 0);
>
> clk_disable_unprepare(lvds->clocks.mod);
> -
> - lvds->enabled = false;
> }
> EXPORT_SYMBOL_GPL(rcar_lvds_clk_disable);
>
> @@ -417,8 +409,6 @@ static void rcar_lvds_enable(struct drm_bridge *bridge)
> u32 lvdcr0;
> int ret;
>
> - WARN_ON(lvds->enabled);
> -
> ret = clk_prepare_enable(lvds->clocks.mod);
> if (ret < 0)
> return;
> @@ -507,16 +497,12 @@ static void rcar_lvds_enable(struct drm_bridge *bridge)
> drm_panel_prepare(lvds->panel);
> drm_panel_enable(lvds->panel);
> }
> -
> - lvds->enabled = true;
> }
>
> static void rcar_lvds_disable(struct drm_bridge *bridge)
> {
> struct rcar_lvds *lvds = bridge_to_rcar_lvds(bridge);
>
> - WARN_ON(!lvds->enabled);
> -
> if (lvds->panel) {
> drm_panel_disable(lvds->panel);
> drm_panel_unprepare(lvds->panel);
> @@ -527,8 +513,6 @@ static void rcar_lvds_disable(struct drm_bridge *bridge)
> rcar_lvds_write(lvds, LVDPLLCR, 0);
>
> clk_disable_unprepare(lvds->clocks.mod);
> -
> - lvds->enabled = false;
> }
>
> static bool rcar_lvds_mode_fixup(struct drm_bridge *bridge,
> @@ -592,8 +576,6 @@ static void rcar_lvds_mode_set(struct drm_bridge *bridge,
> {
> struct rcar_lvds *lvds = bridge_to_rcar_lvds(bridge);
>
> - WARN_ON(lvds->enabled);
> -
> lvds->display_mode = *adjusted_mode;
>
> rcar_lvds_get_lvds_mode(lvds);
> @@ -793,7 +775,6 @@ static int rcar_lvds_probe(struct platform_device *pdev)
>
> lvds->dev = &pdev->dev;
> lvds->info = of_device_get_match_data(&pdev->dev);
> - lvds->enabled = false;
>
> ret = rcar_lvds_parse_dt(lvds);
> if (ret < 0)
> --
> Regards,
>
> Laurent Pinchart
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/dri-devel/attachments/20190528/8024f59a/attachment.sig>
More information about the dri-devel
mailing list