|
From: Antonino D. <ad...@po...> - 2003-02-23 11:07:29
|
On Sun, 2003-02-23 at 15:43, Antonino Daplas wrote: > On Sun, 2003-02-23 at 12:42, Antonino Daplas wrote: > > > Here's an updated Tile Blitting patch. The feature is selectable via > > kernel configuration (under Advanced Low Level Driver Features). > > Currently, it detects the presence of info->tileops but bit setting > > info->caps should be better. > > Stupid me :-(, the patch does not work properly. Try this one instead. > The optimization logic is flawed :-( Please apply this patch also. Tony diff -Naur linux-2.5.61-fbdev/drivers/video/console/fbcon_accelops.c linux-2.5.61/drivers/video/console/fbcon_accelops.c --- linux-2.5.61-fbdev/drivers/video/console/fbcon_accelops.c 2003-02-23 18:47:53.000000000 +0800 +++ linux-2.5.61/drivers/video/console/fbcon_accelops.c 2003-02-23 18:52:23.000000000 +0800 @@ -113,13 +113,16 @@ src++; } dst[idx] &= mask; - dst[idx] |= *src++ >> shift_low; + dst[idx] |= *src >> shift_low; + if (shift_high < mod) + dst[idx+1] = *src << shift_high; + src++; dst += pitch; } shift_low += mod; + dst0 += (shift_low >= 8) ? width : width - 1; shift_low &= 7; shift_high = 8 - shift_low; - dst0 += (shift_low) ? width - 1 : width; } info->fbops->fb_imageblit(info, image); |