Hi Prafulla, On Tue, Nov 08, 2011 at 10:31:14PM +0100, Simon Guinot wrote: > From: Simon Guinot <simon.gui...@sequanux.org> > > Signed-off-by: Simon Guinot <simon.gui...@sequanux.org> > --- > > Changes in v2: > - fix asm-offsets.s removal > - make MAC address setup conditional to CONFIG_SYS_I2C_EEPROM_ADDR > > board/LaCie/netspace_v2/netspace_v2.c | 43 > +++++++++++++++++++++++++++++++++ > include/configs/netspace_v2.h | 1 + > 2 files changed, 44 insertions(+), 0 deletions(-)
Do you want me for some other modifications on this patch ? Regards, Simon > > diff --git a/board/LaCie/netspace_v2/netspace_v2.c > b/board/LaCie/netspace_v2/netspace_v2.c > index 7c4b15e..6938a43 100644 > --- a/board/LaCie/netspace_v2/netspace_v2.c > +++ b/board/LaCie/netspace_v2/netspace_v2.c > @@ -24,6 +24,7 @@ > #include <miiphy.h> > #include <netdev.h> > #include <command.h> > +#include <i2c.h> > #include <asm/arch/cpu.h> > #include <asm/arch/kirkwood.h> > #include <asm/arch/mpp.h> > @@ -89,6 +90,48 @@ int board_init(void) > return 0; > } > > +int misc_init_r(void) > +{ > +#if defined(CONFIG_CMD_I2C) && defined(CONFIG_SYS_I2C_EEPROM_ADDR) > + if (!getenv("ethaddr")) { > + ushort version; > + uchar mac[6]; > + int ret; > + > + /* I2C-0 for on-board EEPROM */ > + i2c_set_bus_num(0); > + > + /* Check layout version for EEPROM data */ > + ret = i2c_read(CONFIG_SYS_I2C_EEPROM_ADDR, 0, > + CONFIG_SYS_I2C_EEPROM_ADDR_LEN, > + (uchar *) &version, 2); > + if (ret != 0) { > + printf("Error: failed to read I2C EEPROM @%02x\n", > + CONFIG_SYS_I2C_EEPROM_ADDR); > + return ret; > + } > + version = be16_to_cpu(version); > + if (version < 1 || version > 3) { > + printf("Error: unknown version %d for EEPROM data\n", > + version); > + return -1; > + } > + > + /* Read Ethernet MAC address from EEPROM */ > + ret = i2c_read(CONFIG_SYS_I2C_EEPROM_ADDR, 2, > + CONFIG_SYS_I2C_EEPROM_ADDR_LEN, mac, 6); > + if (ret != 0) { > + printf("Error: failed to read I2C EEPROM @%02x\n", > + CONFIG_SYS_I2C_EEPROM_ADDR); > + return ret; > + } > + eth_setenv_enetaddr("ethaddr", mac); > + } > +#endif /* CONFIG_CMD_I2C && CONFIG_SYS_I2C_EEPROM_ADDR */ > + > + return 0; > +} > + > void mv_phy_88e1116_init(char *name) > { > u16 reg; > diff --git a/include/configs/netspace_v2.h b/include/configs/netspace_v2.h > index bb27ed7..1ddf4b4 100644 > --- a/include/configs/netspace_v2.h > +++ b/include/configs/netspace_v2.h > @@ -87,6 +87,7 @@ > * Ethernet Driver configuration > */ > #ifdef CONFIG_CMD_NET > +#define CONFIG_MISC_INIT_R /* Call misc_init_r() to initialize MAC address */ > #define CONFIG_MVGBE_PORTS {1, 0} /* enable port 0 only */ > #define CONFIG_NETCONSOLE > #endif > -- > 1.7.5.1 > > _______________________________________________ > U-Boot mailing list > U-Boot@lists.denx.de > http://lists.denx.de/mailman/listinfo/u-boot
signature.asc
Description: Digital signature
_______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot