]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
drm/vc4: Match drm_dev_enter and exit calls in vc4_hvs_lut_load
authorDave Stevenson <dave.stevenson@raspberrypi.com>
Tue, 8 Oct 2024 16:44:34 +0000 (17:44 +0100)
committerDave Stevenson <dave.stevenson@raspberrypi.com>
Wed, 9 Oct 2024 11:10:19 +0000 (12:10 +0100)
Commit 52efe364d196 ("drm/vc4: hvs: Don't write gamma luts on 2711")
added a return path to vc4_hvs_lut_load that had called
drm_dev_enter, but not drm_dev_exit.

Ensure we call drm_dev_exit.

Fixes: 52efe364d196 ("drm/vc4: hvs: Don't write gamma luts on 2711")
Reported-by: Marek Szyprowski <m.szyprowski@samsung.com>
Closes: https://lore.kernel.org/dri-devel/37051126-3921-4afe-a936-5f828bff5752@samsung.com/
Tested-by: Marek Szyprowski <m.szyprowski@samsung.com>
Reviewed-by: MaĆ­ra Canal <mcanal@igalia.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20241008-drm-vc4-fixes-v1-1-9d0396ca9f42@raspberrypi.com
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
drivers/gpu/drm/vc4/vc4_hvs.c

index 2a366a607fcc1d832addfacfae304377330d4ccd..546ee11016b29f24f1ba1c0b3c46bd6946e8cded 100644 (file)
@@ -225,7 +225,7 @@ static void vc4_hvs_lut_load(struct vc4_hvs *hvs,
                return;
 
        if (hvs->vc4->gen == VC4_GEN_4)
-               return;
+               goto exit;
 
        /* The LUT memory is laid out with each HVS channel in order,
         * each of which takes 256 writes for R, 256 for G, then 256
@@ -242,6 +242,7 @@ static void vc4_hvs_lut_load(struct vc4_hvs *hvs,
        for (i = 0; i < crtc->gamma_size; i++)
                HVS_WRITE(SCALER_GAMDATA, vc4_crtc->lut_b[i]);
 
+exit:
        drm_dev_exit(idx);
 }