summaryrefslogtreecommitdiff
path: root/arch/arm/mach-ux500/board-mop500-mcde.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/mach-ux500/board-mop500-mcde.c')
-rw-r--r--arch/arm/mach-ux500/board-mop500-mcde.c17
1 files changed, 16 insertions, 1 deletions
diff --git a/arch/arm/mach-ux500/board-mop500-mcde.c b/arch/arm/mach-ux500/board-mop500-mcde.c
index 470302b6809..8b9e0b5a9c2 100644
--- a/arch/arm/mach-ux500/board-mop500-mcde.c
+++ b/arch/arm/mach-ux500/board-mop500-mcde.c
@@ -13,6 +13,7 @@
#include <linux/mfd/ab8500/denc.h>
#include <linux/workqueue.h>
#include <linux/dispdev.h>
+#include <linux/compdev.h>
#include <asm/mach-types.h>
#include <linux/clk.h>
#include <mach/devices.h>
@@ -348,7 +349,7 @@ static int display_postregistered_callback(struct notifier_block *nb,
u16 virtual_height;
u32 rotate = FB_ROTATE_UR;
struct fb_info *fbi;
-#ifdef CONFIG_DISPDEV
+#if defined(CONFIG_DISPDEV) || defined(CONFIG_COMPDEV)
struct mcde_fb *mfb;
#endif
@@ -397,6 +398,20 @@ static int display_postregistered_callback(struct notifier_block *nb,
}
#endif
+#ifdef CONFIG_COMPDEV
+ mfb = to_mcde_fb(fbi);
+ /* Create a compdev overlay for this display */
+ if (compdev_create(ddev, mfb->ovlys[0]) < 0) {
+ dev_warn(&ddev->dev,
+ "Failed to create compdev for display %s\n",
+ ddev->name);
+ goto display_postregistered_callback_err;
+ } else {
+ dev_info(&ddev->dev, "compdev created for (%s)\n",
+ ddev->name);
+ }
+#endif
+
out:
return 0;