summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-omap2/fb.c
diff options
context:
space:
mode:
authorArchit Taneja <archit@ti.com>2013-09-16 09:18:30 +0200
committerTony Lindgren <tony@atomide.com>2013-10-08 23:02:51 +0200
commitfc8df75217e1c60183b594a417bc496ab086a453 (patch)
treedd35bd6b4fdc45281db6122f9d7e055bdd6f4b36 /arch/arm/mach-omap2/fb.c
parentARM: OMAP2+: display: Create omapdrm device inside omap_display_init (diff)
downloadlinux-fc8df75217e1c60183b594a417bc496ab086a453.tar.xz
linux-fc8df75217e1c60183b594a417bc496ab086a453.zip
ARM: OMAP2+: display: Create omapvrfb and omapfb devices inside omap_display_init
Move omapfb and omapvrfb device creation inside the omap_display_init so that we can correctly create the device based on the presence of omapdss within the platform. For example, on a kernel image supporting multiple platforms, omap_init_vrfb and omap_init_fb will create omapvrfb and omapfb platform devices respectively on a AM33xx platform even though it doesn't have a VRFB or DSS block. Signed-off-by: Archit Taneja <archit@ti.com> Acked-by: Tomi Valkeinen <tomi.valkeinen@ti.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
Diffstat (limited to 'arch/arm/mach-omap2/fb.c')
-rw-r--r--arch/arm/mach-omap2/fb.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/arch/arm/mach-omap2/fb.c b/arch/arm/mach-omap2/fb.c
index 2ca33cc0c484..26e28e94f625 100644
--- a/arch/arm/mach-omap2/fb.c
+++ b/arch/arm/mach-omap2/fb.c
@@ -32,6 +32,7 @@
#include <asm/mach/map.h>
#include "soc.h"
+#include "display.h"
#ifdef CONFIG_OMAP2_VRFB
@@ -64,7 +65,7 @@ static const struct resource omap3_vrfb_resources[] = {
DEFINE_RES_MEM_NAMED(0xfc000000u, 0x4000000, "vrfb-area-11"),
};
-static int __init omap_init_vrfb(void)
+int __init omap_init_vrfb(void)
{
struct platform_device *pdev;
const struct resource *res;
@@ -85,8 +86,8 @@ static int __init omap_init_vrfb(void)
return PTR_RET(pdev);
}
-
-omap_arch_initcall(omap_init_vrfb);
+#else
+int __init omap_init_vrfb(void) { return 0; }
#endif
#if defined(CONFIG_FB_OMAP2) || defined(CONFIG_FB_OMAP2_MODULE)
@@ -105,11 +106,10 @@ static struct platform_device omap_fb_device = {
.num_resources = 0,
};
-static int __init omap_init_fb(void)
+int __init omap_init_fb(void)
{
return platform_device_register(&omap_fb_device);
}
-
-omap_arch_initcall(omap_init_fb);
-
+#else
+int __init omap_init_fb(void) { return 0; }
#endif