[PATCH] devicetree: Add empty of_platform_populate() for !CONFIG_OF_ADDRESS (sparc)

Andrew Morton akpm at linux-foundation.org
Sat Mar 3 12:07:15 EST 2012


On Fri, 2 Mar 2012 22:20:16 +0100
"Cousson, Benoit" <b-cousson at ti.com> wrote:

> Hi Grant,
> 
> In fact this patch is not working for build without CONFIG_OF like x86.
> 
> On 2/24/2012 11:06 PM, Grant Likely wrote:
> > --- a/include/linux/of_platform.h
> > +++ b/include/linux/of_platform.h
> > @@ -81,7 +81,7 @@ extern struct platform_device *of_device_alloc(struct device_node *np,
> >   					 struct device *parent);
> >   extern struct platform_device *of_find_device_by_node(struct device_node *np);
> >
> > -#if !defined(CONFIG_SPARC) /* SPARC has its own device registration method */
> > +#ifdef CONFIG_OF_ADDRESS /* device reg helpers depend on OF_ADDRESS */
> >   /* Platform devices and busses creation */
> >   extern struct platform_device *of_platform_device_create(struct device_node *np,
> >   						   const char *bus_id,
> > @@ -94,7 +94,15 @@ extern int of_platform_populate(struct device_node *root,
> >   				const struct of_device_id *matches,
> >   				const struct of_dev_auxdata *lookup,
> >   				struct device *parent);
> > -#endif /* !CONFIG_SPARC */
> > +#else
> > +static inline int of_platform_populate(struct device_node *root,
> > +					const struct of_device_id *matches,
> > +					const struct of_dev_auxdata *lookup,
> > +					struct device *parent)
> > +{
> > +	return -ENODEV;
> > +}
> > +#endif /* !CONFIG_OF_ADDRESS */
> >
> >   #endif /* CONFIG_OF_DEVICE */
> 
> Because if CONFIG_OF_DEVICE is not defined, then the stub for 
> of_platform_populate will not be defined either. It should exist for any 
> config without CONFIG_OF.
> 
> Building twl4030 for x86 is actually broken.
> 

All twl is broken.  i386 allmodconfig with this monring's linux-next:

drivers/mfd/twl-core.c: In function 'twl_probe':
drivers/mfd/twl-core.c:1357: error: implicit declaration of function 'of_platform_populate'



More information about the devicetree-discuss mailing list