On Wed, Feb 07, 2018 at 02:53:19PM +0200, Jani Nikula wrote: > On Mon, 05 Feb 2018, 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 c8b18c0161d7..fb6ee3ebc37d 100644 > > --- a/drivers/gpu/drm/drm_dp_helper.c > > +++ b/drivers/gpu/drm/drm_dp_helper.c > > @@ -557,6 +557,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. > > Just a couple of notes here: Sorry, this got burried under too much email. > Recent eDP allows more rates than just the ones mentioned. So you'll > actually have a number of source and sink rates, and you'll have to > intersect them to find the common rates. We have this in i915. I'm aware of this and I have a local patch to implement this. However I currently don't have an eDP setup where I can test it, so I didn't think it right to submit the patch. > Although the spec says use the "smallest" link parameters possible, > we've found that many panels out in the wild only work at the maximum > sink parameters. Presumably the sink max rate and width correspond to > the native resolution, and not much testing happens using other > parameters. :( I suppose I could just drop this helper. Or perhaps add a note about the potential pitfalls. It works fine for my particular use-case, so I could move it into the Tegra driver. How about the other patches? It's getting really late for v4.17, but I'd like to still get these in if possible so I can reduce my local patch count and merge DP support for Tegra186. Thierry
Attachment:
signature.asc
Description: PGP signature
_______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel