aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorAlex Deucher <alexdeucher@gmail.com>2010-08-04 03:45:04 -0400
committerDave Airlie <airlied@redhat.com>2010-08-04 18:47:40 -0400
commit430f70d59da643f1aa7c9cf3493423a76550b110 (patch)
treeeff6f47919891b97aa7b806f2c30d3f7e45b42a9 /drivers
parent1297c05a8dfb568c689f057d51a65eebe5ddc86f (diff)
drm/radeon/kms: only expose underscan on avivo chips
R4xx also uses the atom add connector function, but underscan is only supported on avivo chips. Signed-off-by: Alex Deucher <alexdeucher@gmail.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/gpu/drm/radeon/radeon_connectors.c21
-rw-r--r--drivers/gpu/drm/radeon/radeon_encoders.c6
2 files changed, 16 insertions, 11 deletions
diff --git a/drivers/gpu/drm/radeon/radeon_connectors.c b/drivers/gpu/drm/radeon/radeon_connectors.c
index 609eda6bcb7..2395c8600cf 100644
--- a/drivers/gpu/drm/radeon/radeon_connectors.c
+++ b/drivers/gpu/drm/radeon/radeon_connectors.c
@@ -1134,9 +1134,10 @@ radeon_add_atom_connector(struct drm_device *dev,
1134 drm_connector_attach_property(&radeon_connector->base, 1134 drm_connector_attach_property(&radeon_connector->base,
1135 rdev->mode_info.coherent_mode_property, 1135 rdev->mode_info.coherent_mode_property,
1136 1); 1136 1);
1137 drm_connector_attach_property(&radeon_connector->base, 1137 if (ASIC_IS_AVIVO(rdev))
1138 rdev->mode_info.underscan_property, 1138 drm_connector_attach_property(&radeon_connector->base,
1139 UNDERSCAN_AUTO); 1139 rdev->mode_info.underscan_property,
1140 UNDERSCAN_AUTO);
1140 if (connector_type == DRM_MODE_CONNECTOR_DVII) { 1141 if (connector_type == DRM_MODE_CONNECTOR_DVII) {
1141 radeon_connector->dac_load_detect = true; 1142 radeon_connector->dac_load_detect = true;
1142 drm_connector_attach_property(&radeon_connector->base, 1143 drm_connector_attach_property(&radeon_connector->base,
@@ -1162,9 +1163,10 @@ radeon_add_atom_connector(struct drm_device *dev,
1162 drm_connector_attach_property(&radeon_connector->base, 1163 drm_connector_attach_property(&radeon_connector->base,
1163 rdev->mode_info.coherent_mode_property, 1164 rdev->mode_info.coherent_mode_property,
1164 1); 1165 1);
1165 drm_connector_attach_property(&radeon_connector->base, 1166 if (ASIC_IS_AVIVO(rdev))
1166 rdev->mode_info.underscan_property, 1167 drm_connector_attach_property(&radeon_connector->base,
1167 UNDERSCAN_AUTO); 1168 rdev->mode_info.underscan_property,
1169 UNDERSCAN_AUTO);
1168 subpixel_order = SubPixelHorizontalRGB; 1170 subpixel_order = SubPixelHorizontalRGB;
1169 break; 1171 break;
1170 case DRM_MODE_CONNECTOR_DisplayPort: 1172 case DRM_MODE_CONNECTOR_DisplayPort:
@@ -1196,9 +1198,10 @@ radeon_add_atom_connector(struct drm_device *dev,
1196 drm_connector_attach_property(&radeon_connector->base, 1198 drm_connector_attach_property(&radeon_connector->base,
1197 rdev->mode_info.coherent_mode_property, 1199 rdev->mode_info.coherent_mode_property,
1198 1); 1200 1);
1199 drm_connector_attach_property(&radeon_connector->base, 1201 if (ASIC_IS_AVIVO(rdev))
1200 rdev->mode_info.underscan_property, 1202 drm_connector_attach_property(&radeon_connector->base,
1201 UNDERSCAN_AUTO); 1203 rdev->mode_info.underscan_property,
1204 UNDERSCAN_AUTO);
1202 break; 1205 break;
1203 case DRM_MODE_CONNECTOR_SVIDEO: 1206 case DRM_MODE_CONNECTOR_SVIDEO:
1204 case DRM_MODE_CONNECTOR_Composite: 1207 case DRM_MODE_CONNECTOR_Composite:
diff --git a/drivers/gpu/drm/radeon/radeon_encoders.c b/drivers/gpu/drm/radeon/radeon_encoders.c
index 4a4ff983cef..263c8098d7d 100644
--- a/drivers/gpu/drm/radeon/radeon_encoders.c
+++ b/drivers/gpu/drm/radeon/radeon_encoders.c
@@ -1708,7 +1708,8 @@ radeon_add_atom_encoder(struct drm_device *dev, uint32_t encoder_id, uint32_t su
1708 } else { 1708 } else {
1709 drm_encoder_init(dev, encoder, &radeon_atom_enc_funcs, DRM_MODE_ENCODER_TMDS); 1709 drm_encoder_init(dev, encoder, &radeon_atom_enc_funcs, DRM_MODE_ENCODER_TMDS);
1710 radeon_encoder->enc_priv = radeon_atombios_set_dig_info(radeon_encoder); 1710 radeon_encoder->enc_priv = radeon_atombios_set_dig_info(radeon_encoder);
1711 radeon_encoder->underscan_type = UNDERSCAN_AUTO; 1711 if (ASIC_IS_AVIVO(rdev))
1712 radeon_encoder->underscan_type = UNDERSCAN_AUTO;
1712 } 1713 }
1713 drm_encoder_helper_add(encoder, &radeon_atom_dig_helper_funcs); 1714 drm_encoder_helper_add(encoder, &radeon_atom_dig_helper_funcs);
1714 break; 1715 break;
@@ -1738,7 +1739,8 @@ radeon_add_atom_encoder(struct drm_device *dev, uint32_t encoder_id, uint32_t su
1738 } else { 1739 } else {
1739 drm_encoder_init(dev, encoder, &radeon_atom_enc_funcs, DRM_MODE_ENCODER_TMDS); 1740 drm_encoder_init(dev, encoder, &radeon_atom_enc_funcs, DRM_MODE_ENCODER_TMDS);
1740 radeon_encoder->enc_priv = radeon_atombios_set_dig_info(radeon_encoder); 1741 radeon_encoder->enc_priv = radeon_atombios_set_dig_info(radeon_encoder);
1741 radeon_encoder->underscan_type = UNDERSCAN_AUTO; 1742 if (ASIC_IS_AVIVO(rdev))
1743 radeon_encoder->underscan_type = UNDERSCAN_AUTO;
1742 } 1744 }
1743 drm_encoder_helper_add(encoder, &radeon_atom_dig_helper_funcs); 1745 drm_encoder_helper_add(encoder, &radeon_atom_dig_helper_funcs);
1744 break; 1746 break;