On Mon, Apr 01, 2013 at 01:44:24PM -0500, Rob Herring wrote: > On 04/01/2013 01:19 PM, Guenter Roeck wrote: > > of_get_mac_address() and of_get_phy_mode() are only provided if OF_NET > > is configured. While most callers check for the define, not all do, and > > those > > who do require #ifdef around the code. For those who don't, the missing > > check > > can result in errors such as > > How about removing the ifdef from those callers? > That would be the next step, after/if this one is accepted. If not, it doesn't make sense to waste my time.
Thanks, Guenter > Rob > > > > > arch/powerpc/sysdev/tsi108_dev.c:107:3: error: implicit declaration of > > function 'of_get_mac_address' [-Werror=implicit-function-declaration] > > arch/powerpc/sysdev/mv64x60_dev.c:253:2: error: implicit declaration of > > function 'of_get_mac_address' [-Werror=implicit-function-declaration] > > > > Provide dummy function declarations if OF_NET is not configured. This is > > safe > > because all callers do check the return values. If desired, at least some of > > the #ifdefs in the code can subsequently be removed. > > > > Cc: David Daney <david.da...@cavium.com> > > Signed-off-by: Guenter Roeck <li...@roeck-us.net> > > --- > > include/linux/of_net.h | 10 ++++++++++ > > 1 file changed, 10 insertions(+) > > > > diff --git a/include/linux/of_net.h b/include/linux/of_net.h > > index f474641..61bf53b 100644 > > --- a/include/linux/of_net.h > > +++ b/include/linux/of_net.h > > @@ -11,6 +11,16 @@ > > #include <linux/of.h> > > extern const int of_get_phy_mode(struct device_node *np); > > extern const void *of_get_mac_address(struct device_node *np); > > +#else > > +static inline const int of_get_phy_mode(struct device_node *np) > > +{ > > + return -ENODEV; > > +} > > + > > +static inline const void *of_get_mac_address(struct device_node *np) > > +{ > > + return NULL; > > +} > > #endif > > > > #endif /* __LINUX_OF_NET_H */ > > > > -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/