summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/nouveau/core/engine/disp/nve0.c
diff options
context:
space:
mode:
authorBen Skeggs <bskeggs@redhat.com>2013-02-19 04:17:53 (GMT)
committerBen Skeggs <bskeggs@redhat.com>2013-02-20 06:01:02 (GMT)
commit0a0afd282fd715dd63d64b243299a64da14f8e8d (patch)
tree2ab42981dd69f24fba45b72ec842b64288b76661 /drivers/gpu/drm/nouveau/core/engine/disp/nve0.c
parent5cc027f6b1ec651c18a4322ed3e30c6e9cf01e96 (diff)
downloadlinux-fsl-qoriq-0a0afd282fd715dd63d64b243299a64da14f8e8d.tar.xz
drm/nv50-/disp: move DP link training to core and train from supervisor
We need to be able to do link training for PIOR-connected ANX9805 from the third supervisor handler (due to script ordering in the bios, can't have the "user" call train because some settings are overwritten from the modesetting bios scripts). This moves link training for SOR-connected DP encoders to the second supervisor interrupt, *before* we call the modesetting scripts (yes, different ordering from PIOR is necessary). This is useful since we should now be able to remove some hacks to workaround races between the supervisor and link training paths. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/nouveau/core/engine/disp/nve0.c')
-rw-r--r--drivers/gpu/drm/nouveau/core/engine/disp/nve0.c6
1 files changed, 1 insertions, 5 deletions
diff --git a/drivers/gpu/drm/nouveau/core/engine/disp/nve0.c b/drivers/gpu/drm/nouveau/core/engine/disp/nve0.c
index 65c19ca..20725b3 100644
--- a/drivers/gpu/drm/nouveau/core/engine/disp/nve0.c
+++ b/drivers/gpu/drm/nouveau/core/engine/disp/nve0.c
@@ -73,11 +73,7 @@ nve0_disp_ctor(struct nouveau_object *parent, struct nouveau_object *engine,
priv->sor.power = nv50_sor_power;
priv->sor.hda_eld = nvd0_hda_eld;
priv->sor.hdmi = nvd0_hdmi_ctrl;
- priv->sor.dp_train = nvd0_sor_dp_train;
- priv->sor.dp_train_init = nv94_sor_dp_train_init;
- priv->sor.dp_train_fini = nv94_sor_dp_train_fini;
- priv->sor.dp_lnkctl = nvd0_sor_dp_lnkctl;
- priv->sor.dp_drvctl = nvd0_sor_dp_drvctl;
+ priv->sor.dp = &nvd0_sor_dp_func;
return 0;
}