diff options
| -rw-r--r-- | board/xilinx/zynq/board.c | 6 | ||||
| -rw-r--r-- | drivers/net/zynq_gem.c | 8 | ||||
| -rw-r--r-- | include/configs/zynq.h | 1 | ||||
| -rw-r--r-- | include/netdev.h | 2 | 
4 files changed, 8 insertions, 9 deletions
| diff --git a/board/xilinx/zynq/board.c b/board/xilinx/zynq/board.c index 3af18f0d5..546adc888 100644 --- a/board/xilinx/zynq/board.c +++ b/board/xilinx/zynq/board.c @@ -42,10 +42,12 @@ int board_eth_init(bd_t *bis)  #if defined(CONFIG_ZYNQ_GEM)  # if defined(CONFIG_ZYNQ_GEM0) -	ret |= zynq_gem_initialize(bis, ZYNQ_GEM_BASEADDR0); +	ret |= zynq_gem_initialize(bis, ZYNQ_GEM_BASEADDR0, +						CONFIG_ZYNQ_GEM_PHY_ADDR0);  # endif  # if defined(CONFIG_ZYNQ_GEM1) -	ret |= zynq_gem_initialize(bis, ZYNQ_GEM_BASEADDR1); +	ret |= zynq_gem_initialize(bis, ZYNQ_GEM_BASEADDR1, +						CONFIG_ZYNQ_GEM_PHY_ADDR1);  # endif  #endif  	return ret; diff --git a/drivers/net/zynq_gem.c b/drivers/net/zynq_gem.c index 2d717e910..316816d1c 100644 --- a/drivers/net/zynq_gem.c +++ b/drivers/net/zynq_gem.c @@ -427,7 +427,7 @@ static int zynq_gem_miiphy_write(const char *devname, uchar addr,  	return phywrite(dev, addr, reg, val);  } -int zynq_gem_initialize(bd_t *bis, int base_addr) +int zynq_gem_initialize(bd_t *bis, int base_addr, int phy_addr)  {  	struct eth_device *dev;  	struct zynq_gem_priv *priv; @@ -443,11 +443,7 @@ int zynq_gem_initialize(bd_t *bis, int base_addr)  	}  	priv = dev->priv; -#ifdef CONFIG_PHY_ADDR -	priv->phyaddr = CONFIG_PHY_ADDR; -#else -	priv->phyaddr = -1; -#endif +	priv->phyaddr = phy_addr;  	sprintf(dev->name, "Gem.%x", base_addr); diff --git a/include/configs/zynq.h b/include/configs/zynq.h index ebe1b1bc0..3b23354bc 100644 --- a/include/configs/zynq.h +++ b/include/configs/zynq.h @@ -54,6 +54,7 @@  #define CONFIG_NET_MULTI  #define CONFIG_ZYNQ_GEM  #define CONFIG_ZYNQ_GEM0 +#define CONFIG_ZYNQ_GEM_PHY_ADDR0	7  #if defined(CONFIG_ZYNQ_DCC)  # define CONFIG_ARM_DCC diff --git a/include/netdev.h b/include/netdev.h index fd3e243c7..81117b19c 100644 --- a/include/netdev.h +++ b/include/netdev.h @@ -104,7 +104,7 @@ int xilinx_emaclite_initialize(bd_t *bis, unsigned long base_addr,  							int txpp, int rxpp);  int xilinx_ll_temac_eth_init(bd_t *bis, unsigned long base_addr, int flags,  						unsigned long ctrl_addr); -int zynq_gem_initialize(bd_t *bis, int base_addr); +int zynq_gem_initialize(bd_t *bis, int base_addr, int phy_addr);  /*   * As long as the Xilinx xps_ll_temac ethernet driver has not its own interface   * exported by a public hader file, we need a global definition at this point. |