mirror of
https://github.com/torvalds/linux.git
synced 2026-05-27 08:33:17 +02:00
drm/dp: add DP 2.0 UHBR link rate and bw code conversions
The bw code equals link_rate / 0.27 Gbps only for 8b/10b link rates. Handle DP 2.0 UHBR rates as special cases, though this is not pretty. Cc: dri-devel@lists.freedesktop.org Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Acked-by: Maxime Ripard <mripard@kernel.org> Signed-off-by: Jani Nikula <jani.nikula@intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/cab4edda8834d6b4db610fabb5e1f1f18ae33c2c.1631191763.git.jani.nikula@intel.com
This commit is contained in:
parent
641dd82ffa
commit
054ce0bce2
|
|
@ -207,15 +207,33 @@ EXPORT_SYMBOL(drm_dp_lttpr_link_train_channel_eq_delay);
|
|||
|
||||
u8 drm_dp_link_rate_to_bw_code(int link_rate)
|
||||
{
|
||||
/* Spec says link_bw = link_rate / 0.27Gbps */
|
||||
return link_rate / 27000;
|
||||
switch (link_rate) {
|
||||
case 1000000:
|
||||
return DP_LINK_BW_10;
|
||||
case 1350000:
|
||||
return DP_LINK_BW_13_5;
|
||||
case 2000000:
|
||||
return DP_LINK_BW_20;
|
||||
default:
|
||||
/* Spec says link_bw = link_rate / 0.27Gbps */
|
||||
return link_rate / 27000;
|
||||
}
|
||||
}
|
||||
EXPORT_SYMBOL(drm_dp_link_rate_to_bw_code);
|
||||
|
||||
int drm_dp_bw_code_to_link_rate(u8 link_bw)
|
||||
{
|
||||
/* Spec says link_rate = link_bw * 0.27Gbps */
|
||||
return link_bw * 27000;
|
||||
switch (link_bw) {
|
||||
case DP_LINK_BW_10:
|
||||
return 1000000;
|
||||
case DP_LINK_BW_13_5:
|
||||
return 1350000;
|
||||
case DP_LINK_BW_20:
|
||||
return 2000000;
|
||||
default:
|
||||
/* Spec says link_rate = link_bw * 0.27Gbps */
|
||||
return link_bw * 27000;
|
||||
}
|
||||
}
|
||||
EXPORT_SYMBOL(drm_dp_bw_code_to_link_rate);
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user