V4L2_DIR=v4l2-core
V4L2_USB_DIR=usb
+#
+# Video Display
+#
+
+define KernelPackage/backlight
+ SUBMENU:=$(VIDEO_MENU)
+ TITLE:=Backlight support
+ DEPENDS:=@DISPLAY_SUPPORT
+ HIDDEN:=1
+ KCONFIG:=CONFIG_BACKLIGHT_CLASS_DEVICE \
+ CONFIG_BACKLIGHT_LCD_SUPPORT=y \
+ CONFIG_LCD_CLASS_DEVICE=n \
+ CONFIG_BACKLIGHT_GENERIC=n \
+ CONFIG_BACKLIGHT_ADP8860=n \
+ CONFIG_BACKLIGHT_ADP8870=n \
+ CONFIG_BACKLIGHT_OT200=n \
+ CONFIG_BACKLIGHT_PM8941_WLED=n
+ FILES:=$(LINUX_DIR)/drivers/video/backlight/backlight.ko
+ AUTOLOAD:=$(call AutoProbe,video backlight)
+endef
+
+define KernelPackage/backlight/description
+ Kernel module for Backlight support.
+endef
+
+$(eval $(call KernelPackage,backlight))
+
+define KernelPackage/backlight-pwm
+ SUBMENU:=$(VIDEO_MENU)
+ TITLE:=PWM Backlight support
+ DEPENDS:=+kmod-backlight
+ KCONFIG:=CONFIG_BACKLIGHT_PWM
+ FILES:=$(LINUX_DIR)/drivers/video/backlight/pwm_bl.ko
+ AUTOLOAD:=$(call AutoProbe,video pwm_bl)
+endef
+
+define KernelPackage/backlight-pwm/description
+ Kernel module for PWM based Backlight support.
+endef
+
+$(eval $(call KernelPackage,backlight-pwm))
+
+
define KernelPackage/fb
SUBMENU:=$(VIDEO_MENU)
- TITLE:=Framebuffer support
+ TITLE:=Framebuffer and framebuffer console support
DEPENDS:=@DISPLAY_SUPPORT
- KCONFIG:=CONFIG_FB
- FILES:=$(LINUX_DIR)/drivers/video/fbdev/core/fb.ko
- AUTOLOAD:=$(call AutoLoad,06,fb)
+ KCONFIG:= \
+ CONFIG_FB \
+ CONFIG_FB_MXS=n \
+ CONFIG_FB_SM750=n \
+ CONFIG_FRAMEBUFFER_CONSOLE=y \
+ CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y \
+ CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y \
+ CONFIG_FONTS=y \
+ CONFIG_FONT_8x8=y \
+ CONFIG_FONT_8x16=y \
+ CONFIG_FONT_6x11=n \
+ CONFIG_FONT_7x14=n \
+ CONFIG_FONT_PEARL_8x8=n \
+ CONFIG_FONT_ACORN_8x8=n \
+ CONFIG_FONT_MINI_4x6=n \
+ CONFIG_FONT_6x10=n \
+ CONFIG_FONT_SUN8x16=n \
+ CONFIG_FONT_SUN12x22=n \
+ CONFIG_FONT_10x18=n \
+ CONFIG_VT=y \
+ CONFIG_CONSOLE_TRANSLATIONS=y \
+ CONFIG_VT_CONSOLE=y \
+ CONFIG_VT_HW_CONSOLE_BINDING=y
+ FILES:=$(LINUX_DIR)/drivers/video/fbdev/core/fb.ko \
+ $(LINUX_DIR)/lib/fonts/font.ko
+ AUTOLOAD:=$(call AutoLoad,06,fb font)
endef
define KernelPackage/fb/description
- Kernel support for framebuffers
+ Kernel support for framebuffers and framebuffer console.
endef
define KernelPackage/fb/x86
FILES+=$(LINUX_DIR)/arch/x86/video/fbdev.ko
- AUTOLOAD:=$(call AutoLoad,06,fbdev fb)
+ AUTOLOAD:=$(call AutoLoad,06,fbdev fb font)
endef
$(eval $(call KernelPackage,fb))
+
define KernelPackage/fb-cfb-fillrect
SUBMENU:=$(VIDEO_MENU)
TITLE:=Framebuffer software rectangle filling support
$(eval $(call KernelPackage,fb-cfb-imgblt))
+define KernelPackage/fb-sys-fops
+ SUBMENU:=$(VIDEO_MENU)
+ TITLE:=Framebuffer software sys ops support
+ DEPENDS:=+kmod-fb
+ KCONFIG:=CONFIG_FB_SYS_FOPS
+ FILES:=$(LINUX_DIR)/drivers/video/fbdev/core/fb_sys_fops.ko
+ AUTOLOAD:=$(call AutoLoad,07,fbsysfops)
+endef
+
+define KernelPackage/fb-sys-fops/description
+ Kernel support for framebuffer sys ops
+endef
+
+$(eval $(call KernelPackage,fb-sys-fops))
+
+define KernelPackage/drm
+ SUBMENU:=$(VIDEO_MENU)
+ TITLE:=Direct Rendering Manager (DRM) support
+ HIDDEN:=1
+ DEPENDS:=+kmod-dma-buf +kmod-i2c-core
+ KCONFIG:=CONFIG_DRM
+ FILES:=$(LINUX_DIR)/drivers/gpu/drm/drm.ko
+ AUTOLOAD:=$(call AutoLoad,05,drm)
+endef
+
+define KernelPackage/drm/description
+ Direct Rendering Manager (DRM) core support
+endef
+
+$(eval $(call KernelPackage,drm))
+
+define KernelPackage/drm-imx
+ SUBMENU:=$(VIDEO_MENU)
+ TITLE:=Freescale i.MX DRM support
+ DEPENDS:=@TARGET_imx6 +kmod-drm +kmod-fb +kmod-fb-cfb-copyarea +kmod-fb-cfb-imgblt +kmod-fb-cfb-fillrect +kmod-fb-sys-fops
+ KCONFIG:=CONFIG_DRM_IMX \
+ CONFIG_DRM_FBDEV_EMULATION=y \
+ CONFIG_DRM_FBDEV_OVERALLOC=100 \
+ CONFIG_IMX_IPUV3_CORE \
+ CONFIG_RESET_CONTROLLER=y \
+ CONFIG_DRM_IMX_IPUV3 \
+ CONFIG_IMX_IPUV3 \
+ CONFIG_DRM_KMS_HELPER \
+ CONFIG_FB_SYS_FILLRECT \
+ CONFIG_FB_SYS_COPYAREA \
+ CONFIG_FB_SYS_IMAGEBLIT \
+ CONFIG_DRM_KMS_FB_HELPER=y \
+ CONFIG_DRM_GEM_CMA_HELPER=y \
+ CONFIG_DRM_KMS_CMA_HELPER=y \
+ CONFIG_DRM_IMX_FB_HELPER \
+ CONFIG_DRM_IMX_PARALLEL_DISPLAY=n \
+ CONFIG_DRM_IMX_TVE=n \
+ CONFIG_DRM_IMX_LDB=n \
+ CONFIG_DRM_IMX_HDMI=n
+ FILES:= \
+ $(LINUX_DIR)/drivers/gpu/drm/imx/imxdrm.ko \
+ $(LINUX_DIR)/drivers/gpu/ipu-v3/imx-ipu-v3.ko \
+ $(LINUX_DIR)/drivers/video/fbdev/core/syscopyarea.ko \
+ $(LINUX_DIR)/drivers/video/fbdev/core/sysfillrect.ko \
+ $(LINUX_DIR)/drivers/video/fbdev/core/sysimgblt.ko \
+ $(LINUX_DIR)/drivers/gpu/drm/drm_kms_helper.ko
+ AUTOLOAD:=$(call AutoLoad,05,imxdrm imx-ipu-v3 imx-ipuv3-crtc)
+endef
+
+define KernelPackage/drm-imx/description
+ Direct Rendering Manager (DRM) support for Freescale i.MX
+endef
+
+$(eval $(call KernelPackage,drm-imx))
+
+define KernelPackage/drm-imx-hdmi
+ SUBMENU:=$(VIDEO_MENU)
+ TITLE:=Freescale i.MX HDMI DRM support
+ DEPENDS:=+kmod-sound-core kmod-drm-imx
+ KCONFIG:=CONFIG_DRM_IMX_HDMI \
+ CONFIG_DRM_DW_HDMI_AHB_AUDIO \
+ CONFIG_DRM_DW_HDMI_I2S_AUDIO
+ FILES:= \
+ $(LINUX_DIR)/drivers/gpu/drm/bridge/synopsys/dw-hdmi.ko \
+ $(LINUX_DIR)/drivers/gpu/drm/bridge/synopsys/dw-hdmi-ahb-audio.ko \
+ $(LINUX_DIR)/drivers/gpu/drm/imx/dw_hdmi-imx.ko
+ AUTOLOAD:=$(call AutoLoad,05,dw-hdmi dw-hdmi-ahb-audio.ko dw_hdmi-imx)
+endef
+
+define KernelPackage/drm-imx-hdmi/description
+ Direct Rendering Manager (DRM) support for Freescale i.MX HDMI
+endef
+
+$(eval $(call KernelPackage,drm-imx-hdmi))
+
+define KernelPackage/drm-imx-ldb
+ SUBMENU:=$(VIDEO_MENU)
+ TITLE:=Freescale i.MX LVDS DRM support
+ DEPENDS:=+kmod-backlight kmod-drm-imx
+ KCONFIG:=CONFIG_DRM_IMX_LDB \
+ CONFIG_DRM_PANEL_SIMPLE \
+ CONFIG_DRM_PANEL=y \
+ CONFIG_DRM_PANEL_SAMSUNG_LD9040=n \
+ CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0=n \
+ CONFIG_DRM_PANEL_LG_LG4573=n \
+ CONFIG_DRM_PANEL_LD9040=n \
+ CONFIG_DRM_PANEL_LVDS=n \
+ CONFIG_DRM_PANEL_S6E8AA0=n \
+ CONFIG_DRM_PANEL_SITRONIX_ST7789V=n
+ FILES:=$(LINUX_DIR)/drivers/gpu/drm/imx/imx-ldb.ko \
+ $(LINUX_DIR)/drivers/gpu/drm/panel/panel-simple.ko
+ AUTOLOAD:=$(call AutoLoad,05,imx-ldb)
+endef
+
+define KernelPackage/drm-imx-ldb/description
+ Direct Rendering Manager (DRM) support for Freescale i.MX LVDS
+endef
+
+$(eval $(call KernelPackage,drm-imx-ldb))
+
+
+#
+# Video Capture
+#
+
define KernelPackage/video-core
SUBMENU:=$(VIDEO_MENU)
TITLE=Video4Linux support
DEPENDS:=@PCI_SUPPORT||USB_SUPPORT +PACKAGE_kmod-i2c-core:kmod-i2c-core
KCONFIG:= \
- CONFIG_MEDIA_SUPPORT=m \
+ CONFIG_MEDIA_SUPPORT \
CONFIG_MEDIA_CAMERA_SUPPORT=y \
CONFIG_VIDEO_DEV \
CONFIG_VIDEO_V4L1=y \
endef
define AddDepends/camera
- SUBMENU:=$(VIDEO_MENU)
+$(AddDepends/video)
KCONFIG+=CONFIG_MEDIA_USB_SUPPORT=y \
CONFIG_MEDIA_CAMERA_SUPPORT=y
- DEPENDS+=kmod-video-core $(1)
endef