OSDN Git Service

drm: mxsfb: Reorder mxsfb_crtc_mode_set_nofb()
authorMarek Vasut <marex@denx.de>
Sun, 17 Apr 2022 02:08:00 +0000 (04:08 +0200)
committerMarek Vasut <marex@denx.de>
Mon, 25 Apr 2022 22:01:56 +0000 (00:01 +0200)
Reorder mxsfb_crtc_mode_set_nofb() such that all functions which perform
register IO are called from one single location in this function. This is
a clean up. No functional change.

Reviewed-by: Lucas Stach <l.stach@pengutronix.de>
Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Alexander Stein <alexander.stein@ew.tq-group.com>
Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Cc: Lucas Stach <l.stach@pengutronix.de>
Cc: Peng Fan <peng.fan@nxp.com>
Cc: Robby Cai <robby.cai@nxp.com>
Cc: Sam Ravnborg <sam@ravnborg.org>
Cc: Stefan Agner <stefan@agner.ch>
Acked-by: Sam Ravnborg <sam@ravnborg.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20220417020800.336675-4-marex@denx.de
drivers/gpu/drm/mxsfb/mxsfb_kms.c

index 1f0f08e..b7c70d2 100644 (file)
@@ -282,15 +282,6 @@ static void mxsfb_crtc_mode_set_nofb(struct mxsfb_drm_private *mxsfb,
        u32 bus_flags = mxsfb->connector->display_info.bus_flags;
        int err;
 
-       /* Mandatory eLCDIF reset as per the Reference Manual */
-       err = mxsfb_reset_block(mxsfb);
-       if (err)
-               return;
-
-       mxsfb_set_formats(mxsfb, bus_format);
-
-       clk_set_rate(mxsfb->clk, m->crtc_clock * 1000);
-
        if (mxsfb->bridge && mxsfb->bridge->timings)
                bus_flags = mxsfb->bridge->timings->input_bus_flags;
 
@@ -301,6 +292,15 @@ static void mxsfb_crtc_mode_set_nofb(struct mxsfb_drm_private *mxsfb,
                             bus_flags);
        DRM_DEV_DEBUG_DRIVER(drm->dev, "Mode flags: 0x%08X\n", m->flags);
 
+       /* Mandatory eLCDIF reset as per the Reference Manual */
+       err = mxsfb_reset_block(mxsfb);
+       if (err)
+               return;
+
+       mxsfb_set_formats(mxsfb, bus_format);
+
+       clk_set_rate(mxsfb->clk, m->crtc_clock * 1000);
+
        mxsfb_set_mode(mxsfb, bus_flags);
 }