diff options
Diffstat (limited to 'drivers/video/console/fbcon_cw.c')
-rw-r--r-- | drivers/video/console/fbcon_cw.c | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/drivers/video/console/fbcon_cw.c b/drivers/video/console/fbcon_cw.c index 6d92b8456206..d44c5fa515fb 100644 --- a/drivers/video/console/fbcon_cw.c +++ b/drivers/video/console/fbcon_cw.c | |||
@@ -203,19 +203,18 @@ static void cw_clear_margins(struct vc_data *vc, struct fb_info *info, | |||
203 | } | 203 | } |
204 | } | 204 | } |
205 | 205 | ||
206 | static void cw_cursor(struct vc_data *vc, struct fb_info *info, | 206 | static void cw_cursor(struct vc_data *vc, struct fb_info *info, int mode, |
207 | struct display *p, int mode, int softback_lines, | 207 | int softback_lines, int fg, int bg) |
208 | int fg, int bg) | ||
209 | { | 208 | { |
210 | struct fb_cursor cursor; | 209 | struct fb_cursor cursor; |
211 | struct fbcon_ops *ops = (struct fbcon_ops *) info->fbcon_par; | 210 | struct fbcon_ops *ops = info->fbcon_par; |
212 | unsigned short charmask = vc->vc_hi_font_mask ? 0x1ff : 0xff; | 211 | unsigned short charmask = vc->vc_hi_font_mask ? 0x1ff : 0xff; |
213 | int w = (vc->vc_font.height + 7) >> 3, c; | 212 | int w = (vc->vc_font.height + 7) >> 3, c; |
214 | int y = real_y(p, vc->vc_y); | 213 | int y = real_y(ops->p, vc->vc_y); |
215 | int attribute, use_sw = (vc->vc_cursor_type & 0x10); | 214 | int attribute, use_sw = (vc->vc_cursor_type & 0x10); |
216 | int err = 1, dx, dy; | 215 | int err = 1, dx, dy; |
217 | char *src; | 216 | char *src; |
218 | u32 vxres = GETVXRES(p->scrollmode, info); | 217 | u32 vxres = GETVXRES(ops->p->scrollmode, info); |
219 | 218 | ||
220 | if (!ops->fontbuffer) | 219 | if (!ops->fontbuffer) |
221 | return; | 220 | return; |
@@ -287,7 +286,7 @@ static void cw_cursor(struct vc_data *vc, struct fb_info *info, | |||
287 | } | 286 | } |
288 | 287 | ||
289 | if (cursor.set & FB_CUR_SETSIZE || | 288 | if (cursor.set & FB_CUR_SETSIZE || |
290 | vc->vc_cursor_type != p->cursor_shape || | 289 | vc->vc_cursor_type != ops->p->cursor_shape || |
291 | ops->cursor_state.mask == NULL || | 290 | ops->cursor_state.mask == NULL || |
292 | ops->cursor_reset) { | 291 | ops->cursor_reset) { |
293 | char *tmp, *mask = kmalloc(w*vc->vc_font.width, GFP_ATOMIC); | 292 | char *tmp, *mask = kmalloc(w*vc->vc_font.width, GFP_ATOMIC); |
@@ -307,10 +306,10 @@ static void cw_cursor(struct vc_data *vc, struct fb_info *info, | |||
307 | kfree(ops->cursor_state.mask); | 306 | kfree(ops->cursor_state.mask); |
308 | ops->cursor_state.mask = mask; | 307 | ops->cursor_state.mask = mask; |
309 | 308 | ||
310 | p->cursor_shape = vc->vc_cursor_type; | 309 | ops->p->cursor_shape = vc->vc_cursor_type; |
311 | cursor.set |= FB_CUR_SETSHAPE; | 310 | cursor.set |= FB_CUR_SETSHAPE; |
312 | 311 | ||
313 | switch (p->cursor_shape & CUR_HWMASK) { | 312 | switch (ops->p->cursor_shape & CUR_HWMASK) { |
314 | case CUR_NONE: | 313 | case CUR_NONE: |
315 | cur_height = 0; | 314 | cur_height = 0; |
316 | break; | 315 | break; |