[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