drm/nv30: Apply modesetting to the correct slave encoder
Signed-off-by: Patrice Mandin <patmandin@gmail.com> Reviewed-by: Francisco Jerez <currojerez@riseup.net> Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
This commit is contained in:
Родитель
acae116ce1
Коммит
f5cb8ab154
|
@ -444,6 +444,7 @@ static void nv04_dfp_commit(struct drm_encoder *encoder)
|
||||||
struct nouveau_encoder *nv_encoder = nouveau_encoder(encoder);
|
struct nouveau_encoder *nv_encoder = nouveau_encoder(encoder);
|
||||||
struct dcb_entry *dcbe = nv_encoder->dcb;
|
struct dcb_entry *dcbe = nv_encoder->dcb;
|
||||||
int head = nouveau_crtc(encoder->crtc)->index;
|
int head = nouveau_crtc(encoder->crtc)->index;
|
||||||
|
struct drm_encoder *slave_encoder;
|
||||||
|
|
||||||
if (dcbe->type == OUTPUT_TMDS)
|
if (dcbe->type == OUTPUT_TMDS)
|
||||||
run_tmds_table(dev, dcbe, head, nv_encoder->mode.clock);
|
run_tmds_table(dev, dcbe, head, nv_encoder->mode.clock);
|
||||||
|
@ -462,9 +463,10 @@ static void nv04_dfp_commit(struct drm_encoder *encoder)
|
||||||
NVWriteRAMDAC(dev, 0, NV_PRAMDAC_TEST_CONTROL + nv04_dac_output_offset(encoder), 0x00100000);
|
NVWriteRAMDAC(dev, 0, NV_PRAMDAC_TEST_CONTROL + nv04_dac_output_offset(encoder), 0x00100000);
|
||||||
|
|
||||||
/* Init external transmitters */
|
/* Init external transmitters */
|
||||||
if (get_tmds_slave(encoder))
|
slave_encoder = get_tmds_slave(encoder);
|
||||||
get_slave_funcs(get_tmds_slave(encoder))->mode_set(
|
if (slave_encoder)
|
||||||
encoder, &nv_encoder->mode, &nv_encoder->mode);
|
get_slave_funcs(slave_encoder)->mode_set(
|
||||||
|
slave_encoder, &nv_encoder->mode, &nv_encoder->mode);
|
||||||
|
|
||||||
helper->dpms(encoder, DRM_MODE_DPMS_ON);
|
helper->dpms(encoder, DRM_MODE_DPMS_ON);
|
||||||
|
|
||||||
|
|
Загрузка…
Ссылка в новой задаче