[PATCH v3 00/10] drm/nouveau Enable HDMI Stereoscopy

Alastair Bridgewater alastair.bridgewater at gmail.com
Tue Apr 11 17:11:15 UTC 2017


HDMI 3D mode support, round three.  Rebased to drm-next as it was on
Sunday morning.  Overall structure is the same as v2.

Substantially rewrote the first patch (nv50_head_atomic_check_mode())
since a recent change to the calculation of m->v.blankus caused a
merge conflict and problems with frame-packed and interlaced 3D modes,
and I found a much saner model for how the timing parameters work
while I was sorting that out.  Observable behavior changes from this
patch should be limited to better values for m->v.blankus on
interlaced non-doublescan modes and non-interlaced doublescan modes,
and some sort of effect on any mode with mode->vscan set (I don't know
if this case actually happens, but if it did then I would expect it to
have had some sort of problem in the previous implementation anyway).
Of the entire series, this first patch is more cleanup-and-bugfix than
anything else, and may be a candidate for merging early even if the
rest of the series is deferred until the next merge window.

Typo-busted the ninth patch (frame-packing geometry and timing) and
adjusted for the rename of drm_crtc_get_hv_timing() to
drm_mode_get_hv_timing().

Possibly some minor whitespace changes in one or two patches, plus
reformatted some of the patch comments.

Tested on my gt215 hardware only at this time, since I'm away from the
rest of my test hardware for about another week.  That said, all of
the changes are in the generic nv50 code, rather than being specific
to some chipset or family.

Thanks to Roy Spliet for assistance (mostly background information) in
working out what was going on with m->v.blankus.

Alastair Bridgewater (10):
  drm/nouveau: Clean up nv50_head_atomic_check_mode() and fix blankus
    calculation
  drm/nouveau: Extend NVKM HDMI power control method to set InfoFrames
  drm/nouveau: Pass mode-dependent AVI and Vendor HDMI InfoFrames to
    NVKM
  drm/nouveau: Add mechanism to convert HDMI InfoFrames to hardware
    format
  drm/nouveau: Use supplied HDMI InfoFrames on G84 hardware
  drm/nouveau: Use supplied HDMI InfoFrames on GT215 hardware
  drm/nouveau: Use supplied HDMI InfoFrames on GF119 hardware
  drm/nouveau: Use supplied HDMI InfoFrames on GK104 hardware
  drm/nouveau: Handle frame-packing mode geometry and timing effects
  drm/nouveau: Enable stereoscopic 3D output over HDMI

 drivers/gpu/drm/nouveau/include/nvif/cl5070.h      |  4 +-
 drivers/gpu/drm/nouveau/nouveau_connector.c        | 10 +++
 drivers/gpu/drm/nouveau/nv50_display.c             | 93 +++++++++++++++-------
 drivers/gpu/drm/nouveau/nvkm/engine/disp/Kbuild    |  1 +
 .../drm/nouveau/nvkm/engine/disp/hdmi_infoframe.c  | 66 +++++++++++++++
 drivers/gpu/drm/nouveau/nvkm/engine/disp/hdmig84.c | 46 +++++++++--
 .../gpu/drm/nouveau/nvkm/engine/disp/hdmigf119.c   | 49 ++++++++++--
 .../gpu/drm/nouveau/nvkm/engine/disp/hdmigk104.c   | 45 +++++++++--
 .../gpu/drm/nouveau/nvkm/engine/disp/hdmigt215.c   | 46 +++++++++--
 drivers/gpu/drm/nouveau/nvkm/engine/disp/nv50.h    | 11 +++
 10 files changed, 314 insertions(+), 57 deletions(-)
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/hdmi_infoframe.c

-- 
2.10.2



More information about the dri-devel mailing list