The current hda/i915 interface to enable/disable power wells and query the CD clock rate is based on looking up the relevant i915 module symbols from the hda driver. By using the component framework we can get rid of some global state tracking in the i915 driver and pave the way to fully decouple the two drivers: once support is added to enable/disable the HDMI functionality dynamically in the hda driver, it can bind/unbind itself from the i915 component master, without the need to keep a reference on the i915 module.
This also gets rid of the problem that currently the i915 driver exposes the interface only on HSW and BDW, while it's also needed at least on VLV/CHV.
Imre Deak (5): drm/i915: add dev_to_i915_priv helper drm/i915: add component support ALSA: hda: pass chip to all i915 interface functions ALSA: hda: add component support drm/i915: remove unused power_well/get_cdclk_freq api
drivers/gpu/drm/i915/i915_dma.c | 80 ++++++++++++++++++++ drivers/gpu/drm/i915/i915_drv.c | 15 ++-- drivers/gpu/drm/i915/intel_drv.h | 8 ++ drivers/gpu/drm/i915/intel_runtime_pm.c | 56 -------------- include/drm/i915_component.h | 38 ++++++++++ include/drm/i915_powerwell.h | 37 ---------- sound/pci/hda/hda_i915.c | 126 +++++++++++++++++++++----------- sound/pci/hda/hda_i915.h | 12 +-- sound/pci/hda/hda_intel.c | 16 ++-- sound/pci/hda/hda_priv.h | 7 ++ 10 files changed, 238 insertions(+), 157 deletions(-) create mode 100644 include/drm/i915_component.h delete mode 100644 include/drm/i915_powerwell.h