This is the beginnings of HDMI 2.0 support. All of the "extra"
features are left out, such as 12/16bpc, YUV420, etc.
I've verified that with this code, a GP108 (GT1030) can switch between
4k@60 and 1920x1080@60 on a LG 4K TV. Further, I've verified via i2c
tools, that the SCDC writes really do happen.
I suspect that the patch for keeping track of the high-speed TMDS
setting is somehow off, esp if one were to switch between HDMI and DVI
on the same port, or DP and HDMI. I'm quite confused about OR's vs
HEAD's, and how to tell whether a register is indexed by one or the
other. But at least it works a little bit!
Note that I have limited testing equipment, but I did verify that a
GM204 trace referred to the same register for controlling
scrambling. I may get access to a GM206 later in the week to verify
there.
Ilia Mirkin (5):
drm/nouveau/disp: add a way to configure scrambling/tmds for hdmi 2.0
drm/nouveau/disp/gm200-: add scdc parameter setter
drm/nouveau/disp: keep track of high-speed state, program into clock
drm/nouveau/disp: add support for setting scdc parameters for high
modes
drm/nouveau/disp: take sink support into account for exposing 594mhz
drivers/gpu/drm/nouveau/dispnv50/disp.c | 40 +++++++++++++++++++++-
drivers/gpu/drm/nouveau/include/nvif/cl5070.h | 5 ++-
drivers/gpu/drm/nouveau/nouveau_connector.c | 34 +++++++++++-------
drivers/gpu/drm/nouveau/nvkm/engine/disp/Kbuild | 1 +
.../gpu/drm/nouveau/nvkm/engine/disp/hdmigm200.c | 36 +++++++++++++++++++
drivers/gpu/drm/nouveau/nvkm/engine/disp/ior.h | 8 +++++
.../gpu/drm/nouveau/nvkm/engine/disp/rootnv50.c | 10 ++++--
.../gpu/drm/nouveau/nvkm/engine/disp/sorgf119.c | 11 +++---
.../gpu/drm/nouveau/nvkm/engine/disp/sorgm200.c | 1 +
.../gpu/drm/nouveau/nvkm/engine/disp/sorgv100.c | 1 +
10 files changed, 127 insertions(+), 20 deletions(-)
create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/hdmigm200.c
--
2.16.4
_______________________________________________
dri-devel mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/dri-devel