From mboxrd@z Thu Jan 1 00:00:00 1970 From: Lukasz Majewski Date: Wed, 16 May 2018 16:46:13 +0200 Subject: [U-Boot] [PATCH v1 16/21] display5: net: Add function to read ethaddr from iMX6 fuses In-Reply-To: References: <20180511145119.20942-1-lukma@denx.de> <20180511145119.20942-17-lukma@denx.de> Message-ID: <20180516164613.6d577eec@jawa> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Hi Joe, > Hi Lukasz, > > On Fri, May 11, 2018 at 9:51 AM, Lukasz Majewski > wrote: > > Signed-off-by: Lukasz Majewski > > --- > > > > board/liebherr/display5/display5.c | 21 +++++++++++++++++++++ > > 1 file changed, 21 insertions(+) > > > > diff --git a/board/liebherr/display5/display5.c > > b/board/liebherr/display5/display5.c index 4bade476a5..a3deba216c > > 100644 --- a/board/liebherr/display5/display5.c > > +++ b/board/liebherr/display5/display5.c > > @@ -254,6 +254,25 @@ static void setup_iomux_enet(void) > > 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); > > Generally this should be registered as a read_rom_hwaddr handler. This function seems like a generic approach for IMX SoC: arch/arm/mach-imx/mac.c On the other hand the fec_mxc.c driver seems to have such function: .read_rom_hwaddr = fecmxc_read_rom_hwaddr, (which latter on calls the above function). To use this function in the automatic way I would need to enable DM_ETH for this board. > > Then you won't be recreating the logic around what to do with it. > > > + > > + if (is_valid_ethaddr(enetaddr)) { > > + eth_env_set_enetaddr("ethaddr", enetaddr); > > + return 0; > > + } > > + > > + return 0; > > +} > > + > > int board_eth_init(bd_t *bd) > > { > > struct phy_device *phydev; > > @@ -268,6 +287,8 @@ int board_eth_init(bd_t *bd) > > if (ret) > > return ret; > > > > + setup_mac_from_fuse(); > > + > > bus = fec_get_miibus(IMX_FEC_BASE, -1); > > if (!bus) > > return -ENODEV; > > -- > > 2.11.0 > > > > _______________________________________________ > > U-Boot mailing list > > U-Boot at lists.denx.de > > https://lists.denx.de/listinfo/u-boot Best regards, Lukasz Majewski -- DENX Software Engineering GmbH, Managing Director: Wolfgang Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 488 bytes Desc: OpenPGP digital signature URL: