Subject: [PATCHv4] ARM: at91: Fix link breakage when !CONFIG_PHYLIB

From: [email-masked] (Nicolas Ferre)
Date: Mon, 10 Jun 2013 10:27:14 +0200

On 05/06/2013 11:50, Alexandre Belloni :
> Fixes:
> arch/arm/mach-at91/built-in.o: In function `ksz9021rn_phy_fixup':
> :(.text+0x1174): undefined reference to `mdiobus_write'
> :(.text+0x1188): undefined reference to `mdiobus_write'
> :(.text+0x119c): undefined reference to `mdiobus_write'
> :(.text+0x11b0): undefined reference to `mdiobus_write'
> arch/arm/mach-at91/built-in.o: In function `sama5_dt_device_init':
> :(.init.text+0x1e34): undefined reference to `phy_register_fixup_for_uid'
>
> when CONFIG_PHYLIB is not selected.
>
> Signed-off-by: Alexandre Belloni <[email-masked]>

Acked-by: Nicolas Ferre <[email-masked]>

As Arnd told it was not so urgent and that it seems that we have to be 
strict for sending other 3.10-fixes, I stack this one on a at91-3.11-soc 
branch.

Thanks, best regards,

> ---
>   arch/arm/mach-at91/Kconfig          | 1 +
>   arch/arm/mach-at91/board-dt-sama5.c | 3 ++-
>   2 files changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/arch/arm/mach-at91/Kconfig b/arch/arm/mach-at91/Kconfig
> index 0280238..699b71e 100644
> --- a/arch/arm/mach-at91/Kconfig
> +++ b/arch/arm/mach-at91/Kconfig
> @@ -163,6 +163,7 @@ config MACH_SAMA5_DT
>   	bool "Atmel SAMA5 Evaluation Kits with device-tree support"
>   	depends on SOC_SAMA5
>   	select USE_OF
> +	select PHYLIB if NETDEVICES
>   	help
>   	  Select this if you want to experiment device-tree with
>   	  an Atmel Evaluation Kit.
> diff --git a/arch/arm/mach-at91/board-dt-sama5.c b/arch/arm/mach-at91/board-dt-sama5.c
> index 705305e..ad95f6a 100644
> --- a/arch/arm/mach-at91/board-dt-sama5.c
> +++ b/arch/arm/mach-at91/board-dt-sama5.c
> @@ -62,7 +62,8 @@ static int ksz9021rn_phy_fixup(struct phy_device *phy)
>
>   static void __init sama5_dt_device_init(void)
>   {
> -	if (of_machine_is_compatible("atmel,sama5d3xcm"))
> +	if (of_machine_is_compatible("atmel,sama5d3xcm") &&
> +	    IS_ENABLED(CONFIG_PHYLIB))
>   		phy_register_fixup_for_uid(PHY_ID_KSZ9021, MICREL_PHY_ID_MASK,
>   			ksz9021rn_phy_fixup);
>
>

-- 
Nicolas Ferre