summaryrefslogtreecommitdiff
path: root/src/radeon_cursor.c
diff options
context:
space:
mode:
authorAlex Deucher <alexdeucher@gmail.com>2009-04-29 01:05:31 -0400
committerAlex Deucher <alexdeucher@gmail.com>2009-04-29 01:05:31 -0400
commit53e75cbd0ba8f39799d7b776cdc59d60aa2a6916 (patch)
treea3dfb58be6d0f15fa587f416b66b7789c370b570 /src/radeon_cursor.c
parent4e948e2aaa59267a9aa797396add2c6b7b4c1e7c (diff)
R6xx/r7xx: fix CURSOR_SWAPPING_* macros
r6xx/r7xx have different swapper regs
Diffstat (limited to 'src/radeon_cursor.c')
-rw-r--r--src/radeon_cursor.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/radeon_cursor.c b/src/radeon_cursor.c
index 1f06b17b..4b14aeca 100644
--- a/src/radeon_cursor.c
+++ b/src/radeon_cursor.c
@@ -73,14 +73,17 @@
#define CURSOR_SWAPPING_DECL_MMIO unsigned char *RADEONMMIO = info->MMIO;
#define CURSOR_SWAPPING_START() \
do { \
+ if (info->ChipFamily < CHIP_FAMILY_R600) \
OUTREG(RADEON_SURFACE_CNTL, \
(info->ModeReg->surface_cntl | \
RADEON_NONSURF_AP0_SWP_32BPP | RADEON_NONSURF_AP1_SWP_32BPP) & \
~(RADEON_NONSURF_AP0_SWP_16BPP | RADEON_NONSURF_AP1_SWP_16BPP)); \
} while (0)
-#define CURSOR_SWAPPING_END() (OUTREG(RADEON_SURFACE_CNTL, \
- info->ModeReg->surface_cntl))
-
+#define CURSOR_SWAPPING_END() \
+ do { \
+ if (info->ChipFamily < CHIP_FAMILY_R600) \
+ OUTREG(RADEON_SURFACE_CNTL, info->ModeReg->surface_cntl); \
+ } while (0)
#else
#define CURSOR_SWAPPING_DECL_MMIO