diff options
author | Alex Deucher <alexander.deucher@amd.com> | 2012-05-02 12:10:21 -0400 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2012-05-03 04:19:08 -0400 |
commit | 6a556039e7823d27a0a7f7724d4d455053ea9253 (patch) | |
tree | 7d95ac426bd04d6187c0ab33e296ee542f092cff /drivers/gpu/drm/radeon/radeon_combios.c | |
parent | b7f6413a731f2139041beede539149a5374860fe (diff) |
drm/radeon: add connector table for SAM440ep embedded board
RV250 found on ppc embedded boards.
Cc: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/radeon/radeon_combios.c')
-rw-r--r-- | drivers/gpu/drm/radeon/radeon_combios.c | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/drivers/gpu/drm/radeon/radeon_combios.c b/drivers/gpu/drm/radeon/radeon_combios.c index 2cad9fde92fc..576f4f6919f2 100644 --- a/drivers/gpu/drm/radeon/radeon_combios.c +++ b/drivers/gpu/drm/radeon/radeon_combios.c | |||
@@ -1561,6 +1561,11 @@ bool radeon_get_legacy_connector_info_from_table(struct drm_device *dev) | |||
1561 | (rdev->pdev->subsystem_device == 0x4150)) { | 1561 | (rdev->pdev->subsystem_device == 0x4150)) { |
1562 | /* Mac G5 tower 9600 */ | 1562 | /* Mac G5 tower 9600 */ |
1563 | rdev->mode_info.connector_table = CT_MAC_G5_9600; | 1563 | rdev->mode_info.connector_table = CT_MAC_G5_9600; |
1564 | } else if ((rdev->pdev->device == 0x4c66) && | ||
1565 | (rdev->pdev->subsystem_vendor == 0x1002) && | ||
1566 | (rdev->pdev->subsystem_device == 0x4c66)) { | ||
1567 | /* SAM440ep RV250 embedded board */ | ||
1568 | rdev->mode_info.connector_table = CT_SAM440EP; | ||
1564 | } else | 1569 | } else |
1565 | #endif /* CONFIG_PPC_PMAC */ | 1570 | #endif /* CONFIG_PPC_PMAC */ |
1566 | #ifdef CONFIG_PPC64 | 1571 | #ifdef CONFIG_PPC64 |
@@ -2134,6 +2139,67 @@ bool radeon_get_legacy_connector_info_from_table(struct drm_device *dev) | |||
2134 | CONNECTOR_OBJECT_ID_SVIDEO, | 2139 | CONNECTOR_OBJECT_ID_SVIDEO, |
2135 | &hpd); | 2140 | &hpd); |
2136 | break; | 2141 | break; |
2142 | case CT_SAM440EP: | ||
2143 | DRM_INFO("Connector Table: %d (SAM440ep embedded board)\n", | ||
2144 | rdev->mode_info.connector_table); | ||
2145 | /* LVDS */ | ||
2146 | ddc_i2c = combios_setup_i2c_bus(rdev, DDC_NONE_DETECTED, 0, 0); | ||
2147 | hpd.hpd = RADEON_HPD_NONE; | ||
2148 | radeon_add_legacy_encoder(dev, | ||
2149 | radeon_get_encoder_enum(dev, | ||
2150 | ATOM_DEVICE_LCD1_SUPPORT, | ||
2151 | 0), | ||
2152 | ATOM_DEVICE_LCD1_SUPPORT); | ||
2153 | radeon_add_legacy_connector(dev, 0, ATOM_DEVICE_LCD1_SUPPORT, | ||
2154 | DRM_MODE_CONNECTOR_LVDS, &ddc_i2c, | ||
2155 | CONNECTOR_OBJECT_ID_LVDS, | ||
2156 | &hpd); | ||
2157 | /* DVI-I - secondary dac, int tmds */ | ||
2158 | ddc_i2c = combios_setup_i2c_bus(rdev, DDC_DVI, 0, 0); | ||
2159 | hpd.hpd = RADEON_HPD_1; /* ??? */ | ||
2160 | radeon_add_legacy_encoder(dev, | ||
2161 | radeon_get_encoder_enum(dev, | ||
2162 | ATOM_DEVICE_DFP1_SUPPORT, | ||
2163 | 0), | ||
2164 | ATOM_DEVICE_DFP1_SUPPORT); | ||
2165 | radeon_add_legacy_encoder(dev, | ||
2166 | radeon_get_encoder_enum(dev, | ||
2167 | ATOM_DEVICE_CRT2_SUPPORT, | ||
2168 | 2), | ||
2169 | ATOM_DEVICE_CRT2_SUPPORT); | ||
2170 | radeon_add_legacy_connector(dev, 1, | ||
2171 | ATOM_DEVICE_DFP1_SUPPORT | | ||
2172 | ATOM_DEVICE_CRT2_SUPPORT, | ||
2173 | DRM_MODE_CONNECTOR_DVII, &ddc_i2c, | ||
2174 | CONNECTOR_OBJECT_ID_SINGLE_LINK_DVI_I, | ||
2175 | &hpd); | ||
2176 | /* VGA - primary dac */ | ||
2177 | ddc_i2c = combios_setup_i2c_bus(rdev, DDC_VGA, 0, 0); | ||
2178 | hpd.hpd = RADEON_HPD_NONE; | ||
2179 | radeon_add_legacy_encoder(dev, | ||
2180 | radeon_get_encoder_enum(dev, | ||
2181 | ATOM_DEVICE_CRT1_SUPPORT, | ||
2182 | 1), | ||
2183 | ATOM_DEVICE_CRT1_SUPPORT); | ||
2184 | radeon_add_legacy_connector(dev, 2, | ||
2185 | ATOM_DEVICE_CRT1_SUPPORT, | ||
2186 | DRM_MODE_CONNECTOR_VGA, &ddc_i2c, | ||
2187 | CONNECTOR_OBJECT_ID_VGA, | ||
2188 | &hpd); | ||
2189 | /* TV - TV DAC */ | ||
2190 | ddc_i2c.valid = false; | ||
2191 | hpd.hpd = RADEON_HPD_NONE; | ||
2192 | radeon_add_legacy_encoder(dev, | ||
2193 | radeon_get_encoder_enum(dev, | ||
2194 | ATOM_DEVICE_TV1_SUPPORT, | ||
2195 | 2), | ||
2196 | ATOM_DEVICE_TV1_SUPPORT); | ||
2197 | radeon_add_legacy_connector(dev, 3, ATOM_DEVICE_TV1_SUPPORT, | ||
2198 | DRM_MODE_CONNECTOR_SVIDEO, | ||
2199 | &ddc_i2c, | ||
2200 | CONNECTOR_OBJECT_ID_SVIDEO, | ||
2201 | &hpd); | ||
2202 | break; | ||
2137 | default: | 2203 | default: |
2138 | DRM_INFO("Connector table: %d (invalid)\n", | 2204 | DRM_INFO("Connector table: %d (invalid)\n", |
2139 | rdev->mode_info.connector_table); | 2205 | rdev->mode_info.connector_table); |