On 16/02/15 17:49, Robert ABEL wrote: > This patch adds support for spawning busses as children of the GPMC. > > Signed-off-by: Robert ABEL <rabel@xxxxxxxxxxxxxxxxxxxxxxx> > --- > arch/arm/mach-omap2/gpmc.c | 14 +++++++++++++- > 1 file changed, 13 insertions(+), 1 deletion(-) > > diff --git a/arch/arm/mach-omap2/gpmc.c b/arch/arm/mach-omap2/gpmc.c > index 4fa5ff1..c6c8543 100644 > --- a/arch/arm/mach-omap2/gpmc.c > +++ b/arch/arm/mach-omap2/gpmc.c > @@ -27,6 +27,7 @@ > #include <linux/of_address.h> > #include <linux/of_mtd.h> > #include <linux/of_device.h> > +#include <linux/of_platform.h> > #include <linux/mtd/nand.h> > #include <linux/pm_runtime.h> > > @@ -1589,9 +1590,20 @@ static int gpmc_probe_generic_child(struct platform_device *pdev, > gpmc_cs_set_timings(cs, &gpmc_t); > > no_timings: > - if (of_platform_device_create(child, NULL, &pdev->dev)) > + > + if (of_match_node(of_default_bus_match_table, child)) { > + > + /* ignore return code, because 0 is ambiguous */ > + of_platform_populate(child, of_default_bus_match_table, NULL, &pdev->dev); > return 0; > > + } else { > + > + if (of_platform_device_create(child, NULL, &pdev->dev)) > + return 0; > + > + } > + Can we simply use only of_platform_populate(child, NULL, NULL, &pdev->dev) That way we get rid of the if..else and let OF core take care of creating buses or devices. > dev_err(&pdev->dev, "failed to create gpmc child %s\n", child->name); > ret = -ENODEV; > > cheers, -roger -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html