mirror of
https://github.com/Stichting-MINIX-Research-Foundation/u-boot.git
synced 2025-09-16 23:47:49 -04:00
xpedite1k: Remove support for reading MACs from EEPROM
By default, the XPedite1000 comes installed with xMon, a proprietary bootloader. xMon stores its MAC address in an onboard EEPROM. Rather than requiring a non-standard location in the EEPROM to be reserved for MAC addresses, store the MAC addresses in U-Boot's standard environment. A U-Boot application or OS application can be used to migrate xMon MAC addresses to U-Boot's environment if necessary. Signed-off-by: Peter Tyser <ptyser@xes-inc.com> Signed-off-by: Stefan Roese <sr@denx.de>
This commit is contained in:
parent
108d6d0099
commit
086ff34a3a
@ -235,64 +235,4 @@ ulong post_word_load (void)
|
|||||||
|
|
||||||
return *save_addr;
|
return *save_addr;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/*-----------------------------------------------------------------------------
|
|
||||||
* board_get_enetaddr -- Read the MAC Addresses in the I2C EEPROM
|
|
||||||
*-----------------------------------------------------------------------------
|
|
||||||
*/
|
|
||||||
static int read_i2c;
|
|
||||||
static void board_get_enetaddr(uchar *enet)
|
|
||||||
{
|
|
||||||
int i;
|
|
||||||
unsigned char buff[0x100], *cp;
|
|
||||||
|
|
||||||
if (read_i2c)
|
|
||||||
return;
|
|
||||||
|
|
||||||
/* Initialize I2C */
|
|
||||||
i2c_init (CONFIG_SYS_I2C_SPEED, CONFIG_SYS_I2C_SLAVE);
|
|
||||||
|
|
||||||
/* Read 256 bytes in EEPROM */
|
|
||||||
i2c_read (0x50, 0, 1, buff, 0x100);
|
|
||||||
|
|
||||||
cp = &buff[0xF4];
|
|
||||||
for (i = 0; i < 6; i++,cp++)
|
|
||||||
enet[i] = *cp;
|
|
||||||
|
|
||||||
printf("MAC address = %pM\n", enet);
|
|
||||||
read_i2c = 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
int misc_init_r(void)
|
|
||||||
{
|
|
||||||
uchar enetaddr[6], i2c_enetaddr[6];
|
|
||||||
|
|
||||||
if (!eth_getenv_enetaddr("ethaddr", enetaddr)) {
|
|
||||||
board_get_enetaddr(i2c_enetaddr);
|
|
||||||
eth_setenv_enetaddr("ethaddr", i2c_enetaddr);
|
|
||||||
}
|
|
||||||
|
|
||||||
#ifdef CONFIG_HAS_ETH1
|
|
||||||
if (!eth_getenv_enetaddr("eth1addr", enetaddr)) {
|
|
||||||
board_get_enetaddr(i2c_enetaddr);
|
|
||||||
eth_setenv_enetaddr("eth1addr", i2c_enetaddr);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef CONFIG_HAS_ETH2
|
|
||||||
if (!eth_getenv_enetaddr("eth2addr", enetaddr)) {
|
|
||||||
board_get_enetaddr(i2c_enetaddr);
|
|
||||||
eth_setenv_enetaddr("eth2addr", i2c_enetaddr);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef CONFIG_HAS_ETH3
|
|
||||||
if (!eth_getenv_enetaddr("eth3addr", enetaddr)) {
|
|
||||||
board_get_enetaddr(i2c_enetaddr);
|
|
||||||
eth_setenv_enetaddr("eth3addr", i2c_enetaddr);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
@ -38,7 +38,6 @@
|
|||||||
#define CONFIG_440 1
|
#define CONFIG_440 1
|
||||||
#define CONFIG_440GX 1 /* 440 GX */
|
#define CONFIG_440GX 1 /* 440 GX */
|
||||||
#define CONFIG_BOARD_EARLY_INIT_F 1 /* Call board_pre_init */
|
#define CONFIG_BOARD_EARLY_INIT_F 1 /* Call board_pre_init */
|
||||||
#define CONFIG_MISC_INIT_R
|
|
||||||
#define CONFIG_SYS_CLK_FREQ 33333333 /* external freq to pll */
|
#define CONFIG_SYS_CLK_FREQ 33333333 /* external freq to pll */
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user