Date: Fri, 8 Sep 2006 20:34:58 GMT From: Warner Losh <imp@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 105855 for review Message-ID: <200609082034.k88KYwpN031489@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=105855 Change 105855 by imp@imp_lighthouse on 2006/09/08 20:34:43 Read MAC address from eeprom. Affected files ... .. //depot/projects/arm/src/sys/boot/arm/at91/boot2/Makefile#4 edit .. //depot/projects/arm/src/sys/boot/arm/at91/boot2/boot2.c#12 edit Differences ... ==== //depot/projects/arm/src/sys/boot/arm/at91/boot2/Makefile#4 (text+ko) ==== @@ -6,7 +6,7 @@ P=boot2 FILES=${P} -SRCS=arm_init.S boot2.c ashldi3.c divsi3.S +SRCS=arm_init.S boot2.c ee.c ashldi3.c divsi3.S NO_MAN= LDFLAGS=-e 0 -T ${.CURDIR}/../linker.cfg OBJS+= ${SRCS:N*.h:R:S/$/.o/g} @@ -14,6 +14,7 @@ .include <bsd.prog.mk> CFLAGS+= \ + -I${.CURDIR}/../bootspi \ -I${.CURDIR}/../../../common \ -I${.CURDIR}/../../../.. \ -D_KERNEL \ ==== //depot/projects/arm/src/sys/boot/arm/at91/boot2/boot2.c#12 (text+ko) ==== @@ -29,6 +29,7 @@ #include "emac.h" #include "lib.h" #include "sd-card.h" +#include "ee.h" #define SECOND 18 /* Circa that many ticks in a second. */ @@ -227,6 +228,26 @@ } #endif +static void +MacFromEE() +{ + uint32_t sig; + uint8_t euid64[8]; + + EERead(0, (uint8_t *)&sig, sizeof(sig)); + if (sig != 0xaa55aa55) { + printf("Bad signature %x\r\n", sig); + return; + } + EERead(48, euid64, 8); + mac[0] = euid64[0]; + mac[1] = euid64[1]; + mac[2] = euid64[4]; + mac[3] = euid64[5]; + mac[4] = euid64[6]; + mac[6] = euid64[7]; +} + int main(void) { @@ -242,11 +263,13 @@ fpga_load(); printf("done\r\n"); #endif + EEInit(); + MacFromEE(); EMAC_Init(); sdcard_init(); EMAC_SetMACAddress(mac); - dmadat = (void *)(0x20000000 + (1 << 20)); + dmadat = (void *)(0x20000000 + (16 << 20)); /* Process configuration file */ autoboot = 1; @@ -345,7 +368,6 @@ } #endif addr = eh.e_entry; - printf("In 5, 4, 3, 2, 1\n"); ((void(*)(int))addr)(RB_BOOTINFO | (opts & RBX_MASK)); }
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200609082034.k88KYwpN031489>