RE: [RFC PATCH 2/5] OMAP2+: add cpu id register to MAC addresshelper

From: Premi, Sanjeev
Date: Fri Mar 18 2011 - 10:38:20 EST


> -----Original Message-----
> From: linux-omap-owner@xxxxxxxxxxxxxxx
> [mailto:linux-omap-owner@xxxxxxxxxxxxxxx] On Behalf Of Arnd Bergmann
> Sent: Friday, March 18, 2011 2:05 PM
> To: Andy Green
> Cc: linux-kernel@xxxxxxxxxxxxxxx; linux-usb@xxxxxxxxxxxxxxx;
> linux-omap@xxxxxxxxxxxxxxx;
> linux-arm-kernel@xxxxxxxxxxxxxxxxxxx; patches@xxxxxxxxxx; Andy Green
> Subject: Re: [RFC PATCH 2/5] OMAP2+: add cpu id register to
> MAC address helper
>
> On Saturday 12 March 2011, Andy Green wrote:
> > Introduce a generic helper function that can set a MAC address using
> > data from the OMAP unqiue CPU ID register.
> >
> > Signed-off-by: Andy Green <andy.green@xxxxxxxxxx>
> > ---
> >
> > arch/arm/mach-omap2/id.c | 13 +++++++++++++
> > arch/arm/mach-omap2/include/mach/id.h | 1 +
> > 2 files changed, 14 insertions(+), 0 deletions(-)
> >
> > diff --git a/arch/arm/mach-omap2/id.c b/arch/arm/mach-omap2/id.c
> > index 5f9086c..fc69ec5 100644
> > --- a/arch/arm/mach-omap2/id.c
> > +++ b/arch/arm/mach-omap2/id.c
> > @@ -506,3 +506,16 @@ void __init
> omap2_set_globals_tap(struct omap_globals *omap2_globals)
> > else
> > tap_prod_id = 0x0208;
> > }
> > +
> > +
> > +void omap2_die_id_to_mac(u8 *mac, int length)
> > +{
> > + struct omap_die_id odi;
> > +
> > + omap_get_die_id(&odi);
> > + memcpy(mac, &odi.id_0, length);
> > +
> > + /* mark it as not multicast and outside official
> 80211 MAC namespace */
> > +
> > + mac[0] = (mac[0] & ~1) | 2;
> > +}
>
> This is a pretty clever trick, but it's not an official
> globally unique MAC
> address, right?

[sp] This 'trick' has been tried earlier in u-boot. See:
http://www.mail-archive.com/u-boot@xxxxxxxxxxxxx/msg19915.html

I am also not sure whether DIE_ID would really be unique.

~sanjeev

> Maybe we can ask TI to officially request a
> MAC address range
> for OMAP SoCs and document an official procedure to compute it.
>
> Arnd
> --
> To unsubscribe from this list: send the line "unsubscribe
> linux-omap" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> --
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/