Re: [PATCH 2/2] drm/i915: Use HOTPLUG_INT_STATUS_G4X on VLV/CHV

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, May 12, 2015 at 11:54:23AM +0300, Jani Nikula wrote:
> On Mon, 11 May 2015, ville.syrjala@xxxxxxxxxxxxxxx wrote:
> > From: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>
> >
> > Use HOTPLUG_INT_STATUS_G4X instead of HOTPLUG_INT_STATUS_I915 on VLV/CHV
> > so that we don't confuse the AUX status bits with SDVO status bits.
> >
> > Avoid pointless log spam as below while handling AUX interrupts:
> > [drm:intel_hpd_irq_handler] hotplug event received, stat 0x00000040, dig 0x00000000
> > [drm:intel_hpd_irq_handler] hotplug event received, stat 0x00000040, dig 0x00000000
> > [drm:intel_hpd_irq_handler] hotplug event received, stat 0x00000040, dig 0x00000000
> > [drm:intel_hpd_irq_handler] hotplug event received, stat 0x00000040, dig 0x00000000
> > [drm:intel_hpd_irq_handler] hotplug event received, stat 0x00000040, dig 0x00000000
> > [drm:intel_dp_aux_ch] dp_aux_ch timeout status 0x71450064
> >
> > Signed-off-by: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>
> 
> Reviewed-by: Jani Nikula <jani.nikula@xxxxxxxxx>
> 
> Shouldn't we also have bugs about missing hotplug on BYT...? Like,
> there's a lot of talk about power management on
> 
> https://bugs.freedesktop.org/show_bug.cgi?id=89008
> 
> but could this make a difference?

Both HOTPLUG_INT_STATUS_G4X and HOTPLUG_INT_STATUS_I915 have the
required bits to have working hpd on VLV/CHV. Only the SDVO bits
differ, and we don't care about those. So the only issue is that
the i915 SDVO bits overlap with the AUX bits, so every time we
get an AUX interrupt we also think we get an SDVO hpd.

> 
> BR,
> Jani.
> 
> 
> > ---
> >  drivers/gpu/drm/i915/i915_irq.c | 4 ++--
> >  1 file changed, 2 insertions(+), 2 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
> > index 9c5371b..557af88 100644
> > --- a/drivers/gpu/drm/i915/i915_irq.c
> > +++ b/drivers/gpu/drm/i915/i915_irq.c
> > @@ -79,7 +79,7 @@ static const u32 hpd_status_g4x[HPD_NUM_PINS] = {
> >  	[HPD_PORT_D] = PORTD_HOTPLUG_INT_STATUS
> >  };
> >  
> > -static const u32 hpd_status_i915[HPD_NUM_PINS] = { /* i915 and valleyview are the same */
> > +static const u32 hpd_status_i915[HPD_NUM_PINS] = {
> >  	[HPD_CRT] = CRT_HOTPLUG_INT_STATUS,
> >  	[HPD_SDVO_B] = SDVOB_HOTPLUG_INT_STATUS_I915,
> >  	[HPD_SDVO_C] = SDVOC_HOTPLUG_INT_STATUS_I915,
> > @@ -1743,7 +1743,7 @@ static void i9xx_hpd_irq_handler(struct drm_device *dev)
> >  		 */
> >  		POSTING_READ(PORT_HOTPLUG_STAT);
> >  
> > -		if (IS_G4X(dev)) {
> > +		if (IS_G4X(dev) || IS_VALLEYVIEW(dev)) {
> >  			u32 hotplug_trigger = hotplug_status & HOTPLUG_INT_STATUS_G4X;
> >  
> >  			intel_hpd_irq_handler(dev, hotplug_trigger, 0, hpd_status_g4x);
> > -- 
> > 2.0.5
> >
> > _______________________________________________
> > Intel-gfx mailing list
> > Intel-gfx@xxxxxxxxxxxxxxxxxxxxx
> > http://lists.freedesktop.org/mailman/listinfo/intel-gfx
> 
> -- 
> Jani Nikula, Intel Open Source Technology Center

-- 
Ville Syrjälä
Intel OTC
_______________________________________________
Intel-gfx mailing list
Intel-gfx@xxxxxxxxxxxxxxxxxxxxx
http://lists.freedesktop.org/mailman/listinfo/intel-gfx





[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]
  Powered by Linux