aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorAlex Deucher <alexdeucher@gmail.com>2011-05-20 12:36:11 -0400
committerDave Airlie <airlied@gmail.com>2011-05-22 06:20:41 -0400
commit2307790f0c8dea7d8052805a8209fbd67e815e72 (patch)
treed0038955a1b8c54f2820cbd372e7a72a1246a74c /drivers
parent6f15c506e0cec601fad9fabb7ded0d1811b8002f (diff)
drm/radeon/kms: the SS_Id field in the LCD table if for LVDS only
For DP/eDP, always use the standard DP SS indices. Signed-off-by: Alex Deucher <alexdeucher@gmail.com> Signed-off-by: Dave Airlie <airlied@gmail.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/gpu/drm/radeon/atombios_crtc.c42
1 files changed, 12 insertions, 30 deletions
diff --git a/drivers/gpu/drm/radeon/atombios_crtc.c b/drivers/gpu/drm/radeon/atombios_crtc.c
index f5819ba481d9..48f5ff023bca 100644
--- a/drivers/gpu/drm/radeon/atombios_crtc.c
+++ b/drivers/gpu/drm/radeon/atombios_crtc.c
@@ -942,42 +942,24 @@ static void atombios_crtc_set_pll(struct drm_crtc *crtc, struct drm_display_mode
942 case ATOM_ENCODER_MODE_DP: 942 case ATOM_ENCODER_MODE_DP:
943 /* DP/eDP */ 943 /* DP/eDP */
944 dp_clock = dig_connector->dp_clock / 10; 944 dp_clock = dig_connector->dp_clock / 10;
945 if (radeon_encoder->active_device & (ATOM_DEVICE_LCD_SUPPORT)) { 945 if (ASIC_IS_DCE4(rdev))
946 if (ASIC_IS_DCE4(rdev)) { 946 ss_enabled =
947 /* first try ASIC_INTERNAL_SS_ON_DP */ 947 radeon_atombios_get_asic_ss_info(rdev, &ss,
948 ASIC_INTERNAL_SS_ON_DP,
949 dp_clock);
950 else {
951 if (dp_clock == 16200) {
948 ss_enabled = 952 ss_enabled =
949 radeon_atombios_get_asic_ss_info(rdev, &ss, 953 radeon_atombios_get_ppll_ss_info(rdev, &ss,
950 ASIC_INTERNAL_SS_ON_DP, 954 ATOM_DP_SS_ID2);
951 dp_clock);
952 if (!ss_enabled) 955 if (!ss_enabled)
953 ss_enabled = 956 ss_enabled =
954 radeon_atombios_get_asic_ss_info(rdev, &ss, 957 radeon_atombios_get_ppll_ss_info(rdev, &ss,
955 dig->lcd_ss_id, 958 ATOM_DP_SS_ID1);
956 dp_clock);
957 } else 959 } else
958 ss_enabled = 960 ss_enabled =
959 radeon_atombios_get_ppll_ss_info(rdev, &ss, 961 radeon_atombios_get_ppll_ss_info(rdev, &ss,
960 dig->lcd_ss_id); 962 ATOM_DP_SS_ID1);
961 } else {
962 if (ASIC_IS_DCE4(rdev))
963 ss_enabled =
964 radeon_atombios_get_asic_ss_info(rdev, &ss,
965 ASIC_INTERNAL_SS_ON_DP,
966 dp_clock);
967 else {
968 if (dp_clock == 16200) {
969 ss_enabled =
970 radeon_atombios_get_ppll_ss_info(rdev, &ss,
971 ATOM_DP_SS_ID2);
972 if (!ss_enabled)
973 ss_enabled =
974 radeon_atombios_get_ppll_ss_info(rdev, &ss,
975 ATOM_DP_SS_ID1);
976 } else
977 ss_enabled =
978 radeon_atombios_get_ppll_ss_info(rdev, &ss,
979 ATOM_DP_SS_ID1);
980 }
981 } 963 }
982 break; 964 break;
983 case ATOM_ENCODER_MODE_LVDS: 965 case ATOM_ENCODER_MODE_LVDS: