[PATCH 2/2] Fix GE0/GE1 init on ix2-200 as GE0 has no PHY

Jason Cooper jason at lakedaemon.net
Sun Mar 31 17:23:35 EDT 2013


Nigel,

On Sun, Mar 31, 2013 at 03:13:24PM +1100, Nigel Roberts wrote:

Please include a description here about the problem and how this fixed
it.

Also, please Cc: Alan Butler alanbutty12 at gmail.com, he's the original
author of the support for this board.  I'd like to know why it
(hopefully) worked for him, but doesn't work for you.

> ---
>  arch/arm/mach-kirkwood/board-iomega_ix2_200.c |    7 ++++++-
>  1 file changed, 6 insertions(+), 1 deletion(-)
> 
> diff --git a/arch/arm/mach-kirkwood/board-iomega_ix2_200.c b/arch/arm/mach-kirkwood/board-iomega_ix2_200.c
> index f655b26..e5f7041 100644
> --- a/arch/arm/mach-kirkwood/board-iomega_ix2_200.c
> +++ b/arch/arm/mach-kirkwood/board-iomega_ix2_200.c
> @@ -20,10 +20,15 @@ static struct mv643xx_eth_platform_data iomega_ix2_200_ge00_data = {
>  	.duplex         = DUPLEX_FULL,
>  };
>  
> +static struct mv643xx_eth_platform_data iomega_ix2_200_ge01_data = {
> +        .phy_addr       = MV643XX_ETH_PHY_ADDR(11),
> +};
> +
>  void __init iomega_ix2_200_init(void)
>  {
>  	/*
>  	 * Basic setup. Needs to be called early.
>  	 */
> -	kirkwood_ge01_init(&iomega_ix2_200_ge00_data);
> +	kirkwood_ge00_init(&iomega_ix2_200_ge00_data);
> +	kirkwood_ge01_init(&iomega_ix2_200_ge01_data);

This looks a lot more legit, have you tried removing .speed and .duplex
from ge00?  We see that a lot with boards converted from out-of-tree
legacy board files, I'm not certain those declarations are necessary.

thx,

Jason.



More information about the linux-arm-kernel mailing list