diff options
author | Arnd Bergmann <arnd@arndb.de> | 2016-02-26 07:38:08 -0500 |
---|---|---|
committer | Tomi Valkeinen <tomi.valkeinen@ti.com> | 2016-02-29 11:56:03 -0500 |
commit | 5a63ddf60ee105a484501fd0d569923080592c0a (patch) | |
tree | 92d020efd3aeb13d487155cb151630205f99e0a3 | |
parent | 713fced8d10fa1c759c8fb6bf9aaa681bae68cad (diff) |
video: exynos: fix modular build
The s6e8ax0 driver has a dependency on BACKLIGHT_CLASS_DEVICE,
which can be configured as a loadable module, so we have to
make the driver a tristate symbol as well, to avoid this error:
drivers/built-in.o: In function `s6e8ax0_probe':
:(.text+0x23a48): undefined reference to `devm_backlight_device_register'
This also means we get another error from a missing export, which
this fixes as well:
ERROR: "exynos_mipi_dsi_register_lcd_driver" [drivers/video/fbdev/exynos/s6e8ax0.ko] undefined!
The drivers are all written to be loadable modules already,
except the Kconfig options for that are missing, which makes
the patch really easy.
Finally, the EXYNOS_VIDEO option is turned into tristate as well
for good measure, as all framebuffer drivers should be configurable
as modules, though this change is not strictly necessary.
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Reviewed-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
-rw-r--r-- | drivers/video/fbdev/exynos/Kconfig | 6 | ||||
-rw-r--r-- | drivers/video/fbdev/exynos/Makefile | 6 | ||||
-rw-r--r-- | drivers/video/fbdev/exynos/exynos_mipi_dsi.c | 1 |
3 files changed, 8 insertions, 5 deletions
diff --git a/drivers/video/fbdev/exynos/Kconfig b/drivers/video/fbdev/exynos/Kconfig index 1f16b4678c71..d916bef94f25 100644 --- a/drivers/video/fbdev/exynos/Kconfig +++ b/drivers/video/fbdev/exynos/Kconfig | |||
@@ -3,7 +3,7 @@ | |||
3 | # | 3 | # |
4 | 4 | ||
5 | menuconfig EXYNOS_VIDEO | 5 | menuconfig EXYNOS_VIDEO |
6 | bool "Exynos Video driver support" | 6 | tristate "Exynos Video driver support" |
7 | depends on ARCH_S5PV210 || ARCH_EXYNOS | 7 | depends on ARCH_S5PV210 || ARCH_EXYNOS |
8 | help | 8 | help |
9 | This enables support for EXYNOS Video device. | 9 | This enables support for EXYNOS Video device. |
@@ -15,13 +15,13 @@ if EXYNOS_VIDEO | |||
15 | # | 15 | # |
16 | 16 | ||
17 | config EXYNOS_MIPI_DSI | 17 | config EXYNOS_MIPI_DSI |
18 | bool "EXYNOS MIPI DSI driver support." | 18 | tristate "EXYNOS MIPI DSI driver support." |
19 | select GENERIC_PHY | 19 | select GENERIC_PHY |
20 | help | 20 | help |
21 | This enables support for MIPI-DSI device. | 21 | This enables support for MIPI-DSI device. |
22 | 22 | ||
23 | config EXYNOS_LCD_S6E8AX0 | 23 | config EXYNOS_LCD_S6E8AX0 |
24 | bool "S6E8AX0 MIPI AMOLED LCD Driver" | 24 | tristate "S6E8AX0 MIPI AMOLED LCD Driver" |
25 | depends on EXYNOS_MIPI_DSI && BACKLIGHT_CLASS_DEVICE | 25 | depends on EXYNOS_MIPI_DSI && BACKLIGHT_CLASS_DEVICE |
26 | depends on (LCD_CLASS_DEVICE = y) | 26 | depends on (LCD_CLASS_DEVICE = y) |
27 | default n | 27 | default n |
diff --git a/drivers/video/fbdev/exynos/Makefile b/drivers/video/fbdev/exynos/Makefile index b5b1bd228abb..02d8dc522fea 100644 --- a/drivers/video/fbdev/exynos/Makefile +++ b/drivers/video/fbdev/exynos/Makefile | |||
@@ -2,6 +2,8 @@ | |||
2 | # Makefile for the exynos video drivers. | 2 | # Makefile for the exynos video drivers. |
3 | # | 3 | # |
4 | 4 | ||
5 | obj-$(CONFIG_EXYNOS_MIPI_DSI) += exynos_mipi_dsi.o exynos_mipi_dsi_common.o \ | 5 | obj-$(CONFIG_EXYNOS_MIPI_DSI) += exynos-mipi-dsi-mod.o |
6 | exynos_mipi_dsi_lowlevel.o | 6 | |
7 | exynos-mipi-dsi-mod-objs += exynos_mipi_dsi.o exynos_mipi_dsi_common.o \ | ||
8 | exynos_mipi_dsi_lowlevel.o | ||
7 | obj-$(CONFIG_EXYNOS_LCD_S6E8AX0) += s6e8ax0.o | 9 | obj-$(CONFIG_EXYNOS_LCD_S6E8AX0) += s6e8ax0.o |
diff --git a/drivers/video/fbdev/exynos/exynos_mipi_dsi.c b/drivers/video/fbdev/exynos/exynos_mipi_dsi.c index 951b592794e3..92e4af3caaf8 100644 --- a/drivers/video/fbdev/exynos/exynos_mipi_dsi.c +++ b/drivers/video/fbdev/exynos/exynos_mipi_dsi.c | |||
@@ -263,6 +263,7 @@ int exynos_mipi_dsi_register_lcd_driver(struct mipi_dsim_lcd_driver *lcd_drv) | |||
263 | return 0; | 263 | return 0; |
264 | 264 | ||
265 | } | 265 | } |
266 | EXPORT_SYMBOL_GPL(exynos_mipi_dsi_register_lcd_driver); | ||
266 | 267 | ||
267 | static struct mipi_dsim_ddi *exynos_mipi_dsi_bind_lcd_ddi( | 268 | static struct mipi_dsim_ddi *exynos_mipi_dsi_bind_lcd_ddi( |
268 | struct mipi_dsim_device *dsim, | 269 | struct mipi_dsim_device *dsim, |