- cirrusfb_prim_fillrect(info, &modded);
-}
-
-static void cirrusfb_prim_copyarea(struct fb_info *info,
- const struct fb_copyarea *area)
-{
- struct cirrusfb_info *cinfo = info->par;
- int m; /* bytes per pixel */
-
- if (info->var.bits_per_pixel == 1) {
- cirrusfb_BitBLT(cinfo->regbase, info->var.bits_per_pixel,
- area->sx / 8, area->sy,
- area->dx / 8, area->dy,
- area->width / 8, area->height,
- cinfo->currentmode.line_length);
- } else {
- m = (info->var.bits_per_pixel + 7) / 8;
- cirrusfb_BitBLT(cinfo->regbase, info->var.bits_per_pixel,
- area->sx * m, area->sy,
- area->dx * m, area->dy,
- area->width * m, area->height,
- cinfo->currentmode.line_length);
- }
- return;
+ cirrusfb_RectFill(cinfo->regbase,
+ info->var.bits_per_pixel,
+ (region->dx * m) / 8, region->dy,
+ (region->width * m) / 8, region->height,
+ color,
+ info->fix.line_length);