2012-10-27 18:50:07

by Constantine Shulyupin

[permalink] [raw]
Subject: [PATCH] Add FDT support to Pandaboard initialization

From: Constantine Shulyupin <[email protected]>

Problem:
- FDT is supported only by generic OMAP board initialization in arch/arm/mach-omap2/board-generic.c and lacks some configurations, which are not yet configured in FDT (USB for example).
Solution:
- arch/arm/mach-omap2/board-omap4panda.c supports initialization with FDT and without it.

Signed-off-by: Constantine Shulyupin <[email protected]>
---
arch/arm/mach-omap2/board-omap4panda.c | 33 ++++++++++++++++++++++++++++++++
1 file changed, 33 insertions(+)

diff --git a/arch/arm/mach-omap2/board-omap4panda.c b/arch/arm/mach-omap2/board-omap4panda.c
index bfcd397..fea7a83 100644
--- a/arch/arm/mach-omap2/board-omap4panda.c
+++ b/arch/arm/mach-omap2/board-omap4panda.c
@@ -31,6 +31,7 @@
#include <linux/ti_wilink_st.h>
#include <linux/wl12xx.h>
#include <linux/platform_data/omap-abe-twl6040.h>
+#include <linux/of_platform.h>

#include <asm/hardware/gic.h>
#include <asm/mach-types.h>
@@ -526,3 +527,35 @@ MACHINE_START(OMAP4_PANDA, "OMAP4 Panda board")
.timer = &omap4_timer,
.restart = omap_prcm_restart,
MACHINE_END
+
+static struct of_device_id omap_dt_match_table[] __initdata = {
+ { .compatible = "simple-bus", },
+ { .compatible = "ti,omap-infra", },
+ { }
+};
+
+static void __init panda_dt_init(void)
+{
+ of_platform_populate(NULL, omap_dt_match_table, NULL, NULL);
+ omap4_panda_init();
+}
+
+static const char *omap4_panda_compat[] __initdata = {
+ "ti,omap4-panda",
+ "ti,omap4",
+ NULL,
+};
+
+DT_MACHINE_START(OMAP4_PANDA_DT, "OMAP4 Pandaboard with FDT support")
+ .dt_compat = omap4_panda_compat,
+ .reserve = omap_reserve,
+ .smp = smp_ops(omap4_smp_ops),
+ .map_io = omap4_map_io,
+ .init_early = omap4430_init_early,
+ .init_irq = omap_gic_of_init,
+ .handle_irq = gic_handle_irq,
+ .init_machine = panda_dt_init,
+ .init_late = omap4430_init_late,
+ .timer = &omap4_timer,
+ .restart = omap_prcm_restart,
+MACHINE_END
--
1.7.9.5


2012-10-29 06:20:29

by Felipe Balbi

[permalink] [raw]
Subject: Re: [PATCH] Add FDT support to Pandaboard initialization

On Sat, Oct 27, 2012 at 08:50:00PM +0200, Constantine Shulyupin wrote:
> From: Constantine Shulyupin <[email protected]>
>
> Problem:
> - FDT is supported only by generic OMAP board initialization in arch/arm/mach-omap2/board-generic.c and lacks some configurations, which are not yet configured in FDT (USB for example).
> Solution:
> - arch/arm/mach-omap2/board-omap4panda.c supports initialization with FDT and without it.
>
> Signed-off-by: Constantine Shulyupin <[email protected]>

NAK, the whole idea of DT is to drop board-*.c. It would be best to see
the "missing initialization" being added to board-generic/dts files.

--
balbi


Attachments:
(No filename) (646.00 B)
signature.asc (836.00 B)
Digital signature
Download all attachments

2012-10-29 16:01:29

by Tony Lindgren

[permalink] [raw]
Subject: Re: [PATCH] Add FDT support to Pandaboard initialization

* Felipe Balbi <[email protected]> [121028 23:22]:
> On Sat, Oct 27, 2012 at 08:50:00PM +0200, Constantine Shulyupin wrote:
> > From: Constantine Shulyupin <[email protected]>
> >
> > Problem:
> > - FDT is supported only by generic OMAP board initialization in arch/arm/mach-omap2/board-generic.c and lacks some configurations, which are not yet configured in FDT (USB for example).
> > Solution:
> > - arch/arm/mach-omap2/board-omap4panda.c supports initialization with FDT and without it.
> >
> > Signed-off-by: Constantine Shulyupin <[email protected]>
>
> NAK, the whole idea of DT is to drop board-*.c. It would be best to see
> the "missing initialization" being added to board-generic/dts files.

Yes I agree, let's rather get board-generic.c to work with panda.

The other board-*.c files will be dropped as soon as we have
things usable with devicetree. And we're only two board-*.c files
away from making omap4 device tree only ;)

I think we are only missing DSS, USB and WLAN bindings to
have blaze and panda usable with device tree to the point
where everything else can be added later on.

Regards,

Tony