video: make backlight and panel drivers optional
authorAnatolij Gustschin <agust@denx.de>
Mon, 25 May 2020 22:20:49 +0000 (00:20 +0200)
committerAnatolij Gustschin <agust@denx.de>
Thu, 18 Jun 2020 17:28:36 +0000 (19:28 +0200)
Not all boards use these drivers, so allow to disable them to fix
building boards with U-Boot binary image size restrictions.

Signed-off-by: Anatolij Gustschin <agust@denx.de>
Reviewed-by: Simon Glass <sjg@chromium.org>
drivers/video/Kconfig
drivers/video/Makefile

index d0e9563..aaea7ce 100644 (file)
@@ -14,9 +14,17 @@ config DM_VIDEO
          option compiles in the video uclass and routes all LCD/video access
          through this.
 
+config BACKLIGHT
+       bool "Enable panel backlight uclass support"
+       depends on DM_VIDEO
+       default y
+       help
+         This provides backlight uclass driver that enables basic panel
+         backlight support.
+
 config BACKLIGHT_PWM
        bool "Generic PWM based Backlight Driver"
-       depends on DM_VIDEO && DM_PWM
+       depends on BACKLIGHT && DM_PWM
        default y
        help
          If you have a LCD backlight adjustable by PWM, say Y to enable
@@ -27,7 +35,7 @@ config BACKLIGHT_PWM
 
 config BACKLIGHT_GPIO
        bool "Generic GPIO based Backlight Driver"
-       depends on DM_VIDEO
+       depends on BACKLIGHT
        help
          If you have a LCD backlight adjustable by GPIO, say Y to enable
          this driver.
@@ -151,6 +159,21 @@ config NO_FB_CLEAR
          loads takes over the screen.  This, for example, can be used to
          keep splash image on screen until grub graphical boot menu starts.
 
+config PANEL
+       bool "Enable panel uclass support"
+       depends on DM_VIDEO
+       default y
+       help
+         This provides panel uclass driver that enables basic panel support.
+
+config SIMPLE_PANEL
+       bool "Enable simple panel support"
+       depends on PANEL
+       default y
+       help
+         This turns on a simple panel driver that enables a compatible
+         video panel.
+
 source "drivers/video/fonts/Kconfig"
 
 config VIDCONSOLE_AS_LCD
index df7119d..1dbd09a 100644 (file)
@@ -4,17 +4,18 @@
 # Wolfgang Denk, DENX Software Engineering, wd@denx.de.
 
 ifdef CONFIG_DM
+obj-$(CONFIG_BACKLIGHT) += backlight-uclass.o
 obj-$(CONFIG_BACKLIGHT_GPIO) += backlight_gpio.o
 obj-$(CONFIG_BACKLIGHT_PWM) += pwm_backlight.o
 obj-$(CONFIG_CONSOLE_NORMAL) += console_normal.o
 obj-$(CONFIG_CONSOLE_ROTATION) += console_rotate.o
 obj-$(CONFIG_CONSOLE_TRUETYPE) += console_truetype.o fonts/
 obj-$(CONFIG_DISPLAY) += display-uclass.o
-obj-$(CONFIG_DM_VIDEO) += backlight-uclass.o
 obj-$(CONFIG_VIDEO_MIPI_DSI) += dsi-host-uclass.o
-obj-$(CONFIG_DM_VIDEO) += panel-uclass.o simple_panel.o
 obj-$(CONFIG_DM_VIDEO) += video-uclass.o vidconsole-uclass.o
 obj-$(CONFIG_DM_VIDEO) += video_bmp.o
+obj-$(CONFIG_PANEL) += panel-uclass.o
+obj-$(CONFIG_SIMPLE_PANEL) += simple_panel.o
 endif
 
 obj-${CONFIG_EXYNOS_FB} += exynos/