Commit 808032ee authored by Rafał Miłecki's avatar Rafał Miłecki Committed by Dave Airlie

drm/radeon/kms: clean HDMI definitions

We already know same offsets are used for different encoders/transmitters, so
just numeric them instead naming incorrectly. Additionaly we found additional
registers needed for RV770+
Signed-off-by: default avatarRafał Miłecki <zajec5@gmail.com>
Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
parent d805f50a
...@@ -470,27 +470,27 @@ void r600_hdmi_init(struct drm_encoder *encoder) ...@@ -470,27 +470,27 @@ void r600_hdmi_init(struct drm_encoder *encoder)
case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_TMDS1: case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_TMDS1:
case ENCODER_OBJECT_ID_INTERNAL_UNIPHY: case ENCODER_OBJECT_ID_INTERNAL_UNIPHY:
case ENCODER_OBJECT_ID_INTERNAL_UNIPHY1: case ENCODER_OBJECT_ID_INTERNAL_UNIPHY1:
radeon_encoder->hdmi_offset = R600_HDMI_TMDS1; radeon_encoder->hdmi_offset = R600_HDMI_BLOCK1;
break; break;
case ENCODER_OBJECT_ID_INTERNAL_LVTM1: case ENCODER_OBJECT_ID_INTERNAL_LVTM1:
switch (r600_audio_tmds_index(encoder)) { switch (r600_audio_tmds_index(encoder)) {
case 0: case 0:
radeon_encoder->hdmi_offset = R600_HDMI_TMDS1; radeon_encoder->hdmi_offset = R600_HDMI_BLOCK1;
break; break;
case 1: case 1:
radeon_encoder->hdmi_offset = R600_HDMI_TMDS2; radeon_encoder->hdmi_offset = R600_HDMI_BLOCK2;
break; break;
default: default:
radeon_encoder->hdmi_offset = 0; radeon_encoder->hdmi_offset = 0;
break; break;
} }
case ENCODER_OBJECT_ID_INTERNAL_UNIPHY2: case ENCODER_OBJECT_ID_INTERNAL_UNIPHY2:
radeon_encoder->hdmi_offset = R600_HDMI_TMDS2; radeon_encoder->hdmi_offset = R600_HDMI_BLOCK2;
break; break;
case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_LVTMA: case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_LVTMA:
radeon_encoder->hdmi_offset = R600_HDMI_DIG; radeon_encoder->hdmi_offset = R600_HDMI_BLOCK3;
break; break;
default: default:
......
...@@ -152,9 +152,9 @@ ...@@ -152,9 +152,9 @@
#define R600_AUDIO_STATUS_BITS 0x73d8 #define R600_AUDIO_STATUS_BITS 0x73d8
/* HDMI base register addresses */ /* HDMI base register addresses */
#define R600_HDMI_TMDS1 0x7400 #define R600_HDMI_BLOCK1 0x7400
#define R600_HDMI_TMDS2 0x7700 #define R600_HDMI_BLOCK2 0x7700
#define R600_HDMI_DIG 0x7800 #define R600_HDMI_BLOCK3 0x7800
/* HDMI registers */ /* HDMI registers */
#define R600_HDMI_ENABLE 0x00 #define R600_HDMI_ENABLE 0x00
...@@ -185,4 +185,8 @@ ...@@ -185,4 +185,8 @@
#define R600_HDMI_AUDIO_DEBUG_2 0xe8 #define R600_HDMI_AUDIO_DEBUG_2 0xe8
#define R600_HDMI_AUDIO_DEBUG_3 0xec #define R600_HDMI_AUDIO_DEBUG_3 0xec
/* HDMI additional config base register addresses */
#define R600_HDMI_CONFIG1 0x7600
#define R600_HDMI_CONFIG2 0x7a00
#endif #endif
...@@ -345,6 +345,7 @@ struct radeon_encoder { ...@@ -345,6 +345,7 @@ struct radeon_encoder {
struct drm_display_mode native_mode; struct drm_display_mode native_mode;
void *enc_priv; void *enc_priv;
int hdmi_offset; int hdmi_offset;
int hdmi_config_offset;
int hdmi_audio_workaround; int hdmi_audio_workaround;
int hdmi_buffer_status; int hdmi_buffer_status;
}; };
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment