From dcdf407b9ddceb1383da14c9a095e0b07a85b014 Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen Date: Mon, 18 Mar 2013 15:50:25 +0200 Subject: ARM: OMAP2+: add omapdss_init_of() The OMAP display architecture requires a bunch of platform devices which are not created via .dts (for now). We also need to pass a few function pointers and the DSS hardware version from the arch code to omapdss driver. This patch adds omapdss_init_of() function, called from board-generic at init time, which handles those tasks. Signed-off-by: Tomi Valkeinen Reviewed-by: Archit Taneja Acked-by: Tony Lindgren --- arch/arm/mach-omap2/board-generic.c | 2 ++ 1 file changed, 2 insertions(+) (limited to 'arch/arm/mach-omap2/board-generic.c') diff --git a/arch/arm/mach-omap2/board-generic.c b/arch/arm/mach-omap2/board-generic.c index 8e3daa11602b..fcb7f5c271c9 100644 --- a/arch/arm/mach-omap2/board-generic.c +++ b/arch/arm/mach-omap2/board-generic.c @@ -36,6 +36,8 @@ static struct of_device_id omap_dt_match_table[] __initdata = { static void __init omap_generic_init(void) { pdata_quirks_init(omap_dt_match_table); + + omapdss_init_of(); } #ifdef CONFIG_SOC_OMAP2420 -- cgit v1.2.3 From 6a0e6b3872f09550bf8e0587d375940092580360 Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen Date: Thu, 19 Dec 2013 12:34:19 +0200 Subject: ARM: OMAP2+: DT 'compatible' tweak for displays As there is no common panel framework in the kernel, we have OMAP specific panel drivers. However, the DT data should be generic. This brings the issue that some other platform could use the same panels, and would need to create a driver with the same 'compatible' string as the OMAP driver. In the long run, we have to get a common panel framework. For the time being, this patch solves the issue: At early boot time, we go through the DT nodes looking for the panels the kernel supports for OMAP. For each found node, the 'compatible' string is prepended with "omapdss,", i.e. "sony,acx565akm" becomes "omapdss,sony,acx565akm". The OMAP display drivers all have "omapdss," at the beginning of their compatible field. This allows us to have generic DT data, but OMAP specific display drivers. Signed-off-by: Tomi Valkeinen Reviewed-by: Archit Taneja Acked-by: Tony Lindgren --- arch/arm/mach-omap2/board-generic.c | 2 ++ 1 file changed, 2 insertions(+) (limited to 'arch/arm/mach-omap2/board-generic.c') diff --git a/arch/arm/mach-omap2/board-generic.c b/arch/arm/mach-omap2/board-generic.c index fcb7f5c271c9..0db371a88e5e 100644 --- a/arch/arm/mach-omap2/board-generic.c +++ b/arch/arm/mach-omap2/board-generic.c @@ -35,6 +35,8 @@ static struct of_device_id omap_dt_match_table[] __initdata = { static void __init omap_generic_init(void) { + omapdss_early_init_of(); + pdata_quirks_init(omap_dt_match_table); omapdss_init_of(); -- cgit v1.2.3