drm/mediatek: gamma: Reduce indentation in mtk_gamma_set_common()
authorAngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Thu, 12 Oct 2023 09:57:22 +0000 (11:57 +0200)
committerChun-Kuang Hu <chunkuang.hu@kernel.org>
Sun, 15 Oct 2023 23:40:55 +0000 (23:40 +0000)
Invert the check for state->gamma_lut and move it at the beginning
of the function to reduce indentation: this prepares the code for
keeping readability on later additions.

This commit brings no functional changes.

Reviewed-by: Jason-JH.Lin <jason-jh.lin@mediatek.com>
Reviewed-by: Alexandre Mergnat <amergnat@baylibre.com>
Reviewed-by: CK Hu <ck.hu@mediatek.com>
Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Link: https://patchwork.kernel.org/project/dri-devel/patch/20231012095736.100784-3-angelogioacchino.delregno@collabora.com/
Signed-off-by: Chun-Kuang Hu <chunkuang.hu@kernel.org>
drivers/gpu/drm/mediatek/mtk_disp_gamma.c

index cb46ac0478f1f45aeb5d42fceb2989c4a9a1fdfe..91e82b6d86a94c5d68a5b693a1c15def4987739b 100644 (file)
@@ -64,6 +64,10 @@ void mtk_gamma_set_common(struct device *dev, void __iomem *regs, struct drm_crt
        u32 word;
        u32 diff[3] = {0};
 
+       /* If there's no gamma lut there's nothing to do here. */
+       if (!state->gamma_lut)
+               return;
+
        /* If we're called from AAL, dev is NULL */
        gamma = dev ? dev_get_drvdata(dev) : NULL;
 
@@ -72,29 +76,26 @@ void mtk_gamma_set_common(struct device *dev, void __iomem *regs, struct drm_crt
        else
                lut_diff = false;
 
-       if (state->gamma_lut) {
-               reg = readl(regs + DISP_GAMMA_CFG);
-               reg = reg | GAMMA_LUT_EN;
-               writel(reg, regs + DISP_GAMMA_CFG);
-               lut_base = regs + DISP_GAMMA_LUT;
-               lut = (struct drm_color_lut *)state->gamma_lut->data;
-               for (i = 0; i < MTK_LUT_SIZE; i++) {
-
-                       if (!lut_diff || (i % 2 == 0)) {
-                               word = (((lut[i].red >> 6) & LUT_10BIT_MASK) << 20) +
-                                       (((lut[i].green >> 6) & LUT_10BIT_MASK) << 10) +
-                                       ((lut[i].blue >> 6) & LUT_10BIT_MASK);
-                       } else {
-                               diff[0] = (lut[i].red >> 6) - (lut[i - 1].red >> 6);
-                               diff[1] = (lut[i].green >> 6) - (lut[i - 1].green >> 6);
-                               diff[2] = (lut[i].blue >> 6) - (lut[i - 1].blue >> 6);
-
-                               word = ((diff[0] & LUT_10BIT_MASK) << 20) +
-                                       ((diff[1] & LUT_10BIT_MASK) << 10) +
-                                       (diff[2] & LUT_10BIT_MASK);
-                       }
-                       writel(word, (lut_base + i * 4));
+       reg = readl(regs + DISP_GAMMA_CFG);
+       reg = reg | GAMMA_LUT_EN;
+       writel(reg, regs + DISP_GAMMA_CFG);
+       lut_base = regs + DISP_GAMMA_LUT;
+       lut = (struct drm_color_lut *)state->gamma_lut->data;
+       for (i = 0; i < MTK_LUT_SIZE; i++) {
+               if (!lut_diff || (i % 2 == 0)) {
+                       word = (((lut[i].red >> 6) & LUT_10BIT_MASK) << 20) +
+                               (((lut[i].green >> 6) & LUT_10BIT_MASK) << 10) +
+                               ((lut[i].blue >> 6) & LUT_10BIT_MASK);
+               } else {
+                       diff[0] = (lut[i].red >> 6) - (lut[i - 1].red >> 6);
+                       diff[1] = (lut[i].green >> 6) - (lut[i - 1].green >> 6);
+                       diff[2] = (lut[i].blue >> 6) - (lut[i - 1].blue >> 6);
+
+                       word = ((diff[0] & LUT_10BIT_MASK) << 20) +
+                               ((diff[1] & LUT_10BIT_MASK) << 10) +
+                               (diff[2] & LUT_10BIT_MASK);
                }
+               writel(word, (lut_base + i * 4));
        }
 }