[Intel-gfx] [PATCH 0/4 V7] Power-well API implementation for Haswell

Wang xingchao xingchao.wang at linux.intel.com
Thu Jul 4 10:23:15 CEST 2013


On Wed, Jul 03, 2013 at 05:00:51PM -0300, Paulo Zanoni wrote:
> 2013/6/6 Daniel Vetter <daniel at ffwll.ch>:
> > On Thu, May 30, 2013 at 10:07:07PM +0800, Wang Xingchao wrote:
> >> Hi all,
> >>
> >>    This is V7 and here're some changes notes:
> >>    change from V6-->V7:
> >>    - rename variable
> >>    - use HAS_POWER_WELL instead of IS_HASWELL
> >>    - put structure inside drm_i915_private
> >>    - use WARN_ON for global pointer check
> >>
> >>    change from V5-->V6:
> >>    - Remove duplication code in new introduced probe work
> >>    - move duplication code in azx_probe_continue
> >>    - remove unused #ifdef
> >>    - replace request_module with symbol_request
> >>    - replace spin_lock_irq with spin_lock_irqsave in gfx side
> >>    - other typo fixes
> >>    (review by Takashi)
> >>
> >>    change from V4-->V5:
> >>    - fix reference count bug
> >>    - new patch on general runtime pm support for audio pci device
> >>    - new patch to avoid request_module() deadlock
> >>
> >>    change between V3-->V4:
> >>    - add new structure i915_power_well
> >>    - initialize drm_device pointer at module init time
> >>    - change function name
> >>
> >>    change between V2-->V3:
> >>    - make SND_HDA_I915 selectable
> >>    - use snd_printdd to output message
> >>    - add return error code check
> >>    - use symbol_request to replace symbol_get
> >>    - release power_well at azx_free
> >>    - some typo fixes
> >>
> >>    changes between V1-->V2:
> >>    - use reference count to track power-well usage
> >>    - remove external module, compiled into snd-hda-intel instead
> >>    - manage symbols and module loading properly
> >>    - remove IS_HSW macro, use flag instead
> >>    - remove audio callback for gfx driver to avoid dependency
> >>    - split whole patch into two pieces for easy review
> >>    - more typo fixes
> >>
> >>
> >> Takashi Iwai (1):
> >>   ALSA: hda - Move azx_first_init() into azx_probe_continue()
> >>
> >> Wang Xingchao (3):
> >>   ALSA: hda - Fix runtime PM check
> >>   ALSA: hda - Add power-welll support for haswell HDA
> >>   i915/drm: Add private api for power well usage
> >
> > After discussion with Dave and Takashi I've merged the entire series to
> > drm-intel-next. I'll show up in the next linux-next and I'll forward it to
> > Dave for mergin into drm-next in roughly 2 weeks.
> 
> So today I unblacklisted the audio modules on one of my Haswell
> machines and booted it with i915.disable_power_well=1. I only have an
> eDP output (it doesn't have audio) and I see the power well is
> enabled. This is wrong, the power well should be disabled since we

right, if no application using audio it should be in runtime suspend mode.
And maybe your system didnot enable runtime suspend by default, would you
tell me the output below?
cat /sys/devices/pci0000:00/0000:00:03.0/power/control

thanks
--xingchao
> only have an eDP panel, and we don't support audio on eDP. I checked
> on dmesg and the audio driver requests the power well but never
> releases it.
> 
> So I decided to do the same test on another Haswell machine, and on
> that specific machine the audio driver gets the power well and then
> releases it at azx_runtime_suspend. This machine is also eDP-only
> 
> I was expecting that on both cases the audio driver would release the
> power well as soon as it sees there's no connected output capable of
> HD audio.
> 
> How can I help debugging this?
> 
> Thanks,
> Paulo
> 
> >
> > Thanks, Daniel
> >
> >>
> >>  drivers/gpu/drm/i915/i915_dma.c  |    6 +++
> >>  drivers/gpu/drm/i915/i915_drv.h  |   12 ++++++
> >>  drivers/gpu/drm/i915/intel_drv.h |    4 ++
> >>  drivers/gpu/drm/i915/intel_pm.c  |   81 ++++++++++++++++++++++++++++++++---
> >>  include/drm/i915_powerwell.h     |   36 ++++++++++++++++
> >>  sound/pci/hda/Kconfig            |   10 +++++
> >>  sound/pci/hda/Makefile           |    2 +
> >>  sound/pci/hda/hda_i915.c         |   75 ++++++++++++++++++++++++++++++++
> >>  sound/pci/hda/hda_i915.h         |   35 +++++++++++++++
> >>  sound/pci/hda/hda_intel.c        |   87 ++++++++++++++++++++++++++++++--------
> >>  10 files changed, 324 insertions(+), 24 deletions(-)
> >>  create mode 100644 include/drm/i915_powerwell.h
> >>  create mode 100644 sound/pci/hda/hda_i915.c
> >>  create mode 100644 sound/pci/hda/hda_i915.h
> >>
> >> --
> >> 1.7.9.5
> >>
> >
> > --
> > Daniel Vetter
> > Software Engineer, Intel Corporation
> > +41 (0) 79 365 57 48 - http://blog.ffwll.ch
> > _______________________________________________
> > Intel-gfx mailing list
> > Intel-gfx at lists.freedesktop.org
> > http://lists.freedesktop.org/mailman/listinfo/intel-gfx
> 
> 
> 
> -- 
> Paulo Zanoni



More information about the Intel-gfx mailing list