aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/video/console/fbcon_ccw.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/video/console/fbcon_ccw.c')
-rw-r--r--drivers/video/console/fbcon_ccw.c17
1 files changed, 8 insertions, 9 deletions
diff --git a/drivers/video/console/fbcon_ccw.c b/drivers/video/console/fbcon_ccw.c
index 4952b66ae206..990289a69b78 100644
--- a/drivers/video/console/fbcon_ccw.c
+++ b/drivers/video/console/fbcon_ccw.c
@@ -219,19 +219,18 @@ static void ccw_clear_margins(struct vc_data *vc, struct fb_info *info,
219 } 219 }
220} 220}
221 221
222static void ccw_cursor(struct vc_data *vc, struct fb_info *info, 222static void ccw_cursor(struct vc_data *vc, struct fb_info *info, int mode,
223 struct display *p, int mode, int softback_lines, 223 int softback_lines, int fg, int bg)
224 int fg, int bg)
225{ 224{
226 struct fb_cursor cursor; 225 struct fb_cursor cursor;
227 struct fbcon_ops *ops = (struct fbcon_ops *) info->fbcon_par; 226 struct fbcon_ops *ops = info->fbcon_par;
228 unsigned short charmask = vc->vc_hi_font_mask ? 0x1ff : 0xff; 227 unsigned short charmask = vc->vc_hi_font_mask ? 0x1ff : 0xff;
229 int w = (vc->vc_font.height + 7) >> 3, c; 228 int w = (vc->vc_font.height + 7) >> 3, c;
230 int y = real_y(p, vc->vc_y); 229 int y = real_y(ops->p, vc->vc_y);
231 int attribute, use_sw = (vc->vc_cursor_type & 0x10); 230 int attribute, use_sw = (vc->vc_cursor_type & 0x10);
232 int err = 1, dx, dy; 231 int err = 1, dx, dy;
233 char *src; 232 char *src;
234 u32 vyres = GETVYRES(p->scrollmode, info); 233 u32 vyres = GETVYRES(ops->p->scrollmode, info);
235 234
236 if (!ops->fontbuffer) 235 if (!ops->fontbuffer)
237 return; 236 return;
@@ -303,7 +302,7 @@ static void ccw_cursor(struct vc_data *vc, struct fb_info *info,
303 } 302 }
304 303
305 if (cursor.set & FB_CUR_SETSIZE || 304 if (cursor.set & FB_CUR_SETSIZE ||
306 vc->vc_cursor_type != p->cursor_shape || 305 vc->vc_cursor_type != ops->p->cursor_shape ||
307 ops->cursor_state.mask == NULL || 306 ops->cursor_state.mask == NULL ||
308 ops->cursor_reset) { 307 ops->cursor_reset) {
309 char *tmp, *mask = kmalloc(w*vc->vc_font.width, GFP_ATOMIC); 308 char *tmp, *mask = kmalloc(w*vc->vc_font.width, GFP_ATOMIC);
@@ -323,10 +322,10 @@ static void ccw_cursor(struct vc_data *vc, struct fb_info *info,
323 kfree(ops->cursor_state.mask); 322 kfree(ops->cursor_state.mask);
324 ops->cursor_state.mask = mask; 323 ops->cursor_state.mask = mask;
325 324
326 p->cursor_shape = vc->vc_cursor_type; 325 ops->p->cursor_shape = vc->vc_cursor_type;
327 cursor.set |= FB_CUR_SETSHAPE; 326 cursor.set |= FB_CUR_SETSHAPE;
328 327
329 switch (p->cursor_shape & CUR_HWMASK) { 328 switch (ops->p->cursor_shape & CUR_HWMASK) {
330 case CUR_NONE: 329 case CUR_NONE:
331 cur_height = 0; 330 cur_height = 0;
332 break; 331 break;