diff options
Diffstat (limited to 'drivers')
| -rw-r--r-- | drivers/gpu/drm/radeon/radeon_encoders.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/drivers/gpu/drm/radeon/radeon_encoders.c b/drivers/gpu/drm/radeon/radeon_encoders.c index 397c86f761cd..b4f23ec93201 100644 --- a/drivers/gpu/drm/radeon/radeon_encoders.c +++ b/drivers/gpu/drm/radeon/radeon_encoders.c | |||
| @@ -996,12 +996,16 @@ radeon_atom_encoder_dpms(struct drm_encoder *encoder, int mode) | |||
| 996 | if (is_dig) { | 996 | if (is_dig) { |
| 997 | switch (mode) { | 997 | switch (mode) { |
| 998 | case DRM_MODE_DPMS_ON: | 998 | case DRM_MODE_DPMS_ON: |
| 999 | atombios_dig_transmitter_setup(encoder, ATOM_TRANSMITTER_ACTION_ENABLE_OUTPUT); | 999 | atombios_dig_transmitter_setup(encoder, ATOM_TRANSMITTER_ACTION_ENABLE_OUTPUT, 0, 0); |
| 1000 | { | ||
| 1001 | struct drm_connector *connector = radeon_get_connector_for_encoder(encoder); | ||
| 1002 | dp_link_train(encoder, connector); | ||
| 1003 | } | ||
| 1000 | break; | 1004 | break; |
| 1001 | case DRM_MODE_DPMS_STANDBY: | 1005 | case DRM_MODE_DPMS_STANDBY: |
| 1002 | case DRM_MODE_DPMS_SUSPEND: | 1006 | case DRM_MODE_DPMS_SUSPEND: |
| 1003 | case DRM_MODE_DPMS_OFF: | 1007 | case DRM_MODE_DPMS_OFF: |
| 1004 | atombios_dig_transmitter_setup(encoder, ATOM_TRANSMITTER_ACTION_DISABLE_OUTPUT); | 1008 | atombios_dig_transmitter_setup(encoder, ATOM_TRANSMITTER_ACTION_DISABLE_OUTPUT, 0, 0); |
| 1005 | break; | 1009 | break; |
| 1006 | } | 1010 | } |
| 1007 | } else { | 1011 | } else { |
| @@ -1201,7 +1205,6 @@ radeon_atom_encoder_mode_set(struct drm_encoder *encoder, | |||
| 1201 | struct radeon_device *rdev = dev->dev_private; | 1205 | struct radeon_device *rdev = dev->dev_private; |
| 1202 | struct radeon_encoder *radeon_encoder = to_radeon_encoder(encoder); | 1206 | struct radeon_encoder *radeon_encoder = to_radeon_encoder(encoder); |
| 1203 | struct radeon_crtc *radeon_crtc = to_radeon_crtc(encoder->crtc); | 1207 | struct radeon_crtc *radeon_crtc = to_radeon_crtc(encoder->crtc); |
| 1204 | struct drm_connector *connector = radeon_get_connector_for_encoder(encoder); | ||
| 1205 | 1208 | ||
| 1206 | if (radeon_encoder->active_device & | 1209 | if (radeon_encoder->active_device & |
| 1207 | (ATOM_DEVICE_DFP_SUPPORT | ATOM_DEVICE_LCD_SUPPORT)) { | 1210 | (ATOM_DEVICE_DFP_SUPPORT | ATOM_DEVICE_LCD_SUPPORT)) { |
| @@ -1244,7 +1247,6 @@ radeon_atom_encoder_mode_set(struct drm_encoder *encoder, | |||
| 1244 | atombios_dig_transmitter_setup(encoder, ATOM_TRANSMITTER_ACTION_INIT, 0, 0); | 1247 | atombios_dig_transmitter_setup(encoder, ATOM_TRANSMITTER_ACTION_INIT, 0, 0); |
| 1245 | atombios_dig_transmitter_setup(encoder, ATOM_TRANSMITTER_ACTION_SETUP, 0, 0); | 1248 | atombios_dig_transmitter_setup(encoder, ATOM_TRANSMITTER_ACTION_SETUP, 0, 0); |
| 1246 | atombios_dig_transmitter_setup(encoder, ATOM_TRANSMITTER_ACTION_ENABLE, 0, 0); | 1249 | atombios_dig_transmitter_setup(encoder, ATOM_TRANSMITTER_ACTION_ENABLE, 0, 0); |
| 1247 | dp_link_train(encoder, connector); | ||
| 1248 | break; | 1250 | break; |
| 1249 | case ENCODER_OBJECT_ID_INTERNAL_DDI: | 1251 | case ENCODER_OBJECT_ID_INTERNAL_DDI: |
| 1250 | atombios_ddia_setup(encoder, ATOM_ENABLE); | 1252 | atombios_ddia_setup(encoder, ATOM_ENABLE); |
