[U-Boot] [PATCH v6 2/4] mx28: Allow to set MAC address for the two FECs

Stefano Babic sbabic at denx.de
Tue Dec 20 15:39:17 CET 2011


On 20/12/2011 14:53, Fabio Estevam wrote:
> MX28 has two built-in FECs (Fast Ethernet Controller).
> 
> OCOTP register can be used to only store 4 bytes of MAC addresses.
> 
> In order to workaround this limitation, let the MAC address of FEC1 be
> the FEC0 address plus one.
> 
> Signed-off-by: Fabio Estevam <fabio.estevam at freescale.com>
> ---

Hi Fabio,

> Changes since v5:
>  No changes. Newly introduced on this series
> 
>  arch/arm/cpu/arm926ejs/mx28/mx28.c |    8 ++++++--
>  drivers/net/fec_mxc.c              |   16 ++++++++++++++++
>  drivers/net/fec_mxc.h              |    1 +
>  3 files changed, 23 insertions(+), 2 deletions(-)
> 
> diff --git a/arch/arm/cpu/arm926ejs/mx28/mx28.c b/arch/arm/cpu/arm926ejs/mx28/mx28.c
> index a25814e..79b4001 100644
> --- a/arch/arm/cpu/arm926ejs/mx28/mx28.c
> +++ b/arch/arm/cpu/arm926ejs/mx28/mx28.c
> @@ -227,7 +227,7 @@ void set_mac_vendor(char *mac)
>  
>  #define	MXS_OCOTP_MAX_TIMEOUT	1000000
>  
> -void imx_get_mac_from_fuse(char *mac)
> +void mx28_get_mac_from_fuse(int dev_id, char *mac)
>  {

but imx_get_mac_from_fuse() is common to all IMX SOCs. Why do we need
another name only for MX28 ? I think it is better to adjust
imx_get_mac_from_fuse() to allow a second parameter (dev_id), that can
be ignored in other SOCs implementations.

>  	struct mx28_ocotp_regs *ocotp_regs =
>  		(struct mx28_ocotp_regs *)MXS_OCOTP_BASE;
> @@ -249,10 +249,14 @@ void imx_get_mac_from_fuse(char *mac)
>  	mac[3] = (data >> 16) & 0xff;
>  	mac[4] = (data >> 8) & 0xff;
>  	mac[5] = data & 0xff;
> +	/* Assume that FEC1 MAC address is MAC0 + 1 */
> +	if (dev_id == 1)
> +		mac[5]+= 1;
> +
>  	set_mac_vendor(mac);

Should be not better that the additional mac is computed by the (weak)
board function ? Then it is responsibility of the board and his
maintainer to change (if needed) the MAC for the second interface.

Best regards,
Stefano Babic

-- 
=====================================================================
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-0 Fax: +49-8142-66989-80  Email: office at denx.de
=====================================================================


More information about the U-Boot mailing list