summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMaciej Cencora <m.cencora@gmail.com>2008-01-28 19:02:56 -0500
committerAlex Deucher <alex@cube.(none)>2008-01-28 19:02:56 -0500
commitce77ed78a877023da72dbe51609aef9a07e250b1 (patch)
treec766e0e2cac23f9fa082104f298447b3e27d74e2 /src
parentb7de4ff52cfbdd85ee65000613632e21b92af24e (diff)
RS690: Implement MC idle check
Diffstat (limited to 'src')
-rw-r--r--src/radeon_driver.c5
-rw-r--r--src/radeon_reg.h2
2 files changed, 7 insertions, 0 deletions
diff --git a/src/radeon_driver.c b/src/radeon_driver.c
index 23ab7928..047f014b 100644
--- a/src/radeon_driver.c
+++ b/src/radeon_driver.c
@@ -649,6 +649,11 @@ Bool avivo_get_mc_idle(ScrnInfoPtr pScrn)
return TRUE;
else
return FALSE;
+ } else if (info->ChipFamily == CHIP_FAMILY_RS690) {
+ if (INMC(pScrn, RS690_MC_STATUS) & RS690_MC_STATUS_IDLE)
+ return TRUE;
+ else
+ return FALSE;
} else {
if (INMC(pScrn, R520_MC_STATUS) & R520_MC_STATUS_IDLE)
return TRUE;
diff --git a/src/radeon_reg.h b/src/radeon_reg.h
index ea1cebfe..4d20bf88 100644
--- a/src/radeon_reg.h
+++ b/src/radeon_reg.h
@@ -3281,6 +3281,8 @@
#define RS690_MC_FB_LOCATION 0x100
#define RS690_MC_AGP_LOCATION 0x101
#define RS690_MC_AGP_BASE 0x102
+#define RS690_MC_STATUS 0x90
+#define RS690_MC_STATUS_IDLE (1 << 0)
#define AVIVO_MC_INDEX 0x0070
#define R520_MC_STATUS 0x00