video: fix up versatile CLCD helper move
commit 11c32d7b62
("video: move Versatile CLCD helpers")
moved files out of the plat-versatile directory but in the process
got a few of the dependencies wrong:
- If CONFIG_FB is not set, the file no longer gets built, resulting
in a link error
- If CONFIG_FB or CONFIG_FB_ARMCLCD are disabled, we also get a
Kconfig warning for incorrect dependencies due to the symbol
being 'select'ed from the platform Kconfig.
- When the file is not built, we also get a link error for missing
symbols.
This patch should fix all three, by removing the 'select' statements,
changing the Kconfig description of the symbol to be enabled in
exactly the right configurations, and adding inline stub functions
for the case when the framebuffer driver is disabled.
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
This commit is contained in:
parent
9db58cc9f3
commit
ec4c4d877b
|
@ -332,7 +332,6 @@ config ARCH_REALVIEW
|
||||||
select ICST
|
select ICST
|
||||||
select NEED_MACH_MEMORY_H
|
select NEED_MACH_MEMORY_H
|
||||||
select PLAT_VERSATILE
|
select PLAT_VERSATILE
|
||||||
select PLAT_VERSATILE_CLCD
|
|
||||||
help
|
help
|
||||||
This enables support for ARM Ltd RealView boards.
|
This enables support for ARM Ltd RealView boards.
|
||||||
|
|
||||||
|
@ -347,7 +346,6 @@ config ARCH_VERSATILE
|
||||||
select HAVE_MACH_CLKDEV
|
select HAVE_MACH_CLKDEV
|
||||||
select ICST
|
select ICST
|
||||||
select PLAT_VERSATILE
|
select PLAT_VERSATILE
|
||||||
select PLAT_VERSATILE_CLCD
|
|
||||||
select PLAT_VERSATILE_CLOCK
|
select PLAT_VERSATILE_CLOCK
|
||||||
select VERSATILE_FPGA_IRQ
|
select VERSATILE_FPGA_IRQ
|
||||||
help
|
help
|
||||||
|
|
|
@ -13,7 +13,6 @@ menuconfig ARCH_VEXPRESS
|
||||||
select ICST
|
select ICST
|
||||||
select NO_IOPORT_MAP
|
select NO_IOPORT_MAP
|
||||||
select PLAT_VERSATILE
|
select PLAT_VERSATILE
|
||||||
select PLAT_VERSATILE_CLCD
|
|
||||||
select POWER_RESET
|
select POWER_RESET
|
||||||
select POWER_RESET_VEXPRESS
|
select POWER_RESET_VEXPRESS
|
||||||
select POWER_SUPPLY
|
select POWER_SUPPLY
|
||||||
|
|
|
@ -292,10 +292,8 @@ config FB_ARMCLCD
|
||||||
|
|
||||||
# Helper logic selected only by the ARM Versatile platform family.
|
# Helper logic selected only by the ARM Versatile platform family.
|
||||||
config PLAT_VERSATILE_CLCD
|
config PLAT_VERSATILE_CLCD
|
||||||
depends on FB_ARMCLCD
|
def_bool ARCH_VERSATILE || ARCH_REALVIEW || ARCH_VEXPRESS
|
||||||
depends on (PLAT_VERSATILE || ARCH_INTEGRATOR)
|
depends on FB_ARMCLCD && FB=y
|
||||||
default y
|
|
||||||
bool
|
|
||||||
|
|
||||||
config FB_ACORN
|
config FB_ACORN
|
||||||
bool "Acorn VIDC support"
|
bool "Acorn VIDC support"
|
||||||
|
|
|
@ -1,9 +1,27 @@
|
||||||
#ifndef PLAT_CLCD_H
|
#ifndef PLAT_CLCD_H
|
||||||
#define PLAT_CLCD_H
|
#define PLAT_CLCD_H
|
||||||
|
|
||||||
|
#ifdef CONFIG_PLAT_VERSATILE_CLCD
|
||||||
struct clcd_panel *versatile_clcd_get_panel(const char *);
|
struct clcd_panel *versatile_clcd_get_panel(const char *);
|
||||||
int versatile_clcd_setup_dma(struct clcd_fb *, unsigned long);
|
int versatile_clcd_setup_dma(struct clcd_fb *, unsigned long);
|
||||||
int versatile_clcd_mmap_dma(struct clcd_fb *, struct vm_area_struct *);
|
int versatile_clcd_mmap_dma(struct clcd_fb *, struct vm_area_struct *);
|
||||||
void versatile_clcd_remove_dma(struct clcd_fb *);
|
void versatile_clcd_remove_dma(struct clcd_fb *);
|
||||||
|
#else
|
||||||
|
static inline struct clcd_panel *versatile_clcd_get_panel(const char *s)
|
||||||
|
{
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
static inline int versatile_clcd_setup_dma(struct clcd_fb *fb, unsigned long framesize)
|
||||||
|
{
|
||||||
|
return -ENODEV;
|
||||||
|
}
|
||||||
|
static inline int versatile_clcd_mmap_dma(struct clcd_fb *fb, struct vm_area_struct *vm)
|
||||||
|
{
|
||||||
|
return -ENODEV;
|
||||||
|
}
|
||||||
|
static inline void versatile_clcd_remove_dma(struct clcd_fb *fb)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in New Issue