Lines Matching refs:area
109 static void dnfb_copyarea(struct fb_info *info, const struct fb_copyarea *area);
151 void dnfb_copyarea(struct fb_info *info, const struct fb_copyarea *area)
159 incr = (area->dy <= area->sy) ? 1 : -1;
161 src = (ushort *)(info->screen_base + area->sy * info->fix.line_length +
162 (area->sx >> 4));
163 dest = area->dy * (info->fix.line_length >> 1) + (area->dx >> 4);
166 y_delta = (info->fix.line_length * 8) - area->sx - area->width;
167 x_end = area->dx + area->width - 1;
168 x_word_count = (x_end >> 4) - (area->dx >> 4) + 1;
169 start_mask = 0xffff0000 >> (area->dx & 0xf);
172 (((area->dx & 0xf) - (area->sx & 0xf)) % 16) | (0x4 << 5));
173 if ((area->dx & 0xf) < (area->sx & 0xf))
176 y_delta = -((info->fix.line_length * 8) - area->sx - area->width);
177 x_end = area->dx - area->width + 1;
178 x_word_count = (area->dx >> 4) - (x_end >> 4) + 1;
179 start_mask = 0x7ffff >> (area->dx & 0xf);
182 ((-((area->sx & 0xf) - (area->dx & 0xf))) % 16) |
184 if ((area->dx & 0xf) > (area->sx & 0xf))
188 for (i = 0; i < area->height; i++) {