On Sun, Jan 31, 2016 at 04:39:51PM +0200, Jani Nikula wrote: > On Mon, 14 Dec 2015, Thierry Reding <thierry.reding@xxxxxxxxx> wrote: > > From: Thierry Reding <treding@xxxxxxxxxx> > > > > This helper chooses an appropriate configuration, according to the > > bitrate requirements of the video mode and the capabilities of the > > DisplayPort sink. > > > > Signed-off-by: Thierry Reding <treding@xxxxxxxxxx> > > --- > > drivers/gpu/drm/drm_dp_helper.c | 55 +++++++++++++++++++++++++++++++++++++++++ > > include/drm/drm_dp_helper.h | 5 ++++ > > 2 files changed, 60 insertions(+) > > > > diff --git a/drivers/gpu/drm/drm_dp_helper.c b/drivers/gpu/drm/drm_dp_helper.c > > index da519acfeba7..95825155dc89 100644 > > --- a/drivers/gpu/drm/drm_dp_helper.c > > +++ b/drivers/gpu/drm/drm_dp_helper.c > > @@ -512,6 +512,61 @@ int drm_dp_link_configure(struct drm_dp_aux *aux, struct drm_dp_link *link) > > } > > EXPORT_SYMBOL(drm_dp_link_configure); > > > > +/** > > + * drm_dp_link_choose() - choose the lowest possible configuration for a mode > > + * @link: DRM DP link object > > + * @mode: DRM display mode > > + * @info: DRM display information > > + * > > + * According to the eDP specification, a source should select a configuration > > + * with the lowest number of lanes and the lowest possible link rate that can > > + * match the bitrate requirements of a video mode. However it must ensure not > > + * to exceed the capabilities of the sink. > > Eventually this would have to take into account the intersection of > per-sink and per-source supported rates, including the intermediate > frequencies. Until then, i915 couldn't switch over. I'm not sure I understand what you're saying. The idea is that drivers will call the drm_dp_link_probe() helper to probe the sink for supported frequencies, number of lanes and capabilities. After that, drivers are supposed to adjust the maximum values to account for their limitations. Hence the name for struct drm_dp_*link*, because it contains the negotiated parameters for the link between source and sink. That seems to me like the logical procedure when following the spec. Is that not how i915 works? Thierry
Attachment:
signature.asc
Description: PGP signature
_______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel