kernel: add backlight kernel module support
[openwrt/openwrt.git] / package / kernel / linux / modules / video.mk
index 25ef9cb7dcf36d832fa4a5841ed78bbfc8b74cfd..61d7d88497b336910c3cd1882840515abc40e1de 100644 (file)
@@ -11,14 +11,58 @@ VIDEO_MENU:=Video Support
 V4L2_DIR=v4l2-core
 V4L2_USB_DIR=usb
 
+#
+# Video Display
+#
+
+define KernelPackage/backlight
+       SUBMENU:=$(VIDEO_MENU)
+       TITLE:=Backlight support
+       KCONFIG:=CONFIG_BACKLIGHT_CLASS_DEVICE=m \
+               CONFIG_BACKLIGHT_LCD_SUPPORT=y \
+               CONFIG_LCD_CLASS_DEVICE=n \
+               CONFIG_BACKLIGHT_PWM=n \
+               CONFIG_BACKLIGHT_GENERIC=n \
+               CONFIG_BACKLIGHT_ADP8860=n \
+               CONFIG_BACKLIGHT_ADP8870=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 AddDepends/backlight
+       SUBMENU:=$(VIDEO_MENU)
+       DEPENDS+=kmod-backlight $(1)
+endef
+
+define KernelPackage/backlight-pwm
+       TITLE:=PWM Backlight support
+       DEPENDS:=+kmod-pwm
+       KCONFIG:=CONFIG_BACKLIGHT_PWM=m
+       FILES:=$(LINUX_DIR)/drivers/video/backlight/pwm_bl.ko
+       AUTOLOAD:=$(call AutoProbe,video pwm_bl)
+       $(call AddDepends/backlight)
+endef
+
+define KernelPackage/backlight/backlight-pwm
+       Kernel module for PWM based Backlight support.
+endef
+
+$(eval $(call KernelPackage,backlight-pwm))
+
+
 define KernelPackage/fb
   SUBMENU:=$(VIDEO_MENU)
   TITLE:=Framebuffer support
   DEPENDS:=@DISPLAY_SUPPORT
   KCONFIG:=CONFIG_FB
-  FILES:= \
-       $(LINUX_DIR)/drivers/video/fb.ko@lt3.15 \
-       $(LINUX_DIR)/drivers/video/fbdev/core/fb.ko@ge3.15
+  FILES:=$(LINUX_DIR)/drivers/video/fbdev/core/fb.ko
   AUTOLOAD:=$(call AutoLoad,06,fb)
 endef
 
@@ -38,9 +82,7 @@ define KernelPackage/fb-cfb-fillrect
   TITLE:=Framebuffer software rectangle filling support
   DEPENDS:=+kmod-fb
   KCONFIG:=CONFIG_FB_CFB_FILLRECT
-  FILES:= \
-       $(LINUX_DIR)/drivers/video/cfbfillrect.ko@lt3.15 \
-       $(LINUX_DIR)/drivers/video/fbdev/core/cfbfillrect.ko@ge3.15
+  FILES:=$(LINUX_DIR)/drivers/video/fbdev/core/cfbfillrect.ko
   AUTOLOAD:=$(call AutoLoad,07,cfbfillrect)
 endef
 
@@ -56,9 +98,7 @@ define KernelPackage/fb-cfb-copyarea
   TITLE:=Framebuffer software copy area support
   DEPENDS:=+kmod-fb
   KCONFIG:=CONFIG_FB_CFB_COPYAREA
-  FILES:= \
-       $(LINUX_DIR)/drivers/video/cfbcopyarea.ko@lt3.15 \
-       $(LINUX_DIR)/drivers/video/fbdev/core/cfbcopyarea.ko@ge3.15
+  FILES:=$(LINUX_DIR)/drivers/video/fbdev/core/cfbcopyarea.ko
   AUTOLOAD:=$(call AutoLoad,07,cfbcopyarea)
 endef
 
@@ -73,9 +113,7 @@ define KernelPackage/fb-cfb-imgblt
   TITLE:=Framebuffer software image blit support
   DEPENDS:=+kmod-fb
   KCONFIG:=CONFIG_FB_CFB_IMAGEBLIT
-  FILES:= \
-       $(LINUX_DIR)/drivers/video/cfbimgblt.ko@lt3.15 \
-       $(LINUX_DIR)/drivers/video/fbdev/core/cfbimgblt.ko@ge3.15
+  FILES:=$(LINUX_DIR)/drivers/video/fbdev/core/cfbimgblt.ko
   AUTOLOAD:=$(call AutoLoad,07,cfbimgblt)
 endef
 
@@ -129,15 +167,17 @@ endef
 
 define KernelPackage/video-videobuf2
   TITLE:=videobuf2 lib
+  DEPENDS:=+kmod-dma-buf
   KCONFIG:= \
        CONFIG_VIDEOBUF2_CORE \
        CONFIG_VIDEOBUF2_MEMOPS \
        CONFIG_VIDEOBUF2_VMALLOC
   FILES:= \
        $(LINUX_DIR)/drivers/media/$(V4L2_DIR)/videobuf2-core.ko \
+       $(LINUX_DIR)/drivers/media/$(V4L2_DIR)/videobuf2-v4l2.ko@ge4.4 \
        $(LINUX_DIR)/drivers/media/$(V4L2_DIR)/videobuf2-memops.ko \
        $(LINUX_DIR)/drivers/media/$(V4L2_DIR)/videobuf2-vmalloc.ko
-  AUTOLOAD:=$(call AutoLoad,65,videobuf2-core videobuf2-memops videobuf2-vmalloc)
+  AUTOLOAD:=$(call AutoLoad,65,videobuf2-core videobuf-v4l2@ge4.4 videobuf2-memops videobuf2-vmalloc)
   $(call AddDepends/video)
 endef
 
@@ -184,12 +224,11 @@ $(eval $(call KernelPackage,video-pwc))
 
 define KernelPackage/video-uvc
   TITLE:=USB Video Class (UVC) support
-  DEPENDS:=@USB_SUPPORT +kmod-usb-core +kmod-video-videobuf2
+  DEPENDS:=@USB_SUPPORT +kmod-usb-core +kmod-video-videobuf2 +kmod-input-core
   KCONFIG:= CONFIG_USB_VIDEO_CLASS
   FILES:=$(LINUX_DIR)/drivers/media/$(V4L2_USB_DIR)/uvc/uvcvideo.ko
   AUTOLOAD:=$(call AutoProbe,uvcvideo)
   $(call AddDepends/camera)
-  $(call AddDepends/input)
 endef
 
 define KernelPackage/video-uvc/description