diff options
author | Mike Frysinger <vapier@gentoo.org> | 2008-10-12 23:08:03 -0400 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2009-06-14 20:01:08 -0400 |
commit | cb4b5e874f3c9b882a6f4394bbebbbd91fd01bbf (patch) | |
tree | f90279f9093ff09f7aeb44e31462ff7273e6c6f6 /board/bf537-pnav/bf537-pnav.c | |
parent | 59e4be945b6469e31eee721e0bcdccf4940d75ac (diff) | |
download | u-boot-midas-cb4b5e874f3c9b882a6f4394bbebbbd91fd01bbf.tar.gz u-boot-midas-cb4b5e874f3c9b882a6f4394bbebbbd91fd01bbf.tar.bz2 u-boot-midas-cb4b5e874f3c9b882a6f4394bbebbbd91fd01bbf.zip |
Blackfin: bf537-pnav: new board port
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Diffstat (limited to 'board/bf537-pnav/bf537-pnav.c')
-rw-r--r-- | board/bf537-pnav/bf537-pnav.c | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/board/bf537-pnav/bf537-pnav.c b/board/bf537-pnav/bf537-pnav.c new file mode 100644 index 0000000000..12cfefa8ff --- /dev/null +++ b/board/bf537-pnav/bf537-pnav.c @@ -0,0 +1,56 @@ +/* + * U-boot - main board file + * + * Copyright (c) 2005-2009 Analog Devices Inc. + * + * Licensed under the GPL-2 or later. + */ + +#include <common.h> +#include <config.h> +#include <command.h> +#include <netdev.h> +#include <net.h> +#include <asm/blackfin.h> +#include <asm/net.h> + +DECLARE_GLOBAL_DATA_PTR; + +int checkboard(void) +{ + printf("Board: ADI BF537 PNAV board\n"); + printf(" Support: http://blackfin.uclinux.org/\n"); + return 0; +} + +phys_size_t initdram(int board_type) +{ + gd->bd->bi_memstart = CONFIG_SYS_SDRAM_BASE; + gd->bd->bi_memsize = CONFIG_SYS_MAX_RAM_SIZE; + return gd->bd->bi_memsize; +} + +#ifdef CONFIG_BFIN_MAC +static void board_init_enetaddr(uchar *mac_addr) +{ + puts("Warning: Generating 'random' MAC address\n"); + bfin_gen_rand_mac(mac_addr); + eth_setenv_enetaddr("ethaddr", mac_addr); +} + +int board_eth_init(bd_t *bis) +{ + return bfin_EMAC_initialize(bis); +} +#endif + +int misc_init_r(void) +{ +#ifdef CONFIG_BFIN_MAC + uchar enetaddr[6]; + if (!eth_getenv_enetaddr("ethaddr", enetaddr)) + board_init_enetaddr(enetaddr); +#endif + + return 0; +} |