Patchwork [U-Boot,03/10] ARM: remove broken "ep7312" board.

login
register
mail settings
Submitter Wolfgang Denk
Date Sept. 5, 2011, 12:37 p.m.
Message ID <1315226254-16826-4-git-send-email-wd@denx.de>
Download mbox | patch
Permalink /patch/113349/
State Accepted
Commit c8f63b415fc7c53550fd613ed94e3d5dddf76d6f
Headers show

Comments

Wolfgang Denk - Sept. 5, 2011, 12:37 p.m.
Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Albert ARIBAUD <albert.u.boot@aribaud.net>
Cc: Marius Gröger <mag@sysgo.de>
---
 MAINTAINERS                                  |    1 -
 MAKEALL                                      |    1 -
 arch/arm/cpu/arm720t/cpu.c                   |    6 +-
 arch/arm/cpu/arm720t/interrupts.c            |    4 +-
 arch/arm/cpu/arm720t/start.S                 |    6 +-
 arch/arm/include/asm/arch-arm720t/hardware.h |    4 -
 board/ep7312/Makefile                        |   55 ----
 board/ep7312/config.mk                       |   28 --
 board/ep7312/ep7312.c                        |   66 -----
 board/ep7312/flash.c                         |  343 --------------------------
 board/ep7312/lowlevel_init.S                 |   95 -------
 boards.cfg                                   |    1 -
 doc/README.scrapyard                         |    1 +
 include/configs/ep7312.h                     |  173 -------------
 14 files changed, 9 insertions(+), 775 deletions(-)
 delete mode 100644 board/ep7312/Makefile
 delete mode 100644 board/ep7312/config.mk
 delete mode 100644 board/ep7312/ep7312.c
 delete mode 100644 board/ep7312/flash.c
 delete mode 100644 board/ep7312/lowlevel_init.S
 delete mode 100644 include/configs/ep7312.h
Wolfgang Denk - Sept. 7, 2011, 7:49 p.m.
Dear Wolfgang Denk,

In message <1315226254-16826-4-git-send-email-wd@denx.de> you wrote:
> Signed-off-by: Wolfgang Denk <wd@denx.de>
> Cc: Albert ARIBAUD <albert.u.boot@aribaud.net>
> Cc: Marius Gröger <mag@sysgo.de>
> ---
>  MAINTAINERS                                  |    1 -
>  MAKEALL                                      |    1 -
>  arch/arm/cpu/arm720t/cpu.c                   |    6 +-
>  arch/arm/cpu/arm720t/interrupts.c            |    4 +-
>  arch/arm/cpu/arm720t/start.S                 |    6 +-
>  arch/arm/include/asm/arch-arm720t/hardware.h |    4 -
>  board/ep7312/Makefile                        |   55 ----
>  board/ep7312/config.mk                       |   28 --
>  board/ep7312/ep7312.c                        |   66 -----
>  board/ep7312/flash.c                         |  343 --------------------------
>  board/ep7312/lowlevel_init.S                 |   95 -------
>  boards.cfg                                   |    1 -
>  doc/README.scrapyard                         |    1 +
>  include/configs/ep7312.h                     |  173 -------------
>  14 files changed, 9 insertions(+), 775 deletions(-)
>  delete mode 100644 board/ep7312/Makefile
>  delete mode 100644 board/ep7312/config.mk
>  delete mode 100644 board/ep7312/ep7312.c
>  delete mode 100644 board/ep7312/flash.c
>  delete mode 100644 board/ep7312/lowlevel_init.S
>  delete mode 100644 include/configs/ep7312.h

Applied, thanks.

Best regards,

Wolfgang Denk

Patch

diff --git a/MAINTAINERS b/MAINTAINERS
index 16edb67..83d3656 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -664,7 +664,6 @@  Simon Guinot <simon.guinot@sequanux.org>
 Marius Gröger <mag@sysgo.de>
 
 	impa7		ARM720T (EP7211)
-	ep7312		ARM720T (EP7312)
 
 Igor Grinberg <grinberg@compulab.co.il>
 
diff --git a/MAKEALL b/MAKEALL
index e35af42..40a1ecb 100755
--- a/MAKEALL
+++ b/MAKEALL
@@ -301,7 +301,6 @@  LIST_SA="$(boards_by_cpu sa1100)"
 #########################################################################
 
 LIST_ARM7="		\
-	ep7312		\
 	evb4510		\
 	impa7		\
 	lpc2292sodimm	\
diff --git a/arch/arm/cpu/arm720t/cpu.c b/arch/arm/cpu/arm720t/cpu.c
index ff992aa..71d8d6b 100644
--- a/arch/arm/cpu/arm720t/cpu.c
+++ b/arch/arm/cpu/arm720t/cpu.c
@@ -36,7 +36,7 @@ 
 #include <asm/hardware.h>
 #include <asm/system.h>
 
-#if defined(CONFIG_IMPA7) || defined(CONFIG_EP7312) || defined(CONFIG_ARMADILLO)
+#if defined(CONFIG_IMPA7)
 static void cache_flush(void);
 #endif
 
@@ -50,7 +50,7 @@  int cleanup_before_linux (void)
 	 * and we set the CPU-speed to 73 MHz - see start.S for details
 	 */
 
-#if defined(CONFIG_IMPA7) || defined(CONFIG_EP7312) || defined(CONFIG_ARMADILLO)
+#if defined(CONFIG_IMPA7)
 	disable_interrupts ();
 
 	/* turn off I-cache */
@@ -74,7 +74,7 @@  int cleanup_before_linux (void)
 	return 0;
 }
 
-#if defined(CONFIG_IMPA7) || defined(CONFIG_EP7312) || defined(CONFIG_ARMADILLO)
+#if defined(CONFIG_IMPA7)
 /* flush I/D-cache */
 static void cache_flush (void)
 {
diff --git a/arch/arm/cpu/arm720t/interrupts.c b/arch/arm/cpu/arm720t/interrupts.c
index fa9c5a2..3cebf11 100644
--- a/arch/arm/cpu/arm720t/interrupts.c
+++ b/arch/arm/cpu/arm720t/interrupts.c
@@ -149,7 +149,7 @@  int timer_init (void)
 
 	/* set timer 2 counter */
 	lastdec = TIMER_LOAD_VAL;
-#elif defined(CONFIG_IMPA7) || defined(CONFIG_EP7312) || defined(CONFIG_ARMADILLO)
+#elif defined(CONFIG_IMPA7)
 	/* disable all interrupts */
 	IO_INTMR1 = 0;
 
@@ -207,7 +207,7 @@  int timer_init (void)
  */
 
 
-#if defined(CONFIG_IMPA7) || defined(CONFIG_EP7312) || defined(CONFIG_NETARM) || defined(CONFIG_ARMADILLO) || defined(CONFIG_LPC2292)
+#if defined(CONFIG_IMPA7) || defined(CONFIG_NETARM) || defined(CONFIG_LPC2292)
 
 ulong get_timer (ulong base)
 {
diff --git a/arch/arm/cpu/arm720t/start.S b/arch/arm/cpu/arm720t/start.S
index e9a094f..f2320ee 100644
--- a/arch/arm/cpu/arm720t/start.S
+++ b/arch/arm/cpu/arm720t/start.S
@@ -272,7 +272,7 @@  _dynsym_start_ofs:
  *************************************************************************
  */
 
-#if defined(CONFIG_IMPA7) || defined(CONFIG_EP7312) || defined(CONFIG_ARMADILLO)
+#if defined(CONFIG_IMPA7)
 
 /* Interrupt-Controller base addresses */
 INTMR1:		.word	0x80000280 @ 32 bit size
@@ -301,7 +301,7 @@  MEMMAP_ADR:	.word	MEMMAP
 #endif
 
 cpu_init_crit:
-#if defined(CONFIG_IMPA7) || defined(CONFIG_EP7312) || defined(CONFIG_ARMADILLO)
+#if defined(CONFIG_IMPA7)
 
 	/*
 	 * mask all IRQs by clearing all bits in the INTMRs
@@ -634,7 +634,7 @@  fiq:
 
 #endif
 
-#if defined(CONFIG_IMPA7) || defined(CONFIG_EP7312) || defined(CONFIG_ARMADILLO)
+#if defined(CONFIG_IMPA7)
 	.align	5
 .globl reset_cpu
 reset_cpu:
diff --git a/arch/arm/include/asm/arch-arm720t/hardware.h b/arch/arm/include/asm/arch-arm720t/hardware.h
index 9bee19f..d89effa 100644
--- a/arch/arm/include/asm/arch-arm720t/hardware.h
+++ b/arch/arm/include/asm/arch-arm720t/hardware.h
@@ -28,10 +28,6 @@ 
 #include <asm/arch-arm720t/netarm_registers.h>
 #elif defined(CONFIG_IMPA7)
 /* include IMPA7 specific hardware file if there was one */
-#elif defined(CONFIG_EP7312)
-/* include EP7312 specific hardware file if there was one */
-#elif defined(CONFIG_ARMADILLO)
-/* include armadillo specific hardware file if there was one */
 #elif defined(CONFIG_INTEGRATOR) && defined(CONFIG_ARCH_INTEGRATOR)
 /* include IntegratorCP/CM720T specific hardware file if there was one */
 #else
diff --git a/board/ep7312/Makefile b/board/ep7312/Makefile
deleted file mode 100644
index f2d8cf5..0000000
--- a/board/ep7312/Makefile
+++ /dev/null
@@ -1,55 +0,0 @@ 
-#
-# (C) Copyright 2006
-# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
-#
-# (C) Copyright 2002
-# Sysgo Real-Time Solutions, GmbH <www.elinos.com>
-# Marius Groeger <mgroeger@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 $(TOPDIR)/config.mk
-
-LIB	= $(obj)lib$(BOARD).o
-
-COBJS	:= ep7312.o flash.o
-SOBJS	:= lowlevel_init.o
-
-SRCS	:= $(SOBJS:.o=.S) $(COBJS:.o=.c)
-OBJS	:= $(addprefix $(obj),$(COBJS))
-SOBJS	:= $(addprefix $(obj),$(SOBJS))
-
-$(LIB):	$(obj).depend $(OBJS) $(SOBJS)
-	$(call cmd_link_o_target, $(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/ep7312/config.mk b/board/ep7312/config.mk
deleted file mode 100644
index bdd08b8..0000000
--- a/board/ep7312/config.mk
+++ /dev/null
@@ -1,28 +0,0 @@ 
-#
-# (C) Copyright 2000
-# Sysgo Real-Time Solutions, GmbH <www.elinos.com>
-# Marius Groeger <mgroeger@sysgo.de>
-#
-# (C) Copyright 2000
-# 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
-#
-
-CONFIG_SYS_TEXT_BASE = 0xc0f80000
diff --git a/board/ep7312/ep7312.c b/board/ep7312/ep7312.c
deleted file mode 100644
index 8ed14ad..0000000
--- a/board/ep7312/ep7312.c
+++ /dev/null
@@ -1,66 +0,0 @@ 
-/*
- * (C) Copyright 2002
- * Sysgo Real-Time Solutions, GmbH <www.elinos.com>
- * Marius Groeger <mgroeger@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>
-#include <clps7111.h>
-
-DECLARE_GLOBAL_DATA_PTR;
-
-/*
- * Miscelaneous platform dependent initialisations
- */
-
-int board_init (void)
-{
-	/* Activate LED flasher */
-	IO_LEDFLSH = 0x40;
-
-	/* arch number MACH_TYPE_EDB7312 */
-	gd->bd->bi_arch_number = MACH_TYPE_EDB7312;
-
-	/* location of boot parameters */
-	gd->bd->bi_boot_params = 0xc0020100;
-
-	return 0;
-}
-
-int dram_init (void)
-{
-	gd->bd->bi_dram[0].start = PHYS_SDRAM_1;
-	gd->bd->bi_dram[0].size = PHYS_SDRAM_1_SIZE;
-
-	return (0);
-}
-
-#ifdef CONFIG_CMD_NET
-int board_eth_init(bd_t *bis)
-{
-	int rc = 0;
-#ifdef CONFIG_CS8900
-	rc = cs8900_initialize(0, CONFIG_CS8900_BASE);
-#endif
-	return rc;
-}
-#endif
diff --git a/board/ep7312/flash.c b/board/ep7312/flash.c
deleted file mode 100644
index 2ed9c9a..0000000
--- a/board/ep7312/flash.c
+++ /dev/null
@@ -1,343 +0,0 @@ 
-/*
- * (C) Copyright 2002
- * Sysgo Real-Time Solutions, GmbH <www.elinos.com>
- * Marius Groeger <mgroeger@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>
-
-#define FLASH_BANK_SIZE 0x1000000
-#define MAIN_SECT_SIZE  0x20000
-
-flash_info_t    flash_info[CONFIG_SYS_MAX_FLASH_BANKS];
-
-
-/*-----------------------------------------------------------------------
- */
-
-ulong flash_init (void)
-{
-	int i, j;
-	ulong size = 0;
-
-	for (i = 0; i < CONFIG_SYS_MAX_FLASH_BANKS; i++) {
-		ulong flashbase = 0;
-
-		flash_info[i].flash_id =
-				(INTEL_MANUFACT & FLASH_VENDMASK) |
-				(INTEL_ID_28F128J3 & FLASH_TYPEMASK);
-		flash_info[i].size = FLASH_BANK_SIZE;
-		flash_info[i].sector_count = CONFIG_SYS_MAX_FLASH_SECT;
-		memset (flash_info[i].protect, 0, CONFIG_SYS_MAX_FLASH_SECT);
-		if (i == 0)
-			flashbase = PHYS_FLASH_1;
-		else
-			panic ("configured too many flash banks!\n");
-		for (j = 0; j < flash_info[i].sector_count; j++) {
-			flash_info[i].start[j] = flashbase + j * MAIN_SECT_SIZE;
-		}
-		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;
-}
-
-/*-----------------------------------------------------------------------
- */
-void flash_print_info (flash_info_t * info)
-{
-	int i;
-
-	switch (info->flash_id & FLASH_VENDMASK) {
-	case (INTEL_MANUFACT & FLASH_VENDMASK):
-		printf ("Intel: ");
-		break;
-	default:
-		printf ("Unknown Vendor ");
-		break;
-	}
-
-	switch (info->flash_id & FLASH_TYPEMASK) {
-	case (INTEL_ID_28F128J3 & FLASH_TYPEMASK):
-		printf ("28F128J3 (128Mbit)\n");
-		break;
-	default:
-		printf ("Unknown Chip Type\n");
-		goto Done;
-		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");
-
-Done:	;
-}
-
-/*-----------------------------------------------------------------------
- */
-
-int flash_erase (flash_info_t * info, int s_first, int s_last)
-{
-	int flag, prot, sect;
-	int rc = ERR_OK;
-	ulong start;
-
-	if (info->flash_id == FLASH_UNKNOWN)
-		return ERR_UNKNOWN_FLASH_TYPE;
-
-	if ((s_first < 0) || (s_first > s_last)) {
-		return ERR_INVAL;
-	}
-
-	if ((info->flash_id & FLASH_VENDMASK) !=
-		(INTEL_MANUFACT & FLASH_VENDMASK)) {
-		return ERR_UNKNOWN_FLASH_VENDOR;
-	}
-
-	prot = 0;
-	for (sect = s_first; sect <= s_last; ++sect) {
-		if (info->protect[sect]) {
-			prot++;
-		}
-	}
-	if (prot)
-		return ERR_PROTECTED;
-
-	/*
-	 * Disable interrupts which might cause a timeout
-	 * here. Remember that our exception vectors are
-	 * at address 0 in the flash, and we don't want a
-	 * (ticker) exception to happen while the flash
-	 * chip is in programming mode.
-	 */
-	flag = disable_interrupts ();
-
-	/* Start erase on unprotected sectors */
-	for (sect = s_first; sect <= s_last && !ctrlc (); sect++) {
-
-		printf ("Erasing sector %2d ... ", sect);
-
-		/* arm simple, non interrupt dependent timer */
-		start = get_timer(0);
-
-		if (info->protect[sect] == 0) {	/* not protected */
-			vu_short *addr = (vu_short *) (info->start[sect]);
-
-			*addr = 0x20;		/* erase setup */
-			*addr = 0xD0;		/* erase confirm */
-
-			while ((*addr & 0x80) != 0x80) {
-				if (get_timer(start) > CONFIG_SYS_FLASH_ERASE_TOUT) {
-					*addr = 0xB0;	/* suspend erase */
-					*addr = 0xFF;	/* reset to read mode */
-					rc = ERR_TIMOUT;
-					goto outahere;
-				}
-			}
-
-			/* clear status register command */
-			*addr = 0x50;
-			/* reset to read mode */
-			*addr = 0xFF;
-		}
-		printf ("ok.\n");
-	}
-	if (ctrlc ())
-		printf ("User Interrupt!\n");
-
-  outahere:
-
-	/* allow flash to settle - wait 10 ms */
-	udelay_masked (10000);
-
-	if (flag)
-		enable_interrupts ();
-
-	return rc;
-}
-
-/*-----------------------------------------------------------------------
- * Copy memory to flash
- */
-
-static int write_word (flash_info_t * info, ulong dest, ushort data)
-{
-	vu_short *addr = (vu_short *) dest, val;
-	int rc = ERR_OK;
-	int flag;
-	ulong start;
-
-	/* Check if Flash is (sufficiently) erased
-	 */
-	if ((*addr & data) != data)
-		return ERR_NOT_ERASED;
-
-	/*
-	 * Disable interrupts which might cause a timeout
-	 * here. Remember that our exception vectors are
-	 * at address 0 in the flash, and we don't want a
-	 * (ticker) exception to happen while the flash
-	 * chip is in programming mode.
-	 */
-	flag = disable_interrupts ();
-
-	/* clear status register command */
-	*addr = 0x50;
-
-	/* program set-up command */
-	*addr = 0x40;
-
-	/* latch address/data */
-	*addr = data;
-
-	/* arm simple, non interrupt dependent timer */
-	start = get_timer(0);
-
-	/* wait while polling the status register */
-	while (((val = *addr) & 0x80) != 0x80) {
-		if (get_timer(start) > CONFIG_SYS_FLASH_WRITE_TOUT) {
-			rc = ERR_TIMOUT;
-			/* suspend program command */
-			*addr = 0xB0;
-			goto outahere;
-		}
-	}
-
-	if (val & 0x1A) {			/* check for error */
-		printf ("\nFlash write error %02x at address %08lx\n",
-				(int) val, (unsigned long) dest);
-		if (val & (1 << 3)) {
-			printf ("Voltage range error.\n");
-			rc = ERR_PROG_ERROR;
-			goto outahere;
-		}
-		if (val & (1 << 1)) {
-			printf ("Device protect error.\n");
-			rc = ERR_PROTECTED;
-			goto outahere;
-		}
-		if (val & (1 << 4)) {
-			printf ("Programming error.\n");
-			rc = ERR_PROG_ERROR;
-			goto outahere;
-		}
-		rc = ERR_PROG_ERROR;
-		goto outahere;
-	}
-
-  outahere:
-	/* read array command */
-	*addr = 0xFF;
-
-	if (flag)
-		enable_interrupts ();
-
-	return rc;
-}
-
-/*-----------------------------------------------------------------------
- * Copy memory to flash.
- */
-
-int write_buff (flash_info_t * info, uchar * src, ulong addr, ulong cnt)
-{
-	ulong cp, wp;
-	ushort data;
-	int l;
-	int i, rc;
-
-	wp = (addr & ~1);			/* get lower word aligned address */
-
-	/*
-	 * 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 << 8);
-		}
-		for (; i < 2 && cnt > 0; ++i) {
-			data = (data >> 8) | (*src++ << 8);
-			--cnt;
-			++cp;
-		}
-		for (; cnt == 0 && i < 2; ++i, ++cp) {
-			data = (data >> 8) | (*(uchar *) cp << 8);
-		}
-
-		if ((rc = write_word (info, wp, data)) != 0) {
-			return (rc);
-		}
-		wp += 2;
-	}
-
-	/*
-	 * handle word aligned part
-	 */
-	while (cnt >= 2) {
-		data = *((vu_short *) src);
-		if ((rc = write_word (info, wp, data)) != 0) {
-			return (rc);
-		}
-		src += 2;
-		wp += 2;
-		cnt -= 2;
-	}
-
-	if (cnt == 0) {
-		return ERR_OK;
-	}
-
-	/*
-	 * handle unaligned tail bytes
-	 */
-	data = 0;
-	for (i = 0, cp = wp; i < 2 && cnt > 0; ++i, ++cp) {
-		data = (data >> 8) | (*src++ << 8);
-		--cnt;
-	}
-	for (; i < 2; ++i, ++cp) {
-		data = (data >> 8) | (*(uchar *) cp << 8);
-	}
-
-	return write_word (info, wp, data);
-}
diff --git a/board/ep7312/lowlevel_init.S b/board/ep7312/lowlevel_init.S
deleted file mode 100644
index 5dadb31..0000000
--- a/board/ep7312/lowlevel_init.S
+++ /dev/null
@@ -1,95 +0,0 @@ 
-/*
- * Memory Setup stuff - taken from ???
- *
- * 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 <config.h>
-#include <version.h>
-
-
-/* some parameters for the board */
-
-SYSCON1:	.long	0x80000100
-SYSCON2:	.long	0x80001100
-SYSCON3:	.long	0x80002200
-MEMCFG1:	.long	0x80000180
-MEMCFG2:	.long	0x800001C0
-SDCONF:		.long	0x80002300
-SDRFPR:		.long	0x80002340
-
-syscon1_val:	.long	0x00040100
-syscon2_val:	.long	0x00000102
-syscon3_val:	.long	0x0000020E
-memcfg1_val:	.long	0x1f101710
-memcfg2_mask:	.long	0x0000ffff @ only set lower 16 bits
-memcfg2_val:	.long	0x00001f13 @ upper 16 bits are reserved for CS7 + CS6
-sdrfpr_val:	.long	0x00000240
-sdconf_val:	.long	0x00000522
-/* setting up the memory */
-
-.globl lowlevel_init
-lowlevel_init:
-	/*
-	 * SYSCON1-3
-	 */
-	ldr	r0, SYSCON1
-	ldr	r1, syscon1_val
-	str	r1, [r0]
-
-	ldr	r0, SYSCON2
-	ldr	r1, syscon2_val
-	str	r1, [r0]
-
-	ldr	r0, SYSCON3
-	ldr	r1, syscon3_val
-	str	r1, [r0]
-
-	/*
-	 * MEMCFG1
-	 */
-	ldr	r0, MEMCFG1
-	ldr	r1, memcfg1_val
-	str	r1, [r0]
-
-	/*
-	 * MEMCFG2
-	 */
-	ldr	r0, MEMCFG2
-	ldr	r2, [r0]
-	ldr	r1, memcfg2_mask
-	bic	r2, r2, r1
-	ldr	r1, memcfg2_val
-	orr	r2, r2, r1
-	str	r2, [r0]
-
-	/*
-	 * SDRFPR,SDCONF
-	 */
-	ldr	r0, SDCONF
-	ldr	r1, sdconf_val
-	str	r1, [r0]
-
-	ldr	r0, SDRFPR
-	ldr	r1, sdrfpr_val
-	str	r1, [r0]
-
-	/* everything is fine now */
-	mov	pc, lr
diff --git a/boards.cfg b/boards.cfg
index c4ec13d..95fe50c 100644
--- a/boards.cfg
+++ b/boards.cfg
@@ -42,7 +42,6 @@  imx31_litekit                arm         arm1136     -                   logicpd
 mx35pdk                      arm         arm1136     -                   freescale      mx35
 omap2420h4                   arm         arm1136     -                   ti             omap24xx
 tnetv107x_evm                arm         arm1176     tnetv107xevm        ti             tnetv107x
-ep7312                       arm         arm720t
 impa7                        arm         arm720t
 modnet50                     arm         arm720t
 integratorap_cm720t          arm         arm720t     integrator          armltd         -           integratorap
diff --git a/doc/README.scrapyard b/doc/README.scrapyard
index a34c2ed..f010ded 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
 =============================================================================
+ep7312	arm	arm720t	-	  2011-09-05	Marius Gröger <mag@sysgo.de>
 dnp1110	arm	sa1100	-	  2011-09-05	Alex Züpke <azu@sysgo.de>
 SMN42	arm	arm720t	-	  2011-09-05
 at91rm9200dk arm arm920t 1c85752  2011-07-17
diff --git a/include/configs/ep7312.h b/include/configs/ep7312.h
deleted file mode 100644
index fdb98b5..0000000
--- a/include/configs/ep7312.h
+++ /dev/null
@@ -1,173 +0,0 @@ 
-/*
- * (C) Copyright 2000
- * Sysgo Real-Time Solutions, GmbH <www.elinos.com>
- * Marius Groeger <mgroeger@sysgo.de>
- *
- * Configuation settings for the EP7312 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_ARM7		1	/* This is a ARM7 CPU	*/
-#define CONFIG_EP7312		1	/* on an EP7312 Board      */
-#define CONFIG_ARM_THUMB	1	/* this is an ARM720TDMI */
-#undef  CONFIG_ARM7_REVD		/* disable ARM720 REV.D Workarounds */
-
-#undef CONFIG_USE_IRQ			/* don't need them anymore */
-
-/*
- * Size of malloc() pool
- */
-#define CONFIG_SYS_MALLOC_LEN		(CONFIG_ENV_SIZE + 128*1024)
-
-/*
- * Hardware drivers
- */
-#define CONFIG_NET_MULTI
-#define CONFIG_CS8900		/* we have a CS8900 on-board */
-#define CONFIG_CS8900_BASE	0x20000000
-#define CONFIG_CS8900_BUS16
-#undef  CONFIG_CS8900_BUS32
-
-/*
- * select serial console configuration
- */
-#define CONFIG_CLPS7111_SERIAL
-#define CONFIG_SERIAL1		1	/* we use Serial line 1 */
-
-/* allow to overwrite serial and ethaddr */
-#define CONFIG_ENV_OVERWRITE
-
-#define CONFIG_BAUDRATE		9600
-
-/*
- * BOOTP options
- */
-#define CONFIG_BOOTP_SUBNETMASK
-#define CONFIG_BOOTP_GATEWAY
-#define CONFIG_BOOTP_HOSTNAME
-#define CONFIG_BOOTP_BOOTPATH
-#define CONFIG_BOOTP_BOOTFILESIZE
-
-
-/*
- * Command line configuration.
- */
-#include <config_cmd_default.h>
-
-#define CONFIG_CMD_JFFS2
-
-
-#define CONFIG_BOOTDELAY	3
-#define CONFIG_BOOTARGS		"devfs=mount root=ramfs console=ttyS0,9600"
-#define CONFIG_ETHADDR		08:00:3e:21:c7:f7
-/*#define CONFIG_NETMASK        255.255.0.0	*/
-/*#define CONFIG_IPADDR		172.22.2.128	*/
-/*#define CONFIG_SERVERIP	172.22.2.126	*/
-/*#define CONFIG_BOOTFILE	"impa7"	*/
-#define CONFIG_BOOTCOMMAND	"bootp;bootm"
-
-#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_LONGHELP				/* undef to save memory		*/
-#define	CONFIG_SYS_PROMPT		"EP7312 # "	/* Monitor Command Prompt	*/
-#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_MEMTEST_START	0xc0400000	/* memtest works on	*/
-#define CONFIG_SYS_MEMTEST_END		0xc0800000	/* 4 ... 8 MB in DRAM	*/
-
-#define	CONFIG_SYS_LOAD_ADDR		0xc0500000	/* default load address	*/
-
-#define	CONFIG_SYS_HZ			2000		/* decrementer freq: 2 kHz */
-
-						/* valid baudrates */
-#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 2 banks of DRAM */
-#define PHYS_SDRAM_1		0xc0000000 /* SDRAM Bank #1 */
-#define PHYS_SDRAM_1_SIZE	0x01000000 /* 16 MB */
-
-#define PHYS_FLASH_1		0x00000000 /* Flash Bank #1 */
-#define PHYS_FLASH_SIZE		0x01000000 /* 16 MB */
-
-#define CONFIG_SYS_FLASH_BASE		PHYS_FLASH_1
-
-/*-----------------------------------------------------------------------
- * 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	(2*CONFIG_SYS_HZ) /* Timeout for Flash Erase */
-#define CONFIG_SYS_FLASH_WRITE_TOUT	(2*CONFIG_SYS_HZ) /* Timeout for Flash Write */
-
-#define	CONFIG_ENV_IS_IN_FLASH	1
-#define CONFIG_ENV_ADDR		(PHYS_FLASH_1 + 0x20000)	/* Addr of Environment Sector	*/
-#define CONFIG_ENV_SIZE		0x20000	/* Total Size of Environment Sector	*/
-
-/*
- * JFFS2 partitions
- *
- */
-/* No command line, one static partition, whole device */
-#undef CONFIG_CMD_MTDPARTS
-#define CONFIG_JFFS2_DEV		"nor0"
-#define CONFIG_JFFS2_PART_SIZE		0xFFFFFFFF
-#define CONFIG_JFFS2_PART_OFFSET	0x00000000
-
-/* mtdparts command line support */
-/* Note: fake mtd_id used, no linux mtd map file */
-/*
-#define CONFIG_CMD_MTDPARTS
-#define MTDIDS_DEFAULT		"nor0=ep7312-0"
-#define MTDPARTS_DEFAULT	"mtdparts=ep7312-0:-(jffs2)"
-*/
-
-#endif	/* __CONFIG_H */