aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/arm/Kconfig2
-rw-r--r--arch/arm/mach-vexpress/Kconfig1
-rw-r--r--drivers/video/fbdev/Kconfig6
-rw-r--r--include/linux/platform_data/video-clcd-versatile.h18
4 files changed, 20 insertions, 7 deletions
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index c32064de77d8..11f18a04c066 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -332,7 +332,6 @@ config ARCH_REALVIEW
332 select ICST 332 select ICST
333 select NEED_MACH_MEMORY_H 333 select NEED_MACH_MEMORY_H
334 select PLAT_VERSATILE 334 select PLAT_VERSATILE
335 select PLAT_VERSATILE_CLCD
336 help 335 help
337 This enables support for ARM Ltd RealView boards. 336 This enables support for ARM Ltd RealView boards.
338 337
@@ -347,7 +346,6 @@ config ARCH_VERSATILE
347 select HAVE_MACH_CLKDEV 346 select HAVE_MACH_CLKDEV
348 select ICST 347 select ICST
349 select PLAT_VERSATILE 348 select PLAT_VERSATILE
350 select PLAT_VERSATILE_CLCD
351 select PLAT_VERSATILE_CLOCK 349 select PLAT_VERSATILE_CLOCK
352 select VERSATILE_FPGA_IRQ 350 select VERSATILE_FPGA_IRQ
353 help 351 help
diff --git a/arch/arm/mach-vexpress/Kconfig b/arch/arm/mach-vexpress/Kconfig
index d8b9330f896a..e9166dfc4756 100644
--- a/arch/arm/mach-vexpress/Kconfig
+++ b/arch/arm/mach-vexpress/Kconfig
@@ -13,7 +13,6 @@ menuconfig ARCH_VEXPRESS
13 select ICST 13 select ICST
14 select NO_IOPORT_MAP 14 select NO_IOPORT_MAP
15 select PLAT_VERSATILE 15 select PLAT_VERSATILE
16 select PLAT_VERSATILE_CLCD
17 select POWER_RESET 16 select POWER_RESET
18 select POWER_RESET_VEXPRESS 17 select POWER_RESET_VEXPRESS
19 select POWER_SUPPLY 18 select POWER_SUPPLY
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
index 92026d31bb48..bdf463072247 100644
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -292,10 +292,8 @@ config FB_ARMCLCD
292 292
293# Helper logic selected only by the ARM Versatile platform family. 293# Helper logic selected only by the ARM Versatile platform family.
294config PLAT_VERSATILE_CLCD 294config PLAT_VERSATILE_CLCD
295 depends on FB_ARMCLCD 295 def_bool ARCH_VERSATILE || ARCH_REALVIEW || ARCH_VEXPRESS
296 depends on (PLAT_VERSATILE || ARCH_INTEGRATOR) 296 depends on FB_ARMCLCD && FB=y
297 default y
298 bool
299 297
300config FB_ACORN 298config FB_ACORN
301 bool "Acorn VIDC support" 299 bool "Acorn VIDC support"
diff --git a/include/linux/platform_data/video-clcd-versatile.h b/include/linux/platform_data/video-clcd-versatile.h
index 6bb6a1d2019b..09ccf182af4d 100644
--- a/include/linux/platform_data/video-clcd-versatile.h
+++ b/include/linux/platform_data/video-clcd-versatile.h
@@ -1,9 +1,27 @@
1#ifndef PLAT_CLCD_H 1#ifndef PLAT_CLCD_H
2#define PLAT_CLCD_H 2#define PLAT_CLCD_H
3 3
4#ifdef CONFIG_PLAT_VERSATILE_CLCD
4struct clcd_panel *versatile_clcd_get_panel(const char *); 5struct clcd_panel *versatile_clcd_get_panel(const char *);
5int versatile_clcd_setup_dma(struct clcd_fb *, unsigned long); 6int versatile_clcd_setup_dma(struct clcd_fb *, unsigned long);
6int versatile_clcd_mmap_dma(struct clcd_fb *, struct vm_area_struct *); 7int versatile_clcd_mmap_dma(struct clcd_fb *, struct vm_area_struct *);
7void versatile_clcd_remove_dma(struct clcd_fb *); 8void versatile_clcd_remove_dma(struct clcd_fb *);
9#else
10static inline struct clcd_panel *versatile_clcd_get_panel(const char *s)
11{
12 return NULL;
13}
14static inline int versatile_clcd_setup_dma(struct clcd_fb *fb, unsigned long framesize)
15{
16 return -ENODEV;
17}
18static inline int versatile_clcd_mmap_dma(struct clcd_fb *fb, struct vm_area_struct *vm)
19{
20 return -ENODEV;
21}
22static inline void versatile_clcd_remove_dma(struct clcd_fb *fb)
23{
24}
25#endif
8 26
9#endif 27#endif