Hi FriendlyARM, Am 15.05.2017 um 03:15 schrieb Andreas Färber: > diff --git a/board/amlogic/nanopi-k2/nanopi-k2.c > b/board/amlogic/nanopi-k2/nanopi-k2.c > new file mode 100644 > index 0000000000..b61daaa4a7 > --- /dev/null > +++ b/board/amlogic/nanopi-k2/nanopi-k2.c > @@ -0,0 +1,54 @@ > +/* > + * (C) Copyright 2016 Beniamino Galvani <b.galv...@gmail.com> > + * > + * SPDX-License-Identifier: GPL-2.0+ > + */ > + > +#include <common.h> > +#include <asm/io.h> > +#include <asm/arch/gxbb.h> > +#include <asm/arch/sm.h> > +#include <dm/platdata.h> > +#include <phy.h> > + > +#define EFUSE_SN_OFFSET 20 > +#define EFUSE_SN_SIZE 16 > +#define EFUSE_MAC_OFFSET 52 > +#define EFUSE_MAC_SIZE 6 > + > +int board_init(void) > +{ > + return 0; > +} > + > +int misc_init_r(void) > +{ > + u8 mac_addr[EFUSE_MAC_SIZE]; > + ssize_t len; > + > + /* Set RGMII mode */ > + setbits_le32(GXBB_ETH_REG_0, GXBB_ETH_REG_0_PHY_INTF | > + GXBB_ETH_REG_0_TX_PHASE(1) | > + GXBB_ETH_REG_0_TX_RATIO(4) | > + GXBB_ETH_REG_0_PHY_CLK_EN | > + GXBB_ETH_REG_0_CLK_EN); > + > + /* Enable power and clock gate */ > + setbits_le32(GXBB_GCLK_MPEG_1, GXBB_GCLK_MPEG_1_ETH); > + clrbits_le32(GXBB_MEM_PD_REG_0, GXBB_MEM_PD_REG_0_ETH_MASK); > + > + /* Reset PHY on GPIOZ_14 */ > + clrbits_le32(GXBB_GPIO_EN(3), BIT(14)); > + clrbits_le32(GXBB_GPIO_OUT(3), BIT(14)); > + mdelay(10); > + setbits_le32(GXBB_GPIO_OUT(3), BIT(14)); > + > + if (!eth_getenv_enetaddr("ethaddr", mac_addr)) { > + len = meson_sm_read_efuse(EFUSE_MAC_OFFSET, > + mac_addr, EFUSE_MAC_SIZE); > + if (len == EFUSE_MAC_SIZE && is_valid_ethaddr(mac_addr)) > + eth_setenv_enetaddr("ethaddr", mac_addr);
This code copied from odroid-c2 is not working, I always get a random MAC address. The downstream U-Boot has no code in board_eth_init() to read the efuse, unlike Hardkernel's. Is the MAC address not programmed into K2's efuse? https://github.com/friendlyarm/u-boot/blob/nanopi-k2-v2015.01/board/amlogic/nanopi-k2/eth_setup.c https://github.com/hardkernel/u-boot/blob/odroidc2-v2015.01/board/hardkernel/odroidc2/odroidc2-eth.c > + } > + > + return 0; > +} [snip] Regards, Andreas -- SUSE Linux GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany GF: Felix Imendörffer, Jane Smithard, Graham Norton HRB 21284 (AG Nürnberg) _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot