[U-Boot] [PATCH 1/4] PXA: Drop CERF250 board

Marek Vasut marek.vasut at gmail.com
Mon Nov 28 18:21:41 CET 2011


> Hi Marek,
> 
> On Fri, Nov 25, 2011 at 10:53 AM, Marek Vasut <marek.vasut at gmail.com> wrote:
> > The board is unmaintained and maintainer doesn't respond.
> 
> Should this and the other patches be version 2, or perhaps 3?

Probably.
> 
> Also I like Mike's suggested phrasing (something like "The board
> doesn't build and maintainer doesn't respond") since if it built OK we
> would presumably just leave it.

I think they don't build, at least that's how it was when I recently tried. And 
since I don't see any opposing force, let's drop them.

M
> 
> Regards,
> Simon
> 
> > Signed-off-by: Marek Vasut <marek.vasut at gmail.com>
> > Cc: Simon Glass <sjg at chromium.org>
> > Cc: Anatolij Gustschin <agust at denx.de>
> > ---
> >  MAINTAINERS               |    4 -
> >  board/cerf250/Makefile    |   43 -----
> >  board/cerf250/cerf250.c   |   85 ---------
> >  board/cerf250/flash.c     |  429
> > --------------------------------------------- boards.cfg              
> >  |    1 -
> >  doc/README.scrapyard      |    1 +
> >  include/configs/cerf250.h |  229 ------------------------
> >  7 files changed, 1 insertions(+), 791 deletions(-)
> >  delete mode 100644 board/cerf250/Makefile
> >  delete mode 100644 board/cerf250/cerf250.c
> >  delete mode 100644 board/cerf250/flash.c
> >  delete mode 100644 include/configs/cerf250.h
> > 
> > diff --git a/MAINTAINERS b/MAINTAINERS
> > index 37bbb34..3835154 100644
> > --- a/MAINTAINERS
> > +++ b/MAINTAINERS
> > @@ -711,10 +711,6 @@ Sergey Kubushyn <ksi at koi8.net>
> >        SONATA          ARM926EJS
> >        SCHMOOGIE       ARM926EJS
> > 
> > -Prakash Kumar <prakash at embedx.com>
> > -
> > -       cerf250         xscale/pxa
> > -
> >  Vipin Kumar <vipin.kumar at st.com>
> > 
> >        spear300        ARM926EJS (spear300 Soc)
> > diff --git a/board/cerf250/Makefile b/board/cerf250/Makefile
> > deleted file mode 100644
> > index cf4742e..0000000
> > --- a/board/cerf250/Makefile
> > +++ /dev/null
> > @@ -1,43 +0,0 @@
> > -#
> > -# (C) Copyright 2000-2006
> > -# Wolfgang Denk, DENX Software Engineering, wd at denx.de.
> > -#
> > -# See file CREDITS for list of people who contributed to this
> > -# project.
> > -#
> > -# This program is free software; you can redistribute it and/or
> > -# modify it under the terms of the GNU General Public License as
> > -# published by the Free Software Foundation; either version 2 of
> > -# the License, or (at your option) any later version.
> > -#
> > -# This program is distributed in the hope that it will be useful,
> > -# but WITHOUT ANY WARRANTY; without even the implied warranty of
> > -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
> > -# GNU General Public License for more details.
> > -#
> > -# You should have received a copy of the GNU General Public License
> > -# along with this program; if not, write to the Free Software
> > -# Foundation, Inc., 59 Temple Place, Suite 330, Boston,
> > -# MA 02111-1307 USA
> > -#
> > -
> > -include $(TOPDIR)/config.mk
> > -
> > -LIB    = $(obj)lib$(BOARD).o
> > -
> > -COBJS  := cerf250.o flash.o
> > -
> > -SRCS   := $(COBJS:.o=.c)
> > -OBJS   := $(addprefix $(obj),$(COBJS))
> > -
> > -$(LIB):        $(obj).depend $(OBJS)
> > -       $(call cmd_link_o_target, $(OBJS))
> > -
> > -########################################################################
> > # -
> > -# defines $(obj).depend target
> > -include $(SRCTREE)/rules.mk
> > -
> > -sinclude $(obj).depend
> > -
> > -########################################################################
> > # diff --git a/board/cerf250/cerf250.c b/board/cerf250/cerf250.c
> > deleted file mode 100644
> > index 043afea..0000000
> > --- a/board/cerf250/cerf250.c
> > +++ /dev/null
> > @@ -1,85 +0,0 @@
> > -/*
> > - * (C) Copyright 2002
> > - * Kyle Harris, Nexus Technologies, Inc. kharris at nexus-tech.net
> > - *
> > - * (C) Copyright 2002
> > - * Sysgo Real-Time Solutions, GmbH <www.elinos.com>
> > - * Marius Groeger <mgroeger at sysgo.de>
> > - *
> > - * See file CREDITS for list of people who contributed to this
> > - * project.
> > - *
> > - * This program is free software; you can redistribute it and/or
> > - * modify it under the terms of the GNU General Public License as
> > - * published by the Free Software Foundation; either version 2 of
> > - * the License, or (at your option) any later version.
> > - *
> > - * This program is distributed in the hope that it will be useful,
> > - * but WITHOUT ANY WARRANTY; without even the implied warranty of
> > - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
> > - * GNU General Public License for more details.
> > - *
> > - * You should have received a copy of the GNU General Public License
> > - * along with this program; if not, write to the Free Software
> > - * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
> > - * MA 02111-1307 USA
> > - */
> > -
> > -#include <common.h>
> > -#include <netdev.h>
> > -
> > -DECLARE_GLOBAL_DATA_PTR;
> > -
> > -/*
> > ------------------------------------------------------------------------
> > - */ -
> > -
> > -/*
> > - * Miscelaneous platform dependent initialisations
> > - */
> > -
> > -int board_init (void)
> > -{
> > -       /* We have RAM, disable cache */
> > -       dcache_disable();
> > -       icache_disable();
> > -
> > -       /* arch number of cerf PXA Board */
> > -       gd->bd->bi_arch_number = MACH_TYPE_PXA_CERF;
> > -
> > -       /* adress of boot parameters */
> > -       gd->bd->bi_boot_params = 0xa0000100;
> > -
> > -       return 0;
> > -}
> > -
> > -int board_late_init(void)
> > -{
> > -       setenv("stdout", "serial");
> > -       setenv("stderr", "serial");
> > -       return 0;
> > -}
> > -
> > -extern void pxa_dram_init(void);
> > -int dram_init(void)
> > -{
> > -       pxa_dram_init();
> > -       gd->ram_size = PHYS_SDRAM_1_SIZE;
> > -       return 0;
> > -}
> > -
> > -void dram_init_banksize(void)
> > -{
> > -       gd->bd->bi_dram[0].start = PHYS_SDRAM_1;
> > -       gd->bd->bi_dram[0].size = PHYS_SDRAM_1_SIZE;
> > -}
> > -
> > -#ifdef CONFIG_CMD_NET
> > -int board_eth_init(bd_t *bis)
> > -{
> > -       int rc = 0;
> > -#ifdef CONFIG_SMC91111
> > -       rc = smc91111_initialize(0, CONFIG_SMC91111_BASE);
> > -#endif
> > -       return rc;
> > -}
> > -#endif
> > diff --git a/board/cerf250/flash.c b/board/cerf250/flash.c
> > deleted file mode 100644
> > index e1e7807..0000000
> > --- a/board/cerf250/flash.c
> > +++ /dev/null
> > @@ -1,429 +0,0 @@
> > -/*
> > - * (C) Copyright 2001
> > - * Kyle Harris, Nexus Technologies, Inc. kharris at nexus-tech.net
> > - *
> > - * (C) Copyright 2001
> > - * Wolfgang Denk, DENX Software Engineering, wd at denx.de.
> > - *
> > - * See file CREDITS for list of people who contributed to this
> > - * project.
> > - *
> > - * This program is free software; you can redistribute it and/or
> > - * modify it under the terms of the GNU General Public License as
> > - * published by the Free Software Foundation; either version 2 of
> > - * the License, or (at your option) any later version.
> > - *
> > - * This program is distributed in the hope that it will be useful,
> > - * but WITHOUT ANY WARRANTY; without even the implied warranty of
> > - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
> > - * GNU General Public License for more details.
> > - *
> > - * You should have received a copy of the GNU General Public License
> > - * along with this program; if not, write to the Free Software
> > - * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
> > - * MA 02111-1307 USA
> > - */
> > -
> > -#include <common.h>
> > -#include <linux/byteorder/swab.h>
> > -
> > -
> > -flash_info_t flash_info[CONFIG_SYS_MAX_FLASH_BANKS];   /* info for FLASH
> > chips    */ -
> > -/* Board support for 1 or 2 flash devices */
> > -#define FLASH_PORT_WIDTH32
> > -#undef FLASH_PORT_WIDTH16
> > -
> > -#ifdef FLASH_PORT_WIDTH16
> > -#define FLASH_PORT_WIDTH               ushort
> > -#define FLASH_PORT_WIDTHV              vu_short
> > -#define SWAP(x)               __swab16(x)
> > -#else
> > -#define FLASH_PORT_WIDTH               ulong
> > -#define FLASH_PORT_WIDTHV              vu_long
> > -#define SWAP(x)               __swab32(x)
> > -#endif
> > -
> > -#define FPW       FLASH_PORT_WIDTH
> > -#define FPWV   FLASH_PORT_WIDTHV
> > -
> > -#define mb() __asm__ __volatile__ ("" : : : "memory")
> > -
> > -/*----------------------------------------------------------------------
> > - - * Functions
> > - */
> > -static ulong flash_get_size (FPW *addr, flash_info_t *info);
> > -static int write_data (flash_info_t *info, ulong dest, FPW data);
> > -static void flash_get_offsets (ulong base, flash_info_t *info);
> > -void inline spin_wheel (void);
> > -
> > -/*----------------------------------------------------------------------
> > - - */
> > -
> > -unsigned long flash_init (void)
> > -{
> > -       int i;
> > -       ulong size = 0;
> > -
> > -       for (i = 0; i < CONFIG_SYS_MAX_FLASH_BANKS; i++) {
> > -               switch (i) {
> > -               case 0:
> > -                       flash_get_size ((FPW *) PHYS_FLASH_1,
> > &flash_info[i]); -                       flash_get_offsets
> > (PHYS_FLASH_1, &flash_info[i]); -                       break;
> > -               case 1:
> > -                       flash_get_size ((FPW *) PHYS_FLASH_2,
> > &flash_info[i]); -                       flash_get_offsets
> > (PHYS_FLASH_2, &flash_info[i]); -                       break;
> > -               default:
> > -                       panic ("configured too many flash banks!\n");
> > -                       break;
> > -               }
> > -               size += flash_info[i].size;
> > -       }
> > -
> > -       /* Protect monitor and environment sectors
> > -        */
> > -       flash_protect ( FLAG_PROTECT_SET,
> > -                       CONFIG_SYS_FLASH_BASE,
> > -                       CONFIG_SYS_FLASH_BASE + monitor_flash_len - 1,
> > -                       &flash_info[0] );
> > -
> > -       flash_protect ( FLAG_PROTECT_SET,
> > -                       CONFIG_ENV_ADDR,
> > -                       CONFIG_ENV_ADDR + CONFIG_ENV_SIZE - 1,
> > &flash_info[0] ); -
> > -       return size;
> > -}
> > -
> > -/*----------------------------------------------------------------------
> > - - */
> > -static void flash_get_offsets (ulong base, flash_info_t *info)
> > -{
> > -       int i;
> > -
> > -       if (info->flash_id == FLASH_UNKNOWN) {
> > -               return;
> > -       }
> > -
> > -       if ((info->flash_id & FLASH_VENDMASK) == FLASH_MAN_INTEL) {
> > -               for (i = 0; i < info->sector_count; i++) {
> > -                       info->start[i] = base + (i *
> > PHYS_FLASH_SECT_SIZE); -                       info->protect[i] = 0;
> > -               }
> > -       }
> > -}
> > -
> > -/*----------------------------------------------------------------------
> > - - */
> > -void flash_print_info (flash_info_t *info)
> > -{
> > -       int i;
> > -
> > -       if (info->flash_id == FLASH_UNKNOWN) {
> > -               printf ("missing or unknown FLASH type\n");
> > -               return;
> > -       }
> > -
> > -       switch (info->flash_id & FLASH_VENDMASK) {
> > -       case FLASH_MAN_INTEL:
> > -               printf ("INTEL ");
> > -               break;
> > -       default:
> > -               printf ("Unknown Vendor ");
> > -               break;
> > -       }
> > -
> > -       switch (info->flash_id & FLASH_TYPEMASK) {
> > -       case FLASH_28F128J3A:
> > -               printf ("28F128J3A\n");
> > -               break;
> > -       default:
> > -               printf ("Unknown Chip Type\n");
> > -               break;
> > -       }
> > -
> > -       printf ("  Size: %ld MB in %d Sectors\n",
> > -                       info->size >> 20, info->sector_count);
> > -
> > -       printf ("  Sector Start Addresses:");
> > -       for (i = 0; i < info->sector_count; ++i) {
> > -               if ((i % 5) == 0)
> > -                       printf ("\n   ");
> > -               printf (" %08lX%s",
> > -                       info->start[i],
> > -                       info->protect[i] ? " (RO)" : "     ");
> > -       }
> > -       printf ("\n");
> > -       return;
> > -}
> > -
> > -/*
> > - * The following code cannot be run from FLASH!
> > - */
> > -static ulong flash_get_size (FPW *addr, flash_info_t *info)
> > -{
> > -       volatile FPW value;
> > -
> > -       /* Write auto select command: read Manufacturer ID */
> > -       addr[0x5555] = (FPW) 0x00AA00AA;
> > -       addr[0x2AAA] = (FPW) 0x00550055;
> > -       addr[0x5555] = (FPW) 0x00900090;
> > -
> > -       mb ();
> > -       value = addr[0];
> > -
> > -       switch (value) {
> > -
> > -       case (FPW) INTEL_MANUFACT:
> > -               info->flash_id = FLASH_MAN_INTEL;
> > -               break;
> > -
> > -       default:
> > -               info->flash_id = FLASH_UNKNOWN;
> > -               info->sector_count = 0;
> > -               info->size = 0;
> > -               addr[0] = (FPW) 0x00FF00FF;     /* restore read mode */
> > -               return (0);                     /* no or unknown flash
> >  */ -       }
> > -
> > -       mb ();
> > -       value = addr[1];                        /* device ID        */
> > -
> > -       switch (value) {
> > -
> > -       case (FPW) INTEL_ID_28F128J3A:
> > -               info->flash_id += FLASH_28F128J3A;
> > -               info->sector_count = 128;
> > -               info->size = 0x02000000;
> > -               break;                          /* => 16 MB     */
> > -
> > -       default:
> > -               info->flash_id = FLASH_UNKNOWN;
> > -               break;
> > -       }
> > -
> > -       if (info->sector_count > CONFIG_SYS_MAX_FLASH_SECT) {
> > -               printf ("** ERROR: sector count %d > max (%d) **\n",
> > -                       info->sector_count, CONFIG_SYS_MAX_FLASH_SECT);
> > -               info->sector_count = CONFIG_SYS_MAX_FLASH_SECT;
> > -       }
> > -
> > -       addr[0] = (FPW) 0x00FF00FF;             /* restore read mode */
> > -
> > -       return (info->size);
> > -}
> > -
> > -
> > -/*----------------------------------------------------------------------
> > - - */
> > -
> > -int flash_erase (flash_info_t *info, int s_first, int s_last)
> > -{
> > -       int flag, prot, sect;
> > -       ulong type, start;
> > -       int rcode = 0;
> > -
> > -       if ((s_first < 0) || (s_first > s_last)) {
> > -               if (info->flash_id == FLASH_UNKNOWN) {
> > -                       printf ("- missing\n");
> > -               } else {
> > -                       printf ("- no sectors to erase\n");
> > -               }
> > -               return 1;
> > -       }
> > -
> > -       type = (info->flash_id & FLASH_VENDMASK);
> > -       if ((type != FLASH_MAN_INTEL)) {
> > -               printf ("Can't erase unknown flash type %08lx -
> > aborted\n", -                       info->flash_id);
> > -               return 1;
> > -       }
> > -
> > -       prot = 0;
> > -       for (sect = s_first; sect <= s_last; ++sect) {
> > -               if (info->protect[sect]) {
> > -                       prot++;
> > -               }
> > -       }
> > -
> > -       if (prot) {
> > -               printf ("- Warning: %d protected sectors will not be
> > erased!\n", -                       prot);
> > -       } else {
> > -               printf ("\n");
> > -       }
> > -
> > -       /* Disable interrupts which might cause a timeout here */
> > -       flag = disable_interrupts ();
> > -
> > -       /* Start erase on unprotected sectors */
> > -       for (sect = s_first; sect <= s_last; sect++) {
> > -               if (info->protect[sect] == 0) { /* not protected */
> > -                       FPWV *addr = (FPWV *) (info->start[sect]);
> > -                       FPW status;
> > -
> > -                       printf ("Erasing sector %2d ... ", sect);
> > -
> > -                       /* arm simple, non interrupt dependent timer */
> > -                       start = get_timer(0);
> > -
> > -                       *addr = (FPW) 0x00500050;       /* clear status
> > register */ -                       *addr = (FPW) 0x00200020;       /*
> > erase setup */ -                       *addr = (FPW) 0x00D000D0;      
> > /* erase confirm */ -
> > -                       while (((status = *addr) & (FPW) 0x00800080) !=
> > (FPW) 0x00800080) { -                               if (get_timer(start)
> > > CONFIG_SYS_FLASH_ERASE_TOUT) { -                                      
> > printf ("Timeout\n");
> > -                                       *addr = (FPW) 0x00B000B0;      
> > /* suspend erase     */ -                                       *addr =
> > (FPW) 0x00FF00FF;       /* reset to read mode */ -                      
> >                 rcode = 1;
> > -                                       break;
> > -                               }
> > -                       }
> > -
> > -                       *addr = 0x00500050;     /* clear status register
> > cmd.   */ -                       *addr = 0x00FF00FF;     /* resest to
> > read mode          */ -
> > -                       printf (" done\n");
> > -               }
> > -       }
> > -       return rcode;
> > -}
> > -
> > -/*----------------------------------------------------------------------
> > - - * Copy memory to flash, returns:
> > - * 0 - OK
> > - * 1 - write timeout
> > - * 2 - Flash not erased
> > - * 4 - Flash not identified
> > - */
> > -
> > -int write_buff (flash_info_t *info, uchar *src, ulong addr, ulong cnt)
> > -{
> > -       ulong cp, wp;
> > -       FPW data;
> > -       int count, i, l, rc, port_width;
> > -
> > -       if (info->flash_id == FLASH_UNKNOWN) {
> > -               return 4;
> > -       }
> > -/* get lower word aligned address */
> > -#ifdef FLASH_PORT_WIDTH16
> > -       wp = (addr & ~1);
> > -       port_width = 2;
> > -#else
> > -       wp = (addr & ~3);
> > -       port_width = 4;
> > -#endif
> > -
> > -       /*
> > -        * handle unaligned start bytes
> > -        */
> > -       if ((l = addr - wp) != 0) {
> > -               data = 0;
> > -               for (i = 0, cp = wp; i < l; ++i, ++cp) {
> > -                       data = (data << 8) | (*(uchar *) cp);
> > -               }
> > -               for (; i < port_width && cnt > 0; ++i) {
> > -                       data = (data << 8) | *src++;
> > -                       --cnt;
> > -                       ++cp;
> > -               }
> > -               for (; cnt == 0 && i < port_width; ++i, ++cp) {
> > -                       data = (data << 8) | (*(uchar *) cp);
> > -               }
> > -
> > -               if ((rc = write_data (info, wp, SWAP (data))) != 0) {
> > -                       return (rc);
> > -               }
> > -               wp += port_width;
> > -       }
> > -
> > -       /*
> > -        * handle word aligned part
> > -        */
> > -       count = 0;
> > -       while (cnt >= port_width) {
> > -               data = 0;
> > -               for (i = 0; i < port_width; ++i) {
> > -                       data = (data << 8) | *src++;
> > -               }
> > -               if ((rc = write_data (info, wp, SWAP (data))) != 0) {
> > -                       return (rc);
> > -               }
> > -               wp += port_width;
> > -               cnt -= port_width;
> > -               if (count++ > 0x800) {
> > -                       spin_wheel ();
> > -                       count = 0;
> > -               }
> > -       }
> > -
> > -       if (cnt == 0) {
> > -               return (0);
> > -       }
> > -
> > -       /*
> > -        * handle unaligned tail bytes
> > -        */
> > -       data = 0;
> > -       for (i = 0, cp = wp; i < port_width && cnt > 0; ++i, ++cp) {
> > -               data = (data << 8) | *src++;
> > -               --cnt;
> > -       }
> > -       for (; i < port_width; ++i, ++cp) {
> > -               data = (data << 8) | (*(uchar *) cp);
> > -       }
> > -
> > -       return (write_data (info, wp, SWAP (data)));
> > -}
> > -
> > -/*----------------------------------------------------------------------
> > - - * Write a word or halfword to Flash, returns:
> > - * 0 - OK
> > - * 1 - write timeout
> > - * 2 - Flash not erased
> > - */
> > -static int write_data (flash_info_t *info, ulong dest, FPW data)
> > -{
> > -       FPWV *addr = (FPWV *) dest;
> > -       ulong status;
> > -       int flag;
> > -       ulong start;
> > -
> > -       /* Check if Flash is (sufficiently) erased */
> > -       if ((*addr & data) != data) {
> > -               printf ("not erased at %08lx (%lx)\n", (ulong) addr,
> > *addr); -               return (2);
> > -       }
> > -       /* Disable interrupts which might cause a timeout here */
> > -       flag = disable_interrupts ();
> > -
> > -       *addr = (FPW) 0x00400040;       /* write setup */
> > -       *addr = data;
> > -
> > -       /* arm simple, non interrupt dependent timer */
> > -       start = get_timer(0);
> > -
> > -       /* wait while polling the status register */
> > -       while (((status = *addr) & (FPW) 0x00800080) != (FPW) 0x00800080)
> > { -               if (get_timer(start) > CONFIG_SYS_FLASH_WRITE_TOUT) {
> > -                       *addr = (FPW) 0x00FF00FF;       /* restore read
> > mode */ -                       return (1);
> > -               }
> > -       }
> > -
> > -       *addr = (FPW) 0x00FF00FF;       /* restore read mode */
> > -
> > -       return (0);
> > -}
> > -
> > -void inline spin_wheel (void)
> > -{
> > -       static int p = 0;
> > -       static char w[] = "\\/-";
> > -
> > -       printf ("\010%c", w[p]);
> > -       (++p == 3) ? (p = 0) : 0;
> > -}
> > diff --git a/boards.cfg b/boards.cfg
> > index 7c63449..d65ca12 100644
> > --- a/boards.cfg
> > +++ b/boards.cfg
> > @@ -216,7 +216,6 @@ actux3                       arm         ixp
> >  actux4                       arm         ixp
> >  dvlhost                      arm         ixp
> >  balloon3                     arm         pxa
> > -cerf250                      arm         pxa
> >  colibri_pxa270               arm         pxa
> >  cradle                       arm         pxa
> >  lubbock                      arm         pxa
> > diff --git a/doc/README.scrapyard b/doc/README.scrapyard
> > index cb5e4bc..232cd68 100644
> > --- a/doc/README.scrapyard
> > +++ b/doc/README.scrapyard
> > @@ -11,6 +11,7 @@ easily if here is something they might want to dig
> > for...
> > 
> >  Board  Arch    CPU     removed     Commit      last known
> > maintainer/contact
> > ========================================================================
> > ===== +cerf250 arm     pxa     a3f1241   2011-25-11    Prakash Kumar
> > <prakash at embedx.com> mpq101 powerpc mpc85xx -         2011-10-23    Alex
> > Dubov <oakad at yahoo.com> ixdpg425 arm   ixp     0ca8eb7   2011-09-22  
> >  Stefan Roese <sr at denx.de> ixdp425 arm    ixp     0ca8eb7   2011-09-22  
> >  Kyle Harris <kharris at nexus-tech.net> diff --git
> > a/include/configs/cerf250.h b/include/configs/cerf250.h deleted file
> > mode 100644
> > index 70427da..0000000
> > --- a/include/configs/cerf250.h
> > +++ /dev/null
> > @@ -1,229 +0,0 @@
> > -/*
> > - * (C) Copyright 2002
> > - * Kyle Harris, Nexus Technologies, Inc. kharris at nexus-tech.net
> > - *
> > - * (C) Copyright 2002
> > - * Sysgo Real-Time Solutions, GmbH <www.elinos.com>
> > - * Marius Groeger <mgroeger at sysgo.de>
> > - *
> > - * Configuation settings for the CERF250 board.
> > - *
> > - * See file CREDITS for list of people who contributed to this
> > - * project.
> > - *
> > - * This program is free software; you can redistribute it and/or
> > - * modify it under the terms of the GNU General Public License as
> > - * published by the Free Software Foundation; either version 2 of
> > - * the License, or (at your option) any later version.
> > - *
> > - * This program is distributed in the hope that it will be useful,
> > - * but WITHOUT ANY WARRANTY; without even the implied warranty of
> > - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.         See the
> > - * GNU General Public License for more details.
> > - *
> > - * You should have received a copy of the GNU General Public License
> > - * along with this program; if not, write to the Free Software
> > - * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
> > - * MA 02111-1307 USA
> > - */
> > -
> > -#ifndef __CONFIG_H
> > -#define __CONFIG_H
> > -
> > -/*
> > - * High Level Configuration Options
> > - * (easy to change)
> > - */
> > -#define CONFIG_PXA250          1       /* This is an PXA250 CPU    */
> > -#define CONFIG_CERF250         1       /* on Cerf PXA Board        */
> > -#define CONFIG_BOARD_LATE_INIT
> > -#define CONFIG_BAUDRATE                38400
> > -#define        CONFIG_SYS_TEXT_BASE    0x0
> > -
> > -#undef CONFIG_USE_IRQ                  /* we don't need IRQ/FIQ stuff */
> > -
> > -/* we will never enable dcache, because we have to setup MMU first */
> > -#define CONFIG_SYS_DCACHE_OFF
> > -
> > -/*
> > - * Size of malloc() pool
> > - */
> > -#define CONFIG_SYS_MALLOC_LEN      (CONFIG_ENV_SIZE + 128*1024)
> > -
> > -/*
> > - * Hardware drivers
> > - */
> > -#define CONFIG_SMC91111
> > -#define CONFIG_SMC91111_BASE 0x04000300
> > -#define CONFIG_SMC_USE_32_BIT
> > -
> > -/*
> > - * select serial console configuration
> > - */
> > -#define CONFIG_PXA_SERIAL
> > -#define CONFIG_FFUART       1  /* we use FFUART on CERF PXA */
> > -
> > -/* allow to overwrite serial and ethaddr */
> > -#define CONFIG_ENV_OVERWRITE
> > -
> > -/*
> > - * BOOTP options
> > - */
> > -#define CONFIG_BOOTP_BOOTFILESIZE
> > -#define CONFIG_BOOTP_BOOTPATH
> > -#define CONFIG_BOOTP_GATEWAY
> > -#define CONFIG_BOOTP_HOSTNAME
> > -
> > -
> > -/*
> > - * Command line configuration.
> > - */
> > -#include <config_cmd_default.h>
> > -
> > -
> > -#define CONFIG_BOOTDELAY       3
> > -#define CONFIG_ETHADDR         00:D0:CA:F1:3C:D2
> > -#define CONFIG_NETMASK         255.255.255.0
> > -#define CONFIG_IPADDR          192.168.0.5
> > -#define CONFIG_SERVERIP                192.168.0.2
> > -#define CONFIG_BOOTCOMMAND     "bootm 0xC0000"
> > -#define CONFIG_BOOTARGS                "root=/dev/mtdblock3
> > rootfstype=jffs2 console=ttyS0,38400" -#define CONFIG_CMDLINE_TAG
> > -
> > -#if defined(CONFIG_CMD_KGDB)
> > -#define CONFIG_KGDB_BAUDRATE   230400  /* speed to run kgdb serial port
> > */ -#define CONFIG_KGDB_SER_INDEX  2               /* which serial port
> > to use */ -#endif
> > -
> > -/*
> > - * Miscellaneous configurable options
> > - */
> > -#define CONFIG_SYS_HUSH_PARSER         1
> > -#define CONFIG_SYS_PROMPT_HUSH_PS2     "> "
> > -
> > -#define CONFIG_SYS_LONGHELP                                    /* undef
> > to save memory         */ -#ifdef CONFIG_SYS_HUSH_PARSER
> > -#define CONFIG_SYS_PROMPT                      "uboot$ "       /*
> > Monitor Command Prompt */ -#else
> > -#define CONFIG_SYS_PROMPT                      "=> "           /*
> > Monitor Command Prompt */ -#endif
> > -#define CONFIG_SYS_CBSIZE                      256                    
> > /* Console I/O Buffer Size      */ -#define CONFIG_SYS_PBSIZE          
> >            (CONFIG_SYS_CBSIZE+sizeof(CONFIG_SYS_PROMPT)+16) -          
> >                                                                     /*
> > Print Buffer Size */ -#define CONFIG_SYS_MAXARGS                     16
> >                      /* max number of command args   */ -#define
> > CONFIG_SYS_BARGSIZE            CONFIG_SYS_CBSIZE       /* Boot Argument
> > Buffer Size    */ -#define CONFIG_SYS_DEVICE_NULLDEV      1
> > -
> > -#define CONFIG_SYS_MEMTEST_START       0xa0400000      /* memtest works
> > on     */ -#define CONFIG_SYS_MEMTEST_END         0xa0800000      /* 4
> > ... 8 MB in DRAM   */ -
> > -#define CONFIG_SYS_LOAD_ADDR           0xa2000000      /* default load
> > address */ -
> > -#define CONFIG_SYS_HZ                  1000
> > -#define CONFIG_SYS_CPUSPEED            0x141           /* set core clock
> > to 400/200/100 MHz */ -
> > -#define CONFIG_SYS_BAUDRATE_TABLE      { 9600, 19200, 38400, 57600,
> > 115200 } -
> > -
> > -/*
> > - * Stack sizes
> > - *
> > - * The stack sizes are set up in start.S using the settings below
> > - */
> > -#define CONFIG_STACKSIZE               (128*1024)      /* regular stack
> > */ -#ifdef CONFIG_USE_IRQ
> > -#define CONFIG_STACKSIZE_IRQ   (4*1024)        /* IRQ stack */
> > -#define CONFIG_STACKSIZE_FIQ   (4*1024)        /* FIQ stack */
> > -#endif
> > -
> > -/*
> > - * Physical Memory Map
> > - */
> > -#define CONFIG_NR_DRAM_BANKS           1               /* we have 1 bank
> > of DRAM */ -#define PHYS_SDRAM_1                   0xa0000000      /*
> > SDRAM Bank #1 */ -#define PHYS_SDRAM_1_SIZE              0x04000000    
> >  /* 64 MB */ -
> > -#define PHYS_FLASH_1                   0x00000000      /* Flash Bank #1
> > */ -#define PHYS_FLASH_2                   0x04000000      /* Flash Bank
> > #2 */ -#define PHYS_FLASH_SIZE                        0x02000000      /*
> > 32 MB */ -#define PHYS_FLASH_BANK_SIZE           0x02000000      /* 32
> > MB Banks */ -#define PHYS_FLASH_SECT_SIZE           0x00040000      /*
> > 256 KB sectors (x2) */ -
> > -#define CONFIG_SYS_DRAM_BASE                   0xa0000000
> > -#define CONFIG_SYS_DRAM_SIZE                   0x04000000
> > -
> > -#define CONFIG_SYS_FLASH_BASE                  PHYS_FLASH_1
> > -
> > -#define CONFIG_SYS_SDRAM_BASE          PHYS_SDRAM_1
> > -#define        CONFIG_SYS_INIT_SP_ADDR         (GENERATED_GBL_DATA_SIZE
> > + PHYS_SDRAM_1) -
> > -/*
> > - * GPIO settings
> > - */
> > -
> > -
> > -#define CONFIG_SYS_GPSR0_VAL           0x00408030
> > -#define CONFIG_SYS_GPSR1_VAL           0x00BFA882
> > -#define CONFIG_SYS_GPSR2_VAL           0x0001C000
> > -#define CONFIG_SYS_GPCR0_VAL           0xC0031100
> > -#define CONFIG_SYS_GPCR1_VAL           0xFC400300
> > -#define CONFIG_SYS_GPCR2_VAL           0x00003FFF
> > -#define CONFIG_SYS_GPDR0_VAL           0xC0439330
> > -#define CONFIG_SYS_GPDR1_VAL           0xFCFFAB82
> > -#define CONFIG_SYS_GPDR2_VAL           0x0001FFFF
> > -#define CONFIG_SYS_GAFR0_L_VAL         0x80000000
> > -#define CONFIG_SYS_GAFR0_U_VAL         0xA5000010
> > -#define CONFIG_SYS_GAFR1_L_VAL         0x60008018
> > -#define CONFIG_SYS_GAFR1_U_VAL         0xAAA5AAAA
> > -#define CONFIG_SYS_GAFR2_L_VAL         0xAAA0000A
> > -#define CONFIG_SYS_GAFR2_U_VAL         0x00000002
> > -
> > -#define CONFIG_SYS_PSSR_VAL            0x20
> > -
> > -#define        CONFIG_SYS_CCCR                 CCCR_L27|CCCR_M2|CCCR_N10
> > -#define        CONFIG_SYS_CKEN                 0x0
> > -
> > -/*
> > - * Memory settings
> > - */
> > -#define CONFIG_SYS_MSC0_VAL            0x12447FF0
> > -#define CONFIG_SYS_MSC1_VAL            0x12BC5554
> > -#define CONFIG_SYS_MSC2_VAL            0x7FF97FF1
> > -#define CONFIG_SYS_MDCNFG_VAL          0x00001AC9
> > -#define CONFIG_SYS_MDREFR_VAL          0x03CDC017
> > -#define CONFIG_SYS_MDMRS_VAL           0x00000000
> > -#define        CONFIG_SYS_FLYCNFG_VAL          0x00000000
> > -#define        CONFIG_SYS_SXCNFG_VAL           0x00000000
> > -
> > -/*
> > - * PCMCIA and CF Interfaces
> > - */
> > -#define CONFIG_SYS_MECR_VAL            0x00000000
> > -#define CONFIG_SYS_MCMEM0_VAL          0x00010504
> > -#define CONFIG_SYS_MCMEM1_VAL          0x00010504
> > -#define CONFIG_SYS_MCATT0_VAL          0x00010504
> > -#define CONFIG_SYS_MCATT1_VAL          0x00010504
> > -#define CONFIG_SYS_MCIO0_VAL           0x00004715
> > -#define CONFIG_SYS_MCIO1_VAL           0x00004715
> > -
> > -#define _LED                   0x08000010      /*check this */
> > -#define LED_BLANK              0x08000040
> > -#define LED_GPIO               0x10
> > -
> > -/*
> > - * FLASH and environment organization
> > - */
> > -#define CONFIG_SYS_MAX_FLASH_BANKS     1       /* max number of memory
> > banks           */ -#define CONFIG_SYS_MAX_FLASH_SECT      128     /*
> > max number of sectors on one chip    */ -
> > -/* timeout values are in ticks */
> > -#define CONFIG_SYS_FLASH_ERASE_TOUT    (25*CONFIG_SYS_HZ) /* Timeout for
> > Flash Erase */ -#define CONFIG_SYS_FLASH_WRITE_TOUT  
> >  (25*CONFIG_SYS_HZ) /* Timeout for Flash Write */ -
> > -#define CONFIG_SYS_MONITOR_LEN         0x40000         /* 256 KiB */
> > -#define CONFIG_ENV_IS_IN_FLASH 1
> > -#define CONFIG_ENV_ADDR                (PHYS_FLASH_1 +
> > CONFIG_SYS_MONITOR_LEN) -#define CONFIG_ENV_SIZE                0x40000
> > /* Total Size of Environment Sector     */ -
> > -
> > -#endif /* __CONFIG_H */
> > --
> > 1.7.7.1


More information about the U-Boot mailing list