lkml.org 
[lkml]   [2022]   [Jun]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH v13 09/14] drm/mediatek: dpi: move the yuv422_en_bit to SoC config
    Date
    From: Guillaume Ranquet <granquet@baylibre.com>

    Add flexibility by moving the yuv422 en bit to SoC specific config

    Signed-off-by: Guillaume Ranquet <granquet@baylibre.com>
    Signed-off-by: Bo-Chen Chen <rex-bc.chen@mediatek.com>
    Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
    Reviewed-by: Rex-BC Chen <rex-bc.chen@mediatek.com>
    Reviewed-by: CK Hu <ck.hu@mediatek.com>
    ---
    drivers/gpu/drm/mediatek/mtk_dpi.c | 9 ++++++++-
    1 file changed, 8 insertions(+), 1 deletion(-)

    diff --git a/drivers/gpu/drm/mediatek/mtk_dpi.c b/drivers/gpu/drm/mediatek/mtk_dpi.c
    index f168a24f10ce..3a5555a26cd1 100644
    --- a/drivers/gpu/drm/mediatek/mtk_dpi.c
    +++ b/drivers/gpu/drm/mediatek/mtk_dpi.c
    @@ -132,6 +132,7 @@ struct mtk_dpi_yc_limit {
    * (no shift).
    * @hvsize_mask: Mask of HSIZE and VSIZE mask (no shift).
    * @channel_swap_shift: Shift value of channel swap.
    + * @yuv422_en_bit: Enable bit of yuv422.
    */
    struct mtk_dpi_conf {
    unsigned int (*cal_factor)(int clock);
    @@ -145,6 +146,7 @@ struct mtk_dpi_conf {
    u32 dimension_mask;
    u32 hvsize_mask;
    u32 channel_swap_shift;
    + u32 yuv422_en_bit;
    };

    static void mtk_dpi_mask(struct mtk_dpi *dpi, u32 offset, u32 val, u32 mask)
    @@ -382,7 +384,8 @@ static void mtk_dpi_config_channel_swap(struct mtk_dpi *dpi,

    static void mtk_dpi_config_yuv422_enable(struct mtk_dpi *dpi, bool enable)
    {
    - mtk_dpi_mask(dpi, DPI_CON, enable ? YUV422_EN : 0, YUV422_EN);
    + mtk_dpi_mask(dpi, DPI_CON, enable ? dpi->conf->yuv422_en_bit : 0,
    + dpi->conf->yuv422_en_bit);
    }

    static void mtk_dpi_config_csc_enable(struct mtk_dpi *dpi, bool enable)
    @@ -846,6 +849,7 @@ static const struct mtk_dpi_conf mt8173_conf = {
    .dimension_mask = HPW_MASK,
    .hvsize_mask = HSIZE_MASK,
    .channel_swap_shift = CH_SWAP,
    + .yuv422_en_bit = YUV422_EN,
    };

    static const struct mtk_dpi_conf mt2701_conf = {
    @@ -860,6 +864,7 @@ static const struct mtk_dpi_conf mt2701_conf = {
    .dimension_mask = HPW_MASK,
    .hvsize_mask = HSIZE_MASK,
    .channel_swap_shift = CH_SWAP,
    + .yuv422_en_bit = YUV422_EN,
    };

    static const struct mtk_dpi_conf mt8183_conf = {
    @@ -873,6 +878,7 @@ static const struct mtk_dpi_conf mt8183_conf = {
    .dimension_mask = HPW_MASK,
    .hvsize_mask = HSIZE_MASK,
    .channel_swap_shift = CH_SWAP,
    + .yuv422_en_bit = YUV422_EN,
    };

    static const struct mtk_dpi_conf mt8192_conf = {
    @@ -886,6 +892,7 @@ static const struct mtk_dpi_conf mt8192_conf = {
    .dimension_mask = HPW_MASK,
    .hvsize_mask = HSIZE_MASK,
    .channel_swap_shift = CH_SWAP,
    + .yuv422_en_bit = YUV422_EN,
    };

    static int mtk_dpi_probe(struct platform_device *pdev)
    --
    2.18.0
    \
     
     \ /
      Last update: 2022-06-21 13:40    [W:4.429 / U:0.040 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site