Message ID | 1313932575-31456-1-git-send-email-robherring2@gmail.com |
---|---|
State | Changes Requested |
Headers | show |
Hi Rob, Le 21/08/2011 15:16, Rob Herring a écrit : > From: Rob Herring<rob.herring@calxeda.com> > > Add basic support for Calxeda Highbank platform. Only minimal support with > serial and SATA are included. > > Signed-off-by: Jason Hobbs<jason.hobbs@calxeda.com> > Signed-off-by: Rob Herring<rob.herring@calxeda.com> > Cc: Albert ARIBAUD<albert.u.boot@aribaud.net> > --- This applies to u-boot-arm/master, with three empty lines at end of new files removed, but the compilation with ELDK 4.2 fails with: uboot@lilith:~/src/u-boot-arm$ ./MAKEALL highbank Configuring for highbank board... include/common.h:0: error: bad value (armv7-a) for -march= switch include/common.h:0: error: bad value (armv7-a) for -march= switch lib/asm-offsets.c:1: error: bad value (armv7-a) for -march= switch make: *** [lib/asm-offsets.s] Erreur 1 arm-linux-size: './u-boot': No such file --------------------- SUMMARY ---------------------------- Boards compiled: 1 Boards with warnings or errors: 1 ( highbank ) ---------------------------------------------------------- Seems like ELDK 4.2 does not know armv7-a. Is it a requirement that this board build with this march flag? Amicalement,
On 08/21/2011 09:40 AM, Albert ARIBAUD wrote: > Hi Rob, > > Le 21/08/2011 15:16, Rob Herring a écrit : >> From: Rob Herring<rob.herring@calxeda.com> >> >> Add basic support for Calxeda Highbank platform. Only minimal support >> with >> serial and SATA are included. >> >> Signed-off-by: Jason Hobbs<jason.hobbs@calxeda.com> >> Signed-off-by: Rob Herring<rob.herring@calxeda.com> >> Cc: Albert ARIBAUD<albert.u.boot@aribaud.net> >> --- > > This applies to u-boot-arm/master, with three empty lines at end of new > files removed, but the compilation with ELDK 4.2 fails with: > > uboot@lilith:~/src/u-boot-arm$ ./MAKEALL highbank > Configuring for highbank board... > include/common.h:0: error: bad value (armv7-a) for -march= switch > include/common.h:0: error: bad value (armv7-a) for -march= switch > lib/asm-offsets.c:1: error: bad value (armv7-a) for -march= switch > make: *** [lib/asm-offsets.s] Erreur 1 > arm-linux-size: './u-boot': No such file > > --------------------- SUMMARY ---------------------------- > Boards compiled: 1 > Boards with warnings or errors: 1 ( highbank ) > ---------------------------------------------------------- > > Seems like ELDK 4.2 does not know armv7-a. Is it a requirement that this > board build with this march flag? > With device tree, there are lots of endian conversions. With v7, those conversions are a single inline "rev" instruction vs. 10-20 assembly instructions. Since there is no state maintained in the fdt code, the conversions are done over and over. So there's not a hard requirement, but it is something I will always set and I imagine others with v7 platforms will want to also. I think Tegra prevents doing this change globally. Rob
Albert, On 08/21/2011 02:28 PM, Rob Herring wrote: > On 08/21/2011 09:40 AM, Albert ARIBAUD wrote: >> Hi Rob, >> >> Le 21/08/2011 15:16, Rob Herring a écrit : >>> From: Rob Herring<rob.herring@calxeda.com> >>> >>> Add basic support for Calxeda Highbank platform. Only minimal support >>> with >>> serial and SATA are included. >>> >>> Signed-off-by: Jason Hobbs<jason.hobbs@calxeda.com> >>> Signed-off-by: Rob Herring<rob.herring@calxeda.com> >>> Cc: Albert ARIBAUD<albert.u.boot@aribaud.net> >>> --- >> >> This applies to u-boot-arm/master, with three empty lines at end of new >> files removed, but the compilation with ELDK 4.2 fails with: >> >> uboot@lilith:~/src/u-boot-arm$ ./MAKEALL highbank >> Configuring for highbank board... >> include/common.h:0: error: bad value (armv7-a) for -march= switch >> include/common.h:0: error: bad value (armv7-a) for -march= switch >> lib/asm-offsets.c:1: error: bad value (armv7-a) for -march= switch >> make: *** [lib/asm-offsets.s] Erreur 1 >> arm-linux-size: './u-boot': No such file >> >> --------------------- SUMMARY ---------------------------- >> Boards compiled: 1 >> Boards with warnings or errors: 1 ( highbank ) >> ---------------------------------------------------------- >> >> Seems like ELDK 4.2 does not know armv7-a. Is it a requirement that this >> board build with this march flag? >> > > With device tree, there are lots of endian conversions. With v7, those > conversions are a single inline "rev" instruction vs. 10-20 assembly > instructions. Since there is no state maintained in the fdt code, the > conversions are done over and over. > > So there's not a hard requirement, but it is something I will always set > and I imagine others with v7 platforms will want to also. I think Tegra > prevents doing this change globally. > What do you want to do here? arch/arm/cpu/armv7/highbank/config.mk can simply be deleted if you don't want to compile with armv7-a. Rob
Le 23/08/2011 16:32, Rob Herring a écrit : > Albert, > > On 08/21/2011 02:28 PM, Rob Herring wrote: >> On 08/21/2011 09:40 AM, Albert ARIBAUD wrote: >>> Hi Rob, >>> >>> Le 21/08/2011 15:16, Rob Herring a écrit : >>>> From: Rob Herring<rob.herring@calxeda.com> >>>> >>>> Add basic support for Calxeda Highbank platform. Only minimal support >>>> with >>>> serial and SATA are included. >>>> >>>> Signed-off-by: Jason Hobbs<jason.hobbs@calxeda.com> >>>> Signed-off-by: Rob Herring<rob.herring@calxeda.com> >>>> Cc: Albert ARIBAUD<albert.u.boot@aribaud.net> >>>> --- >>> >>> This applies to u-boot-arm/master, with three empty lines at end of new >>> files removed, but the compilation with ELDK 4.2 fails with: >>> >>> uboot@lilith:~/src/u-boot-arm$ ./MAKEALL highbank >>> Configuring for highbank board... >>> include/common.h:0: error: bad value (armv7-a) for -march= switch >>> include/common.h:0: error: bad value (armv7-a) for -march= switch >>> lib/asm-offsets.c:1: error: bad value (armv7-a) for -march= switch >>> make: *** [lib/asm-offsets.s] Erreur 1 >>> arm-linux-size: './u-boot': No such file >>> >>> --------------------- SUMMARY ---------------------------- >>> Boards compiled: 1 >>> Boards with warnings or errors: 1 ( highbank ) >>> ---------------------------------------------------------- >>> >>> Seems like ELDK 4.2 does not know armv7-a. Is it a requirement that this >>> board build with this march flag? >>> >> >> With device tree, there are lots of endian conversions. With v7, those >> conversions are a single inline "rev" instruction vs. 10-20 assembly >> instructions. Since there is no state maintained in the fdt code, the >> conversions are done over and over. >> >> So there's not a hard requirement, but it is something I will always set >> and I imagine others with v7 platforms will want to also. I think Tegra >> prevents doing this change globally. >> > > What do you want to do here? > > arch/arm/cpu/armv7/highbank/config.mk can simply be deleted if you don't > want to compile with armv7-a. Well, it is more a question of which toolchain(s) we want supported in U-Boot. Denx ELDK is one of them I guess :) but now that ELDK 5.0 is out, I don't know if ELDK 4.2 support is still required. (I am assuming that ELDK5.0 has armv7-a support here. Please correct me if not) If ELDK4.2 must be supported, then I would suggest creating a configuration option to allow the use of armv7-a ISA, then the arch/arm/cpu/armv7/highbank/config.mk file would select armv7-a ISA based on this option, and then any ARMv7 compatible board that needs or wants to use this ISA can set this config option in its config header file. If ELDK4.2 support is dropped (at least partially) then no change would be needed. Wolfgang:, I think that toolchain support for ARM is more your choice than mine. > Rob Amicalement,
Le 24/08/2011 10:37, Albert ARIBAUD a écrit : > Le 23/08/2011 16:32, Rob Herring a écrit : >> Albert, >> >> On 08/21/2011 02:28 PM, Rob Herring wrote: >>> On 08/21/2011 09:40 AM, Albert ARIBAUD wrote: >>>> Hi Rob, >>>> >>>> Le 21/08/2011 15:16, Rob Herring a écrit : >>>>> From: Rob Herring<rob.herring@calxeda.com> >>>>> >>>>> Add basic support for Calxeda Highbank platform. Only minimal support >>>>> with >>>>> serial and SATA are included. >>>>> >>>>> Signed-off-by: Jason Hobbs<jason.hobbs@calxeda.com> >>>>> Signed-off-by: Rob Herring<rob.herring@calxeda.com> >>>>> Cc: Albert ARIBAUD<albert.u.boot@aribaud.net> >>>>> --- >>>> >>>> This applies to u-boot-arm/master, with three empty lines at end of new >>>> files removed, but the compilation with ELDK 4.2 fails with: >>>> >>>> uboot@lilith:~/src/u-boot-arm$ ./MAKEALL highbank >>>> Configuring for highbank board... >>>> include/common.h:0: error: bad value (armv7-a) for -march= switch >>>> include/common.h:0: error: bad value (armv7-a) for -march= switch >>>> lib/asm-offsets.c:1: error: bad value (armv7-a) for -march= switch >>>> make: *** [lib/asm-offsets.s] Erreur 1 >>>> arm-linux-size: './u-boot': No such file >>>> >>>> --------------------- SUMMARY ---------------------------- >>>> Boards compiled: 1 >>>> Boards with warnings or errors: 1 ( highbank ) >>>> ---------------------------------------------------------- >>>> >>>> Seems like ELDK 4.2 does not know armv7-a. Is it a requirement that this >>>> board build with this march flag? >>>> >>> >>> With device tree, there are lots of endian conversions. With v7, those >>> conversions are a single inline "rev" instruction vs. 10-20 assembly >>> instructions. Since there is no state maintained in the fdt code, the >>> conversions are done over and over. >>> >>> So there's not a hard requirement, but it is something I will always set >>> and I imagine others with v7 platforms will want to also. I think Tegra >>> prevents doing this change globally. >>> >> >> What do you want to do here? >> >> arch/arm/cpu/armv7/highbank/config.mk can simply be deleted if you don't >> want to compile with armv7-a. > > Well, it is more a question of which toolchain(s) we want supported in > U-Boot. Denx ELDK is one of them I guess :) but now that ELDK 5.0 is > out, I don't know if ELDK 4.2 support is still required. > > (I am assuming that ELDK5.0 has armv7-a support here. Please correct me > if not) > > If ELDK4.2 must be supported, then I would suggest creating a > configuration option to allow the use of armv7-a ISA, then the > arch/arm/cpu/armv7/highbank/config.mk file would select armv7-a ISA > based on this option, and then any ARMv7 compatible board that needs or > wants to use this ISA can set this config option in its config header file. > > If ELDK4.2 support is dropped (at least partially) then no change would > be needed. ... adding Wolfgang, this time... > Wolfgang:, I think that toolchain support for ARM is more your choice > than mine. > >> Rob > > Amicalement, Amicalement,
Dear Albert ARIBAUD, In message <4E54B862.2070000@aribaud.net> you wrote: > > Well, it is more a question of which toolchain(s) we want supported in > U-Boot. Denx ELDK is one of them I guess :) but now that ELDK 5.0 is > out, I don't know if ELDK 4.2 support is still required. It seems reasonable to support any gcc 4.x configuration. > If ELDK4.2 must be supported, then I would suggest creating a > configuration option to allow the use of armv7-a ISA, then the > arch/arm/cpu/armv7/highbank/config.mk file would select armv7-a ISA I don't tink I want to accept a board specific config.mk for such apurpose. We want to get rid of thse config.mk files. Either ARMv7 based boards all need this option, or they all don;t need it. Thisis NOT a board specific feature. > If ELDK4.2 support is dropped (at least partially) then no change would > be needed. > > Wolfgang:, I think that toolchain support for ARM is more your choice > than mine. See above - I see no reason why we should abandon ELDK 4.2 when adding a new board - when all other boards with similar CPUs work just fine. Best regards, Wolfgang Denk
diff --git a/MAINTAINERS b/MAINTAINERS index f895e9a..c383f6d 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -219,6 +219,10 @@ Wolfgang Grandegger <wg@denx.de> IPHASE4539 MPC8260 SCM MPC8260 +Rob Herring <rob.herring@calxeda.com> + + highbank highbank + Klaus Heydeck <heydeck@kieback-peter.de> KUP4K MPC855 diff --git a/arch/arm/cpu/armv7/highbank/Makefile b/arch/arm/cpu/armv7/highbank/Makefile new file mode 100644 index 0000000..76faeb0 --- /dev/null +++ b/arch/arm/cpu/armv7/highbank/Makefile @@ -0,0 +1,46 @@ +# +# (C) Copyright 2000-2006 +# Wolfgang Denk, DENX Software Engineering, wd@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$(SOC).o + +COBJS := timer.o +SOBJS := + +SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c) +OBJS := $(addprefix $(obj),$(COBJS) $(SOBJS)) + +all: $(obj).depend $(LIB) + +$(LIB): $(OBJS) + $(call cmd_link_o_target, $(OBJS)) + +######################################################################### + +# defines $(obj).depend target +include $(SRCTREE)/rules.mk + +sinclude $(obj).depend + +######################################################################### diff --git a/arch/arm/cpu/armv7/highbank/config.mk b/arch/arm/cpu/armv7/highbank/config.mk new file mode 100644 index 0000000..5ed5c39 --- /dev/null +++ b/arch/arm/cpu/armv7/highbank/config.mk @@ -0,0 +1,4 @@ +STANDALONE_LOAD_ADDR = 0x100000 + +PLATFORM_CPPFLAGS += -march=armv7-a + diff --git a/arch/arm/cpu/armv7/highbank/timer.c b/arch/arm/cpu/armv7/highbank/timer.c new file mode 100644 index 0000000..263f11a --- /dev/null +++ b/arch/arm/cpu/armv7/highbank/timer.c @@ -0,0 +1,124 @@ +/* + * Copyright 2010-2011 Calxeda, Inc. + * + * Based on arm926ejs/mx27/timer.c + * + * 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 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, see <http://www.gnu.org/licenses/>. + */ + +#include <common.h> +#include <div64.h> +#include <linux/types.h> /* for size_t */ +#include <linux/stddef.h> /* for NULL */ +#include <asm/io.h> +#include <asm/arch-armv7/systimer.h> + +#undef SYSTIMER_BASE +#define SYSTIMER_BASE 0xFFF34000 /* Timer 0 and 1 base */ +#define SYSTIMER_RATE 150000000 + +static ulong timestamp; +static ulong lastinc; +static struct systimer *systimer_base = (struct systimer *)SYSTIMER_BASE; + +/* + * Start the timer + */ +int timer_init(void) +{ + /* + * Setup timer0 + */ + writel(SYSTIMER_RELOAD, &systimer_base->timer0load); + writel(SYSTIMER_RELOAD, &systimer_base->timer0value); + writel(SYSTIMER_EN | SYSTIMER_32BIT, &systimer_base->timer0control); + + reset_timer_masked(); + + return 0; + +} + +#define TICK_PER_TIME ((SYSTIMER_RATE + CONFIG_SYS_HZ / 2) / CONFIG_SYS_HZ) +#define NS_PER_TICK (1000000000 / SYSTIMER_RATE) + +static inline unsigned long long tick_to_time(unsigned long long tick) +{ + do_div(tick, TICK_PER_TIME); + return tick; +} + +static inline unsigned long long time_to_tick(unsigned long long time) +{ + return time * TICK_PER_TIME; +} + +static inline unsigned long long us_to_tick(unsigned long long us) +{ + unsigned long long tick = us << 16; + tick += NS_PER_TICK - 1; + do_div(tick, NS_PER_TICK); + return tick >> 16; +} + +unsigned long long get_ticks(void) +{ + ulong now = ~readl(&systimer_base->timer0value); + + if (now >= lastinc) /* normal mode (non roll) */ + /* move stamp forward with absolut diff ticks */ + timestamp += (now - lastinc); + else /* we have rollover of incrementer */ + timestamp += (0xFFFFFFFF - lastinc) + now; + lastinc = now; + return timestamp; +} + +/* + * Delay x useconds AND preserve advance timstamp value + * assumes timer is ticking at 1 msec + */ +void __udelay(ulong usec) +{ + unsigned long long tmp; + ulong tmo; + + tmo = us_to_tick(usec); + tmp = get_ticks() + tmo; /* get current timestamp */ + + while (get_ticks() < tmp) /* loop till event */ + /*NOP*/; +} + +ulong get_timer(ulong base) +{ + return get_timer_masked() - base; +} + +void reset_timer_masked(void) +{ + lastinc = ~readl(&systimer_base->timer0value); + timestamp = 0; +} + +void reset_timer(void) +{ + reset_timer_masked(); +} + +ulong get_timer_masked(void) +{ + return tick_to_time(get_ticks()); +} + diff --git a/board/highbank/Makefile b/board/highbank/Makefile new file mode 100644 index 0000000..d5b8362 --- /dev/null +++ b/board/highbank/Makefile @@ -0,0 +1,49 @@ +# +# (C) Copyright 2000-2006 +# Wolfgang Denk, DENX Software Engineering, wd@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 := highbank.o + +SRCS := $(COBJS:.o=.c) +OBJS := $(addprefix $(obj),$(COBJS)) + +$(LIB): $(obj).depend $(OBJS) + $(call cmd_link_o_target, $(OBJS)) + +clean: + rm -f $(OBJS) + +distclean: clean + rm -f $(LIB) core *.bak $(obj).depend + +######################################################################### + +# defines $(obj).depend target +include $(SRCTREE)/rules.mk + +sinclude $(obj).depend + +######################################################################### diff --git a/board/highbank/highbank.c b/board/highbank/highbank.c new file mode 100644 index 0000000..bec3d2f --- /dev/null +++ b/board/highbank/highbank.c @@ -0,0 +1,58 @@ +/* + * Copyright 2010-2011 Calxeda, Inc. + * + * 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 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, see <http://www.gnu.org/licenses/>. + */ + +#include <common.h> +#include <ahci.h> +#include <scsi.h> + +#include <asm/sizes.h> + +DECLARE_GLOBAL_DATA_PTR; + +/* + * Miscellaneous platform dependent initialisations + */ +int board_init(void) +{ + icache_enable(); + + return 0; +} + +int misc_init_r(void) +{ + ahci_init(0xffe08000); + scsi_scan(1); + return 0; +} + +int dram_init(void) +{ + gd->ram_size = SZ_512M; + return 0; +} + +void dram_init_banksize(void) +{ + gd->bd->bi_dram[0].start = CONFIG_SYS_SDRAM_BASE; + gd->bd->bi_dram[0].size = PHYS_SDRAM_1_SIZE; +} + +void reset_cpu(ulong addr) +{ +} + diff --git a/boards.cfg b/boards.cfg index c31114d..dfa405e 100644 --- a/boards.cfg +++ b/boards.cfg @@ -173,6 +173,7 @@ dkb arm arm926ejs - Marvell pantheon integratorap_cm946es arm arm946es integrator armltd - integratorap integratorcp_cm946es arm arm946es integrator armltd - integratorcp ca9x4_ct_vxp arm armv7 vexpress armltd +highbank arm armv7 highbank - highbank efikamx arm armv7 efikamx - mx5 efikamx:IMX_CONFIG=board/efikamx/imximage.cfg mx51evk arm armv7 mx51evk freescale mx5 mx51evk:IMX_CONFIG=board/freescale/mx51evk/imximage.cfg mx53ard arm armv7 mx53ard freescale mx5 mx53ard:IMX_CONFIG=board/freescale/mx53ard/imximage_dd3.cfg diff --git a/include/configs/highbank.h b/include/configs/highbank.h new file mode 100644 index 0000000..9c85788 --- /dev/null +++ b/include/configs/highbank.h @@ -0,0 +1,113 @@ +/* + * Copyright 2010-2011 Calxeda, Inc. + * + * 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 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, see <http://www.gnu.org/licenses/>. + */ + +#ifndef __CONFIG_H +#define __CONFIG_H + +#define CONFIG_L2_OFF + +#define CONFIG_SYS_NO_FLASH +#define CFG_HZ 1000 +#define CONFIG_SYS_HZ CFG_HZ + +#define CONFIG_OF_LIBFDT +#define CONFIG_FIT +#define CONFIG_SYS_BOOTMAPSZ (16 << 20) + +/* + * Size of malloc() pool + */ +#define CONFIG_SYS_MALLOC_LEN (512 * 1024) + +#define CONFIG_PL011_SERIAL +#define CONFIG_PL011_CLOCK 150000000 +#define CONFIG_PL01x_PORTS { (void *)(0xFFF36000) } +#define CONFIG_CONS_INDEX 0 + +#define CONFIG_BAUDRATE 38400 +#define CONFIG_SYS_BAUDRATE_TABLE { 9600, 19200, 38400, 57600, 115200 } + +#define CONFIG_MISC_INIT_R +#define CONFIG_SCSI_AHCI +#define CONFIG_SCSI_AHCI_PLAT +#define CONFIG_SYS_SCSI_MAX_SCSI_ID 5 +#define CONFIG_SYS_SCSI_MAX_LUN 1 +#define CONFIG_SYS_SCSI_MAX_DEVICE (CONFIG_SYS_SCSI_MAX_SCSI_ID * \ + CONFIG_SYS_SCSI_MAX_LUN) + +#define CONFIG_DOS_PARTITION + +/* + * Command line configuration. + */ +#include <config_cmd_default.h> +#undef CONFIG_CMD_NET +#undef CONFIG_CMD_NFS + +#define CONFIG_CMD_BDI +#define CONFIG_CMD_ELF +#define CONFIG_CMD_MEMORY +#define CONFIG_CMD_LOADS +#define CONFIG_CMD_SCSI +#define CONFIG_CMD_EXT2 + +#define CONFIG_BOOTDELAY 2 +/* + * Miscellaneous configurable options + */ +#define CONFIG_CMDLINE_EDITING +#define CONFIG_AUTO_COMPLETE +#define CONFIG_SYS_LONGHELP /* undef to save memory */ +#define CONFIG_SYS_CBSIZE 256 /* Console I/O Buffer Size */ +#define CONFIG_SYS_MAXARGS 16 /* max number of cmd args */ +#define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE +#define CONFIG_SYS_PROMPT "Highbank #" +/* Print Buffer Size */ +#define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + \ + sizeof(CONFIG_SYS_PROMPT)+16) + +#define CONFIG_SYS_LOAD_ADDR 0x800000 + +/*----------------------------------------------------------------------- + * 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 +#define PHYS_SDRAM_1_SIZE (4089 << 20) +#define CONFIG_SYS_MEMTEST_START 0x100000 +#define CONFIG_SYS_MEMTEST_END (PHYS_SDRAM_1_SIZE - 0x100000) + +/* Room required on the stack for the environment data */ +#define CONFIG_ENV_SIZE 0x2000 +#define CONFIG_ENV_IS_NOWHERE + +#define CONFIG_SYS_SDRAM_BASE 0x00000000 +#define CONFIG_SYS_TEXT_BASE 0x00001000 +#define CONFIG_SYS_INIT_SP_ADDR 0x01000000 +#define CONFIG_SKIP_LOWLEVEL_INIT + +#endif