s3fb.c (2e21dee6a46a66e4c2ced778485e1044101edee4) | s3fb.c (152609795dbf02f004c86049b75c23f4e68071d8) |
---|---|
1/* 2 * linux/drivers/video/s3fb.c -- Frame buffer device driver for S3 Trio/Virge 3 * 4 * Copyright (c) 2006-2007 Ondrej Zajicek <santiago@crfreenet.org> 5 * 6 * This file is subject to the terms and conditions of the GNU General Public 7 * License. See the file COPYING in the main directory of this archive for 8 * more details. --- 603 unchanged lines hidden (view full) --- 612 if (bpp != 0) { 613 info->fix.ypanstep = 1; 614 info->fix.line_length = (info->var.xres_virtual * bpp) / 8; 615 616 info->flags &= ~FBINFO_MISC_TILEBLITTING; 617 info->tileops = NULL; 618 619 /* in 4bpp supports 8p wide tiles only, any tiles otherwise */ | 1/* 2 * linux/drivers/video/s3fb.c -- Frame buffer device driver for S3 Trio/Virge 3 * 4 * Copyright (c) 2006-2007 Ondrej Zajicek <santiago@crfreenet.org> 5 * 6 * This file is subject to the terms and conditions of the GNU General Public 7 * License. See the file COPYING in the main directory of this archive for 8 * more details. --- 603 unchanged lines hidden (view full) --- 612 if (bpp != 0) { 613 info->fix.ypanstep = 1; 614 info->fix.line_length = (info->var.xres_virtual * bpp) / 8; 615 616 info->flags &= ~FBINFO_MISC_TILEBLITTING; 617 info->tileops = NULL; 618 619 /* in 4bpp supports 8p wide tiles only, any tiles otherwise */ |
620 info->pixmap.blit_x = (bpp == 4) ? (1 << (8 - 1)) : (~(u32)0); 621 info->pixmap.blit_y = ~(u32)0; | 620 if (bpp == 4) { 621 bitmap_zero(info->pixmap.blit_x, FB_MAX_BLIT_WIDTH); 622 set_bit(8 - 1, info->pixmap.blit_x); 623 } else { 624 bitmap_fill(info->pixmap.blit_x, FB_MAX_BLIT_WIDTH); 625 } 626 bitmap_fill(info->pixmap.blit_y, FB_MAX_BLIT_HEIGHT); |
622 623 offset_value = (info->var.xres_virtual * bpp) / 64; 624 screen_size = info->var.yres_virtual * info->fix.line_length; 625 } else { 626 info->fix.ypanstep = 16; 627 info->fix.line_length = 0; 628 629 info->flags |= FBINFO_MISC_TILEBLITTING; 630 info->tileops = fasttext ? &s3fb_fast_tile_ops : &s3fb_tile_ops; 631 632 /* supports 8x16 tiles only */ | 627 628 offset_value = (info->var.xres_virtual * bpp) / 64; 629 screen_size = info->var.yres_virtual * info->fix.line_length; 630 } else { 631 info->fix.ypanstep = 16; 632 info->fix.line_length = 0; 633 634 info->flags |= FBINFO_MISC_TILEBLITTING; 635 info->tileops = fasttext ? &s3fb_fast_tile_ops : &s3fb_tile_ops; 636 637 /* supports 8x16 tiles only */ |
633 info->pixmap.blit_x = 1 << (8 - 1); 634 info->pixmap.blit_y = 1 << (16 - 1); | 638 bitmap_zero(info->pixmap.blit_x, FB_MAX_BLIT_WIDTH); 639 set_bit(8 - 1, info->pixmap.blit_x); 640 bitmap_zero(info->pixmap.blit_y, FB_MAX_BLIT_HEIGHT); 641 set_bit(16 - 1, info->pixmap.blit_y); |
635 636 offset_value = info->var.xres_virtual / 16; 637 screen_size = (info->var.xres_virtual * info->var.yres_virtual) / 64; 638 } 639 640 info->var.xoffset = 0; 641 info->var.yoffset = 0; 642 info->var.activate = FB_ACTIVATE_NOW; --- 940 unchanged lines hidden --- | 642 643 offset_value = info->var.xres_virtual / 16; 644 screen_size = (info->var.xres_virtual * info->var.yres_virtual) / 64; 645 } 646 647 info->var.xoffset = 0; 648 info->var.yoffset = 0; 649 info->var.activate = FB_ACTIVATE_NOW; --- 940 unchanged lines hidden --- |