Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ec4c4d87 authored by Arnd Bergmann's avatar Arnd Bergmann
Browse files

video: fix up versatile CLCD helper move



commit 11c32d7b ("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: default avatarArnd Bergmann <arnd@arndb.de>
Reviewed-by: default avatarLinus Walleij <linus.walleij@linaro.org>
parent 9db58cc9
Loading
Loading
Loading
Loading
+0 −2
Original line number Diff line number Diff line
@@ -332,7 +332,6 @@ config ARCH_REALVIEW
	select ICST
	select NEED_MACH_MEMORY_H
	select PLAT_VERSATILE
	select PLAT_VERSATILE_CLCD
	help
	  This enables support for ARM Ltd RealView boards.

@@ -347,7 +346,6 @@ config ARCH_VERSATILE
	select HAVE_MACH_CLKDEV
	select ICST
	select PLAT_VERSATILE
	select PLAT_VERSATILE_CLCD
	select PLAT_VERSATILE_CLOCK
	select VERSATILE_FPGA_IRQ
	help
+0 −1
Original line number Diff line number Diff line
@@ -13,7 +13,6 @@ menuconfig ARCH_VEXPRESS
	select ICST
	select NO_IOPORT_MAP
	select PLAT_VERSATILE
	select PLAT_VERSATILE_CLCD
	select POWER_RESET
	select POWER_RESET_VEXPRESS
	select POWER_SUPPLY
+2 −4
Original line number Diff line number Diff line
@@ -292,10 +292,8 @@ config FB_ARMCLCD

# Helper logic selected only by the ARM Versatile platform family.
config PLAT_VERSATILE_CLCD
	depends on FB_ARMCLCD
	depends on (PLAT_VERSATILE || ARCH_INTEGRATOR)
	default y
	bool
	def_bool ARCH_VERSATILE || ARCH_REALVIEW || ARCH_VEXPRESS
	depends on FB_ARMCLCD && FB=y

config FB_ACORN
	bool "Acorn VIDC support"
+18 −0
Original line number Diff line number Diff line
#ifndef PLAT_CLCD_H
#define PLAT_CLCD_H

#ifdef CONFIG_PLAT_VERSATILE_CLCD
struct clcd_panel *versatile_clcd_get_panel(const char *);
int versatile_clcd_setup_dma(struct clcd_fb *, unsigned long);
int versatile_clcd_mmap_dma(struct clcd_fb *, struct vm_area_struct *);
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