瀏覽代碼

vga16fb: restrict to blit rectangles with widths of multiples of 8 pixels

Advertise that vga16fb can only handle widths that are 8-pixel-multiple only
(software limitation). To ensure that a legal font is 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>
Antonino A. Daplas 18 年之前
父節點
當前提交
d60d2d8a42
共有 2 個文件被更改,包括 3 次插入0 次删除
  1. 1 0
      drivers/video/Kconfig
  2. 2 0
      drivers/video/vga16fb.c

+ 1 - 0
drivers/video/Kconfig

@@ -519,6 +519,7 @@ config FB_VGA16
 	select FB_CFB_COPYAREA
 	select FB_CFB_IMAGEBLIT
 	select VGASTATE
+	select FONT_8x16 if FRAMEBUFFER_CONSOLE
 	help
 	  This is the frame buffer device driver for VGA 16 color graphic
 	  cards. Say Y if you have such a card.

+ 2 - 0
drivers/video/vga16fb.c

@@ -1378,6 +1378,8 @@ static int __init vga16fb_probe(struct platform_device *dev)
 	info->fbops = &vga16fb_ops;
 	info->var = vga16fb_defined;
 	info->fix = vga16fb_fix;
+	/* supports 8-pixel wide blit rectangles only */
+	info->pixmap.blit_x = 1 << (8 - 1);
 	info->flags = FBINFO_FLAG_DEFAULT |
 		FBINFO_HWACCEL_YPAN;