From: Ville Syrjälä Date: Tue, 29 Sep 2020 23:34:47 +0000 (+0300) Subject: drm/i915: Split TGL DKL PHY buf trans per output type X-Git-Tag: accepted/tizen/unified/20230118.172025~6402^2~29^2~838 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=6a41121f05501ce6af6a8f8300d27cdacd366201;p=platform%2Fkernel%2Flinux-rpi.git drm/i915: Split TGL DKL PHY buf trans per output type Make the mess inside the buf trans funcs a bit more manageable by splitting along the lines of output type. Signed-off-by: Ville Syrjälä Link: https://patchwork.freedesktop.org/patch/msgid/20200929233449.32323-10-ville.syrjala@linux.intel.com Reviewed-by: Imre Deak --- diff --git a/drivers/gpu/drm/i915/display/intel_ddi.c b/drivers/gpu/drm/i915/display/intel_ddi.c index f99575a2..4c6bd44 100644 --- a/drivers/gpu/drm/i915/display/intel_ddi.c +++ b/drivers/gpu/drm/i915/display/intel_ddi.c @@ -1218,19 +1218,34 @@ tgl_get_combo_buf_trans(struct intel_encoder *encoder, int type, int rate, } static const struct tgl_dkl_phy_ddi_buf_trans * -tgl_get_dkl_buf_trans(struct intel_encoder *encoder, int type, int rate, - int *n_entries) +tgl_get_dkl_buf_trans_hdmi(struct intel_encoder *encoder, int type, int rate, + int *n_entries) { - if (type == INTEL_OUTPUT_HDMI) { - *n_entries = ARRAY_SIZE(tgl_dkl_phy_hdmi_ddi_trans); - return tgl_dkl_phy_hdmi_ddi_trans; - } else if (rate > 270000) { + *n_entries = ARRAY_SIZE(tgl_dkl_phy_hdmi_ddi_trans); + return tgl_dkl_phy_hdmi_ddi_trans; +} + +static const struct tgl_dkl_phy_ddi_buf_trans * +tgl_get_dkl_buf_trans_dp(struct intel_encoder *encoder, int type, int rate, + int *n_entries) +{ + if (rate > 270000) { *n_entries = ARRAY_SIZE(tgl_dkl_phy_dp_ddi_trans_hbr2); return tgl_dkl_phy_dp_ddi_trans_hbr2; + } else { + *n_entries = ARRAY_SIZE(tgl_dkl_phy_dp_ddi_trans); + return tgl_dkl_phy_dp_ddi_trans; } +} - *n_entries = ARRAY_SIZE(tgl_dkl_phy_dp_ddi_trans); - return tgl_dkl_phy_dp_ddi_trans; +static const struct tgl_dkl_phy_ddi_buf_trans * +tgl_get_dkl_buf_trans(struct intel_encoder *encoder, int type, int rate, + int *n_entries) +{ + if (type == INTEL_OUTPUT_HDMI) + return tgl_get_dkl_buf_trans_hdmi(encoder, type, rate, n_entries); + else + return tgl_get_dkl_buf_trans_dp(encoder, type, rate, n_entries); } static int intel_ddi_hdmi_level(struct intel_encoder *encoder)