From: Edwin van Drunen <[email protected]>

When DISPLAY_SUPPORT is enabled this will add the option to compile the 
following kernel modules (under video suport):
- Framebuffer support
- Framebuffer console support (with fonts and virtual terminal support)
- Displaylink udlfb framebuffer driver
- Geode LX framebuffer driver (used on some Alix boards)

This has been tested on an Alix 2D13 board with a Lilliput UM-80/C/T USB 
display and on an Alix 3D3 with a VGA monitor.
In order to compile these modules some missing symbols have to be installed in 
the kernel config, which are available in the following submitted patch: 
http://patchwork.openwrt.org/patch/2784/

Signed-off-by: Edwin van Drunen <[email protected]>

---
Index: package/kernel/modules/video.mk
===================================================================
--- package/kernel/modules/video.mk     (revision 33823)
+++ package/kernel/modules/video.mk     (working copy)
@@ -14,8 +14,10 @@
   TITLE:=Framebuffer support
   DEPENDS:=@DISPLAY_SUPPORT
   KCONFIG:=CONFIG_FB
-  FILES:=$(LINUX_DIR)/drivers/video/fb.ko
-  AUTOLOAD:=$(call AutoLoad,06,fb)
+  FILES:= \
+       $(LINUX_DIR)/drivers/video/fb.ko \
+       $(LINUX_DIR)/arch/x86/video/fbdev.ko
+  AUTOLOAD:=$(call AutoLoad,06,fbdev fb)
 endef
 
 define KernelPackage/fb/description
@@ -24,6 +26,42 @@
 
 $(eval $(call KernelPackage,fb))
 
+
+define KernelPackage/fbcon
+  SUBMENU:=$(VIDEO_MENU)
+  TITLE:=Framebuffer Console support
+  DEPENDS:=+kmod-fb
+  KCONFIG:= \
+       CONFIG_FRAMEBUFFER_CONSOLE \
+       CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y \
+       CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y \
+       CONFIG_FONTS=y \
+       CONFIG_FONT_8x16=y \
+       CONFIG_FONT_8x8=y \
+       CONFIG_VT=y \
+       CONFIG_CONSOLE_TRANSLATIONS=y \
+       CONFIG_VT_CONSOLE=y \
+       CONFIG_VT_HW_CONSOLE_BINDING=y
+  FILES:= \
+       $(LINUX_DIR)/drivers/video/console/bitblit.ko \
+       $(LINUX_DIR)/drivers/video/console/font.ko \
+       $(LINUX_DIR)/drivers/video/console/softcursor.ko \
+       $(LINUX_DIR)/drivers/video/console/tileblit.ko \
+       $(LINUX_DIR)/drivers/video/console/fbcon.ko \
+       $(LINUX_DIR)/drivers/video/console/fbcon_rotate.ko \
+       $(LINUX_DIR)/drivers/video/console/fbcon_cw.ko \
+       $(LINUX_DIR)/drivers/video/console/fbcon_ud.ko \
+       $(LINUX_DIR)/drivers/video/console/fbcon_ccw.ko
+  AUTOLOAD:=$(call AutoLoad,94,font softcursor tileblit fbcon_cw fbcon_ud 
fbcon_ccw fbcon_rotate bitblit fbcon)
+endef
+
+define KernelPackage/fbcon/description
+  Kernel support for framebuffer console
+endef
+
+$(eval $(call KernelPackage,fbcon))
+
+
 define KernelPackage/fb-cfb-fillrect
   SUBMENU:=$(VIDEO_MENU)
   TITLE:=Framebuffer software rectangle filling support
@@ -71,6 +109,54 @@
 $(eval $(call KernelPackage,fb-cfb-imgblt))
 
 
+define KernelPackage/udlfb
+  SUBMENU:=$(VIDEO_MENU)
+  TITLE:=USB Displaylink support
+  DEPENDS:=@USB_SUPPORT +kmod-usb-core +kmod-fb
+  KCONFIG:= \
+       CONFIG_FIRMWARE_EDID=y \
+       CONFIG_FB_FOREIGN_ENDIAN=y \
+       CONFIG_FB_MODE_HELPERS=y \
+       CONFIG_FB_SYS_COPYAREA \
+       CONFIG_FB_SYS_FILLRECT \
+       CONFIG_FB_SYS_FOPS \
+       CONFIG_FB_SYS_IMAGEBLIT \
+       CONFIG_FB_TILEBLITTING=y \
+       CONFIG_FB_UDL
+  FILES:= \
+       $(LINUX_DIR)/drivers/video/syscopyarea.ko \
+       $(LINUX_DIR)/drivers/video/sysfillrect.ko \
+       $(LINUX_DIR)/drivers/video/sysimgblt.ko \
+       $(LINUX_DIR)/drivers/video/fb_sys_fops.ko \
+       $(LINUX_DIR)/drivers/video/udlfb.ko
+  AUTOLOAD:=$(call AutoLoad,93,syscopyarea sysfillrect sysimgblt fb_sys_fops 
udlfb)
+endef
+
+define KernelPackage/udlfb/description
+ Kernel modules for USB DisplayLink framebuffer support
+endef
+
+$(eval $(call KernelPackage,udlfb))
+
+
+define KernelPackage/lxfb
+  SUBMENU:=$(VIDEO_MENU)
+  TITLE:=Geode/LX Framebuffer
+  DEPENDS:=@TARGET_x86 +kmod-fb +kmod-fb-cfb-fillrect +kmod-fb-cfb-copyarea 
+kmod-fb-cfb-imgblt
+  KCONFIG:= \
+       CONFIG_FB_GEODE=y \
+       CONFIG_FB_GEODE_LX
+  FILES:=$(LINUX_DIR)/drivers/video/geode/lxfb.ko
+  AUTOLOAD:=$(call AutoLoad,92,lxfb)
+endef
+
+define KernelPackage/lxfb/description
+ Kernel modules for AMD Geode/LX framebuffer support
+endef
+
+$(eval $(call KernelPackage,lxfb))
+
+
 define KernelPackage/video-core
   SUBMENU:=$(VIDEO_MENU)
   TITLE=Video4Linux support
---

_______________________________________________
openwrt-devel mailing list
[email protected]
https://lists.openwrt.org/mailman/listinfo/openwrt-devel

Reply via email to