
On 13:24 Mon 29 Jun , Daniel Gorsulowski wrote:
This patch adds support for esd gmbh MEESC board. The MEESC is based on an Atmel AT91SAM9263 SoC.
Signed-off-by: Daniel Gorsulowski Daniel.Gorsulowski@esd.eu
MAINTAINERS | 4 + MAKEALL | 1 + Makefile | 3 + board/esd/meesc/Makefile | 55 ++++++++++++ board/esd/meesc/config.mk | 1 + board/esd/meesc/meesc.c | 197 +++++++++++++++++++++++++++++++++++++++++++ board/esd/meesc/partition.c | 37 ++++++++ include/configs/meesc.h | 188 +++++++++++++++++++++++++++++++++++++++++ 8 files changed, 486 insertions(+), 0 deletions(-) create mode 100644 board/esd/meesc/Makefile create mode 100644 board/esd/meesc/config.mk create mode 100644 board/esd/meesc/meesc.c create mode 100644 board/esd/meesc/partition.c create mode 100644 include/configs/meesc.h
diff --git a/MAINTAINERS b/MAINTAINERS index f36a1cc..c9066a9 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -530,6 +530,10 @@ Peter Figuli peposh@etc.sk
wepep250 xscale
+Daniel Gorsulowski daniel.gorsulowski@esd.eu
- meesc ARM926EJS (AT91SAM9263 SoC)
Marius Gr�ger mag@sysgo.de
impa7 ARM720T (EP7211) diff --git a/MAKEALL b/MAKEALL index 063ebfc..47eb5af 100755 --- a/MAKEALL +++ b/MAKEALL @@ -583,6 +583,7 @@ LIST_at91=" \ cmc_pu2 \ csb637 \ kb9202 \
- meesc \ mp2usb \ m501sk \ pm9261 \
diff --git a/Makefile b/Makefile index 0d92d67..282b9fd 100644 --- a/Makefile +++ b/Makefile @@ -2769,6 +2769,9 @@ at91sam9rlek_config : unconfig fi; @$(MKCONFIG) -a at91sam9rlek arm arm926ejs at91sam9rlek atmel at91
+meesc_config : unconfig
- @$(MKCONFIG) $(@:_config=) arm arm926ejs meesc esd at91
pm9261_config : unconfig @$(MKCONFIG) $(@:_config=) arm arm926ejs pm9261 ronetix at91
diff --git a/board/esd/meesc/Makefile b/board/esd/meesc/Makefile new file mode 100644 index 0000000..2dd6b25 --- /dev/null +++ b/board/esd/meesc/Makefile @@ -0,0 +1,55 @@ +# +# (C) Copyright 2003-2008 +# Wolfgang Denk, DENX Software Engineering, wd@denx.de. +# +# (C) Copyright 2008 +# Stelian Pop stelian.pop@leadtechdesign.com +# Lead Tech Design <www.leadtechdesign.com> +# +# 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).a
+COBJS-y += $(BOARD).o +COBJS-$(CONFIG_HAS_DATAFLASH) += partition.o
+SRCS := $(SOBJS:.o=.S) $(COBJS-y:.o=.c) +OBJS := $(addprefix $(obj),$(COBJS-y)) +SOBJS := $(addprefix $(obj),$(SOBJS))
+$(LIB): $(obj).depend $(OBJS) $(SOBJS)
- $(AR) $(ARFLAGS) $@ $(OBJS) $(SOBJS)
+clean:
- rm -f $(SOBJS) $(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/esd/meesc/config.mk b/board/esd/meesc/config.mk new file mode 100644 index 0000000..9ce161e --- /dev/null +++ b/board/esd/meesc/config.mk @@ -0,0 +1 @@ +TEXT_BASE = 0x21f00000 diff --git a/board/esd/meesc/meesc.c b/board/esd/meesc/meesc.c new file mode 100644 index 0000000..cb567ac --- /dev/null +++ b/board/esd/meesc/meesc.c @@ -0,0 +1,197 @@ +/*
- (C) Copyright 2007-2008
- Stelian Pop stelian.pop@leadtechdesign.com
- Lead Tech Design <www.leadtechdesign.com>
- (C) Copyright 2009
- Daniel Gorsulowski daniel.gorsulowski@esd.eu
- esd electronic system design gmbh <www.esd.eu>
- 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 <asm/arch/at91sam9263.h> +#include <asm/arch/at91sam9_matrix.h> +#include <asm/arch/at91sam9_smc.h> +#include <asm/arch/at91_common.h> +#include <asm/arch/at91_pmc.h> +#include <asm/arch/at91_rstc.h> +#include <asm/arch/clk.h> +#include <asm/arch/gpio.h> +#include <asm/arch/hardware.h> +#include <asm/arch/io.h> +#include <netdev.h>
+DECLARE_GLOBAL_DATA_PTR;
+/*
- Miscelaneous platform dependent initialisations
- */
you miss my point here as if you can use the get_hw_rev multiple time then please do something like thie
static int hw_rev = -1; /* hardware revision */
int get_hw_rev(void) { if (hw_rev >= 0) return hw_rev;
hw_rev = at91_get_gpio_value(AT91_PIN_PB19);
hw_rev |= at91_get_gpio_value(AT91_PIN_PB20) << 1; hw_rev |= at91_get_gpio_value(AT91_PIN_PB21) << 2; hw_rev |= at91_get_gpio_value(AT91_PIN_PB22) << 3;
if (hw_rev == 15) hw_rev = 0;
return hw_rev; }
<snip>
+#define CONFIG_MACB 1 +#define CONFIG_RMII 1 +#define CONFIG_NET_MULTI 1 +#define CONFIG_NET_RETRY_COUNT 20 +#undef CONFIG_RESET_PHY_R
+#define CONFIG_SYS_LOAD_ADDR 0x22000000 /* load address */
+#define CONFIG_SYS_MEMTEST_START PHYS_SDRAM +#define CONFIG_SYS_MEMTEST_END 0x21e00000
+#define CONFIG_SYS_USE_DATAFLASH 1 +#undef CONFIG_SYS_USE_NANDFLASH
+#ifdef CONFIG_SYS_USE_DATAFLASH
+/* CAN */ +#define CONFIG_CAN 1
CONFIG_AT91_CAN will be better as the code is at91 specific
Best Regards, J.