mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-06-27 00:51:35 +00:00
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>
This commit is contained in:
parent
1297c05a8d
commit
430f70d59d
2 changed files with 16 additions and 11 deletions
|
@ -1134,9 +1134,10 @@ radeon_add_atom_connector(struct drm_device *dev,
|
||||||
drm_connector_attach_property(&radeon_connector->base,
|
drm_connector_attach_property(&radeon_connector->base,
|
||||||
rdev->mode_info.coherent_mode_property,
|
rdev->mode_info.coherent_mode_property,
|
||||||
1);
|
1);
|
||||||
drm_connector_attach_property(&radeon_connector->base,
|
if (ASIC_IS_AVIVO(rdev))
|
||||||
rdev->mode_info.underscan_property,
|
drm_connector_attach_property(&radeon_connector->base,
|
||||||
UNDERSCAN_AUTO);
|
rdev->mode_info.underscan_property,
|
||||||
|
UNDERSCAN_AUTO);
|
||||||
if (connector_type == DRM_MODE_CONNECTOR_DVII) {
|
if (connector_type == DRM_MODE_CONNECTOR_DVII) {
|
||||||
radeon_connector->dac_load_detect = true;
|
radeon_connector->dac_load_detect = true;
|
||||||
drm_connector_attach_property(&radeon_connector->base,
|
drm_connector_attach_property(&radeon_connector->base,
|
||||||
|
@ -1162,9 +1163,10 @@ radeon_add_atom_connector(struct drm_device *dev,
|
||||||
drm_connector_attach_property(&radeon_connector->base,
|
drm_connector_attach_property(&radeon_connector->base,
|
||||||
rdev->mode_info.coherent_mode_property,
|
rdev->mode_info.coherent_mode_property,
|
||||||
1);
|
1);
|
||||||
drm_connector_attach_property(&radeon_connector->base,
|
if (ASIC_IS_AVIVO(rdev))
|
||||||
rdev->mode_info.underscan_property,
|
drm_connector_attach_property(&radeon_connector->base,
|
||||||
UNDERSCAN_AUTO);
|
rdev->mode_info.underscan_property,
|
||||||
|
UNDERSCAN_AUTO);
|
||||||
subpixel_order = SubPixelHorizontalRGB;
|
subpixel_order = SubPixelHorizontalRGB;
|
||||||
break;
|
break;
|
||||||
case DRM_MODE_CONNECTOR_DisplayPort:
|
case DRM_MODE_CONNECTOR_DisplayPort:
|
||||||
|
@ -1196,9 +1198,10 @@ radeon_add_atom_connector(struct drm_device *dev,
|
||||||
drm_connector_attach_property(&radeon_connector->base,
|
drm_connector_attach_property(&radeon_connector->base,
|
||||||
rdev->mode_info.coherent_mode_property,
|
rdev->mode_info.coherent_mode_property,
|
||||||
1);
|
1);
|
||||||
drm_connector_attach_property(&radeon_connector->base,
|
if (ASIC_IS_AVIVO(rdev))
|
||||||
rdev->mode_info.underscan_property,
|
drm_connector_attach_property(&radeon_connector->base,
|
||||||
UNDERSCAN_AUTO);
|
rdev->mode_info.underscan_property,
|
||||||
|
UNDERSCAN_AUTO);
|
||||||
break;
|
break;
|
||||||
case DRM_MODE_CONNECTOR_SVIDEO:
|
case DRM_MODE_CONNECTOR_SVIDEO:
|
||||||
case DRM_MODE_CONNECTOR_Composite:
|
case DRM_MODE_CONNECTOR_Composite:
|
||||||
|
|
|
@ -1708,7 +1708,8 @@ radeon_add_atom_encoder(struct drm_device *dev, uint32_t encoder_id, uint32_t su
|
||||||
} else {
|
} else {
|
||||||
drm_encoder_init(dev, encoder, &radeon_atom_enc_funcs, DRM_MODE_ENCODER_TMDS);
|
drm_encoder_init(dev, encoder, &radeon_atom_enc_funcs, DRM_MODE_ENCODER_TMDS);
|
||||||
radeon_encoder->enc_priv = radeon_atombios_set_dig_info(radeon_encoder);
|
radeon_encoder->enc_priv = radeon_atombios_set_dig_info(radeon_encoder);
|
||||||
radeon_encoder->underscan_type = UNDERSCAN_AUTO;
|
if (ASIC_IS_AVIVO(rdev))
|
||||||
|
radeon_encoder->underscan_type = UNDERSCAN_AUTO;
|
||||||
}
|
}
|
||||||
drm_encoder_helper_add(encoder, &radeon_atom_dig_helper_funcs);
|
drm_encoder_helper_add(encoder, &radeon_atom_dig_helper_funcs);
|
||||||
break;
|
break;
|
||||||
|
@ -1738,7 +1739,8 @@ radeon_add_atom_encoder(struct drm_device *dev, uint32_t encoder_id, uint32_t su
|
||||||
} else {
|
} else {
|
||||||
drm_encoder_init(dev, encoder, &radeon_atom_enc_funcs, DRM_MODE_ENCODER_TMDS);
|
drm_encoder_init(dev, encoder, &radeon_atom_enc_funcs, DRM_MODE_ENCODER_TMDS);
|
||||||
radeon_encoder->enc_priv = radeon_atombios_set_dig_info(radeon_encoder);
|
radeon_encoder->enc_priv = radeon_atombios_set_dig_info(radeon_encoder);
|
||||||
radeon_encoder->underscan_type = UNDERSCAN_AUTO;
|
if (ASIC_IS_AVIVO(rdev))
|
||||||
|
radeon_encoder->underscan_type = UNDERSCAN_AUTO;
|
||||||
}
|
}
|
||||||
drm_encoder_helper_add(encoder, &radeon_atom_dig_helper_funcs);
|
drm_encoder_helper_add(encoder, &radeon_atom_dig_helper_funcs);
|
||||||
break;
|
break;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue