[PATCH v3 0/3] Send a hotplug when edid changes
Lisovskiy, Stanislav
stanislav.lisovskiy at intel.com
Mon Aug 19 09:05:38 UTC 2019
On Mon, 2019-08-19 at 08:35 +0100, Peres, Martin wrote:
> On 19/08/2019 10:23, Lisovskiy, Stanislav wrote:
> > On Wed, 2019-08-07 at 23:07 +0200, Daniel Vetter wrote:
> > >
> > >
> > > So igt isn't valid userspace (it's just good testcases). Can we
> > > repro
> > > the
> > > same on real userspace? Does this work with real userspace? We've
> > > had
> > > userspace which tries to be clever and filters out what looks
> > > like
> > > redundant hotplug events. And then gets it wrong in cases like
> > > this.
> > >
> > > Also, we've had forever an unconditional uevent on resume,
> > > exactly
> > > because
> > > anything could have changed. Did we loose this one on the way
> > > somewhere?
> > > Or maybe I misremember ...
> > >
> > > If all we care about is resume re-adding that uncondtional uevent
> > > on
> > > resume is going to be a lot easier than this here.
> > > -Daniel
> >
> > Sorry for long reply(was on vacation), that is a good question
> > regarding reproducing this in real life scenario. My obvious guess
> > was to suspend the machine and meanwhile change connected display
> > to
> > another one. However this situation seems to be already handled by
> > kernel nicely(tried few times and we always get a hotplug event).
> > So
> > that edid change during suspend chamelium test case seems to be
> > a bit different. I will talk to our guys who wrote this about what
> > is
> > the real life scenario for this, because I'm now curious as well.
>
> Thanks Daniel for the feedback.
>
> I also now wonder why our IGT test (chamelium-based) does not pass if
> a
> uevent is sent on resume automatically and all the test is expecting
> is
> a uevent...
>
> Martin
In fact I was wrong - when it worked, it was using exactly those
patches :). With clean drm-tip - it seems to work ocassionally and it
doesn't update the actual display edid and other stuff, so even when
displays are changed we still see the old info/edid from userspace.
We always get a hpd irq when suspend/resume however it doesn't always
result in uevent being sent. So there is a real need in those patches.
>
> >
> > - Stanislav
> >
> > >
> > >
> > > >
> > > > -Stanislav
> > > >
> > > > >
> > > > > Cheers, Daniel
> > > > >
> > > > > >
> > > > > >
> > > > > > -Stanislav
> > > > > >
> > > > > >
> > > > > > > -Daniel
> > > > > > >
> > > > > > > >
> > > > > > > > Stanislav Lisovskiy (3):
> > > > > > > > drm: Add helper to compare edids.
> > > > > > > > drm: Introduce change counter to drm_connector
> > > > > > > > drm/i915: Send hotplug event if edid had changed.
> > > > > > > >
> > > > > > > > drivers/gpu/drm/drm_connector.c | 1 +
> > > > > > > > drivers/gpu/drm/drm_edid.c | 33
> > > > > > > > ++++++++++++++++++++
> > > > > > > > drivers/gpu/drm/drm_probe_helper.c | 29
> > > > > > > > +++++++++++++++-
> > > > > > > > -
> > > > > > > > drivers/gpu/drm/i915/display/intel_dp.c | 16
> > > > > > > > +++++++++-
> > > > > > > > drivers/gpu/drm/i915/display/intel_hdmi.c | 16
> > > > > > > > ++++++++--
> > > > > > > > drivers/gpu/drm/i915/display/intel_hotplug.c | 21
> > > > > > > > ++++++++++
> > > > > > > > ---
> > > > > > > > include/drm/drm_connector.h | 3 ++
> > > > > > > > include/drm/drm_edid.h | 9
> > > > > > > > ++++++
> > > > > > > > 8 files changed, 117 insertions(+), 11 deletions(-)
> > > > > > > >
> > > > > > > > --
> > > > > > > > 2.17.1
> > > > > > > >
> > > > > > >
> > > > > > >
> > > > >
> > > > >
> > > > >
> > >
> > >
>
>
More information about the dri-devel
mailing list