drm/radeon/kms: fix num crtcs for Cedar and Caicos
Only support 4 rather than 6. Signed-off-by: Alex Deucher <alexdeucher@gmail.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
This commit is contained in:
parent
826c7e4147
commit
ba7e05e958
|
@ -938,6 +938,13 @@ static struct radeon_asic cayman_asic = {
|
|||
int radeon_asic_init(struct radeon_device *rdev)
|
||||
{
|
||||
radeon_register_accessor_init(rdev);
|
||||
|
||||
/* set the number of crtcs */
|
||||
if (rdev->flags & RADEON_SINGLE_CRTC)
|
||||
rdev->num_crtc = 1;
|
||||
else
|
||||
rdev->num_crtc = 2;
|
||||
|
||||
switch (rdev->family) {
|
||||
case CHIP_R100:
|
||||
case CHIP_RV100:
|
||||
|
@ -1017,6 +1024,11 @@ int radeon_asic_init(struct radeon_device *rdev)
|
|||
case CHIP_JUNIPER:
|
||||
case CHIP_CYPRESS:
|
||||
case CHIP_HEMLOCK:
|
||||
/* set num crtcs */
|
||||
if (rdev->family == CHIP_CEDAR)
|
||||
rdev->num_crtc = 4;
|
||||
else
|
||||
rdev->num_crtc = 6;
|
||||
rdev->asic = &evergreen_asic;
|
||||
break;
|
||||
case CHIP_PALM:
|
||||
|
@ -1027,10 +1039,17 @@ int radeon_asic_init(struct radeon_device *rdev)
|
|||
case CHIP_BARTS:
|
||||
case CHIP_TURKS:
|
||||
case CHIP_CAICOS:
|
||||
/* set num crtcs */
|
||||
if (rdev->family == CHIP_CAICOS)
|
||||
rdev->num_crtc = 4;
|
||||
else
|
||||
rdev->num_crtc = 6;
|
||||
rdev->asic = &btc_asic;
|
||||
break;
|
||||
case CHIP_CAYMAN:
|
||||
rdev->asic = &cayman_asic;
|
||||
/* set num crtcs */
|
||||
rdev->num_crtc = 6;
|
||||
break;
|
||||
default:
|
||||
/* FIXME: not supported yet */
|
||||
|
@ -1042,18 +1061,6 @@ int radeon_asic_init(struct radeon_device *rdev)
|
|||
rdev->asic->set_memory_clock = NULL;
|
||||
}
|
||||
|
||||
/* set the number of crtcs */
|
||||
if (rdev->flags & RADEON_SINGLE_CRTC)
|
||||
rdev->num_crtc = 1;
|
||||
else {
|
||||
if (ASIC_IS_DCE41(rdev))
|
||||
rdev->num_crtc = 2;
|
||||
else if (ASIC_IS_DCE4(rdev))
|
||||
rdev->num_crtc = 6;
|
||||
else
|
||||
rdev->num_crtc = 2;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue