Message ID | 20220621113732.11595-13-rex-bc.chen@mediatek.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drm/mediatek: Add MT8195 dp_intf driver | expand |
Il 21/06/22 13:37, Bo-Chen Chen ha scritto: > MediaTek dpi supports direct connection to pins while dp_intf does not > support. Therefore, add a config "support_direct_pin" to control this. > > Signed-off-by: Bo-Chen Chen <rex-bc.chen@mediatek.com> > --- > drivers/gpu/drm/mediatek/mtk_dpi.c | 17 +++++++++++++---- > 1 file changed, 13 insertions(+), 4 deletions(-) > > diff --git a/drivers/gpu/drm/mediatek/mtk_dpi.c b/drivers/gpu/drm/mediatek/mtk_dpi.c > index 438bf3bc5e4a..ef7f828a4b1e 100644 > --- a/drivers/gpu/drm/mediatek/mtk_dpi.c > +++ b/drivers/gpu/drm/mediatek/mtk_dpi.c > @@ -129,6 +129,8 @@ struct mtk_dpi_yc_limit { > * @is_ck_de_pol: Support CK/DE polarity. > * @swap_input_support: Support input swap function. > * @color_fmt_trans_support: Enable color format transfer. > + * @support_direct_pin: Dpi can directly connect pins, and enable this config > + * to do this. @support_direct_pin: IP supports direct connection to pins or @support_direct_pin: IP has direct connection to DP pins or @support_direct_pin: IP connects directly to DP pins pick one, after which: Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
On Tue, 2022-06-21 at 14:11 +0200, AngeloGioacchino Del Regno wrote: > Il 21/06/22 13:37, Bo-Chen Chen ha scritto: > > MediaTek dpi supports direct connection to pins while dp_intf does > > not > > support. Therefore, add a config "support_direct_pin" to control > > this. > > > > Signed-off-by: Bo-Chen Chen <rex-bc.chen@mediatek.com> > > --- > > drivers/gpu/drm/mediatek/mtk_dpi.c | 17 +++++++++++++---- > > 1 file changed, 13 insertions(+), 4 deletions(-) > > > > diff --git a/drivers/gpu/drm/mediatek/mtk_dpi.c > > b/drivers/gpu/drm/mediatek/mtk_dpi.c > > index 438bf3bc5e4a..ef7f828a4b1e 100644 > > --- a/drivers/gpu/drm/mediatek/mtk_dpi.c > > +++ b/drivers/gpu/drm/mediatek/mtk_dpi.c > > @@ -129,6 +129,8 @@ struct mtk_dpi_yc_limit { > > * @is_ck_de_pol: Support CK/DE polarity. > > * @swap_input_support: Support input swap function. > > * @color_fmt_trans_support: Enable color format transfer. > > + * @support_direct_pin: Dpi can directly connect pins, and enable > > this config > > + * to do this. > > @support_direct_pin: IP supports direct connection to pins > > or > > @support_direct_pin: IP has direct connection to DP pins > > or > > @support_direct_pin: IP connects directly to DP pins > > pick one, after which: > > Reviewed-by: AngeloGioacchino Del Regno < > angelogioacchino.delregno@collabora.com> > > Hello Angelo, this is not connect to "DP" pin. This setting is for dpi to connect to panel directly and there is no such usecase for dp_intf. Therefore, I will use "@support_direct_pin: IP supports direct connection to pins". Thanks BRs, Bo-Chen
On Wed, 2022-06-22 at 17:08 +0800, Rex-BC Chen wrote: > On Tue, 2022-06-21 at 14:11 +0200, AngeloGioacchino Del Regno wrote: > > Il 21/06/22 13:37, Bo-Chen Chen ha scritto: > > > MediaTek dpi supports direct connection to pins while dp_intf > > > does > > > not > > > support. Therefore, add a config "support_direct_pin" to control > > > this. > > > > > > Signed-off-by: Bo-Chen Chen <rex-bc.chen@mediatek.com> > > > --- > > > drivers/gpu/drm/mediatek/mtk_dpi.c | 17 +++++++++++++---- > > > 1 file changed, 13 insertions(+), 4 deletions(-) > > > > > > diff --git a/drivers/gpu/drm/mediatek/mtk_dpi.c > > > b/drivers/gpu/drm/mediatek/mtk_dpi.c > > > index 438bf3bc5e4a..ef7f828a4b1e 100644 > > > --- a/drivers/gpu/drm/mediatek/mtk_dpi.c > > > +++ b/drivers/gpu/drm/mediatek/mtk_dpi.c > > > @@ -129,6 +129,8 @@ struct mtk_dpi_yc_limit { > > > * @is_ck_de_pol: Support CK/DE polarity. > > > * @swap_input_support: Support input swap function. > > > * @color_fmt_trans_support: Enable color format transfer. > > > + * @support_direct_pin: Dpi can directly connect pins, and > > > enable > > > this config > > > + * to do this. > > > > @support_direct_pin: IP supports direct connection to pins > > > > or > > > > @support_direct_pin: IP has direct connection to DP pins > > > > or > > > > @support_direct_pin: IP connects directly to DP pins > > > > pick one, after which: > > > > Reviewed-by: AngeloGioacchino Del Regno < > > angelogioacchino.delregno@collabora.com> > > > > > > Hello Angelo, > > this is not connect to "DP" pin. This setting is for dpi to connect > to > panel directly and there is no such usecase for dp_intf. > > Therefore, I will use "@support_direct_pin: IP supports direct > connection to pins". > > Thanks > > BRs, > Bo-Chen > Hello Angelo, I think "@support_direct_pin: IP supports direct connection to dpi panels" is more precise for this config. I will use this description. BRs, Bo-Chen
diff --git a/drivers/gpu/drm/mediatek/mtk_dpi.c b/drivers/gpu/drm/mediatek/mtk_dpi.c index 438bf3bc5e4a..ef7f828a4b1e 100644 --- a/drivers/gpu/drm/mediatek/mtk_dpi.c +++ b/drivers/gpu/drm/mediatek/mtk_dpi.c @@ -129,6 +129,8 @@ struct mtk_dpi_yc_limit { * @is_ck_de_pol: Support CK/DE polarity. * @swap_input_support: Support input swap function. * @color_fmt_trans_support: Enable color format transfer. + * @support_direct_pin: Dpi can directly connect pins, and enable this config + * to do this. * @dimension_mask: Mask used for HWIDTH, HPORCH, VSYNC_WIDTH and VSYNC_PORCH * (no shift). * @hvsize_mask: Mask of HSIZE and VSIZE mask (no shift). @@ -146,6 +148,7 @@ struct mtk_dpi_conf { bool is_ck_de_pol; bool swap_input_support; bool color_fmt_trans_support; + bool support_direct_pin; u32 dimension_mask; u32 hvsize_mask; u32 channel_swap_shift; @@ -619,11 +622,13 @@ static int mtk_dpi_set_display_mode(struct mtk_dpi *dpi, mtk_dpi_config_channel_limit(dpi); mtk_dpi_config_bit_num(dpi, dpi->bit_num); mtk_dpi_config_channel_swap(dpi, dpi->channel_swap); - mtk_dpi_config_yc_map(dpi, dpi->yc_map); mtk_dpi_config_color_format(dpi, dpi->color_format); - mtk_dpi_config_2n_h_fre(dpi); - mtk_dpi_dual_edge(dpi); - mtk_dpi_config_disable_edge(dpi); + if (dpi->conf->support_direct_pin) { + mtk_dpi_config_yc_map(dpi, dpi->yc_map); + mtk_dpi_config_2n_h_fre(dpi); + mtk_dpi_dual_edge(dpi); + mtk_dpi_config_disable_edge(dpi); + } mtk_dpi_sw_reset(dpi, false); return 0; @@ -881,6 +886,7 @@ static const struct mtk_dpi_conf mt8173_conf = { .num_output_fmts = ARRAY_SIZE(mt8173_output_fmts), .is_ck_de_pol = true, .swap_input_support = true, + .support_direct_pin = true, .dimension_mask = HPW_MASK, .hvsize_mask = HSIZE_MASK, .channel_swap_shift = CH_SWAP, @@ -897,6 +903,7 @@ static const struct mtk_dpi_conf mt2701_conf = { .num_output_fmts = ARRAY_SIZE(mt8173_output_fmts), .is_ck_de_pol = true, .swap_input_support = true, + .support_direct_pin = true, .dimension_mask = HPW_MASK, .hvsize_mask = HSIZE_MASK, .channel_swap_shift = CH_SWAP, @@ -912,6 +919,7 @@ static const struct mtk_dpi_conf mt8183_conf = { .num_output_fmts = ARRAY_SIZE(mt8183_output_fmts), .is_ck_de_pol = true, .swap_input_support = true, + .support_direct_pin = true, .dimension_mask = HPW_MASK, .hvsize_mask = HSIZE_MASK, .channel_swap_shift = CH_SWAP, @@ -927,6 +935,7 @@ static const struct mtk_dpi_conf mt8192_conf = { .num_output_fmts = ARRAY_SIZE(mt8183_output_fmts), .is_ck_de_pol = true, .swap_input_support = true, + .support_direct_pin = true, .dimension_mask = HPW_MASK, .hvsize_mask = HSIZE_MASK, .channel_swap_shift = CH_SWAP,
MediaTek dpi supports direct connection to pins while dp_intf does not support. Therefore, add a config "support_direct_pin" to control this. Signed-off-by: Bo-Chen Chen <rex-bc.chen@mediatek.com> --- drivers/gpu/drm/mediatek/mtk_dpi.c | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-)