[PATCH 5/5] fec: add support for IIM stored mac address
Baruch Siach
baruch at tkos.co.il
Mon Aug 16 04:52:54 EDT 2010
Hi Sascha,
On Mon, Aug 16, 2010 at 10:45:06AM +0200, Sascha Hauer wrote:
> On Sun, Aug 15, 2010 at 04:39:28PM +0300, Baruch Siach wrote:
> > This patch adds support for i.MX25 only, because that's what I have. Extending
> > this to other i.MX chip should be trivial, given the right IIM_MAC_ADDR define.
>
> This needs to be ifdeffed because this define is not present for
> !i.MX25.
OK. I hoped we can avoid the ugly ifdef, but, obviously, this is not possible
here.
baruch
> > Signed-off-by: Baruch Siach <baruch at tkos.co.il>
> > ---
> > arch/arm/mach-imx/include/mach/imx25-regs.h | 1 +
> > drivers/net/fec_imx.c | 11 +++++++++++
> > 2 files changed, 12 insertions(+), 0 deletions(-)
> >
> > diff --git a/arch/arm/mach-imx/include/mach/imx25-regs.h b/arch/arm/mach-imx/include/mach/imx25-regs.h
> > index f8908f2..ddd3e04 100644
> > --- a/arch/arm/mach-imx/include/mach/imx25-regs.h
> > +++ b/arch/arm/mach-imx/include/mach/imx25-regs.h
> > @@ -142,6 +142,7 @@
> >
> > /* IIM fuse definitions */
> > #define IIM_UID 0x820
> > +#define IIM_MAC_ADDR 0x868
> >
> > #define IIM_BANK_SIZE 32 /* excluding alignment padding for each row */
> > #define IIM_BANK0_BASE (IMX_IIM_BASE + 0x800)
> > diff --git a/drivers/net/fec_imx.c b/drivers/net/fec_imx.c
> > index 40a7543..c29119c 100644
> > --- a/drivers/net/fec_imx.c
> > +++ b/drivers/net/fec_imx.c
> > @@ -32,6 +32,7 @@
> > #include <mach/imx-regs.h>
> > #include <clock.h>
> > #include <mach/clock.h>
> > +#include <mach/generic.h>
> > #include <xfuncs.h>
> >
> > #include "fec_imx.h"
> > @@ -235,6 +236,16 @@ static void fec_rbd_clean(int last, struct buffer_descriptor *pRbd)
> >
> > static int fec_get_hwaddr(struct eth_device *dev, unsigned char *mac)
> > {
> > + int i;
> > +
> > + if (cpu_is_mx25()) {
> > + /* get MAC address from the IMM fusebox */
> > + for (i = 0; i < 6; i++)
> > + mac[i] = readb(IMX_IIM_BASE + IIM_MAC_ADDR + i*4);
> > +
> > + return 0;
> > + }
> > +
> > /* no eeprom */
> > return -1;
> > }
--
~. .~ Tk Open Systems
=}------------------------------------------------ooO--U--Ooo------------{=
- baruch at tkos.co.il - tel: +972.2.679.5364, http://www.tkos.co.il -
More information about the barebox
mailing list