diff options
author | Alex Deucher <alexdeucher@gmail.com> | 2009-12-08 12:48:20 -0500 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2009-12-08 22:31:00 -0500 |
commit | 390d0bbe88b3ef00c28086076d791533407f298e (patch) | |
tree | de1ded9f070ac1ffc608c3c656bb3027429fb107 /drivers/gpu/drm/radeon/radeon_connectors.c | |
parent | ec42a6e7dcfc2e9a92fad1c132bc9e110fafeb3f (diff) |
drm/radeon/kms: connector fixes
- Don't add dac load detection property to DVI-D
- Make sure i2c info is valid before adding DP aux chan bus
- Don't create scaling_mode_property twice
- fix typo that prevented coherent and load detection from working
- add coherent prop to DP (for dp->dvi adapters)
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/radeon/radeon_connectors.c')
-rw-r--r-- | drivers/gpu/drm/radeon/radeon_connectors.c | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/drivers/gpu/drm/radeon/radeon_connectors.c b/drivers/gpu/drm/radeon/radeon_connectors.c index cfa2ebb259fe..5eece186e03c 100644 --- a/drivers/gpu/drm/radeon/radeon_connectors.c +++ b/drivers/gpu/drm/radeon/radeon_connectors.c | |||
@@ -1103,10 +1103,12 @@ radeon_add_atom_connector(struct drm_device *dev, | |||
1103 | drm_connector_attach_property(&radeon_connector->base, | 1103 | drm_connector_attach_property(&radeon_connector->base, |
1104 | rdev->mode_info.coherent_mode_property, | 1104 | rdev->mode_info.coherent_mode_property, |
1105 | 1); | 1105 | 1); |
1106 | radeon_connector->dac_load_detect = true; | 1106 | if (connector_type == DRM_MODE_CONNECTOR_DVII) { |
1107 | drm_connector_attach_property(&radeon_connector->base, | 1107 | radeon_connector->dac_load_detect = true; |
1108 | rdev->mode_info.load_detect_property, | 1108 | drm_connector_attach_property(&radeon_connector->base, |
1109 | 1); | 1109 | rdev->mode_info.load_detect_property, |
1110 | 1); | ||
1111 | } | ||
1110 | break; | 1112 | break; |
1111 | case DRM_MODE_CONNECTOR_HDMIA: | 1113 | case DRM_MODE_CONNECTOR_HDMIA: |
1112 | case DRM_MODE_CONNECTOR_HDMIB: | 1114 | case DRM_MODE_CONNECTOR_HDMIB: |
@@ -1141,14 +1143,19 @@ radeon_add_atom_connector(struct drm_device *dev, | |||
1141 | ret = drm_connector_helper_add(&radeon_connector->base, &radeon_dp_connector_helper_funcs); | 1143 | ret = drm_connector_helper_add(&radeon_connector->base, &radeon_dp_connector_helper_funcs); |
1142 | if (ret) | 1144 | if (ret) |
1143 | goto failed; | 1145 | goto failed; |
1144 | /* add DP i2c bus */ | ||
1145 | radeon_dig_connector->dp_i2c_bus = radeon_i2c_create_dp(dev, i2c_bus, "DP-auxch"); | ||
1146 | if (i2c_bus->valid) { | 1146 | if (i2c_bus->valid) { |
1147 | /* add DP i2c bus */ | ||
1148 | radeon_dig_connector->dp_i2c_bus = radeon_i2c_create_dp(dev, i2c_bus, "DP-auxch"); | ||
1149 | if (!radeon_dig_connector->dp_i2c_bus) | ||
1150 | goto failed; | ||
1147 | radeon_connector->ddc_bus = radeon_i2c_create(dev, i2c_bus, "DP"); | 1151 | radeon_connector->ddc_bus = radeon_i2c_create(dev, i2c_bus, "DP"); |
1148 | if (!radeon_connector->ddc_bus) | 1152 | if (!radeon_connector->ddc_bus) |
1149 | goto failed; | 1153 | goto failed; |
1150 | } | 1154 | } |
1151 | subpixel_order = SubPixelHorizontalRGB; | 1155 | subpixel_order = SubPixelHorizontalRGB; |
1156 | drm_connector_attach_property(&radeon_connector->base, | ||
1157 | rdev->mode_info.coherent_mode_property, | ||
1158 | 1); | ||
1152 | break; | 1159 | break; |
1153 | case DRM_MODE_CONNECTOR_SVIDEO: | 1160 | case DRM_MODE_CONNECTOR_SVIDEO: |
1154 | case DRM_MODE_CONNECTOR_Composite: | 1161 | case DRM_MODE_CONNECTOR_Composite: |
@@ -1183,7 +1190,6 @@ radeon_add_atom_connector(struct drm_device *dev, | |||
1183 | if (!radeon_connector->ddc_bus) | 1190 | if (!radeon_connector->ddc_bus) |
1184 | goto failed; | 1191 | goto failed; |
1185 | } | 1192 | } |
1186 | drm_mode_create_scaling_mode_property(dev); | ||
1187 | drm_connector_attach_property(&radeon_connector->base, | 1193 | drm_connector_attach_property(&radeon_connector->base, |
1188 | dev->mode_config.scaling_mode_property, | 1194 | dev->mode_config.scaling_mode_property, |
1189 | DRM_MODE_SCALE_FULLSCREEN); | 1195 | DRM_MODE_SCALE_FULLSCREEN); |