diff options
author | Antonino A. Daplas <adaplas@gmail.com> | 2007-05-08 09:39:14 +0200 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-05-08 20:15:31 +0200 |
commit | 8db51668f5ef6ae31ed4e4f0c6e2976a190dfa11 (patch) | |
tree | 172c273f795530fffdea6f5f8f2cc8d9158a54bd /drivers/video/s3fb.c | |
parent | vga16fb: restrict to blit rectangles with widths of multiples of 8 pixels (diff) | |
download | linux-8db51668f5ef6ae31ed4e4f0c6e2976a190dfa11.tar.xz linux-8db51668f5ef6ae31ed4e4f0c6e2976a190dfa11.zip |
s3fb: limit 8x16 rectangles when tileblitting is enabled
If tileblitting is enabled (text mode), the hardware can only accept 8x16
bitmaps. Advertise this to the upper layer. And to ensure that an appropriate
font is always available, select an 8x16 font in Kconfig.
Signed-off-by: Antonino Daplas <adaplas@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/video/s3fb.c')
-rw-r--r-- | drivers/video/s3fb.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/video/s3fb.c b/drivers/video/s3fb.c index f3470bb7d549..53f1eb9638ae 100644 --- a/drivers/video/s3fb.c +++ b/drivers/video/s3fb.c @@ -449,6 +449,9 @@ static int s3fb_set_par(struct fb_info *info) info->flags &= ~FBINFO_MISC_TILEBLITTING; info->tileops = NULL; + /* supports blit rectangles of any dimension */ + info->pixmap.blit_x = ~(u32)0; + info->pixmap.blit_y = ~(u32)0; offset_value = (info->var.xres_virtual * bpp) / 64; screen_size = info->var.yres_virtual * info->fix.line_length; } else { @@ -457,6 +460,9 @@ static int s3fb_set_par(struct fb_info *info) info->flags |= FBINFO_MISC_TILEBLITTING; info->tileops = fasttext ? &s3fb_fast_tile_ops : &s3fb_tile_ops; + /* supports 8x16 tiles only */ + info->pixmap.blit_x = 1 << (8 - 1); + info->pixmap.blit_y = 1 << (16 - 1); offset_value = info->var.xres_virtual / 16; screen_size = (info->var.xres_virtual * info->var.yres_virtual) / 64; |