aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/video/intelfb/intelfbdrv.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/video/intelfb/intelfbdrv.c')
-rw-r--r--drivers/video/intelfb/intelfbdrv.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/drivers/video/intelfb/intelfbdrv.c b/drivers/video/intelfb/intelfbdrv.c
index b96001b5d947..f659ca8d1652 100644
--- a/drivers/video/intelfb/intelfbdrv.c
+++ b/drivers/video/intelfb/intelfbdrv.c
@@ -1467,7 +1467,7 @@ static int
1467intelfb_cursor(struct fb_info *info, struct fb_cursor *cursor) 1467intelfb_cursor(struct fb_info *info, struct fb_cursor *cursor)
1468{ 1468{
1469 struct intelfb_info *dinfo = GET_DINFO(info); 1469 struct intelfb_info *dinfo = GET_DINFO(info);
1470 int ret; 1470 u32 physical;
1471#if VERBOSE > 0 1471#if VERBOSE > 0
1472 DBG_MSG("intelfb_cursor\n"); 1472 DBG_MSG("intelfb_cursor\n");
1473#endif 1473#endif
@@ -1478,12 +1478,10 @@ intelfb_cursor(struct fb_info *info, struct fb_cursor *cursor)
1478 intelfbhw_cursor_hide(dinfo); 1478 intelfbhw_cursor_hide(dinfo);
1479 1479
1480 /* If XFree killed the cursor - restore it */ 1480 /* If XFree killed the cursor - restore it */
1481 if (dinfo->mobile || IS_I9xx(dinfo)) 1481 physical = (dinfo->mobile || IS_I9xx(dinfo)) ? dinfo->cursor.physical :
1482 ret = (INREG(CURSOR_A_BASEADDR) != dinfo->cursor.physical); 1482 (dinfo->cursor.offset << 12);
1483 else
1484 ret = (INREG(CURSOR_A_BASEADDR) != dinfo->cursor.offset << 12);
1485 1483
1486 if (ret) { 1484 if (INREG(CURSOR_A_BASEADDR) != physical) {
1487 u32 fg, bg; 1485 u32 fg, bg;
1488 1486
1489 DBG_MSG("the cursor was killed - restore it !!\n"); 1487 DBG_MSG("the cursor was killed - restore it !!\n");