summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: e30927e)
raw | patch | inline | side by side (parent: e30927e)
author | Rakesh Movva <r-movva@ti.com> | |
Wed, 16 Sep 2015 11:59:05 +0000 (06:59 -0500) | ||
committer | Vishal Mahaveer <vishalm@ti.com> | |
Fri, 18 Sep 2015 20:24:17 +0000 (15:24 -0500) |
Adds methods to handle skipping display initialization during
kernel bootup for cases where the display is pre-initialized by
either the remote core or u-boot.
Change-Id: Ied3498d35924c46e488620f6753caf15256159ce
Signed-off-by: Sundar Raman <sunds@ti.com>
Signed-off-by: Rakesh Movva <r-movva@ti.com>
kernel bootup for cases where the display is pre-initialized by
either the remote core or u-boot.
Change-Id: Ied3498d35924c46e488620f6753caf15256159ce
Signed-off-by: Sundar Raman <sunds@ti.com>
Signed-off-by: Rakesh Movva <r-movva@ti.com>
drivers/video/fbdev/omap2/dss/core.c | patch | blob | history | |
include/video/omapdss.h | patch | blob | history |
index 6b74f73fb5245bef81031ae40d810bd2a6fa8d2d..9fd540257cad093b7a5fb9992ec5c781fbf7a148 100644 (file)
#include <linux/regulator/consumer.h>
#include <linux/suspend.h>
#include <linux/slab.h>
+#include <linux/of.h>
#include <video/omapdss.h>
const char *default_display_name;
} core;
+static uint g_display_skip_init;
+static uint g_display_share;
+
static char *def_disp_name;
module_param_named(def_disp, def_disp_name, charp, 0);
MODULE_PARM_DESC(def_disp, "default display name");
}
EXPORT_SYMBOL(omapdss_get_version);
+int omapdss_skipinit(void)
+{
+ return g_display_skip_init;
+}
+EXPORT_SYMBOL(omapdss_skipinit);
+
+int omapdss_display_share(void)
+{
+ return g_display_share;
+}
+EXPORT_SYMBOL(omapdss_display_share);
+
bool omapdss_is_initialized(void)
{
return dss_initialized;
static int __init omap_dss_probe(struct platform_device *pdev)
{
struct omap_dss_board_info *pdata = pdev->dev.platform_data;
+ struct device_node *node = pdev->dev.of_node;
int r;
core.pdev = pdev;
+ of_property_read_u32(node, "skip_init",
+ &g_display_skip_init);
+ if (g_display_skip_init)
+ g_display_share = 1;
+
dss_features_init(omapdss_get_version());
r = dss_initialize_debugfs();
index 13eec485e5b34ac523d52c855e3f43654e9933ef..f8d2fc6db64b7d698c306f05cb3a682bf89270db 100644 (file)
--- a/include/video/omapdss.h
+++ b/include/video/omapdss.h
enum omapdss_version omapdss_get_version(void);
bool omapdss_is_initialized(void);
+int omapdss_skipinit(void);
+int omapdss_display_share(void);
+
int omap_dss_register_driver(struct omap_dss_driver *);
void omap_dss_unregister_driver(struct omap_dss_driver *);