Re: [PATCH] of_net.h: Provide dummy functions if OF_NET is not configured

From: Rob Herring
Date: Mon Apr 01 2013 - 14:44:33 EST


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?

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.daney@xxxxxxxxxx>
> Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>
> ---
> 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 majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/