Lines Matching defs:cursor
26 * (proper acceleration, 24 bpp, hardware cursor) and bug fixes by Attila
1041 static int tdfxfb_cursor(struct fb_info *info, struct fb_cursor *cursor)
1049 /* Too large of a cursor or wrong bpp :-( */
1050 if (cursor->image.width > 64 ||
1051 cursor->image.height > 64 ||
1052 cursor->image.depth > 1)
1056 if (cursor->enable)
1062 * If the cursor is not be changed this means either we want the
1063 * current cursor state (if enable is set) or we want to query what
1064 * we can do with the cursor (if enable is not set)
1066 if (!cursor->set)
1069 /* fix cursor color - XFree86 forgets to restore it properly */
1070 if (cursor->set & FB_CUR_SETCMAP) {
1072 u32 bg_idx = cursor->image.bg_color;
1073 u32 fg_idx = cursor->image.fg_color;
1087 if (cursor->set & FB_CUR_SETPOS) {
1088 int x = cursor->image.dx;
1089 int y = cursor->image.dy - info->var.yoffset;
1096 if (cursor->set & (FB_CUR_SETIMAGE | FB_CUR_SETSHAPE)) {
1098 * Voodoo 3 and above cards use 2 monochrome cursor patterns.
1102 * cursor for each screen refresh.
1108 * the cursor image the graphics card uses then from the
1111 * etc etc. The linear stride for the cursor is always 16 bytes
1112 * (128 bits) which is the maximum cursor width times two for
1116 u8 *bitmap = (u8 *)cursor->image.data;
1117 u8 *mask = (u8 *)cursor->mask;
1122 for (i = 0; i < cursor->image.height; i++) {
1124 int j = (cursor->image.width + 7) >> 3;
1128 if (cursor->rop == ROP_COPY)
1130 /* Pattern 0. Copy the cursor mask to it */
1133 /* Pattern 1. Copy the cursor bitmap to it */
1475 /* reserve 8192 bits for cursor */
1651 MODULE_PARM_DESC(hwcursor, "Enable hardware cursor "