[PATCH 00/41] [RFC] Haswell v2

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

 



This is an updated set of patches for Haswell enablement. I tried to address
all the comments, and re-diffed the patches to simplify their inclusion into
Daniel's tree.

I have also split the PCI IDs definitions and their hook-up into the binding
tables as well. But I think we should wait on picking up those 2 patches for
now - the PCI ID allocation logic here will still receive some additional
changes I think.

Functionality-wise, those patches do detect digital outputs now, namely HDMI,
but said outputs do not (yet) work. The digital output detection process is
also different from what we had previously - we can detect the presence of a
connection on a port via DDI port feedback, but we cannot say if it is HDMI or
DP. So I am not quite certain on how to address this properly in the driver
yet. For now, I just blindly assume that it is HDMI as I don't have any DP
monitors or connectors to test :). But for all means, please consider that
support for digital outputs in this series is still unfinished and will change
considerable in the future. Nonetheless, any feedback on how to implement it
properly is much welcome.

Note that with the DDI buffers, the same port can drive DP and HDMI without any
buffer configuration changes; and we can drive FDI and HDMI likewise. So I've
split the DDI buffers settings into a separate patch to pre-configure the ports
to their suggested connection settings at the init time, which should work for
any combinations of outputs.

As for other changes, there are some comments improvements, some register name
changes, a new enum for DDI ports, some changes in SBI handchake handling, a
couple of new clocks we need for digital outputs and a bit of changes in the
DDI pipe settings handling code.

So Daniel, as we talked on irc, could you check which of those patches could be
early picked into your tree? This would reduce future patchbombs from my side -
I'd expect to have at least a half-dozen new patches until we'll have working
digital outputs in place..


Eugeni Dodonov (41):
  drm/i915: transform HAS_PCH_SPLIT in a feature check
  drm/i915: add Haswell devices and their PCI IDs
  drm/i915: hook Haswell devices in place
  drm/i915: add support for LynxPoint PCH
  drm/i915: add support for power wells
  drm/i915: add enumeration for DDI ports
  drm/i915: add DDI registers
  drm/i915: add DP_TP_CTL registers
  drm/i915: add DP_TP_STATUS registers
  drm/i915: add definitions for DDI_BUF_CTL registers
  drm/i915: add definition of DDI buffer translations regs
  drm/i915: add definition of LPT FDI port width registers
  drm/i915: add SBI registers
  drm/i915: add support for SBI ops
  drm/i915: add PIXCLK_GATE register
  drm/i915: add S PLL control
  drm/i915: add port clock selection support for HSW
  drm/i915: add SSC offsets for SBI access
  drm/i915: add LCPLL control registers
  drm/i915: add WRPLL clocks
  drm/i915: add WM_LINETIME registers
  drm/i915: add SFUSE_STRAP registers for digital port detection
  drm/i915: calculate same watermarks on Haswell as on Ivy Bridge
  drm/i915: share forcewaking code between IVB and HSW
  drm/i915: haswell has 3 pipes as well
  drm/i915: reuse Ivybridge interrupts code for Haswell
  drm/i915: share pipe count handling with Ivybridge
  drm/i915: share IVB cursor routine with Haswell
  drm/i915: show unknown sdvox registers on hdmi init
  drm/i915: enable power wells on haswell init
  drm/i915: disable rc6 on haswell for now
  drm/i915: program WM_LINETIME on Haswell
  drm/i915: initialize DDI buffer translations
  drm/i915: perform Haswell DDI link training in FDI mode
  drm/i915: disable pipe DDI function when disabling pipe
  drm/i915: do not use fdi_normal_train on haswell
  drm/i915: program iCLKIP on Lynx Point
  drm/i915: detect digital outputs on Haswell
  drm/i915: add support for DDI-controlled digital outputs
  drm/i915: prepare HDMI link for Haswell
  drm/i915: add debugging bits for haswell modesetting

 drivers/char/agp/intel-agp.c         |    4 +
 drivers/char/agp/intel-agp.h         |   11 +
 drivers/char/agp/intel-gtt.c         |   14 +
 drivers/gpu/drm/i915/i915_dma.c      |    2 +-
 drivers/gpu/drm/i915/i915_drv.c      |   37 ++
 drivers/gpu/drm/i915/i915_drv.h      |   17 +-
 drivers/gpu/drm/i915/i915_irq.c      |    6 +-
 drivers/gpu/drm/i915/i915_reg.h      |  194 +++++++++
 drivers/gpu/drm/i915/intel_display.c |  733 ++++++++++++++++++++++++++++++++--
 drivers/gpu/drm/i915/intel_drv.h     |    1 +
 drivers/gpu/drm/i915/intel_hdmi.c    |   84 +++-
 11 files changed, 1064 insertions(+), 39 deletions(-)

-- 
1.7.9.5



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