xf86-video-ati: Branch 'master'
Alex Deucher
agd5f at kemper.freedesktop.org
Mon Feb 11 13:38:55 PST 2008
src/radeon_driver.c | 8 +++++++-
src/radeon_reg.h | 2 ++
2 files changed, 9 insertions(+), 1 deletion(-)
New commits:
commit 85043439426e534e561259ce98bebdd8508b36a9
Author: Alex Deucher <alex at botch2.(none)>
Date: Mon Feb 11 16:36:58 2008 -0500
R6xx: make sure we set up the HDP base properly
diff --git a/src/radeon_driver.c b/src/radeon_driver.c
index db73ca7..50343d2 100644
--- a/src/radeon_driver.c
+++ b/src/radeon_driver.c
@@ -1314,7 +1314,11 @@ static void RADEONInitMemoryMap(ScrnInfoPtr pScrn)
*/
if (IS_AVIVO_VARIANT) {
- OUTREG(AVIVO_HDP_FB_LOCATION, info->mc_fb_location);
+ if (info->ChipFamily >= CHIP_FAMILY_R600) {
+ OUTREG(R600_HDP_NONSURFACE_BASE, (info->mc_fb_location << 16) & 0xff0000);
+ } else {
+ OUTREG(AVIVO_HDP_FB_LOCATION, info->mc_fb_location);
+ }
info->mc_agp_location = 0x003f0000;
} else
info->mc_agp_location = 0xffffffc0;
@@ -3596,6 +3600,8 @@ void RADEONRestoreMemMapRegisters(ScrnInfoPtr pScrn,
if (info->ChipFamily < CHIP_FAMILY_R600) {
OUTREG(AVIVO_HDP_FB_LOCATION, restore->mc_fb_location);
+ } else {
+ OUTREG(R600_HDP_NONSURFACE_BASE, (restore->mc_fb_location << 16) & 0xff0000);
}
/* Reset the engine and HDP */
diff --git a/src/radeon_reg.h b/src/radeon_reg.h
index ec2a5ac..b68e25c 100644
--- a/src/radeon_reg.h
+++ b/src/radeon_reg.h
@@ -3801,6 +3801,8 @@
#define R600_MC_VM_SYSTEM_APERTURE_HIGH_ADDR 0x2194
#define R600_MC_VM_SYSTEM_APERTURE_DEFAULT_ADDR 0x2198
+#define R600_HDP_NONSURFACE_BASE 0x2c04
+
#define R600_BUS_CNTL 0x5420
#define R600_CONFIG_CNTL 0x5424
#define R600_CONFIG_MEMSIZE 0x5428
More information about the xorg-commit
mailing list