diff options
author | Alex Deucher <alexander.deucher@amd.com> | 2013-05-22 11:30:34 -0400 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2013-05-29 11:35:07 -0400 |
commit | 2cf3a4fcc64e5b54a8a3cd793c6c0024b5d8da6c (patch) | |
tree | 883692fa89680031b5a9537041d8c68824fd8470 /drivers/gpu/drm | |
parent | 09fb8bd1a63b0f9f15e655c4fe8d047e5d2bf67a (diff) |
drm/radeon: don't check crtcs in card_posted() on cards without DCE
Skip checking crtcs in hardware without them. Avoids checking
non-existent hardware.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm')
-rw-r--r-- | drivers/gpu/drm/radeon/radeon_device.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/gpu/drm/radeon/radeon_device.c b/drivers/gpu/drm/radeon/radeon_device.c index 89cc8166db94..af82c9b6a28b 100644 --- a/drivers/gpu/drm/radeon/radeon_device.c +++ b/drivers/gpu/drm/radeon/radeon_device.c | |||
@@ -471,6 +471,9 @@ bool radeon_card_posted(struct radeon_device *rdev) | |||
471 | rdev->pdev->subsystem_vendor == PCI_VENDOR_ID_APPLE) | 471 | rdev->pdev->subsystem_vendor == PCI_VENDOR_ID_APPLE) |
472 | return false; | 472 | return false; |
473 | 473 | ||
474 | if (ASIC_IS_NODCE(rdev)) | ||
475 | goto check_memsize; | ||
476 | |||
474 | /* first check CRTCs */ | 477 | /* first check CRTCs */ |
475 | if (ASIC_IS_DCE4(rdev)) { | 478 | if (ASIC_IS_DCE4(rdev)) { |
476 | reg = RREG32(EVERGREEN_CRTC_CONTROL + EVERGREEN_CRTC0_REGISTER_OFFSET) | | 479 | reg = RREG32(EVERGREEN_CRTC_CONTROL + EVERGREEN_CRTC0_REGISTER_OFFSET) | |
@@ -499,6 +502,7 @@ bool radeon_card_posted(struct radeon_device *rdev) | |||
499 | } | 502 | } |
500 | } | 503 | } |
501 | 504 | ||
505 | check_memsize: | ||
502 | /* then check MEM_SIZE, in case the crtcs are off */ | 506 | /* then check MEM_SIZE, in case the crtcs are off */ |
503 | if (rdev->family >= CHIP_R600) | 507 | if (rdev->family >= CHIP_R600) |
504 | reg = RREG32(R600_CONFIG_MEMSIZE); | 508 | reg = RREG32(R600_CONFIG_MEMSIZE); |