Lines Matching refs:vc

26 				  struct vc_data *vc)  in cw_update_attr()  argument
28 int i, j, offset = (vc->vc_font.height < 10) ? 1 : 2; in cw_update_attr()
29 int width = (vc->vc_font.height + 7) >> 3; in cw_update_attr()
32 for (i = 0; i < vc->vc_font.width; i++) { in cw_update_attr()
48 static void cw_bmove(struct vc_data *vc, struct fb_info *info, int sy, in cw_bmove() argument
55 area.sx = vxres - ((sy + height) * vc->vc_font.height); in cw_bmove()
56 area.sy = sx * vc->vc_font.width; in cw_bmove()
57 area.dx = vxres - ((dy + height) * vc->vc_font.height); in cw_bmove()
58 area.dy = dx * vc->vc_font.width; in cw_bmove()
59 area.width = height * vc->vc_font.height; in cw_bmove()
60 area.height = width * vc->vc_font.width; in cw_bmove()
65 static void cw_clear(struct vc_data *vc, struct fb_info *info, int sy, in cw_clear() argument
70 int bgshift = (vc->vc_hi_font_mask) ? 13 : 12; in cw_clear()
73 region.color = attr_bgcol_ec(bgshift,vc,info); in cw_clear()
74 region.dx = vxres - ((sy + height) * vc->vc_font.height); in cw_clear()
75 region.dy = sx * vc->vc_font.width; in cw_clear()
76 region.height = width * vc->vc_font.width; in cw_clear()
77 region.width = height * vc->vc_font.height; in cw_clear()
83 static inline void cw_putcs_aligned(struct vc_data *vc, struct fb_info *info, in cw_putcs_aligned() argument
89 u16 charmask = vc->vc_hi_font_mask ? 0x1ff : 0xff; in cw_putcs_aligned()
90 u32 idx = (vc->vc_font.height + 7) >> 3; in cw_putcs_aligned()
97 cw_update_attr(buf, src, attr, vc); in cw_putcs_aligned()
103 vc->vc_font.width); in cw_putcs_aligned()
106 vc->vc_font.width); in cw_putcs_aligned()
108 dst += d_pitch * vc->vc_font.width; in cw_putcs_aligned()
114 static void cw_putcs(struct vc_data *vc, struct fb_info *info, in cw_putcs() argument
120 u32 width = (vc->vc_font.height + 7)/8; in cw_putcs()
121 u32 cellsize = width * vc->vc_font.width; in cw_putcs()
135 image.dx = vxres - ((yy + 1) * vc->vc_font.height); in cw_putcs()
136 image.dy = xx * vc->vc_font.width; in cw_putcs()
137 image.width = vc->vc_font.height; in cw_putcs()
152 image.height = vc->vc_font.width * cnt; in cw_putcs()
159 cw_putcs_aligned(vc, info, s, attribute, cnt, pitch, in cw_putcs()
174 static void cw_clear_margins(struct vc_data *vc, struct fb_info *info, in cw_clear_margins() argument
177 unsigned int cw = vc->vc_font.width; in cw_clear_margins()
178 unsigned int ch = vc->vc_font.height; in cw_clear_margins()
179 unsigned int rw = info->var.yres - (vc->vc_cols*cw); in cw_clear_margins()
180 unsigned int bh = info->var.xres - (vc->vc_rows*ch); in cw_clear_margins()
204 static void cw_cursor(struct vc_data *vc, struct fb_info *info, int mode, in cw_cursor() argument
209 unsigned short charmask = vc->vc_hi_font_mask ? 0x1ff : 0xff; in cw_cursor()
210 int w = (vc->vc_font.height + 7) >> 3, c; in cw_cursor()
211 int y = real_y(ops->p, vc->state.y); in cw_cursor()
212 int attribute, use_sw = vc->vc_cursor_type & CUR_SW; in cw_cursor()
222 c = scr_readw((u16 *) vc->vc_pos); in cw_cursor()
224 src = ops->fontbuffer + ((c & charmask) * (w * vc->vc_font.width)); in cw_cursor()
235 dst = kmalloc_array(w, vc->vc_font.width, GFP_ATOMIC); in cw_cursor()
240 cw_update_attr(dst, src, attribute, vc); in cw_cursor()
252 if (ops->cursor_state.image.height != vc->vc_font.width || in cw_cursor()
253 ops->cursor_state.image.width != vc->vc_font.height || in cw_cursor()
255 ops->cursor_state.image.height = vc->vc_font.width; in cw_cursor()
256 ops->cursor_state.image.width = vc->vc_font.height; in cw_cursor()
260 dx = vxres - ((y * vc->vc_font.height) + vc->vc_font.height); in cw_cursor()
261 dy = vc->state.x * vc->vc_font.width; in cw_cursor()
278 vc->vc_cursor_type != ops->p->cursor_shape || in cw_cursor()
281 char *tmp, *mask = kmalloc_array(w, vc->vc_font.width, in cw_cursor()
284 int width = (vc->vc_font.width + 7)/8; in cw_cursor()
289 tmp = kmalloc_array(width, vc->vc_font.height, GFP_ATOMIC); in cw_cursor()
299 ops->p->cursor_shape = vc->vc_cursor_type; in cw_cursor()
307 cur_height = (vc->vc_font.height < 10) ? 1 : 2; in cw_cursor()
310 cur_height = vc->vc_font.height/3; in cw_cursor()
313 cur_height = vc->vc_font.height >> 1; in cw_cursor()
316 cur_height = (vc->vc_font.height << 1)/3; in cw_cursor()
320 cur_height = vc->vc_font.height; in cw_cursor()
324 size = (vc->vc_font.height - cur_height) * width; in cw_cursor()
330 memset(mask, 0, w * vc->vc_font.width); in cw_cursor()
331 rotate_cw(tmp, mask, vc->vc_font.width, vc->vc_font.height); in cw_cursor()