mirror of
https://github.com/torvalds/linux.git
synced 2026-06-01 11:03:43 +02:00
drm/mediatek: gamma: Reduce indentation in mtk_gamma_set_common()
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>
This commit is contained in:
parent
1c5a880a2a
commit
aa5fb24f97
|
|
@ -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++) {
|
||||
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);
|
||||
|
||||
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));
|
||||
word = ((diff[0] & LUT_10BIT_MASK) << 20) +
|
||||
((diff[1] & LUT_10BIT_MASK) << 10) +
|
||||
(diff[2] & LUT_10BIT_MASK);
|
||||
}
|
||||
writel(word, (lut_base + i * 4));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user