display5: net: Add function to read ethaddr from iMX6 fuses
Signed-off-by: Lukasz Majewski <lukma@denx.de>
This commit is contained in:
parent
ea4584d73d
commit
c451713abf
@ -254,6 +254,25 @@ static void setup_iomux_enet(void)
|
|||||||
gpio_direction_input(IMX_GPIO_NR(1, 28)); /*INT#_GBE*/
|
gpio_direction_input(IMX_GPIO_NR(1, 28)); /*INT#_GBE*/
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int setup_mac_from_fuse(void)
|
||||||
|
{
|
||||||
|
unsigned char enetaddr[6];
|
||||||
|
int ret;
|
||||||
|
|
||||||
|
ret = eth_env_get_enetaddr("ethaddr", enetaddr);
|
||||||
|
if (ret) /* ethaddr is already set */
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
imx_get_mac_from_fuse(0, enetaddr);
|
||||||
|
|
||||||
|
if (is_valid_ethaddr(enetaddr)) {
|
||||||
|
eth_env_set_enetaddr("ethaddr", enetaddr);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
int board_eth_init(bd_t *bd)
|
int board_eth_init(bd_t *bd)
|
||||||
{
|
{
|
||||||
struct phy_device *phydev;
|
struct phy_device *phydev;
|
||||||
@ -268,6 +287,8 @@ int board_eth_init(bd_t *bd)
|
|||||||
if (ret)
|
if (ret)
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
|
setup_mac_from_fuse();
|
||||||
|
|
||||||
bus = fec_get_miibus(IMX_FEC_BASE, -1);
|
bus = fec_get_miibus(IMX_FEC_BASE, -1);
|
||||||
if (!bus)
|
if (!bus)
|
||||||
return -ENODEV;
|
return -ENODEV;
|
||||||
|
Loading…
Reference in New Issue
Block a user