12 #include <linux/module.h>
13 #include <linux/string.h>
25 int sy,
int sx,
int dy,
int dx,
31 if (sx == 0 && dx == 0 && width == next_line) {
34 fb_memmove(dest, src, height * (width >> 3));
35 }
else if (dy <= sy) {
38 for (rows = height; rows--;) {
39 fb_memmove(dest, src, width >> 3);
44 src = (
u8 *)info->
screen_base + (sy + height - 1) * next_line + (sx >> 3);
45 dest = (
u8 *)info->
screen_base + (dy + height - 1) * next_line + (dx >> 3);
46 for (rows = height; rows--;) {
47 fb_memmove(dest, src, width >> 3);
62 if (sx == 0 && width == next_line) {
64 fb_memset255(dest, height * (width >> 3));
66 fb_memclear(dest, height * (width >> 3));
68 for (rows = height; rows--; dest += next_line) {
70 fb_memset255(dest, width >> 3);
72 fb_memclear_small(dest, width >> 3);
86 for (rows = width / 8; rows--; ) {