summaryrefslogtreecommitdiffstats
path: root/arch/m68k
diff options
context:
space:
mode:
Diffstat (limited to 'arch/m68k')
-rw-r--r--arch/m68k/Kconfig182
-rw-r--r--arch/m68k/Makefile82
-rw-r--r--arch/m68k/boards/kp_ukd_r1_num/Makefile31
-rw-r--r--arch/m68k/boards/kp_ukd_r1_num/env/bin/_update36
-rw-r--r--arch/m68k/boards/kp_ukd_r1_num/env/bin/boot38
-rw-r--r--arch/m68k/boards/kp_ukd_r1_num/env/bin/init20
-rw-r--r--arch/m68k/boards/kp_ukd_r1_num/env/bin/pcidmaloop14
-rw-r--r--arch/m68k/boards/kp_ukd_r1_num/env/bin/pciloop13
-rw-r--r--arch/m68k/boards/kp_ukd_r1_num/env/bin/update_kernel8
-rw-r--r--arch/m68k/boards/kp_ukd_r1_num/env/bin/update_root8
-rw-r--r--arch/m68k/boards/kp_ukd_r1_num/env/config32
-rw-r--r--arch/m68k/boards/kp_ukd_r1_num/highlevel_init.c124
-rw-r--r--arch/m68k/boards/kp_ukd_r1_num/kp_ukd_r1_num.c160
-rw-r--r--arch/m68k/boards/kp_ukd_r1_num/kp_ukd_r1_num.dox13
-rw-r--r--arch/m68k/boards/kp_ukd_r1_num/lowlevel_init.c183
-rw-r--r--arch/m68k/boards/kp_ukd_r1_num/pci-stubs.c41
-rw-r--r--arch/m68k/boards/phycore_mcf54xx/Makefile31
-rw-r--r--arch/m68k/boards/phycore_mcf54xx/env/bin/_update36
-rw-r--r--arch/m68k/boards/phycore_mcf54xx/env/bin/boot38
-rw-r--r--arch/m68k/boards/phycore_mcf54xx/env/bin/init20
-rw-r--r--arch/m68k/boards/phycore_mcf54xx/env/bin/pcidmaloop14
-rw-r--r--arch/m68k/boards/phycore_mcf54xx/env/bin/pciloop13
-rw-r--r--arch/m68k/boards/phycore_mcf54xx/env/bin/update_kernel8
-rw-r--r--arch/m68k/boards/phycore_mcf54xx/env/bin/update_root8
-rw-r--r--arch/m68k/boards/phycore_mcf54xx/env/config32
-rw-r--r--arch/m68k/boards/phycore_mcf54xx/highlevel_init.c124
-rw-r--r--arch/m68k/boards/phycore_mcf54xx/lowlevel_init.c194
-rw-r--r--arch/m68k/boards/phycore_mcf54xx/pci-stubs.c41
-rw-r--r--arch/m68k/boards/phycore_mcf54xx/phyCore_MCF54xx.c139
-rw-r--r--arch/m68k/boards/phycore_mcf54xx/phyCore_MCF54xx.dox14
-rw-r--r--arch/m68k/configs/phycore_kpukdr1_5475num_defconfig36
-rw-r--r--arch/m68k/configs/phycore_mcf54xx_defconfig36
-rw-r--r--arch/m68k/cpu/Makefile41
-rw-r--r--arch/m68k/cpu/cpu.c185
-rw-r--r--arch/m68k/cpu/cw_console_io.c116
-rw-r--r--arch/m68k/cpu/early_init_support.c41
-rw-r--r--arch/m68k/cpu/interrupts.c246
-rw-r--r--arch/m68k/cpu/start-mcfv4e.S677
-rw-r--r--arch/m68k/include/asm/atomic.h25
-rw-r--r--arch/m68k/include/asm/barebox-m68k.h40
-rw-r--r--arch/m68k/include/asm/barebox.h33
-rw-r--r--arch/m68k/include/asm/bitops.h141
-rw-r--r--arch/m68k/include/asm/bootinfo.h381
-rw-r--r--arch/m68k/include/asm/byteorder.h43
-rw-r--r--arch/m68k/include/asm/coldfire/mcf548x.h63
-rw-r--r--arch/m68k/include/asm/coldfire/mcf548x/mcf548x_can.h159
-rw-r--r--arch/m68k/include/asm/coldfire/mcf548x/mcf548x_ctm.h88
-rw-r--r--arch/m68k/include/asm/coldfire/mcf548x/mcf548x_dma.h121
-rw-r--r--arch/m68k/include/asm/coldfire/mcf548x/mcf548x_dma_ereq.h62
-rw-r--r--arch/m68k/include/asm/coldfire/mcf548x/mcf548x_dspi.h155
-rw-r--r--arch/m68k/include/asm/coldfire/mcf548x/mcf548x_eport.h98
-rw-r--r--arch/m68k/include/asm/coldfire/mcf548x/mcf548x_fbcs.h97
-rw-r--r--arch/m68k/include/asm/coldfire/mcf548x/mcf548x_fec.h623
-rw-r--r--arch/m68k/include/asm/coldfire/mcf548x/mcf548x_gpio.h708
-rw-r--r--arch/m68k/include/asm/coldfire/mcf548x/mcf548x_gpt.h100
-rw-r--r--arch/m68k/include/asm/coldfire/mcf548x/mcf548x_i2c.h69
-rw-r--r--arch/m68k/include/asm/coldfire/mcf548x/mcf548x_intc.h329
-rw-r--r--arch/m68k/include/asm/coldfire/mcf548x/mcf548x_pci.h349
-rw-r--r--arch/m68k/include/asm/coldfire/mcf548x/mcf548x_pciarb.h50
-rw-r--r--arch/m68k/include/asm/coldfire/mcf548x/mcf548x_psc.h486
-rw-r--r--arch/m68k/include/asm/coldfire/mcf548x/mcf548x_sdramc.h109
-rw-r--r--arch/m68k/include/asm/coldfire/mcf548x/mcf548x_sec.h389
-rw-r--r--arch/m68k/include/asm/coldfire/mcf548x/mcf548x_siu.h69
-rw-r--r--arch/m68k/include/asm/coldfire/mcf548x/mcf548x_slt.h71
-rw-r--r--arch/m68k/include/asm/coldfire/mcf548x/mcf548x_sram.h66
-rw-r--r--arch/m68k/include/asm/coldfire/mcf548x/mcf548x_uart.h233
-rw-r--r--arch/m68k/include/asm/coldfire/mcf548x/mcf548x_usb.h509
-rw-r--r--arch/m68k/include/asm/coldfire/mcf548x/mcf548x_xlbarb.h45
-rw-r--r--arch/m68k/include/asm/coldfire/mcf5xxx.h258
-rw-r--r--arch/m68k/include/asm/common.h25
-rw-r--r--arch/m68k/include/asm/elf.h146
-rw-r--r--arch/m68k/include/asm/hardware.h30
-rw-r--r--arch/m68k/include/asm/io.h304
-rw-r--r--arch/m68k/include/asm/mach-types.h48
-rw-r--r--arch/m68k/include/asm/memory.h28
-rw-r--r--arch/m68k/include/asm/module.h36
-rw-r--r--arch/m68k/include/asm/posix_types.h86
-rw-r--r--arch/m68k/include/asm/processor.h46
-rw-r--r--arch/m68k/include/asm/ptrace.h55
-rw-r--r--arch/m68k/include/asm/setup.h412
-rw-r--r--arch/m68k/include/asm/string.h32
-rw-r--r--arch/m68k/include/asm/types.h82
-rw-r--r--arch/m68k/lib/Makefile31
-rw-r--r--arch/m68k/lib/barebox.lds.S92
-rw-r--r--arch/m68k/lib/m68k-linuxboot.c177
-rw-r--r--arch/m68k/lib/m68k-meminit.c43
-rw-r--r--arch/m68k/lib/m68k-module.c110
-rw-r--r--arch/m68k/mach-mcfv4e.dox39
-rw-r--r--arch/m68k/mach-mcfv4e/Kconfig18
-rw-r--r--arch/m68k/mach-mcfv4e/Makefile19
-rw-r--r--arch/m68k/mach-mcfv4e/dma_utils.c502
-rw-r--r--arch/m68k/mach-mcfv4e/fec.c1440
-rw-r--r--arch/m68k/mach-mcfv4e/fecbd.c232
-rw-r--r--arch/m68k/mach-mcfv4e/include/mach/clocks.h30
-rw-r--r--arch/m68k/mach-mcfv4e/include/mach/debug_ll.h33
-rw-r--r--arch/m68k/mach-mcfv4e/include/mach/hardware.h33
-rw-r--r--arch/m68k/mach-mcfv4e/include/mach/mcf54xx-regs.h30
-rw-r--r--arch/m68k/mach-mcfv4e/include/proc/dma_utils.h80
-rw-r--r--arch/m68k/mach-mcfv4e/include/proc/fec.h130
-rw-r--r--arch/m68k/mach-mcfv4e/include/proc/fecbd.h115
-rw-r--r--arch/m68k/mach-mcfv4e/include/proc/mcdapi/MCD_dma.h379
-rw-r--r--arch/m68k/mach-mcfv4e/include/proc/mcdapi/MCD_progCheck.h27
-rw-r--r--arch/m68k/mach-mcfv4e/include/proc/mcdapi/MCD_tasksInit.h66
-rw-r--r--arch/m68k/mach-mcfv4e/include/proc/net/eth.h70
-rw-r--r--arch/m68k/mach-mcfv4e/include/proc/net/nbuf.h88
-rw-r--r--arch/m68k/mach-mcfv4e/include/proc/net/net.h39
-rw-r--r--arch/m68k/mach-mcfv4e/include/proc/net/queue.h54
-rw-r--r--arch/m68k/mach-mcfv4e/include/proc/processor.h33
-rw-r--r--arch/m68k/mach-mcfv4e/include/proc/ptrace.h119
-rw-r--r--arch/m68k/mach-mcfv4e/mcdapi/MCD_dmaApi.c907
-rw-r--r--arch/m68k/mach-mcfv4e/mcdapi/MCD_library.dox10
-rw-r--r--arch/m68k/mach-mcfv4e/mcdapi/MCD_tasks.c2449
-rw-r--r--arch/m68k/mach-mcfv4e/mcdapi/MCD_tasksInit.c225
-rw-r--r--arch/m68k/mach-mcfv4e/mcdapi/Makefile26
-rw-r--r--arch/m68k/mach-mcfv4e/mcdapi/ReleaseNotes.txt27
-rw-r--r--arch/m68k/mach-mcfv4e/mcf_clocksource.c138
-rw-r--r--arch/m68k/mach-mcfv4e/mcf_reset_cpu.c45
-rw-r--r--arch/m68k/mach-mcfv4e/multichannel_dma.c51
-rw-r--r--arch/m68k/mach-mcfv4e/net/Makefile26
-rw-r--r--arch/m68k/mach-mcfv4e/net/nbuf.c239
-rw-r--r--arch/m68k/mach-mcfv4e/net/net.c156
-rw-r--r--arch/m68k/mach-mcfv4e/net/queue.c128
122 files changed, 0 insertions, 18830 deletions
diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig
deleted file mode 100644
index c9608da5cb..0000000000
--- a/arch/m68k/Kconfig
+++ /dev/null
@@ -1,182 +0,0 @@
-#
-# Default location of link barebox Image on M68k/Coldfire
-#
-config ARCH_TEXT_BASE
- hex
- default 0x07f00000 if MACH_MCF54xx
- default 0x07f00000 if MACH_MCF5445x
- help
- Vector table for M68k and barebox Link Address
-
- On M68k/Coldfire cores all exceptions and interrupts are routed through
- a vector array. This vector is by default at address 0x0000_0000, but
- can be moved to any other 1MB aligned address.
-
- We take advantage of this to move barebox out of low memory. Some BDM
- debuggers won't like a moved vector base and might need tweaking to
- work.
-
- Note: Respect alignment restrictions for TEXT_BASE, which must be
- 1MB aligned (VBR register constrain).
-
-#
-# Internal configurations
-#
-config BOARDINFO
- default "konzeptpark UKD Prototype with Phycore MCF5485" if MACH_KPUKDR1
- default "konzeptpark UKD Prototype with Phycore MCF5475 NUM" if MACH_KPUKDR1_NUM
- default "konzeptpark UKD Revision 2 with Phycore MCF5485" if MACH_KPUKDR2
- default "konzeptpark UKD Revision 2 with Phycore MCF5475 NUM" if MACH_KPUKDR2_NUM
- default "Phytec Baseboard with Phycore MCF5485" if MACH_PCM982_5485
- default "Phytec Baseboard with Phycore MCF5475" if MACH_PCM982_5475
- default "Phytec Baseboard with Phycore MCF5475 NUM" if MACH_PCM982_5475_NUM
- default "Phytec Baseboard with Phycore MCF54455" if MACH_PCM982_54455
- default "!No boardinfo string set!"
-
-config HAS_EARLY_INIT
- bool
- default n
-
-config BOARD_LINKER_SCRIPT
- bool
- default n
-
-config GENERIC_LINKER_SCRIPT
- bool
- default y
- depends on !BOARD_LINKER_SCRIPT
-
-config M68K
- bool
- select HAS_KALLSYMS
- select HAS_MODULES
- default y
-
-config MCFV4E
- bool
-
-config MCFV4M
- bool
-
-config ARCH_MCF54xx
- bool
- select MCFV4E
-
-config ARCH_MCF5445x
- bool
- select MCFV4M
-
-#
-# Board selection
-#
-choice
- prompt "Select your board"
-
-config MACH_KPUKDR1
- bool "konzeptpark UKD R1 + phyCore MCF5485"
- select HAS_CFI
- select ARCH_MCF54xx
- help
- Say Y here if you are using the konzeptpark UKD R1 with a
- Phytec Phycore PCM-024 equipped with a Freescale MC5485 Processor
-
-config MACH_KPUKDR1_NUM
- bool "konzeptpark UKD R1 + phyCore MCF5475 NUM"
- select HAS_CFI
- select ARCH_MCF54xx
- select MACH_HAS_LOWLEVEL_INIT
- help
- Say Y here if you are using the konzeptpark UKD R1 with a
- Phytec Phycore PCM-024-NUM equipped with a Freescale MC5475 Processor
-
-config MACH_KPUKDR2
- bool "konzeptpark UKD R2 + phyCore MCF5485"
- select HAS_CFI
- select ARCH_MCF54xx
- help
- Say Y here if you are using the konzeptpark UKD R2 with a
- Phytec Phycore PCM-024 equipped with a Freescale MC5485 Processor
-
-config MACH_KPUKDR2_NUM
- bool "konzeptpark UKD R2 + phyCore MCF5475 NUM"
- select HAS_CFI
- select ARCH_MCF54xx
- help
- Say Y here if you are using the konzeptpark UKD R2 with a
- Phytec Phycore PCM-024-NUM equipped with a Freescale MC5475 Processor
-
-config MACH_PCM982_5485
- bool "Phytec pcm982 + phyCore MCF5485"
- select HAS_CFI
- select ARCH_MCF54xx
- select MACH_HAS_LOWLEVEL_INIT
- help
- Say Y here if you are using the Phytec Phycore PCM-024 equipped
- with a Freescale MC5485 Processor
-
-config MACH_PCM982_5475
- bool "Phytec pcm982 + phyCore MCF5475"
- select HAS_CFI
- select ARCH_MCF54xx
- select MACH_HAS_LOWLEVEL_INIT
- help
- Say Y here if you are using the Phytec Phycore PCM-024 equipped
- with a Freescale MC5475 Processor
-
-config MACH_PCM982_5475_NUM
- bool "Phytec pcm982 + phyCore MCF5475 NUM"
- select HAS_CFI
- select ARCH_MCF54xx
- select MACH_HAS_LOWLEVEL_INIT
- help
- Say Y here if you are using the Phytec Phycore PCM-024 equipped
- with a Freescale MC5475 Processor (NUM Variant)
-
-config MACH_PCM982_54455
- bool "Phytec pcm982 + phyCore MCF54455 (experimental)"
- select HAS_CFI
- select ARCH_MCF5445x
- help
- Say Y here if you are using the Phytec Phycore PCM-mcf54455 equipped
- with a Freescale MC54455 Processor (experimental)
-
-endchoice
-
-#
-# M68k/Coldfire Subarch Configuration
-#
-source arch/m68k/mach-mcfv4e/Kconfig
-
-menu "M68k/Coldfire specific Linux boot settings"
-
-config CMDLINE_TAG
- bool "Send commandline to kernel"
- default y
- help
- If you want to start a 2.6 kernel say y here.
-
-config SETUP_MEMORY_TAGS
- bool "send memory definition to kernel"
- default y
- help
- If you want to start a 2.6 kernel say y here.
-
-config INITRD_TAG
- bool "send initrd params to kernel"
- default n
- help
- If you want to start a 2.6 kernel and use an
- initrd image say y here.
-
-endmenu
-
-#
-# Common barebox options
-#
-
-source common/Kconfig
-source commands/Kconfig
-source net/Kconfig
-source drivers/Kconfig
-source fs/Kconfig
-source lib/Kconfig
diff --git a/arch/m68k/Makefile b/arch/m68k/Makefile
deleted file mode 100644
index 86afb24732..0000000000
--- a/arch/m68k/Makefile
+++ /dev/null
@@ -1,82 +0,0 @@
-#
-# (C) Copyright 2007 Carsten Schlote <schlote@vahanus.net>
-# See file CREDITS for list of people who contributed to this project.
-#
-# This file is part of barebox.
-#
-# barebox 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 3 of the License, or
-# (at your option) any later version.
-#
-# barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
-#
-
-CPPFLAGS += -isystem $(gccincdir) -fno-strict-aliasing
-
-
-machine-$(CONFIG_ARCH_MCF54xx) := mcfv4e
-board-$(CONFIG_MACH_KPUKDR1) := kp_ukd_r1
-board-$(CONFIG_MACH_KPUKDR1_NUM) := kp_ukd_r1_num
-board-$(CONFIG_MACH_KPUKDR2) := kp_ukd_r2
-board-$(CONFIG_MACH_KPUKDR2_NUM) := kp_ukd_r2_num
-board-$(CONFIG_MACH_PCM982_5485) := phycore_mcf54xx
-board-$(CONFIG_MACH_PCM982_5475) := phycore_mcf54xx
-board-$(CONFIG_MACH_PCM982_5475_NUM) := phycore_mcf54xx_num
-board-$(CONFIG_MACH_PCM982_54455) := phycore_mcf5445x
-
-cpu-$(CONFIG_MCFV4E) := mcfv4e
-cpu-$(CONFIG_MCFV4M) := mcfv4m
-
-TEXT_BASE = $(CONFIG_TEXT_BASE)
-
-CPPFLAGS += -DTEXT_BASE=$(TEXT_BASE) -P
-AFLAGS += -gdwarf-2 -save-temps
-# FIXME - remove overide
-CFLAGS += -msoft-float -mcfv4e -gdwarf-2 -feliminate-unused-debug-types \
- -fmerge-all-constants
-# Incompatible code in barebox for -std=c99
-LDFLAGS_barebox :=-L $(shell dirname `$(CC) $(CFLAGS) -print-libgcc-file-name`) -lgcc
-# --verbose --stats
-
-machdirs := $(patsubst %,arch/m68k/mach-%/,$(machine-y))
-
-ifeq ($(KBUILD_SRC),)
-CPPFLAGS += $(patsubst %,-I%include,$(machdirs))
-else
-CPPFLAGS += $(patsubst %,-I$(srctree)/%include,$(machdirs))
-endif
-
-
-all: $(KBUILD_IMAGE)
-
-archprepare: maketools
-
-PHONY += maketools
-
-
-ifneq ($(board-y),)
-BOARD := arch/m68k/boards/$(board-y)/
-else
-BOARD :=
-endif
-
-ifneq ($(machine-y),)
-MACH := arch/m68k/mach-$(machine-y)/
-else
-MACH :=
-endif
-
-common-y += $(BOARD) $(MACH)
-common-y += arch/m68k/lib/ arch/m68k/cpu/
-
-lds-$(CONFIG_GENERIC_LINKER_SCRIPT) := arch/m68k/lib/barebox.lds
-lds-$(CONFIG_BOARD_LINKER_SCRIPT) := $(BOARD)/barebox.lds
-
-CLEAN_FILES += arch/m68k/lib/barebox.lds
diff --git a/arch/m68k/boards/kp_ukd_r1_num/Makefile b/arch/m68k/boards/kp_ukd_r1_num/Makefile
deleted file mode 100644
index 65f2a02fca..0000000000
--- a/arch/m68k/boards/kp_ukd_r1_num/Makefile
+++ /dev/null
@@ -1,31 +0,0 @@
-#
-# (C) Copyright 2007 Carsten Schlote <schlote@vahanus.net>
-# See file CREDITS for list of people who contributed to this project.
-#
-# This file is part of barebox.
-#
-# barebox 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 3 of the License, or
-# (at your option) any later version.
-#
-# barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
-#
-
-# The build system allows to split everything into distinct files covering an
-# separate issue. Use that!
-
-# Board specific callbacks and initialisations
-
-obj-y += lowlevel_init.o
-obj-y += highlevel_init.o
-obj-y += kp_ukd_r1_num.o
-
-obj-y += pci-stubs.o
-
diff --git a/arch/m68k/boards/kp_ukd_r1_num/env/bin/_update b/arch/m68k/boards/kp_ukd_r1_num/env/bin/_update
deleted file mode 100644
index 014bce3512..0000000000
--- a/arch/m68k/boards/kp_ukd_r1_num/env/bin/_update
+++ /dev/null
@@ -1,36 +0,0 @@
-#!/bin/sh
-
-if [ -z "$part" -o -z "$image" ]; then
- echo "define \$part and \$image"
- exit 1
-fi
-
-if [ ! -e "$part" ]; then
- echo "Partition $part does not exist"
- exit 1
-fi
-
-if [ $# = 1 ]; then
- image=$1
-fi
-
-if [ x$ip = xdhcp ]; then
- dhcp
-fi
-
-ping $eth0.serverip
-if [ $? -ne 0 ] ; then
- echo "update aborted"
- exit 1
-fi
-
-unprotect $part
-
-echo
-echo "erasing partition $part"
-erase $part
-
-echo
-echo "flashing $image to $part"
-echo
-tftp $image $part
diff --git a/arch/m68k/boards/kp_ukd_r1_num/env/bin/boot b/arch/m68k/boards/kp_ukd_r1_num/env/bin/boot
deleted file mode 100644
index c9fcbac620..0000000000
--- a/arch/m68k/boards/kp_ukd_r1_num/env/bin/boot
+++ /dev/null
@@ -1,38 +0,0 @@
-#!/bin/sh
-
-. /env/config
-
-if [ x$1 = xflash ]; then
- root=flash
- kernel=flash
-fi
-
-if [ x$1 = xnet ]; then
- root=net
- kernel=net
-fi
-
-if [ x$ip = xdhcp ]; then
- bootargs="$bootargs ip=dhcp"
-else
- bootargs="$bootargs ip=$eth0.ipaddr:$eth0.serverip:$eth0.gateway:$eth0.netmask:::"
-fi
-
-if [ x$root = xflash ]; then
- bootargs="$bootargs root=$rootpart rootfstype=jffs2"
-else
- bootargs="$bootargs root=/dev/nfs nfsroot=$eth0.serverip:$nfsroot"
-fi
-
-bootargs="$bootargs mtdparts=physmap-flash.0:$mtdparts"
-
-if [ $kernel = net ]; then
- if [ x$ip = xdhcp ]; then
- dhcp
- fi
- tftp $uimage uImage || exit 1
- bootm uImage
-else
- bootm /dev/nor0.kernel
-fi
-
diff --git a/arch/m68k/boards/kp_ukd_r1_num/env/bin/init b/arch/m68k/boards/kp_ukd_r1_num/env/bin/init
deleted file mode 100644
index 48e2139f7d..0000000000
--- a/arch/m68k/boards/kp_ukd_r1_num/env/bin/init
+++ /dev/null
@@ -1,20 +0,0 @@
-#!/bin/sh
-
-PATH=/env/bin
-export PATH
-
-. /env/config
-addpart /dev/nor0 $mtdparts
-
-echo
-echo -n "Hit any key to stop autoboot: "
-timeout -a $autoboot_timeout
-if [ $? != 0 ]; then
- echo
- echo "type update_kernel [<imagename>] to update kernel into flash"
- echo "type udate_root [<imagename>] to update rootfs into flash"
- echo
- exit
-fi
-
-boot \ No newline at end of file
diff --git a/arch/m68k/boards/kp_ukd_r1_num/env/bin/pcidmaloop b/arch/m68k/boards/kp_ukd_r1_num/env/bin/pcidmaloop
deleted file mode 100644
index 24e76cbed7..0000000000
--- a/arch/m68k/boards/kp_ukd_r1_num/env/bin/pcidmaloop
+++ /dev/null
@@ -1,14 +0,0 @@
-pci stat
-pci stat -c
-while true; do
- pci readm 32 0xA1000000 32 -s
- pci readm 32 0xA2000000 256 -s
- pci dmatx 2000 a2000100 128 -s
- pci writem 32 0xa2000100 0x12345678 4 -s
- pci readm 32 0xA3000000 256 -s
- pci dmatx 2000 a3000040 128 -s
- pci writem 32 0xa3000100 0x12345678 4 -s
- pci readm 32 0xA4000000 16 -s
- pci dmatx 2000 a4000080 4 -s
- pci writem 32 0xa4000080 0x12345678 4 -s
-done
diff --git a/arch/m68k/boards/kp_ukd_r1_num/env/bin/pciloop b/arch/m68k/boards/kp_ukd_r1_num/env/bin/pciloop
deleted file mode 100644
index 4a804f9f31..0000000000
--- a/arch/m68k/boards/kp_ukd_r1_num/env/bin/pciloop
+++ /dev/null
@@ -1,13 +0,0 @@
-pci stat
-pci stat -c
-while true; do
- pci readm 32 0xA1000000 32 -s
- pci readm 32 0xA2000000 256 -s
- pci writem 32 0xa2000100 0x12345678 4 -s
- pci readm 32 0xA3000000 256 -s
- pci writem 32 0xa3000100 0x12345678 4 -s
- pci readm 32 0xA4000000 16 -s
- pci writem 32 0xa4000080 0x12345678 4 -s
-
-# pci dmatx 2000 a3000040 128 -s
-done
diff --git a/arch/m68k/boards/kp_ukd_r1_num/env/bin/update_kernel b/arch/m68k/boards/kp_ukd_r1_num/env/bin/update_kernel
deleted file mode 100644
index 1ad95fc5d6..0000000000
--- a/arch/m68k/boards/kp_ukd_r1_num/env/bin/update_kernel
+++ /dev/null
@@ -1,8 +0,0 @@
-#!/bin/sh
-
-. /env/config
-
-image=$uimage
-part=/dev/nor0.kernel
-
-. /env/bin/_update $1
diff --git a/arch/m68k/boards/kp_ukd_r1_num/env/bin/update_root b/arch/m68k/boards/kp_ukd_r1_num/env/bin/update_root
deleted file mode 100644
index b757a5b922..0000000000
--- a/arch/m68k/boards/kp_ukd_r1_num/env/bin/update_root
+++ /dev/null
@@ -1,8 +0,0 @@
-#!/bin/sh
-
-. /env/config
-
-image=$jffs2
-part=/dev/nor0.root
-
-. /env/bin/_update $1
diff --git a/arch/m68k/boards/kp_ukd_r1_num/env/config b/arch/m68k/boards/kp_ukd_r1_num/env/config
deleted file mode 100644
index 14958ba1df..0000000000
--- a/arch/m68k/boards/kp_ukd_r1_num/env/config
+++ /dev/null
@@ -1,32 +0,0 @@
-#!/bin/sh
-
-# can be either 'net' or 'flash'
-kernel=net
-root=net
-
-# use 'dhcp' todo dhcp in barebox and in kernel
-ip=dhcp
-
-#
-# setup default ethernet address
-#
-eth0.ipaddr=192.168.0.99
-eth0.netmask=255.255.255.0
-eth0.gateway=192.168.0.110
-eth0.serverip=192.168.0.110
-
-uimage=uImage-mcf5475
-jffs2=root-mcf5475-ptx.jffs2
-
-autoboot_timeout=3
-
-#nfsroot="/home/cschlote/src/bitshrine/ltib/rootfs"
-nfsroot="/home/cschlote/src/pengutronics/ptxdist-project-KP-UKD/root-debug,v3"
-bootargs="console=ttyS0 rw initcall_debug debug"
-
-#
-# setup the partitions in the main flash
-#
-mtdparts=512k(self),256k(env),3M(kernel),-(root)
-rootpart="/dev/mtdblock3"
-
diff --git a/arch/m68k/boards/kp_ukd_r1_num/highlevel_init.c b/arch/m68k/boards/kp_ukd_r1_num/highlevel_init.c
deleted file mode 100644
index 3a88cd68c7..0000000000
--- a/arch/m68k/boards/kp_ukd_r1_num/highlevel_init.c
+++ /dev/null
@@ -1,124 +0,0 @@
-/*
- * (C) 2007,2008 konzeptpark, Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * @brief This file contains high-level init functions.
- *
- */
-#include <common.h>
-#include <reloc.h>
-#include <config.h>
-#include <mach/mcf54xx-regs.h>
-
-static void board_gpio_init(void)
-{
- /*
- * Enable Ethernet signals so that, if a cable is plugged into
- * the ports, the lines won't be floating and potentially cause
- * erroneous transmissions
- */
- MCF_GPIO_PAR_FECI2CIRQ = 0
- | MCF_GPIO_PAR_FECI2CIRQ_PAR_E1MDC_EMDC
- | MCF_GPIO_PAR_FECI2CIRQ_PAR_E1MDIO_EMDIO
- | MCF_GPIO_PAR_FECI2CIRQ_PAR_E1MII
- | MCF_GPIO_PAR_FECI2CIRQ_PAR_E17
- | MCF_GPIO_PAR_FECI2CIRQ_PAR_E0MDC
- | MCF_GPIO_PAR_FECI2CIRQ_PAR_E0MDIO
- | MCF_GPIO_PAR_FECI2CIRQ_PAR_E0MII
- | MCF_GPIO_PAR_FECI2CIRQ_PAR_E07;
-}
-
-
-static void board_psc_init(void)
-{
-#if (CFG_EARLY_UART_PORT == 0)
- MCF_GPIO_PAR_PSC0 = (0
-#ifdef HARDWARE_FLOW_CONTROL
- | MCF_GPIO_PAR_PSC0_PAR_CTS0_CTS
- | MCF_GPIO_PAR_PSC0_PAR_RTS0_RTS
-#endif
- | MCF_GPIO_PAR_PSC0_PAR_TXD0
- | MCF_GPIO_PAR_PSC0_PAR_RXD0);
-#elif (CFG_EARLY_UART_PORT == 1)
- MCF_GPIO_PAR_PSC1 = (0
-#ifdef HARDWARE_FLOW_CONTROL
- | MCF_GPIO_PAR_PSC1_PAR_CTS1_CTS
- | MCF_GPIO_PAR_PSC1_PAR_RTS1_RTS
-#endif
- | MCF_GPIO_PAR_PSC1_PAR_TXD1
- | MCF_GPIO_PAR_PSC1_PAR_RXD1);
-#elif (CFG_EARLY_UART_PORT == 2)
- MCF_GPIO_PAR_PSC2 = (0
-#ifdef HARDWARE_FLOW_CONTROL
- | MCF_GPIO_PAR_PSC2_PAR_CTS2_CTS
- | MCF_GPIO_PAR_PSC2_PAR_RTS2_RTS
-#endif
- | MCF_GPIO_PAR_PSC2_PAR_TXD2
- | MCF_GPIO_PAR_PSC2_PAR_RXD2);
-#elif (CFG_EARLY_UART_PORT == 3)
- MCF_GPIO_PAR_PSC3 = (0
-#ifdef HARDWARE_FLOW_CONTROL
- | MCF_GPIO_PAR_PSC3_PAR_CTS3_CTS
- | MCF_GPIO_PAR_PSC3_PAR_RTS3_RTS
-#endif
- | MCF_GPIO_PAR_PSC3_PAR_TXD3
- | MCF_GPIO_PAR_PSC3_PAR_RXD3);
-#else
-#error "Invalid CFG_EARLY_UART_PORT setting"
-#endif
-
- /* Put PSC in UART mode */
- MCF_PSC_SICR(CFG_EARLY_UART_PORT) = MCF_PSC_SICR_SIM_UART;
-
- /* Call generic UART initialization */
-// mcf5xxx_uart_init(DBUG_UART_PORT, board_get_baud());
-}
-
-
-/** Do board specific early init
- *
- * @note We run at link address now, you can now call other code
- */
-void board_init_highlevel(void)
-{
- /* Initialize platform specific GPIOs */
- board_gpio_init();
-
- /* Init UART GPIOs and Modes */
- board_psc_init();
-
- /* Setup the early init data */
-#ifdef CONFIG_HAS_EARLY_INIT
- early_init();
-#endif
- /* Configure the early debug output facility */
-#ifdef CONFIG_DEBUG_LL
- early_debug_init();
-#endif
-}
-
-/** Provide address of early debug low-level output
- *
- * @todo Should return real address for UART register map.
- */
-void *get_early_console_base(const char *name)
-{
- return (void*)1 + CFG_EARLY_UART_PORT;
-}
diff --git a/arch/m68k/boards/kp_ukd_r1_num/kp_ukd_r1_num.c b/arch/m68k/boards/kp_ukd_r1_num/kp_ukd_r1_num.c
deleted file mode 100644
index 7475ab326b..0000000000
--- a/arch/m68k/boards/kp_ukd_r1_num/kp_ukd_r1_num.c
+++ /dev/null
@@ -1,160 +0,0 @@
-/*
- * (C) 2007 konzeptpark, Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-
-#include <common.h>
-#include <init.h>
-#include <driver.h>
-#include <fec.h>
-#include <environment.h>
-#include <mach/mcf54xx-regs.h>
-//#include <mach/gpio.h>
-#include <mach/clocks.h>
-#include <asm/io.h>
-#include <partition.h>
-
-/*
- * Return board clock in MHz FIXME move to clocks file
- */
-ulong mcfv4e_get_bus_clk(void)
-{
- return CFG_SYSTEM_CORE_CLOCK;
-}
-/*
- * Up to 64MiB NOR type flash, connected to
- * CS line 0, data width is 32 bit
- */
-static struct device_d cfi_dev = {
- .id = -1,
- .name = "cfi_flash",
- .map_base = CFG_FLASH_ADDRESS,
- .size = CFG_FLASH_SIZE,
-};
-
-/*
- * up to 2MiB static RAM type memory, connected
- * to CS4, data width is 16 bit
- */
-//static struct device_d sram_dev = {
-// .id = -1,
-// .name = "sram",
-//FIXME .map_base = IMX_CS4_BASE,
-//FIXME .size = IMX_CS4_RANGE, /* area size */
-//};
-
-/*
- * ?MiB NAND type flash, data width 8 bit
- */
-//static struct device_d nand_dev = {
-// .id = -1,
-// .name = "cfi_flash_nand",
-// .map_base = 0xfc000000, /* FIXME */
-// .size = 32 * 1024 * 1024, /* FIXME */
-//};
-
-
-/*
- * Build in FastEthernetControllers (FECs)
- */
-static struct fec_platform_data fec_info = {
- .xcv_type = MII100,
-};
-
-static struct device_d network_dev0 = {
- .id = -1,
- .name = "fec_mcf54xx",
- .map_base = MCF_FEC_ADDR(0),
- .size = MCF_FEC_SIZE(0), /* area size */
- .platform_data = &fec_info,
-};
-static struct device_d network_dev1 = {
- .id = -1,
- .name = "fec_mcf54xx",
- .map_base = MCF_FEC_ADDR(1),
- .size = MCF_FEC_SIZE(1), /* area size */
- .platform_data = &fec_info,
-};
-
-/*
- * 128MiB of SDRAM, data width is 32 bit
- */
-static struct memory_platform_data ram_pdata = {
- .name = "ram0",
- .flags = DEVFS_RDWR,
-};
-
-static struct device_d sdram_dev = {
- .id = -1,
- .name = "mem",
- .map_base = CFG_SDRAM_ADDRESS,
- .size = CFG_SDRAM_SIZE,
- .platform_data = &ram_pdata,
-};
-
-static int mcfv4e_devices_init(void)
-{
- printf("Setting up board devices...\n");
-
- /* setup pins for I2C2 (for EEPROM, RTC) */
-//FIXME imx_gpio_mode(MUX_CSPI2_MOSI_I2C2_SCL);
-//FIXME imx_gpio_mode(MUX_CSPI2_MISO_I2C2_SCL);
-
- register_device(&cfi_dev);
-
- /*
- * Create partitions that should be
- * not touched by any regular user
- */
- devfs_add_partition("nor0", 0x00000, 0x80000, PARTITION_FIXED, "self0"); /* ourself */
- devfs_add_partition("nor0", 0x80000, 0x40000, PARTITION_FIXED, "env0"); /* environment */
- protect_file("/dev/env0", 1);
-
- //register_device(&sram_dev);
- //register_device(&nand_dev);
-
- register_device(&network_dev0);
- //register_device(&network_dev1);
-
- register_device(&sdram_dev);
-
- return 0;
-}
-
-device_initcall(mcfv4e_devices_init);
-
-static struct device_d mcfv4e_serial_device = {
- .id = -1,
- .name = "mcfv4e_serial",
- .map_base = 1+CFG_EARLY_UART_PORT,
- .size = 16 * 1024,
-};
-
-static int mcfv4e_console_init(void)
-{
- /* init gpios for serial port */
-
- /* Already set in lowlevel_init.c */
-
- register_device(&mcfv4e_serial_device);
- return 0;
-}
-
-console_initcall(mcfv4e_console_init);
-
diff --git a/arch/m68k/boards/kp_ukd_r1_num/kp_ukd_r1_num.dox b/arch/m68k/boards/kp_ukd_r1_num/kp_ukd_r1_num.dox
deleted file mode 100644
index ca0fcbcf39..0000000000
--- a/arch/m68k/boards/kp_ukd_r1_num/kp_ukd_r1_num.dox
+++ /dev/null
@@ -1,13 +0,0 @@
-/** @page kp_ukd_r1 konzeptpark MCB2 Prototype Board
-
-This target is based on a PhyTec PhyCore MCF54x5 NUM CPU. The card is shipped with:
-
-- up to 64MiB NOR type Flash Memory
-- 128MiB synchronous dynamic RAM
-- PCI USB 2.0 Host
-- PCCard Controller
-- MiniPCI Parallel
-- MiniPCIe (USB lane only)
-- ...
-
-*/
diff --git a/arch/m68k/boards/kp_ukd_r1_num/lowlevel_init.c b/arch/m68k/boards/kp_ukd_r1_num/lowlevel_init.c
deleted file mode 100644
index b3de505c24..0000000000
--- a/arch/m68k/boards/kp_ukd_r1_num/lowlevel_init.c
+++ /dev/null
@@ -1,183 +0,0 @@
-/*
- * (C) 2007 konzeptpark, Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * @brief This file contains ...
- *
- */
-#include <common.h>
-#include <config.h>
-#include <mach/mcf54xx-regs.h>
-
-/** Initialize board specific very early inits
- *
- * @note This code is not allowed to call other code - just init
- * your Chipselects and SDRAM stuff here!
- */
-void board_init_lowlevel(void)
-{
- /*
- * The phyCORE-MCF548x has a 32MB or 64MB boot flash.
- * The is a CF Card and ControlRegs on CS1 and CS2
- */
-
- /* Setup SysGlue Chip-Select */
- MCF_FBCS_CSAR5 = MCF_FBCS_CSAR_BA(CFG_SYSGLUE_ADDRESS);
-
- MCF_FBCS_CSCR5 = (MCF_FBCS_CSCR_PS_32
- | MCF_FBCS_CSCR_AA
- | MCF_FBCS_CSCR_ASET(1)
- | MCF_FBCS_CSCR_WS(CFG_SYSGLUE_WAIT_STATES));
-
- MCF_FBCS_CSMR5 = (MCF_FBCS_CSMR_BAM_16M
- | MCF_FBCS_CSMR_V);
-
- /* Setup boot flash chip-select */
- MCF_FBCS_CSAR0 = MCF_FBCS_CSAR_BA(CFG_FLASH_ADDRESS);
-
- MCF_FBCS_CSCR0 = (MCF_FBCS_CSCR_PS_32
- | MCF_FBCS_CSCR_AA
- | MCF_FBCS_CSCR_ASET(1)
- | MCF_FBCS_CSCR_WS(CFG_FLASH_WAIT_STATES));
-
- MCF_FBCS_CSMR0 = (MCF_FBCS_CSMR_BAM_32M
- | MCF_FBCS_CSMR_V);
-
- /*
- * Check to see if the SDRAM has already been initialized
- * by a run control tool
- */
- if (!(MCF_SDRAMC_SDCR & MCF_SDRAMC_SDCR_REF))
- {
- /*
- * Basic configuration and initialization
- */
- // 0x000002AA
- MCF_SDRAMC_SDRAMDS = (0
- | MCF_SDRAMC_SDRAMDS_SB_E(MCF_SDRAMC_SDRAMDS_DRIVE_8MA)
- | MCF_SDRAMC_SDRAMDS_SB_C(MCF_SDRAMC_SDRAMDS_DRIVE_8MA)
- | MCF_SDRAMC_SDRAMDS_SB_A(MCF_SDRAMC_SDRAMDS_DRIVE_8MA)
- | MCF_SDRAMC_SDRAMDS_SB_S(MCF_SDRAMC_SDRAMDS_DRIVE_8MA)
- | MCF_SDRAMC_SDRAMDS_SB_D(MCF_SDRAMC_SDRAMDS_DRIVE_8MA)
- );
-
- // 0x0000001A
- MCF_SDRAMC_CS0CFG = (0
- | MCF_SDRAMC_CSnCFG_CSBA(CFG_SDRAM_ADDRESS)
- | MCF_SDRAMC_CSnCFG_CSSZ(MCF_SDRAMC_CSnCFG_CSSZ_128MBYTE)
- );
-
- MCF_SDRAMC_CS1CFG = 0;
- MCF_SDRAMC_CS2CFG = 0;
- MCF_SDRAMC_CS3CFG = 0;
-
- // 0x73611730
- MCF_SDRAMC_SDCFG1 = (0
- | MCF_SDRAMC_SDCFG1_SRD2RW((unsigned int)((CFG_SDRAM_CASL + CFG_SDRAM_BL / 2 + 1) + 0.5))
- | MCF_SDRAMC_SDCFG1_SWT2RD((unsigned int) (CFG_SDRAM_TWR + 1))
- | MCF_SDRAMC_SDCFG1_RDLAT((unsigned int)((CFG_SDRAM_CASL * 2) + 2))
- | MCF_SDRAMC_SDCFG1_ACT2RW((unsigned int)(((CFG_SDRAM_TRCD / CFG_SYSTEM_CORE_PERIOD) - 1) + 0.5))
- | MCF_SDRAMC_SDCFG1_PRE2ACT((unsigned int)(((CFG_SDRAM_TRP / CFG_SYSTEM_CORE_PERIOD) - 1) + 0.5))
- | MCF_SDRAMC_SDCFG1_REF2ACT((unsigned int)(((CFG_SDRAM_TRFC / CFG_SYSTEM_CORE_PERIOD) - 1) + 0.5))
- | MCF_SDRAMC_SDCFG1_WTLAT(3)
- );
-
- // 0x46770000
- MCF_SDRAMC_SDCFG2 = (0
- | MCF_SDRAMC_SDCFG2_BRD2PRE(CFG_SDRAM_BL / 2)
- | MCF_SDRAMC_SDCFG2_BWT2RW(CFG_SDRAM_BL / 2 + CFG_SDRAM_TWR)
- | MCF_SDRAMC_SDCFG2_BRD2WT(7)
- | MCF_SDRAMC_SDCFG2_BL(CFG_SDRAM_BL - 1)
- );
-
- /*
- * Precharge and enable write to SDMR
- */
- // 0xE10B0002
- MCF_SDRAMC_SDCR = (0
- | MCF_SDRAMC_SDCR_MODE_EN
- | MCF_SDRAMC_SDCR_CKE
- | MCF_SDRAMC_SDCR_DDR
- | MCF_SDRAMC_SDCR_MUX(1) // 13 x 10 x 2 ==> MUX=1
- | MCF_SDRAMC_SDCR_RCNT((int)(((CFG_SDRAM_TREFI / (CFG_SYSTEM_CORE_PERIOD * 64)) - 1) + 0.5))
- | MCF_SDRAMC_SDCR_IPALL
- );
-
- /*
- * Write extended mode register
- */
- // 0x40010000
- MCF_SDRAMC_SDMR = (0
- | MCF_SDRAMC_SDMR_BNKAD_LEMR
- | MCF_SDRAMC_SDMR_AD(0x0)
- | MCF_SDRAMC_SDMR_CMD
- );
-
- /*
- * Write mode register and reset DLL
- */
- // 0x048d0000
- MCF_SDRAMC_SDMR = (0
- | MCF_SDRAMC_SDMR_BNKAD_LMR
- | MCF_SDRAMC_SDMR_AD(CFG_SDRAM_RESET_DLL | CFG_SDRAM_MOD)
- | MCF_SDRAMC_SDMR_CMD
- );
-
- /*
- * Execute a PALL command
- */
- // 0xE10B0002
- MCF_SDRAMC_SDCR |= MCF_SDRAMC_SDCR_IPALL;
-
- /*
- * Perform two REF cycles
- */
- // 0xE10B0004
- MCF_SDRAMC_SDCR |= MCF_SDRAMC_SDCR_IREF;
- MCF_SDRAMC_SDCR |= MCF_SDRAMC_SDCR_IREF;
-
- /*
- * Write mode register and clear reset DLL
- */
- // 0x008D0000
- MCF_SDRAMC_SDMR = (0
- | MCF_SDRAMC_SDMR_BNKAD_LMR
- | MCF_SDRAMC_SDMR_AD(CFG_SDRAM_MOD)
- | MCF_SDRAMC_SDMR_CMD
- );
-
- /*
- * Enable auto refresh and lock SDMR
- */
- // 0x610B0000
- MCF_SDRAMC_SDCR &= ~MCF_SDRAMC_SDCR_MODE_EN;
-
- // 0x710B0F00
- MCF_SDRAMC_SDCR |= (0
- | MCF_SDRAMC_SDCR_REF
- | MCF_SDRAMC_SDCR_DQS_OE(0xF)
- );
- }
-}
-
-/** @file
- *
- * Target specific early chipselect and SDRAM init.
- */
diff --git a/arch/m68k/boards/kp_ukd_r1_num/pci-stubs.c b/arch/m68k/boards/kp_ukd_r1_num/pci-stubs.c
deleted file mode 100644
index b7ab7c7d72..0000000000
--- a/arch/m68k/boards/kp_ukd_r1_num/pci-stubs.c
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
- * (C) 2007,2008 Carsten Schlote <schlote@vahanus.net>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * @brief This file contains callbacks for the PCI subsystem
- *
- */
-#include <common.h>
-#include <config.h>
-
-
-/** Returns mapping from PCI slot to CPU irq for the target board
- * @return Coldfire IRQ vector number, or -1 for no irq
- */
-int mcfv4e_pci_gethostirq(uint8_t slot, uint8_t irqpin)
-{
- int rc = -1;
- switch (slot)
- {
- case 16 : break;
- case 17 ... 21 : rc = 64 + 7; break; // Eport IRQ7
- }
- return rc;
-}
diff --git a/arch/m68k/boards/phycore_mcf54xx/Makefile b/arch/m68k/boards/phycore_mcf54xx/Makefile
deleted file mode 100644
index 054123fe75..0000000000
--- a/arch/m68k/boards/phycore_mcf54xx/Makefile
+++ /dev/null
@@ -1,31 +0,0 @@
-#
-# (C) Copyright 2007 Carsten Schlote <schlote@vahanus.net>
-# See file CREDITS for list of people who contributed to this project.
-#
-# This file is part of barebox.
-#
-# barebox 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 3 of the License, or
-# (at your option) any later version.
-#
-# barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
-#
-
-# The build system allows to split everything into distinct files covering an
-# separate issue. Use that!
-
-# Board specific callbacks and initialisations
-
-obj-y += lowlevel_init.o
-obj-y += highlevel_init.o
-obj-y += phyCore_MCF54xx.o
-
-obj-y += pci-stubs.o
-
diff --git a/arch/m68k/boards/phycore_mcf54xx/env/bin/_update b/arch/m68k/boards/phycore_mcf54xx/env/bin/_update
deleted file mode 100644
index 014bce3512..0000000000
--- a/arch/m68k/boards/phycore_mcf54xx/env/bin/_update
+++ /dev/null
@@ -1,36 +0,0 @@
-#!/bin/sh
-
-if [ -z "$part" -o -z "$image" ]; then
- echo "define \$part and \$image"
- exit 1
-fi
-
-if [ ! -e "$part" ]; then
- echo "Partition $part does not exist"
- exit 1
-fi
-
-if [ $# = 1 ]; then
- image=$1
-fi
-
-if [ x$ip = xdhcp ]; then
- dhcp
-fi
-
-ping $eth0.serverip
-if [ $? -ne 0 ] ; then
- echo "update aborted"
- exit 1
-fi
-
-unprotect $part
-
-echo
-echo "erasing partition $part"
-erase $part
-
-echo
-echo "flashing $image to $part"
-echo
-tftp $image $part
diff --git a/arch/m68k/boards/phycore_mcf54xx/env/bin/boot b/arch/m68k/boards/phycore_mcf54xx/env/bin/boot
deleted file mode 100644
index c9fcbac620..0000000000
--- a/arch/m68k/boards/phycore_mcf54xx/env/bin/boot
+++ /dev/null
@@ -1,38 +0,0 @@
-#!/bin/sh
-
-. /env/config
-
-if [ x$1 = xflash ]; then
- root=flash
- kernel=flash
-fi
-
-if [ x$1 = xnet ]; then
- root=net
- kernel=net
-fi
-
-if [ x$ip = xdhcp ]; then
- bootargs="$bootargs ip=dhcp"
-else
- bootargs="$bootargs ip=$eth0.ipaddr:$eth0.serverip:$eth0.gateway:$eth0.netmask:::"
-fi
-
-if [ x$root = xflash ]; then
- bootargs="$bootargs root=$rootpart rootfstype=jffs2"
-else
- bootargs="$bootargs root=/dev/nfs nfsroot=$eth0.serverip:$nfsroot"
-fi
-
-bootargs="$bootargs mtdparts=physmap-flash.0:$mtdparts"
-
-if [ $kernel = net ]; then
- if [ x$ip = xdhcp ]; then
- dhcp
- fi
- tftp $uimage uImage || exit 1
- bootm uImage
-else
- bootm /dev/nor0.kernel
-fi
-
diff --git a/arch/m68k/boards/phycore_mcf54xx/env/bin/init b/arch/m68k/boards/phycore_mcf54xx/env/bin/init
deleted file mode 100644
index 48e2139f7d..0000000000
--- a/arch/m68k/boards/phycore_mcf54xx/env/bin/init
+++ /dev/null
@@ -1,20 +0,0 @@
-#!/bin/sh
-
-PATH=/env/bin
-export PATH
-
-. /env/config
-addpart /dev/nor0 $mtdparts
-
-echo
-echo -n "Hit any key to stop autoboot: "
-timeout -a $autoboot_timeout
-if [ $? != 0 ]; then
- echo
- echo "type update_kernel [<imagename>] to update kernel into flash"
- echo "type udate_root [<imagename>] to update rootfs into flash"
- echo
- exit
-fi
-
-boot \ No newline at end of file
diff --git a/arch/m68k/boards/phycore_mcf54xx/env/bin/pcidmaloop b/arch/m68k/boards/phycore_mcf54xx/env/bin/pcidmaloop
deleted file mode 100644
index 24e76cbed7..0000000000
--- a/arch/m68k/boards/phycore_mcf54xx/env/bin/pcidmaloop
+++ /dev/null
@@ -1,14 +0,0 @@
-pci stat
-pci stat -c
-while true; do
- pci readm 32 0xA1000000 32 -s
- pci readm 32 0xA2000000 256 -s
- pci dmatx 2000 a2000100 128 -s
- pci writem 32 0xa2000100 0x12345678 4 -s
- pci readm 32 0xA3000000 256 -s
- pci dmatx 2000 a3000040 128 -s
- pci writem 32 0xa3000100 0x12345678 4 -s
- pci readm 32 0xA4000000 16 -s
- pci dmatx 2000 a4000080 4 -s
- pci writem 32 0xa4000080 0x12345678 4 -s
-done
diff --git a/arch/m68k/boards/phycore_mcf54xx/env/bin/pciloop b/arch/m68k/boards/phycore_mcf54xx/env/bin/pciloop
deleted file mode 100644
index 4a804f9f31..0000000000
--- a/arch/m68k/boards/phycore_mcf54xx/env/bin/pciloop
+++ /dev/null
@@ -1,13 +0,0 @@
-pci stat
-pci stat -c
-while true; do
- pci readm 32 0xA1000000 32 -s
- pci readm 32 0xA2000000 256 -s
- pci writem 32 0xa2000100 0x12345678 4 -s
- pci readm 32 0xA3000000 256 -s
- pci writem 32 0xa3000100 0x12345678 4 -s
- pci readm 32 0xA4000000 16 -s
- pci writem 32 0xa4000080 0x12345678 4 -s
-
-# pci dmatx 2000 a3000040 128 -s
-done
diff --git a/arch/m68k/boards/phycore_mcf54xx/env/bin/update_kernel b/arch/m68k/boards/phycore_mcf54xx/env/bin/update_kernel
deleted file mode 100644
index 1ad95fc5d6..0000000000
--- a/arch/m68k/boards/phycore_mcf54xx/env/bin/update_kernel
+++ /dev/null
@@ -1,8 +0,0 @@
-#!/bin/sh
-
-. /env/config
-
-image=$uimage
-part=/dev/nor0.kernel
-
-. /env/bin/_update $1
diff --git a/arch/m68k/boards/phycore_mcf54xx/env/bin/update_root b/arch/m68k/boards/phycore_mcf54xx/env/bin/update_root
deleted file mode 100644
index b757a5b922..0000000000
--- a/arch/m68k/boards/phycore_mcf54xx/env/bin/update_root
+++ /dev/null
@@ -1,8 +0,0 @@
-#!/bin/sh
-
-. /env/config
-
-image=$jffs2
-part=/dev/nor0.root
-
-. /env/bin/_update $1
diff --git a/arch/m68k/boards/phycore_mcf54xx/env/config b/arch/m68k/boards/phycore_mcf54xx/env/config
deleted file mode 100644
index 58550625d2..0000000000
--- a/arch/m68k/boards/phycore_mcf54xx/env/config
+++ /dev/null
@@ -1,32 +0,0 @@
-#!/bin/sh
-
-# can be either 'net' or 'flash'
-kernel=net
-root=net
-
-# use 'dhcp' todo dhcp in barebox and in kernel
-ip=dhcp
-
-#
-# setup default ethernet address
-#
-eth0.ipaddr=192.168.0.99
-eth0.netmask=255.255.255.0
-eth0.gateway=192.168.0.110
-eth0.serverip=192.168.0.110
-
-uimage=uImage-mcf5485
-jffs2=root-mcf5485-ptx.jffs2
-
-autoboot_timeout=3
-
-#nfsroot="/home/cschlote/src/bitshrine/ltib/rootfs"
-nfsroot="/home/cschlote/src/pengutronics/ptxdist-project-KP-UKD/root-debug,v3"
-bootargs="console=ttyS0 rw initcall_debug debug"
-
-#
-# setup the partitions in the main flash
-#
-mtdparts=512k(self),256k(env),3M(kernel),-(root)
-rootpart="/dev/mtdblock3"
-
diff --git a/arch/m68k/boards/phycore_mcf54xx/highlevel_init.c b/arch/m68k/boards/phycore_mcf54xx/highlevel_init.c
deleted file mode 100644
index 3a88cd68c7..0000000000
--- a/arch/m68k/boards/phycore_mcf54xx/highlevel_init.c
+++ /dev/null
@@ -1,124 +0,0 @@
-/*
- * (C) 2007,2008 konzeptpark, Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * @brief This file contains high-level init functions.
- *
- */
-#include <common.h>
-#include <reloc.h>
-#include <config.h>
-#include <mach/mcf54xx-regs.h>
-
-static void board_gpio_init(void)
-{
- /*
- * Enable Ethernet signals so that, if a cable is plugged into
- * the ports, the lines won't be floating and potentially cause
- * erroneous transmissions
- */
- MCF_GPIO_PAR_FECI2CIRQ = 0
- | MCF_GPIO_PAR_FECI2CIRQ_PAR_E1MDC_EMDC
- | MCF_GPIO_PAR_FECI2CIRQ_PAR_E1MDIO_EMDIO
- | MCF_GPIO_PAR_FECI2CIRQ_PAR_E1MII
- | MCF_GPIO_PAR_FECI2CIRQ_PAR_E17
- | MCF_GPIO_PAR_FECI2CIRQ_PAR_E0MDC
- | MCF_GPIO_PAR_FECI2CIRQ_PAR_E0MDIO
- | MCF_GPIO_PAR_FECI2CIRQ_PAR_E0MII
- | MCF_GPIO_PAR_FECI2CIRQ_PAR_E07;
-}
-
-
-static void board_psc_init(void)
-{
-#if (CFG_EARLY_UART_PORT == 0)
- MCF_GPIO_PAR_PSC0 = (0
-#ifdef HARDWARE_FLOW_CONTROL
- | MCF_GPIO_PAR_PSC0_PAR_CTS0_CTS
- | MCF_GPIO_PAR_PSC0_PAR_RTS0_RTS
-#endif
- | MCF_GPIO_PAR_PSC0_PAR_TXD0
- | MCF_GPIO_PAR_PSC0_PAR_RXD0);
-#elif (CFG_EARLY_UART_PORT == 1)
- MCF_GPIO_PAR_PSC1 = (0
-#ifdef HARDWARE_FLOW_CONTROL
- | MCF_GPIO_PAR_PSC1_PAR_CTS1_CTS
- | MCF_GPIO_PAR_PSC1_PAR_RTS1_RTS
-#endif
- | MCF_GPIO_PAR_PSC1_PAR_TXD1
- | MCF_GPIO_PAR_PSC1_PAR_RXD1);
-#elif (CFG_EARLY_UART_PORT == 2)
- MCF_GPIO_PAR_PSC2 = (0
-#ifdef HARDWARE_FLOW_CONTROL
- | MCF_GPIO_PAR_PSC2_PAR_CTS2_CTS
- | MCF_GPIO_PAR_PSC2_PAR_RTS2_RTS
-#endif
- | MCF_GPIO_PAR_PSC2_PAR_TXD2
- | MCF_GPIO_PAR_PSC2_PAR_RXD2);
-#elif (CFG_EARLY_UART_PORT == 3)
- MCF_GPIO_PAR_PSC3 = (0
-#ifdef HARDWARE_FLOW_CONTROL
- | MCF_GPIO_PAR_PSC3_PAR_CTS3_CTS
- | MCF_GPIO_PAR_PSC3_PAR_RTS3_RTS
-#endif
- | MCF_GPIO_PAR_PSC3_PAR_TXD3
- | MCF_GPIO_PAR_PSC3_PAR_RXD3);
-#else
-#error "Invalid CFG_EARLY_UART_PORT setting"
-#endif
-
- /* Put PSC in UART mode */
- MCF_PSC_SICR(CFG_EARLY_UART_PORT) = MCF_PSC_SICR_SIM_UART;
-
- /* Call generic UART initialization */
-// mcf5xxx_uart_init(DBUG_UART_PORT, board_get_baud());
-}
-
-
-/** Do board specific early init
- *
- * @note We run at link address now, you can now call other code
- */
-void board_init_highlevel(void)
-{
- /* Initialize platform specific GPIOs */
- board_gpio_init();
-
- /* Init UART GPIOs and Modes */
- board_psc_init();
-
- /* Setup the early init data */
-#ifdef CONFIG_HAS_EARLY_INIT
- early_init();
-#endif
- /* Configure the early debug output facility */
-#ifdef CONFIG_DEBUG_LL
- early_debug_init();
-#endif
-}
-
-/** Provide address of early debug low-level output
- *
- * @todo Should return real address for UART register map.
- */
-void *get_early_console_base(const char *name)
-{
- return (void*)1 + CFG_EARLY_UART_PORT;
-}
diff --git a/arch/m68k/boards/phycore_mcf54xx/lowlevel_init.c b/arch/m68k/boards/phycore_mcf54xx/lowlevel_init.c
deleted file mode 100644
index 2837e3ed67..0000000000
--- a/arch/m68k/boards/phycore_mcf54xx/lowlevel_init.c
+++ /dev/null
@@ -1,194 +0,0 @@
-/*
- * (C) 2007 konzeptpark, Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * @brief This file contains ...
- *
- */
-#include <common.h>
-#include <config.h>
-#include <mach/mcf54xx-regs.h>
-
-/** Initialize board specific very early inits
- *
- * @note This code is not allowed to call other code - just init
- * your Chipselects and SDRAM stuff here!
- */
-void board_init_lowlevel(void)
-{
- /*
- * The phyCORE-MCF548x has a 32MB or 64MB boot flash.
- * The is a CF Card and ControlRegs on CS1 and CS2
- */
-
- /* Setup SysGlue Chip-Select for user IOs */
- MCF_FBCS_CSAR2 = MCF_FBCS_CSAR_BA(CFG_XPLD_ADDRESS);
-
- MCF_FBCS_CSCR2 = (MCF_FBCS_CSCR_PS_16
- | MCF_FBCS_CSCR_AA
- | MCF_FBCS_CSCR_ASET(1)
- | MCF_FBCS_CSCR_WS(CFG_XPLD_WAIT_STATES));
-
- MCF_FBCS_CSMR2 = (MCF_FBCS_CSMR_BAM_16M
- | MCF_FBCS_CSMR_V);
-
- /* Setup SysGlue Chip-Select for CFCARD */
- MCF_FBCS_CSAR1 = MCF_FBCS_CSAR_BA(CFG_CFCARD_ADDRESS);
-
- MCF_FBCS_CSCR1 = (MCF_FBCS_CSCR_PS_16
- | MCF_FBCS_CSCR_AA
- | MCF_FBCS_CSCR_ASET(1)
- | MCF_FBCS_CSCR_WS(CFG_CFCARD_WAIT_STATES));
-
- MCF_FBCS_CSMR1 = (MCF_FBCS_CSMR_BAM_16M
- | MCF_FBCS_CSMR_V);
-
- /* Setup boot flash chip-select */
- MCF_FBCS_CSAR0 = MCF_FBCS_CSAR_BA(CFG_FLASH_ADDRESS);
-
- MCF_FBCS_CSCR0 = (MCF_FBCS_CSCR_PS_32
- | MCF_FBCS_CSCR_AA
- | MCF_FBCS_CSCR_ASET(1)
- | MCF_FBCS_CSCR_WS(CFG_FLASH_WAIT_STATES));
-
- MCF_FBCS_CSMR0 = (MCF_FBCS_CSMR_BAM_32M
- | MCF_FBCS_CSMR_V);
-
- /*
- * Check to see if the SDRAM has already been initialized
- * by a run control tool
- */
- if (!(MCF_SDRAMC_SDCR & MCF_SDRAMC_SDCR_REF))
- {
- /*
- * Basic configuration and initialization
- */
- // 0x000002AA
- MCF_SDRAMC_SDRAMDS = (0
- | MCF_SDRAMC_SDRAMDS_SB_E(MCF_SDRAMC_SDRAMDS_DRIVE_8MA)
- | MCF_SDRAMC_SDRAMDS_SB_C(MCF_SDRAMC_SDRAMDS_DRIVE_8MA)
- | MCF_SDRAMC_SDRAMDS_SB_A(MCF_SDRAMC_SDRAMDS_DRIVE_8MA)
- | MCF_SDRAMC_SDRAMDS_SB_S(MCF_SDRAMC_SDRAMDS_DRIVE_8MA)
- | MCF_SDRAMC_SDRAMDS_SB_D(MCF_SDRAMC_SDRAMDS_DRIVE_8MA)
- );
-
- // 0x0000001A
- MCF_SDRAMC_CS0CFG = (0
- | MCF_SDRAMC_CSnCFG_CSBA(CFG_SDRAM_ADDRESS)
- | MCF_SDRAMC_CSnCFG_CSSZ(MCF_SDRAMC_CSnCFG_CSSZ_128MBYTE)
- );
-
- MCF_SDRAMC_CS1CFG = 0;
- MCF_SDRAMC_CS2CFG = 0;
- MCF_SDRAMC_CS3CFG = 0;
-
- // 0x73611730
- MCF_SDRAMC_SDCFG1 = (0
- | MCF_SDRAMC_SDCFG1_SRD2RW((unsigned int)((CFG_SDRAM_CASL + CFG_SDRAM_BL / 2 + 1) + 0.5))
- | MCF_SDRAMC_SDCFG1_SWT2RD((unsigned int) (CFG_SDRAM_TWR + 1))
- | MCF_SDRAMC_SDCFG1_RDLAT((unsigned int)((CFG_SDRAM_CASL * 2) + 2))
- | MCF_SDRAMC_SDCFG1_ACT2RW((unsigned int)(((CFG_SDRAM_TRCD / CFG_SYSTEM_CORE_PERIOD) - 1) + 0.5))
- | MCF_SDRAMC_SDCFG1_PRE2ACT((unsigned int)(((CFG_SDRAM_TRP / CFG_SYSTEM_CORE_PERIOD) - 1) + 0.5))
- | MCF_SDRAMC_SDCFG1_REF2ACT((unsigned int)(((CFG_SDRAM_TRFC / CFG_SYSTEM_CORE_PERIOD) - 1) + 0.5))
- | MCF_SDRAMC_SDCFG1_WTLAT(3)
- );
-
- // 0x46770000
- MCF_SDRAMC_SDCFG2 = (0
- | MCF_SDRAMC_SDCFG2_BRD2PRE(CFG_SDRAM_BL / 2)
- | MCF_SDRAMC_SDCFG2_BWT2RW(CFG_SDRAM_BL / 2 + CFG_SDRAM_TWR)
- | MCF_SDRAMC_SDCFG2_BRD2WT(7)
- | MCF_SDRAMC_SDCFG2_BL(CFG_SDRAM_BL - 1)
- );
-
- /*
- * Precharge and enable write to SDMR
- */
- // 0xE10B0002
- MCF_SDRAMC_SDCR = (0
- | MCF_SDRAMC_SDCR_MODE_EN
- | MCF_SDRAMC_SDCR_CKE
- | MCF_SDRAMC_SDCR_DDR
- | MCF_SDRAMC_SDCR_MUX(1) // 13 x 10 x 2 ==> MUX=1
- | MCF_SDRAMC_SDCR_RCNT((int)(((CFG_SDRAM_TREFI / (CFG_SYSTEM_CORE_PERIOD * 64)) - 1) + 0.5))
- | MCF_SDRAMC_SDCR_IPALL
- );
-
- /*
- * Write extended mode register
- */
- // 0x40010000
- MCF_SDRAMC_SDMR = (0
- | MCF_SDRAMC_SDMR_BNKAD_LEMR
- | MCF_SDRAMC_SDMR_AD(0x0)
- | MCF_SDRAMC_SDMR_CMD
- );
-
- /*
- * Write mode register and reset DLL
- */
- // 0x048d0000
- MCF_SDRAMC_SDMR = (0
- | MCF_SDRAMC_SDMR_BNKAD_LMR
- | MCF_SDRAMC_SDMR_AD(CFG_SDRAM_RESET_DLL | CFG_SDRAM_MOD)
- | MCF_SDRAMC_SDMR_CMD
- );
-
- /*
- * Execute a PALL command
- */
- // 0xE10B0002
- MCF_SDRAMC_SDCR |= MCF_SDRAMC_SDCR_IPALL;
-
- /*
- * Perform two REF cycles
- */
- // 0xE10B0004
- MCF_SDRAMC_SDCR |= MCF_SDRAMC_SDCR_IREF;
- MCF_SDRAMC_SDCR |= MCF_SDRAMC_SDCR_IREF;
-
- /*
- * Write mode register and clear reset DLL
- */
- // 0x008D0000
- MCF_SDRAMC_SDMR = (0
- | MCF_SDRAMC_SDMR_BNKAD_LMR
- | MCF_SDRAMC_SDMR_AD(CFG_SDRAM_MOD)
- | MCF_SDRAMC_SDMR_CMD
- );
-
- /*
- * Enable auto refresh and lock SDMR
- */
- // 0x610B0000
- MCF_SDRAMC_SDCR &= ~MCF_SDRAMC_SDCR_MODE_EN;
-
- // 0x710B0F00
- MCF_SDRAMC_SDCR |= (0
- | MCF_SDRAMC_SDCR_REF
- | MCF_SDRAMC_SDCR_DQS_OE(0xF)
- );
- }
-}
-
-/** @file
- *
- * Target specific early chipselect and SDRAM init.
- */ \ No newline at end of file
diff --git a/arch/m68k/boards/phycore_mcf54xx/pci-stubs.c b/arch/m68k/boards/phycore_mcf54xx/pci-stubs.c
deleted file mode 100644
index b7ab7c7d72..0000000000
--- a/arch/m68k/boards/phycore_mcf54xx/pci-stubs.c
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
- * (C) 2007,2008 Carsten Schlote <schlote@vahanus.net>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * @brief This file contains callbacks for the PCI subsystem
- *
- */
-#include <common.h>
-#include <config.h>
-
-
-/** Returns mapping from PCI slot to CPU irq for the target board
- * @return Coldfire IRQ vector number, or -1 for no irq
- */
-int mcfv4e_pci_gethostirq(uint8_t slot, uint8_t irqpin)
-{
- int rc = -1;
- switch (slot)
- {
- case 16 : break;
- case 17 ... 21 : rc = 64 + 7; break; // Eport IRQ7
- }
- return rc;
-}
diff --git a/arch/m68k/boards/phycore_mcf54xx/phyCore_MCF54xx.c b/arch/m68k/boards/phycore_mcf54xx/phyCore_MCF54xx.c
deleted file mode 100644
index 3744950699..0000000000
--- a/arch/m68k/boards/phycore_mcf54xx/phyCore_MCF54xx.c
+++ /dev/null
@@ -1,139 +0,0 @@
-/*
- * (C) 2007 konzeptpark, Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * @brief This file contains ...
- *
- */
-#include <common.h>
-#include <init.h>
-#include <driver.h>
-#include <fec.h>
-#include <environment.h>
-#include <mach/mcf54xx-regs.h>
-#include <mach/clocks.h>
-#include <asm/io.h>
-#include <partition.h>
-
-/*
- * Return board clock in MHz FIXME move to clocks file
- */
-ulong mcfv4e_get_bus_clk(void)
-{
- return CFG_SYSTEM_CORE_CLOCK;
-}
-
-/*
- * Up to 64MiB NOR type flash, connected to
- * CS line 0, data width is 32 bit
- */
-static struct device_d cfi_dev =
-{
- .id = -1,
- .name = "cfi_flash",
- .map_base = CFG_FLASH_ADDRESS,
- .size = CFG_FLASH_SIZE,
-};
-
-/*
- * Build in FastEthernetControllers (FECs)
- */
-static struct fec_platform_data fec_info =
-{
- .xcv_type = MII100,
-};
-
-static struct device_d network_dev0 =
-{
- .id = -1,
- .name = "fec_mcf54xx",
- .map_base = MCF_FEC_ADDR(0),
- .size = MCF_FEC_SIZE(0), /* area size */
- .platform_data = &fec_info,
-};
-static struct device_d network_dev1 =
-{
- .id = -1,
- .name = "fec_mcf54xx",
- .map_base = MCF_FEC_ADDR(1),
- .size = MCF_FEC_SIZE(1), /* area size */
- .platform_data = &fec_info,
-};
-
-/*
- * 128MiB of SDRAM, data width is 32 bit
- */
-static struct memory_platform_data ram_pdata = {
- .name = "ram0",
- .flags = DEVFS_RDWR,
-};
-
-static struct device_d sdram_dev =
-{
- .id = -1,
- .name = "mem",
- .map_base = CFG_SDRAM_ADDRESS,
- .size = CFG_SDRAM_SIZE,
- .platform_data = &ram_pdata,
-};
-
-static int mcfv4e_devices_init(void)
-{
- printf("FIXME - setup board devices...\n");
-
- register_device(&cfi_dev);
-
- /*
- * Create partitions that should be
- * not touched by any regular user
- */
- devfs_add_partition("nor0", 0x00000, 0x80000, PARTITION_FIXED, "self0"); /* ourself */
- devfs_add_partition("nor0", 0x80000, 0x40000, PARTITION_FIXED, "env0"); /* environment */
- protect_file("/dev/env0", 1);
-
- register_device(&network_dev0);
- //register_device(&network_dev1);
-
- register_device(&sdram_dev);
-
- return 0;
-}
-
-device_initcall(mcfv4e_devices_init);
-
-static struct device_d mcfv4e_serial_device =
-{
- .id = -1,
- .name = "mcfv4e_serial",
- .map_base = 1 + CFG_EARLY_UART_PORT,
- .size = 16 * 1024,
-};
-
-static int mcfv4e_console_init(void)
-{
- /* init gpios for serial port */
-
- /* Already set in lowlevel_init.c */
-
- register_device(&mcfv4e_serial_device);
- return 0;
-}
-
-console_initcall(mcfv4e_console_init);
diff --git a/arch/m68k/boards/phycore_mcf54xx/phyCore_MCF54xx.dox b/arch/m68k/boards/phycore_mcf54xx/phyCore_MCF54xx.dox
deleted file mode 100644
index 36dd0ad195..0000000000
--- a/arch/m68k/boards/phycore_mcf54xx/phyCore_MCF54xx.dox
+++ /dev/null
@@ -1,14 +0,0 @@
-
-/** @page phycore_mcf54xx Phytec's phyCORE-MCF54x5
-
-This target is based on a PhyTec PhyCore MCF54x5 CPU module. The card is shipped with:
-
-- up to 64MiB NOR type Flash Memory
-- 128MiB synchronous dynamic RAM
-- PCI USB 2.0 Host
-- PCCard Controller
-- MiniPCI Parallel
-- MiniPCIe (USB lane only)
-- ...
-
-*/
diff --git a/arch/m68k/configs/phycore_kpukdr1_5475num_defconfig b/arch/m68k/configs/phycore_kpukdr1_5475num_defconfig
deleted file mode 100644
index 14c6d78f9f..0000000000
--- a/arch/m68k/configs/phycore_kpukdr1_5475num_defconfig
+++ /dev/null
@@ -1,36 +0,0 @@
-CONFIG_MACH_KPUKDR1_NUM=y
-CONFIG_INITRD_TAG=y
-CONFIG_BROKEN=y
-CONFIG_EXPERIMENTAL=y
-CONFIG_LONGHELP=y
-CONFIG_CMDLINE_EDITING=y
-CONFIG_AUTO_COMPLETE=y
-CONFIG_DEFAULT_ENVIRONMENT_PATH="arch/m68k/boards/kp_ukd_r1_num/env/"
-CONFIG_DEBUG_INFO=y
-CONFIG_ENABLE_DEVICE_NOISE=y
-CONFIG_CMD_EDIT=y
-CONFIG_CMD_SLEEP=y
-CONFIG_CMD_SAVEENV=y
-CONFIG_CMD_LOADENV=y
-CONFIG_CMD_EXPORT=y
-CONFIG_CMD_PRINTENV=y
-CONFIG_CMD_READLINE=y
-CONFIG_CMD_MEMINFO=y
-CONFIG_CMD_CRC=y
-CONFIG_CMD_MTEST=y
-CONFIG_CMD_MTEST_ALTERNATIVE=y
-CONFIG_CMD_FLASH=y
-CONFIG_CMD_BOOTM_ZLIB=y
-CONFIG_CMD_BOOTM_BZLIB=y
-CONFIG_CMD_BOOTM_SHOW_TYPE=y
-CONFIG_CMD_RESET=y
-CONFIG_CMD_GO=y
-CONFIG_CMD_TIMEOUT=y
-CONFIG_CMD_PARTITION=y
-CONFIG_NET=y
-CONFIG_NET_DHCP=y
-CONFIG_NET_PING=y
-CONFIG_NET_TFTP=y
-CONFIG_DRIVER_CFI=y
-CONFIG_CFI_BUFFER_WRITE=y
-CONFIG_FS_CRAMFS=y
diff --git a/arch/m68k/configs/phycore_mcf54xx_defconfig b/arch/m68k/configs/phycore_mcf54xx_defconfig
deleted file mode 100644
index f0d9fc2845..0000000000
--- a/arch/m68k/configs/phycore_mcf54xx_defconfig
+++ /dev/null
@@ -1,36 +0,0 @@
-CONFIG_MACH_PCM982_5485=y
-CONFIG_INITRD_TAG=y
-CONFIG_BROKEN=y
-CONFIG_EXPERIMENTAL=y
-CONFIG_LONGHELP=y
-CONFIG_CMDLINE_EDITING=y
-CONFIG_AUTO_COMPLETE=y
-CONFIG_DEFAULT_ENVIRONMENT_PATH="arch/m68k/boards/phycore_mcf54xx/env"
-CONFIG_DEBUG_INFO=y
-CONFIG_ENABLE_DEVICE_NOISE=y
-CONFIG_CMD_EDIT=y
-CONFIG_CMD_SLEEP=y
-CONFIG_CMD_SAVEENV=y
-CONFIG_CMD_LOADENV=y
-CONFIG_CMD_EXPORT=y
-CONFIG_CMD_PRINTENV=y
-CONFIG_CMD_READLINE=y
-CONFIG_CMD_MEMINFO=y
-CONFIG_CMD_CRC=y
-CONFIG_CMD_MTEST=y
-CONFIG_CMD_MTEST_ALTERNATIVE=y
-CONFIG_CMD_FLASH=y
-CONFIG_CMD_BOOTM_ZLIB=y
-CONFIG_CMD_BOOTM_BZLIB=y
-CONFIG_CMD_BOOTM_SHOW_TYPE=y
-CONFIG_CMD_RESET=y
-CONFIG_CMD_GO=y
-CONFIG_CMD_TIMEOUT=y
-CONFIG_CMD_PARTITION=y
-CONFIG_NET=y
-CONFIG_NET_DHCP=y
-CONFIG_NET_PING=y
-CONFIG_NET_TFTP=y
-CONFIG_DRIVER_CFI=y
-CONFIG_CFI_BUFFER_WRITE=y
-CONFIG_FS_CRAMFS=y
diff --git a/arch/m68k/cpu/Makefile b/arch/m68k/cpu/Makefile
deleted file mode 100644
index 2e434af4e1..0000000000
--- a/arch/m68k/cpu/Makefile
+++ /dev/null
@@ -1,41 +0,0 @@
-#
-# (C) Copyright 2007 Carsten Schlote <schlote@vahanus.net>
-# See file CREDITS for list of people who contributed to this project.
-#
-# This file is part of barebox.
-#
-# barebox 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 3 of the License, or
-# (at your option) any later version.
-#
-# barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
-#
-
-obj-y += cpu.o
-obj-y += interrupts.o
-
-#
-# Support code for early IO over BDM wigglers
-#
-
-# obj-y += early_init_support.o
-
-#
-# Support for relocated early initdata
-#
-obj-$(CONFIG_HAS_EARLY_INIT) += early_init_support.o
-
-#
-# Startup codes - try to merge them into single file!
-#
-obj-$(CONFIG_ARCH_MCF54xx) += start-mcfv4e.o
-obj-$(CONFIG_ARCH_MCF5445x) += start-mcfv4m.o
-
-start-mcfv4e.o : start-mcfv4e.s \ No newline at end of file
diff --git a/arch/m68k/cpu/cpu.c b/arch/m68k/cpu/cpu.c
deleted file mode 100644
index 9268785a4c..0000000000
--- a/arch/m68k/cpu/cpu.c
+++ /dev/null
@@ -1,185 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * A few helper functions for M6kK/Coldfire
- */
-#include <common.h>
-#include <command.h>
-#include <init.h>
-#include <proc/processor.h> // FIXME -stup place
-#include <mach/mcf54xx-regs.h>
-
-static uint32_t CACR_shadow = MCF5XXX_CACR_BEC;
-
-/*
- * Reset init value := 0x010C0100
- * MCF5XXX_CACR_DCINVA
- * MCF5XXX_CACR_BEC
- * MCF5XXX_CACR_BCINVA
- * MCF5XXX_CACR_ICINVA
- */
-
-/**
- * Enable processor's instruction cache
- */
-void icache_enable (void)
-{
- CACR_shadow |= MCF5XXX_CACR_IEC;
- mcf5xxx_wr_cacr( CACR_shadow );
-}
-
-/**
- * Disable processor's instruction cache
- */
-void icache_disable (void)
-{
- CACR_shadow &= ~MCF5XXX_CACR_IEC;
- mcf5xxx_wr_cacr( CACR_shadow );
-}
-
-/**
- * Detect processor's current instruction cache status
- * @return 0=disabled, 1=enabled
- */
-int icache_status (void)
-{
- return (CACR_shadow & MCF5XXX_CACR_IEC)?1:0;
-}
-
-/**
- * Enable processor's data cache
- */
-void dcache_enable (void)
-{
- CACR_shadow |= MCF5XXX_CACR_DEC;
- mcf5xxx_wr_cacr( CACR_shadow );
-}
-
-/**
- * Disable processor's data cache
- */
-void dcache_disable (void)
-{
- CACR_shadow &= ~MCF5XXX_CACR_DEC;
- mcf5xxx_wr_cacr( CACR_shadow );
-}
-
-/**
- * Detect processor's current instruction cache status
- * @return 0=disabled, 1=enabled
- */
-int dcache_status (void)
-{
- return (CACR_shadow & MCF5XXX_CACR_DEC)?1:0;
-}
-
-/**
- * Flush CPU caches to memory
- */
-void cpu_cache_flush(void)
-{
- uint32_t way, set;
- void *addr;
-
- for ( way=0; way < 4; way++ ) {
- addr = (void*)way;
- for ( set=0; set < 512; set++ ) {
- mcf5xxx_cpushl_bc ( addr );
- addr += 0x10;
- }
- }
-}
-
-/**
- * Flush CPU caches to memory and disable them.
- */
-void cpu_cache_disable(void)
-{
- uint32_t lastipl;
-
- lastipl = asm_set_ipl( 7 );
-
- cpu_cache_flush();
- mcf5xxx_wr_acr0( 0 );
- mcf5xxx_wr_acr1( 0 );
- mcf5xxx_wr_acr2( 0 );
- mcf5xxx_wr_acr3( 0 );
-
- CACR_shadow &= ~MCF5XXX_CACR_IEC;
- CACR_shadow &= ~MCF5XXX_CACR_DEC;
- mcf5xxx_wr_cacr( CACR_shadow | (MCF5XXX_CACR_DCINVA|MCF5XXX_CACR_ICINVA));
-
- lastipl = asm_set_ipl( lastipl );
-}
-
-/**
- * Prepare a "clean" CPU for Linux to run
- * @return 0 (always)
- *
- * This function is called by the generic barebox part just before we call
- * Linux. It prepares the processor for Linux.
- */
-int cleanup_before_linux (void)
-{
- /*
- * we never enable dcache so we do not need to disable
- * it. Linux can be called with icache enabled, so just
- * do nothing here
- */
-
- /* flush I/D-cache */
- cpu_cache_disable();
-
- /* reenable icache */
- icache_enable();
- return (0);
-}
-/** @page m68k_boot_preparation Linux Preparation on M68k/Coldfire
- *
- * For M68K we never enable data cache so we do not need to disable it again.
- *
- * Linux can be called with instruction cache enabled. As this is the
- * default setting we are running in barebox, there's no special preparation
- * required.
- */
-
-
-/** Early init of Coldfire V4E CPU
- */
-static int cpu_init (void)
-{
- /* Enable ICache - branch cache is already on */
- icache_enable();
-
- /*
- * setup up stacks if necessary
- * setup other CPU specifics here to prepare
- * handling of exceptions and interrupts
- */
-#ifdef CONFIG_USE_IRQ
- printf("Prepare CPU interrupts for handlers\n");
- mcf_interrupts_initialize();
-#endif
-
- return 0;
-}
-
-core_initcall(cpu_init);
diff --git a/arch/m68k/cpu/cw_console_io.c b/arch/m68k/cpu/cw_console_io.c
deleted file mode 100644
index 417a1b48b6..0000000000
--- a/arch/m68k/cpu/cw_console_io.c
+++ /dev/null
@@ -1,116 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Debug output stubs over BDM for Codewarrior
- */
-#include <common.h>
-#include <command.h>
-#include <console.h>
-#include <reloc.h>
-#include <init.h>
-
-#ifdef CONFIG_HAS_EARLY_INIT
-
-
-#if 0 // FIXME - make a CW debug port serial driver for barebox
-
-/*
- * The result of an I/O command can be any one of the following.
- */
-typedef enum DSIOResult
-{
- kDSIONoError = 0x00,
- kDSIOError = 0x01,
- kDSIOEOF = 0x02
-} DSIOResult;
-
-/*
- * MessageCommandID
- */
-typedef enum MessageCommandID
-{
- /*
- * target->host support commands
- */
-
- kDSWriteFile = 0xD0, /* L2 L3 */
- kDSReadFile = 0xD1 /* L2 L3 */
-
-} MessageCommandID;
-
-
-enum DSIOResult TransferData(
- MessageCommandID msg,
- unsigned char *buffer, int size,
- int * txsize
-)
-{
- enum DSIOResult iores = kDSIOError;
- unsigned long sized2=0;
-
- /* -- Call codewarrior stub -- */
- __asm__ __volatile__ (
-" move.l %[cmd],%%d0 \n"
-" move.l #0,%%d1 \n"
-" move.l %[size],%%d2 \n"
-" move.l %[buffer],%%d3 \n"
-" trap #14 \n"
-" move.l %%d1,%[txsize] \n"
-" move.l %%d0,%[res] \n"
- : [res] "=r" (iores), [txsize] "=g" (sized2)
- : [cmd] "g" (msg), [size] "g" (size), [buffer] "g" (buffer)
- : "d2","d3" );
-
- if (txsize!=NULL) *txsize=sized2;
- return iores;
-}
-
-void *get_early_console_base(const char *name)
-{
- return (void*)0xdeadbeef;
-}
-
-static unsigned char early_iobuffer[80];
-static int early_iobuffer_cnt;
-
-void early_console_putc(void *base, char c)
-{
- early_iobuffer[early_iobuffer_cnt++] = c;
- if ( ( early_iobuffer_cnt >= sizeof(early_iobuffer)) ||
- (c == '\n') )
- {
- TransferData(kDSWriteFile,early_iobuffer,early_iobuffer_cnt, NULL);
- early_iobuffer_cnt = 0;
- }
-}
-
-void early_console_init(void *base, int baudrate)
-{
- early_iobuffer_cnt = 0;
-}
-
-//void early_console_start(const char *name, int baudrate)
-//{
-//}
-
-#endif
-
-#endif
diff --git a/arch/m68k/cpu/early_init_support.c b/arch/m68k/cpu/early_init_support.c
deleted file mode 100644
index be4a9e4cb6..0000000000
--- a/arch/m68k/cpu/early_init_support.c
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Early InitData support routines
- */
-#include <common.h>
-#include <command.h>
-#include <console.h>
-#include <reloc.h>
-#include <init.h>
-
-#ifdef CONFIG_HAS_EARLY_INIT
-
-/** Returns relocation offset to early init data
- */
-unsigned long reloc_offset(void)
-{
- //extern char __early_init_data_begin[];
- //FIXME: return (unsigned long)init_data_ptr - (unsigned long)__early_init_data_begin;
- return 0;
-}
-
-#endif
diff --git a/arch/m68k/cpu/interrupts.c b/arch/m68k/cpu/interrupts.c
deleted file mode 100644
index 4e1ff12733..0000000000
--- a/arch/m68k/cpu/interrupts.c
+++ /dev/null
@@ -1,246 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Interrupt routines and supporting code for Coldfire V4E
- */
-#include <common.h>
-#include <asm/ptrace.h>
-#include <mach/mcf54xx-regs.h>
-
-#ifdef CONFIG_USE_IRQ
-void enable_interrupts(void)
-{
- asm_set_ipl(0);
-}
-
-int disable_interrupts(void)
-{
- return asm_set_ipl(7) ? 1 : 0;
-}
-#endif
-
-/**
- */
-static void mcf_bad_mode (void)
-{
- panic ("Resetting CPU ...\n");
- mdelay(3000);
- reset_cpu (0);
-}
-
-/**
- */
-static void mcf_show_regs (struct pt_regs *regs)
-{
- unsigned long flags;
- flags = condition_codes (regs);
-
- printf ("pc : [<%08lx>]\n"
- "sp : %08lx fp : %08lx\n",
- instruction_pointer (regs),
- regs->M68K_sp, regs->M68K_a6);
-
- printf ("d0-d3 : %08lx %08lx %08lx %08lx\n",
- regs->M68K_d0, regs->M68K_d1, regs->M68K_d2, regs->M68K_d3);
- printf ("d3-d7 : %08lx %08lx %08lx %08lx\n",
- regs->M68K_d3, regs->M68K_d4, regs->M68K_d5, regs->M68K_d6);
-
- printf ("a0-d3 : %08lx %08lx %08lx %08lx\n",
- regs->M68K_a0, regs->M68K_a1, regs->M68K_a2, regs->M68K_a3);
- printf ("a3-d7 : %08lx %08lx %08lx %08lx\n",
- regs->M68K_a3, regs->M68K_a4, regs->M68K_a5, regs->M68K_a6);
-
- printf ("fp0 : %08lx%08lx fp1 : %08lx%08lx\n",
- regs->M68K_fp0+1, regs->M68K_fp0, regs->M68K_fp1+1, regs->M68K_fp1);
- printf ("fp2 : %08lx%08lx fp3 : %08lx%08lx\n",
- regs->M68K_fp2+1, regs->M68K_fp2, regs->M68K_fp3+1, regs->M68K_fp3);
- printf ("fp4 : %08lx%08lx fp5 : %08lx%08lx\n",
- regs->M68K_fp4+1, regs->M68K_fp4, regs->M68K_fp5+1, regs->M68K_fp5);
- printf ("fp6 : %08lx%08lx fp7 : %08lx%08lx\n",
- regs->M68K_fp6+1, regs->M68K_fp6, regs->M68K_fp7+1, regs->M68K_fp7);
-
- printf ("Flags: %c%c%c%c",
- flags & CC_X_BIT ? 'X' : 'x',
- flags & CC_N_BIT ? 'N' : 'n',
- flags & CC_Z_BIT ? 'Z' : 'z',
- flags & CC_V_BIT ? 'V' : 'v',
- flags & CC_C_BIT ? 'C' : 'c' );
-
- printf (" IRQs %s (%0x) Mode %s\n",
- interrupts_enabled (regs) ? "on" : "off", interrupts_enabled (regs),
- user_mode (regs) ? "user" : "supervisor");
-}
-
-void mcf_execute_exception_handler (struct pt_regs *pt_regs)
-{
- printf ("unhandled exception\n");
- mcf_show_regs (pt_regs);
- mcf_bad_mode ();
-}
-
-#ifndef CONFIG_USE_IRQ
-
-void mcf_execute_irq_handler (struct pt_regs *pt_regs, int vector)
-{
- printf ("interrupt request\n");
- mcf_show_regs (pt_regs);
- mcf_bad_mode ();
-}
-
-#else
-
-#ifndef CONFIG_MAX_ISR_HANDLERS
-#define CONFIG_MAX_ISR_HANDLERS (20)
-#endif
-
-typedef struct
-{
- int vector;
- int (*handler)(void *, void *);
- void *hdev;
- void *harg;
-}
-mcfv4e_irq_handler_s;
-
-mcfv4e_irq_handler_s irq_handler_table[CONFIG_MAX_ISR_HANDLERS];
-
-/** Initialize an empty interrupt handler list
- */
-void mcf_interrupts_initialize (void)
-{
- int index;
- for (index = 0; index < CONFIG_MAX_ISR_HANDLERS; index++)
- {
- irq_handler_table[index].vector = 0;
- irq_handler_table[index].handler = 0;
- irq_handler_table[index].hdev = 0;
- irq_handler_table[index].harg = 0;
- }
-}
-
-/** Add an interrupt handler to the handler list
- *
- * @param vector : M68k exception/interrupt vector number
- * @param handler : Pointer to handler function
- * @param hdev : Handler specific data
- * @param harg : Handler specific arg
- */
-int mcf_interrupts_register_handler(
- int vector,
- int (*handler)(void *, void *), void *hdev, void *harg)
-{
- /*
- * This function places an interrupt handler in the ISR table,
- * thereby registering it so that the low-level handler may call it.
- *
- * The two parameters are intended for the first arg to be a
- * pointer to the device itself, and the second a pointer to a data
- * structure used by the device driver for that particular device.
- */
- int index;
-
- if ((vector == 0) || (handler == NULL))
- {
- return 0;
- }
-
- for (index = 0; index < CONFIG_MAX_ISR_HANDLERS; index++)
- {
- if (irq_handler_table[index].vector == vector)
- {
- /* only one entry of each type per vector */
- return 0;
- }
-
- if (irq_handler_table[index].vector == 0)
- {
- irq_handler_table[index].vector = vector;
- irq_handler_table[index].handler = handler;
- irq_handler_table[index].hdev = hdev;
- irq_handler_table[index].harg = harg;
- return 1;
- }
- }
- return 0; /* no available slots */
-}
-
-/** Remove an interrupt handler from the handler list
- *
- * @param type : FIXME
- * @param handler : Pointer of handler function to remove.
- */
-void mcf_interrupts_remove_handler (int type ,int (*handler)(void *, void *))
-{
- /*
- * This routine removes from the ISR table all
- * entries that matches 'handler'.
- */
- int index;
-
- for (index = 0; index < CONFIG_MAX_ISR_HANDLERS; index++)
- {
- if (irq_handler_table[index].handler == handler)
- {
- irq_handler_table[index].vector = 0;
- irq_handler_table[index].handler = 0;
- irq_handler_table[index].hdev = 0;
- irq_handler_table[index].harg = 0;
- }
- }
-}
-
-/** Traverse list of registered interrupts and call matching handlers.
- *
- * @param pt_regs : Pointer to saved register context
- * @param vector : M68k exception/interrupt vector number
- */
-int mcf_execute_irq_handler (struct pt_regs *pt_regs, int vector)
-{
- /*
- * This routine searches the ISR table for an entry that matches
- * 'vector'. If one is found, then 'handler' is executed.
- */
- int index, retval = 0;
-
- /*
- * Try to locate a user-registered Interrupt Service Routine handler.
- */
- for (index = 0; index < CONFIG_MAX_ISR_HANDLERS; index++)
- {
- if (irq_handler_table[index].handler == NULL)
- {
- printf("\nFault: No handler for IRQ vector %ld found.\n", vector);
- break;
- }
- if (irq_handler_table[index].vector == vector)
- {
- if (irq_handler_table[index].handler(irq_handler_table[index].hdev,irq_handler_table[index].harg))
- {
- retval = 1;
- break;
- }
- }
- }
-
- return retval;
-}
-
-#endif
diff --git a/arch/m68k/cpu/start-mcfv4e.S b/arch/m68k/cpu/start-mcfv4e.S
deleted file mode 100644
index df9ee4d4bb..0000000000
--- a/arch/m68k/cpu/start-mcfv4e.S
+++ /dev/null
@@ -1,677 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Resetcode and exception/interrupt shells for Coldfire V4E
- *
- * This file contains the common startup code for use on at least Coldfire
- * V4E cores:
- * - MCF547x
- * - MCF548x
- */
-#include <config.h>
-
- .section ".vectors","a"
-
-/*
- * Define some addresses from your board configuration file
- */
- .equ __MBAR,CFG_MBAR_ADDRESS
- .globl __MBAR
-
- .equ __CORE_SRAM0,CFG_CORE0_SRAM_ADDRESS
- .equ __CORE_SRAM0_SIZE,CFG_CORE0_SRAM_SIZE
-
- .equ __CORE_SRAM1,CFG_CORE1_SRAM_ADDRESS
- .equ __CORE_SRAM1_SIZE,CFG_CORE1_SRAM_SIZE
-
- /*
- * Preload stack pointer with end of Core SRAM - useable _after_ you have
- * setup the MBR register in reset code!
- *
- * The upper 4 LW of the Core SRAM are left spare - it can be used as
- * fixed address temporay storage in the code below (ok, well also to
- * fix up stack traces in the debugger)
- *
- * So we have a stack usable for C code, before we even started SDRAM!
- */
- .equ ___SP_INIT,__CORE_SRAM1+__CORE_SRAM1_SIZE-16
-
-/*
- * Vector table for M68k and barebox Link Address
- *
- * On M68k/Coldfire cores all exceptions and interrupts are routed through
- * a vector array. This vector is by default at address 0x0000_0000, but
- * can be moved to any other 1MB aligned address.
- *
- * We take advantage of this to move barebox out of low memory. Some BDM
- * debuggers won't like a moved vector base and might need tweaking to
- * work.
- *
- * Note: Respect alignment restrictions for TEXT_BASE, which must be
- * 1MB aligned.
- */
-
- .globl _barebox_start
-_barebox_start:
-
-VECTOR_TABLE:
-_VECTOR_TABLE:
-INITSP: .long ___SP_INIT /* Initial SP */
-INITPC: .long 0x410 /* Initial PC */
-vector02: .long _asm_exception_handler /* Access Error */
-vector03: .long _asm_exception_handler /* Address Error */
-vector04: .long _asm_exception_handler /* Illegal Instruction */
-vector05: .long _asm_exception_handler /* Divide by Zero */
-vector06: .long _asm_exception_handler /* Reserved */
-vector07: .long _asm_exception_handler /* Reserved */
-vector08: .long _asm_exception_handler /* Privilege Violation */
-vector09: .long _asm_exception_handler /* Trace */
-vector0A: .long _asm_exception_handler /* Unimplemented A-Line */
-vector0B: .long _asm_exception_handler /* Unimplemented F-Line */
-vector0C: .long _asm_exception_handler /* Non-PC Brkpt Debug Int */
-vector0D: .long _asm_exception_handler /* PC Brkpt Debug Int */
-vector0E: .long _asm_exception_handler /* Format Error */
-vector0F: .long _asm_exception_handler /* Unitialized Int */
-vector10: .long _asm_exception_handler /* Reserved */
-vector11: .long _asm_exception_handler /* Reserved */
-vector12: .long _asm_exception_handler /* Reserved */
-vector13: .long _asm_exception_handler /* Reserved */
-vector14: .long _asm_exception_handler /* Reserved */
-vector15: .long _asm_exception_handler /* Reserved */
-vector16: .long _asm_exception_handler /* Reserved */
-vector17: .long _asm_exception_handler /* Reserved */
-vector18: .long _asm_exception_handler /* Spurious Interrupt */
-vector19: .long _asm_isr_handler /* Autovector Level 1 */
-vector1A: .long _asm_isr_handler /* Autovector Level 2 */
-vector1B: .long _asm_isr_handler /* Autovector Level 3 */
-vector1C: .long _asm_isr_handler /* Autovector Level 4 */
-vector1D: .long _asm_isr_handler /* Autovector Level 5 */
-vector1E: .long _asm_isr_handler /* Autovector Level 6 */
-vector1F: .long _asm_isr_handler /* Autovector Level 7 */
-vector20: .long _asm_exception_handler /* TRAP #0 */
-vector21: .long _asm_exception_handler /* TRAP #1 */
-vector22: .long _asm_exception_handler /* TRAP #2 */
-vector23: .long _asm_exception_handler /* TRAP #3 */
-vector24: .long _asm_exception_handler /* TRAP #4 */
-vector25: .long _asm_exception_handler /* TRAP #5 */
-vector26: .long _asm_exception_handler /* TRAP #6 */
-vector27: .long _asm_exception_handler /* TRAP #7 */
-vector28: .long _asm_exception_handler /* TRAP #8 */
-vector29: .long _asm_exception_handler /* TRAP #9 */
-vector2A: .long _asm_exception_handler /* TRAP #10 */
-vector2B: .long _asm_exception_handler /* TRAP #11 */
-vector2C: .long _asm_exception_handler /* TRAP #12 */
-vector2D: .long _asm_exception_handler /* TRAP #13 */
-vector2E: .long _asm_exception_handler /* TRAP #14 */
-vector2F: .long _dbug_sc_handler /* TRAP #15 - System Call */
-vector30: .long _asm_exception_handler /* Reserved */
-vector31: .long _asm_exception_handler /* Reserved */
-vector32: .long _asm_exception_handler /* Reserved */
-vector33: .long _asm_exception_handler /* Reserved */
-vector34: .long _asm_exception_handler /* Reserved */
-vector35: .long _asm_exception_handler /* Reserved */
-vector36: .long _asm_exception_handler /* Reserved */
-vector37: .long _asm_exception_handler /* Reserved */
-vector38: .long _asm_exception_handler /* Reserved */
-vector39: .long _asm_exception_handler /* Reserved */
-vector3A: .long _asm_exception_handler /* Reserved */
-vector3B: .long _asm_exception_handler /* Reserved */
-vector3C: .long _asm_exception_handler /* Reserved */
-vector3D: .long _asm_exception_handler /* Unsupported Instruction */
-vector3E: .long _asm_exception_handler /* Reserved */
-vector3F: .long _asm_exception_handler /* Reserved */
-vector40: .long _asm_isr_handler /* User Defined Interrupts */
-vector41: .long _asm_isr_handler
-vector42: .long _asm_isr_handler
-vector43: .long _asm_isr_handler
-vector44: .long _asm_isr_handler
-vector45: .long _asm_isr_handler
-vector46: .long _asm_isr_handler
-vector47: .long _asm_isr_handler
-vector48: .long _asm_isr_handler
-vector49: .long _asm_isr_handler
-vector4A: .long _asm_isr_handler
-vector4B: .long _asm_isr_handler
-vector4C: .long _asm_isr_handler
-vector4D: .long _asm_isr_handler
-vector4E: .long _asm_isr_handler
-vector4F: .long _asm_isr_handler
-vector50: .long _asm_isr_handler
-vector51: .long _asm_isr_handler
-vector52: .long _asm_isr_handler
-vector53: .long _asm_isr_handler
-vector54: .long _asm_isr_handler
-vector55: .long _asm_isr_handler
-vector56: .long _asm_isr_handler
-vector57: .long _asm_isr_handler
-vector58: .long _asm_isr_handler
-vector59: .long _asm_isr_handler
-vector5A: .long _asm_isr_handler
-vector5B: .long _asm_isr_handler
-vector5C: .long _asm_isr_handler
-vector5D: .long _asm_isr_handler
-vector5E: .long _asm_isr_handler
-vector5F: .long _asm_isr_handler
-vector60: .long _asm_isr_handler
-vector61: .long _asm_isr_handler
-vector62: .long _asm_isr_handler
-vector63: .long _asm_isr_handler
-vector64: .long _asm_isr_handler
-vector65: .long _asm_isr_handler
-vector66: .long _asm_isr_handler
-vector67: .long _asm_isr_handler
-vector68: .long _asm_isr_handler
-vector69: .long _asm_isr_handler
-vector6A: .long _asm_isr_handler
-vector6B: .long _asm_isr_handler
-vector6C: .long _asm_isr_handler
-vector6D: .long _asm_isr_handler
-vector6E: .long _asm_isr_handler
-vector6F: .long _asm_isr_handler
-vector70: .long _asm_isr_handler
-vector71: .long _asm_isr_handler
-vector72: .long _asm_isr_handler
-vector73: .long _asm_isr_handler
-vector74: .long _asm_isr_handler
-vector75: .long _asm_isr_handler
-vector76: .long _asm_isr_handler
-vector77: .long _asm_isr_handler
-vector78: .long _asm_isr_handler
-vector79: .long _asm_isr_handler
-vector7A: .long _asm_isr_handler
-vector7B: .long _asm_isr_handler
-vector7C: .long _asm_isr_handler
-vector7D: .long _asm_isr_handler
-vector7E: .long _asm_isr_handler
-vector7F: .long _asm_isr_handler
-vector80: .long _asm_isr_handler
-vector81: .long _asm_isr_handler
-vector82: .long _asm_isr_handler
-vector83: .long _asm_isr_handler
-vector84: .long _asm_isr_handler
-vector85: .long _asm_isr_handler
-vector86: .long _asm_isr_handler
-vector87: .long _asm_isr_handler
-vector88: .long _asm_isr_handler
-vector89: .long _asm_isr_handler
-vector8A: .long _asm_isr_handler
-vector8B: .long _asm_isr_handler
-vector8C: .long _asm_isr_handler
-vector8D: .long _asm_isr_handler
-vector8E: .long _asm_isr_handler
-vector8F: .long _asm_isr_handler
-vector90: .long _asm_isr_handler
-vector91: .long _asm_isr_handler
-vector92: .long _asm_isr_handler
-vector93: .long _asm_isr_handler
-vector94: .long _asm_isr_handler
-vector95: .long _asm_isr_handler
-vector96: .long _asm_isr_handler
-vector97: .long _asm_isr_handler
-vector98: .long _asm_isr_handler
-vector99: .long _asm_isr_handler
-vector9A: .long _asm_isr_handler
-vector9B: .long _asm_isr_handler
-vector9C: .long _asm_isr_handler
-vector9D: .long _asm_isr_handler
-vector9E: .long _asm_isr_handler
-vector9F: .long _asm_isr_handler
-vectorA0: .long _asm_isr_handler
-vectorA1: .long _asm_isr_handler
-vectorA2: .long _asm_isr_handler
-vectorA3: .long _asm_isr_handler
-vectorA4: .long _asm_isr_handler
-vectorA5: .long _asm_isr_handler
-vectorA6: .long _asm_isr_handler
-vectorA7: .long _asm_isr_handler
-vectorA8: .long _asm_isr_handler
-vectorA9: .long _asm_isr_handler
-vectorAA: .long _asm_isr_handler
-vectorAB: .long _asm_isr_handler
-vectorAC: .long _asm_isr_handler
-vectorAD: .long _asm_isr_handler
-vectorAE: .long _asm_isr_handler
-vectorAF: .long _asm_isr_handler
-vectorB0: .long _asm_isr_handler
-vectorB1: .long _asm_isr_handler
-vectorB2: .long _asm_isr_handler
-vectorB3: .long _asm_isr_handler
-vectorB4: .long _asm_isr_handler
-vectorB5: .long _asm_isr_handler
-vectorB6: .long _asm_isr_handler
-vectorB7: .long _asm_isr_handler
-vectorB8: .long _asm_isr_handler
-vectorB9: .long _asm_isr_handler
-vectorBA: .long _asm_isr_handler
-vectorBB: .long _asm_isr_handler
-vectorBC: .long _asm_isr_handler
-vectorBD: .long _asm_isr_handler
-vectorBE: .long _asm_isr_handler
-vectorBF: .long _asm_isr_handler
-vectorC0: .long _asm_isr_handler
-vectorC1: .long _asm_isr_handler
-vectorC2: .long _asm_isr_handler
-vectorC3: .long _asm_isr_handler
-vectorC4: .long _asm_isr_handler
-vectorC5: .long _asm_isr_handler
-vectorC6: .long _asm_isr_handler
-vectorC7: .long _asm_isr_handler
-vectorC8: .long _asm_isr_handler
-vectorC9: .long _asm_isr_handler
-vectorCA: .long _asm_isr_handler
-vectorCB: .long _asm_isr_handler
-vectorCC: .long _asm_isr_handler
-vectorCD: .long _asm_isr_handler
-vectorCE: .long _asm_isr_handler
-vectorCF: .long _asm_isr_handler
-vectorD0: .long _asm_isr_handler
-vectorD1: .long _asm_isr_handler
-vectorD2: .long _asm_isr_handler
-vectorD3: .long _asm_isr_handler
-vectorD4: .long _asm_isr_handler
-vectorD5: .long _asm_isr_handler
-vectorD6: .long _asm_isr_handler
-vectorD7: .long _asm_isr_handler
-vectorD8: .long _asm_isr_handler
-vectorD9: .long _asm_isr_handler
-vectorDA: .long _asm_isr_handler
-vectorDB: .long _asm_isr_handler
-vectorDC: .long _asm_isr_handler
-vectorDD: .long _asm_isr_handler
-vectorDE: .long _asm_isr_handler
-vectorDF: .long _asm_isr_handler
-vectorE0: .long _asm_isr_handler
-vectorE1: .long _asm_isr_handler
-vectorE2: .long _asm_isr_handler
-vectorE3: .long _asm_isr_handler
-vectorE4: .long _asm_isr_handler
-vectorE5: .long _asm_isr_handler
-vectorE6: .long _asm_isr_handler
-vectorE7: .long _asm_isr_handler
-vectorE8: .long _asm_isr_handler
-vectorE9: .long _asm_isr_handler
-vectorEA: .long _asm_isr_handler
-vectorEB: .long _asm_isr_handler
-vectorEC: .long _asm_isr_handler
-vectorED: .long _asm_isr_handler
-vectorEE: .long _asm_isr_handler
-vectorEF: .long _asm_isr_handler
-vectorF0: .long _asm_isr_handler
-vectorF1: .long _asm_isr_handler
-vectorF2: .long _asm_isr_handler
-vectorF3: .long _asm_isr_handler
-vectorF4: .long _asm_isr_handler
-vectorF5: .long _asm_isr_handler
-vectorF6: .long _asm_isr_handler
-vectorF7: .long _asm_isr_handler
-vectorF8: .long _asm_isr_handler
-vectorF9: .long _asm_isr_handler
-vectorFA: .long _asm_isr_handler
-vectorFB: .long _asm_isr_handler
-vectorFC: .long _asm_isr_handler
-vectorFD: .long _asm_isr_handler
-vectorFE: .long _asm_isr_handler
-vectorFF: .long _asm_isr_handler
-
-/*
- * Leave some bytes spare here for CW debugger (console IO stuff)
- */
- .rept 4
- .long 0xdeadbeef
- .endr
-
-/** @func reset Startup Code (reset vector)
- *
- * The vector array is mapped to address 0 at reset and SP and PC are
- * fetched from adress 0 and 4.
- *
- * For debugger uploads this image will reside in the middle of RAM, leaving
- * as much memory for other stuff in low memory available, e.g. Linux and
- * an init ramdisk.
- *
- * For real system resets, the boot rom is mapped to all addresses in
- * system, as long as somebody sets up the CS. Now the trick part until
- * relocation to RAM is that we must code at the start of your bootrom
- * - all link addresses are wrong, so we need the reloc.h stuff to find the
- * right address.
- *
- * The following things happen here:
- * * do important init, like SDRAM, only if we don't start from memory!
- * * setup Memory and board specific bits prior to relocation.
- * * Setup stack
- * * relocate barebox to ram
- *
- */
- .globl _start
-_start:
- .global reset
-reset:
- /* Mask all IRQs */
- move.w #0x2700,%sr
-
- /* Initialize MBAR - keep D0/D1 registers */
- move.l #__MBAR,%d2
- movec %d2,%MBAR
- nop
-
- /* Initialize RAMBAR0 - locate it on the data bus */
- move.l #__CORE_SRAM0,%d2
- add.l #0x21,%d2
- movec %d2,%RAMBAR0
- nop
-
- /* Initialize RAMBAR1 - locate it on the data bus */
- move.l #__CORE_SRAM1,%d2
- add.l #0x21,%d2
- movec %d2,%RAMBAR1
- nop
-
- /* Point Stack Pointer into Core SRAM temporarily */
- move.l #___SP_INIT,%d2
- move.l %d2,%sp
- nop
-
- /* Invalidate the data, instruction, and branch caches */
- /* Turn on the branch cache */
- move.l #0x010C0100,%d2
- movec %d2,%cacr
- nop
-
- /* Prepare stack top */
- clr.l %sp@(0)
- move.l %d0,%sp@(4)
- move.l %d1,%sp@(8)
- clr.l %sp@(12)
-
- /*
- * This call is intended to give all developers a chance to use a
- * standard reset vector file, but also do some special things
- * required only on their specific CPU.
- */
-#ifdef CONFIG_ARCH_HAS_LOWLEVEL_INIT
- bsr.l arch_init_lowlevel
- nop
-#endif
- /*
- * If the code vector table is not at TEXT_BASE and so this code
- * as well, jump to the address mirror at FLASH ROM start address
- *
- * So load your image to TEXT_BASE for debugging or flash a binary
- * image to your bootflash - code below will take proper action.
- */
- lea.l %pc@(VECTOR_TABLE),%a0
- move.l #TEXT_BASE,%a1
- cmp.l %a0,%a1
- beq.s saveland
-
- /*
- * Execution is not at TEXT_BASE. We assume entry to this code by
- * a hardware reset and change execution to address of _FLASH_ rom.
- */
- lea.l %pc@(saveland),%a0 // Effective ! Address of label below
- move.l %a0,%d0
- and.l #0x00ffffff,%d0 // Cut away address high byte
- move.l #CFG_FLASH_ADDRESS,%d1 // Get flash address
- and.l #0xff000000,%d1 // and just take base for CS0
- or.l %d1,%d0 // Compose new address
- move.l %d0,%a0
- jmp %a0@ // Jump to flash rom address!
- nop
-
- /* We now either in SDRAM or FLASH START addresses, save to
- change chip selects */
-saveland:
- nop
-
- /*
- * Before relocating, we have to setup RAM timing
- * because memory timing is board-dependend, you will
- * find a lowlevel_init.[c|S] in your board directory.
- *
- * Do not jump/call other barebox code here!
- */
-#ifdef CONFIG_MACH_DO_LOWLEVEL_INIT
- bsr.l board_init_lowlevel
- nop
-#endif
-
- /*
- * relocate barebox Code to RAM (including copy of vectors)
- */
-relocate:
- lea.l %pc@(VECTOR_TABLE),%a0
- move.l #TEXT_BASE,%a1
- move.l #__bss_start,%a3
- cmp.l %a0,%a1
- beq.s skip_relocate
-
- /*
- * Calculate number of long words, and copy them to RAM
- */
- move.l %a3,%d2
- sub.l %a1,%d2
- asr.l #2,%d2
-copy_loop:
- move.l %a0@+,%a1@+
- subq.l #1,%d2
- bne.s copy_loop
-
-skip_relocate:
-
- /* Clear BSS segment in RAM */
-clear_bss:
- move.l #__bss_end,%a4
- moveq.l #0,%d2
-clear_loop:
- move.l %d2,%a3@+
- cmp.l %a4,%a3
- ble.s clear_loop
-
- /*
- * Relocate Vectors to memory start (address 0)
- *
- * NOTE: It could be at other places, but debuggers expect
- * this table to be at address 0.
- */
-#ifdef CONFIG_COPY_LOWMEM_VECTORS
-reloc_vectors:
- lea.l %pc@(VECTOR_TABLE),%a0
- move.l #0,%a1
- cmp.l %a0,%a1
- beq.s skip_copy_vectors
-
- move.l #0x100,%d2
-copy_loop_vectors:
- move.l %a0@+,%a1@+
- subq.l #1,%d2
- bne.s copy_loop_vectors
-skip_copy_vectors:
-#endif
-
-#ifndef CONFIG_USE_LOWMEM_VECTORS
- move.l #TEXT_BASE,%d0
- movec %d0,%vbr
- nop
-#endif
-
-#ifdef CONFIG_MACH_DO_LOWLEVEL_INIT
- /*
- * Call other half of initcode in relocated code
- *
- * You allowed to call other barebox code from here
- */
- jsr.l board_init_highlevel
- nop
-#endif
- /*
- * Now jump to real link address and barebox entry point
- */
- nop
- jmp.l start_barebox
- nop
- nop
-
-/*
- * Interrupt handling
- */
-
-/*
- * IRQ stack frame.
- */
-#define S_FRAME_SIZE 148
-
-#define S_SP S_A7
-#define S_SR 144
-#define S_PC 140
-
-#define S_FPIAR 136
-#define S_FPSR 132
-#define S_FPCR 128
-
-#define S_FP7 120
-#define S_FP6 112
-#define S_FP5 104
-#define S_FP4 96
-#define S_FP3 88
-#define S_FP2 80
-#define S_FP1 72
-#define S_FP0 64
-
-#define S_A7 60
-#define S_A6 56
-#define S_A5 52
-#define S_A4 48
-#define S_A3 44
-#define S_A2 40
-#define S_A1 36
-#define S_A0 32
-
-#define S_D7 28
-#define S_D6 24
-#define S_D5 20
-#define S_D4 16
-#define S_D3 12
-#define S_D2 8
-#define S_D1 4
-#define S_D0 0
-
-
-/*
- * exception handlers
- */
-#ifdef CONFIG_USE_IRQ
- .global _dbug_sc_handler
-_dbug_sc_handler:
- .global _asm_exception_handler
-_asm_exception_handler:
- move.w #0x2700,%sr /* Disable IRQs */
-
- move.l %sp,___SP_INIT /* Remember on top of stack */
- move.l #___SP_INIT,%sp /* Set stack to known area */
-
- move.l %a0,%sp@-
- lea _asm_context,%a0
-
- movem.l %d0-%d7/%a0-%a7,%a0@
-
- fmovem %fp0-%fp7,%a0@(S_FP0)
- fmove.l %fpcr,%a0@(S_FPCR)
- fmove.l %fpsr,%a0@(S_FPSR)
- fmove.l %fpiar,%a0@(S_FPIAR)
-
- move.l %sp@+,%a0@(S_A0)
- move.l %sp@,%a1
- move.l %a1,%a0@(S_SP)
- move.l %a1@(4),%a0@(S_PC)
- move.w %a1@(2),%a0@(S_SR)
-
- jsr cpu_cache_flush
- nop
-
- move.l %a1,%sp@-
- jsr mcf_execute_exception_handler
-
-
- lea _asm_context,%a0
- move.l %a0@(S_SP),%sp
-
- move.l %a0@(S_D1),%d1
- move.l %a0@(S_D0),%d0
- move.l %a0@(S_A1),%a1
- move.l %a0@(S_A0),%a0
-
- rte
- nop
- nop
-
- .global _asm_isr_handler
-_asm_isr_handler:
- link %a6,#-16
- movem.l %d0-%d1/%a0-%a1,%sp@
-
- move.w %a6@(4),%d0
- lsr.l #2,%d0
- andi.l #0x0000FF,%d0
- move.l %d0,%sp@-
- move.l #0,%a0
- move.l %a0,%sp@-
- jsr mcf_execute_irq_handler
- lea %sp@(8),%sp
- cmpi.l #1,%d0
- beq handled
-
-nothandled:
- movem.l %sp@,%d0-%d1/%a0-%a1
- unlk %a6
- jmp _asm_exception_handler
- nop
-
-handled:
- movem.l %sp@,%d0-%d1/%a0-%a1
- unlk %a6
- rte
- nop
- nop
-
-#else
-
- .global _dbug_sc_handler
-_dbug_sc_handler:
- .global _asm_exception_handler
-_asm_exception_handler:
- nop
- // FIXME - do something useful here
- rte
-
- .global _asm_isr_handler
-_asm_isr_handler:
- nop
- // FIXME - do something useful here
- rte
-
-#endif
-
- .data
-_asm_context:
- .space S_FRAME_SIZE,0x55
-
-
- .end
diff --git a/arch/m68k/include/asm/atomic.h b/arch/m68k/include/asm/atomic.h
deleted file mode 100644
index efbe2b88bf..0000000000
--- a/arch/m68k/include/asm/atomic.h
+++ /dev/null
@@ -1,25 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Declaration for atomic operations
- */
-
-/* Empty dummy FIXME */
diff --git a/arch/m68k/include/asm/barebox-m68k.h b/arch/m68k/include/asm/barebox-m68k.h
deleted file mode 100644
index c1ee75ed33..0000000000
--- a/arch/m68k/include/asm/barebox-m68k.h
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Arch dependant barebox defines
- */
-#ifndef _BAREBOX_M68K_H_
-#define _BAREBOX_M68K_H_ 1
-
-/* for the following variables, see start.S */
-//extern ulong _armboot_start; /* code start */
-//extern ulong _bss_start; /* code + data end == BSS start */
-//extern ulong _bss_end; /* BSS end */
-//extern ulong IRQ_STACK_START; /* top of IRQ stack */
-
-/* cpu/.../cpu.c */
-int cleanup_before_linux(void);
-
-/* board/.../... */
-//int board_init(void);
-//int dram_init (void);
-
-#endif /* _BAREBOX_M68K_H_ */
diff --git a/arch/m68k/include/asm/barebox.h b/arch/m68k/include/asm/barebox.h
deleted file mode 100644
index 568b2883b9..0000000000
--- a/arch/m68k/include/asm/barebox.h
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * @note This header file defines an interface to barebox. Including
- * this (unmodified) header file in another file is considered normal
- * use of barebox, and does *not* fall under the heading of "derived
- * work".
- */
-
-#ifndef _BAREBOX_H_
-#define _BAREBOX_H_ 1
-
-//typedef struct bd_info {} bd_t;
-
-#endif /* _BAREBOX_H_ */
diff --git a/arch/m68k/include/asm/bitops.h b/arch/m68k/include/asm/bitops.h
deleted file mode 100644
index fee64a425c..0000000000
--- a/arch/m68k/include/asm/bitops.h
+++ /dev/null
@@ -1,141 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Bitops helper functions and defines for M68k
- *
- * bit 0 is the LSB of addr; bit 32 is the HSB.
- *
- * Please note that the code in this file should never be included
- * from user space. Many of these are not implemented in assembler
- * since they would be too costly. Also, they require priviledged
- * instructions (which are not available from user mode) to ensure
- * that they are atomic.
- */
-
-#ifndef __ASM_M68K_BITOPS_H
-#define __ASM_M68K_BITOPS_H
-
-/*
- * Function prototypes to keep gcc -Wall happy.
- */
-extern void set_bit(int nr, volatile void * addr);
-
-static inline void __set_bit(int nr, volatile void *addr)
-{
- ((unsigned char *) addr)[nr >> 3] |= (1U << (nr & 7));
-}
-
-extern void clear_bit(int nr, volatile void * addr);
-
-static inline void __clear_bit(int nr, volatile void *addr)
-{
- ((unsigned char *) addr)[nr >> 3] &= ~(1U << (nr & 7));
-}
-
-extern void change_bit(int nr, volatile void * addr);
-
-static inline void __change_bit(int nr, volatile void *addr)
-{
- ((unsigned char *) addr)[nr >> 3] ^= (1U << (nr & 7));
-}
-
-extern int test_and_set_bit(int nr, volatile void * addr);
-
-static inline int __test_and_set_bit(int nr, volatile void *addr)
-{
- unsigned int mask = 1 << (nr & 7);
- unsigned int oldval;
-
- oldval = ((unsigned char *) addr)[nr >> 3];
- ((unsigned char *) addr)[nr >> 3] = oldval | mask;
- return oldval & mask;
-}
-
-extern int test_and_clear_bit(int nr, volatile void * addr);
-
-static inline int __test_and_clear_bit(int nr, volatile void *addr)
-{
- unsigned int mask = 1 << (nr & 7);
- unsigned int oldval;
-
- oldval = ((unsigned char *) addr)[nr >> 3];
- ((unsigned char *) addr)[nr >> 3] = oldval & ~mask;
- return oldval & mask;
-}
-
-extern int test_and_change_bit(int nr, volatile void * addr);
-
-static inline int __test_and_change_bit(int nr, volatile void *addr)
-{
- unsigned int mask = 1 << (nr & 7);
- unsigned int oldval;
-
- oldval = ((unsigned char *) addr)[nr >> 3];
- ((unsigned char *) addr)[nr >> 3] = oldval ^ mask;
- return oldval & mask;
-}
-
-extern int find_first_zero_bit(void * addr, unsigned size);
-extern int find_next_zero_bit(void * addr, int size, int offset);
-
-/*
- * This routine doesn't need to be atomic.
- */
-static inline int test_bit(int nr, const void * addr)
-{
- return ((unsigned char *) addr)[nr >> 3] & (1U << (nr & 7));
-}
-
-/*
- * ffz = Find First Zero in word. Undefined if no zero exists,
- * so code should check against ~0UL first..
- */
-static inline unsigned long ffz(unsigned long word)
-{
- int k;
-
- word = ~word;
- k = 31;
- if (word & 0x0000ffff) { k -= 16; word <<= 16; }
- if (word & 0x00ff0000) { k -= 8; word <<= 8; }
- if (word & 0x0f000000) { k -= 4; word <<= 4; }
- if (word & 0x30000000) { k -= 2; word <<= 2; }
- if (word & 0x40000000) { k -= 1; }
- return k;
-}
-
-#include <asm-generic/bitops/ffs.h>
-#include <asm-generic/bitops/hweight.h>
-
-#define ext2_set_bit test_and_set_bit
-#define ext2_clear_bit test_and_clear_bit
-#define ext2_test_bit test_bit
-#define ext2_find_first_zero_bit find_first_zero_bit
-#define ext2_find_next_zero_bit find_next_zero_bit
-
-/* Bitmap functions for the minix filesystem. */
-#define minix_test_and_set_bit(nr,addr) test_and_set_bit(nr,addr)
-#define minix_set_bit(nr,addr) set_bit(nr,addr)
-#define minix_test_and_clear_bit(nr,addr) test_and_clear_bit(nr,addr)
-#define minix_test_bit(nr,addr) test_bit(nr,addr)
-#define minix_find_first_zero_bit(addr,size) find_first_zero_bit(addr,size)
-
-#endif /* __ASM_M68K_BITOPS_H */
diff --git a/arch/m68k/include/asm/bootinfo.h b/arch/m68k/include/asm/bootinfo.h
deleted file mode 100644
index a0bd27b317..0000000000
--- a/arch/m68k/include/asm/bootinfo.h
+++ /dev/null
@@ -1,381 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Definition of the Linux/m68k boot information structure.
- *
- * Taken from Linux includes. See there for latest version, and update
- * if needed
- */
-#ifndef _M68K_BOOTINFO_H
-#define _M68K_BOOTINFO_H
-
-
-/*
- * Bootinfo definitions
- *
- * This is an easily parsable and extendable structure containing all
- * information to be passed from the bootstrap to the kernel.
- *
- * This way I hope to keep all future changes back/forewards compatible.
- * Thus, keep your fingers crossed...
- *
- * This structure is copied right after the kernel bss by the bootstrap
- * routine.
- */
-
-#ifndef __ASSEMBLY__
-
-struct bi_record {
- unsigned short tag; /* tag ID */
- unsigned short size; /* size of record (in bytes) */
- unsigned long data[0]; /* data */
-};
-
-#endif /* __ASSEMBLY__ */
-
-
-/*
- * Tag Definitions
- *
- * Machine independent tags start counting from 0x0000
- * Machine dependent tags start counting from 0x8000
- */
-
-#define BI_LAST 0x0000 /* last record (sentinel) */
-#define BI_MACHTYPE 0x0001 /* machine type (u_long) */
-#define BI_CPUTYPE 0x0002 /* cpu type (u_long) */
-#define BI_FPUTYPE 0x0003 /* fpu type (u_long) */
-#define BI_MMUTYPE 0x0004 /* mmu type (u_long) */
-#define BI_MEMCHUNK 0x0005 /* memory chunk address and size */
- /* (struct mem_info) */
-#define BI_RAMDISK 0x0006 /* ramdisk address and size */
- /* (struct mem_info) */
-#define BI_COMMAND_LINE 0x0007 /* kernel command line parameters */
- /* (string) */
-
-/*
- * Amiga-specific tags
- */
-
-#define BI_AMIGA_MODEL 0x8000 /* model (u_long) */
-#define BI_AMIGA_AUTOCON 0x8001 /* AutoConfig device */
- /* (struct ConfigDev) */
-#define BI_AMIGA_CHIP_SIZE 0x8002 /* size of Chip RAM (u_long) */
-#define BI_AMIGA_VBLANK 0x8003 /* VBLANK frequency (u_char) */
-#define BI_AMIGA_PSFREQ 0x8004 /* power supply frequency (u_char) */
-#define BI_AMIGA_ECLOCK 0x8005 /* EClock frequency (u_long) */
-#define BI_AMIGA_CHIPSET 0x8006 /* native chipset present (u_long) */
-#define BI_AMIGA_SERPER 0x8007 /* serial port period (u_short) */
-
-/*
- * Atari-specific tags
- */
-
-#define BI_ATARI_MCH_COOKIE 0x8000 /* _MCH cookie from TOS (u_long) */
-#define BI_ATARI_MCH_TYPE 0x8001 /* special machine type (u_long) */
- /* (values are ATARI_MACH_* defines */
-
-/* mch_cookie values (upper word) */
-#define ATARI_MCH_ST 0
-#define ATARI_MCH_STE 1
-#define ATARI_MCH_TT 2
-#define ATARI_MCH_FALCON 3
-
-/* mch_type values */
-#define ATARI_MACH_NORMAL 0 /* no special machine type */
-#define ATARI_MACH_MEDUSA 1 /* Medusa 040 */
-#define ATARI_MACH_HADES 2 /* Hades 040 or 060 */
-#define ATARI_MACH_AB40 3 /* Afterburner040 on Falcon */
-
-/*
- * VME-specific tags
- */
-
-#define BI_VME_TYPE 0x8000 /* VME sub-architecture (u_long) */
-#define BI_VME_BRDINFO 0x8001 /* VME board information (struct) */
-
-/* BI_VME_TYPE codes */
-#define VME_TYPE_TP34V 0x0034 /* Tadpole TP34V */
-#define VME_TYPE_MVME147 0x0147 /* Motorola MVME147 */
-#define VME_TYPE_MVME162 0x0162 /* Motorola MVME162 */
-#define VME_TYPE_MVME166 0x0166 /* Motorola MVME166 */
-#define VME_TYPE_MVME167 0x0167 /* Motorola MVME167 */
-#define VME_TYPE_MVME172 0x0172 /* Motorola MVME172 */
-#define VME_TYPE_MVME177 0x0177 /* Motorola MVME177 */
-#define VME_TYPE_BVME4000 0x4000 /* BVM Ltd. BVME4000 */
-#define VME_TYPE_BVME6000 0x6000 /* BVM Ltd. BVME6000 */
-
-/* BI_VME_BRDINFO is a 32 byte struct as returned by the Bug code on
- * Motorola VME boards. Contains board number, Bug version, board
- * configuration options, etc. See include/asm/mvme16xhw.h for details.
- */
-
-
-/*
- * Macintosh-specific tags (all u_long)
- */
-
-#define BI_MAC_MODEL 0x8000 /* Mac Gestalt ID (model type) */
-#define BI_MAC_VADDR 0x8001 /* Mac video base address */
-#define BI_MAC_VDEPTH 0x8002 /* Mac video depth */
-#define BI_MAC_VROW 0x8003 /* Mac video rowbytes */
-#define BI_MAC_VDIM 0x8004 /* Mac video dimensions */
-#define BI_MAC_VLOGICAL 0x8005 /* Mac video logical base */
-#define BI_MAC_SCCBASE 0x8006 /* Mac SCC base address */
-#define BI_MAC_BTIME 0x8007 /* Mac boot time */
-#define BI_MAC_GMTBIAS 0x8008 /* Mac GMT timezone offset */
-#define BI_MAC_MEMSIZE 0x8009 /* Mac RAM size (sanity check) */
-#define BI_MAC_CPUID 0x800a /* Mac CPU type (sanity check) */
-#define BI_MAC_ROMBASE 0x800b /* Mac system ROM base address */
-
-/*
- * Macintosh hardware profile data - unused, see macintosh.h for
- * resonable type values
- */
-
-#define BI_MAC_VIA1BASE 0x8010 /* Mac VIA1 base address (always present) */
-#define BI_MAC_VIA2BASE 0x8011 /* Mac VIA2 base address (type varies) */
-#define BI_MAC_VIA2TYPE 0x8012 /* Mac VIA2 type (VIA, RBV, OSS) */
-#define BI_MAC_ADBTYPE 0x8013 /* Mac ADB interface type */
-#define BI_MAC_ASCBASE 0x8014 /* Mac Apple Sound Chip base address */
-#define BI_MAC_SCSI5380 0x8015 /* Mac NCR 5380 SCSI (base address, multi) */
-#define BI_MAC_SCSIDMA 0x8016 /* Mac SCSI DMA (base address) */
-#define BI_MAC_SCSI5396 0x8017 /* Mac NCR 53C96 SCSI (base address, multi) */
-#define BI_MAC_IDETYPE 0x8018 /* Mac IDE interface type */
-#define BI_MAC_IDEBASE 0x8019 /* Mac IDE interface base address */
-#define BI_MAC_NUBUS 0x801a /* Mac Nubus type (none, regular, pseudo) */
-#define BI_MAC_SLOTMASK 0x801b /* Mac Nubus slots present */
-#define BI_MAC_SCCTYPE 0x801c /* Mac SCC serial type (normal, IOP) */
-#define BI_MAC_ETHTYPE 0x801d /* Mac builtin ethernet type (Sonic, MACE */
-#define BI_MAC_ETHBASE 0x801e /* Mac builtin ethernet base address */
-#define BI_MAC_PMU 0x801f /* Mac power management / poweroff hardware */
-#define BI_MAC_IOP_SWIM 0x8020 /* Mac SWIM floppy IOP */
-#define BI_MAC_IOP_ADB 0x8021 /* Mac ADB IOP */
-
-/*
- * Mac: compatibility with old booter data format (temporarily)
- * Fields unused with the new bootinfo can be deleted now; instead of
- * adding new fields the struct might be splitted into a hardware address
- * part and a hardware type part
- */
-
-#ifndef __ASSEMBLY__
-
-struct mac_booter_data
-{
- unsigned long videoaddr;
- unsigned long videorow;
- unsigned long videodepth;
- unsigned long dimensions;
- unsigned long args;
- unsigned long boottime;
- unsigned long gmtbias;
- unsigned long bootver;
- unsigned long videological;
- unsigned long sccbase;
- unsigned long id;
- unsigned long memsize;
- unsigned long serialmf;
- unsigned long serialhsk;
- unsigned long serialgpi;
- unsigned long printmf;
- unsigned long printhsk;
- unsigned long printgpi;
- unsigned long cpuid;
- unsigned long rombase;
- unsigned long adbdelay;
- unsigned long timedbra;
-};
-
-extern struct mac_booter_data
- mac_bi_data;
-
-#endif
-
-/*
- * Apollo-specific tags
- */
-
-#define BI_APOLLO_MODEL 0x8000 /* model (u_long) */
-
-/*
- * HP300-specific tags
- */
-
-#define BI_HP300_MODEL 0x8000 /* model (u_long) */
-#define BI_HP300_UART_SCODE 0x8001 /* UART select code (u_long) */
-#define BI_HP300_UART_ADDR 0x8002 /* phys. addr of UART (u_long) */
-
-/*
- * Stuff for bootinfo interface versioning
- *
- * At the start of kernel code, a 'struct bootversion' is located.
- * bootstrap checks for a matching version of the interface before booting
- * a kernel, to avoid user confusion if kernel and bootstrap don't work
- * together :-)
- *
- * If incompatible changes are made to the bootinfo interface, the major
- * number below should be stepped (and the minor reset to 0) for the
- * appropriate machine. If a change is backward-compatible, the minor
- * should be stepped. "Backwards-compatible" means that booting will work,
- * but certain features may not.
- */
-
-#define BOOTINFOV_MAGIC 0x4249561A /* 'BIV^Z' */
-#define MK_BI_VERSION(major,minor) (((major)<<16)+(minor))
-#define BI_VERSION_MAJOR(v) (((v) >> 16) & 0xffff)
-#define BI_VERSION_MINOR(v) ((v) & 0xffff)
-
-#ifndef __ASSEMBLY__
-
-struct bootversion {
- unsigned short branch;
- unsigned long magic;
- struct {
- unsigned long machtype;
- unsigned long version;
- } machversions[0];
-};
-
-#endif /* __ASSEMBLY__ */
-
-#define AMIGA_BOOTI_VERSION MK_BI_VERSION( 2, 0 )
-#define ATARI_BOOTI_VERSION MK_BI_VERSION( 2, 1 )
-#define MAC_BOOTI_VERSION MK_BI_VERSION( 2, 0 )
-#define MVME147_BOOTI_VERSION MK_BI_VERSION( 2, 0 )
-#define MVME16x_BOOTI_VERSION MK_BI_VERSION( 2, 0 )
-#define BVME6000_BOOTI_VERSION MK_BI_VERSION( 2, 0 )
-#define Q40_BOOTI_VERSION MK_BI_VERSION( 2, 0 )
-#define HP300_BOOTI_VERSION MK_BI_VERSION( 2, 0 )
-
-#ifdef BOOTINFO_COMPAT_1_0
-
-/*
- * Backwards compatibility with bootinfo interface version 1.0
- */
-
-#define COMPAT_AMIGA_BOOTI_VERSION MK_BI_VERSION( 1, 0 )
-#define COMPAT_ATARI_BOOTI_VERSION MK_BI_VERSION( 1, 0 )
-#define COMPAT_MAC_BOOTI_VERSION MK_BI_VERSION( 1, 0 )
-
-#include <linux/zorro.h>
-
-#define COMPAT_NUM_AUTO 16
-
-struct compat_bi_Amiga {
- int model;
- int num_autocon;
- struct ConfigDev autocon[COMPAT_NUM_AUTO];
- unsigned long chip_size;
- unsigned char vblank;
- unsigned char psfreq;
- unsigned long eclock;
- unsigned long chipset;
- unsigned long hw_present;
-};
-
-struct compat_bi_Atari {
- unsigned long hw_present;
- unsigned long mch_cookie;
-};
-
-#ifndef __ASSEMBLY__
-
-struct compat_bi_Macintosh
-{
- unsigned long videoaddr;
- unsigned long videorow;
- unsigned long videodepth;
- unsigned long dimensions;
- unsigned long args;
- unsigned long boottime;
- unsigned long gmtbias;
- unsigned long bootver;
- unsigned long videological;
- unsigned long sccbase;
- unsigned long id;
- unsigned long memsize;
- unsigned long serialmf;
- unsigned long serialhsk;
- unsigned long serialgpi;
- unsigned long printmf;
- unsigned long printhsk;
- unsigned long printgpi;
- unsigned long cpuid;
- unsigned long rombase;
- unsigned long adbdelay;
- unsigned long timedbra;
-};
-
-#endif
-
-struct compat_mem_info {
- unsigned long addr;
- unsigned long size;
-};
-
-#define COMPAT_NUM_MEMINFO 4
-
-#define COMPAT_CPUB_68020 0
-#define COMPAT_CPUB_68030 1
-#define COMPAT_CPUB_68040 2
-#define COMPAT_CPUB_68060 3
-#define COMPAT_FPUB_68881 5
-#define COMPAT_FPUB_68882 6
-#define COMPAT_FPUB_68040 7
-#define COMPAT_FPUB_68060 8
-
-#define COMPAT_CPU_68020 (1<<COMPAT_CPUB_68020)
-#define COMPAT_CPU_68030 (1<<COMPAT_CPUB_68030)
-#define COMPAT_CPU_68040 (1<<COMPAT_CPUB_68040)
-#define COMPAT_CPU_68060 (1<<COMPAT_CPUB_68060)
-#define COMPAT_CPU_MASK (31)
-#define COMPAT_FPU_68881 (1<<COMPAT_FPUB_68881)
-#define COMPAT_FPU_68882 (1<<COMPAT_FPUB_68882)
-#define COMPAT_FPU_68040 (1<<COMPAT_FPUB_68040)
-#define COMPAT_FPU_68060 (1<<COMPAT_FPUB_68060)
-#define COMPAT_FPU_MASK (0xfe0)
-
-#define COMPAT_CL_SIZE (256)
-
-struct compat_bootinfo {
- unsigned long machtype;
- unsigned long cputype;
- struct compat_mem_info memory[COMPAT_NUM_MEMINFO];
- int num_memory;
- unsigned long ramdisk_size;
- unsigned long ramdisk_addr;
- char command_line[COMPAT_CL_SIZE];
- union {
- struct compat_bi_Amiga bi_ami;
- struct compat_bi_Atari bi_ata;
- struct compat_bi_Macintosh bi_mac;
- } bi_un;
-};
-
-#define bi_amiga bi_un.bi_ami
-#define bi_atari bi_un.bi_ata
-#define bi_mac bi_un.bi_mac
-
-#endif /* BOOTINFO_COMPAT_1_0 */
-
-
-#endif /* _M68K_BOOTINFO_H */
diff --git a/arch/m68k/include/asm/byteorder.h b/arch/m68k/include/asm/byteorder.h
deleted file mode 100644
index 7a5fb6188c..0000000000
--- a/arch/m68k/include/asm/byteorder.h
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Define byte order of target
- *
- * M68K is always big-endian mode.
- *
- * When in big endian mode, byte accesses appear as:
- * 0 = d24...d31, 1 = d16...d23, 2 = d8...d15, 3 = d0...d7
- * and word accesses (data or instruction) appear as:
- * d0...d31
- */
-#ifndef __ASM_M68K_BYTEORDER_H
-#define __ASM_M68K_BYTEORDER_H
-
-
-#include <asm/types.h>
-
-#if !defined(__STRICT_ANSI__) || defined(__KERNEL__)
-# define __BYTEORDER_HAS_U64__
-# define __SWAB_64_THRU_32__
-#endif
-#include <linux/byteorder/big_endian.h>
-
-#endif
diff --git a/arch/m68k/include/asm/coldfire/mcf548x.h b/arch/m68k/include/asm/coldfire/mcf548x.h
deleted file mode 100644
index 4bde42a57d..0000000000
--- a/arch/m68k/include/asm/coldfire/mcf548x.h
+++ /dev/null
@@ -1,63 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Register and bit definitions for the MCF547X and MCF548X processors
- */
-#ifndef __MCF548X_H__
-#define __MCF548X_H__
-
-/*
- * useful padding structure for register maps
- */
-typedef struct
-{
- vuint8_t a;
- vuint16_t b;
-} __attribute ((packed)) vuint24_t;
-
-/*
- * Include all internal hardware register macros and defines for this CPU.
- */
-#include "asm/coldfire/mcf548x/mcf548x_fec.h"
-#include "asm/coldfire/mcf548x/mcf548x_siu.h"
-#include "asm/coldfire/mcf548x/mcf548x_ctm.h"
-#include "asm/coldfire/mcf548x/mcf548x_dspi.h"
-#include "asm/coldfire/mcf548x/mcf548x_eport.h"
-#include "asm/coldfire/mcf548x/mcf548x_fbcs.h"
-#include "asm/coldfire/mcf548x/mcf548x_gpio.h"
-#include "asm/coldfire/mcf548x/mcf548x_gpt.h"
-#include "asm/coldfire/mcf548x/mcf548x_i2c.h"
-#include "asm/coldfire/mcf548x/mcf548x_intc.h"
-#include "asm/coldfire/mcf548x/mcf548x_sdramc.h"
-#include "asm/coldfire/mcf548x/mcf548x_sec.h"
-#include "asm/coldfire/mcf548x/mcf548x_slt.h"
-#include "asm/coldfire/mcf548x/mcf548x_usb.h"
-#include "asm/coldfire/mcf548x/mcf548x_psc.h"
-#include "asm/coldfire/mcf548x/mcf548x_uart.h"
-#include "asm/coldfire/mcf548x/mcf548x_sram.h"
-#include "asm/coldfire/mcf548x/mcf548x_pci.h"
-#include "asm/coldfire/mcf548x/mcf548x_pciarb.h"
-#include "asm/coldfire/mcf548x/mcf548x_dma.h"
-#include "asm/coldfire/mcf548x/mcf548x_dma_ereq.h"
-#include "asm/coldfire/mcf548x/mcf548x_can.h"
-#include "asm/coldfire/mcf548x/mcf548x_xlbarb.h"
-
-#endif /* __MCF548X_H__ */
diff --git a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_can.h b/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_can.h
deleted file mode 100644
index bb53eaa03a..0000000000
--- a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_can.h
+++ /dev/null
@@ -1,159 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Register and bit definitions for the MCF548X and MCF547x
- * CAN controllers
- */
-#ifndef __MCF548X_CAN_H__
-#define __MCF548X_CAN_H__
-
-/*
- * FlexCAN Module (CAN)
- */
-
-/* Register read/write macros */
-#define MCF_CAN_CANMCR0 (*(vuint32_t*)(&__MBAR[0x00A000]))
-#define MCF_CAN_CANCTRL0 (*(vuint32_t*)(&__MBAR[0x00A004]))
-#define MCF_CAN_TIMER0 (*(vuint32_t*)(&__MBAR[0x00A008]))
-#define MCF_CAN_RXGMASK0 (*(vuint32_t*)(&__MBAR[0x00A010]))
-#define MCF_CAN_RX14MASK0 (*(vuint32_t*)(&__MBAR[0x00A014]))
-#define MCF_CAN_RX15MASK0 (*(vuint32_t*)(&__MBAR[0x00A018]))
-#define MCF_CAN_ERRCNT0 (*(vuint32_t*)(&__MBAR[0x00A01C]))
-#define MCF_CAN_ERRSTAT0 (*(vuint32_t*)(&__MBAR[0x00A020]))
-#define MCF_CAN_IMASK0 (*(vuint16_t*)(&__MBAR[0x00A02A]))
-#define MCF_CAN_IFLAG0 (*(vuint16_t*)(&__MBAR[0x00A032]))
-#define MCF_CAN_CANMCR1 (*(vuint32_t*)(&__MBAR[0x00A800]))
-#define MCF_CAN_CANCTRL1 (*(vuint32_t*)(&__MBAR[0x00A804]))
-#define MCF_CAN_TIMER1 (*(vuint32_t*)(&__MBAR[0x00A808]))
-#define MCF_CAN_RXGMASK1 (*(vuint32_t*)(&__MBAR[0x00A810]))
-#define MCF_CAN_RX14MASK1 (*(vuint32_t*)(&__MBAR[0x00A814]))
-#define MCF_CAN_RX15MASK1 (*(vuint32_t*)(&__MBAR[0x00A818]))
-#define MCF_CAN_ERRCNT1 (*(vuint32_t*)(&__MBAR[0x00A81C]))
-#define MCF_CAN_ERRSTAT1 (*(vuint32_t*)(&__MBAR[0x00A820]))
-#define MCF_CAN_IMASK1 (*(vuint16_t*)(&__MBAR[0x00A82A]))
-#define MCF_CAN_IFLAG1 (*(vuint16_t*)(&__MBAR[0x00A832]))
-#define MCF_CAN_CANMCR(x) (*(vuint32_t*)(&__MBAR[0x00A000+((x)*0x800)]))
-#define MCF_CAN_CANCTRL(x) (*(vuint32_t*)(&__MBAR[0x00A004+((x)*0x800)]))
-#define MCF_CAN_TIMER(x) (*(vuint32_t*)(&__MBAR[0x00A008+((x)*0x800)]))
-#define MCF_CAN_RXGMASK(x) (*(vuint32_t*)(&__MBAR[0x00A010+((x)*0x800)]))
-#define MCF_CAN_RX14MASK(x) (*(vuint32_t*)(&__MBAR[0x00A014+((x)*0x800)]))
-#define MCF_CAN_RX15MASK(x) (*(vuint32_t*)(&__MBAR[0x00A018+((x)*0x800)]))
-#define MCF_CAN_ERRCNT(x) (*(vuint32_t*)(&__MBAR[0x00A01C+((x)*0x800)]))
-#define MCF_CAN_ERRSTAT(x) (*(vuint32_t*)(&__MBAR[0x00A020+((x)*0x800)]))
-#define MCF_CAN_IMASK(x) (*(vuint16_t*)(&__MBAR[0x00A02A+((x)*0x800)]))
-#define MCF_CAN_IFLAG(x) (*(vuint16_t*)(&__MBAR[0x00A032+((x)*0x800)]))
-
-/* Bit definitions and macros for MCF_CAN_CANMCR */
-#define MCF_CAN_CANMCR_MAXMB(x) (((x)&0x0000000F)<<0)
-#define MCF_CAN_CANMCR_SUPV (0x00800000)
-#define MCF_CAN_CANMCR_FRZACK (0x01000000)
-#define MCF_CAN_CANMCR_SOFTRST (0x02000000)
-#define MCF_CAN_CANMCR_HALT (0x10000000)
-#define MCF_CAN_CANMCR_FRZ (0x40000000)
-#define MCF_CAN_CANMCR_MDIS (0x80000000)
-
-/* Bit definitions and macros for MCF_CAN_CANCTRL */
-#define MCF_CAN_CANCTRL_PROPSEG(x) (((x)&0x00000007)<<0)
-#define MCF_CAN_CANCTRL_LOM (0x00000008)
-#define MCF_CAN_CANCTRL_LBUF (0x00000010)
-#define MCF_CAN_CANCTRL_TSYNC (0x00000020)
-#define MCF_CAN_CANCTRL_BOFFREC (0x00000040)
-#define MCF_CAN_CANCTRL_SAMP (0x00000080)
-#define MCF_CAN_CANCTRL_LPB (0x00001000)
-#define MCF_CAN_CANCTRL_CLKSRC (0x00002000)
-#define MCF_CAN_CANCTRL_ERRMSK (0x00004000)
-#define MCF_CAN_CANCTRL_BOFFMSK (0x00008000)
-#define MCF_CAN_CANCTRL_PSEG2(x) (((x)&0x00000007)<<16)
-#define MCF_CAN_CANCTRL_PSEG1(x) (((x)&0x00000007)<<19)
-#define MCF_CAN_CANCTRL_RJW(x) (((x)&0x00000003)<<22)
-#define MCF_CAN_CANCTRL_PRESDIV(x) (((x)&0x000000FF)<<24)
-
-/* Bit definitions and macros for MCF_CAN_TIMER */
-#define MCF_CAN_TIMER_TIMER(x) (((x)&0x0000FFFF)<<0)
-
-/* Bit definitions and macros for MCF_CAN_RXGMASK */
-#define MCF_CAN_RXGMASK_MI(x) (((x)&0x1FFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_CAN_RX14MASK */
-#define MCF_CAN_RX14MASK_MI(x) (((x)&0x1FFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_CAN_RX15MASK */
-#define MCF_CAN_RX15MASK_MI(x) (((x)&0x1FFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_CAN_ERRCNT */
-#define MCF_CAN_ERRCNT_TXECTR(x) (((x)&0x000000FF)<<0)
-#define MCF_CAN_ERRCNT_RXECTR(x) (((x)&0x000000FF)<<8)
-
-/* Bit definitions and macros for MCF_CAN_ERRSTAT */
-#define MCF_CAN_ERRSTAT_WAKINT (0x00000001)
-#define MCF_CAN_ERRSTAT_ERRINT (0x00000002)
-#define MCF_CAN_ERRSTAT_BOFFINT (0x00000004)
-#define MCF_CAN_ERRSTAT_FLTCONF(x) (((x)&0x00000003)<<4)
-#define MCF_CAN_ERRSTAT_TXRX (0x00000040)
-#define MCF_CAN_ERRSTAT_IDLE (0x00000080)
-#define MCF_CAN_ERRSTAT_RXWRN (0x00000100)
-#define MCF_CAN_ERRSTAT_TXWRN (0x00000200)
-#define MCF_CAN_ERRSTAT_STFERR (0x00000400)
-#define MCF_CAN_ERRSTAT_FRMERR (0x00000800)
-#define MCF_CAN_ERRSTAT_CRCERR (0x00001000)
-#define MCF_CAN_ERRSTAT_ACKERR (0x00002000)
-#define MCF_CAN_ERRSTAT_BITERR(x) (((x)&0x00000003)<<14)
-#define MCF_CAN_ERRSTAT_FLTCONF_ACTIVE (0x00000000)
-#define MCF_CAN_ERRSTAT_FLTCONF_PASSIVE (0x00000010)
-#define MCF_CAN_ERRSTAT_FLTCONF_BUSOFF (0x00000020)
-
-/* Bit definitions and macros for MCF_CAN_IMASK */
-#define MCF_CAN_IMASK_BUF0M (0x0001)
-#define MCF_CAN_IMASK_BUF1M (0x0002)
-#define MCF_CAN_IMASK_BUF2M (0x0004)
-#define MCF_CAN_IMASK_BUF3M (0x0008)
-#define MCF_CAN_IMASK_BUF4M (0x0010)
-#define MCF_CAN_IMASK_BUF5M (0x0020)
-#define MCF_CAN_IMASK_BUF6M (0x0040)
-#define MCF_CAN_IMASK_BUF7M (0x0080)
-#define MCF_CAN_IMASK_BUF8M (0x0100)
-#define MCF_CAN_IMASK_BUF9M (0x0200)
-#define MCF_CAN_IMASK_BUF10M (0x0400)
-#define MCF_CAN_IMASK_BUF11M (0x0800)
-#define MCF_CAN_IMASK_BUF12M (0x1000)
-#define MCF_CAN_IMASK_BUF13M (0x2000)
-#define MCF_CAN_IMASK_BUF14M (0x4000)
-#define MCF_CAN_IMASK_BUF15M (0x8000)
-
-/* Bit definitions and macros for MCF_CAN_IFLAG */
-#define MCF_CAN_IFLAG_BUF0I (0x0001)
-#define MCF_CAN_IFLAG_BUF1I (0x0002)
-#define MCF_CAN_IFLAG_BUF2I (0x0004)
-#define MCF_CAN_IFLAG_BUF3I (0x0008)
-#define MCF_CAN_IFLAG_BUF4I (0x0010)
-#define MCF_CAN_IFLAG_BUF5I (0x0020)
-#define MCF_CAN_IFLAG_BUF6I (0x0040)
-#define MCF_CAN_IFLAG_BUF7I (0x0080)
-#define MCF_CAN_IFLAG_BUF8I (0x0100)
-#define MCF_CAN_IFLAG_BUF9I (0x0200)
-#define MCF_CAN_IFLAG_BUF10I (0x0400)
-#define MCF_CAN_IFLAG_BUF11I (0x0800)
-#define MCF_CAN_IFLAG_BUF12I (0x1000)
-#define MCF_CAN_IFLAG_BUF13I (0x2000)
-#define MCF_CAN_IFLAG_BUF14I (0x4000)
-#define MCF_CAN_IFLAG_BUF15I (0x8000)
-
-#endif /* __MCF548X_CAN_H__ */
diff --git a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_ctm.h b/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_ctm.h
deleted file mode 100644
index 6c779ec739..0000000000
--- a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_ctm.h
+++ /dev/null
@@ -1,88 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Register and bit definitions for the MCF548X and MCF547x
- * Common Timer Module
- */
-#ifndef __MCF548X_CTM_H__
-#define __MCF548X_CTM_H__
-
-/*
- * Comm Timer Module (CTM)
- */
-
-/* Register read/write macros */
-#define MCF_CTM_CTCRF0 (*(vuint32_t*)(&__MBAR[0x007F00]))
-#define MCF_CTM_CTCRF1 (*(vuint32_t*)(&__MBAR[0x007F04]))
-#define MCF_CTM_CTCRF2 (*(vuint32_t*)(&__MBAR[0x007F08]))
-#define MCF_CTM_CTCRF3 (*(vuint32_t*)(&__MBAR[0x007F0C]))
-#define MCF_CTM_CTCRFn(x) (*(vuint32_t*)(&__MBAR[0x007F00+((x)*0x004)]))
-#define MCF_CTM_CTCRV4 (*(vuint32_t*)(&__MBAR[0x007F10]))
-#define MCF_CTM_CTCRV5 (*(vuint32_t*)(&__MBAR[0x007F14]))
-#define MCF_CTM_CTCRV6 (*(vuint32_t*)(&__MBAR[0x007F18]))
-#define MCF_CTM_CTCRV7 (*(vuint32_t*)(&__MBAR[0x007F1C]))
-#define MCF_CTM_CTCRVn(x) (*(vuint32_t*)(&__MBAR[0x007F10+((x)*0x004)]))
-
-/* Bit definitions and macros for MCF_CTM_CTCRFn */
-#define MCF_CTM_CTCRFn_CRV(x) (((x)&0x0000FFFF)<<0)
-#define MCF_CTM_CTCRFn_S(x) (((x)&0x0000000F)<<16)
-#define MCF_CTM_CTCRFn_PCT(x) (((x)&0x00000007)<<20)
-#define MCF_CTM_CTCRFn_M (0x00800000)
-#define MCF_CTM_CTCRFn_IM (0x01000000)
-#define MCF_CTM_CTCRFn_I (0x80000000)
-#define MCF_CTM_CTCRFn_PCT_100 (0x00000000)
-#define MCF_CTM_CTCRFn_PCT_50 (0x00100000)
-#define MCF_CTM_CTCRFn_PCT_25 (0x00200000)
-#define MCF_CTM_CTCRFn_PCT_12p5 (0x00300000)
-#define MCF_CTM_CTCRFn_PCT_6p25 (0x00400000)
-#define MCF_CTM_CTCRFn_PCT_OFF (0x00500000)
-#define MCF_CTM_CTCRFn_S_CLK_1 (0x00000000)
-#define MCF_CTM_CTCRFn_S_CLK_2 (0x00010000)
-#define MCF_CTM_CTCRFn_S_CLK_4 (0x00020000)
-#define MCF_CTM_CTCRFn_S_CLK_8 (0x00030000)
-#define MCF_CTM_CTCRFn_S_CLK_16 (0x00040000)
-#define MCF_CTM_CTCRFn_S_CLK_32 (0x00050000)
-#define MCF_CTM_CTCRFn_S_CLK_64 (0x00060000)
-#define MCF_CTM_CTCRFn_S_CLK_128 (0x00070000)
-#define MCF_CTM_CTCRFn_S_CLK_256 (0x00080000)
-
-/* Bit definitions and macros for MCF_CTM_CTCRVn */
-#define MCF_CTM_CTCRVn_CRV(x) (((x)&0x00FFFFFF)<<0)
-#define MCF_CTM_CTCRVn_PCT(x) (((x)&0x00000007)<<24)
-#define MCF_CTM_CTCRVn_M (0x08000000)
-#define MCF_CTM_CTCRVn_S(x) (((x)&0x0000000F)<<28)
-#define MCF_CTM_CTCRVn_S_CLK_1 (0x00000000)
-#define MCF_CTM_CTCRVn_S_CLK_2 (0x10000000)
-#define MCF_CTM_CTCRVn_S_CLK_4 (0x20000000)
-#define MCF_CTM_CTCRVn_S_CLK_8 (0x30000000)
-#define MCF_CTM_CTCRVn_S_CLK_16 (0x40000000)
-#define MCF_CTM_CTCRVn_S_CLK_32 (0x50000000)
-#define MCF_CTM_CTCRVn_S_CLK_64 (0x60000000)
-#define MCF_CTM_CTCRVn_S_CLK_128 (0x70000000)
-#define MCF_CTM_CTCRVn_S_CLK_256 (0x80000000)
-#define MCF_CTM_CTCRVn_PCT_100 (0x00000000)
-#define MCF_CTM_CTCRVn_PCT_50 (0x01000000)
-#define MCF_CTM_CTCRVn_PCT_25 (0x02000000)
-#define MCF_CTM_CTCRVn_PCT_12p5 (0x03000000)
-#define MCF_CTM_CTCRVn_PCT_6p25 (0x04000000)
-#define MCF_CTM_CTCRVn_PCT_OFF (0x05000000)
-
-#endif /* __MCF548X_CTM_H__ */
diff --git a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_dma.h b/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_dma.h
deleted file mode 100644
index 4229c36758..0000000000
--- a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_dma.h
+++ /dev/null
@@ -1,121 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Register and bit definitions for the MCF548X and MCF547x
- * Multichannel DMA
- */
-#ifndef __MCF548X_DMA_H__
-#define __MCF548X_DMA_H__
-
-/*
- * Multi-Channel DMA (DMA)
- */
-
-/* Register read/write macros */
-#define MCF_DMA_DIPR (*(vuint32_t*)(&__MBAR[0x008014]))
-#define MCF_DMA_DIMR (*(vuint32_t*)(&__MBAR[0x008018]))
-#define MCF_DMA_IMCR (*(vuint32_t*)(&__MBAR[0x00805C]))
-
-/* Bit definitions and macros for MCF_DMA_DIPR */
-#define MCF_DMA_DIPR_TASK0 (0x00000001)
-#define MCF_DMA_DIPR_TASK1 (0x00000002)
-#define MCF_DMA_DIPR_TASK2 (0x00000004)
-#define MCF_DMA_DIPR_TASK3 (0x00000008)
-#define MCF_DMA_DIPR_TASK4 (0x00000010)
-#define MCF_DMA_DIPR_TASK5 (0x00000020)
-#define MCF_DMA_DIPR_TASK6 (0x00000040)
-#define MCF_DMA_DIPR_TASK7 (0x00000080)
-#define MCF_DMA_DIPR_TASK8 (0x00000100)
-#define MCF_DMA_DIPR_TASK9 (0x00000200)
-#define MCF_DMA_DIPR_TASK10 (0x00000400)
-#define MCF_DMA_DIPR_TASK11 (0x00000800)
-#define MCF_DMA_DIPR_TASK12 (0x00001000)
-#define MCF_DMA_DIPR_TASK13 (0x00002000)
-#define MCF_DMA_DIPR_TASK14 (0x00004000)
-#define MCF_DMA_DIPR_TASK15 (0x00008000)
-
-/* Bit definitions and macros for MCF_DMA_DIMR */
-#define MCF_DMA_DIMR_TASK0 (0x00000001)
-#define MCF_DMA_DIMR_TASK1 (0x00000002)
-#define MCF_DMA_DIMR_TASK2 (0x00000004)
-#define MCF_DMA_DIMR_TASK3 (0x00000008)
-#define MCF_DMA_DIMR_TASK4 (0x00000010)
-#define MCF_DMA_DIMR_TASK5 (0x00000020)
-#define MCF_DMA_DIMR_TASK6 (0x00000040)
-#define MCF_DMA_DIMR_TASK7 (0x00000080)
-#define MCF_DMA_DIMR_TASK8 (0x00000100)
-#define MCF_DMA_DIMR_TASK9 (0x00000200)
-#define MCF_DMA_DIMR_TASK10 (0x00000400)
-#define MCF_DMA_DIMR_TASK11 (0x00000800)
-#define MCF_DMA_DIMR_TASK12 (0x00001000)
-#define MCF_DMA_DIMR_TASK13 (0x00002000)
-#define MCF_DMA_DIMR_TASK14 (0x00004000)
-#define MCF_DMA_DIMR_TASK15 (0x00008000)
-
-/* Bit definitions and macros for MCF_DMA_IMCR */
-#define MCF_DMA_IMCR_SRC16(x) (((x)&0x00000003)<<0)
-#define MCF_DMA_IMCR_SRC17(x) (((x)&0x00000003)<<2)
-#define MCF_DMA_IMCR_SRC18(x) (((x)&0x00000003)<<4)
-#define MCF_DMA_IMCR_SRC19(x) (((x)&0x00000003)<<6)
-#define MCF_DMA_IMCR_SRC20(x) (((x)&0x00000003)<<8)
-#define MCF_DMA_IMCR_SRC21(x) (((x)&0x00000003)<<10)
-#define MCF_DMA_IMCR_SRC22(x) (((x)&0x00000003)<<12)
-#define MCF_DMA_IMCR_SRC23(x) (((x)&0x00000003)<<14)
-#define MCF_DMA_IMCR_SRC24(x) (((x)&0x00000003)<<16)
-#define MCF_DMA_IMCR_SRC25(x) (((x)&0x00000003)<<18)
-#define MCF_DMA_IMCR_SRC26(x) (((x)&0x00000003)<<20)
-#define MCF_DMA_IMCR_SRC27(x) (((x)&0x00000003)<<22)
-#define MCF_DMA_IMCR_SRC28(x) (((x)&0x00000003)<<24)
-#define MCF_DMA_IMCR_SRC29(x) (((x)&0x00000003)<<26)
-#define MCF_DMA_IMCR_SRC30(x) (((x)&0x00000003)<<28)
-#define MCF_DMA_IMCR_SRC31(x) (((x)&0x00000003)<<30)
-#define MCF_DMA_IMCR_SRC16_FEC0RX (0x00000000)
-#define MCF_DMA_IMCR_SRC17_FEC0TX (0x00000000)
-#define MCF_DMA_IMCR_SRC18_FEC0RX (0x00000020)
-#define MCF_DMA_IMCR_SRC19_FEC0TX (0x00000080)
-#define MCF_DMA_IMCR_SRC20_FEC1RX (0x00000100)
-#define MCF_DMA_IMCR_SRC21_DREQ1 (0x00000000)
-#define MCF_DMA_IMCR_SRC21_FEC1TX (0x00000400)
-#define MCF_DMA_IMCR_SRC22_FEC0RX (0x00001000)
-#define MCF_DMA_IMCR_SRC23_FEC0TX (0x00004000)
-#define MCF_DMA_IMCR_SRC24_CTM0 (0x00010000)
-#define MCF_DMA_IMCR_SRC24_FEC1RX (0x00020000)
-#define MCF_DMA_IMCR_SRC25_CTM1 (0x00040000)
-#define MCF_DMA_IMCR_SRC25_FEC1TX (0x00080000)
-#define MCF_DMA_IMCR_SRC26_USBEP4 (0x00000000)
-#define MCF_DMA_IMCR_SRC26_CTM2 (0x00200000)
-#define MCF_DMA_IMCR_SRC27_USBEP5 (0x00000000)
-#define MCF_DMA_IMCR_SRC27_CTM3 (0x00800000)
-#define MCF_DMA_IMCR_SRC28_USBEP6 (0x00000000)
-#define MCF_DMA_IMCR_SRC28_CTM4 (0x01000000)
-#define MCF_DMA_IMCR_SRC28_DREQ1 (0x02000000)
-#define MCF_DMA_IMCR_SRC28_PSC2RX (0x03000000)
-#define MCF_DMA_IMCR_SRC29_DREQ1 (0x04000000)
-#define MCF_DMA_IMCR_SRC29_CTM5 (0x08000000)
-#define MCF_DMA_IMCR_SRC29_PSC2TX (0x0C000000)
-#define MCF_DMA_IMCR_SRC30_FEC1RX (0x00000000)
-#define MCF_DMA_IMCR_SRC30_CTM6 (0x10000000)
-#define MCF_DMA_IMCR_SRC30_PSC3RX (0x30000000)
-#define MCF_DMA_IMCR_SRC31_FEC1TX (0x00000000)
-#define MCF_DMA_IMCR_SRC31_CTM7 (0x80000000)
-#define MCF_DMA_IMCR_SRC31_PSC3TX (0xC0000000)
-
-#endif /* __MCF548X_DMA_H__ */
diff --git a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_dma_ereq.h b/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_dma_ereq.h
deleted file mode 100644
index 8eac58bfe0..0000000000
--- a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_dma_ereq.h
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Register and bit definitions for the MCF548X and MCF547x
- * Multi-Channel DMA External Requests (DMA_EREQ)
- */
-#ifndef __MCF548X_DMA_EREQ_H__
-#define __MCF548X_DMA_EREQ_H__
-
-/*
- * Multi-Channel DMA External Requests (DMA_EREQ)
- */
-
-/* Register read/write macros */
-#define MCF_DMA_EREQ_EREQBAR0 (*(vuint32_t*)(&__MBAR[0x000D00]))
-#define MCF_DMA_EREQ_EREQMASK0 (*(vuint32_t*)(&__MBAR[0x000D04]))
-#define MCF_DMA_EREQ_EREQCTRL0 (*(vuint32_t*)(&__MBAR[0x000D08]))
-#define MCF_DMA_EREQ_EREQBAR1 (*(vuint32_t*)(&__MBAR[0x000D10]))
-#define MCF_DMA_EREQ_EREQMASK1 (*(vuint32_t*)(&__MBAR[0x000D14]))
-#define MCF_DMA_EREQ_EREQCTRL1 (*(vuint32_t*)(&__MBAR[0x000D18]))
-#define MCF_DMA_EREQ_EREQBAR(x) (*(vuint32_t*)(&__MBAR[0x000D00+((x)*0x010)]))
-#define MCF_DMA_EREQ_EREQMASK(x) (*(vuint32_t*)(&__MBAR[0x000D04+((x)*0x010)]))
-#define MCF_DMA_EREQ_EREQCTRL(x) (*(vuint32_t*)(&__MBAR[0x000D08+((x)*0x010)]))
-
-/* Bit definitions and macros for MCF_DMA_EREQ_EREQCTRL */
-#define MCF_DMA_EREQ_EREQCTRL_EN (0x00000001)
-#define MCF_DMA_EREQ_EREQCTRL_SYNC (0x00000002)
-#define MCF_DMA_EREQ_EREQCTRL_DACKWID(x) (((x)&0x00000003)<<2)
-#define MCF_DMA_EREQ_EREQCTRL_BSEL(x) (((x)&0x00000003)<<4)
-#define MCF_DMA_EREQ_EREQCTRL_MD(x) (((x)&0x00000003)<<6)
-#define MCF_DMA_EREQ_EREQCTRL_MD_IDLE (0x00000000)
-#define MCF_DMA_EREQ_EREQCTRL_MD_LEVEL (0x00000040)
-#define MCF_DMA_EREQ_EREQCTRL_MD_EDGE (0x00000080)
-#define MCF_DMA_EREQ_EREQCTRL_MD_PIPED (0x000000C0)
-#define MCF_DMA_EREQ_EREQCTRL_BSEL_MEM_WRITE (0x00000000)
-#define MCF_DMA_EREQ_EREQCTRL_BSEL_MEM_READ (0x00000010)
-#define MCF_DMA_EREQ_EREQCTRL_BSEL_PERIPH_WRITE (0x00000020)
-#define MCF_DMA_EREQ_EREQCTRL_BSEL_PERIPH_READ (0x00000030)
-#define MCF_DMA_EREQ_EREQCTRL_DACKWID_ONE (0x00000000)
-#define MCF_DMA_EREQ_EREQCTRL_DACKWID_TWO (0x00000004)
-#define MCF_DMA_EREQ_EREQCTRL_DACKWID_THREE (0x00000008)
-#define MCF_DMA_EREQ_EREQCTRL_DACKWID_FOUR (0x0000000C)
-
-#endif /* __MCF548X_DMA_EREQ_H__ */
diff --git a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_dspi.h b/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_dspi.h
deleted file mode 100644
index 889e75bc1d..0000000000
--- a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_dspi.h
+++ /dev/null
@@ -1,155 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Register and bit definitions for the MCF548X and MCF547x
- * DMA Serial Peripheral Interface (DSPI)
- */
-#ifndef __MCF548X_DSPI_H__
-#define __MCF548X_DSPI_H__
-
-/*
- * DMA Serial Peripheral Interface (DSPI)
- */
-
-/* Register read/write macros */
-#define MCF_DSPI_DMCR (*(vuint32_t*)(&__MBAR[0x008A00]))
-#define MCF_DSPI_DTCR (*(vuint32_t*)(&__MBAR[0x008A08]))
-#define MCF_DSPI_DCTAR0 (*(vuint32_t*)(&__MBAR[0x008A0C]))
-#define MCF_DSPI_DCTAR1 (*(vuint32_t*)(&__MBAR[0x008A10]))
-#define MCF_DSPI_DCTAR2 (*(vuint32_t*)(&__MBAR[0x008A14]))
-#define MCF_DSPI_DCTAR3 (*(vuint32_t*)(&__MBAR[0x008A18]))
-#define MCF_DSPI_DCTAR4 (*(vuint32_t*)(&__MBAR[0x008A1C]))
-#define MCF_DSPI_DCTAR5 (*(vuint32_t*)(&__MBAR[0x008A20]))
-#define MCF_DSPI_DCTAR6 (*(vuint32_t*)(&__MBAR[0x008A24]))
-#define MCF_DSPI_DCTAR7 (*(vuint32_t*)(&__MBAR[0x008A28]))
-#define MCF_DSPI_DCTARn(x) (*(vuint32_t*)(&__MBAR[0x008A0C+((x)*0x004)]))
-#define MCF_DSPI_DSR (*(vuint32_t*)(&__MBAR[0x008A2C]))
-#define MCF_DSPI_DIRSR (*(vuint32_t*)(&__MBAR[0x008A30]))
-#define MCF_DSPI_DTFR (*(vuint32_t*)(&__MBAR[0x008A34]))
-#define MCF_DSPI_DRFR (*(vuint32_t*)(&__MBAR[0x008A38]))
-#define MCF_DSPI_DTFDR0 (*(vuint32_t*)(&__MBAR[0x008A3C]))
-#define MCF_DSPI_DTFDR1 (*(vuint32_t*)(&__MBAR[0x008A40]))
-#define MCF_DSPI_DTFDR2 (*(vuint32_t*)(&__MBAR[0x008A44]))
-#define MCF_DSPI_DTFDR3 (*(vuint32_t*)(&__MBAR[0x008A48]))
-#define MCF_DSPI_DTFDRn(x) (*(vuint32_t*)(&__MBAR[0x008A3C+((x)*0x004)]))
-#define MCF_DSPI_DRFDR0 (*(vuint32_t*)(&__MBAR[0x008A7C]))
-#define MCF_DSPI_DRFDR1 (*(vuint32_t*)(&__MBAR[0x008A80]))
-#define MCF_DSPI_DRFDR2 (*(vuint32_t*)(&__MBAR[0x008A84]))
-#define MCF_DSPI_DRFDR3 (*(vuint32_t*)(&__MBAR[0x008A88]))
-#define MCF_DSPI_DRFDRn(x) (*(vuint32_t*)(&__MBAR[0x008A7C+((x)*0x004)]))
-
-/* Bit definitions and macros for MCF_DSPI_DMCR */
-#define MCF_DSPI_DMCR_HALT (0x00000001)
-#define MCF_DSPI_DMCR_SMPL_PT(x) (((x)&0x00000003)<<8)
-#define MCF_DSPI_DMCR_CRXF (0x00000400)
-#define MCF_DSPI_DMCR_CTXF (0x00000800)
-#define MCF_DSPI_DMCR_DRXF (0x00001000)
-#define MCF_DSPI_DMCR_DTXF (0x00002000)
-#define MCF_DSPI_DMCR_CSIS0 (0x00010000)
-#define MCF_DSPI_DMCR_CSIS2 (0x00040000)
-#define MCF_DSPI_DMCR_CSIS3 (0x00080000)
-#define MCF_DSPI_DMCR_CSIS5 (0x00200000)
-#define MCF_DSPI_DMCR_ROOE (0x01000000)
-#define MCF_DSPI_DMCR_PCSSE (0x02000000)
-#define MCF_DSPI_DMCR_MTFE (0x04000000)
-#define MCF_DSPI_DMCR_FRZ (0x08000000)
-#define MCF_DSPI_DMCR_DCONF(x) (((x)&0x00000003)<<28)
-#define MCF_DSPI_DMCR_CSCK (0x40000000)
-#define MCF_DSPI_DMCR_MSTR (0x80000000)
-
-/* Bit definitions and macros for MCF_DSPI_DTCR */
-#define MCF_DSPI_DTCR_SPI_TCNT(x) (((x)&0x0000FFFF)<<16)
-
-/* Bit definitions and macros for MCF_DSPI_DCTARn */
-#define MCF_DSPI_DCTARn_BR(x) (((x)&0x0000000F)<<0)
-#define MCF_DSPI_DCTARn_DT(x) (((x)&0x0000000F)<<4)
-#define MCF_DSPI_DCTARn_ASC(x) (((x)&0x0000000F)<<8)
-#define MCF_DSPI_DCTARn_CSSCK(x) (((x)&0x0000000F)<<12)
-#define MCF_DSPI_DCTARn_PBR(x) (((x)&0x00000003)<<16)
-#define MCF_DSPI_DCTARn_PDT(x) (((x)&0x00000003)<<18)
-#define MCF_DSPI_DCTARn_PASC(x) (((x)&0x00000003)<<20)
-#define MCF_DSPI_DCTARn_PCSSCK(x) (((x)&0x00000003)<<22)
-#define MCF_DSPI_DCTARn_LSBFE (0x01000000)
-#define MCF_DSPI_DCTARn_CPHA (0x02000000)
-#define MCF_DSPI_DCTARn_CPOL (0x04000000)
-#define MCF_DSPI_DCTARn_TRSZ(x) (((x)&0x0000000F)<<27)
-#define MCF_DSPI_DCTARn_PCSSCK_1CLK (0x00000000)
-#define MCF_DSPI_DCTARn_PCSSCK_3CLK (0x00400000)
-#define MCF_DSPI_DCTARn_PCSSCK_5CLK (0x00800000)
-#define MCF_DSPI_DCTARn_PCSSCK_7CLK (0x00A00000)
-#define MCF_DSPI_DCTARn_PASC_1CLK (0x00000000)
-#define MCF_DSPI_DCTARn_PASC_3CLK (0x00100000)
-#define MCF_DSPI_DCTARn_PASC_5CLK (0x00200000)
-#define MCF_DSPI_DCTARn_PASC_7CLK (0x00300000)
-#define MCF_DSPI_DCTARn_PDT_1CLK (0x00000000)
-#define MCF_DSPI_DCTARn_PDT_3CLK (0x00040000)
-#define MCF_DSPI_DCTARn_PDT_5CLK (0x00080000)
-#define MCF_DSPI_DCTARn_PDT_7CLK (0x000A0000)
-#define MCF_DSPI_DCTARn_PBR_1CLK (0x00000000)
-#define MCF_DSPI_DCTARn_PBR_3CLK (0x00010000)
-#define MCF_DSPI_DCTARn_PBR_5CLK (0x00020000)
-#define MCF_DSPI_DCTARn_PBR_7CLK (0x00030000)
-
-/* Bit definitions and macros for MCF_DSPI_DSR */
-#define MCF_DSPI_DSR_RXPTR(x) (((x)&0x0000000F)<<0)
-#define MCF_DSPI_DSR_RXCTR(x) (((x)&0x0000000F)<<4)
-#define MCF_DSPI_DSR_TXPTR(x) (((x)&0x0000000F)<<8)
-#define MCF_DSPI_DSR_TXCTR(x) (((x)&0x0000000F)<<12)
-#define MCF_DSPI_DSR_RFDF (0x00020000)
-#define MCF_DSPI_DSR_RFOF (0x00080000)
-#define MCF_DSPI_DSR_TFFF (0x02000000)
-#define MCF_DSPI_DSR_TFUF (0x08000000)
-#define MCF_DSPI_DSR_EOQF (0x10000000)
-#define MCF_DSPI_DSR_TXRXS (0x40000000)
-#define MCF_DSPI_DSR_TCF (0x80000000)
-
-/* Bit definitions and macros for MCF_DSPI_DIRSR */
-#define MCF_DSPI_DIRSR_RFDFS (0x00010000)
-#define MCF_DSPI_DIRSR_RFDFE (0x00020000)
-#define MCF_DSPI_DIRSR_RFOFE (0x00080000)
-#define MCF_DSPI_DIRSR_TFFFS (0x01000000)
-#define MCF_DSPI_DIRSR_TFFFE (0x02000000)
-#define MCF_DSPI_DIRSR_TFUFE (0x08000000)
-#define MCF_DSPI_DIRSR_EOQFE (0x10000000)
-#define MCF_DSPI_DIRSR_TCFE (0x80000000)
-
-/* Bit definitions and macros for MCF_DSPI_DTFR */
-#define MCF_DSPI_DTFR_TXDATA(x) (((x)&0x0000FFFF)<<0)
-#define MCF_DSPI_DTFR_CS0 (0x00010000)
-#define MCF_DSPI_DTFR_CS2 (0x00040000)
-#define MCF_DSPI_DTFR_CS3 (0x00080000)
-#define MCF_DSPI_DTFR_CS5 (0x00200000)
-#define MCF_DSPI_DTFR_CTCNT (0x04000000)
-#define MCF_DSPI_DTFR_EOQ (0x08000000)
-#define MCF_DSPI_DTFR_CTAS(x) (((x)&0x00000007)<<28)
-#define MCF_DSPI_DTFR_CONT (0x80000000)
-
-/* Bit definitions and macros for MCF_DSPI_DRFR */
-#define MCF_DSPI_DRFR_RXDATA(x) (((x)&0x0000FFFF)<<0)
-
-/* Bit definitions and macros for MCF_DSPI_DTFDRn */
-#define MCF_DSPI_DTFDRn_TXDATA(x) (((x)&0x0000FFFF)<<0)
-#define MCF_DSPI_DTFDRn_TXCMD(x) (((x)&0x0000FFFF)<<16)
-
-/* Bit definitions and macros for MCF_DSPI_DRFDRn */
-#define MCF_DSPI_DRFDRn_RXDATA(x) (((x)&0x0000FFFF)<<0)
-
-#endif /* __MCF548X_DSPI_H__ */
diff --git a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_eport.h b/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_eport.h
deleted file mode 100644
index 94f724fa28..0000000000
--- a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_eport.h
+++ /dev/null
@@ -1,98 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Register and bit definitions for the MCF548X and MCF547x
- * Edge Port Module (EPORT)
- */
-#ifndef __MCF548X_EPORT_H__
-#define __MCF548X_EPORT_H__
-
-/*
- * Edge Port Module (EPORT)
- */
-
-/* Register read/write macros */
-#define MCF_EPORT_EPPAR (*(vuint16_t*)(&__MBAR[0x000F00]))
-#define MCF_EPORT_EPDDR (*(vuint8_t *)(&__MBAR[0x000F04]))
-#define MCF_EPORT_EPIER (*(vuint8_t *)(&__MBAR[0x000F05]))
-#define MCF_EPORT_EPDR (*(vuint8_t *)(&__MBAR[0x000F08]))
-#define MCF_EPORT_EPPDR (*(vuint8_t *)(&__MBAR[0x000F09]))
-#define MCF_EPORT_EPFR (*(vuint8_t *)(&__MBAR[0x000F0C]))
-
-/* Bit definitions and macros for MCF_EPORT_EPPAR */
-#define MCF_EPORT_EPPAR_EPPA1(x) (((x)&0x0003)<<2)
-#define MCF_EPORT_EPPAR_EPPA2(x) (((x)&0x0003)<<4)
-#define MCF_EPORT_EPPAR_EPPA3(x) (((x)&0x0003)<<6)
-#define MCF_EPORT_EPPAR_EPPA4(x) (((x)&0x0003)<<8)
-#define MCF_EPORT_EPPAR_EPPA5(x) (((x)&0x0003)<<10)
-#define MCF_EPORT_EPPAR_EPPA6(x) (((x)&0x0003)<<12)
-#define MCF_EPORT_EPPAR_EPPA7(x) (((x)&0x0003)<<14)
-#define MCF_EPORT_EPPAR_EPPAx_LEVEL (0)
-#define MCF_EPORT_EPPAR_EPPAx_RISING (1)
-#define MCF_EPORT_EPPAR_EPPAx_FALLING (2)
-#define MCF_EPORT_EPPAR_EPPAx_BOTH (3)
-
-/* Bit definitions and macros for MCF_EPORT_EPDDR */
-#define MCF_EPORT_EPDDR_EPDD1 (0x02)
-#define MCF_EPORT_EPDDR_EPDD2 (0x04)
-#define MCF_EPORT_EPDDR_EPDD3 (0x08)
-#define MCF_EPORT_EPDDR_EPDD4 (0x10)
-#define MCF_EPORT_EPDDR_EPDD5 (0x20)
-#define MCF_EPORT_EPDDR_EPDD6 (0x40)
-#define MCF_EPORT_EPDDR_EPDD7 (0x80)
-
-/* Bit definitions and macros for MCF_EPORT_EPIER */
-#define MCF_EPORT_EPIER_EPIE1 (0x02)
-#define MCF_EPORT_EPIER_EPIE2 (0x04)
-#define MCF_EPORT_EPIER_EPIE3 (0x08)
-#define MCF_EPORT_EPIER_EPIE4 (0x10)
-#define MCF_EPORT_EPIER_EPIE5 (0x20)
-#define MCF_EPORT_EPIER_EPIE6 (0x40)
-#define MCF_EPORT_EPIER_EPIE7 (0x80)
-
-/* Bit definitions and macros for MCF_EPORT_EPDR */
-#define MCF_EPORT_EPDR_EPD1 (0x02)
-#define MCF_EPORT_EPDR_EPD2 (0x04)
-#define MCF_EPORT_EPDR_EPD3 (0x08)
-#define MCF_EPORT_EPDR_EPD4 (0x10)
-#define MCF_EPORT_EPDR_EPD5 (0x20)
-#define MCF_EPORT_EPDR_EPD6 (0x40)
-#define MCF_EPORT_EPDR_EPD7 (0x80)
-
-/* Bit definitions and macros for MCF_EPORT_EPPDR */
-#define MCF_EPORT_EPPDR_EPPD1 (0x02)
-#define MCF_EPORT_EPPDR_EPPD2 (0x04)
-#define MCF_EPORT_EPPDR_EPPD3 (0x08)
-#define MCF_EPORT_EPPDR_EPPD4 (0x10)
-#define MCF_EPORT_EPPDR_EPPD5 (0x20)
-#define MCF_EPORT_EPPDR_EPPD6 (0x40)
-#define MCF_EPORT_EPPDR_EPPD7 (0x80)
-
-/* Bit definitions and macros for MCF_EPORT_EPFR */
-#define MCF_EPORT_EPFR_EPF1 (0x02)
-#define MCF_EPORT_EPFR_EPF2 (0x04)
-#define MCF_EPORT_EPFR_EPF3 (0x08)
-#define MCF_EPORT_EPFR_EPF4 (0x10)
-#define MCF_EPORT_EPFR_EPF5 (0x20)
-#define MCF_EPORT_EPFR_EPF6 (0x40)
-#define MCF_EPORT_EPFR_EPF7 (0x80)
-
-#endif /* __MCF548X_EPORT_H__ */
diff --git a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_fbcs.h b/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_fbcs.h
deleted file mode 100644
index 1e11944c46..0000000000
--- a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_fbcs.h
+++ /dev/null
@@ -1,97 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Register and bit definitions for the MCF548X and MCF547x
- * FlexBus Chip Selects (FBCS)
- */
-#ifndef __MCF548X_FBCS_H__
-#define __MCF548X_FBCS_H__
-
-/*
- * FlexBus Chip Selects (FBCS)
- */
-
-/* Register read/write macros */
-#define MCF_FBCS_CSAR0 (*(vuint32_t*)(&__MBAR[0x000500]))
-#define MCF_FBCS_CSMR0 (*(vuint32_t*)(&__MBAR[0x000504]))
-#define MCF_FBCS_CSCR0 (*(vuint32_t*)(&__MBAR[0x000508]))
-#define MCF_FBCS_CSAR1 (*(vuint32_t*)(&__MBAR[0x00050C]))
-#define MCF_FBCS_CSMR1 (*(vuint32_t*)(&__MBAR[0x000510]))
-#define MCF_FBCS_CSCR1 (*(vuint32_t*)(&__MBAR[0x000514]))
-#define MCF_FBCS_CSAR2 (*(vuint32_t*)(&__MBAR[0x000518]))
-#define MCF_FBCS_CSMR2 (*(vuint32_t*)(&__MBAR[0x00051C]))
-#define MCF_FBCS_CSCR2 (*(vuint32_t*)(&__MBAR[0x000520]))
-#define MCF_FBCS_CSAR3 (*(vuint32_t*)(&__MBAR[0x000524]))
-#define MCF_FBCS_CSMR3 (*(vuint32_t*)(&__MBAR[0x000528]))
-#define MCF_FBCS_CSCR3 (*(vuint32_t*)(&__MBAR[0x00052C]))
-#define MCF_FBCS_CSAR4 (*(vuint32_t*)(&__MBAR[0x000530]))
-#define MCF_FBCS_CSMR4 (*(vuint32_t*)(&__MBAR[0x000534]))
-#define MCF_FBCS_CSCR4 (*(vuint32_t*)(&__MBAR[0x000538]))
-#define MCF_FBCS_CSAR5 (*(vuint32_t*)(&__MBAR[0x00053C]))
-#define MCF_FBCS_CSMR5 (*(vuint32_t*)(&__MBAR[0x000540]))
-#define MCF_FBCS_CSCR5 (*(vuint32_t*)(&__MBAR[0x000544]))
-#define MCF_FBCS_CSAR(x) (*(vuint32_t*)(&__MBAR[0x000500+((x)*0x00C)]))
-#define MCF_FBCS_CSMR(x) (*(vuint32_t*)(&__MBAR[0x000504+((x)*0x00C)]))
-#define MCF_FBCS_CSCR(x) (*(vuint32_t*)(&__MBAR[0x000508+((x)*0x00C)]))
-
-/* Bit definitions and macros for MCF_FBCS_CSAR */
-#define MCF_FBCS_CSAR_BA(x) ((x)&0xFFFF0000)
-
-/* Bit definitions and macros for MCF_FBCS_CSMR */
-#define MCF_FBCS_CSMR_V (0x00000001)
-#define MCF_FBCS_CSMR_WP (0x00000100)
-#define MCF_FBCS_CSMR_BAM(x) (((x)&0x0000FFFF)<<16)
-#define MCF_FBCS_CSMR_BAM_4G (0xFFFF0000)
-#define MCF_FBCS_CSMR_BAM_2G (0x7FFF0000)
-#define MCF_FBCS_CSMR_BAM_1G (0x3FFF0000)
-#define MCF_FBCS_CSMR_BAM_1024M (0x3FFF0000)
-#define MCF_FBCS_CSMR_BAM_512M (0x1FFF0000)
-#define MCF_FBCS_CSMR_BAM_256M (0x0FFF0000)
-#define MCF_FBCS_CSMR_BAM_128M (0x07FF0000)
-#define MCF_FBCS_CSMR_BAM_64M (0x03FF0000)
-#define MCF_FBCS_CSMR_BAM_32M (0x01FF0000)
-#define MCF_FBCS_CSMR_BAM_16M (0x00FF0000)
-#define MCF_FBCS_CSMR_BAM_8M (0x007F0000)
-#define MCF_FBCS_CSMR_BAM_4M (0x003F0000)
-#define MCF_FBCS_CSMR_BAM_2M (0x001F0000)
-#define MCF_FBCS_CSMR_BAM_1M (0x000F0000)
-#define MCF_FBCS_CSMR_BAM_1024K (0x000F0000)
-#define MCF_FBCS_CSMR_BAM_512K (0x00070000)
-#define MCF_FBCS_CSMR_BAM_256K (0x00030000)
-#define MCF_FBCS_CSMR_BAM_128K (0x00010000)
-#define MCF_FBCS_CSMR_BAM_64K (0x00000000)
-
-/* Bit definitions and macros for MCF_FBCS_CSCR */
-#define MCF_FBCS_CSCR_BSTW (0x00000008)
-#define MCF_FBCS_CSCR_BSTR (0x00000010)
-#define MCF_FBCS_CSCR_PS(x) (((x)&0x00000003)<<6)
-#define MCF_FBCS_CSCR_AA (0x00000100)
-#define MCF_FBCS_CSCR_WS(x) (((x)&0x0000003F)<<10)
-#define MCF_FBCS_CSCR_WRAH(x) (((x)&0x00000003)<<16)
-#define MCF_FBCS_CSCR_RDAH(x) (((x)&0x00000003)<<18)
-#define MCF_FBCS_CSCR_ASET(x) (((x)&0x00000003)<<20)
-#define MCF_FBCS_CSCR_SWSEN (0x00800000)
-#define MCF_FBCS_CSCR_SWS(x) (((x)&0x0000003F)<<26)
-#define MCF_FBCS_CSCR_PS_8 (0x0040)
-#define MCF_FBCS_CSCR_PS_16 (0x0080)
-#define MCF_FBCS_CSCR_PS_32 (0x0000)
-
-#endif /* __MCF548X_FBCS_H__ */
diff --git a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_fec.h b/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_fec.h
deleted file mode 100644
index 738abd80a7..0000000000
--- a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_fec.h
+++ /dev/null
@@ -1,623 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Register and bit definitions for the MCF548X and MCF547x
- * Fast Ethernet Controller (FEC)
- */
-#ifndef __MCF548X_FEC_H__
-#define __MCF548X_FEC_H__
-
-/*
- * Fast Ethernet Controller (FEC)
- */
-
-/* Register read/write macros */
-#define MCF_FEC_EIR0 (*(vuint32_t*)(&__MBAR[0x009004]))
-#define MCF_FEC_EIMR0 (*(vuint32_t*)(&__MBAR[0x009008]))
-#define MCF_FEC_ECR0 (*(vuint32_t*)(&__MBAR[0x009024]))
-#define MCF_FEC_MMFR0 (*(vuint32_t*)(&__MBAR[0x009040]))
-#define MCF_FEC_MSCR0 (*(vuint32_t*)(&__MBAR[0x009044]))
-#define MCF_FEC_MIBC0 (*(vuint32_t*)(&__MBAR[0x009064]))
-#define MCF_FEC_RCR0 (*(vuint32_t*)(&__MBAR[0x009084]))
-#define MCF_FEC_R_HASH0 (*(vuint32_t*)(&__MBAR[0x009088]))
-#define MCF_FEC_TCR0 (*(vuint32_t*)(&__MBAR[0x0090C4]))
-#define MCF_FEC_PALR0 (*(vuint32_t*)(&__MBAR[0x0090E4]))
-#define MCF_FEC_PAUR0 (*(vuint32_t*)(&__MBAR[0x0090E8]))
-#define MCF_FEC_OPD0 (*(vuint32_t*)(&__MBAR[0x0090EC]))
-#define MCF_FEC_IAUR0 (*(vuint32_t*)(&__MBAR[0x009118]))
-#define MCF_FEC_IALR0 (*(vuint32_t*)(&__MBAR[0x00911C]))
-#define MCF_FEC_GAUR0 (*(vuint32_t*)(&__MBAR[0x009120]))
-#define MCF_FEC_GALR0 (*(vuint32_t*)(&__MBAR[0x009124]))
-#define MCF_FEC_FECTFWR0 (*(vuint32_t*)(&__MBAR[0x009144]))
-#define MCF_FEC_FECRFDR0 (*(vuint32_t*)(&__MBAR[0x009184]))
-#define MCF_FEC_FECRFSR0 (*(vuint32_t*)(&__MBAR[0x009188]))
-#define MCF_FEC_FECRFCR0 (*(vuint32_t*)(&__MBAR[0x00918C]))
-#define MCF_FEC_FECRLRFP0 (*(vuint32_t*)(&__MBAR[0x009190]))
-#define MCF_FEC_FECRLWFP0 (*(vuint32_t*)(&__MBAR[0x009194]))
-#define MCF_FEC_FECRFAR0 (*(vuint32_t*)(&__MBAR[0x009198]))
-#define MCF_FEC_FECRFRP0 (*(vuint32_t*)(&__MBAR[0x00919C]))
-#define MCF_FEC_FECRFWP0 (*(vuint32_t*)(&__MBAR[0x0091A0]))
-#define MCF_FEC_FECTFDR0 (*(vuint32_t*)(&__MBAR[0x0091A4]))
-#define MCF_FEC_FECTFSR0 (*(vuint32_t*)(&__MBAR[0x0091A8]))
-#define MCF_FEC_FECTFCR0 (*(vuint32_t*)(&__MBAR[0x0091AC]))
-#define MCF_FEC_FECTLRFP0 (*(vuint32_t*)(&__MBAR[0x0091B0]))
-#define MCF_FEC_FECTLWFP0 (*(vuint32_t*)(&__MBAR[0x0091B4]))
-#define MCF_FEC_FECTFAR0 (*(vuint32_t*)(&__MBAR[0x0091B8]))
-#define MCF_FEC_FECTFRP0 (*(vuint32_t*)(&__MBAR[0x0091BC]))
-#define MCF_FEC_FECTFWP0 (*(vuint32_t*)(&__MBAR[0x0091C0]))
-#define MCF_FEC_FRST0 (*(vuint32_t*)(&__MBAR[0x0091C4]))
-#define MCF_FEC_CTCWR0 (*(vuint32_t*)(&__MBAR[0x0091C8]))
-#define MCF_FEC_RMON_T_DROP0 (*(vuint32_t*)(&__MBAR[0x009200]))
-#define MCF_FEC_RMON_T_PACKETS0 (*(vuint32_t*)(&__MBAR[0x009204]))
-#define MCF_FEC_RMON_T_BC_PKT0 (*(vuint32_t*)(&__MBAR[0x009208]))
-#define MCF_FEC_RMON_T_MC_PKT0 (*(vuint32_t*)(&__MBAR[0x00920C]))
-#define MCF_FEC_RMON_T_CRC_ALIGN0 (*(vuint32_t*)(&__MBAR[0x009210]))
-#define MCF_FEC_RMON_T_UNDERSIZE0 (*(vuint32_t*)(&__MBAR[0x009214]))
-#define MCF_FEC_RMON_T_OVERSIZE0 (*(vuint32_t*)(&__MBAR[0x009218]))
-#define MCF_FEC_RMON_T_FRAG0 (*(vuint32_t*)(&__MBAR[0x00921C]))
-#define MCF_FEC_RMON_T_JAB0 (*(vuint32_t*)(&__MBAR[0x009220]))
-#define MCF_FEC_RMON_T_COL0 (*(vuint32_t*)(&__MBAR[0x009224]))
-#define MCF_FEC_RMON_T_P640 (*(vuint32_t*)(&__MBAR[0x009228]))
-#define MCF_FEC_RMON_T_P65TO1270 (*(vuint32_t*)(&__MBAR[0x00922C]))
-#define MCF_FEC_RMON_T_P128TO2550 (*(vuint32_t*)(&__MBAR[0x009230]))
-#define MCF_FEC_RMON_T_P256TO5110 (*(vuint32_t*)(&__MBAR[0x009234]))
-#define MCF_FEC_RMON_T_P512TO10230 (*(vuint32_t*)(&__MBAR[0x009238]))
-#define MCF_FEC_RMON_T_P1024TO20470 (*(vuint32_t*)(&__MBAR[0x00923C]))
-#define MCF_FEC_RMON_T_P_GTE20480 (*(vuint32_t*)(&__MBAR[0x009240]))
-#define MCF_FEC_RMON_T_OCTETS0 (*(vuint32_t*)(&__MBAR[0x009244]))
-#define MCF_FEC_IEEE_T_DROP0 (*(vuint32_t*)(&__MBAR[0x009248]))
-#define MCF_FEC_IEEE_T_FRAME_OK0 (*(vuint32_t*)(&__MBAR[0x00924C]))
-#define MCF_FEC_IEEE_T_1COL0 (*(vuint32_t*)(&__MBAR[0x009250]))
-#define MCF_FEC_IEEE_T_MCOL0 (*(vuint32_t*)(&__MBAR[0x009254]))
-#define MCF_FEC_IEEE_T_DEF0 (*(vuint32_t*)(&__MBAR[0x009258]))
-#define MCF_FEC_IEEE_T_LCOL0 (*(vuint32_t*)(&__MBAR[0x00925C]))
-#define MCF_FEC_IEEE_T_EXCOL0 (*(vuint32_t*)(&__MBAR[0x009260]))
-#define MCF_FEC_IEEE_T_MACERR0 (*(vuint32_t*)(&__MBAR[0x009264]))
-#define MCF_FEC_IEEE_T_CSERR0 (*(vuint32_t*)(&__MBAR[0x009268]))
-#define MCF_FEC_IEEE_T_SQE0 (*(vuint32_t*)(&__MBAR[0x00926C]))
-#define MCF_FEC_IEEE_T_FDXFC0 (*(vuint32_t*)(&__MBAR[0x009270]))
-#define MCF_FEC_IEEE_T_OCTETS_OK0 (*(vuint32_t*)(&__MBAR[0x009274]))
-#define MCF_FEC_RMON_R_DROP0 (*(vuint32_t*)(&__MBAR[0x009280]))
-#define MCF_FEC_RMON_R_PACKETS0 (*(vuint32_t*)(&__MBAR[0x009284]))
-#define MCF_FEC_RMON_R_BC_PKT0 (*(vuint32_t*)(&__MBAR[0x009288]))
-#define MCF_FEC_RMON_R_MC_PKT0 (*(vuint32_t*)(&__MBAR[0x00928C]))
-#define MCF_FEC_RMON_R_CRC_ALIGN0 (*(vuint32_t*)(&__MBAR[0x009290]))
-#define MCF_FEC_RMON_R_UNDERSIZE0 (*(vuint32_t*)(&__MBAR[0x009294]))
-#define MCF_FEC_RMON_R_OVERSIZE0 (*(vuint32_t*)(&__MBAR[0x009298]))
-#define MCF_FEC_RMON_R_FRAG0 (*(vuint32_t*)(&__MBAR[0x00929C]))
-#define MCF_FEC_RMON_R_JAB0 (*(vuint32_t*)(&__MBAR[0x0092A0]))
-#define MCF_FEC_RMON_R_RESVD_00 (*(vuint32_t*)(&__MBAR[0x0092A4]))
-#define MCF_FEC_RMON_R_P640 (*(vuint32_t*)(&__MBAR[0x0092A8]))
-#define MCF_FEC_RMON_R_P65TO1270 (*(vuint32_t*)(&__MBAR[0x0092AC]))
-#define MCF_FEC_RMON_R_P128TO2550 (*(vuint32_t*)(&__MBAR[0x0092B0]))
-#define MCF_FEC_RMON_R_P256TO5110 (*(vuint32_t*)(&__MBAR[0x0092B4]))
-#define MCF_FEC_RMON_R_512TO10230 (*(vuint32_t*)(&__MBAR[0x0092B8]))
-#define MCF_FEC_RMON_R_1024TO20470 (*(vuint32_t*)(&__MBAR[0x0092BC]))
-#define MCF_FEC_RMON_R_P_GTE20480 (*(vuint32_t*)(&__MBAR[0x0092C0]))
-#define MCF_FEC_RMON_R_OCTETS0 (*(vuint32_t*)(&__MBAR[0x0092C4]))
-#define MCF_FEC_IEEE_R_DROP0 (*(vuint32_t*)(&__MBAR[0x0092C8]))
-#define MCF_FEC_IEEE_R_FRAME_OK0 (*(vuint32_t*)(&__MBAR[0x0092CC]))
-#define MCF_FEC_IEEE_R_CRC0 (*(vuint32_t*)(&__MBAR[0x0092D0]))
-#define MCF_FEC_IEEE_R_ALIGN0 (*(vuint32_t*)(&__MBAR[0x0092D4]))
-#define MCF_FEC_IEEE_R_MACERR0 (*(vuint32_t*)(&__MBAR[0x0092D8]))
-#define MCF_FEC_IEEE_R_FDXFC0 (*(vuint32_t*)(&__MBAR[0x0092DC]))
-#define MCF_FEC_IEEE_R_OCTETS_OK0 (*(vuint32_t*)(&__MBAR[0x0092E0]))
-#define MCF_FEC_EIR1 (*(vuint32_t*)(&__MBAR[0x009804]))
-#define MCF_FEC_EIMR1 (*(vuint32_t*)(&__MBAR[0x009808]))
-#define MCF_FEC_ECR1 (*(vuint32_t*)(&__MBAR[0x009824]))
-#define MCF_FEC_MMFR1 (*(vuint32_t*)(&__MBAR[0x009840]))
-#define MCF_FEC_MSCR1 (*(vuint32_t*)(&__MBAR[0x009844]))
-#define MCF_FEC_MIBC1 (*(vuint32_t*)(&__MBAR[0x009864]))
-#define MCF_FEC_RCR1 (*(vuint32_t*)(&__MBAR[0x009884]))
-#define MCF_FEC_R_HASH1 (*(vuint32_t*)(&__MBAR[0x009888]))
-#define MCF_FEC_TCR1 (*(vuint32_t*)(&__MBAR[0x0098C4]))
-#define MCF_FEC_PALR1 (*(vuint32_t*)(&__MBAR[0x0098E4]))
-#define MCF_FEC_PAUR1 (*(vuint32_t*)(&__MBAR[0x0098E8]))
-#define MCF_FEC_OPD1 (*(vuint32_t*)(&__MBAR[0x0098EC]))
-#define MCF_FEC_IAUR1 (*(vuint32_t*)(&__MBAR[0x009918]))
-#define MCF_FEC_IALR1 (*(vuint32_t*)(&__MBAR[0x00991C]))
-#define MCF_FEC_GAUR1 (*(vuint32_t*)(&__MBAR[0x009920]))
-#define MCF_FEC_GALR1 (*(vuint32_t*)(&__MBAR[0x009924]))
-#define MCF_FEC_FECTFWR1 (*(vuint32_t*)(&__MBAR[0x009944]))
-#define MCF_FEC_FECRFDR1 (*(vuint32_t*)(&__MBAR[0x009984]))
-#define MCF_FEC_FECRFSR1 (*(vuint32_t*)(&__MBAR[0x009988]))
-#define MCF_FEC_FECRFCR1 (*(vuint32_t*)(&__MBAR[0x00998C]))
-#define MCF_FEC_FECRLRFP1 (*(vuint32_t*)(&__MBAR[0x009990]))
-#define MCF_FEC_FECRLWFP1 (*(vuint32_t*)(&__MBAR[0x009994]))
-#define MCF_FEC_FECRFAR1 (*(vuint32_t*)(&__MBAR[0x009998]))
-#define MCF_FEC_FECRFRP1 (*(vuint32_t*)(&__MBAR[0x00999C]))
-#define MCF_FEC_FECRFWP1 (*(vuint32_t*)(&__MBAR[0x0099A0]))
-#define MCF_FEC_FECTFDR1 (*(vuint32_t*)(&__MBAR[0x0099A4]))
-#define MCF_FEC_FECTFSR1 (*(vuint32_t*)(&__MBAR[0x0099A8]))
-#define MCF_FEC_FECTFCR1 (*(vuint32_t*)(&__MBAR[0x0099AC]))
-#define MCF_FEC_FECTLRFP1 (*(vuint32_t*)(&__MBAR[0x0099B0]))
-#define MCF_FEC_FECTLWFP1 (*(vuint32_t*)(&__MBAR[0x0099B4]))
-#define MCF_FEC_FECTFAR1 (*(vuint32_t*)(&__MBAR[0x0099B8]))
-#define MCF_FEC_FECTFRP1 (*(vuint32_t*)(&__MBAR[0x0099BC]))
-#define MCF_FEC_FECTFWP1 (*(vuint32_t*)(&__MBAR[0x0099C0]))
-#define MCF_FEC_FRST1 (*(vuint32_t*)(&__MBAR[0x0099C4]))
-#define MCF_FEC_CTCWR1 (*(vuint32_t*)(&__MBAR[0x0099C8]))
-#define MCF_FEC_RMON_T_DROP1 (*(vuint32_t*)(&__MBAR[0x009A00]))
-#define MCF_FEC_RMON_T_PACKETS1 (*(vuint32_t*)(&__MBAR[0x009A04]))
-#define MCF_FEC_RMON_T_BC_PKT1 (*(vuint32_t*)(&__MBAR[0x009A08]))
-#define MCF_FEC_RMON_T_MC_PKT1 (*(vuint32_t*)(&__MBAR[0x009A0C]))
-#define MCF_FEC_RMON_T_CRC_ALIGN1 (*(vuint32_t*)(&__MBAR[0x009A10]))
-#define MCF_FEC_RMON_T_UNDERSIZE1 (*(vuint32_t*)(&__MBAR[0x009A14]))
-#define MCF_FEC_RMON_T_OVERSIZE1 (*(vuint32_t*)(&__MBAR[0x009A18]))
-#define MCF_FEC_RMON_T_FRAG1 (*(vuint32_t*)(&__MBAR[0x009A1C]))
-#define MCF_FEC_RMON_T_JAB1 (*(vuint32_t*)(&__MBAR[0x009A20]))
-#define MCF_FEC_RMON_T_COL1 (*(vuint32_t*)(&__MBAR[0x009A24]))
-#define MCF_FEC_RMON_T_P641 (*(vuint32_t*)(&__MBAR[0x009A28]))
-#define MCF_FEC_RMON_T_P65TO1271 (*(vuint32_t*)(&__MBAR[0x009A2C]))
-#define MCF_FEC_RMON_T_P128TO2551 (*(vuint32_t*)(&__MBAR[0x009A30]))
-#define MCF_FEC_RMON_T_P256TO5111 (*(vuint32_t*)(&__MBAR[0x009A34]))
-#define MCF_FEC_RMON_T_P512TO10231 (*(vuint32_t*)(&__MBAR[0x009A38]))
-#define MCF_FEC_RMON_T_P1024TO20471 (*(vuint32_t*)(&__MBAR[0x009A3C]))
-#define MCF_FEC_RMON_T_P_GTE20481 (*(vuint32_t*)(&__MBAR[0x009A40]))
-#define MCF_FEC_RMON_T_OCTETS1 (*(vuint32_t*)(&__MBAR[0x009A44]))
-#define MCF_FEC_IEEE_T_DROP1 (*(vuint32_t*)(&__MBAR[0x009A48]))
-#define MCF_FEC_IEEE_T_FRAME_OK1 (*(vuint32_t*)(&__MBAR[0x009A4C]))
-#define MCF_FEC_IEEE_T_1COL1 (*(vuint32_t*)(&__MBAR[0x009A50]))
-#define MCF_FEC_IEEE_T_MCOL1 (*(vuint32_t*)(&__MBAR[0x009A54]))
-#define MCF_FEC_IEEE_T_DEF1 (*(vuint32_t*)(&__MBAR[0x009A58]))
-#define MCF_FEC_IEEE_T_LCOL1 (*(vuint32_t*)(&__MBAR[0x009A5C]))
-#define MCF_FEC_IEEE_T_EXCOL1 (*(vuint32_t*)(&__MBAR[0x009A60]))
-#define MCF_FEC_IEEE_T_MACERR1 (*(vuint32_t*)(&__MBAR[0x009A64]))
-#define MCF_FEC_IEEE_T_CSERR1 (*(vuint32_t*)(&__MBAR[0x009A68]))
-#define MCF_FEC_IEEE_T_SQE1 (*(vuint32_t*)(&__MBAR[0x009A6C]))
-#define MCF_FEC_IEEE_T_FDXFC1 (*(vuint32_t*)(&__MBAR[0x009A70]))
-#define MCF_FEC_IEEE_T_OCTETS_OK1 (*(vuint32_t*)(&__MBAR[0x009A74]))
-#define MCF_FEC_RMON_R_DROP1 (*(vuint32_t*)(&__MBAR[0x009A80]))
-#define MCF_FEC_RMON_R_PACKETS1 (*(vuint32_t*)(&__MBAR[0x009A84]))
-#define MCF_FEC_RMON_R_BC_PKT1 (*(vuint32_t*)(&__MBAR[0x009A88]))
-#define MCF_FEC_RMON_R_MC_PKT1 (*(vuint32_t*)(&__MBAR[0x009A8C]))
-#define MCF_FEC_RMON_R_CRC_ALIGN1 (*(vuint32_t*)(&__MBAR[0x009A90]))
-#define MCF_FEC_RMON_R_UNDERSIZE1 (*(vuint32_t*)(&__MBAR[0x009A94]))
-#define MCF_FEC_RMON_R_OVERSIZE1 (*(vuint32_t*)(&__MBAR[0x009A98]))
-#define MCF_FEC_RMON_R_FRAG1 (*(vuint32_t*)(&__MBAR[0x009A9C]))
-#define MCF_FEC_RMON_R_JAB1 (*(vuint32_t*)(&__MBAR[0x009AA0]))
-#define MCF_FEC_RMON_R_RESVD_01 (*(vuint32_t*)(&__MBAR[0x009AA4]))
-#define MCF_FEC_RMON_R_P641 (*(vuint32_t*)(&__MBAR[0x009AA8]))
-#define MCF_FEC_RMON_R_P65TO1271 (*(vuint32_t*)(&__MBAR[0x009AAC]))
-#define MCF_FEC_RMON_R_P128TO2551 (*(vuint32_t*)(&__MBAR[0x009AB0]))
-#define MCF_FEC_RMON_R_P256TO5111 (*(vuint32_t*)(&__MBAR[0x009AB4]))
-#define MCF_FEC_RMON_R_512TO10231 (*(vuint32_t*)(&__MBAR[0x009AB8]))
-#define MCF_FEC_RMON_R_1024TO20471 (*(vuint32_t*)(&__MBAR[0x009ABC]))
-#define MCF_FEC_RMON_R_P_GTE20481 (*(vuint32_t*)(&__MBAR[0x009AC0]))
-#define MCF_FEC_RMON_R_OCTETS1 (*(vuint32_t*)(&__MBAR[0x009AC4]))
-#define MCF_FEC_IEEE_R_DROP1 (*(vuint32_t*)(&__MBAR[0x009AC8]))
-#define MCF_FEC_IEEE_R_FRAME_OK1 (*(vuint32_t*)(&__MBAR[0x009ACC]))
-#define MCF_FEC_IEEE_R_CRC1 (*(vuint32_t*)(&__MBAR[0x009AD0]))
-#define MCF_FEC_IEEE_R_ALIGN1 (*(vuint32_t*)(&__MBAR[0x009AD4]))
-#define MCF_FEC_IEEE_R_MACERR1 (*(vuint32_t*)(&__MBAR[0x009AD8]))
-#define MCF_FEC_IEEE_R_FDXFC1 (*(vuint32_t*)(&__MBAR[0x009ADC]))
-#define MCF_FEC_IEEE_R_OCTETS_OK1 (*(vuint32_t*)(&__MBAR[0x009AE0]))
-#define MCF_FEC_EIR(x) (*(vuint32_t*)(&__MBAR[0x009004+((x)*0x800)]))
-#define MCF_FEC_EIMR(x) (*(vuint32_t*)(&__MBAR[0x009008+((x)*0x800)]))
-#define MCF_FEC_ECR(x) (*(vuint32_t*)(&__MBAR[0x009024+((x)*0x800)]))
-#define MCF_FEC_MMFR(x) (*(vuint32_t*)(&__MBAR[0x009040+((x)*0x800)]))
-#define MCF_FEC_MSCR(x) (*(vuint32_t*)(&__MBAR[0x009044+((x)*0x800)]))
-#define MCF_FEC_MIBC(x) (*(vuint32_t*)(&__MBAR[0x009064+((x)*0x800)]))
-#define MCF_FEC_RCR(x) (*(vuint32_t*)(&__MBAR[0x009084+((x)*0x800)]))
-#define MCF_FEC_R_HASH(x) (*(vuint32_t*)(&__MBAR[0x009088+((x)*0x800)]))
-#define MCF_FEC_TCR(x) (*(vuint32_t*)(&__MBAR[0x0090C4+((x)*0x800)]))
-#define MCF_FEC_PALR(x) (*(vuint32_t*)(&__MBAR[0x0090E4+((x)*0x800)]))
-#define MCF_FEC_PAUR(x) (*(vuint32_t*)(&__MBAR[0x0090E8+((x)*0x800)]))
-#define MCF_FEC_OPD(x) (*(vuint32_t*)(&__MBAR[0x0090EC+((x)*0x800)]))
-#define MCF_FEC_IAUR(x) (*(vuint32_t*)(&__MBAR[0x009118+((x)*0x800)]))
-#define MCF_FEC_IALR(x) (*(vuint32_t*)(&__MBAR[0x00911C+((x)*0x800)]))
-#define MCF_FEC_GAUR(x) (*(vuint32_t*)(&__MBAR[0x009120+((x)*0x800)]))
-#define MCF_FEC_GALR(x) (*(vuint32_t*)(&__MBAR[0x009124+((x)*0x800)]))
-#define MCF_FEC_FECTFWR(x) (*(vuint32_t*)(&__MBAR[0x009144+((x)*0x800)]))
-#define MCF_FEC_FECRFDR(x) (*(vuint32_t*)(&__MBAR[0x009184+((x)*0x800)]))
-#define MCF_FEC_FECRFSR(x) (*(vuint32_t*)(&__MBAR[0x009188+((x)*0x800)]))
-#define MCF_FEC_FECRFCR(x) (*(vuint32_t*)(&__MBAR[0x00918C+((x)*0x800)]))
-#define MCF_FEC_FECRLRFP(x) (*(vuint32_t*)(&__MBAR[0x009190+((x)*0x800)]))
-#define MCF_FEC_FECRLWFP(x) (*(vuint32_t*)(&__MBAR[0x009194+((x)*0x800)]))
-#define MCF_FEC_FECRFAR(x) (*(vuint32_t*)(&__MBAR[0x009198+((x)*0x800)]))
-#define MCF_FEC_FECRFRP(x) (*(vuint32_t*)(&__MBAR[0x00919C+((x)*0x800)]))
-#define MCF_FEC_FECRFWP(x) (*(vuint32_t*)(&__MBAR[0x0091A0+((x)*0x800)]))
-#define MCF_FEC_FECTFDR(x) (*(vuint32_t*)(&__MBAR[0x0091A4+((x)*0x800)]))
-#define MCF_FEC_FECTFSR(x) (*(vuint32_t*)(&__MBAR[0x0091A8+((x)*0x800)]))
-#define MCF_FEC_FECTFCR(x) (*(vuint32_t*)(&__MBAR[0x0091AC+((x)*0x800)]))
-#define MCF_FEC_FECTLRFP(x) (*(vuint32_t*)(&__MBAR[0x0091B0+((x)*0x800)]))
-#define MCF_FEC_FECTLWFP(x) (*(vuint32_t*)(&__MBAR[0x0091B4+((x)*0x800)]))
-#define MCF_FEC_FECTFAR(x) (*(vuint32_t*)(&__MBAR[0x0091B8+((x)*0x800)]))
-#define MCF_FEC_FECTFRP(x) (*(vuint32_t*)(&__MBAR[0x0091BC+((x)*0x800)]))
-#define MCF_FEC_FECTFWP(x) (*(vuint32_t*)(&__MBAR[0x0091C0+((x)*0x800)]))
-#define MCF_FEC_FRST(x) (*(vuint32_t*)(&__MBAR[0x0091C4+((x)*0x800)]))
-#define MCF_FEC_CTCWR(x) (*(vuint32_t*)(&__MBAR[0x0091C8+((x)*0x800)]))
-#define MCF_FEC_RMON_T_DROP(x) (*(vuint32_t*)(&__MBAR[0x009200+((x)*0x800)]))
-#define MCF_FEC_RMON_T_PACKETS(x) (*(vuint32_t*)(&__MBAR[0x009204+((x)*0x800)]))
-#define MCF_FEC_RMON_T_BC_PKT(x) (*(vuint32_t*)(&__MBAR[0x009208+((x)*0x800)]))
-#define MCF_FEC_RMON_T_MC_PKT(x) (*(vuint32_t*)(&__MBAR[0x00920C+((x)*0x800)]))
-#define MCF_FEC_RMON_T_CRC_ALIGN(x) (*(vuint32_t*)(&__MBAR[0x009210+((x)*0x800)]))
-#define MCF_FEC_RMON_T_UNDERSIZE(x) (*(vuint32_t*)(&__MBAR[0x009214+((x)*0x800)]))
-#define MCF_FEC_RMON_T_OVERSIZE(x) (*(vuint32_t*)(&__MBAR[0x009218+((x)*0x800)]))
-#define MCF_FEC_RMON_T_FRAG(x) (*(vuint32_t*)(&__MBAR[0x00921C+((x)*0x800)]))
-#define MCF_FEC_RMON_T_JAB(x) (*(vuint32_t*)(&__MBAR[0x009220+((x)*0x800)]))
-#define MCF_FEC_RMON_T_COL(x) (*(vuint32_t*)(&__MBAR[0x009224+((x)*0x800)]))
-#define MCF_FEC_RMON_T_P64(x) (*(vuint32_t*)(&__MBAR[0x009228+((x)*0x800)]))
-#define MCF_FEC_RMON_T_P65TO127(x) (*(vuint32_t*)(&__MBAR[0x00922C+((x)*0x800)]))
-#define MCF_FEC_RMON_T_P128TO255(x) (*(vuint32_t*)(&__MBAR[0x009230+((x)*0x800)]))
-#define MCF_FEC_RMON_T_P256TO511(x) (*(vuint32_t*)(&__MBAR[0x009234+((x)*0x800)]))
-#define MCF_FEC_RMON_T_P512TO1023(x) (*(vuint32_t*)(&__MBAR[0x009238+((x)*0x800)]))
-#define MCF_FEC_RMON_T_P1024TO2047(x) (*(vuint32_t*)(&__MBAR[0x00923C+((x)*0x800)]))
-#define MCF_FEC_RMON_T_P_GTE2048(x) (*(vuint32_t*)(&__MBAR[0x009240+((x)*0x800)]))
-#define MCF_FEC_RMON_T_OCTETS(x) (*(vuint32_t*)(&__MBAR[0x009244+((x)*0x800)]))
-#define MCF_FEC_IEEE_T_DROP(x) (*(vuint32_t*)(&__MBAR[0x009248+((x)*0x800)]))
-#define MCF_FEC_IEEE_T_FRAME_OK(x) (*(vuint32_t*)(&__MBAR[0x00924C+((x)*0x800)]))
-#define MCF_FEC_IEEE_T_1COL(x) (*(vuint32_t*)(&__MBAR[0x009250+((x)*0x800)]))
-#define MCF_FEC_IEEE_T_MCOL(x) (*(vuint32_t*)(&__MBAR[0x009254+((x)*0x800)]))
-#define MCF_FEC_IEEE_T_DEF(x) (*(vuint32_t*)(&__MBAR[0x009258+((x)*0x800)]))
-#define MCF_FEC_IEEE_T_LCOL(x) (*(vuint32_t*)(&__MBAR[0x00925C+((x)*0x800)]))
-#define MCF_FEC_IEEE_T_EXCOL(x) (*(vuint32_t*)(&__MBAR[0x009260+((x)*0x800)]))
-#define MCF_FEC_IEEE_T_MACERR(x) (*(vuint32_t*)(&__MBAR[0x009264+((x)*0x800)]))
-#define MCF_FEC_IEEE_T_CSERR(x) (*(vuint32_t*)(&__MBAR[0x009268+((x)*0x800)]))
-#define MCF_FEC_IEEE_T_SQE(x) (*(vuint32_t*)(&__MBAR[0x00926C+((x)*0x800)]))
-#define MCF_FEC_IEEE_T_FDXFC(x) (*(vuint32_t*)(&__MBAR[0x009270+((x)*0x800)]))
-#define MCF_FEC_IEEE_T_OCTETS_OK(x) (*(vuint32_t*)(&__MBAR[0x009274+((x)*0x800)]))
-#define MCF_FEC_RMON_R_DROP(x) (*(vuint32_t*)(&__MBAR[0x009280+((x)*0x800)]))
-#define MCF_FEC_RMON_R_PACKETS(x) (*(vuint32_t*)(&__MBAR[0x009284+((x)*0x800)]))
-#define MCF_FEC_RMON_R_BC_PKT(x) (*(vuint32_t*)(&__MBAR[0x009288+((x)*0x800)]))
-#define MCF_FEC_RMON_R_MC_PKT(x) (*(vuint32_t*)(&__MBAR[0x00928C+((x)*0x800)]))
-#define MCF_FEC_RMON_R_CRC_ALIGN(x) (*(vuint32_t*)(&__MBAR[0x009290+((x)*0x800)]))
-#define MCF_FEC_RMON_R_UNDERSIZE(x) (*(vuint32_t*)(&__MBAR[0x009294+((x)*0x800)]))
-#define MCF_FEC_RMON_R_OVERSIZE(x) (*(vuint32_t*)(&__MBAR[0x009298+((x)*0x800)]))
-#define MCF_FEC_RMON_R_FRAG(x) (*(vuint32_t*)(&__MBAR[0x00929C+((x)*0x800)]))
-#define MCF_FEC_RMON_R_JAB(x) (*(vuint32_t*)(&__MBAR[0x0092A0+((x)*0x800)]))
-#define MCF_FEC_RMON_R_RESVD_0(x) (*(vuint32_t*)(&__MBAR[0x0092A4+((x)*0x800)]))
-#define MCF_FEC_RMON_R_P64(x) (*(vuint32_t*)(&__MBAR[0x0092A8+((x)*0x800)]))
-#define MCF_FEC_RMON_R_P65TO127(x) (*(vuint32_t*)(&__MBAR[0x0092AC+((x)*0x800)]))
-#define MCF_FEC_RMON_R_P128TO255(x) (*(vuint32_t*)(&__MBAR[0x0092B0+((x)*0x800)]))
-#define MCF_FEC_RMON_R_P256TO511(x) (*(vuint32_t*)(&__MBAR[0x0092B4+((x)*0x800)]))
-#define MCF_FEC_RMON_R_512TO1023(x) (*(vuint32_t*)(&__MBAR[0x0092B8+((x)*0x800)]))
-#define MCF_FEC_RMON_R_1024TO2047(x) (*(vuint32_t*)(&__MBAR[0x0092BC+((x)*0x800)]))
-#define MCF_FEC_RMON_R_P_GTE2048(x) (*(vuint32_t*)(&__MBAR[0x0092C0+((x)*0x800)]))
-#define MCF_FEC_RMON_R_OCTETS(x) (*(vuint32_t*)(&__MBAR[0x0092C4+((x)*0x800)]))
-#define MCF_FEC_IEEE_R_DROP(x) (*(vuint32_t*)(&__MBAR[0x0092C8+((x)*0x800)]))
-#define MCF_FEC_IEEE_R_FRAME_OK(x) (*(vuint32_t*)(&__MBAR[0x0092CC+((x)*0x800)]))
-#define MCF_FEC_IEEE_R_CRC(x) (*(vuint32_t*)(&__MBAR[0x0092D0+((x)*0x800)]))
-#define MCF_FEC_IEEE_R_ALIGN(x) (*(vuint32_t*)(&__MBAR[0x0092D4+((x)*0x800)]))
-#define MCF_FEC_IEEE_R_MACERR(x) (*(vuint32_t*)(&__MBAR[0x0092D8+((x)*0x800)]))
-#define MCF_FEC_IEEE_R_FDXFC(x) (*(vuint32_t*)(&__MBAR[0x0092DC+((x)*0x800)]))
-#define MCF_FEC_IEEE_R_OCTETS_OK(x) (*(vuint32_t*)(&__MBAR[0x0092E0+((x)*0x800)]))
-
-/* Bit definitions and macros for MCF_FEC_EIR */
-#define MCF_FEC_EIR_RFERR (0x00020000)
-#define MCF_FEC_EIR_XFERR (0x00040000)
-#define MCF_FEC_EIR_XFUN (0x00080000)
-#define MCF_FEC_EIR_RL (0x00100000)
-#define MCF_FEC_EIR_LC (0x00200000)
-#define MCF_FEC_EIR_MII (0x00800000)
-#define MCF_FEC_EIR_TXF (0x08000000)
-#define MCF_FEC_EIR_GRA (0x10000000)
-#define MCF_FEC_EIR_BABT (0x20000000)
-#define MCF_FEC_EIR_BABR (0x40000000)
-#define MCF_FEC_EIR_HBERR (0x80000000)
-#define MCF_FEC_EIR_CLEAR_ALL (0xFFFFFFFF)
-
-/* Bit definitions and macros for MCF_FEC_EIMR */
-#define MCF_FEC_EIMR_RFERR (0x00020000)
-#define MCF_FEC_EIMR_XFERR (0x00040000)
-#define MCF_FEC_EIMR_XFUN (0x00080000)
-#define MCF_FEC_EIMR_RL (0x00100000)
-#define MCF_FEC_EIMR_LC (0x00200000)
-#define MCF_FEC_EIMR_MII (0x00800000)
-#define MCF_FEC_EIMR_TXF (0x08000000)
-#define MCF_FEC_EIMR_GRA (0x10000000)
-#define MCF_FEC_EIMR_BABT (0x20000000)
-#define MCF_FEC_EIMR_BABR (0x40000000)
-#define MCF_FEC_EIMR_HBERR (0x80000000)
-#define MCF_FEC_EIMR_MASK_ALL (0x00000000)
-#define MCF_FEC_EIMR_UNMASK_ALL (0xFFFFFFFF)
-
-/* Bit definitions and macros for MCF_FEC_ECR */
-#define MCF_FEC_ECR_RESET (0x00000001)
-#define MCF_FEC_ECR_ETHER_EN (0x00000002)
-
-/* Bit definitions and macros for MCF_FEC_MMFR */
-#define MCF_FEC_MMFR_DATA(x) (((x)&0x0000FFFF)<<0)
-#define MCF_FEC_MMFR_TA(x) (((x)&0x00000003)<<16)
-#define MCF_FEC_MMFR_RA(x) (((x)&0x0000001F)<<18)
-#define MCF_FEC_MMFR_PA(x) (((x)&0x0000001F)<<23)
-#define MCF_FEC_MMFR_OP(x) (((x)&0x00000003)<<28)
-#define MCF_FEC_MMFR_ST(x) (((x)&0x00000003)<<30)
-#define MCF_FEC_MMFR_ST_01 (0x40000000)
-#define MCF_FEC_MMFR_OP_READ (0x20000000)
-#define MCF_FEC_MMFR_OP_WRITE (0x10000000)
-#define MCF_FEC_MMFR_TA_10 (0x00020000)
-
-/* Bit definitions and macros for MCF_FEC_MSCR */
-#define MCF_FEC_MSCR_MII_SPEED(x) (((x)&0x0000003F)<<1)
-#define MCF_FEC_MSCR_DIS_PREAMBLE (0x00000080)
-#define MCF_FEC_MSCR_MII_SPEED_133 (0x1B<<1)
-#define MCF_FEC_MSCR_MII_SPEED_120 (0x18<<1)
-#define MCF_FEC_MSCR_MII_SPEED_66 (0xE<<1)
-#define MCF_FEC_MSCR_MII_SPEED_60 (0xC<<1)
-
-/* Bit definitions and macros for MCF_FEC_MIBC */
-#define MCF_FEC_MIBC_MIB_IDLE (0x40000000)
-#define MCF_FEC_MIBC_MIB_DISABLE (0x80000000)
-
-/* Bit definitions and macros for MCF_FEC_RCR */
-#define MCF_FEC_RCR_LOOP (0x00000001)
-#define MCF_FEC_RCR_DRT (0x00000002)
-#define MCF_FEC_RCR_MII_MODE (0x00000004)
-#define MCF_FEC_RCR_PROM (0x00000008)
-#define MCF_FEC_RCR_BC_REJ (0x00000010)
-#define MCF_FEC_RCR_FCE (0x00000020)
-#define MCF_FEC_RCR_MAX_FL(x) (((x)&0x000007FF)<<16)
-
-/* Bit definitions and macros for MCF_FEC_R_HASH */
-#define MCF_FEC_R_HASH_HASH(x) (((x)&0x0000003F)<<24)
-#define MCF_FEC_R_HASH_MULTCAST (0x40000000)
-#define MCF_FEC_R_HASH_FCE_DC (0x80000000)
-
-/* Bit definitions and macros for MCF_FEC_TCR */
-#define MCF_FEC_TCR_GTS (0x00000001)
-#define MCF_FEC_TCR_HBC (0x00000002)
-#define MCF_FEC_TCR_FDEN (0x00000004)
-#define MCF_FEC_TCR_TFC_PAUSE (0x00000008)
-#define MCF_FEC_TCR_RFC_PAUSE (0x00000010)
-
-/* Bit definitions and macros for MCF_FEC_PAUR */
-#define MCF_FEC_PAUR_TYPE(x) (((x)&0x0000FFFF)<<0)
-#define MCF_FEC_PAUR_PADDR2(x) (((x)&0x0000FFFF)<<16)
-
-/* Bit definitions and macros for MCF_FEC_OPD */
-#define MCF_FEC_OPD_OP_PAUSE(x) (((x)&0x0000FFFF)<<0)
-#define MCF_FEC_OPD_OPCODE(x) (((x)&0x0000FFFF)<<16)
-
-/* Bit definitions and macros for MCF_FEC_FECTFWR */
-#define MCF_FEC_FECTFWR_X_WMRK(x) (((x)&0x0000000F)<<0)
-#define MCF_FEC_FECTFWR_X_WMRK_64 (0x00000000)
-#define MCF_FEC_FECTFWR_X_WMRK_128 (0x00000001)
-#define MCF_FEC_FECTFWR_X_WMRK_192 (0x00000002)
-#define MCF_FEC_FECTFWR_X_WMRK_256 (0x00000003)
-#define MCF_FEC_FECTFWR_X_WMRK_320 (0x00000004)
-#define MCF_FEC_FECTFWR_X_WMRK_384 (0x00000005)
-#define MCF_FEC_FECTFWR_X_WMRK_448 (0x00000006)
-#define MCF_FEC_FECTFWR_X_WMRK_512 (0x00000007)
-#define MCF_FEC_FECTFWR_X_WMRK_576 (0x00000008)
-#define MCF_FEC_FECTFWR_X_WMRK_640 (0x00000009)
-#define MCF_FEC_FECTFWR_X_WMRK_704 (0x0000000A)
-#define MCF_FEC_FECTFWR_X_WMRK_768 (0x0000000B)
-#define MCF_FEC_FECTFWR_X_WMRK_832 (0x0000000C)
-#define MCF_FEC_FECTFWR_X_WMRK_896 (0x0000000D)
-#define MCF_FEC_FECTFWR_X_WMRK_960 (0x0000000E)
-#define MCF_FEC_FECTFWR_X_WMRK_1024 (0x0000000F)
-
-/* Bit definitions and macros for MCF_FEC_FECRFDR */
-#define MCF_FEC_FECRFDR_ADDR0 ((void*)(&__MBAR[0x009184]))
-#define MCF_FEC_FECRFDR_ADDR1 ((void*)(&__MBAR[0x009984]))
-#define MCF_FEC_FECRFDR_ADDR(x) ((void*)(&__MBAR[0x009184+(0x800*ch)]))
-
-/* Bit definitions and macros for MCF_FEC_FECRFSR */
-#define MCF_FEC_FECRFSR_EMT (0x00010000)
-#define MCF_FEC_FECRFSR_ALARM (0x00020000)
-#define MCF_FEC_FECRFSR_FU (0x00040000)
-#define MCF_FEC_FECRFSR_FR (0x00080000)
-#define MCF_FEC_FECRFSR_OF (0x00100000)
-#define MCF_FEC_FECRFSR_UF (0x00200000)
-#define MCF_FEC_FECRFSR_RXW (0x00400000)
-#define MCF_FEC_FECRFSR_FAE (0x00800000)
-#define MCF_FEC_FECRFSR_FRM(x) (((x)&0x0000000F)<<24)
-#define MCF_FEC_FECRFSR_IP (0x80000000)
-
-/* Bit definitions and macros for MCF_FEC_FECRFCR */
-#define MCF_FEC_FECRFCR_COUNTER(x) (((x)&0x0000FFFF)<<0)
-#define MCF_FEC_FECRFCR_OF_MSK (0x00080000)
-#define MCF_FEC_FECRFCR_UF_MSK (0x00100000)
-#define MCF_FEC_FECRFCR_RXW_MSK (0x00200000)
-#define MCF_FEC_FECRFCR_FAE_MSK (0x00400000)
-#define MCF_FEC_FECRFCR_IP_MSK (0x00800000)
-#define MCF_FEC_FECRFCR_GR(x) (((x)&0x00000007)<<24)
-#define MCF_FEC_FECRFCR_FRM (0x08000000)
-#define MCF_FEC_FECRFCR_TIMER (0x10000000)
-#define MCF_FEC_FECRFCR_WFR (0x20000000)
-#define MCF_FEC_FECRFCR_WCTL (0x40000000)
-
-/* Bit definitions and macros for MCF_FEC_FECRLRFP */
-#define MCF_FEC_FECRLRFP_LRFP(x) (((x)&0x00000FFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECRLWFP */
-#define MCF_FEC_FECRLWFP_LWFP(x) (((x)&0x00000FFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECRFAR */
-#define MCF_FEC_FECRFAR_ALARM(x) (((x)&0x00000FFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECRFRP */
-#define MCF_FEC_FECRFRP_READ(x) (((x)&0x00000FFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECRFWP */
-#define MCF_FEC_FECRFWP_WRITE(x) (((x)&0x00000FFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECTFDR */
-#define MCF_FEC_FECTFDR_TFCW_TC (0x04000000)
-#define MCF_FEC_FECTFDR_TFCW_ABC (0x02000000)
-#define MCF_FEC_FECTFDR_ADDR0 ((void*)(&__MBAR[0x0091A4]))
-#define MCF_FEC_FECTFDR_ADDR1 ((void*)(&__MBAR[0x0099A4]))
-#define MCF_FEC_FECTFDR_ADDR(x) ((void*)(&__MBAR[0x0091A4+(0x800*ch)]))
-
-/* Bit definitions and macros for MCF_FEC_FECTFSR */
-#define MCF_FEC_FECTFSR_EMT (0x00010000)
-#define MCF_FEC_FECTFSR_ALARM (0x00020000)
-#define MCF_FEC_FECTFSR_FU (0x00040000)
-#define MCF_FEC_FECTFSR_FR (0x00080000)
-#define MCF_FEC_FECTFSR_OF (0x00100000)
-#define MCF_FEC_FECTFSR_UP (0x00200000)
-#define MCF_FEC_FECTFSR_FAE (0x00800000)
-#define MCF_FEC_FECTFSR_FRM(x) (((x)&0x0000000F)<<24)
-#define MCF_FEC_FECTFSR_TXW (0x40000000)
-#define MCF_FEC_FECTFSR_IP (0x80000000)
-
-/* Bit definitions and macros for MCF_FEC_FECTFCR */
-#define MCF_FEC_FECTFCR_RESERVED (0x00200000)
-#define MCF_FEC_FECTFCR_COUNTER(x) (((x)&0x0000FFFF)<<0|0x00200000)
-#define MCF_FEC_FECTFCR_TXW_MSK (0x00240000)
-#define MCF_FEC_FECTFCR_OF_MSK (0x00280000)
-#define MCF_FEC_FECTFCR_UF_MSK (0x00300000)
-#define MCF_FEC_FECTFCR_FAE_MSK (0x00600000)
-#define MCF_FEC_FECTFCR_IP_MSK (0x00A00000)
-#define MCF_FEC_FECTFCR_GR(x) (((x)&0x00000007)<<24|0x00200000)
-#define MCF_FEC_FECTFCR_FRM (0x08200000)
-#define MCF_FEC_FECTFCR_TIMER (0x10200000)
-#define MCF_FEC_FECTFCR_WFR (0x20200000)
-#define MCF_FEC_FECTFCR_WCTL (0x40200000)
-
-/* Bit definitions and macros for MCF_FEC_FECTLRFP */
-#define MCF_FEC_FECTLRFP_LRFP(x) (((x)&0x00000FFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECTLWFP */
-#define MCF_FEC_FECTLWFP_LWFP(x) (((x)&0x00000FFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECTFAR */
-#define MCF_FEC_FECTFAR_ALARM(x) (((x)&0x00000FFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECTFRP */
-#define MCF_FEC_FECTFRP_READ(x) (((x)&0x00000FFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECTFWP */
-#define MCF_FEC_FECTFWP_WRITE(x) (((x)&0x00000FFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FRST */
-#define MCF_FEC_FRST_RST_CTL (0x01000000)
-#define MCF_FEC_FRST_SW_RST (0x02000000)
-
-/* Bit definitions and macros for MCF_FEC_CTCWR */
-#define MCF_FEC_CTCWR_TFCW (0x01000000)
-#define MCF_FEC_CTCWR_CRC (0x02000000)
-
-
-struct mcf54xx_fec
-{
- vuint32_t RES0;
- vuint32_t eir; // 004
- vuint32_t eimr; // 008
- vuint32_t RES1[6];
- vuint32_t ecr; // 024
- vuint32_t RES2[6];
- vuint32_t mmfr; // 040
- vuint32_t mscr; // 044
- vuint32_t RES3[7];
- vuint32_t mibc; // 064
- vuint32_t RES4[7];
- vuint32_t rcr; // 084
- vuint32_t r_hash; // 088
- vuint32_t RES5[14];
- vuint32_t tcr; // 0c4
- vuint32_t RES6[7];
- vuint32_t palr; // 0e4
- vuint32_t paur; // 0e8
- vuint32_t opd; // 0ec
- vuint32_t RES7[10];
- vuint32_t iaur; // 118
- vuint32_t ialr; // 11c
- vuint32_t gaur; // 120
- vuint32_t galr; // 124
- vuint32_t RES8[7];
- vuint32_t fectfwr; // 144
- vuint32_t RES8a[15];
- vuint32_t fecrfdr; // 184
- vuint32_t fecrfsr; // 188
- vuint32_t fecrfcr; // 18c
- vuint32_t fecrlrfp; // 190
- vuint32_t fecrlwfp; // 194
- vuint32_t fecrfar; // 198
- vuint32_t fecrfrp; // 19c
- vuint32_t fecrfwp; // 1a0
- vuint32_t fectfdr; // 1a4
- vuint32_t fectfsr; // 1a8
- vuint32_t fectfcr; // 1ac
- vuint32_t fectlrfp; // 1b0
- vuint32_t fectlwfp; // 1b4
- vuint32_t fectfar; // 1b8
- vuint32_t fectfrp; // 1bc
- vuint32_t fectfwp; // 1c0
- vuint32_t frst; // 1c4
- vuint32_t ctcwr; // 1c8
- vuint32_t RES9[13];
-
- /* MIB Counters Memory Map */
- vuint32_t rmon_t_drop; // 200
- vuint32_t rmon_t_packets; // 204
- vuint32_t rmon_t_bc_pkt; // 208
- vuint32_t rmon_t_mc_pkt; // 20C
- vuint32_t rmon_t_crc_align; // 210
- vuint32_t rmon_t_undersize; // 214
- vuint32_t rmon_t_oversize; // 218
- vuint32_t rmon_t_frag; // 21C
- vuint32_t rmon_t_jab; // 220
- vuint32_t rmon_t_col; // 224
- vuint32_t rmon_t_p64; // 228
- vuint32_t rmon_t_p65to127; // 22C
- vuint32_t rmon_t_p128to255; // 230
- vuint32_t rmon_t_p256to511; // 234
- vuint32_t rmon_t_p512to1023; // 238
- vuint32_t rmon_t_p1024to2047; // 23C
- vuint32_t rmon_t_p_gte2048; // 240
- vuint32_t rmon_t_octets; // 244
- vuint32_t ieee_t_drop; // 248
- vuint32_t ieee_t_frame_ok; // 24C
- vuint32_t ieee_t_1col; // 250
- vuint32_t ieee_t_mcol; // 254
- vuint32_t ieee_t_def; // 258
- vuint32_t ieee_t_lcol; // 25C
- vuint32_t ieee_t_excol; // 260
- vuint32_t ieee_t_macerr; // 264
- vuint32_t ieee_t_cserr; // 268
- vuint32_t ieee_t_sqe; // 26C
- vuint32_t ieee_t_fdxfc; // 270
- vuint32_t ieee_t_octets_ok; // 274
- vuint32_t RES10[2];
-
- vuint32_t rmon_r_drop; // 280
- vuint32_t rmon_r_packets; // 284
- vuint32_t rmon_r_bc_pkt; // 288
- vuint32_t rmon_r_mc_pkt; // 28C
- vuint32_t rmon_r_crc_align; // 290
- vuint32_t rmon_r_undersize; // 294
- vuint32_t rmon_r_oversize; // 298
- vuint32_t rmon_r_frag; // 29C
- vuint32_t rmon_r_jab; // 2A0
- vuint32_t rmon_r_resvd_0; // 2A4
- vuint32_t rmon_r_p64; // 2A8
- vuint32_t rmon_r_p65to127; // 2AC
- vuint32_t rmon_r_p128to255; // 2B0
- vuint32_t rmon_r_p256to511; // 2B4
- vuint32_t rmon_r_512to1023; // 2B8
- vuint32_t rmon_r_1024to2047; // 2BC
- vuint32_t rmon_r_p_gte2048; // 2C0
- vuint32_t rmon_r_octets; // 2C4
- vuint32_t ieee_r_drop; // 2C8
- vuint32_t ieee_r_frame_ok; // 2CC
- vuint32_t ieee_r_crc; // 2D0
- vuint32_t ieee_r_align; // 2D4
- vuint32_t ieee_r_macerr; // 2D8
- vuint32_t ieee_r_fdxfc; // 2DC
- vuint32_t ieee_r_octets_ok; // 2e0
-};
-
-#define MCF_FEC_ADDR(ch) ((void*)(&__MBAR[0x009000+(0x800*ch)]))
-#define MCF_FEC_SIZE(ch) ((uint32_t)(0x800))
-
-#endif /* __MCF548X_FEC_H__ */
diff --git a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_gpio.h b/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_gpio.h
deleted file mode 100644
index d2200714f1..0000000000
--- a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_gpio.h
+++ /dev/null
@@ -1,708 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Register and bit definitions for the MCF548X and MCF547x
- * General Purpose I/O (GPIO)
- */
-#ifndef __MCF548X_GPIO_H__
-#define __MCF548X_GPIO_H__
-
-/*
- * General Purpose I/O (GPIO)
- */
-
-/* Register read/write macros */
-#define MCF_GPIO_PODR_FBCTL (*(vuint8_t *)(&__MBAR[0x000A00]))
-#define MCF_GPIO_PODR_FBCS (*(vuint8_t *)(&__MBAR[0x000A01]))
-#define MCF_GPIO_PODR_DMA (*(vuint8_t *)(&__MBAR[0x000A02]))
-#define MCF_GPIO_PODR_FEC0H (*(vuint8_t *)(&__MBAR[0x000A04]))
-#define MCF_GPIO_PODR_FEC0L (*(vuint8_t *)(&__MBAR[0x000A05]))
-#define MCF_GPIO_PODR_FEC1H (*(vuint8_t *)(&__MBAR[0x000A06]))
-#define MCF_GPIO_PODR_FEC1L (*(vuint8_t *)(&__MBAR[0x000A07]))
-#define MCF_GPIO_PODR_FECI2C (*(vuint8_t *)(&__MBAR[0x000A08]))
-#define MCF_GPIO_PODR_PCIBG (*(vuint8_t *)(&__MBAR[0x000A09]))
-#define MCF_GPIO_PODR_PCIBR (*(vuint8_t *)(&__MBAR[0x000A0A]))
-#define MCF_GPIO_PODR_PSC3PSC2 (*(vuint8_t *)(&__MBAR[0x000A0C]))
-#define MCF_GPIO_PODR_PSC1PSC0 (*(vuint8_t *)(&__MBAR[0x000A0D]))
-#define MCF_GPIO_PODR_DSPI (*(vuint8_t *)(&__MBAR[0x000A0E]))
-#define MCF_GPIO_PDDR_FBCTL (*(vuint8_t *)(&__MBAR[0x000A10]))
-#define MCF_GPIO_PDDR_FBCS (*(vuint8_t *)(&__MBAR[0x000A11]))
-#define MCF_GPIO_PDDR_DMA (*(vuint8_t *)(&__MBAR[0x000A12]))
-#define MCF_GPIO_PDDR_FEC0H (*(vuint8_t *)(&__MBAR[0x000A14]))
-#define MCF_GPIO_PDDR_FEC0L (*(vuint8_t *)(&__MBAR[0x000A15]))
-#define MCF_GPIO_PDDR_FEC1H (*(vuint8_t *)(&__MBAR[0x000A16]))
-#define MCF_GPIO_PDDR_FEC1L (*(vuint8_t *)(&__MBAR[0x000A17]))
-#define MCF_GPIO_PDDR_FECI2C (*(vuint8_t *)(&__MBAR[0x000A18]))
-#define MCF_GPIO_PDDR_PCIBG (*(vuint8_t *)(&__MBAR[0x000A19]))
-#define MCF_GPIO_PDDR_PCIBR (*(vuint8_t *)(&__MBAR[0x000A1A]))
-#define MCF_GPIO_PDDR_PSC3PSC2 (*(vuint8_t *)(&__MBAR[0x000A1C]))
-#define MCF_GPIO_PDDR_PSC1PSC0 (*(vuint8_t *)(&__MBAR[0x000A1D]))
-#define MCF_GPIO_PDDR_DSPI (*(vuint8_t *)(&__MBAR[0x000A1E]))
-#define MCF_GPIO_PPDSDR_FBCTL (*(vuint8_t *)(&__MBAR[0x000A20]))
-#define MCF_GPIO_PPDSDR_FBCS (*(vuint8_t *)(&__MBAR[0x000A21]))
-#define MCF_GPIO_PPDSDR_DMA (*(vuint8_t *)(&__MBAR[0x000A22]))
-#define MCF_GPIO_PPDSDR_FEC0H (*(vuint8_t *)(&__MBAR[0x000A24]))
-#define MCF_GPIO_PPDSDR_FEC0L (*(vuint8_t *)(&__MBAR[0x000A25]))
-#define MCF_GPIO_PPDSDR_FEC1H (*(vuint8_t *)(&__MBAR[0x000A26]))
-#define MCF_GPIO_PPDSDR_FEC1L (*(vuint8_t *)(&__MBAR[0x000A27]))
-#define MCF_GPIO_PPDSDR_FECI2C (*(vuint8_t *)(&__MBAR[0x000A28]))
-#define MCF_GPIO_PPDSDR_PCIBG (*(vuint8_t *)(&__MBAR[0x000A29]))
-#define MCF_GPIO_PPDSDR_PCIBR (*(vuint8_t *)(&__MBAR[0x000A2A]))
-#define MCF_GPIO_PPDSDR_PSC3PSC2 (*(vuint8_t *)(&__MBAR[0x000A2C]))
-#define MCF_GPIO_PPDSDR_PSC1PSC0 (*(vuint8_t *)(&__MBAR[0x000A2D]))
-#define MCF_GPIO_PPDSDR_DSPI (*(vuint8_t *)(&__MBAR[0x000A2E]))
-#define MCF_GPIO_PCLRR_FBCTL (*(vuint8_t *)(&__MBAR[0x000A30]))
-#define MCF_GPIO_PCLRR_FBCS (*(vuint8_t *)(&__MBAR[0x000A31]))
-#define MCF_GPIO_PCLRR_DMA (*(vuint8_t *)(&__MBAR[0x000A32]))
-#define MCF_GPIO_PCLRR_FEC0H (*(vuint8_t *)(&__MBAR[0x000A34]))
-#define MCF_GPIO_PCLRR_FEC0L (*(vuint8_t *)(&__MBAR[0x000A35]))
-#define MCF_GPIO_PCLRR_FEC1H (*(vuint8_t *)(&__MBAR[0x000A36]))
-#define MCF_GPIO_PCLRR_FEC1L (*(vuint8_t *)(&__MBAR[0x000A37]))
-#define MCF_GPIO_PCLRR_FECI2C (*(vuint8_t *)(&__MBAR[0x000A38]))
-#define MCF_GPIO_PCLRR_PCIBG (*(vuint8_t *)(&__MBAR[0x000A39]))
-#define MCF_GPIO_PCLRR_PCIBR (*(vuint8_t *)(&__MBAR[0x000A3A]))
-#define MCF_GPIO_PCLRR_PSC3PSC2 (*(vuint8_t *)(&__MBAR[0x000A3C]))
-#define MCF_GPIO_PCLRR_PSC1PSC0 (*(vuint8_t *)(&__MBAR[0x000A3D]))
-#define MCF_GPIO_PCLRR_DSPI (*(vuint8_t *)(&__MBAR[0x000A3E]))
-#define MCF_GPIO_PAR_FBCTL (*(vuint16_t*)(&__MBAR[0x000A40]))
-#define MCF_GPIO_PAR_FBCS (*(vuint8_t *)(&__MBAR[0x000A42]))
-#define MCF_GPIO_PAR_DMA (*(vuint8_t *)(&__MBAR[0x000A43]))
-#define MCF_GPIO_PAR_FECI2CIRQ (*(vuint16_t*)(&__MBAR[0x000A44]))
-#define MCF_GPIO_PAR_PCIBG (*(vuint16_t*)(&__MBAR[0x000A48]))
-#define MCF_GPIO_PAR_PCIBR (*(vuint16_t*)(&__MBAR[0x000A4A]))
-#define MCF_GPIO_PAR_PSC3 (*(vuint8_t *)(&__MBAR[0x000A4C]))
-#define MCF_GPIO_PAR_PSC2 (*(vuint8_t *)(&__MBAR[0x000A4D]))
-#define MCF_GPIO_PAR_PSC1 (*(vuint8_t *)(&__MBAR[0x000A4E]))
-#define MCF_GPIO_PAR_PSC0 (*(vuint8_t *)(&__MBAR[0x000A4F]))
-#define MCF_GPIO_PAR_DSPI (*(vuint16_t*)(&__MBAR[0x000A50]))
-#define MCF_GPIO_PAR_TIMER (*(vuint8_t *)(&__MBAR[0x000A52]))
-
-/* Bit definitions and macros for MCF_GPIO_PODR_FBCTL */
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL0 (0x01)
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL1 (0x02)
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL2 (0x04)
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL3 (0x08)
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL4 (0x10)
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL5 (0x20)
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL6 (0x40)
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_FBCS */
-#define MCF_GPIO_PODR_FBCS_PODR_FBCS1 (0x02)
-#define MCF_GPIO_PODR_FBCS_PODR_FBCS2 (0x04)
-#define MCF_GPIO_PODR_FBCS_PODR_FBCS3 (0x08)
-#define MCF_GPIO_PODR_FBCS_PODR_FBCS4 (0x10)
-#define MCF_GPIO_PODR_FBCS_PODR_FBCS5 (0x20)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_DMA */
-#define MCF_GPIO_PODR_DMA_PODR_DMA0 (0x01)
-#define MCF_GPIO_PODR_DMA_PODR_DMA1 (0x02)
-#define MCF_GPIO_PODR_DMA_PODR_DMA2 (0x04)
-#define MCF_GPIO_PODR_DMA_PODR_DMA3 (0x08)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_FEC0H */
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H0 (0x01)
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H1 (0x02)
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H2 (0x04)
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H3 (0x08)
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H4 (0x10)
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H5 (0x20)
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H6 (0x40)
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_FEC0L */
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L0 (0x01)
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L1 (0x02)
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L2 (0x04)
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L3 (0x08)
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L4 (0x10)
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L5 (0x20)
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L6 (0x40)
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_FEC1H */
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H0 (0x01)
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H1 (0x02)
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H2 (0x04)
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H3 (0x08)
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H4 (0x10)
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H5 (0x20)
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H6 (0x40)
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_FEC1L */
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L0 (0x01)
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L1 (0x02)
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L2 (0x04)
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L3 (0x08)
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L4 (0x10)
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L5 (0x20)
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L6 (0x40)
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_FECI2C */
-#define MCF_GPIO_PODR_FECI2C_PODR_FECI2C0 (0x01)
-#define MCF_GPIO_PODR_FECI2C_PODR_FECI2C1 (0x02)
-#define MCF_GPIO_PODR_FECI2C_PODR_FECI2C2 (0x04)
-#define MCF_GPIO_PODR_FECI2C_PODR_FECI2C3 (0x08)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_PCIBG */
-#define MCF_GPIO_PODR_PCIBG_PODR_PCIBG0 (0x01)
-#define MCF_GPIO_PODR_PCIBG_PODR_PCIBG1 (0x02)
-#define MCF_GPIO_PODR_PCIBG_PODR_PCIBG2 (0x04)
-#define MCF_GPIO_PODR_PCIBG_PODR_PCIBG3 (0x08)
-#define MCF_GPIO_PODR_PCIBG_PODR_PCIBG4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_PCIBR */
-#define MCF_GPIO_PODR_PCIBR_PODR_PCIBR0 (0x01)
-#define MCF_GPIO_PODR_PCIBR_PODR_PCIBR1 (0x02)
-#define MCF_GPIO_PODR_PCIBR_PODR_PCIBR2 (0x04)
-#define MCF_GPIO_PODR_PCIBR_PODR_PCIBR3 (0x08)
-#define MCF_GPIO_PODR_PCIBR_PODR_PCIBR4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_PSC3PSC2 */
-#define MCF_GPIO_PODR_PSC3PSC2_PODR_PSC3PSC20 (0x01)
-#define MCF_GPIO_PODR_PSC3PSC2_PODR_PSC3PSC21 (0x02)
-#define MCF_GPIO_PODR_PSC3PSC2_PODR_PSC3PSC22 (0x04)
-#define MCF_GPIO_PODR_PSC3PSC2_PODR_PSC3PSC23 (0x08)
-#define MCF_GPIO_PODR_PSC3PSC2_PODR_PSC3PSC24 (0x10)
-#define MCF_GPIO_PODR_PSC3PSC2_PODR_PSC3PSC25 (0x20)
-#define MCF_GPIO_PODR_PSC3PSC2_PODR_PSC3PSC26 (0x40)
-#define MCF_GPIO_PODR_PSC3PSC2_PODR_PSC3PSC27 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_PSC1PSC0 */
-#define MCF_GPIO_PODR_PSC1PSC0_PODR_PSC1PSC00 (0x01)
-#define MCF_GPIO_PODR_PSC1PSC0_PODR_PSC1PSC01 (0x02)
-#define MCF_GPIO_PODR_PSC1PSC0_PODR_PSC1PSC02 (0x04)
-#define MCF_GPIO_PODR_PSC1PSC0_PODR_PSC1PSC03 (0x08)
-#define MCF_GPIO_PODR_PSC1PSC0_PODR_PSC1PSC04 (0x10)
-#define MCF_GPIO_PODR_PSC1PSC0_PODR_PSC1PSC05 (0x20)
-#define MCF_GPIO_PODR_PSC1PSC0_PODR_PSC1PSC06 (0x40)
-#define MCF_GPIO_PODR_PSC1PSC0_PODR_PSC1PSC07 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_DSPI */
-#define MCF_GPIO_PODR_DSPI_PODR_DSPI0 (0x01)
-#define MCF_GPIO_PODR_DSPI_PODR_DSPI1 (0x02)
-#define MCF_GPIO_PODR_DSPI_PODR_DSPI2 (0x04)
-#define MCF_GPIO_PODR_DSPI_PODR_DSPI3 (0x08)
-#define MCF_GPIO_PODR_DSPI_PODR_DSPI4 (0x10)
-#define MCF_GPIO_PODR_DSPI_PODR_DSPI5 (0x20)
-#define MCF_GPIO_PODR_DSPI_PODR_DSPI6 (0x40)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_FBCTL */
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL0 (0x01)
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL1 (0x02)
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL2 (0x04)
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL3 (0x08)
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL4 (0x10)
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL5 (0x20)
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL6 (0x40)
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_FBCS */
-#define MCF_GPIO_PDDR_FBCS_PDDR_FBCS1 (0x02)
-#define MCF_GPIO_PDDR_FBCS_PDDR_FBCS2 (0x04)
-#define MCF_GPIO_PDDR_FBCS_PDDR_FBCS3 (0x08)
-#define MCF_GPIO_PDDR_FBCS_PDDR_FBCS4 (0x10)
-#define MCF_GPIO_PDDR_FBCS_PDDR_FBCS5 (0x20)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_DMA */
-#define MCF_GPIO_PDDR_DMA_PDDR_DMA0 (0x01)
-#define MCF_GPIO_PDDR_DMA_PDDR_DMA1 (0x02)
-#define MCF_GPIO_PDDR_DMA_PDDR_DMA2 (0x04)
-#define MCF_GPIO_PDDR_DMA_PDDR_DMA3 (0x08)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_FEC0H */
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H0 (0x01)
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H1 (0x02)
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H2 (0x04)
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H3 (0x08)
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H4 (0x10)
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H5 (0x20)
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H6 (0x40)
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_FEC0L */
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L0 (0x01)
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L1 (0x02)
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L2 (0x04)
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L3 (0x08)
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L4 (0x10)
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L5 (0x20)
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L6 (0x40)
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_FEC1H */
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H0 (0x01)
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H1 (0x02)
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H2 (0x04)
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H3 (0x08)
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H4 (0x10)
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H5 (0x20)
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H6 (0x40)
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_FEC1L */
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L0 (0x01)
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L1 (0x02)
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L2 (0x04)
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L3 (0x08)
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L4 (0x10)
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L5 (0x20)
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L6 (0x40)
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_FECI2C */
-#define MCF_GPIO_PDDR_FECI2C_PDDR_FECI2C0 (0x01)
-#define MCF_GPIO_PDDR_FECI2C_PDDR_FECI2C1 (0x02)
-#define MCF_GPIO_PDDR_FECI2C_PDDR_FECI2C2 (0x04)
-#define MCF_GPIO_PDDR_FECI2C_PDDR_FECI2C3 (0x08)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_PCIBG */
-#define MCF_GPIO_PDDR_PCIBG_PDDR_PCIBG0 (0x01)
-#define MCF_GPIO_PDDR_PCIBG_PDDR_PCIBG1 (0x02)
-#define MCF_GPIO_PDDR_PCIBG_PDDR_PCIBG2 (0x04)
-#define MCF_GPIO_PDDR_PCIBG_PDDR_PCIBG3 (0x08)
-#define MCF_GPIO_PDDR_PCIBG_PDDR_PCIBG4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_PCIBR */
-#define MCF_GPIO_PDDR_PCIBR_PDDR_PCIBR0 (0x01)
-#define MCF_GPIO_PDDR_PCIBR_PDDR_PCIBR1 (0x02)
-#define MCF_GPIO_PDDR_PCIBR_PDDR_PCIBR2 (0x04)
-#define MCF_GPIO_PDDR_PCIBR_PDDR_PCIBR3 (0x08)
-#define MCF_GPIO_PDDR_PCIBR_PDDR_PCIBR4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_PSC3PSC2 */
-#define MCF_GPIO_PDDR_PSC3PSC2_PDDR_PSC3PSC20 (0x01)
-#define MCF_GPIO_PDDR_PSC3PSC2_PDDR_PSC3PSC21 (0x02)
-#define MCF_GPIO_PDDR_PSC3PSC2_PDDR_PSC3PSC22 (0x04)
-#define MCF_GPIO_PDDR_PSC3PSC2_PDDR_PSC3PSC23 (0x08)
-#define MCF_GPIO_PDDR_PSC3PSC2_PDDR_PSC3PSC24 (0x10)
-#define MCF_GPIO_PDDR_PSC3PSC2_PDDR_PSC3PSC25 (0x20)
-#define MCF_GPIO_PDDR_PSC3PSC2_PDDR_PSC3PSC26 (0x40)
-#define MCF_GPIO_PDDR_PSC3PSC2_PDDR_PSC3PSC27 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_PSC1PSC0 */
-#define MCF_GPIO_PDDR_PSC1PSC0_PDDR_PSC1PSC00 (0x01)
-#define MCF_GPIO_PDDR_PSC1PSC0_PDDR_PSC1PSC01 (0x02)
-#define MCF_GPIO_PDDR_PSC1PSC0_PDDR_PSC1PSC02 (0x04)
-#define MCF_GPIO_PDDR_PSC1PSC0_PDDR_PSC1PSC03 (0x08)
-#define MCF_GPIO_PDDR_PSC1PSC0_PDDR_PSC1PSC04 (0x10)
-#define MCF_GPIO_PDDR_PSC1PSC0_PDDR_PSC1PSC05 (0x20)
-#define MCF_GPIO_PDDR_PSC1PSC0_PDDR_PSC1PSC06 (0x40)
-#define MCF_GPIO_PDDR_PSC1PSC0_PDDR_PSC1PSC07 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_DSPI */
-#define MCF_GPIO_PDDR_DSPI_PDDR_DSPI0 (0x01)
-#define MCF_GPIO_PDDR_DSPI_PDDR_DSPI1 (0x02)
-#define MCF_GPIO_PDDR_DSPI_PDDR_DSPI2 (0x04)
-#define MCF_GPIO_PDDR_DSPI_PDDR_DSPI3 (0x08)
-#define MCF_GPIO_PDDR_DSPI_PDDR_DSPI4 (0x10)
-#define MCF_GPIO_PDDR_DSPI_PDDR_DSPI5 (0x20)
-#define MCF_GPIO_PDDR_DSPI_PDDR_DSPI6 (0x40)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_FBCTL */
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL0 (0x01)
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL1 (0x02)
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL2 (0x04)
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL3 (0x08)
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL4 (0x10)
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL5 (0x20)
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL6 (0x40)
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_FBCS */
-#define MCF_GPIO_PPDSDR_FBCS_PPDSDR_FBCS1 (0x02)
-#define MCF_GPIO_PPDSDR_FBCS_PPDSDR_FBCS2 (0x04)
-#define MCF_GPIO_PPDSDR_FBCS_PPDSDR_FBCS3 (0x08)
-#define MCF_GPIO_PPDSDR_FBCS_PPDSDR_FBCS4 (0x10)
-#define MCF_GPIO_PPDSDR_FBCS_PPDSDR_FBCS5 (0x20)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_DMA */
-#define MCF_GPIO_PPDSDR_DMA_PPDSDR_DMA0 (0x01)
-#define MCF_GPIO_PPDSDR_DMA_PPDSDR_DMA1 (0x02)
-#define MCF_GPIO_PPDSDR_DMA_PPDSDR_DMA2 (0x04)
-#define MCF_GPIO_PPDSDR_DMA_PPDSDR_DMA3 (0x08)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_FEC0H */
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H0 (0x01)
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H1 (0x02)
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H2 (0x04)
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H3 (0x08)
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H4 (0x10)
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H5 (0x20)
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H6 (0x40)
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_FEC0L */
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L0 (0x01)
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L1 (0x02)
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L2 (0x04)
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L3 (0x08)
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L4 (0x10)
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L5 (0x20)
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L6 (0x40)
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_FEC1H */
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H0 (0x01)
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H1 (0x02)
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H2 (0x04)
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H3 (0x08)
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H4 (0x10)
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H5 (0x20)
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H6 (0x40)
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_FEC1L */
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L0 (0x01)
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L1 (0x02)
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L2 (0x04)
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L3 (0x08)
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L4 (0x10)
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L5 (0x20)
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L6 (0x40)
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_FECI2C */
-#define MCF_GPIO_PPDSDR_FECI2C_PPDSDR_FECI2C0 (0x01)
-#define MCF_GPIO_PPDSDR_FECI2C_PPDSDR_FECI2C1 (0x02)
-#define MCF_GPIO_PPDSDR_FECI2C_PPDSDR_FECI2C2 (0x04)
-#define MCF_GPIO_PPDSDR_FECI2C_PPDSDR_FECI2C3 (0x08)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_PCIBG */
-#define MCF_GPIO_PPDSDR_PCIBG_PPDSDR_PCIBG0 (0x01)
-#define MCF_GPIO_PPDSDR_PCIBG_PPDSDR_PCIBG1 (0x02)
-#define MCF_GPIO_PPDSDR_PCIBG_PPDSDR_PCIBG2 (0x04)
-#define MCF_GPIO_PPDSDR_PCIBG_PPDSDR_PCIBG3 (0x08)
-#define MCF_GPIO_PPDSDR_PCIBG_PPDSDR_PCIBG4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_PCIBR */
-#define MCF_GPIO_PPDSDR_PCIBR_PPDSDR_PCIBR0 (0x01)
-#define MCF_GPIO_PPDSDR_PCIBR_PPDSDR_PCIBR1 (0x02)
-#define MCF_GPIO_PPDSDR_PCIBR_PPDSDR_PCIBR2 (0x04)
-#define MCF_GPIO_PPDSDR_PCIBR_PPDSDR_PCIBR3 (0x08)
-#define MCF_GPIO_PPDSDR_PCIBR_PPDSDR_PCIBR4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_PSC3PSC2 */
-#define MCF_GPIO_PPDSDR_PSC3PSC2_PPDSDR_PSC3PSC20 (0x01)
-#define MCF_GPIO_PPDSDR_PSC3PSC2_PPDSDR_PSC3PSC21 (0x02)
-#define MCF_GPIO_PPDSDR_PSC3PSC2_PPDSDR_PSC3PSC22 (0x04)
-#define MCF_GPIO_PPDSDR_PSC3PSC2_PPDSDR_PSC3PSC23 (0x08)
-#define MCF_GPIO_PPDSDR_PSC3PSC2_PDDR_PSC3PSC24 (0x10)
-#define MCF_GPIO_PPDSDR_PSC3PSC2_PDDR_PSC3PSC25 (0x20)
-#define MCF_GPIO_PPDSDR_PSC3PSC2_PPDSDR_PSC3PSC26 (0x40)
-#define MCF_GPIO_PPDSDR_PSC3PSC2_PPDSDR_PSC3PSC27 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_PSC1PSC0 */
-#define MCF_GPIO_PPDSDR_PSC1PSC0_PPDSDR_PSC1PSC00 (0x01)
-#define MCF_GPIO_PPDSDR_PSC1PSC0_PDDR_PSC1PSC01 (0x02)
-#define MCF_GPIO_PPDSDR_PSC1PSC0_PPDSDR_PSC1PSC02 (0x04)
-#define MCF_GPIO_PPDSDR_PSC1PSC0_PDDR_PSC1PSC03 (0x08)
-#define MCF_GPIO_PPDSDR_PSC1PSC0_PPDSDR_PSC1PSC04 (0x10)
-#define MCF_GPIO_PPDSDR_PSC1PSC0_PPDSDR_PSC1PSC05 (0x20)
-#define MCF_GPIO_PPDSDR_PSC1PSC0_PPDSDR_PSC1PSC06 (0x40)
-#define MCF_GPIO_PPDSDR_PSC1PSC0_PPDSDR_PSC1PSC07 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_DSPI */
-#define MCF_GPIO_PPDSDR_DSPI_PPDSDR_DSPI0 (0x01)
-#define MCF_GPIO_PPDSDR_DSPI_PPDSDR_DSPI1 (0x02)
-#define MCF_GPIO_PPDSDR_DSPI_PPDSDR_DSPI2 (0x04)
-#define MCF_GPIO_PPDSDR_DSPI_PPDSDR_DSPI3 (0x08)
-#define MCF_GPIO_PPDSDR_DSPI_PDDR_DSPI4 (0x10)
-#define MCF_GPIO_PPDSDR_DSPI_PPDSDR_DSPI5 (0x20)
-#define MCF_GPIO_PPDSDR_DSPI_PPDSDR_DSPI6 (0x40)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_FBCTL */
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL0 (0x01)
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL1 (0x02)
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL2 (0x04)
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL3 (0x08)
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL4 (0x10)
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL5 (0x20)
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL6 (0x40)
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_FBCS */
-#define MCF_GPIO_PCLRR_FBCS_PCLRR_FBCS1 (0x02)
-#define MCF_GPIO_PCLRR_FBCS_PCLRR_FBCS2 (0x04)
-#define MCF_GPIO_PCLRR_FBCS_PCLRR_FBCS3 (0x08)
-#define MCF_GPIO_PCLRR_FBCS_PCLRR_FBCS4 (0x10)
-#define MCF_GPIO_PCLRR_FBCS_PCLRR_FBCS5 (0x20)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_DMA */
-#define MCF_GPIO_PCLRR_DMA_PCLRR_DMA0 (0x01)
-#define MCF_GPIO_PCLRR_DMA_PCLRR_DMA1 (0x02)
-#define MCF_GPIO_PCLRR_DMA_PCLRR_DMA2 (0x04)
-#define MCF_GPIO_PCLRR_DMA_PCLRR_DMA3 (0x08)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_FEC0H */
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H0 (0x01)
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H1 (0x02)
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H2 (0x04)
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H3 (0x08)
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H4 (0x10)
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H5 (0x20)
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H6 (0x40)
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_FEC0L */
-#define MCF_GPIO_PCLRR_FEC0L_PCLRR_FEC0L0 (0x01)
-#define MCF_GPIO_PCLRR_FEC0L_PODR_FEC0L1 (0x02)
-#define MCF_GPIO_PCLRR_FEC0L_PCLRR_FEC0L2 (0x04)
-#define MCF_GPIO_PCLRR_FEC0L_PCLRR_FEC0L3 (0x08)
-#define MCF_GPIO_PCLRR_FEC0L_PODR_FEC0L4 (0x10)
-#define MCF_GPIO_PCLRR_FEC0L_PODR_FEC0L5 (0x20)
-#define MCF_GPIO_PCLRR_FEC0L_PODR_FEC0L6 (0x40)
-#define MCF_GPIO_PCLRR_FEC0L_PCLRR_FEC0L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_FEC1H */
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H0 (0x01)
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H1 (0x02)
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H2 (0x04)
-#define MCF_GPIO_PCLRR_FEC1H_PODR_FEC1H3 (0x08)
-#define MCF_GPIO_PCLRR_FEC1H_PODR_FEC1H4 (0x10)
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H5 (0x20)
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H6 (0x40)
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_FEC1L */
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L0 (0x01)
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L1 (0x02)
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L2 (0x04)
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L3 (0x08)
-#define MCF_GPIO_PCLRR_FEC1L_PODR_FEC1L4 (0x10)
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L5 (0x20)
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L6 (0x40)
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_FECI2C */
-#define MCF_GPIO_PCLRR_FECI2C_PCLRR_FECI2C0 (0x01)
-#define MCF_GPIO_PCLRR_FECI2C_PCLRR_FECI2C1 (0x02)
-#define MCF_GPIO_PCLRR_FECI2C_PODR_FECI2C2 (0x04)
-#define MCF_GPIO_PCLRR_FECI2C_PCLRR_FECI2C3 (0x08)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_PCIBG */
-#define MCF_GPIO_PCLRR_PCIBG_PODR_PCIBG0 (0x01)
-#define MCF_GPIO_PCLRR_PCIBG_PODR_PCIBG1 (0x02)
-#define MCF_GPIO_PCLRR_PCIBG_PODR_PCIBG2 (0x04)
-#define MCF_GPIO_PCLRR_PCIBG_PCLRR_PCIBG3 (0x08)
-#define MCF_GPIO_PCLRR_PCIBG_PCLRR_PCIBG4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_PCIBR */
-#define MCF_GPIO_PCLRR_PCIBR_PCLRR_PCIBR0 (0x01)
-#define MCF_GPIO_PCLRR_PCIBR_PCLRR_PCIBR1 (0x02)
-#define MCF_GPIO_PCLRR_PCIBR_PCLRR_PCIBR2 (0x04)
-#define MCF_GPIO_PCLRR_PCIBR_PODR_PCIBR3 (0x08)
-#define MCF_GPIO_PCLRR_PCIBR_PODR_PCIBR4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_PSC3PSC2 */
-#define MCF_GPIO_PCLRR_PSC3PSC2_PODR_PSC3PSC20 (0x01)
-#define MCF_GPIO_PCLRR_PSC3PSC2_PODR_PSC3PSC21 (0x02)
-#define MCF_GPIO_PCLRR_PSC3PSC2_PCLRR_PSC3PSC22 (0x04)
-#define MCF_GPIO_PCLRR_PSC3PSC2_PCLRR_PSC3PSC23 (0x08)
-#define MCF_GPIO_PCLRR_PSC3PSC2_PCLRR_PSC3PSC24 (0x10)
-#define MCF_GPIO_PCLRR_PSC3PSC2_PODR_PSC3PSC25 (0x20)
-#define MCF_GPIO_PCLRR_PSC3PSC2_PODR_PSC3PSC26 (0x40)
-#define MCF_GPIO_PCLRR_PSC3PSC2_PCLRR_PSC3PSC27 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_PSC1PSC0 */
-#define MCF_GPIO_PCLRR_PSC1PSC0_PCLRR_PSC1PSC00 (0x01)
-#define MCF_GPIO_PCLRR_PSC1PSC0_PCLRR_PSC1PSC01 (0x02)
-#define MCF_GPIO_PCLRR_PSC1PSC0_PCLRR_PSC1PSC02 (0x04)
-#define MCF_GPIO_PCLRR_PSC1PSC0_PCLRR_PSC1PSC03 (0x08)
-#define MCF_GPIO_PCLRR_PSC1PSC0_PCLRR_PSC1PSC04 (0x10)
-#define MCF_GPIO_PCLRR_PSC1PSC0_PCLRR_PSC1PSC05 (0x20)
-#define MCF_GPIO_PCLRR_PSC1PSC0_PODR_PSC1PSC06 (0x40)
-#define MCF_GPIO_PCLRR_PSC1PSC0_PCLRR_PSC1PSC07 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_DSPI */
-#define MCF_GPIO_PCLRR_DSPI_PCLRR_DSPI0 (0x01)
-#define MCF_GPIO_PCLRR_DSPI_PCLRR_DSPI1 (0x02)
-#define MCF_GPIO_PCLRR_DSPI_PCLRR_DSPI2 (0x04)
-#define MCF_GPIO_PCLRR_DSPI_PCLRR_DSPI3 (0x08)
-#define MCF_GPIO_PCLRR_DSPI_PCLRR_DSPI4 (0x10)
-#define MCF_GPIO_PCLRR_DSPI_PCLRR_DSPI5 (0x20)
-#define MCF_GPIO_PCLRR_DSPI_PCLRR_DSPI6 (0x40)
-
-/* Bit definitions and macros for MCF_GPIO_PAR_FBCTL */
-#define MCF_GPIO_PAR_FBCTL_PAR_TS(x) (((x)&0x0003)<<0)
-#define MCF_GPIO_PAR_FBCTL_PAR_TA (0x0004)
-#define MCF_GPIO_PAR_FBCTL_PAR_RWB(x) (((x)&0x0003)<<4)
-#define MCF_GPIO_PAR_FBCTL_PAR_OE (0x0040)
-#define MCF_GPIO_PAR_FBCTL_PAR_BWE0 (0x0100)
-#define MCF_GPIO_PAR_FBCTL_PAR_BWE1 (0x0400)
-#define MCF_GPIO_PAR_FBCTL_PAR_BWE2 (0x1000)
-#define MCF_GPIO_PAR_FBCTL_PAR_BWE3 (0x4000)
-#define MCF_GPIO_PAR_FBCTL_PAR_TS_GPIO (0)
-#define MCF_GPIO_PAR_FBCTL_PAR_TS_TBST (2)
-#define MCF_GPIO_PAR_FBCTL_PAR_TS_TS (3)
-#define MCF_GPIO_PAR_FBCTL_PAR_RWB_GPIO (0x0000)
-#define MCF_GPIO_PAR_FBCTL_PAR_RWB_TBST (0x0020)
-#define MCF_GPIO_PAR_FBCTL_PAR_RWB_RWB (0x0030)
-
-/* Bit definitions and macros for MCF_GPIO_PAR_FBCS */
-#define MCF_GPIO_PAR_FBCS_PAR_CS1 (0x02)
-#define MCF_GPIO_PAR_FBCS_PAR_CS2 (0x04)
-#define MCF_GPIO_PAR_FBCS_PAR_CS3 (0x08)
-#define MCF_GPIO_PAR_FBCS_PAR_CS4 (0x10)
-#define MCF_GPIO_PAR_FBCS_PAR_CS5 (0x20)
-
-/* Bit definitions and macros for MCF_GPIO_PAR_DMA */
-#define MCF_GPIO_PAR_DMA_PAR_DREQ0(x) (((x)&0x03)<<0)
-#define MCF_GPIO_PAR_DMA_PAR_DREQ1(x) (((x)&0x03)<<2)
-#define MCF_GPIO_PAR_DMA_PAR_DACK0(x) (((x)&0x03)<<4)
-#define MCF_GPIO_PAR_DMA_PAR_DACK1(x) (((x)&0x03)<<6)
-#define MCF_GPIO_PAR_DMA_PAR_DACKx_GPIO (0)
-#define MCF_GPIO_PAR_DMA_PAR_DACKx_TOUT (2)
-#define MCF_GPIO_PAR_DMA_PAR_DACKx_DACK (3)
-#define MCF_GPIO_PAR_DMA_PAR_DREQx_GPIO (0)
-#define MCF_GPIO_PAR_DMA_PAR_DREQx_TIN (2)
-#define MCF_GPIO_PAR_DMA_PAR_DREQx_DREQ (3)
-
-/* Bit definitions and macros for MCF_GPIO_PAR_FECI2CIRQ */
-#define MCF_GPIO_PAR_FECI2CIRQ_PAR_IRQ5 (0x0001)
-#define MCF_GPIO_PAR_FECI2CIRQ_PAR_IRQ6 (0x0002)
-#define MCF_GPIO_PAR_FECI2CIRQ_PAR_SCL (0x0004)
-#define MCF_GPIO_PAR_FECI2CIRQ_PAR_SDA (0x0008)
-#define MCF_GPIO_PAR_FECI2CIRQ_PAR_E1MDC(x) (((x)&0x0003)<<6)
-#define MCF_GPIO_PAR_FECI2CIRQ_PAR_E1MDIO(x) (((x)&0x0003)<<8)
-#define MCF_GPIO_PAR_FECI2CIRQ_PAR_E1MII (0x0400)
-#define MCF_GPIO_PAR_FECI2CIRQ_PAR_E17 (0x0800)
-#define MCF_GPIO_PAR_FECI2CIRQ_PAR_E0MDC (0x1000)
-#define MCF_GPIO_PAR_FECI2CIRQ_PAR_E0MDIO (0x2000)
-#define MCF_GPIO_PAR_FECI2CIRQ_PAR_E0MII (0x4000)
-#define MCF_GPIO_PAR_FECI2CIRQ_PAR_E07 (0x8000)
-#define MCF_GPIO_PAR_FECI2CIRQ_PAR_E1MDIO_CANRX (0x0000)
-#define MCF_GPIO_PAR_FECI2CIRQ_PAR_E1MDIO_SDA (0x0200)
-#define MCF_GPIO_PAR_FECI2CIRQ_PAR_E1MDIO_EMDIO (0x0300)
-#define MCF_GPIO_PAR_FECI2CIRQ_PAR_E1MDC_CANTX (0x0000)
-#define MCF_GPIO_PAR_FECI2CIRQ_PAR_E1MDC_SCL (0x0080)
-#define MCF_GPIO_PAR_FECI2CIRQ_PAR_E1MDC_EMDC (0x00C0)
-
-/* Bit definitions and macros for MCF_GPIO_PAR_PCIBG */
-#define MCF_GPIO_PAR_PCIBG_PAR_PCIBG0(x) (((x)&0x0003)<<0)
-#define MCF_GPIO_PAR_PCIBG_PAR_PCIBG1(x) (((x)&0x0003)<<2)
-#define MCF_GPIO_PAR_PCIBG_PAR_PCIBG2(x) (((x)&0x0003)<<4)
-#define MCF_GPIO_PAR_PCIBG_PAR_PCIBG3(x) (((x)&0x0003)<<6)
-#define MCF_GPIO_PAR_PCIBG_PAR_PCIBG4(x) (((x)&0x0003)<<8)
-
-/* Bit definitions and macros for MCF_GPIO_PAR_PCIBR */
-#define MCF_GPIO_PAR_PCIBR_PAR_PCIBR0(x) (((x)&0x0003)<<0)
-#define MCF_GPIO_PAR_PCIBR_PAR_PCIBR1(x) (((x)&0x0003)<<2)
-#define MCF_GPIO_PAR_PCIBR_PAR_PCIBR2(x) (((x)&0x0003)<<4)
-#define MCF_GPIO_PAR_PCIBR_PAR_PCIBR3(x) (((x)&0x0003)<<6)
-#define MCF_GPIO_PAR_PCIBR_PAR_PCIBR4(x) (((x)&0x0003)<<8)
-
-/* Bit definitions and macros for MCF_GPIO_PAR_PSC3 */
-#define MCF_GPIO_PAR_PSC3_PAR_TXD3 (0x04)
-#define MCF_GPIO_PAR_PSC3_PAR_RXD3 (0x08)
-#define MCF_GPIO_PAR_PSC3_PAR_RTS3(x) (((x)&0x03)<<4)
-#define MCF_GPIO_PAR_PSC3_PAR_CTS3(x) (((x)&0x03)<<6)
-#define MCF_GPIO_PAR_PSC3_PAR_CTS3_GPIO (0x00)
-#define MCF_GPIO_PAR_PSC3_PAR_CTS3_BCLK (0x80)
-#define MCF_GPIO_PAR_PSC3_PAR_CTS3_CTS (0xC0)
-#define MCF_GPIO_PAR_PSC3_PAR_RTS3_GPIO (0x00)
-#define MCF_GPIO_PAR_PSC3_PAR_RTS3_FSYNC (0x20)
-#define MCF_GPIO_PAR_PSC3_PAR_RTS3_RTS (0x30)
-#define MCF_GPIO_PAR_PSC3_PAR_CTS2_CANRX (0x40)
-
-/* Bit definitions and macros for MCF_GPIO_PAR_PSC2 */
-#define MCF_GPIO_PAR_PSC2_PAR_TXD2 (0x04)
-#define MCF_GPIO_PAR_PSC2_PAR_RXD2 (0x08)
-#define MCF_GPIO_PAR_PSC2_PAR_RTS2(x) (((x)&0x03)<<4)
-#define MCF_GPIO_PAR_PSC2_PAR_CTS2(x) (((x)&0x03)<<6)
-#define MCF_GPIO_PAR_PSC2_PAR_CTS2_GPIO (0x00)
-#define MCF_GPIO_PAR_PSC2_PAR_CTS2_BCLK (0x80)
-#define MCF_GPIO_PAR_PSC2_PAR_CTS2_CTS (0xC0)
-#define MCF_GPIO_PAR_PSC2_PAR_RTS2_GPIO (0x00)
-#define MCF_GPIO_PAR_PSC2_PAR_RTS2_CANTX (0x10)
-#define MCF_GPIO_PAR_PSC2_PAR_RTS2_FSYNC (0x20)
-#define MCF_GPIO_PAR_PSC2_PAR_RTS2_RTS (0x30)
-
-/* Bit definitions and macros for MCF_GPIO_PAR_PSC1 */
-#define MCF_GPIO_PAR_PSC1_PAR_TXD1 (0x04)
-#define MCF_GPIO_PAR_PSC1_PAR_RXD1 (0x08)
-#define MCF_GPIO_PAR_PSC1_PAR_RTS1(x) (((x)&0x03)<<4)
-#define MCF_GPIO_PAR_PSC1_PAR_CTS1(x) (((x)&0x03)<<6)
-#define MCF_GPIO_PAR_PSC1_PAR_CTS1_GPIO (0x00)
-#define MCF_GPIO_PAR_PSC1_PAR_CTS1_BCLK (0x80)
-#define MCF_GPIO_PAR_PSC1_PAR_CTS1_CTS (0xC0)
-#define MCF_GPIO_PAR_PSC1_PAR_RTS1_GPIO (0x00)
-#define MCF_GPIO_PAR_PSC1_PAR_RTS1_FSYNC (0x20)
-#define MCF_GPIO_PAR_PSC1_PAR_RTS1_RTS (0x30)
-
-/* Bit definitions and macros for MCF_GPIO_PAR_PSC0 */
-#define MCF_GPIO_PAR_PSC0_PAR_TXD0 (0x04)
-#define MCF_GPIO_PAR_PSC0_PAR_RXD0 (0x08)
-#define MCF_GPIO_PAR_PSC0_PAR_RTS0(x) (((x)&0x03)<<4)
-#define MCF_GPIO_PAR_PSC0_PAR_CTS0(x) (((x)&0x03)<<6)
-#define MCF_GPIO_PAR_PSC0_PAR_CTS0_GPIO (0x00)
-#define MCF_GPIO_PAR_PSC0_PAR_CTS0_BCLK (0x80)
-#define MCF_GPIO_PAR_PSC0_PAR_CTS0_CTS (0xC0)
-#define MCF_GPIO_PAR_PSC0_PAR_RTS0_GPIO (0x00)
-#define MCF_GPIO_PAR_PSC0_PAR_RTS0_FSYNC (0x20)
-#define MCF_GPIO_PAR_PSC0_PAR_RTS0_RTS (0x30)
-
-/* Bit definitions and macros for MCF_GPIO_PAR_DSPI */
-#define MCF_GPIO_PAR_DSPI_PAR_SOUT(x) (((x)&0x0003)<<0)
-#define MCF_GPIO_PAR_DSPI_PAR_SIN(x) (((x)&0x0003)<<2)
-#define MCF_GPIO_PAR_DSPI_PAR_SCK(x) (((x)&0x0003)<<4)
-#define MCF_GPIO_PAR_DSPI_PAR_CS0(x) (((x)&0x0003)<<6)
-#define MCF_GPIO_PAR_DSPI_PAR_CS2(x) (((x)&0x0003)<<8)
-#define MCF_GPIO_PAR_DSPI_PAR_CS3(x) (((x)&0x0003)<<10)
-#define MCF_GPIO_PAR_DSPI_PAR_CS5 (0x1000)
-#define MCF_GPIO_PAR_DSPI_PAR_CS3_GPIO (0x0000)
-#define MCF_GPIO_PAR_DSPI_PAR_CS3_CANTX (0x0400)
-#define MCF_GPIO_PAR_DSPI_PAR_CS3_TOUT (0x0800)
-#define MCF_GPIO_PAR_DSPI_PAR_CS3_DSPICS (0x0C00)
-#define MCF_GPIO_PAR_DSPI_PAR_CS2_GPIO (0x0000)
-#define MCF_GPIO_PAR_DSPI_PAR_CS2_CANTX (0x0100)
-#define MCF_GPIO_PAR_DSPI_PAR_CS2_TOUT (0x0200)
-#define MCF_GPIO_PAR_DSPI_PAR_CS2_DSPICS (0x0300)
-#define MCF_GPIO_PAR_DSPI_PAR_CS0_GPIO (0x0000)
-#define MCF_GPIO_PAR_DSPI_PAR_CS0_FSYNC (0x0040)
-#define MCF_GPIO_PAR_DSPI_PAR_CS0_RTS (0x0080)
-#define MCF_GPIO_PAR_DSPI_PAR_CS0_DSPICS (0x00C0)
-#define MCF_GPIO_PAR_DSPI_PAR_SCK_GPIO (0x0000)
-#define MCF_GPIO_PAR_DSPI_PAR_SCK_BCLK (0x0010)
-#define MCF_GPIO_PAR_DSPI_PAR_SCK_CTS (0x0020)
-#define MCF_GPIO_PAR_DSPI_PAR_SCK_SCK (0x0030)
-#define MCF_GPIO_PAR_DSPI_PAR_SIN_GPIO (0x0000)
-#define MCF_GPIO_PAR_DSPI_PAR_SIN_RXD (0x0008)
-#define MCF_GPIO_PAR_DSPI_PAR_SIN_SIN (0x000C)
-#define MCF_GPIO_PAR_DSPI_PAR_SOUT_GPIO (0x0000)
-#define MCF_GPIO_PAR_DSPI_PAR_SOUT_TXD (0x0002)
-#define MCF_GPIO_PAR_DSPI_PAR_SOUT_SOUT (0x0003)
-
-/* Bit definitions and macros for MCF_GPIO_PAR_TIMER */
-#define MCF_GPIO_PAR_TIMER_PAR_TOUT2 (0x01)
-#define MCF_GPIO_PAR_TIMER_PAR_TIN2(x) (((x)&0x03)<<1)
-#define MCF_GPIO_PAR_TIMER_PAR_TOUT3 (0x08)
-#define MCF_GPIO_PAR_TIMER_PAR_TIN3(x) (((x)&0x03)<<4)
-#define MCF_GPIO_PAR_TIMER_PAR_TIN3_CANRX (0x00)
-#define MCF_GPIO_PAR_TIMER_PAR_TIN3_IRQ (0x20)
-#define MCF_GPIO_PAR_TIMER_PAR_TIN3_TIN (0x30)
-#define MCF_GPIO_PAR_TIMER_PAR_TIN2_CANRX (0x00)
-#define MCF_GPIO_PAR_TIMER_PAR_TIN2_IRQ (0x04)
-#define MCF_GPIO_PAR_TIMER_PAR_TIN2_TIN (0x06)
-
-#endif /* __MCF548X_GPIO_H__ */
diff --git a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_gpt.h b/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_gpt.h
deleted file mode 100644
index 4ec8fdffca..0000000000
--- a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_gpt.h
+++ /dev/null
@@ -1,100 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Register and bit definitions for the MCF548X and MCF547x
- * General Purpose Timers (GPT)
- */
-#ifndef __MCF548X_GPT_H__
-#define __MCF548X_GPT_H__
-
-/*
- * General Purpose Timers (GPT)
- */
-
-/* Register read/write macros */
-#define MCF_GPT_GMS0 (*(vuint32_t*)(&__MBAR[0x000800]))
-#define MCF_GPT_GCIR0 (*(vuint32_t*)(&__MBAR[0x000804]))
-#define MCF_GPT_GPWM0 (*(vuint32_t*)(&__MBAR[0x000808]))
-#define MCF_GPT_GSR0 (*(vuint32_t*)(&__MBAR[0x00080C]))
-#define MCF_GPT_GMS1 (*(vuint32_t*)(&__MBAR[0x000810]))
-#define MCF_GPT_GCIR1 (*(vuint32_t*)(&__MBAR[0x000814]))
-#define MCF_GPT_GPWM1 (*(vuint32_t*)(&__MBAR[0x000818]))
-#define MCF_GPT_GSR1 (*(vuint32_t*)(&__MBAR[0x00081C]))
-#define MCF_GPT_GMS2 (*(vuint32_t*)(&__MBAR[0x000820]))
-#define MCF_GPT_GCIR2 (*(vuint32_t*)(&__MBAR[0x000824]))
-#define MCF_GPT_GPWM2 (*(vuint32_t*)(&__MBAR[0x000828]))
-#define MCF_GPT_GSR2 (*(vuint32_t*)(&__MBAR[0x00082C]))
-#define MCF_GPT_GMS3 (*(vuint32_t*)(&__MBAR[0x000830]))
-#define MCF_GPT_GCIR3 (*(vuint32_t*)(&__MBAR[0x000834]))
-#define MCF_GPT_GPWM3 (*(vuint32_t*)(&__MBAR[0x000838]))
-#define MCF_GPT_GSR3 (*(vuint32_t*)(&__MBAR[0x00083C]))
-#define MCF_GPT_GMS(x) (*(vuint32_t*)(&__MBAR[0x000800+((x)*0x010)]))
-#define MCF_GPT_GCIR(x) (*(vuint32_t*)(&__MBAR[0x000804+((x)*0x010)]))
-#define MCF_GPT_GPWM(x) (*(vuint32_t*)(&__MBAR[0x000808+((x)*0x010)]))
-#define MCF_GPT_GSR(x) (*(vuint32_t*)(&__MBAR[0x00080C+((x)*0x010)]))
-
-/* Bit definitions and macros for MCF_GPT_GMS */
-#define MCF_GPT_GMS_TMS(x) (((x)&0x00000007)<<0)
-#define MCF_GPT_GMS_GPIO(x) (((x)&0x00000003)<<4)
-#define MCF_GPT_GMS_IEN (0x00000100)
-#define MCF_GPT_GMS_OD (0x00000200)
-#define MCF_GPT_GMS_SC (0x00000400)
-#define MCF_GPT_GMS_CE (0x00001000)
-#define MCF_GPT_GMS_WDEN (0x00008000)
-#define MCF_GPT_GMS_ICT(x) (((x)&0x00000003)<<16)
-#define MCF_GPT_GMS_OCT(x) (((x)&0x00000003)<<20)
-#define MCF_GPT_GMS_OCPW(x) (((x)&0x000000FF)<<24)
-#define MCF_GPT_GMS_OCT_FRCLOW (0x00000000)
-#define MCF_GPT_GMS_OCT_PULSEHI (0x00100000)
-#define MCF_GPT_GMS_OCT_PULSELO (0x00200000)
-#define MCF_GPT_GMS_OCT_TOGGLE (0x00300000)
-#define MCF_GPT_GMS_ICT_ANY (0x00000000)
-#define MCF_GPT_GMS_ICT_RISE (0x00010000)
-#define MCF_GPT_GMS_ICT_FALL (0x00020000)
-#define MCF_GPT_GMS_ICT_PULSE (0x00030000)
-#define MCF_GPT_GMS_GPIO_INPUT (0x00000000)
-#define MCF_GPT_GMS_GPIO_OUTLO (0x00000020)
-#define MCF_GPT_GMS_GPIO_OUTHI (0x00000030)
-#define MCF_GPT_GMS_TMS_DISABLE (0x00000000)
-#define MCF_GPT_GMS_TMS_INCAPT (0x00000001)
-#define MCF_GPT_GMS_TMS_OUTCAPT (0x00000002)
-#define MCF_GPT_GMS_TMS_PWM (0x00000003)
-#define MCF_GPT_GMS_TMS_GPIO (0x00000004)
-
-/* Bit definitions and macros for MCF_GPT_GCIR */
-#define MCF_GPT_GCIR_CNT(x) (((x)&0x0000FFFF)<<0)
-#define MCF_GPT_GCIR_PRE(x) (((x)&0x0000FFFF)<<16)
-
-/* Bit definitions and macros for MCF_GPT_GPWM */
-#define MCF_GPT_GPWM_LOAD (0x00000001)
-#define MCF_GPT_GPWM_PWMOP (0x00000100)
-#define MCF_GPT_GPWM_WIDTH(x) (((x)&0x0000FFFF)<<16)
-
-/* Bit definitions and macros for MCF_GPT_GSR */
-#define MCF_GPT_GSR_CAPT (0x00000001)
-#define MCF_GPT_GSR_COMP (0x00000002)
-#define MCF_GPT_GSR_PWMP (0x00000004)
-#define MCF_GPT_GSR_TEXP (0x00000008)
-#define MCF_GPT_GSR_PIN (0x00000100)
-#define MCF_GPT_GSR_OVF(x) (((x)&0x00000007)<<12)
-#define MCF_GPT_GSR_CAPTURE(x) (((x)&0x0000FFFF)<<16)
-
-#endif /* __MCF548X_GPT_H__ */
diff --git a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_i2c.h b/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_i2c.h
deleted file mode 100644
index 9f54aaeadb..0000000000
--- a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_i2c.h
+++ /dev/null
@@ -1,69 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Register and bit definitions for the MCF548X and MCF547x
- * I2C Module (I2C)
- */
-#ifndef __MCF548X_I2C_H__
-#define __MCF548X_I2C_H__
-
-/*
- * I2C Module (I2C)
- */
-
-/* Register read/write macros */
-#define MCF_I2C_I2AR (*(vuint8_t *)(&__MBAR[0x008F00]))
-#define MCF_I2C_I2FDR (*(vuint8_t *)(&__MBAR[0x008F04]))
-#define MCF_I2C_I2CR (*(vuint8_t *)(&__MBAR[0x008F08]))
-#define MCF_I2C_I2SR (*(vuint8_t *)(&__MBAR[0x008F0C]))
-#define MCF_I2C_I2DR (*(vuint8_t *)(&__MBAR[0x008F10]))
-#define MCF_I2C_I2ICR (*(vuint8_t *)(&__MBAR[0x008F20]))
-
-/* Bit definitions and macros for MCF_I2C_I2AR */
-#define MCF_I2C_I2AR_ADR(x) (((x)&0x7F)<<1)
-
-/* Bit definitions and macros for MCF_I2C_I2FDR */
-#define MCF_I2C_I2FDR_IC(x) (((x)&0x3F)<<0)
-
-/* Bit definitions and macros for MCF_I2C_I2CR */
-#define MCF_I2C_I2CR_RSTA (0x04)
-#define MCF_I2C_I2CR_TXAK (0x08)
-#define MCF_I2C_I2CR_MTX (0x10)
-#define MCF_I2C_I2CR_MSTA (0x20)
-#define MCF_I2C_I2CR_IIEN (0x40)
-#define MCF_I2C_I2CR_IEN (0x80)
-
-/* Bit definitions and macros for MCF_I2C_I2SR */
-#define MCF_I2C_I2SR_RXAK (0x01)
-#define MCF_I2C_I2SR_IIF (0x02)
-#define MCF_I2C_I2SR_SRW (0x04)
-#define MCF_I2C_I2SR_IAL (0x10)
-#define MCF_I2C_I2SR_IBB (0x20)
-#define MCF_I2C_I2SR_IAAS (0x40)
-#define MCF_I2C_I2SR_ICF (0x80)
-
-/* Bit definitions and macros for MCF_I2C_I2ICR */
-#define MCF_I2C_I2ICR_IE (0x01)
-#define MCF_I2C_I2ICR_RE (0x02)
-#define MCF_I2C_I2ICR_TE (0x04)
-#define MCF_I2C_I2ICR_BNBE (0x08)
-
-#endif /* __MCF548X_I2C_H__ */
diff --git a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_intc.h b/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_intc.h
deleted file mode 100644
index fa3a2c9dbe..0000000000
--- a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_intc.h
+++ /dev/null
@@ -1,329 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Register and bit definitions for the MCF548X and MCF547x
- * Interrupt Controller (INTC)
- */
-#ifndef __MCF548X_INTC_H__
-#define __MCF548X_INTC_H__
-
-/*
- * Interrupt Controller (INTC)
- */
-
-/* Register read/write macros */
-#define MCF_INTC_IPRH (*(vuint32_t*)(&__MBAR[0x000700]))
-#define MCF_INTC_IPRL (*(vuint32_t*)(&__MBAR[0x000704]))
-#define MCF_INTC_IMRH (*(vuint32_t*)(&__MBAR[0x000708]))
-#define MCF_INTC_IMRL (*(vuint32_t*)(&__MBAR[0x00070C]))
-#define MCF_INTC_INTFRCH (*(vuint32_t*)(&__MBAR[0x000710]))
-#define MCF_INTC_INTFRCL (*(vuint32_t*)(&__MBAR[0x000714]))
-#define MCF_INTC_IRLR (*(vuint8_t *)(&__MBAR[0x000718]))
-#define MCF_INTC_IACKLPR (*(vuint8_t *)(&__MBAR[0x000719]))
-#define MCF_INTC_ICR0 (*(vuint8_t *)(&__MBAR[0x000740]))
-#define MCF_INTC_ICR1 (*(vuint8_t *)(&__MBAR[0x000741]))
-#define MCF_INTC_ICR2 (*(vuint8_t *)(&__MBAR[0x000742]))
-#define MCF_INTC_ICR3 (*(vuint8_t *)(&__MBAR[0x000743]))
-#define MCF_INTC_ICR4 (*(vuint8_t *)(&__MBAR[0x000744]))
-#define MCF_INTC_ICR5 (*(vuint8_t *)(&__MBAR[0x000745]))
-#define MCF_INTC_ICR6 (*(vuint8_t *)(&__MBAR[0x000746]))
-#define MCF_INTC_ICR7 (*(vuint8_t *)(&__MBAR[0x000747]))
-#define MCF_INTC_ICR8 (*(vuint8_t *)(&__MBAR[0x000748]))
-#define MCF_INTC_ICR9 (*(vuint8_t *)(&__MBAR[0x000749]))
-#define MCF_INTC_ICR10 (*(vuint8_t *)(&__MBAR[0x00074A]))
-#define MCF_INTC_ICR11 (*(vuint8_t *)(&__MBAR[0x00074B]))
-#define MCF_INTC_ICR12 (*(vuint8_t *)(&__MBAR[0x00074C]))
-#define MCF_INTC_ICR13 (*(vuint8_t *)(&__MBAR[0x00074D]))
-#define MCF_INTC_ICR14 (*(vuint8_t *)(&__MBAR[0x00074E]))
-#define MCF_INTC_ICR15 (*(vuint8_t *)(&__MBAR[0x00074F]))
-#define MCF_INTC_ICR16 (*(vuint8_t *)(&__MBAR[0x000750]))
-#define MCF_INTC_ICR17 (*(vuint8_t *)(&__MBAR[0x000751]))
-#define MCF_INTC_ICR18 (*(vuint8_t *)(&__MBAR[0x000752]))
-#define MCF_INTC_ICR19 (*(vuint8_t *)(&__MBAR[0x000753]))
-#define MCF_INTC_ICR20 (*(vuint8_t *)(&__MBAR[0x000754]))
-#define MCF_INTC_ICR21 (*(vuint8_t *)(&__MBAR[0x000755]))
-#define MCF_INTC_ICR22 (*(vuint8_t *)(&__MBAR[0x000756]))
-#define MCF_INTC_ICR23 (*(vuint8_t *)(&__MBAR[0x000757]))
-#define MCF_INTC_ICR24 (*(vuint8_t *)(&__MBAR[0x000758]))
-#define MCF_INTC_ICR25 (*(vuint8_t *)(&__MBAR[0x000759]))
-#define MCF_INTC_ICR26 (*(vuint8_t *)(&__MBAR[0x00075A]))
-#define MCF_INTC_ICR27 (*(vuint8_t *)(&__MBAR[0x00075B]))
-#define MCF_INTC_ICR28 (*(vuint8_t *)(&__MBAR[0x00075C]))
-#define MCF_INTC_ICR29 (*(vuint8_t *)(&__MBAR[0x00075D]))
-#define MCF_INTC_ICR30 (*(vuint8_t *)(&__MBAR[0x00075E]))
-#define MCF_INTC_ICR31 (*(vuint8_t *)(&__MBAR[0x00075F]))
-#define MCF_INTC_ICR32 (*(vuint8_t *)(&__MBAR[0x000760]))
-#define MCF_INTC_ICR33 (*(vuint8_t *)(&__MBAR[0x000761]))
-#define MCF_INTC_ICR34 (*(vuint8_t *)(&__MBAR[0x000762]))
-#define MCF_INTC_ICR35 (*(vuint8_t *)(&__MBAR[0x000763]))
-#define MCF_INTC_ICR36 (*(vuint8_t *)(&__MBAR[0x000764]))
-#define MCF_INTC_ICR37 (*(vuint8_t *)(&__MBAR[0x000765]))
-#define MCF_INTC_ICR38 (*(vuint8_t *)(&__MBAR[0x000766]))
-#define MCF_INTC_ICR39 (*(vuint8_t *)(&__MBAR[0x000767]))
-#define MCF_INTC_ICR40 (*(vuint8_t *)(&__MBAR[0x000768]))
-#define MCF_INTC_ICR41 (*(vuint8_t *)(&__MBAR[0x000769]))
-#define MCF_INTC_ICR42 (*(vuint8_t *)(&__MBAR[0x00076A]))
-#define MCF_INTC_ICR43 (*(vuint8_t *)(&__MBAR[0x00076B]))
-#define MCF_INTC_ICR44 (*(vuint8_t *)(&__MBAR[0x00076C]))
-#define MCF_INTC_ICR45 (*(vuint8_t *)(&__MBAR[0x00076D]))
-#define MCF_INTC_ICR46 (*(vuint8_t *)(&__MBAR[0x00076E]))
-#define MCF_INTC_ICR47 (*(vuint8_t *)(&__MBAR[0x00076F]))
-#define MCF_INTC_ICR48 (*(vuint8_t *)(&__MBAR[0x000770]))
-#define MCF_INTC_ICR49 (*(vuint8_t *)(&__MBAR[0x000771]))
-#define MCF_INTC_ICR50 (*(vuint8_t *)(&__MBAR[0x000772]))
-#define MCF_INTC_ICR51 (*(vuint8_t *)(&__MBAR[0x000773]))
-#define MCF_INTC_ICR52 (*(vuint8_t *)(&__MBAR[0x000774]))
-#define MCF_INTC_ICR53 (*(vuint8_t *)(&__MBAR[0x000775]))
-#define MCF_INTC_ICR54 (*(vuint8_t *)(&__MBAR[0x000776]))
-#define MCF_INTC_ICR55 (*(vuint8_t *)(&__MBAR[0x000777]))
-#define MCF_INTC_ICR56 (*(vuint8_t *)(&__MBAR[0x000778]))
-#define MCF_INTC_ICR57 (*(vuint8_t *)(&__MBAR[0x000779]))
-#define MCF_INTC_ICR58 (*(vuint8_t *)(&__MBAR[0x00077A]))
-#define MCF_INTC_ICR59 (*(vuint8_t *)(&__MBAR[0x00077B]))
-#define MCF_INTC_ICR60 (*(vuint8_t *)(&__MBAR[0x00077C]))
-#define MCF_INTC_ICR61 (*(vuint8_t *)(&__MBAR[0x00077D]))
-#define MCF_INTC_ICR62 (*(vuint8_t *)(&__MBAR[0x00077E]))
-#define MCF_INTC_ICR63 (*(vuint8_t *)(&__MBAR[0x00077F]))
-#define MCF_INTC_ICRn(x) (*(vuint8_t *)(&__MBAR[0x000740+((x)*0x001)]))
-#define MCF_INTC_SWIACK (*(vuint8_t *)(&__MBAR[0x0007E0]))
-#define MCF_INTC_L1IACK (*(vuint8_t *)(&__MBAR[0x0007E4]))
-#define MCF_INTC_L2IACK (*(vuint8_t *)(&__MBAR[0x0007E8]))
-#define MCF_INTC_L3IACK (*(vuint8_t *)(&__MBAR[0x0007EC]))
-#define MCF_INTC_L4IACK (*(vuint8_t *)(&__MBAR[0x0007F0]))
-#define MCF_INTC_L5IACK (*(vuint8_t *)(&__MBAR[0x0007F4]))
-#define MCF_INTC_L6IACK (*(vuint8_t *)(&__MBAR[0x0007F8]))
-#define MCF_INTC_L7IACK (*(vuint8_t *)(&__MBAR[0x0007FC]))
-#define MCF_INTC_LnIACK(x) (*(vuint8_t *)(&__MBAR[0x0007E4+((x)*0x004)]))
-
-/* Bit definitions and macros for MCF_INTC_IPRH */
-#define MCF_INTC_IPRH_INT32 (0x00000001)
-#define MCF_INTC_IPRH_INT33 (0x00000002)
-#define MCF_INTC_IPRH_INT34 (0x00000004)
-#define MCF_INTC_IPRH_INT35 (0x00000008)
-#define MCF_INTC_IPRH_INT36 (0x00000010)
-#define MCF_INTC_IPRH_INT37 (0x00000020)
-#define MCF_INTC_IPRH_INT38 (0x00000040)
-#define MCF_INTC_IPRH_INT39 (0x00000080)
-#define MCF_INTC_IPRH_INT40 (0x00000100)
-#define MCF_INTC_IPRH_INT41 (0x00000200)
-#define MCF_INTC_IPRH_INT42 (0x00000400)
-#define MCF_INTC_IPRH_INT43 (0x00000800)
-#define MCF_INTC_IPRH_INT44 (0x00001000)
-#define MCF_INTC_IPRH_INT45 (0x00002000)
-#define MCF_INTC_IPRH_INT46 (0x00004000)
-#define MCF_INTC_IPRH_INT47 (0x00008000)
-#define MCF_INTC_IPRH_INT48 (0x00010000)
-#define MCF_INTC_IPRH_INT49 (0x00020000)
-#define MCF_INTC_IPRH_INT50 (0x00040000)
-#define MCF_INTC_IPRH_INT51 (0x00080000)
-#define MCF_INTC_IPRH_INT52 (0x00100000)
-#define MCF_INTC_IPRH_INT53 (0x00200000)
-#define MCF_INTC_IPRH_INT54 (0x00400000)
-#define MCF_INTC_IPRH_INT55 (0x00800000)
-#define MCF_INTC_IPRH_INT56 (0x01000000)
-#define MCF_INTC_IPRH_INT57 (0x02000000)
-#define MCF_INTC_IPRH_INT58 (0x04000000)
-#define MCF_INTC_IPRH_INT59 (0x08000000)
-#define MCF_INTC_IPRH_INT60 (0x10000000)
-#define MCF_INTC_IPRH_INT61 (0x20000000)
-#define MCF_INTC_IPRH_INT62 (0x40000000)
-#define MCF_INTC_IPRH_INT63 (0x80000000)
-
-/* Bit definitions and macros for MCF_INTC_IPRL */
-#define MCF_INTC_IPRL_INT1 (0x00000002)
-#define MCF_INTC_IPRL_INT2 (0x00000004)
-#define MCF_INTC_IPRL_INT3 (0x00000008)
-#define MCF_INTC_IPRL_INT4 (0x00000010)
-#define MCF_INTC_IPRL_INT5 (0x00000020)
-#define MCF_INTC_IPRL_INT6 (0x00000040)
-#define MCF_INTC_IPRL_INT7 (0x00000080)
-#define MCF_INTC_IPRL_INT8 (0x00000100)
-#define MCF_INTC_IPRL_INT9 (0x00000200)
-#define MCF_INTC_IPRL_INT10 (0x00000400)
-#define MCF_INTC_IPRL_INT11 (0x00000800)
-#define MCF_INTC_IPRL_INT12 (0x00001000)
-#define MCF_INTC_IPRL_INT13 (0x00002000)
-#define MCF_INTC_IPRL_INT14 (0x00004000)
-#define MCF_INTC_IPRL_INT15 (0x00008000)
-#define MCF_INTC_IPRL_INT16 (0x00010000)
-#define MCF_INTC_IPRL_INT17 (0x00020000)
-#define MCF_INTC_IPRL_INT18 (0x00040000)
-#define MCF_INTC_IPRL_INT19 (0x00080000)
-#define MCF_INTC_IPRL_INT20 (0x00100000)
-#define MCF_INTC_IPRL_INT21 (0x00200000)
-#define MCF_INTC_IPRL_INT22 (0x00400000)
-#define MCF_INTC_IPRL_INT23 (0x00800000)
-#define MCF_INTC_IPRL_INT24 (0x01000000)
-#define MCF_INTC_IPRL_INT25 (0x02000000)
-#define MCF_INTC_IPRL_INT26 (0x04000000)
-#define MCF_INTC_IPRL_INT27 (0x08000000)
-#define MCF_INTC_IPRL_INT28 (0x10000000)
-#define MCF_INTC_IPRL_INT29 (0x20000000)
-#define MCF_INTC_IPRL_INT30 (0x40000000)
-#define MCF_INTC_IPRL_INT31 (0x80000000)
-
-/* Bit definitions and macros for MCF_INTC_IMRH */
-#define MCF_INTC_IMRH_INT_MASK32 (0x00000001)
-#define MCF_INTC_IMRH_INT_MASK33 (0x00000002)
-#define MCF_INTC_IMRH_INT_MASK34 (0x00000004)
-#define MCF_INTC_IMRH_INT_MASK35 (0x00000008)
-#define MCF_INTC_IMRH_INT_MASK36 (0x00000010)
-#define MCF_INTC_IMRH_INT_MASK37 (0x00000020)
-#define MCF_INTC_IMRH_INT_MASK38 (0x00000040)
-#define MCF_INTC_IMRH_INT_MASK39 (0x00000080)
-#define MCF_INTC_IMRH_INT_MASK40 (0x00000100)
-#define MCF_INTC_IMRH_INT_MASK41 (0x00000200)
-#define MCF_INTC_IMRH_INT_MASK42 (0x00000400)
-#define MCF_INTC_IMRH_INT_MASK43 (0x00000800)
-#define MCF_INTC_IMRH_INT_MASK44 (0x00001000)
-#define MCF_INTC_IMRH_INT_MASK45 (0x00002000)
-#define MCF_INTC_IMRH_INT_MASK46 (0x00004000)
-#define MCF_INTC_IMRH_INT_MASK47 (0x00008000)
-#define MCF_INTC_IMRH_INT_MASK48 (0x00010000)
-#define MCF_INTC_IMRH_INT_MASK49 (0x00020000)
-#define MCF_INTC_IMRH_INT_MASK50 (0x00040000)
-#define MCF_INTC_IMRH_INT_MASK51 (0x00080000)
-#define MCF_INTC_IMRH_INT_MASK52 (0x00100000)
-#define MCF_INTC_IMRH_INT_MASK53 (0x00200000)
-#define MCF_INTC_IMRH_INT_MASK54 (0x00400000)
-#define MCF_INTC_IMRH_INT_MASK55 (0x00800000)
-#define MCF_INTC_IMRH_INT_MASK56 (0x01000000)
-#define MCF_INTC_IMRH_INT_MASK57 (0x02000000)
-#define MCF_INTC_IMRH_INT_MASK58 (0x04000000)
-#define MCF_INTC_IMRH_INT_MASK59 (0x08000000)
-#define MCF_INTC_IMRH_INT_MASK60 (0x10000000)
-#define MCF_INTC_IMRH_INT_MASK61 (0x20000000)
-#define MCF_INTC_IMRH_INT_MASK62 (0x40000000)
-#define MCF_INTC_IMRH_INT_MASK63 (0x80000000)
-
-/* Bit definitions and macros for MCF_INTC_IMRL */
-#define MCF_INTC_IMRL_MASKALL (0x00000001)
-#define MCF_INTC_IMRL_INT_MASK1 (0x00000002)
-#define MCF_INTC_IMRL_INT_MASK2 (0x00000004)
-#define MCF_INTC_IMRL_INT_MASK3 (0x00000008)
-#define MCF_INTC_IMRL_INT_MASK4 (0x00000010)
-#define MCF_INTC_IMRL_INT_MASK5 (0x00000020)
-#define MCF_INTC_IMRL_INT_MASK6 (0x00000040)
-#define MCF_INTC_IMRL_INT_MASK7 (0x00000080)
-#define MCF_INTC_IMRL_INT_MASK8 (0x00000100)
-#define MCF_INTC_IMRL_INT_MASK9 (0x00000200)
-#define MCF_INTC_IMRL_INT_MASK10 (0x00000400)
-#define MCF_INTC_IMRL_INT_MASK11 (0x00000800)
-#define MCF_INTC_IMRL_INT_MASK12 (0x00001000)
-#define MCF_INTC_IMRL_INT_MASK13 (0x00002000)
-#define MCF_INTC_IMRL_INT_MASK14 (0x00004000)
-#define MCF_INTC_IMRL_INT_MASK15 (0x00008000)
-#define MCF_INTC_IMRL_INT_MASK16 (0x00010000)
-#define MCF_INTC_IMRL_INT_MASK17 (0x00020000)
-#define MCF_INTC_IMRL_INT_MASK18 (0x00040000)
-#define MCF_INTC_IMRL_INT_MASK19 (0x00080000)
-#define MCF_INTC_IMRL_INT_MASK20 (0x00100000)
-#define MCF_INTC_IMRL_INT_MASK21 (0x00200000)
-#define MCF_INTC_IMRL_INT_MASK22 (0x00400000)
-#define MCF_INTC_IMRL_INT_MASK23 (0x00800000)
-#define MCF_INTC_IMRL_INT_MASK24 (0x01000000)
-#define MCF_INTC_IMRL_INT_MASK25 (0x02000000)
-#define MCF_INTC_IMRL_INT_MASK26 (0x04000000)
-#define MCF_INTC_IMRL_INT_MASK27 (0x08000000)
-#define MCF_INTC_IMRL_INT_MASK28 (0x10000000)
-#define MCF_INTC_IMRL_INT_MASK29 (0x20000000)
-#define MCF_INTC_IMRL_INT_MASK30 (0x40000000)
-#define MCF_INTC_IMRL_INT_MASK31 (0x80000000)
-
-/* Bit definitions and macros for MCF_INTC_INTFRCH */
-#define MCF_INTC_INTFRCH_INTFRC32 (0x00000001)
-#define MCF_INTC_INTFRCH_INTFRC33 (0x00000002)
-#define MCF_INTC_INTFRCH_INTFRC34 (0x00000004)
-#define MCF_INTC_INTFRCH_INTFRC35 (0x00000008)
-#define MCF_INTC_INTFRCH_INTFRC36 (0x00000010)
-#define MCF_INTC_INTFRCH_INTFRC37 (0x00000020)
-#define MCF_INTC_INTFRCH_INTFRC38 (0x00000040)
-#define MCF_INTC_INTFRCH_INTFRC39 (0x00000080)
-#define MCF_INTC_INTFRCH_INTFRC40 (0x00000100)
-#define MCF_INTC_INTFRCH_INTFRC41 (0x00000200)
-#define MCF_INTC_INTFRCH_INTFRC42 (0x00000400)
-#define MCF_INTC_INTFRCH_INTFRC43 (0x00000800)
-#define MCF_INTC_INTFRCH_INTFRC44 (0x00001000)
-#define MCF_INTC_INTFRCH_INTFRC45 (0x00002000)
-#define MCF_INTC_INTFRCH_INTFRC46 (0x00004000)
-#define MCF_INTC_INTFRCH_INTFRC47 (0x00008000)
-#define MCF_INTC_INTFRCH_INTFRC48 (0x00010000)
-#define MCF_INTC_INTFRCH_INTFRC49 (0x00020000)
-#define MCF_INTC_INTFRCH_INTFRC50 (0x00040000)
-#define MCF_INTC_INTFRCH_INTFRC51 (0x00080000)
-#define MCF_INTC_INTFRCH_INTFRC52 (0x00100000)
-#define MCF_INTC_INTFRCH_INTFRC53 (0x00200000)
-#define MCF_INTC_INTFRCH_INTFRC54 (0x00400000)
-#define MCF_INTC_INTFRCH_INTFRC55 (0x00800000)
-#define MCF_INTC_INTFRCH_INTFRC56 (0x01000000)
-#define MCF_INTC_INTFRCH_INTFRC57 (0x02000000)
-#define MCF_INTC_INTFRCH_INTFRC58 (0x04000000)
-#define MCF_INTC_INTFRCH_INTFRC59 (0x08000000)
-#define MCF_INTC_INTFRCH_INTFRC60 (0x10000000)
-#define MCF_INTC_INTFRCH_INTFRC61 (0x20000000)
-#define MCF_INTC_INTFRCH_INTFRC62 (0x40000000)
-#define MCF_INTC_INTFRCH_INTFRC63 (0x80000000)
-
-/* Bit definitions and macros for MCF_INTC_INTFRCL */
-#define MCF_INTC_INTFRCL_INTFRC1 (0x00000002)
-#define MCF_INTC_INTFRCL_INTFRC2 (0x00000004)
-#define MCF_INTC_INTFRCL_INTFRC3 (0x00000008)
-#define MCF_INTC_INTFRCL_INTFRC4 (0x00000010)
-#define MCF_INTC_INTFRCL_INTFRC5 (0x00000020)
-#define MCF_INTC_INTFRCL_INT6 (0x00000040)
-#define MCF_INTC_INTFRCL_INT7 (0x00000080)
-#define MCF_INTC_INTFRCL_INT8 (0x00000100)
-#define MCF_INTC_INTFRCL_INT9 (0x00000200)
-#define MCF_INTC_INTFRCL_INT10 (0x00000400)
-#define MCF_INTC_INTFRCL_INTFRC11 (0x00000800)
-#define MCF_INTC_INTFRCL_INTFRC12 (0x00001000)
-#define MCF_INTC_INTFRCL_INTFRC13 (0x00002000)
-#define MCF_INTC_INTFRCL_INTFRC14 (0x00004000)
-#define MCF_INTC_INTFRCL_INT15 (0x00008000)
-#define MCF_INTC_INTFRCL_INTFRC16 (0x00010000)
-#define MCF_INTC_INTFRCL_INTFRC17 (0x00020000)
-#define MCF_INTC_INTFRCL_INTFRC18 (0x00040000)
-#define MCF_INTC_INTFRCL_INTFRC19 (0x00080000)
-#define MCF_INTC_INTFRCL_INTFRC20 (0x00100000)
-#define MCF_INTC_INTFRCL_INTFRC21 (0x00200000)
-#define MCF_INTC_INTFRCL_INTFRC22 (0x00400000)
-#define MCF_INTC_INTFRCL_INTFRC23 (0x00800000)
-#define MCF_INTC_INTFRCL_INTFRC24 (0x01000000)
-#define MCF_INTC_INTFRCL_INTFRC25 (0x02000000)
-#define MCF_INTC_INTFRCL_INTFRC26 (0x04000000)
-#define MCF_INTC_INTFRCL_INTFRC27 (0x08000000)
-#define MCF_INTC_INTFRCL_INTFRC28 (0x10000000)
-#define MCF_INTC_INTFRCL_INTFRC29 (0x20000000)
-#define MCF_INTC_INTFRCL_INTFRC30 (0x40000000)
-#define MCF_INTC_INTFRCL_INTFRC31 (0x80000000)
-
-/* Bit definitions and macros for MCF_INTC_IRLR */
-#define MCF_INTC_IRLR_IRQ(x) (((x)&0x7F)<<1)
-
-/* Bit definitions and macros for MCF_INTC_IACKLPR */
-#define MCF_INTC_IACKLPR_PRI(x) (((x)&0x0F)<<0)
-#define MCF_INTC_IACKLPR_LEVEL(x) (((x)&0x07)<<4)
-
-/* Bit definitions and macros for MCF_INTC_ICRn */
-#define MCF_INTC_ICRn_IP(x) (((x)&0x07)<<0)
-#define MCF_INTC_ICRn_IL(x) (((x)&0x07)<<3)
-
-#endif /* __MCF548X_INTC_H__ */
diff --git a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_pci.h b/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_pci.h
deleted file mode 100644
index 23c6743133..0000000000
--- a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_pci.h
+++ /dev/null
@@ -1,349 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Register and bit definitions for the MCF548X and MCF547x
- * PCI Bus Controller (PCI)
- */
-#ifndef __MCF548X_PCI_H__
-#define __MCF548X_PCI_H__
-
-/*
- * PCI Bus Controller (PCI)
- */
-#define MCF_PCI_HDR_BASE (&__MBAR[0x000B00])
-
-/* Register read/write macros */
-
-/* type 0 header */
-#define MCF_PCI_PCIIDR (*(vuint32_t*)(&__MBAR[0x000B00]))
-#define MCF_PCI_PCISCR (*(vuint32_t*)(&__MBAR[0x000B04]))
-#define MCF_PCI_PCICCRIR (*(vuint32_t*)(&__MBAR[0x000B08]))
-#define MCF_PCI_PCICR1 (*(vuint32_t*)(&__MBAR[0x000B0C]))
-#define MCF_PCI_PCIBAR0 (*(vuint32_t*)(&__MBAR[0x000B10]))
-#define MCF_PCI_PCIBAR1 (*(vuint32_t*)(&__MBAR[0x000B14]))
-#define MCF_PCI_PCISID (*(vuint32_t*)(&__MBAR[0x000B2c]))
-#define MCF_PCI_PCICR2 (*(vuint32_t*)(&__MBAR[0x000B3C]))
-
-/* Target Controls */
-#define MCF_PCI_PCIGSCR (*(vuint32_t*)(&__MBAR[0x000B60]))
-#define MCF_PCI_PCITBATR0 (*(vuint32_t*)(&__MBAR[0x000B64]))
-#define MCF_PCI_PCITBATR1 (*(vuint32_t*)(&__MBAR[0x000B68]))
-#define MCF_PCI_PCITCR (*(vuint32_t*)(&__MBAR[0x000B6C]))
-#define MCF_PCI_PCIIW0BTAR (*(vuint32_t*)(&__MBAR[0x000B70]))
-#define MCF_PCI_PCIIW1BTAR (*(vuint32_t*)(&__MBAR[0x000B74]))
-#define MCF_PCI_PCIIW2BTAR (*(vuint32_t*)(&__MBAR[0x000B78]))
-#define MCF_PCI_PCIIWCR (*(vuint32_t*)(&__MBAR[0x000B80]))
-#define MCF_PCI_PCIICR (*(vuint32_t*)(&__MBAR[0x000B84]))
-#define MCF_PCI_PCIISR (*(vuint32_t*)(&__MBAR[0x000B88]))
-#define MCF_PCI_PCICAR (*(vuint32_t*)(&__MBAR[0x000BF8]))
-#define MCF_PCI_PCITPSR (*(vuint32_t*)(&__MBAR[0x008400]))
-#define MCF_PCI_PCITSAR (*(vuint32_t*)(&__MBAR[0x008404]))
-#define MCF_PCI_PCITTCR (*(vuint32_t*)(&__MBAR[0x008408]))
-#define MCF_PCI_PCITER (*(vuint32_t*)(&__MBAR[0x00840C]))
-#define MCF_PCI_PCITNAR (*(vuint32_t*)(&__MBAR[0x008410]))
-#define MCF_PCI_PCITLWR (*(vuint32_t*)(&__MBAR[0x008414]))
-#define MCF_PCI_PCITDCR (*(vuint32_t*)(&__MBAR[0x008418]))
-#define MCF_PCI_PCITSR (*(vuint32_t*)(&__MBAR[0x00841C]))
-#define MCF_PCI_PCITFDR (*(vuint32_t*)(&__MBAR[0x008440]))
-#define MCF_PCI_PCITFSR (*(vuint32_t*)(&__MBAR[0x008444]))
-#define MCF_PCI_PCITFCR (*(vuint32_t*)(&__MBAR[0x008448]))
-#define MCF_PCI_PCITFAR (*(vuint32_t*)(&__MBAR[0x00844C]))
-#define MCF_PCI_PCITFRPR (*(vuint32_t*)(&__MBAR[0x008450]))
-#define MCF_PCI_PCITFWPR (*(vuint32_t*)(&__MBAR[0x008454]))
-#define MCF_PCI_PCIRPSR (*(vuint32_t*)(&__MBAR[0x008480]))
-#define MCF_PCI_PCIRSAR (*(vuint32_t*)(&__MBAR[0x008484]))
-#define MCF_PCI_PCIRTCR (*(vuint32_t*)(&__MBAR[0x008488]))
-#define MCF_PCI_PCIRER (*(vuint32_t*)(&__MBAR[0x00848C]))
-#define MCF_PCI_PCIRNAR (*(vuint32_t*)(&__MBAR[0x008490]))
-#define MCF_PCI_PCIRDCR (*(vuint32_t*)(&__MBAR[0x008498]))
-#define MCF_PCI_PCIRSR (*(vuint32_t*)(&__MBAR[0x00849C]))
-#define MCF_PCI_PCIRFDR (*(vuint32_t*)(&__MBAR[0x0084C0]))
-#define MCF_PCI_PCIRFSR (*(vuint32_t*)(&__MBAR[0x0084C4]))
-#define MCF_PCI_PCIRFCR (*(vuint32_t*)(&__MBAR[0x0084C8]))
-#define MCF_PCI_PCIRFAR (*(vuint32_t*)(&__MBAR[0x0084CC]))
-#define MCF_PCI_PCIRFRPR (*(vuint32_t*)(&__MBAR[0x0084D0]))
-#define MCF_PCI_PCIRFWPR (*(vuint32_t*)(&__MBAR[0x0084D4]))
-
-
-/*
- * Type 0 Config Header Regs
- */
-
-/* Bit definitions and macros for MCF_PCI_PCIIDR */
-#define MCF_PCI_PCIIDR_VENDORID(x) (((x)&0x0000FFFF)<<0)
-#define MCF_PCI_PCIIDR_DEVICEID(x) (((x)&0x0000FFFF)<<16)
-
-/* Bit definitions and macros for MCF_PCI_PCISCR */
-#define MCF_PCI_PCISCR_M (0x00000002)
-#define MCF_PCI_PCISCR_B (0x00000004)
-#define MCF_PCI_PCISCR_SP (0x00000008)
-#define MCF_PCI_PCISCR_MW (0x00000010)
-#define MCF_PCI_PCISCR_PER (0x00000040)
-#define MCF_PCI_PCISCR_S (0x00000100)
-#define MCF_PCI_PCISCR_F (0x00000200)
-#define MCF_PCI_PCISCR_C (0x00100000)
-#define MCF_PCI_PCISCR_66M (0x00200000)
-#define MCF_PCI_PCISCR_R (0x00400000)
-#define MCF_PCI_PCISCR_FC (0x00800000)
-#define MCF_PCI_PCISCR_DP (0x01000000)
-#define MCF_PCI_PCISCR_DT(x) (((x)&0x00000003)<<25)
-#define MCF_PCI_PCISCR_TS (0x08000000)
-#define MCF_PCI_PCISCR_TR (0x10000000)
-#define MCF_PCI_PCISCR_MA (0x20000000)
-#define MCF_PCI_PCISCR_SE (0x40000000)
-#define MCF_PCI_PCISCR_PE (0x80000000)
-
-/* Bit definitions and macros for MCF_PCI_PCICCRIR */
-#define MCF_PCI_PCICCRIR_REVID(x) (((x)&0x000000FF)<<0)
-#define MCF_PCI_PCICCRIR_CLASSCODE(x) (((x)&0x00FFFFFF)<<8)
-
-/* Bit definitions and macros for MCF_PCI_PCICR1 */
-#define MCF_PCI_PCICR1_CACHELINESIZE(x) (((x)&0x0000000F)<<0)
-#define MCF_PCI_PCICR1_LATTIMER(x) (((x)&0x000000FF)<<8)
-#define MCF_PCI_PCICR1_HEADERTYPE(x) (((x)&0x000000FF)<<16)
-#define MCF_PCI_PCICR1_BIST(x) (((x)&0x000000FF)<<24)
-
-/* Bit definitions and macros for MCF_PCI_PCIBAR0 */
-#define MCF_PCI_PCIBAR0_IO (0x00000001)
-#define MCF_PCI_PCIBAR0_RANGE(x) (((x)&0x00000003)<<1)
-#define MCF_PCI_PCIBAR0_PREF (0x00000008)
-#define MCF_PCI_PCIBAR0_BAR0(x) (((x)&0x00003FFF)<<18)
-
-/* Bit definitions and macros for MCF_PCI_PCIBAR1 */
-#define MCF_PCI_PCIBAR1_IO (0x00000001)
-#define MCF_PCI_PCIBAR1_PREF (0x00000008)
-#define MCF_PCI_PCIBAR1_BAR1(x) (((x)&0x00000003)<<30)
-
-/* Bit definitions and macros for MCF_PCI_PCICR2 */
-#define MCF_PCI_PCICR2_INTLINE(x) (((x)&0x000000FF)<<0)
-#define MCF_PCI_PCICR2_INTPIN(x) (((x)&0x000000FF)<<8)
-#define MCF_PCI_PCICR2_MINGNT(x) (((x)&0x000000FF)<<16)
-#define MCF_PCI_PCICR2_MAXLAT(x) (((x)&0x000000FF)<<24)
-
-/* Bit definitions and macros for MCF_PCI_PCIGSCR */
-#define MCF_PCI_PCIGSCR_PR (0x00000001)
-#define MCF_PCI_PCIGSCR_SEE (0x00001000)
-#define MCF_PCI_PCIGSCR_PEE (0x00002000)
-#define MCF_PCI_PCIGSCR_SE (0x10000000)
-#define MCF_PCI_PCIGSCR_PE (0x20000000)
-
-/*
- * Target device controls
- */
-
-/* Bit definitions and macros for MCF_PCI_PCITBATR0 */
-#define MCF_PCI_PCITBATR0_EN (0x00000001)
-#define MCF_PCI_PCITBATR0_BAT0(x) (((x)&0x00003FFF)<<18)
-
-/* Bit definitions and macros for MCF_PCI_PCITBATR1 */
-#define MCF_PCI_PCITBATR1_EN (0x00000001)
-#define MCF_PCI_PCITBATR1_BAT1(x) (((x)&0x00000003)<<30)
-
-/* Bit definitions and macros for MCF_PCI_PCITCR */
-#define MCF_PCI_PCITCR_P (0x00010000)
-#define MCF_PCI_PCITCR_LD (0x01000000)
-
-/* Bit definitions and macros for MCF_PCI_PCIIW0BTAR */
-#define MCF_PCI_PCIIW0BTAR_WTA0(x) (((x)&0x000000FF)<<8)
-#define MCF_PCI_PCIIW0BTAR_WAM0(x) (((x)&0x000000FF)<<16)
-#define MCF_PCI_PCIIW0BTAR_WBA0(x) (((x)&0x000000FF)<<24)
-
-/* Bit definitions and macros for MCF_PCI_PCIIW1BTAR */
-#define MCF_PCI_PCIIW1BTAR_WTA1(x) (((x)&0x000000FF)<<8)
-#define MCF_PCI_PCIIW1BTAR_WAM1(x) (((x)&0x000000FF)<<16)
-#define MCF_PCI_PCIIW1BTAR_WBA1(x) (((x)&0x000000FF)<<24)
-
-/* Bit definitions and macros for MCF_PCI_PCIIW2BTAR */
-#define MCF_PCI_PCIIW2BTAR_WTA2(x) (((x)&0x000000FF)<<8)
-#define MCF_PCI_PCIIW2BTAR_WAM2(x) (((x)&0x000000FF)<<16)
-#define MCF_PCI_PCIIW2BTAR_WBA2(x) (((x)&0x000000FF)<<24)
-
-/* Bit definitions and macros for MCF_PCI_PCIIWCR */
-#define MCF_PCI_PCIIWCR_WINCTRL2(x) (((x)&0x0000000F)<<8)
-#define MCF_PCI_PCIIWCR_WINCTRL1(x) (((x)&0x0000000F)<<16)
-#define MCF_PCI_PCIIWCR_WINCTRL0(x) (((x)&0x0000000F)<<24)
-#define MCF_PCI_PCIIWCR_WINCTRL0_MEMREAD (0x01000000)
-#define MCF_PCI_PCIIWCR_WINCTRL0_MEMRDLINE (0x03000000)
-#define MCF_PCI_PCIIWCR_WINCTRL0_MEMRDMUL (0x05000000)
-#define MCF_PCI_PCIIWCR_WINCTRL0_IO (0x09000000)
-#define MCF_PCI_PCIIWCR_WINCTRL1_MEMREAD (0x00010000)
-#define MCF_PCI_PCIIWCR_WINCTRL1_MEMRDLINE (0x00030000)
-#define MCF_PCI_PCIIWCR_WINCTRL1_MEMRDMUL (0x00050000)
-#define MCF_PCI_PCIIWCR_WINCTRL1_IO (0x00090000)
-#define MCF_PCI_PCIIWCR_WINCTRL2_MEMREAD (0x00000100)
-#define MCF_PCI_PCIIWCR_WINCTRL2_MEMRDLINE (0x00000300)
-#define MCF_PCI_PCIIWCR_WINCTRL2_MEMRDMUL (0x00000500)
-#define MCF_PCI_PCIIWCR_WINCTRL2_IO (0x00000900)
-
-/* Bit definitions and macros for MCF_PCI_PCIICR */
-#define MCF_PCI_PCIICR_MAXRETRY(x) (((x)&0x000000FF)<<0)
-#define MCF_PCI_PCIICR_TAE (0x01000000)
-#define MCF_PCI_PCIICR_IAE (0x02000000)
-#define MCF_PCI_PCIICR_REE (0x04000000)
-
-/* Bit definitions and macros for MCF_PCI_PCIISR */
-#define MCF_PCI_PCIISR_TA (0x01000000)
-#define MCF_PCI_PCIISR_IA (0x02000000)
-#define MCF_PCI_PCIISR_RE (0x04000000)
-
-/* Bit definitions and macros for MCF_PCI_PCICAR */
-#define MCF_PCI_PCICAR_DWORD(x) (((x)&0x0000003F)<<2)
-#define MCF_PCI_PCICAR_FUNCNUM(x) (((x)&0x00000007)<<8)
-#define MCF_PCI_PCICAR_DEVNUM(x) (((x)&0x0000001F)<<11)
-#define MCF_PCI_PCICAR_BUSNUM(x) (((x)&0x000000FF)<<16)
-#define MCF_PCI_PCICAR_E (0x80000000)
-
-
-/*
- * PCI Fifos
- */
-
-/* Bit definitions and macros for MCF_PCI_PCITPSR */
-#define MCF_PCI_PCITPSR_PKTSIZE(x) (((x)&0x0000FFFF)<<16)
-
-/* Bit definitions and macros for MCF_PCI_PCITTCR */
-#define MCF_PCI_PCITTCR_DI (0x00000001)
-#define MCF_PCI_PCITTCR_W (0x00000010)
-#define MCF_PCI_PCITTCR_MAXBEATS(x) (((x)&0x00000007)<<8)
-#define MCF_PCI_PCITTCR_MAXRETRY(x) (((x)&0x000000FF)<<16)
-#define MCF_PCI_PCITTCR_PCICMD(x) (((x)&0x0000000F)<<24)
-
-/* Bit definitions and macros for MCF_PCI_PCITER */
-#define MCF_PCI_PCITER_NE (0x00010000)
-#define MCF_PCI_PCITER_IAE (0x00020000)
-#define MCF_PCI_PCITER_TAE (0x00040000)
-#define MCF_PCI_PCITER_RE (0x00080000)
-#define MCF_PCI_PCITER_SE (0x00100000)
-#define MCF_PCI_PCITER_FEE (0x00200000)
-#define MCF_PCI_PCITER_ME (0x01000000)
-#define MCF_PCI_PCITER_BE (0x08000000)
-#define MCF_PCI_PCITER_CM (0x10000000)
-#define MCF_PCI_PCITER_RF (0x40000000)
-#define MCF_PCI_PCITER_RC (0x80000000)
-
-/* Bit definitions and macros for MCF_PCI_PCITDCR */
-#define MCF_PCI_PCITDCR_PKTSDONE(x) (((x)&0x0000FFFF)<<0)
-#define MCF_PCI_PCITDCR_BYTESDONE(x) (((x)&0x0000FFFF)<<16)
-
-/* Bit definitions and macros for MCF_PCI_PCITSR */
-#define MCF_PCI_PCITSR_IA (0x00010000)
-#define MCF_PCI_PCITSR_TA (0x00020000)
-#define MCF_PCI_PCITSR_RE (0x00040000)
-#define MCF_PCI_PCITSR_SE (0x00080000)
-#define MCF_PCI_PCITSR_FE (0x00100000)
-#define MCF_PCI_PCITSR_BE1 (0x00200000)
-#define MCF_PCI_PCITSR_BE2 (0x00400000)
-#define MCF_PCI_PCITSR_BE3 (0x00800000)
-#define MCF_PCI_PCITSR_NT (0x01000000)
-
-/* Bit definitions and macros for MCF_PCI_PCITFSR */
-#define MCF_PCI_PCITFSR_EMT (0x00010000)
-#define MCF_PCI_PCITFSR_ALARM (0x00020000)
-#define MCF_PCI_PCITFSR_FU (0x00040000)
-#define MCF_PCI_PCITFSR_FR (0x00080000)
-#define MCF_PCI_PCITFSR_OF (0x00100000)
-#define MCF_PCI_PCITFSR_UF (0x00200000)
-#define MCF_PCI_PCITFSR_RXW (0x00400000)
-
-/* Bit definitions and macros for MCF_PCI_PCITFCR */
-#define MCF_PCI_PCITFCR_OF_MSK (0x00080000)
-#define MCF_PCI_PCITFCR_UF_MSK (0x00100000)
-#define MCF_PCI_PCITFCR_RXW_MSK (0x00200000)
-#define MCF_PCI_PCITFCR_FAE_MSK (0x00400000)
-#define MCF_PCI_PCITFCR_IP_MSK (0x00800000)
-#define MCF_PCI_PCITFCR_GR(x) (((x)&0x00000007)<<24)
-
-/* Bit definitions and macros for MCF_PCI_PCITFAR */
-#define MCF_PCI_PCITFAR_ALARM(x) (((x)&0x0000007F)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCITFRPR */
-#define MCF_PCI_PCITFRPR_READ(x) (((x)&0x00000FFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCITFWPR */
-#define MCF_PCI_PCITFWPR_WRITE(x) (((x)&0x00000FFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCIRPSR */
-#define MCF_PCI_PCIRPSR_PKTSIZE(x) (((x)&0x0000FFFF)<<16)
-
-/* Bit definitions and macros for MCF_PCI_PCIRTCR */
-#define MCF_PCI_PCIRTCR_DI (0x00000001)
-#define MCF_PCI_PCIRTCR_W (0x00000010)
-#define MCF_PCI_PCIRTCR_MAXBEATS(x) (((x)&0x00000007)<<8)
-#define MCF_PCI_PCIRTCR_FB (0x00001000)
-#define MCF_PCI_PCIRTCR_MAXRETRY(x) (((x)&0x000000FF)<<16)
-#define MCF_PCI_PCIRTCR_PCICMD(x) (((x)&0x0000000F)<<24)
-
-/* Bit definitions and macros for MCF_PCI_PCIRER */
-#define MCF_PCI_PCIRER_NE (0x00010000)
-#define MCF_PCI_PCIRER_IAE (0x00020000)
-#define MCF_PCI_PCIRER_TAE (0x00040000)
-#define MCF_PCI_PCIRER_RE (0x00080000)
-#define MCF_PCI_PCIRER_SE (0x00100000)
-#define MCF_PCI_PCIRER_FEE (0x00200000)
-#define MCF_PCI_PCIRER_ME (0x01000000)
-#define MCF_PCI_PCIRER_BE (0x08000000)
-#define MCF_PCI_PCIRER_CM (0x10000000)
-#define MCF_PCI_PCIRER_FE (0x20000000)
-#define MCF_PCI_PCIRER_RF (0x40000000)
-#define MCF_PCI_PCIRER_RC (0x80000000)
-
-/* Bit definitions and macros for MCF_PCI_PCIRDCR */
-#define MCF_PCI_PCIRDCR_PKTSDONE(x) (((x)&0x0000FFFF)<<0)
-#define MCF_PCI_PCIRDCR_BYTESDONE(x) (((x)&0x0000FFFF)<<16)
-
-/* Bit definitions and macros for MCF_PCI_PCIRSR */
-#define MCF_PCI_PCIRSR_IA (0x00010000)
-#define MCF_PCI_PCIRSR_TA (0x00020000)
-#define MCF_PCI_PCIRSR_RE (0x00040000)
-#define MCF_PCI_PCIRSR_SE (0x00080000)
-#define MCF_PCI_PCIRSR_FE (0x00100000)
-#define MCF_PCI_PCIRSR_BE1 (0x00200000)
-#define MCF_PCI_PCIRSR_BE2 (0x00400000)
-#define MCF_PCI_PCIRSR_BE3 (0x00800000)
-#define MCF_PCI_PCIRSR_NT (0x01000000)
-
-/* Bit definitions and macros for MCF_PCI_PCIRFSR */
-#define MCF_PCI_PCIRFSR_EMT (0x00010000)
-#define MCF_PCI_PCIRFSR_ALARM (0x00020000)
-#define MCF_PCI_PCIRFSR_FU (0x00040000)
-#define MCF_PCI_PCIRFSR_FR (0x00080000)
-#define MCF_PCI_PCIRFSR_OF (0x00100000)
-#define MCF_PCI_PCIRFSR_UF (0x00200000)
-#define MCF_PCI_PCIRFSR_RXW (0x00400000)
-
-/* Bit definitions and macros for MCF_PCI_PCIRFCR */
-#define MCF_PCI_PCIRFCR_OF_MSK (0x00080000)
-#define MCF_PCI_PCIRFCR_UF_MSK (0x00100000)
-#define MCF_PCI_PCIRFCR_RXW_MSK (0x00200000)
-#define MCF_PCI_PCIRFCR_FAE_MSK (0x00400000)
-#define MCF_PCI_PCIRFCR_IP_MSK (0x00800000)
-#define MCF_PCI_PCIRFCR_GR(x) (((x)&0x00000007)<<24)
-
-/* Bit definitions and macros for MCF_PCI_PCIRFAR */
-#define MCF_PCI_PCIRFAR_ALARM(x) (((x)&0x0000007F)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCIRFRPR */
-#define MCF_PCI_PCIRFRPR_READ(x) (((x)&0x00000FFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCIRFWPR */
-#define MCF_PCI_PCIRFWPR_WRITE(x) (((x)&0x00000FFF)<<0)
-
-#endif /* __MCF548X_PCI_H__ */
diff --git a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_pciarb.h b/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_pciarb.h
deleted file mode 100644
index 8c11647300..0000000000
--- a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_pciarb.h
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Register and bit definitions for the MCF548X and MCF547x
- * PCI Arbiter Module (PCIARB)
- */
-#ifndef __MCF548X_PCIARB_H__
-#define __MCF548X_PCIARB_H__
-
-/*
- * PCI Arbiter Module (PCIARB)
- */
-
-/* Register read/write macros */
-#define MCF_PCIARB_PACR (*(vuint32_t*)(&__MBAR[0x000C00]))
-#define MCF_PCIARB_PASR (*(vuint32_t*)(&__MBAR[0x000C04]))
-
-/* Bit definitions and macros for MCF_PCIARB_PACR */
-#define MCF_PCIARB_PACR_INTMPRI (0x00000001)
-#define MCF_PCIARB_PACR_EXTMPRI(x) (((x)&0x0000001F)<<1)
-#define MCF_PCIARB_PACR_INTMINTEN (0x00010000)
-#define MCF_PCIARB_PACR_EXTMINTEN(x) (((x)&0x0000001F)<<17)
-/* Not documented!
- * #define MCF_PCIARB_PACR_PKMD (0x40000000)
- */
-#define MCF_PCIARB_PACR_DS (0x80000000)
-
-/* Bit definitions and macros for MCF_PCIARB_PASR */
-#define MCF_PCIARB_PASR_ITLMBK (0x00010000)
-#define MCF_PCIARB_PASR_EXTMBK(x) (((x)&0x0000001F)<<17)
-
-#endif /* __MCF548X_PCIARB_H__ */
diff --git a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_psc.h b/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_psc.h
deleted file mode 100644
index c685af8240..0000000000
--- a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_psc.h
+++ /dev/null
@@ -1,486 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Register and bit definitions for the MCF548X and MCF547x
- * Programmable Serial Controller (PSC)
- */
-#ifndef __MCF548X_PSC_H__
-#define __MCF548X_PSC_H__
-
-/*
- * Programmable Serial Controller (PSC)
- */
-
-/* Register read/write macros */
-#define MCF_PSC_MR0 (*(vuint8_t *)(&__MBAR[0x008600]))
-#define MCF_PSC_SR0 (*(vuint16_t*)(&__MBAR[0x008604]))
-#define MCF_PSC_CSR0 (*(vuint8_t *)(&__MBAR[0x008604]))
-#define MCF_PSC_CR0 (*(vuint8_t *)(&__MBAR[0x008608]))
-#define MCF_PSC_RB0 (*(vuint32_t*)(&__MBAR[0x00860C]))
-#define MCF_PSC_TB0 (*(vuint32_t*)(&__MBAR[0x00860C]))
-#define MCF_PSC_TB_8BIT0 (*(vuint32_t*)(&__MBAR[0x00860C]))
-#define MCF_PSC_TB_16BIT0 (*(vuint32_t*)(&__MBAR[0x00860C]))
-#define MCF_PSC_TB_AC970 (*(vuint32_t*)(&__MBAR[0x00860C]))
-#define MCF_PSC_IPCR0 (*(vuint8_t *)(&__MBAR[0x008610]))
-#define MCF_PSC_ACR0 (*(vuint8_t *)(&__MBAR[0x008610]))
-#define MCF_PSC_ISR0 (*(vuint16_t*)(&__MBAR[0x008614]))
-#define MCF_PSC_IMR0 (*(vuint16_t*)(&__MBAR[0x008614]))
-#define MCF_PSC_CTUR0 (*(vuint8_t *)(&__MBAR[0x008618]))
-#define MCF_PSC_CTLR0 (*(vuint8_t *)(&__MBAR[0x00861C]))
-#define MCF_PSC_IP0 (*(vuint8_t *)(&__MBAR[0x008634]))
-#define MCF_PSC_OPSET0 (*(vuint8_t *)(&__MBAR[0x008638]))
-#define MCF_PSC_OPRESET0 (*(vuint8_t *)(&__MBAR[0x00863C]))
-#define MCF_PSC_SICR0 (*(vuint8_t *)(&__MBAR[0x008640]))
-#define MCF_PSC_IRCR10 (*(vuint8_t *)(&__MBAR[0x008644]))
-#define MCF_PSC_IRCR20 (*(vuint8_t *)(&__MBAR[0x008648]))
-#define MCF_PSC_IRSDR0 (*(vuint8_t *)(&__MBAR[0x00864C]))
-#define MCF_PSC_IRMDR0 (*(vuint8_t *)(&__MBAR[0x008650]))
-#define MCF_PSC_IRFDR0 (*(vuint8_t *)(&__MBAR[0x008654]))
-#define MCF_PSC_RFCNT0 (*(vuint16_t*)(&__MBAR[0x008658]))
-#define MCF_PSC_TFCNT0 (*(vuint16_t*)(&__MBAR[0x00865C]))
-#define MCF_PSC_RFSR0 (*(vuint16_t*)(&__MBAR[0x008664]))
-#define MCF_PSC_TFSR0 (*(vuint16_t*)(&__MBAR[0x008684]))
-#define MCF_PSC_RFCR0 (*(vuint32_t*)(&__MBAR[0x008668]))
-#define MCF_PSC_TFCR0 (*(vuint32_t*)(&__MBAR[0x008688]))
-#define MCF_PSC_RFAR0 (*(vuint16_t*)(&__MBAR[0x00866E]))
-#define MCF_PSC_TFAR0 (*(vuint16_t*)(&__MBAR[0x00868E]))
-#define MCF_PSC_RFRP0 (*(vuint16_t*)(&__MBAR[0x008672]))
-#define MCF_PSC_TFRP0 (*(vuint16_t*)(&__MBAR[0x008692]))
-#define MCF_PSC_RFWP0 (*(vuint16_t*)(&__MBAR[0x008676]))
-#define MCF_PSC_TFWP0 (*(vuint16_t*)(&__MBAR[0x008696]))
-#define MCF_PSC_RLRFP0 (*(vuint16_t*)(&__MBAR[0x00867A]))
-#define MCF_PSC_TLRFP0 (*(vuint16_t*)(&__MBAR[0x00869A]))
-#define MCF_PSC_RLWFP0 (*(vuint16_t*)(&__MBAR[0x00867E]))
-#define MCF_PSC_TLWFP0 (*(vuint16_t*)(&__MBAR[0x00869E]))
-#define MCF_PSC_MR1 (*(vuint8_t *)(&__MBAR[0x008700]))
-#define MCF_PSC_SR1 (*(vuint16_t*)(&__MBAR[0x008704]))
-#define MCF_PSC_CSR1 (*(vuint8_t *)(&__MBAR[0x008704]))
-#define MCF_PSC_CR1 (*(vuint8_t *)(&__MBAR[0x008708]))
-#define MCF_PSC_RB1 (*(vuint32_t*)(&__MBAR[0x00870C]))
-#define MCF_PSC_TB1 (*(vuint32_t*)(&__MBAR[0x00870C]))
-#define MCF_PSC_TB_8BIT1 (*(vuint32_t*)(&__MBAR[0x00870C]))
-#define MCF_PSC_TB_16BIT1 (*(vuint32_t*)(&__MBAR[0x00870C]))
-#define MCF_PSC_TB_AC971 (*(vuint32_t*)(&__MBAR[0x00870C]))
-#define MCF_PSC_IPCR1 (*(vuint8_t *)(&__MBAR[0x008710]))
-#define MCF_PSC_ACR1 (*(vuint8_t *)(&__MBAR[0x008710]))
-#define MCF_PSC_ISR1 (*(vuint16_t*)(&__MBAR[0x008714]))
-#define MCF_PSC_IMR1 (*(vuint16_t*)(&__MBAR[0x008714]))
-#define MCF_PSC_CTUR1 (*(vuint8_t *)(&__MBAR[0x008718]))
-#define MCF_PSC_CTLR1 (*(vuint8_t *)(&__MBAR[0x00871C]))
-#define MCF_PSC_IP1 (*(vuint8_t *)(&__MBAR[0x008734]))
-#define MCF_PSC_OPSET1 (*(vuint8_t *)(&__MBAR[0x008738]))
-#define MCF_PSC_OPRESET1 (*(vuint8_t *)(&__MBAR[0x00873C]))
-#define MCF_PSC_SICR1 (*(vuint8_t *)(&__MBAR[0x008740]))
-#define MCF_PSC_IRCR11 (*(vuint8_t *)(&__MBAR[0x008744]))
-#define MCF_PSC_IRCR21 (*(vuint8_t *)(&__MBAR[0x008748]))
-#define MCF_PSC_IRSDR1 (*(vuint8_t *)(&__MBAR[0x00874C]))
-#define MCF_PSC_IRMDR1 (*(vuint8_t *)(&__MBAR[0x008750]))
-#define MCF_PSC_IRFDR1 (*(vuint8_t *)(&__MBAR[0x008754]))
-#define MCF_PSC_RFCNT1 (*(vuint16_t*)(&__MBAR[0x008758]))
-#define MCF_PSC_TFCNT1 (*(vuint16_t*)(&__MBAR[0x00875C]))
-#define MCF_PSC_RFSR1 (*(vuint16_t*)(&__MBAR[0x008764]))
-#define MCF_PSC_TFSR1 (*(vuint16_t*)(&__MBAR[0x008784]))
-#define MCF_PSC_RFCR1 (*(vuint32_t*)(&__MBAR[0x008768]))
-#define MCF_PSC_TFCR1 (*(vuint32_t*)(&__MBAR[0x008788]))
-#define MCF_PSC_RFAR1 (*(vuint16_t*)(&__MBAR[0x00876E]))
-#define MCF_PSC_TFAR1 (*(vuint16_t*)(&__MBAR[0x00878E]))
-#define MCF_PSC_RFRP1 (*(vuint16_t*)(&__MBAR[0x008772]))
-#define MCF_PSC_TFRP1 (*(vuint16_t*)(&__MBAR[0x008792]))
-#define MCF_PSC_RFWP1 (*(vuint16_t*)(&__MBAR[0x008776]))
-#define MCF_PSC_TFWP1 (*(vuint16_t*)(&__MBAR[0x008796]))
-#define MCF_PSC_RLRFP1 (*(vuint16_t*)(&__MBAR[0x00877A]))
-#define MCF_PSC_TLRFP1 (*(vuint16_t*)(&__MBAR[0x00879A]))
-#define MCF_PSC_RLWFP1 (*(vuint16_t*)(&__MBAR[0x00877E]))
-#define MCF_PSC_TLWFP1 (*(vuint16_t*)(&__MBAR[0x00879E]))
-#define MCF_PSC_MR2 (*(vuint8_t *)(&__MBAR[0x008800]))
-#define MCF_PSC_SR2 (*(vuint16_t*)(&__MBAR[0x008804]))
-#define MCF_PSC_CSR2 (*(vuint8_t *)(&__MBAR[0x008804]))
-#define MCF_PSC_CR2 (*(vuint8_t *)(&__MBAR[0x008808]))
-#define MCF_PSC_RB2 (*(vuint32_t*)(&__MBAR[0x00880C]))
-#define MCF_PSC_TB2 (*(vuint32_t*)(&__MBAR[0x00880C]))
-#define MCF_PSC_TB_8BIT2 (*(vuint32_t*)(&__MBAR[0x00880C]))
-#define MCF_PSC_TB_16BIT2 (*(vuint32_t*)(&__MBAR[0x00880C]))
-#define MCF_PSC_TB_AC972 (*(vuint32_t*)(&__MBAR[0x00880C]))
-#define MCF_PSC_IPCR2 (*(vuint8_t *)(&__MBAR[0x008810]))
-#define MCF_PSC_ACR2 (*(vuint8_t *)(&__MBAR[0x008810]))
-#define MCF_PSC_ISR2 (*(vuint16_t*)(&__MBAR[0x008814]))
-#define MCF_PSC_IMR2 (*(vuint16_t*)(&__MBAR[0x008814]))
-#define MCF_PSC_CTUR2 (*(vuint8_t *)(&__MBAR[0x008818]))
-#define MCF_PSC_CTLR2 (*(vuint8_t *)(&__MBAR[0x00881C]))
-#define MCF_PSC_IP2 (*(vuint8_t *)(&__MBAR[0x008834]))
-#define MCF_PSC_OPSET2 (*(vuint8_t *)(&__MBAR[0x008838]))
-#define MCF_PSC_OPRESET2 (*(vuint8_t *)(&__MBAR[0x00883C]))
-#define MCF_PSC_SICR2 (*(vuint8_t *)(&__MBAR[0x008840]))
-#define MCF_PSC_IRCR12 (*(vuint8_t *)(&__MBAR[0x008844]))
-#define MCF_PSC_IRCR22 (*(vuint8_t *)(&__MBAR[0x008848]))
-#define MCF_PSC_IRSDR2 (*(vuint8_t *)(&__MBAR[0x00884C]))
-#define MCF_PSC_IRMDR2 (*(vuint8_t *)(&__MBAR[0x008850]))
-#define MCF_PSC_IRFDR2 (*(vuint8_t *)(&__MBAR[0x008854]))
-#define MCF_PSC_RFCNT2 (*(vuint16_t*)(&__MBAR[0x008858]))
-#define MCF_PSC_TFCNT2 (*(vuint16_t*)(&__MBAR[0x00885C]))
-#define MCF_PSC_RFSR2 (*(vuint16_t*)(&__MBAR[0x008864]))
-#define MCF_PSC_TFSR2 (*(vuint16_t*)(&__MBAR[0x008884]))
-#define MCF_PSC_RFCR2 (*(vuint32_t*)(&__MBAR[0x008868]))
-#define MCF_PSC_TFCR2 (*(vuint32_t*)(&__MBAR[0x008888]))
-#define MCF_PSC_RFAR2 (*(vuint16_t*)(&__MBAR[0x00886E]))
-#define MCF_PSC_TFAR2 (*(vuint16_t*)(&__MBAR[0x00888E]))
-#define MCF_PSC_RFRP2 (*(vuint16_t*)(&__MBAR[0x008872]))
-#define MCF_PSC_TFRP2 (*(vuint16_t*)(&__MBAR[0x008892]))
-#define MCF_PSC_RFWP2 (*(vuint16_t*)(&__MBAR[0x008876]))
-#define MCF_PSC_TFWP2 (*(vuint16_t*)(&__MBAR[0x008896]))
-#define MCF_PSC_RLRFP2 (*(vuint16_t*)(&__MBAR[0x00887A]))
-#define MCF_PSC_TLRFP2 (*(vuint16_t*)(&__MBAR[0x00889A]))
-#define MCF_PSC_RLWFP2 (*(vuint16_t*)(&__MBAR[0x00887E]))
-#define MCF_PSC_TLWFP2 (*(vuint16_t*)(&__MBAR[0x00889E]))
-#define MCF_PSC_MR3 (*(vuint8_t *)(&__MBAR[0x008900]))
-#define MCF_PSC_SR3 (*(vuint16_t*)(&__MBAR[0x008904]))
-#define MCF_PSC_CSR3 (*(vuint8_t *)(&__MBAR[0x008904]))
-#define MCF_PSC_CR3 (*(vuint8_t *)(&__MBAR[0x008908]))
-#define MCF_PSC_RB3 (*(vuint32_t*)(&__MBAR[0x00890C]))
-#define MCF_PSC_TB3 (*(vuint32_t*)(&__MBAR[0x00890C]))
-#define MCF_PSC_TB_8BIT3 (*(vuint32_t*)(&__MBAR[0x00890C]))
-#define MCF_PSC_TB_16BIT3 (*(vuint32_t*)(&__MBAR[0x00890C]))
-#define MCF_PSC_TB_AC973 (*(vuint32_t*)(&__MBAR[0x00890C]))
-#define MCF_PSC_IPCR3 (*(vuint8_t *)(&__MBAR[0x008910]))
-#define MCF_PSC_ACR3 (*(vuint8_t *)(&__MBAR[0x008910]))
-#define MCF_PSC_ISR3 (*(vuint16_t*)(&__MBAR[0x008914]))
-#define MCF_PSC_IMR3 (*(vuint16_t*)(&__MBAR[0x008914]))
-#define MCF_PSC_CTUR3 (*(vuint8_t *)(&__MBAR[0x008918]))
-#define MCF_PSC_CTLR3 (*(vuint8_t *)(&__MBAR[0x00891C]))
-#define MCF_PSC_IP3 (*(vuint8_t *)(&__MBAR[0x008934]))
-#define MCF_PSC_OPSET3 (*(vuint8_t *)(&__MBAR[0x008938]))
-#define MCF_PSC_OPRESET3 (*(vuint8_t *)(&__MBAR[0x00893C]))
-#define MCF_PSC_SICR3 (*(vuint8_t *)(&__MBAR[0x008940]))
-#define MCF_PSC_IRCR13 (*(vuint8_t *)(&__MBAR[0x008944]))
-#define MCF_PSC_IRCR23 (*(vuint8_t *)(&__MBAR[0x008948]))
-#define MCF_PSC_IRSDR3 (*(vuint8_t *)(&__MBAR[0x00894C]))
-#define MCF_PSC_IRMDR3 (*(vuint8_t *)(&__MBAR[0x008950]))
-#define MCF_PSC_IRFDR3 (*(vuint8_t *)(&__MBAR[0x008954]))
-#define MCF_PSC_RFCNT3 (*(vuint16_t*)(&__MBAR[0x008958]))
-#define MCF_PSC_TFCNT3 (*(vuint16_t*)(&__MBAR[0x00895C]))
-#define MCF_PSC_RFSR3 (*(vuint16_t*)(&__MBAR[0x008964]))
-#define MCF_PSC_TFSR3 (*(vuint16_t*)(&__MBAR[0x008984]))
-#define MCF_PSC_RFCR3 (*(vuint32_t*)(&__MBAR[0x008968]))
-#define MCF_PSC_TFCR3 (*(vuint32_t*)(&__MBAR[0x008988]))
-#define MCF_PSC_RFAR3 (*(vuint16_t*)(&__MBAR[0x00896E]))
-#define MCF_PSC_TFAR3 (*(vuint16_t*)(&__MBAR[0x00898E]))
-#define MCF_PSC_RFRP3 (*(vuint16_t*)(&__MBAR[0x008972]))
-#define MCF_PSC_TFRP3 (*(vuint16_t*)(&__MBAR[0x008992]))
-#define MCF_PSC_RFWP3 (*(vuint16_t*)(&__MBAR[0x008976]))
-#define MCF_PSC_TFWP3 (*(vuint16_t*)(&__MBAR[0x008996]))
-#define MCF_PSC_RLRFP3 (*(vuint16_t*)(&__MBAR[0x00897A]))
-#define MCF_PSC_TLRFP3 (*(vuint16_t*)(&__MBAR[0x00899A]))
-#define MCF_PSC_RLWFP3 (*(vuint16_t*)(&__MBAR[0x00897E]))
-#define MCF_PSC_TLWFP3 (*(vuint16_t*)(&__MBAR[0x00899E]))
-#define MCF_PSC_MR(x) (*(vuint8_t *)(&__MBAR[0x008600+((x)*0x100)]))
-#define MCF_PSC_SR(x) (*(vuint16_t*)(&__MBAR[0x008604+((x)*0x100)]))
-#define MCF_PSC_CSR(x) (*(vuint8_t *)(&__MBAR[0x008604+((x)*0x100)]))
-#define MCF_PSC_CR(x) (*(vuint8_t *)(&__MBAR[0x008608+((x)*0x100)]))
-#define MCF_PSC_RB(x) (*(vuint32_t*)(&__MBAR[0x00860C+((x)*0x100)]))
-#define MCF_PSC_TB(x) (*(vuint32_t*)(&__MBAR[0x00860C+((x)*0x100)]))
-#define MCF_PSC_TB_8BIT(x) (*(vuint32_t*)(&__MBAR[0x00860C+((x)*0x100)]))
-#define MCF_PSC_TB_16BIT(x) (*(vuint32_t*)(&__MBAR[0x00860C+((x)*0x100)]))
-#define MCF_PSC_TB_AC97(x) (*(vuint32_t*)(&__MBAR[0x00860C+((x)*0x100)]))
-#define MCF_PSC_IPCR(x) (*(vuint8_t *)(&__MBAR[0x008610+((x)*0x100)]))
-#define MCF_PSC_ACR(x) (*(vuint8_t *)(&__MBAR[0x008610+((x)*0x100)]))
-#define MCF_PSC_ISR(x) (*(vuint16_t*)(&__MBAR[0x008614+((x)*0x100)]))
-#define MCF_PSC_IMR(x) (*(vuint16_t*)(&__MBAR[0x008614+((x)*0x100)]))
-#define MCF_PSC_CTUR(x) (*(vuint8_t *)(&__MBAR[0x008618+((x)*0x100)]))
-#define MCF_PSC_CTLR(x) (*(vuint8_t *)(&__MBAR[0x00861C+((x)*0x100)]))
-#define MCF_PSC_IP(x) (*(vuint8_t *)(&__MBAR[0x008634+((x)*0x100)]))
-#define MCF_PSC_OPSET(x) (*(vuint8_t *)(&__MBAR[0x008638+((x)*0x100)]))
-#define MCF_PSC_OPRESET(x) (*(vuint8_t *)(&__MBAR[0x00863C+((x)*0x100)]))
-#define MCF_PSC_SICR(x) (*(vuint8_t *)(&__MBAR[0x008640+((x)*0x100)]))
-#define MCF_PSC_IRCR1(x) (*(vuint8_t *)(&__MBAR[0x008644+((x)*0x100)]))
-#define MCF_PSC_IRCR2(x) (*(vuint8_t *)(&__MBAR[0x008648+((x)*0x100)]))
-#define MCF_PSC_IRSDR(x) (*(vuint8_t *)(&__MBAR[0x00864C+((x)*0x100)]))
-#define MCF_PSC_IRMDR(x) (*(vuint8_t *)(&__MBAR[0x008650+((x)*0x100)]))
-#define MCF_PSC_IRFDR(x) (*(vuint8_t *)(&__MBAR[0x008654+((x)*0x100)]))
-#define MCF_PSC_RFCNT(x) (*(vuint16_t*)(&__MBAR[0x008658+((x)*0x100)]))
-#define MCF_PSC_TFCNT(x) (*(vuint16_t*)(&__MBAR[0x00865C+((x)*0x100)]))
-#define MCF_PSC_RFSR(x) (*(vuint16_t*)(&__MBAR[0x008664+((x)*0x100)]))
-#define MCF_PSC_TFSR(x) (*(vuint16_t*)(&__MBAR[0x008684+((x)*0x100)]))
-#define MCF_PSC_RFCR(x) (*(vuint32_t*)(&__MBAR[0x008668+((x)*0x100)]))
-#define MCF_PSC_TFCR(x) (*(vuint32_t*)(&__MBAR[0x008688+((x)*0x100)]))
-#define MCF_PSC_RFAR(x) (*(vuint16_t*)(&__MBAR[0x00866E+((x)*0x100)]))
-#define MCF_PSC_TFAR(x) (*(vuint16_t*)(&__MBAR[0x00868E+((x)*0x100)]))
-#define MCF_PSC_RFRP(x) (*(vuint16_t*)(&__MBAR[0x008672+((x)*0x100)]))
-#define MCF_PSC_TFRP(x) (*(vuint16_t*)(&__MBAR[0x008692+((x)*0x100)]))
-#define MCF_PSC_RFWP(x) (*(vuint16_t*)(&__MBAR[0x008676+((x)*0x100)]))
-#define MCF_PSC_TFWP(x) (*(vuint16_t*)(&__MBAR[0x008696+((x)*0x100)]))
-#define MCF_PSC_RLRFP(x) (*(vuint16_t*)(&__MBAR[0x00867A+((x)*0x100)]))
-#define MCF_PSC_TLRFP(x) (*(vuint16_t*)(&__MBAR[0x00869A+((x)*0x100)]))
-#define MCF_PSC_RLWFP(x) (*(vuint16_t*)(&__MBAR[0x00867E+((x)*0x100)]))
-#define MCF_PSC_TLWFP(x) (*(vuint16_t*)(&__MBAR[0x00869E+((x)*0x100)]))
-
-/* Bit definitions and macros for MCF_PSC_MR */
-#define MCF_PSC_MR_BC(x) (((x)&0x03)<<0)
-#define MCF_PSC_MR_PT (0x04)
-#define MCF_PSC_MR_PM(x) (((x)&0x03)<<3)
-#define MCF_PSC_MR_ERR (0x20)
-#define MCF_PSC_MR_RXIRQ (0x40)
-#define MCF_PSC_MR_RXRTS (0x80)
-#define MCF_PSC_MR_SB(x) (((x)&0x0F)<<0)
-#define MCF_PSC_MR_TXCTS (0x10)
-#define MCF_PSC_MR_TXRTS (0x20)
-#define MCF_PSC_MR_CM(x) (((x)&0x03)<<6)
-#define MCF_PSC_MR_PM_MULTI_ADDR (0x1C)
-#define MCF_PSC_MR_PM_MULTI_DATA (0x18)
-#define MCF_PSC_MR_PM_NONE (0x10)
-#define MCF_PSC_MR_PM_FORCE_HI (0x0C)
-#define MCF_PSC_MR_PM_FORCE_LO (0x08)
-#define MCF_PSC_MR_PM_ODD (0x04)
-#define MCF_PSC_MR_PM_EVEN (0x00)
-#define MCF_PSC_MR_BC_5 (0x00)
-#define MCF_PSC_MR_BC_6 (0x01)
-#define MCF_PSC_MR_BC_7 (0x02)
-#define MCF_PSC_MR_BC_8 (0x03)
-#define MCF_PSC_MR_CM_NORMAL (0x00)
-#define MCF_PSC_MR_CM_ECHO (0x40)
-#define MCF_PSC_MR_CM_LOCAL_LOOP (0x80)
-#define MCF_PSC_MR_CM_REMOTE_LOOP (0xC0)
-#define MCF_PSC_MR_SB_STOP_BITS_1 (0x07)
-#define MCF_PSC_MR_SB_STOP_BITS_15 (0x08)
-#define MCF_PSC_MR_SB_STOP_BITS_2 (0x0F)
-
-/* Bit definitions and macros for MCF_PSC_SR */
-#define MCF_PSC_SR_ERR (0x0040)
-#define MCF_PSC_SR_CDE_DEOF (0x0080)
-#define MCF_PSC_SR_RXRDY (0x0100)
-#define MCF_PSC_SR_FU (0x0200)
-#define MCF_PSC_SR_TXRDY (0x0400)
-#define MCF_PSC_SR_TXEMP_URERR (0x0800)
-#define MCF_PSC_SR_OE (0x1000)
-#define MCF_PSC_SR_PE_CRCERR (0x2000)
-#define MCF_PSC_SR_FE_PHYERR (0x4000)
-#define MCF_PSC_SR_RB_NEOF (0x8000)
-
-/* Bit definitions and macros for MCF_PSC_CSR */
-#define MCF_PSC_CSR_TCSEL(x) (((x)&0x0F)<<0)
-#define MCF_PSC_CSR_RCSEL(x) (((x)&0x0F)<<4)
-#define MCF_PSC_CSR_RCSEL_SYS_CLK (0xD0)
-#define MCF_PSC_CSR_RCSEL_CTM16 (0xE0)
-#define MCF_PSC_CSR_RCSEL_CTM (0xF0)
-#define MCF_PSC_CSR_TCSEL_SYS_CLK (0x0D)
-#define MCF_PSC_CSR_TCSEL_CTM16 (0x0E)
-#define MCF_PSC_CSR_TCSEL_CTM (0x0F)
-
-/* Bit definitions and macros for MCF_PSC_CR */
-#define MCF_PSC_CR_RXC(x) (((x)&0x03)<<0)
-#define MCF_PSC_CR_TXC(x) (((x)&0x03)<<2)
-#define MCF_PSC_CR_MISC(x) (((x)&0x07)<<4)
-#define MCF_PSC_CR_NONE (0x00)
-#define MCF_PSC_CR_STOP_BREAK (0x70)
-#define MCF_PSC_CR_START_BREAK (0x60)
-#define MCF_PSC_CR_BKCHGINT (0x50)
-#define MCF_PSC_CR_RESET_ERROR (0x40)
-#define MCF_PSC_CR_RESET_TX (0x30)
-#define MCF_PSC_CR_RESET_RX (0x20)
-#define MCF_PSC_CR_RESET_MR (0x10)
-#define MCF_PSC_CR_TX_DISABLED (0x08)
-#define MCF_PSC_CR_TX_ENABLED (0x04)
-#define MCF_PSC_CR_RX_DISABLED (0x02)
-#define MCF_PSC_CR_RX_ENABLED (0x01)
-
-/* Bit definitions and macros for MCF_PSC_TB_8BIT */
-#define MCF_PSC_TB_8BIT_TB3(x) (((x)&0x000000FF)<<0)
-#define MCF_PSC_TB_8BIT_TB2(x) (((x)&0x000000FF)<<8)
-#define MCF_PSC_TB_8BIT_TB1(x) (((x)&0x000000FF)<<16)
-#define MCF_PSC_TB_8BIT_TB0(x) (((x)&0x000000FF)<<24)
-
-/* Bit definitions and macros for MCF_PSC_TB_16BIT */
-#define MCF_PSC_TB_16BIT_TB1(x) (((x)&0x0000FFFF)<<0)
-#define MCF_PSC_TB_16BIT_TB0(x) (((x)&0x0000FFFF)<<16)
-
-/* Bit definitions and macros for MCF_PSC_TB_AC97 */
-#define MCF_PSC_TB_AC97_SOF (0x00000800)
-#define MCF_PSC_TB_AC97_TB(x) (((x)&0x000FFFFF)<<12)
-
-/* Bit definitions and macros for MCF_PSC_IPCR */
-#define MCF_PSC_IPCR_RESERVED (0x0C)
-#define MCF_PSC_IPCR_CTS (0x0D)
-#define MCF_PSC_IPCR_D_CTS (0x1C)
-#define MCF_PSC_IPCR_SYNC (0x8C)
-
-/* Bit definitions and macros for MCF_PSC_ACR */
-#define MCF_PSC_ACR_IEC0 (0x01)
-#define MCF_PSC_ACR_CTMS(x) (((x)&0x07)<<4)
-#define MCF_PSC_ACR_BRG (0x80)
-
-/* Bit definitions and macros for MCF_PSC_ISR */
-#define MCF_PSC_ISR_ERR (0x0040)
-#define MCF_PSC_ISR_DEOF (0x0080)
-#define MCF_PSC_ISR_TXRDY (0x0100)
-#define MCF_PSC_ISR_RXRDY_FU (0x0200)
-#define MCF_PSC_ISR_DB (0x0400)
-#define MCF_PSC_ISR_IPC (0x8000)
-
-/* Bit definitions and macros for MCF_PSC_IMR */
-#define MCF_PSC_IMR_ERR (0x0040)
-#define MCF_PSC_IMR_DEOF (0x0080)
-#define MCF_PSC_IMR_TXRDY (0x0100)
-#define MCF_PSC_IMR_RXRDY_FU (0x0200)
-#define MCF_PSC_IMR_DB (0x0400)
-#define MCF_PSC_IMR_IPC (0x8000)
-
-/* Bit definitions and macros for MCF_PSC_IP */
-#define MCF_PSC_IP_CTS (0x01)
-#define MCF_PSC_IP_TGL (0x40)
-#define MCF_PSC_IP_LWPR_B (0x80)
-
-/* Bit definitions and macros for MCF_PSC_OPSET */
-#define MCF_PSC_OPSET_RTS (0x01)
-
-/* Bit definitions and macros for MCF_PSC_OPRESET */
-#define MCF_PSC_OPRESET_RTS (0x01)
-
-/* Bit definitions and macros for MCF_PSC_SICR */
-#define MCF_PSC_SICR_SIM(x) (((x)&0x07)<<0)
-#define MCF_PSC_SICR_SHDIR (0x10)
-#define MCF_PSC_SICR_DTS (0x20)
-#define MCF_PSC_SICR_AWR (0x40)
-#define MCF_PSC_SICR_ACRB (0x80)
-#define MCF_PSC_SICR_SIM_UART (0x00)
-#define MCF_PSC_SICR_SIM_MODEM8 (0x01)
-#define MCF_PSC_SICR_SIM_MODEM16 (0x02)
-#define MCF_PSC_SICR_SIM_AC97 (0x03)
-#define MCF_PSC_SICR_SIM_SIR (0x04)
-#define MCF_PSC_SICR_SIM_MIR (0x05)
-#define MCF_PSC_SICR_SIM_FIR (0x06)
-
-/* Bit definitions and macros for MCF_PSC_IRCR1 */
-#define MCF_PSC_IRCR1_SPUL (0x01)
-#define MCF_PSC_IRCR1_SIPEN (0x02)
-#define MCF_PSC_IRCR1_FD (0x04)
-
-/* Bit definitions and macros for MCF_PSC_IRCR2 */
-#define MCF_PSC_IRCR2_NXTEOF (0x01)
-#define MCF_PSC_IRCR2_ABORT (0x02)
-#define MCF_PSC_IRCR2_SIPREQ (0x04)
-
-/* Bit definitions and macros for MCF_PSC_IRMDR */
-#define MCF_PSC_IRMDR_M_FDIV(x) (((x)&0x7F)<<0)
-#define MCF_PSC_IRMDR_FREQ (0x80)
-
-/* Bit definitions and macros for MCF_PSC_IRFDR */
-#define MCF_PSC_IRFDR_F_FDIV(x) (((x)&0x0F)<<0)
-
-/* Bit definitions and macros for MCF_PSC_RFCNT */
-#define MCF_PSC_RFCNT_CNT(x) (((x)&0x01FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_TFCNT */
-#define MCF_PSC_TFCNT_CNT(x) (((x)&0x01FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_RFSR */
-#define MCF_PSC_RFSR_EMT (0x0001)
-#define MCF_PSC_RFSR_ALARM (0x0002)
-#define MCF_PSC_RFSR_FU (0x0004)
-#define MCF_PSC_RFSR_FRMRY (0x0008)
-#define MCF_PSC_RFSR_OF (0x0010)
-#define MCF_PSC_RFSR_UF (0x0020)
-#define MCF_PSC_RFSR_RXW (0x0040)
-#define MCF_PSC_RFSR_FAE (0x0080)
-#define MCF_PSC_RFSR_FRM(x) (((x)&0x000F)<<8)
-#define MCF_PSC_RFSR_TAG (0x1000)
-#define MCF_PSC_RFSR_TXW (0x4000)
-#define MCF_PSC_RFSR_IP (0x8000)
-#define MCF_PSC_RFSR_FRM_BYTE0 (0x0800)
-#define MCF_PSC_RFSR_FRM_BYTE1 (0x0400)
-#define MCF_PSC_RFSR_FRM_BYTE2 (0x0200)
-#define MCF_PSC_RFSR_FRM_BYTE3 (0x0100)
-
-/* Bit definitions and macros for MCF_PSC_TFSR */
-#define MCF_PSC_TFSR_EMT (0x0001)
-#define MCF_PSC_TFSR_ALARM (0x0002)
-#define MCF_PSC_TFSR_FU (0x0004)
-#define MCF_PSC_TFSR_FRMRY (0x0008)
-#define MCF_PSC_TFSR_OF (0x0010)
-#define MCF_PSC_TFSR_UF (0x0020)
-#define MCF_PSC_TFSR_RXW (0x0040)
-#define MCF_PSC_TFSR_FAE (0x0080)
-#define MCF_PSC_TFSR_FRM(x) (((x)&0x000F)<<8)
-#define MCF_PSC_TFSR_TAG (0x1000)
-#define MCF_PSC_TFSR_TXW (0x4000)
-#define MCF_PSC_TFSR_IP (0x8000)
-#define MCF_PSC_TFSR_FRM_BYTE0 (0x0800)
-#define MCF_PSC_TFSR_FRM_BYTE1 (0x0400)
-#define MCF_PSC_TFSR_FRM_BYTE2 (0x0200)
-#define MCF_PSC_TFSR_FRM_BYTE3 (0x0100)
-
-/* Bit definitions and macros for MCF_PSC_RFCR */
-#define MCF_PSC_RFCR_CNTR(x) (((x)&0x0000FFFF)<<0)
-#define MCF_PSC_RFCR_TXW_MSK (0x00040000)
-#define MCF_PSC_RFCR_OF_MSK (0x00080000)
-#define MCF_PSC_RFCR_UF_MSK (0x00100000)
-#define MCF_PSC_RFCR_RXW_MSK (0x00200000)
-#define MCF_PSC_RFCR_FAE_MSK (0x00400000)
-#define MCF_PSC_RFCR_IP_MSK (0x00800000)
-#define MCF_PSC_RFCR_GR(x) (((x)&0x00000007)<<24)
-#define MCF_PSC_RFCR_FRMEN (0x08000000)
-#define MCF_PSC_RFCR_TIMER (0x10000000)
-#define MCF_PSC_RFCR_WRITETAG (0x20000000)
-#define MCF_PSC_RFCR_SHADOW (0x80000000)
-
-/* Bit definitions and macros for MCF_PSC_TFCR */
-#define MCF_PSC_TFCR_CNTR(x) (((x)&0x0000FFFF)<<0)
-#define MCF_PSC_TFCR_TXW_MSK (0x00040000)
-#define MCF_PSC_TFCR_OF_MSK (0x00080000)
-#define MCF_PSC_TFCR_UF_MSK (0x00100000)
-#define MCF_PSC_TFCR_RXW_MSK (0x00200000)
-#define MCF_PSC_TFCR_FAE_MSK (0x00400000)
-#define MCF_PSC_TFCR_IP_MSK (0x00800000)
-#define MCF_PSC_TFCR_GR(x) (((x)&0x00000007)<<24)
-#define MCF_PSC_TFCR_FRMEN (0x08000000)
-#define MCF_PSC_TFCR_TIMER (0x10000000)
-#define MCF_PSC_TFCR_WRITETAG (0x20000000)
-#define MCF_PSC_TFCR_SHADOW (0x80000000)
-
-/* Bit definitions and macros for MCF_PSC_RFAR */
-#define MCF_PSC_RFAR_ALARM(x) (((x)&0x01FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_TFAR */
-#define MCF_PSC_TFAR_ALARM(x) (((x)&0x01FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_RFRP */
-#define MCF_PSC_RFRP_READ(x) (((x)&0x01FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_TFRP */
-#define MCF_PSC_TFRP_READ(x) (((x)&0x01FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_RFWP */
-#define MCF_PSC_RFWP_WRITE(x) (((x)&0x01FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_TFWP */
-#define MCF_PSC_TFWP_WRITE(x) (((x)&0x01FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_RLRFP */
-#define MCF_PSC_RLRFP_LFP(x) (((x)&0x01FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_TLRFP */
-#define MCF_PSC_TLRFP_LFP(x) (((x)&0x01FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_RLWFP */
-#define MCF_PSC_RLWFP_LFP(x) (((x)&0x01FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_TLWFP */
-#define MCF_PSC_TLWFP_LFP(x) (((x)&0x01FF)<<0)
-
-#endif /* __MCF548X_PSC_H__ */
diff --git a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_sdramc.h b/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_sdramc.h
deleted file mode 100644
index 452332d1d9..0000000000
--- a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_sdramc.h
+++ /dev/null
@@ -1,109 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Register and bit definitions for the MCF548X and MCF547x
- * SDRAM Controller (SDRAMC)
- */
-#ifndef __MCF548X_SDRAMC_H__
-#define __MCF548X_SDRAMC_H__
-
-/*
- * SDRAM Controller (SDRAMC)
- */
-
-/* Register read/write macros */
-#define MCF_SDRAMC_SDRAMDS (*(vuint32_t*)(&__MBAR[0x000004]))
-#define MCF_SDRAMC_CS0CFG (*(vuint32_t*)(&__MBAR[0x000020]))
-#define MCF_SDRAMC_CS1CFG (*(vuint32_t*)(&__MBAR[0x000024]))
-#define MCF_SDRAMC_CS2CFG (*(vuint32_t*)(&__MBAR[0x000028]))
-#define MCF_SDRAMC_CS3CFG (*(vuint32_t*)(&__MBAR[0x00002C]))
-#define MCF_SDRAMC_CSnCFG(x) (*(vuint32_t*)(&__MBAR[0x000020+((x)*0x004)]))
-#define MCF_SDRAMC_SDMR (*(vuint32_t*)(&__MBAR[0x000100]))
-#define MCF_SDRAMC_SDCR (*(vuint32_t*)(&__MBAR[0x000104]))
-#define MCF_SDRAMC_SDCFG1 (*(vuint32_t*)(&__MBAR[0x000108]))
-#define MCF_SDRAMC_SDCFG2 (*(vuint32_t*)(&__MBAR[0x00010C]))
-
-/* Bit definitions and macros for MCF_SDRAMC_SDRAMDS */
-#define MCF_SDRAMC_SDRAMDS_SB_D(x) (((x)&0x00000003)<<0)
-#define MCF_SDRAMC_SDRAMDS_SB_S(x) (((x)&0x00000003)<<2)
-#define MCF_SDRAMC_SDRAMDS_SB_A(x) (((x)&0x00000003)<<4)
-#define MCF_SDRAMC_SDRAMDS_SB_C(x) (((x)&0x00000003)<<6)
-#define MCF_SDRAMC_SDRAMDS_SB_E(x) (((x)&0x00000003)<<8)
-#define MCF_SDRAMC_SDRAMDS_DRIVE_8MA (0x02)
-#define MCF_SDRAMC_SDRAMDS_DRIVE_16MA (0x01)
-#define MCF_SDRAMC_SDRAMDS_DRIVE_24MA (0x00)
-#define MCF_SDRAMC_SDRAMDS_DRIVE_NONE (0x03)
-
-/* Bit definitions and macros for MCF_SDRAMC_CSnCFG */
-#define MCF_SDRAMC_CSnCFG_CSSZ(x) (((x)&0x0000001F)<<0)
-#define MCF_SDRAMC_CSnCFG_CSBA(x) (((x)&0x00000FFF)<<20)
-#define MCF_SDRAMC_CSnCFG_CSSZ_DIABLE (0x00000000)
-#define MCF_SDRAMC_CSnCFG_CSSZ_1MBYTE (0x00000013)
-#define MCF_SDRAMC_CSnCFG_CSSZ_2MBYTE (0x00000014)
-#define MCF_SDRAMC_CSnCFG_CSSZ_4MBYTE (0x00000015)
-#define MCF_SDRAMC_CSnCFG_CSSZ_8MBYTE (0x00000016)
-#define MCF_SDRAMC_CSnCFG_CSSZ_16MBYTE (0x00000017)
-#define MCF_SDRAMC_CSnCFG_CSSZ_32MBYTE (0x00000018)
-#define MCF_SDRAMC_CSnCFG_CSSZ_64MBYTE (0x00000019)
-#define MCF_SDRAMC_CSnCFG_CSSZ_128MBYTE (0x0000001A)
-#define MCF_SDRAMC_CSnCFG_CSSZ_256MBYTE (0x0000001B)
-#define MCF_SDRAMC_CSnCFG_CSSZ_512MBYTE (0x0000001C)
-#define MCF_SDRAMC_CSnCFG_CSSZ_1GBYTE (0x0000001D)
-#define MCF_SDRAMC_CSnCFG_CSSZ_2GBYTE (0x0000001E)
-#define MCF_SDRAMC_CSnCFG_CSSZ_4GBYTE (0x0000001F)
-
-/* Bit definitions and macros for MCF_SDRAMC_SDMR */
-#define MCF_SDRAMC_SDMR_CMD (0x00010000)
-#define MCF_SDRAMC_SDMR_AD(x) (((x)&0x00000FFF)<<18)
-#define MCF_SDRAMC_SDMR_BNKAD(x) (((x)&0x00000003)<<30)
-#define MCF_SDRAMC_SDMR_BNKAD_LMR (0x00000000)
-#define MCF_SDRAMC_SDMR_BNKAD_LEMR (0x40000000)
-
-/* Bit definitions and macros for MCF_SDRAMC_SDCR */
-#define MCF_SDRAMC_SDCR_IPALL (0x00000002)
-#define MCF_SDRAMC_SDCR_IREF (0x00000004)
-#define MCF_SDRAMC_SDCR_BUFF (0x00000010)
-#define MCF_SDRAMC_SDCR_DQS_OE(x) (((x)&0x0000000F)<<8)
-#define MCF_SDRAMC_SDCR_RCNT(x) (((x)&0x0000003F)<<16)
-#define MCF_SDRAMC_SDCR_DRIVE (0x00400000)
-#define MCF_SDRAMC_SDCR_AP (0x00800000)
-#define MCF_SDRAMC_SDCR_MUX(x) (((x)&0x00000003)<<24)
-#define MCF_SDRAMC_SDCR_REF (0x10000000)
-#define MCF_SDRAMC_SDCR_DDR (0x20000000)
-#define MCF_SDRAMC_SDCR_CKE (0x40000000)
-#define MCF_SDRAMC_SDCR_MODE_EN (0x80000000)
-
-/* Bit definitions and macros for MCF_SDRAMC_SDCFG1 */
-#define MCF_SDRAMC_SDCFG1_WTLAT(x) (((x)&0x00000007)<<4)
-#define MCF_SDRAMC_SDCFG1_REF2ACT(x) (((x)&0x0000000F)<<8)
-#define MCF_SDRAMC_SDCFG1_PRE2ACT(x) (((x)&0x00000007)<<12)
-#define MCF_SDRAMC_SDCFG1_ACT2RW(x) (((x)&0x00000007)<<16)
-#define MCF_SDRAMC_SDCFG1_RDLAT(x) (((x)&0x0000000F)<<20)
-#define MCF_SDRAMC_SDCFG1_SWT2RD(x) (((x)&0x00000007)<<24)
-#define MCF_SDRAMC_SDCFG1_SRD2RW(x) (((x)&0x0000000F)<<28)
-
-/* Bit definitions and macros for MCF_SDRAMC_SDCFG2 */
-#define MCF_SDRAMC_SDCFG2_BL(x) (((x)&0x0000000F)<<16)
-#define MCF_SDRAMC_SDCFG2_BRD2WT(x) (((x)&0x0000000F)<<20)
-#define MCF_SDRAMC_SDCFG2_BWT2RW(x) (((x)&0x0000000F)<<24)
-#define MCF_SDRAMC_SDCFG2_BRD2PRE(x) (((x)&0x0000000F)<<28)
-
-#endif /* __MCF548X_SDRAMC_H__ */
diff --git a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_sec.h b/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_sec.h
deleted file mode 100644
index 552527d381..0000000000
--- a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_sec.h
+++ /dev/null
@@ -1,389 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Register and bit definitions for the MCF548X and MCF547x
- * Integrated Security Engine (SEC)
- */
-#ifndef __MCF548X_SEC_H__
-#define __MCF548X_SEC_H__
-
-/*
- * Integrated Security Engine (SEC)
- */
-
-/* Register read/write macros */
-#define MCF_SEC_EUACRH (*(vuint32_t*)(&__MBAR[0x021000]))
-#define MCF_SEC_EUACRL (*(vuint32_t*)(&__MBAR[0x021004]))
-#define MCF_SEC_EUASRH (*(vuint32_t*)(&__MBAR[0x021028]))
-#define MCF_SEC_EUASRL (*(vuint32_t*)(&__MBAR[0x02102C]))
-#define MCF_SEC_SIMRH (*(vuint32_t*)(&__MBAR[0x021008]))
-#define MCF_SEC_SIMRL (*(vuint32_t*)(&__MBAR[0x02100C]))
-#define MCF_SEC_SISRH (*(vuint32_t*)(&__MBAR[0x021010]))
-#define MCF_SEC_SISRL (*(vuint32_t*)(&__MBAR[0x021014]))
-#define MCF_SEC_SICRH (*(vuint32_t*)(&__MBAR[0x021018]))
-#define MCF_SEC_SICRL (*(vuint32_t*)(&__MBAR[0x02101C]))
-#define MCF_SEC_SIDR (*(vuint32_t*)(&__MBAR[0x021020]))
-#define MCF_SEC_SMCR (*(vuint32_t*)(&__MBAR[0x021030]))
-#define MCF_SEC_MEAR (*(vuint32_t*)(&__MBAR[0x021038]))
-#define MCF_SEC_CCCR0 (*(vuint32_t*)(&__MBAR[0x02200C]))
-#define MCF_SEC_CCCR1 (*(vuint32_t*)(&__MBAR[0x02300C]))
-#define MCF_SEC_CCPSRH0 (*(vuint32_t*)(&__MBAR[0x022010]))
-#define MCF_SEC_CCPSRH1 (*(vuint32_t*)(&__MBAR[0x023010]))
-#define MCF_SEC_CCPSRL0 (*(vuint32_t*)(&__MBAR[0x022014]))
-#define MCF_SEC_CCPSRL1 (*(vuint32_t*)(&__MBAR[0x023014]))
-#define MCF_SEC_CDPR0 (*(vuint32_t*)(&__MBAR[0x022044]))
-#define MCF_SEC_CDPR1 (*(vuint32_t*)(&__MBAR[0x023044]))
-#define MCF_SEC_FR0 (*(vuint32_t*)(&__MBAR[0x02204C]))
-#define MCF_SEC_FR1 (*(vuint32_t*)(&__MBAR[0x02304C]))
-#define MCF_SEC_AFRCR (*(vuint32_t*)(&__MBAR[0x028018]))
-#define MCF_SEC_AFSR (*(vuint32_t*)(&__MBAR[0x028028]))
-#define MCF_SEC_AFISR (*(vuint32_t*)(&__MBAR[0x028030]))
-#define MCF_SEC_AFIMR (*(vuint32_t*)(&__MBAR[0x028038]))
-#define MCF_SEC_DRCR (*(vuint32_t*)(&__MBAR[0x02A018]))
-#define MCF_SEC_DSR (*(vuint32_t*)(&__MBAR[0x02A028]))
-#define MCF_SEC_DISR (*(vuint32_t*)(&__MBAR[0x02A030]))
-#define MCF_SEC_DIMR (*(vuint32_t*)(&__MBAR[0x02A038]))
-#define MCF_SEC_MDRCR (*(vuint32_t*)(&__MBAR[0x02C018]))
-#define MCF_SEC_MDSR (*(vuint32_t*)(&__MBAR[0x02C028]))
-#define MCF_SEC_MDISR (*(vuint32_t*)(&__MBAR[0x02C030]))
-#define MCF_SEC_MDIMR (*(vuint32_t*)(&__MBAR[0x02C038]))
-#define MCF_SEC_RNGRCR (*(vuint32_t*)(&__MBAR[0x02E018]))
-#define MCF_SEC_RNGSR (*(vuint32_t*)(&__MBAR[0x02E028]))
-#define MCF_SEC_RNGISR (*(vuint32_t*)(&__MBAR[0x02E030]))
-#define MCF_SEC_RNGIMR (*(vuint32_t*)(&__MBAR[0x02E038]))
-#define MCF_SEC_AESRCR (*(vuint32_t*)(&__MBAR[0x032018]))
-#define MCF_SEC_AESSR (*(vuint32_t*)(&__MBAR[0x032028]))
-#define MCF_SEC_AESISR (*(vuint32_t*)(&__MBAR[0x032030]))
-#define MCF_SEC_AESIMR (*(vuint32_t*)(&__MBAR[0x032038]))
-
-/* Bit definitions and macros for MCF_SEC_EUACRH */
-#define MCF_SEC_EUACRH_AFEU(x) (((x)&0x0000000F)<<0)
-#define MCF_SEC_EUACRH_MDEU(x) (((x)&0x0000000F)<<8)
-#define MCF_SEC_EUACRH_RNG(x) (((x)&0x0000000F)<<24)
-#define MCF_SEC_EUACRH_RNG_NOASSIGN (0x00000000)
-#define MCF_SEC_EUACRH_RNG_CHA0 (0x01000000)
-#define MCF_SEC_EUACRH_RNG_CHA1 (0x02000000)
-#define MCF_SEC_EUACRH_MDEU_NOASSIGN (0x00000000)
-#define MCF_SEC_EUACRH_MDEU_CHA0 (0x00000100)
-#define MCF_SEC_EUACRH_MDEU_CHA1 (0x00000200)
-#define MCF_SEC_EUACRH_AFEU_NOASSIGN (0x00000000)
-#define MCF_SEC_EUACRH_AFEU_CHA0 (0x00000001)
-#define MCF_SEC_EUACRH_AFEU_CHA1 (0x00000002)
-
-/* Bit definitions and macros for MCF_SEC_EUACRL */
-#define MCF_SEC_EUACRL_AESU(x) (((x)&0x0000000F)<<16)
-#define MCF_SEC_EUACRL_DEU(x) (((x)&0x0000000F)<<24)
-#define MCF_SEC_EUACRL_DEU_NOASSIGN (0x00000000)
-#define MCF_SEC_EUACRL_DEU_CHA0 (0x01000000)
-#define MCF_SEC_EUACRL_DEU_CHA1 (0x02000000)
-#define MCF_SEC_EUACRL_AESU_NOASSIGN (0x00000000)
-#define MCF_SEC_EUACRL_AESU_CHA0 (0x00010000)
-#define MCF_SEC_EUACRL_AESU_CHA1 (0x00020000)
-
-/* Bit definitions and macros for MCF_SEC_EUASRH */
-#define MCF_SEC_EUASRH_AFEU(x) (((x)&0x0000000F)<<0)
-#define MCF_SEC_EUASRH_MDEU(x) (((x)&0x0000000F)<<8)
-#define MCF_SEC_EUASRH_RNG(x) (((x)&0x0000000F)<<24)
-
-/* Bit definitions and macros for MCF_SEC_EUASRL */
-#define MCF_SEC_EUASRL_AESU(x) (((x)&0x0000000F)<<16)
-#define MCF_SEC_EUASRL_DEU(x) (((x)&0x0000000F)<<24)
-
-/* Bit definitions and macros for MCF_SEC_SIMRH */
-#define MCF_SEC_SIMRH_AERR (0x08000000)
-#define MCF_SEC_SIMRH_CHA0DN (0x10000000)
-#define MCF_SEC_SIMRH_CHA0ERR (0x20000000)
-#define MCF_SEC_SIMRH_CHA1DN (0x40000000)
-#define MCF_SEC_SIMRH_CHA1ERR (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_SIMRL */
-#define MCF_SEC_SIMRL_TEA (0x00000040)
-#define MCF_SEC_SIMRL_DEUDN (0x00000100)
-#define MCF_SEC_SIMRL_DEUERR (0x00000200)
-#define MCF_SEC_SIMRL_AESUDN (0x00001000)
-#define MCF_SEC_SIMRL_AESUERR (0x00002000)
-#define MCF_SEC_SIMRL_MDEUDN (0x00010000)
-#define MCF_SEC_SIMRL_MDEUERR (0x00020000)
-#define MCF_SEC_SIMRL_AFEUDN (0x00100000)
-#define MCF_SEC_SIMRL_AFEUERR (0x00200000)
-#define MCF_SEC_SIMRL_RNGDN (0x01000000)
-#define MCF_SEC_SIMRL_RNGERR (0x02000000)
-
-/* Bit definitions and macros for MCF_SEC_SISRH */
-#define MCF_SEC_SISRH_AERR (0x08000000)
-#define MCF_SEC_SISRH_CHA0DN (0x10000000)
-#define MCF_SEC_SISRH_CHA0ERR (0x20000000)
-#define MCF_SEC_SISRH_CHA1DN (0x40000000)
-#define MCF_SEC_SISRH_CHA1ERR (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_SISRL */
-#define MCF_SEC_SISRL_TEA (0x00000040)
-#define MCF_SEC_SISRL_DEUDN (0x00000100)
-#define MCF_SEC_SISRL_DEUERR (0x00000200)
-#define MCF_SEC_SISRL_AESUDN (0x00001000)
-#define MCF_SEC_SISRL_AESUERR (0x00002000)
-#define MCF_SEC_SISRL_MDEUDN (0x00010000)
-#define MCF_SEC_SISRL_MDEUERR (0x00020000)
-#define MCF_SEC_SISRL_AFEUDN (0x00100000)
-#define MCF_SEC_SISRL_AFEUERR (0x00200000)
-#define MCF_SEC_SISRL_RNGDN (0x01000000)
-#define MCF_SEC_SISRL_RNGERR (0x02000000)
-
-/* Bit definitions and macros for MCF_SEC_SICRH */
-#define MCF_SEC_SICRH_AERR (0x08000000)
-#define MCF_SEC_SICRH_CHA0DN (0x10000000)
-#define MCF_SEC_SICRH_CHA0ERR (0x20000000)
-#define MCF_SEC_SICRH_CHA1DN (0x40000000)
-#define MCF_SEC_SICRH_CHA1ERR (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_SICRL */
-#define MCF_SEC_SICRL_TEA (0x00000040)
-#define MCF_SEC_SICRL_DEUDN (0x00000100)
-#define MCF_SEC_SICRL_DEUERR (0x00000200)
-#define MCF_SEC_SICRL_AESUDN (0x00001000)
-#define MCF_SEC_SICRL_AESUERR (0x00002000)
-#define MCF_SEC_SICRL_MDEUDN (0x00010000)
-#define MCF_SEC_SICRL_MDEUERR (0x00020000)
-#define MCF_SEC_SICRL_AFEUDN (0x00100000)
-#define MCF_SEC_SICRL_AFEUERR (0x00200000)
-#define MCF_SEC_SICRL_RNGDN (0x01000000)
-#define MCF_SEC_SICRL_RNGERR (0x02000000)
-
-/* Bit definitions and macros for MCF_SEC_SMCR */
-#define MCF_SEC_SMCR_CURR_CHAN(x) (((x)&0x0000000F)<<4)
-#define MCF_SEC_SMCR_SWR (0x01000000)
-#define MCF_SEC_SMCR_CURR_CHAN_1 (0x00000010)
-#define MCF_SEC_SMCR_CURR_CHAN_2 (0x00000020)
-
-/* Bit definitions and macros for MCF_SEC_CCCRn */
-#define MCF_SEC_CCCRn_RST (0x00000001)
-#define MCF_SEC_CCCRn_CDIE (0x00000002)
-#define MCF_SEC_CCCRn_NT (0x00000004)
-#define MCF_SEC_CCCRn_NE (0x00000008)
-#define MCF_SEC_CCCRn_WE (0x00000010)
-#define MCF_SEC_CCCRn_BURST_SIZE(x) (((x)&0x00000007)<<8)
-#define MCF_SEC_CCCRn_BURST_SIZE_2 (0x00000000)
-#define MCF_SEC_CCCRn_BURST_SIZE_8 (0x00000100)
-#define MCF_SEC_CCCRn_BURST_SIZE_16 (0x00000200)
-#define MCF_SEC_CCCRn_BURST_SIZE_24 (0x00000300)
-#define MCF_SEC_CCCRn_BURST_SIZE_32 (0x00000400)
-#define MCF_SEC_CCCRn_BURST_SIZE_40 (0x00000500)
-#define MCF_SEC_CCCRn_BURST_SIZE_48 (0x00000600)
-#define MCF_SEC_CCCRn_BURST_SIZE_56 (0x00000700)
-
-/* Bit definitions and macros for MCF_SEC_CCPSRHn */
-#define MCF_SEC_CCPSRHn_STATE(x) (((x)&0x000000FF)<<0)
-
-/* Bit definitions and macros for MCF_SEC_CCPSRLn */
-#define MCF_SEC_CCPSRLn_PAIR_PTR(x) (((x)&0x000000FF)<<0)
-#define MCF_SEC_CCPSRLn_EUERR (0x00000100)
-#define MCF_SEC_CCPSRLn_SERR (0x00000200)
-#define MCF_SEC_CCPSRLn_DERR (0x00000400)
-#define MCF_SEC_CCPSRLn_PERR (0x00001000)
-#define MCF_SEC_CCPSRLn_TEA (0x00002000)
-#define MCF_SEC_CCPSRLn_SD (0x00010000)
-#define MCF_SEC_CCPSRLn_PD (0x00020000)
-#define MCF_SEC_CCPSRLn_SRD (0x00040000)
-#define MCF_SEC_CCPSRLn_PRD (0x00080000)
-#define MCF_SEC_CCPSRLn_SG (0x00100000)
-#define MCF_SEC_CCPSRLn_PG (0x00200000)
-#define MCF_SEC_CCPSRLn_SR (0x00400000)
-#define MCF_SEC_CCPSRLn_PR (0x00800000)
-#define MCF_SEC_CCPSRLn_MO (0x01000000)
-#define MCF_SEC_CCPSRLn_MI (0x02000000)
-#define MCF_SEC_CCPSRLn_STAT (0x04000000)
-
-/* Bit definitions and macros for MCF_SEC_AFRCR */
-#define MCF_SEC_AFRCR_SR (0x01000000)
-#define MCF_SEC_AFRCR_MI (0x02000000)
-#define MCF_SEC_AFRCR_RI (0x04000000)
-
-/* Bit definitions and macros for MCF_SEC_AFSR */
-#define MCF_SEC_AFSR_RD (0x01000000)
-#define MCF_SEC_AFSR_ID (0x02000000)
-#define MCF_SEC_AFSR_IE (0x04000000)
-#define MCF_SEC_AFSR_OFE (0x08000000)
-#define MCF_SEC_AFSR_IFW (0x10000000)
-#define MCF_SEC_AFSR_HALT (0x20000000)
-
-/* Bit definitions and macros for MCF_SEC_AFISR */
-#define MCF_SEC_AFISR_DSE (0x00010000)
-#define MCF_SEC_AFISR_KSE (0x00020000)
-#define MCF_SEC_AFISR_CE (0x00040000)
-#define MCF_SEC_AFISR_ERE (0x00080000)
-#define MCF_SEC_AFISR_IE (0x00100000)
-#define MCF_SEC_AFISR_OFU (0x02000000)
-#define MCF_SEC_AFISR_IFO (0x04000000)
-#define MCF_SEC_AFISR_IFE (0x10000000)
-#define MCF_SEC_AFISR_OFE (0x20000000)
-#define MCF_SEC_AFISR_AE (0x40000000)
-#define MCF_SEC_AFISR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_AFIMR */
-#define MCF_SEC_AFIMR_DSE (0x00010000)
-#define MCF_SEC_AFIMR_KSE (0x00020000)
-#define MCF_SEC_AFIMR_CE (0x00040000)
-#define MCF_SEC_AFIMR_ERE (0x00080000)
-#define MCF_SEC_AFIMR_IE (0x00100000)
-#define MCF_SEC_AFIMR_OFU (0x02000000)
-#define MCF_SEC_AFIMR_IFO (0x04000000)
-#define MCF_SEC_AFIMR_IFE (0x10000000)
-#define MCF_SEC_AFIMR_OFE (0x20000000)
-#define MCF_SEC_AFIMR_AE (0x40000000)
-#define MCF_SEC_AFIMR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_DRCR */
-#define MCF_SEC_DRCR_SR (0x01000000)
-#define MCF_SEC_DRCR_MI (0x02000000)
-#define MCF_SEC_DRCR_RI (0x04000000)
-
-/* Bit definitions and macros for MCF_SEC_DSR */
-#define MCF_SEC_DSR_RD (0x01000000)
-#define MCF_SEC_DSR_ID (0x02000000)
-#define MCF_SEC_DSR_IE (0x04000000)
-#define MCF_SEC_DSR_OFR (0x08000000)
-#define MCF_SEC_DSR_IFW (0x10000000)
-#define MCF_SEC_DSR_HALT (0x20000000)
-
-/* Bit definitions and macros for MCF_SEC_DISR */
-#define MCF_SEC_DISR_DSE (0x00010000)
-#define MCF_SEC_DISR_KSE (0x00020000)
-#define MCF_SEC_DISR_CE (0x00040000)
-#define MCF_SEC_DISR_ERE (0x00080000)
-#define MCF_SEC_DISR_IE (0x00100000)
-#define MCF_SEC_DISR_KPE (0x00200000)
-#define MCF_SEC_DISR_OFU (0x02000000)
-#define MCF_SEC_DISR_IFO (0x04000000)
-#define MCF_SEC_DISR_IFE (0x10000000)
-#define MCF_SEC_DISR_OFE (0x20000000)
-#define MCF_SEC_DISR_AE (0x40000000)
-#define MCF_SEC_DISR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_DIMR */
-#define MCF_SEC_DIMR_DSE (0x00010000)
-#define MCF_SEC_DIMR_KSE (0x00020000)
-#define MCF_SEC_DIMR_CE (0x00040000)
-#define MCF_SEC_DIMR_ERE (0x00080000)
-#define MCF_SEC_DIMR_IE (0x00100000)
-#define MCF_SEC_DIMR_KPE (0x00200000)
-#define MCF_SEC_DIMR_OFU (0x02000000)
-#define MCF_SEC_DIMR_IFO (0x04000000)
-#define MCF_SEC_DIMR_IFE (0x10000000)
-#define MCF_SEC_DIMR_OFE (0x20000000)
-#define MCF_SEC_DIMR_AE (0x40000000)
-#define MCF_SEC_DIMR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_MDRCR */
-#define MCF_SEC_MDRCR_SR (0x01000000)
-#define MCF_SEC_MDRCR_MI (0x02000000)
-#define MCF_SEC_MDRCR_RI (0x04000000)
-
-/* Bit definitions and macros for MCF_SEC_MDSR */
-#define MCF_SEC_MDSR_RD (0x01000000)
-#define MCF_SEC_MDSR_ID (0x02000000)
-#define MCF_SEC_MDSR_IE (0x04000000)
-#define MCF_SEC_MDSR_IFW (0x10000000)
-#define MCF_SEC_MDSR_HALT (0x20000000)
-
-/* Bit definitions and macros for MCF_SEC_MDISR */
-#define MCF_SEC_MDISR_DSE (0x00010000)
-#define MCF_SEC_MDISR_KSE (0x00020000)
-#define MCF_SEC_MDISR_CE (0x00040000)
-#define MCF_SEC_MDISR_ERE (0x00080000)
-#define MCF_SEC_MDISR_IE (0x00100000)
-#define MCF_SEC_MDISR_IFO (0x04000000)
-#define MCF_SEC_MDISR_AE (0x40000000)
-#define MCF_SEC_MDISR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_MDIMR */
-#define MCF_SEC_MDIMR_DSE (0x00010000)
-#define MCF_SEC_MDIMR_KSE (0x00020000)
-#define MCF_SEC_MDIMR_CE (0x00040000)
-#define MCF_SEC_MDIMR_ERE (0x00080000)
-#define MCF_SEC_MDIMR_IE (0x00100000)
-#define MCF_SEC_MDIMR_IFO (0x04000000)
-#define MCF_SEC_MDIMR_AE (0x40000000)
-#define MCF_SEC_MDIMR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_RNGRCR */
-#define MCF_SEC_RNGRCR_SR (0x01000000)
-#define MCF_SEC_RNGRCR_MI (0x02000000)
-#define MCF_SEC_RNGRCR_RI (0x04000000)
-
-/* Bit definitions and macros for MCF_SEC_RNGSR */
-#define MCF_SEC_RNGSR_RD (0x01000000)
-#define MCF_SEC_RNGSR_O (0x02000000)
-#define MCF_SEC_RNGSR_IE (0x04000000)
-#define MCF_SEC_RNGSR_OFR (0x08000000)
-#define MCF_SEC_RNGSR_HALT (0x20000000)
-
-/* Bit definitions and macros for MCF_SEC_RNGISR */
-#define MCF_SEC_RNGISR_IE (0x00100000)
-#define MCF_SEC_RNGISR_OFU (0x02000000)
-#define MCF_SEC_RNGISR_AE (0x40000000)
-#define MCF_SEC_RNGISR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_RNGIMR */
-#define MCF_SEC_RNGIMR_IE (0x00100000)
-#define MCF_SEC_RNGIMR_OFU (0x02000000)
-#define MCF_SEC_RNGIMR_AE (0x40000000)
-#define MCF_SEC_RNGIMR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_AESRCR */
-#define MCF_SEC_AESRCR_SR (0x01000000)
-#define MCF_SEC_AESRCR_MI (0x02000000)
-#define MCF_SEC_AESRCR_RI (0x04000000)
-
-/* Bit definitions and macros for MCF_SEC_AESSR */
-#define MCF_SEC_AESSR_RD (0x01000000)
-#define MCF_SEC_AESSR_ID (0x02000000)
-#define MCF_SEC_AESSR_IE (0x04000000)
-#define MCF_SEC_AESSR_OFR (0x08000000)
-#define MCF_SEC_AESSR_IFW (0x10000000)
-#define MCF_SEC_AESSR_HALT (0x20000000)
-
-/* Bit definitions and macros for MCF_SEC_AESISR */
-#define MCF_SEC_AESISR_DSE (0x00010000)
-#define MCF_SEC_AESISR_KSE (0x00020000)
-#define MCF_SEC_AESISR_CE (0x00040000)
-#define MCF_SEC_AESISR_ERE (0x00080000)
-#define MCF_SEC_AESISR_IE (0x00100000)
-#define MCF_SEC_AESISR_OFU (0x02000000)
-#define MCF_SEC_AESISR_IFO (0x04000000)
-#define MCF_SEC_AESISR_IFE (0x10000000)
-#define MCF_SEC_AESISR_OFE (0x20000000)
-#define MCF_SEC_AESISR_AE (0x40000000)
-#define MCF_SEC_AESISR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_AESIMR */
-#define MCF_SEC_AESIMR_DSE (0x00010000)
-#define MCF_SEC_AESIMR_KSE (0x00020000)
-#define MCF_SEC_AESIMR_CE (0x00040000)
-#define MCF_SEC_AESIMR_ERE (0x00080000)
-#define MCF_SEC_AESIMR_IE (0x00100000)
-#define MCF_SEC_AESIMR_OFU (0x02000000)
-#define MCF_SEC_AESIMR_IFO (0x04000000)
-#define MCF_SEC_AESIMR_IFE (0x10000000)
-#define MCF_SEC_AESIMR_OFE (0x20000000)
-#define MCF_SEC_AESIMR_AE (0x40000000)
-#define MCF_SEC_AESIMR_ME (0x80000000)
-
-#endif /* __MCF548X_SEC_H__ */
diff --git a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_siu.h b/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_siu.h
deleted file mode 100644
index 558530d34f..0000000000
--- a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_siu.h
+++ /dev/null
@@ -1,69 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Register and bit definitions for the MCF548X and MCF547x
- * DMA Serial Peripheral Interface (DSPI)
- */
-#ifndef __MCF548X_SIU_H__
-#define __MCF548X_SIU_H__
-
-/*
- * System Integration Unit (SIU)
- */
-
-/* Register read/write macros */
-#define MCF_SIU_SBCR (*(vuint32_t*)(&__MBAR[0x000010]))
-#define MCF_SIU_SECSACR (*(vuint32_t*)(&__MBAR[0x000038]))
-#define MCF_SIU_RSR (*(vuint32_t*)(&__MBAR[0x000044]))
-#define MCF_SIU_JTAGID (*(vuint32_t*)(&__MBAR[0x000050]))
-
-/* Bit definitions and macros for MCF_SIU_SBCR */
-#define MCF_SIU_SBCR_PIN2DSPI (0x08000000)
-#define MCF_SIU_SBCR_DMA2CPU (0x10000000)
-#define MCF_SIU_SBCR_CPU2DMA (0x20000000)
-#define MCF_SIU_SBCR_PIN2DMA (0x40000000)
-#define MCF_SIU_SBCR_PIN2CPU (0x80000000)
-
-/* Bit definitions and macros for MCF_SIU_SECSACR */
-#define MCF_SIU_SECSACR_SEQEN (0x00000001)
-
-/* Bit definitions and macros for MCF_SIU_RSR */
-#define MCF_SIU_RSR_RST (0x00000001)
-#define MCF_SIU_RSR_RSTWD (0x00000002)
-#define MCF_SIU_RSR_RSTJTG (0x00000008)
-
-/* Bit definitions and macros for MCF_SIU_JTAGID */
-#define MCF_SIU_JTAGID_REV (0xF0000000)
-#define MCF_SIU_JTAGID_PROCESSOR (0x0FFFFFFF)
-#define MCF_SIU_JTAGID_MCF5485 (0x0800C01D)
-#define MCF_SIU_JTAGID_MCF5484 (0x0800D01D)
-#define MCF_SIU_JTAGID_MCF5483 (0x0800E01D)
-#define MCF_SIU_JTAGID_MCF5482 (0x0800F01D)
-#define MCF_SIU_JTAGID_MCF5481 (0x0801001D)
-#define MCF_SIU_JTAGID_MCF5480 (0x0801101D)
-#define MCF_SIU_JTAGID_MCF5475 (0x0801201D)
-#define MCF_SIU_JTAGID_MCF5474 (0x0801301D)
-#define MCF_SIU_JTAGID_MCF5473 (0x0801401D)
-#define MCF_SIU_JTAGID_MCF5472 (0x0801501D)
-#define MCF_SIU_JTAGID_MCF5471 (0x0801601D)
-#define MCF_SIU_JTAGID_MCF5470 (0x0801701D)
-
-#endif /* __MCF548X_SIU_H__ */
diff --git a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_slt.h b/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_slt.h
deleted file mode 100644
index 10d94a4117..0000000000
--- a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_slt.h
+++ /dev/null
@@ -1,71 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Register and bit definitions for the MCF548X and MCF547x
- * Slice Timers (SLT)
- */
-#ifndef __MCF548X_SLT_H__
-#define __MCF548X_SLT_H__
-
-/*
- * Slice Timers (SLT)
- */
-
-/* Register read/write macros */
-#define MCF_SLT_SLTCNT0 (*(vuint32_t*)(&__MBAR[0x000900]))
-#define MCF_SLT_SCR0 (*(vuint32_t*)(&__MBAR[0x000904]))
-#define MCF_SLT_SCNT0 (*(vuint32_t*)(&__MBAR[0x000908]))
-#define MCF_SLT_SSR0 (*(vuint32_t*)(&__MBAR[0x00090C]))
-
-#define MCF_SLT_SLTCNT1 (*(vuint32_t*)(&__MBAR[0x000910]))
-#define MCF_SLT_SCR1 (*(vuint32_t*)(&__MBAR[0x000914]))
-#define MCF_SLT_SCNT1 (*(vuint32_t*)(&__MBAR[0x000918]))
-#define MCF_SLT_SSR1 (*(vuint32_t*)(&__MBAR[0x00091C]))
-
-#define MCF_SLT_SLTCNT(x) (*(vuint32_t*)(&__MBAR[0x000900+((x)*0x010)]))
-#define MCF_SLT_SCR(x) (*(vuint32_t*)(&__MBAR[0x000904+((x)*0x010)]))
-#define MCF_SLT_SCNT(x) (*(vuint32_t*)(&__MBAR[0x000908+((x)*0x010)]))
-#define MCF_SLT_SSR(x) (*(vuint32_t*)(&__MBAR[0x00090C+((x)*0x010)]))
-
-/* Bit definitions and macros for MCF_SLT_SCR */
-#define MCF_SLT_SCR_TEN (0x01000000)
-#define MCF_SLT_SCR_IEN (0x02000000)
-#define MCF_SLT_SCR_RUN (0x04000000)
-
-/* Bit definitions and macros for MCF_SLT_SSR */
-#define MCF_SLT_SSR_ST (0x01000000)
-#define MCF_SLT_SSR_BE (0x02000000)
-
-
-#ifndef __ASSEMBLY__
-
-#define MCF_SLT_Address(x) ((struct mcf5xxx_slt*)(void*)(&__MBAR[0x000900+((x)*0x010)]))
-
-struct mcf5xxx_slt {
- vuint32_t STCNT; /* Slice Terminal Count */
- vuint32_t SCR; /* Slice Timer Control Register */
- vuint32_t SCNT; /* Slice Count Value */
- vuint32_t SSR; /* Slice Timer Status Register */
-};
-
-#endif
-
-#endif /* __MCF548X_SLT_H__ */
diff --git a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_sram.h b/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_sram.h
deleted file mode 100644
index a706306f2b..0000000000
--- a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_sram.h
+++ /dev/null
@@ -1,66 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Register and bit definitions for the MCF548X and MCF547x
- * 32KByte System SRAM (SRAM)
- */
-#ifndef __MCF548X_SRAM_H__
-#define __MCF548X_SRAM_H__
-
-/*
- * 32KByte System SRAM (SRAM)
- */
-
-/* Register read/write macros */
-#define MCF_SRAM_SSCR (*(vuint32_t*)(&__MBAR[0x01FFC0]))
-#define MCF_SRAM_TCCR (*(vuint32_t*)(&__MBAR[0x01FFC4]))
-#define MCF_SRAM_TCCRDR (*(vuint32_t*)(&__MBAR[0x01FFC8]))
-#define MCF_SRAM_TCCRDW (*(vuint32_t*)(&__MBAR[0x01FFCC]))
-#define MCF_SRAM_TCCRSEC (*(vuint32_t*)(&__MBAR[0x01FFD0]))
-
-/* Bit definitions and macros for MCF_SRAM_SSCR */
-#define MCF_SRAM_SSCR_INLV (0x00010000)
-
-/* Bit definitions and macros for MCF_SRAM_TCCR */
-#define MCF_SRAM_TCCR_BANK0_TC(x) (((x)&0x0000000F)<<0)
-#define MCF_SRAM_TCCR_BANK1_TC(x) (((x)&0x0000000F)<<8)
-#define MCF_SRAM_TCCR_BANK2_TC(x) (((x)&0x0000000F)<<16)
-#define MCF_SRAM_TCCR_BANK3_TC(x) (((x)&0x0000000F)<<24)
-
-/* Bit definitions and macros for MCF_SRAM_TCCRDR */
-#define MCF_SRAM_TCCRDR_BANK0_TC(x) (((x)&0x0000000F)<<0)
-#define MCF_SRAM_TCCRDR_BANK1_TC(x) (((x)&0x0000000F)<<8)
-#define MCF_SRAM_TCCRDR_BANK2_TC(x) (((x)&0x0000000F)<<16)
-#define MCF_SRAM_TCCRDR_BANK3_TC(x) (((x)&0x0000000F)<<24)
-
-/* Bit definitions and macros for MCF_SRAM_TCCRDW */
-#define MCF_SRAM_TCCRDW_BANK0_TC(x) (((x)&0x0000000F)<<0)
-#define MCF_SRAM_TCCRDW_BANK1_TC(x) (((x)&0x0000000F)<<8)
-#define MCF_SRAM_TCCRDW_BANK2_TC(x) (((x)&0x0000000F)<<16)
-#define MCF_SRAM_TCCRDW_BANK3_TC(x) (((x)&0x0000000F)<<24)
-
-/* Bit definitions and macros for MCF_SRAM_TCCRSEC */
-#define MCF_SRAM_TCCRSEC_BANK0_TC(x) (((x)&0x0000000F)<<0)
-#define MCF_SRAM_TCCRSEC_BANK1_TC(x) (((x)&0x0000000F)<<8)
-#define MCF_SRAM_TCCRSEC_BANK2_TC(x) (((x)&0x0000000F)<<16)
-#define MCF_SRAM_TCCRSEC_BANK3_TC(x) (((x)&0x0000000F)<<24)
-
-#endif /* __MCF548X_SRAM_H__ */
diff --git a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_uart.h b/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_uart.h
deleted file mode 100644
index 2fa25ce3b4..0000000000
--- a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_uart.h
+++ /dev/null
@@ -1,233 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Register and bit definitions for the MCF548X and MCF547x
- * Programmable Serial Controller (UART Compatible Definitions) (UART)
- */
-#ifndef __MCF548X_UART_H__
-#define __MCF548X_UART_H__
-
-/*
- * Programmable Serial Controller (UART Compatible Definitions) (UART)
- */
-
-/* Register read/write macros */
-#define MCF_UART_UMR0 (*(vuint8_t *)(&__MBAR[0x008600]))
-#define MCF_UART_USR0 (*(vuint8_t *)(&__MBAR[0x008604]))
-#define MCF_UART_UCSR0 (*(vuint8_t *)(&__MBAR[0x008604]))
-#define MCF_UART_UCR0 (*(vuint8_t *)(&__MBAR[0x008608]))
-#define MCF_UART_URB0 (*(vuint8_t *)(&__MBAR[0x00860C]))
-#define MCF_UART_UTB0 (*(vuint8_t *)(&__MBAR[0x00860C]))
-#define MCF_UART_UIPCR0 (*(vuint8_t *)(&__MBAR[0x008610]))
-#define MCF_UART_UACR0 (*(vuint8_t *)(&__MBAR[0x008610]))
-#define MCF_UART_UISR0 (*(vuint8_t *)(&__MBAR[0x008614]))
-#define MCF_UART_UIMR0 (*(vuint8_t *)(&__MBAR[0x008614]))
-#define MCF_UART_UBG10 (*(vuint8_t *)(&__MBAR[0x008618]))
-#define MCF_UART_UBG20 (*(vuint8_t *)(&__MBAR[0x00861C]))
-#define MCF_UART_UIP0 (*(vuint8_t *)(&__MBAR[0x008634]))
-#define MCF_UART_UOP10 (*(vuint8_t *)(&__MBAR[0x008638]))
-#define MCF_UART_UOP00 (*(vuint8_t *)(&__MBAR[0x00863C]))
-
-#define MCF_UART_UMR1 (*(vuint8_t *)(&__MBAR[0x008700]))
-#define MCF_UART_USR1 (*(vuint8_t *)(&__MBAR[0x008704]))
-#define MCF_UART_UCSR1 (*(vuint8_t *)(&__MBAR[0x008704]))
-#define MCF_UART_UCR1 (*(vuint8_t *)(&__MBAR[0x008708]))
-#define MCF_UART_URB1 (*(vuint8_t *)(&__MBAR[0x00870C]))
-#define MCF_UART_UTB1 (*(vuint8_t *)(&__MBAR[0x00870C]))
-#define MCF_UART_UIPCR1 (*(vuint8_t *)(&__MBAR[0x008710]))
-#define MCF_UART_UACR1 (*(vuint8_t *)(&__MBAR[0x008710]))
-#define MCF_UART_UISR1 (*(vuint8_t *)(&__MBAR[0x008714]))
-#define MCF_UART_UIMR1 (*(vuint8_t *)(&__MBAR[0x008714]))
-#define MCF_UART_UBG11 (*(vuint8_t *)(&__MBAR[0x008718]))
-#define MCF_UART_UBG21 (*(vuint8_t *)(&__MBAR[0x00871C]))
-#define MCF_UART_UIP1 (*(vuint8_t *)(&__MBAR[0x008734]))
-#define MCF_UART_UOP11 (*(vuint8_t *)(&__MBAR[0x008738]))
-#define MCF_UART_UOP01 (*(vuint8_t *)(&__MBAR[0x00873C]))
-
-#define MCF_UART_UMR2 (*(vuint8_t *)(&__MBAR[0x008800]))
-#define MCF_UART_USR2 (*(vuint8_t *)(&__MBAR[0x008804]))
-#define MCF_UART_UCSR2 (*(vuint8_t *)(&__MBAR[0x008804]))
-#define MCF_UART_UCR2 (*(vuint8_t *)(&__MBAR[0x008808]))
-#define MCF_UART_URB2 (*(vuint8_t *)(&__MBAR[0x00880C]))
-#define MCF_UART_UTB2 (*(vuint8_t *)(&__MBAR[0x00880C]))
-#define MCF_UART_UIPCR2 (*(vuint8_t *)(&__MBAR[0x008810]))
-#define MCF_UART_UACR2 (*(vuint8_t *)(&__MBAR[0x008810]))
-#define MCF_UART_UISR2 (*(vuint8_t *)(&__MBAR[0x008814]))
-#define MCF_UART_UIMR2 (*(vuint8_t *)(&__MBAR[0x008814]))
-#define MCF_UART_UBG12 (*(vuint8_t *)(&__MBAR[0x008818]))
-#define MCF_UART_UBG22 (*(vuint8_t *)(&__MBAR[0x00881C]))
-#define MCF_UART_UIP2 (*(vuint8_t *)(&__MBAR[0x008834]))
-#define MCF_UART_UOP12 (*(vuint8_t *)(&__MBAR[0x008838]))
-#define MCF_UART_UOP02 (*(vuint8_t *)(&__MBAR[0x00883C]))
-
-#define MCF_UART_UMR3 (*(vuint8_t *)(&__MBAR[0x008900]))
-#define MCF_UART_USR3 (*(vuint8_t *)(&__MBAR[0x008904]))
-#define MCF_UART_UCSR3 (*(vuint8_t *)(&__MBAR[0x008904]))
-#define MCF_UART_UCR3 (*(vuint8_t *)(&__MBAR[0x008908]))
-#define MCF_UART_URB3 (*(vuint8_t *)(&__MBAR[0x00890C]))
-#define MCF_UART_UTB3 (*(vuint8_t *)(&__MBAR[0x00890C]))
-#define MCF_UART_UIPCR3 (*(vuint8_t *)(&__MBAR[0x008910]))
-#define MCF_UART_UACR3 (*(vuint8_t *)(&__MBAR[0x008910]))
-#define MCF_UART_UISR3 (*(vuint8_t *)(&__MBAR[0x008914]))
-#define MCF_UART_UIMR3 (*(vuint8_t *)(&__MBAR[0x008914]))
-#define MCF_UART_UBG13 (*(vuint8_t *)(&__MBAR[0x008918]))
-#define MCF_UART_UBG23 (*(vuint8_t *)(&__MBAR[0x00891C]))
-#define MCF_UART_UIP3 (*(vuint8_t *)(&__MBAR[0x008934]))
-#define MCF_UART_UOP13 (*(vuint8_t *)(&__MBAR[0x008938]))
-#define MCF_UART_UOP03 (*(vuint8_t *)(&__MBAR[0x00893C]))
-
-
-#define MCF_UART_UMR(x) (*(vuint8_t *)(&__MBAR[0x008600+((x)*0x100)]))
-#define MCF_UART_USR(x) (*(vuint8_t *)(&__MBAR[0x008604+((x)*0x100)]))
-#define MCF_UART_UCSR(x) (*(vuint8_t *)(&__MBAR[0x008604+((x)*0x100)]))
-#define MCF_UART_UCR(x) (*(vuint8_t *)(&__MBAR[0x008608+((x)*0x100)]))
-#define MCF_UART_URB(x) (*(vuint8_t *)(&__MBAR[0x00860C+((x)*0x100)]))
-#define MCF_UART_UTB(x) (*(vuint8_t *)(&__MBAR[0x00860C+((x)*0x100)]))
-#define MCF_UART_UIPCR(x) (*(vuint8_t *)(&__MBAR[0x008610+((x)*0x100)]))
-#define MCF_UART_UACR(x) (*(vuint8_t *)(&__MBAR[0x008610+((x)*0x100)]))
-#define MCF_UART_UISR(x) (*(vuint8_t *)(&__MBAR[0x008614+((x)*0x100)]))
-#define MCF_UART_UIMR(x) (*(vuint8_t *)(&__MBAR[0x008614+((x)*0x100)]))
-#define MCF_UART_UBG1(x) (*(vuint8_t *)(&__MBAR[0x008618+((x)*0x100)]))
-#define MCF_UART_UBG2(x) (*(vuint8_t *)(&__MBAR[0x00861C+((x)*0x100)]))
-#define MCF_UART_UIP(x) (*(vuint8_t *)(&__MBAR[0x008634+((x)*0x100)]))
-#define MCF_UART_UOP1(x) (*(vuint8_t *)(&__MBAR[0x008638+((x)*0x100)]))
-#define MCF_UART_UOP0(x) (*(vuint8_t *)(&__MBAR[0x00863C+((x)*0x100)]))
-
-/* Bit definitions and macros for MCF_UART_UMR */
-#define MCF_UART_UMR_BC(x) (((x)&0x03)<<0)
-#define MCF_UART_UMR_PT (0x04)
-#define MCF_UART_UMR_PM(x) (((x)&0x03)<<3)
-#define MCF_UART_UMR_ERR (0x20)
-#define MCF_UART_UMR_RXIRQ (0x40)
-#define MCF_UART_UMR_RXRTS (0x80)
-#define MCF_UART_UMR_SB(x) (((x)&0x0F)<<0)
-#define MCF_UART_UMR_TXCTS (0x10)
-#define MCF_UART_UMR_TXRTS (0x20)
-#define MCF_UART_UMR_CM(x) (((x)&0x03)<<6)
-#define MCF_UART_UMR_PM_MULTI_ADDR (0x1C)
-#define MCF_UART_UMR_PM_MULTI_DATA (0x18)
-#define MCF_UART_UMR_PM_NONE (0x10)
-#define MCF_UART_UMR_PM_FORCE_HI (0x0C)
-#define MCF_UART_UMR_PM_FORCE_LO (0x08)
-#define MCF_UART_UMR_PM_ODD (0x04)
-#define MCF_UART_UMR_PM_EVEN (0x00)
-#define MCF_UART_UMR_BC_5 (0x00)
-#define MCF_UART_UMR_BC_6 (0x01)
-#define MCF_UART_UMR_BC_7 (0x02)
-#define MCF_UART_UMR_BC_8 (0x03)
-#define MCF_UART_UMR_CM_NORMAL (0x00)
-#define MCF_UART_UMR_CM_ECHO (0x40)
-#define MCF_UART_UMR_CM_LOCAL_LOOP (0x80)
-#define MCF_UART_UMR_CM_REMOTE_LOOP (0xC0)
-#define MCF_UART_UMR_SB_STOP_BITS_1 (0x07)
-#define MCF_UART_UMR_SB_STOP_BITS_15 (0x08)
-#define MCF_UART_UMR_SB_STOP_BITS_2 (0x0F)
-
-/* Bit definitions and macros for MCF_UART_USR */
-#define MCF_UART_USR_RXRDY (0x01)
-#define MCF_UART_USR_FFULL (0x02)
-#define MCF_UART_USR_TXRDY (0x04)
-#define MCF_UART_USR_TXEMP (0x08)
-#define MCF_UART_USR_OE (0x10)
-#define MCF_UART_USR_PE (0x20)
-#define MCF_UART_USR_FE (0x40)
-#define MCF_UART_USR_RB (0x80)
-
-/* Bit definitions and macros for MCF_UART_UCSR */
-#define MCF_UART_UCSR_TCS(x) (((x)&0x0F)<<0)
-#define MCF_UART_UCSR_RCS(x) (((x)&0x0F)<<4)
-#define MCF_UART_UCSR_RCS_SYS_CLK (0xD0)
-#define MCF_UART_UCSR_RCS_CTM16 (0xE0)
-#define MCF_UART_UCSR_RCS_CTM (0xF0)
-#define MCF_UART_UCSR_TCS_SYS_CLK (0x0D)
-#define MCF_UART_UCSR_TCS_CTM16 (0x0E)
-#define MCF_UART_UCSR_TCS_CTM (0x0F)
-
-/* Bit definitions and macros for MCF_UART_UCR */
-#define MCF_UART_UCR_RXC(x) (((x)&0x03)<<0)
-#define MCF_UART_UCR_TXC(x) (((x)&0x03)<<2)
-#define MCF_UART_UCR_MISC(x) (((x)&0x07)<<4)
-#define MCF_UART_UCR_NONE (0x00)
-#define MCF_UART_UCR_STOP_BREAK (0x70)
-#define MCF_UART_UCR_START_BREAK (0x60)
-#define MCF_UART_UCR_BKCHGINT (0x50)
-#define MCF_UART_UCR_RESET_ERROR (0x40)
-#define MCF_UART_UCR_RESET_TX (0x30)
-#define MCF_UART_UCR_RESET_RX (0x20)
-#define MCF_UART_UCR_RESET_MR (0x10)
-#define MCF_UART_UCR_TX_DISABLED (0x08)
-#define MCF_UART_UCR_TX_ENABLED (0x04)
-#define MCF_UART_UCR_RX_DISABLED (0x02)
-#define MCF_UART_UCR_RX_ENABLED (0x01)
-
-/* Bit definitions and macros for MCF_UART_UIPCR */
-#define MCF_UART_UIPCR_CTS (0x01)
-#define MCF_UART_UIPCR_COS (0x10)
-
-/* Bit definitions and macros for MCF_UART_UACR */
-#define MCF_UART_UACR_IEC (0x01)
-
-/* Bit definitions and macros for MCF_UART_UISR */
-#define MCF_UART_UISR_TXRDY (0x01)
-#define MCF_UART_UISR_RXRDY_FU (0x02)
-#define MCF_UART_UISR_DB (0x04)
-#define MCF_UART_UISR_RXFTO (0x08)
-#define MCF_UART_UISR_TXFIFO (0x10)
-#define MCF_UART_UISR_RXFIFO (0x20)
-#define MCF_UART_UISR_COS (0x80)
-
-/* Bit definitions and macros for MCF_UART_UIMR */
-#define MCF_UART_UIMR_TXRDY (0x01)
-#define MCF_UART_UIMR_RXRDY_FU (0x02)
-#define MCF_UART_UIMR_DB (0x04)
-#define MCF_UART_UIMR_COS (0x80)
-
-/* Bit definitions and macros for MCF_UART_UIP */
-#define MCF_UART_UIP_CTS (0x01)
-
-/* Bit definitions and macros for MCF_UART_UOP1 */
-#define MCF_UART_UOP1_RTS (0x01)
-
-/* Bit definitions and macros for MCF_UART_UOP0 */
-#define MCF_UART_UOP0_RTS (0x01)
-
-/* The UART registers for mem mapped access */
-struct m5407uart
-{
- vuint8_t umr; vuint24_t reserved0;
- vuint8_t usr; vuint24_t reserved1; /* ucsr */
- vuint8_t ucr; vuint24_t reserved2;
- vuint8_t urb; vuint24_t reserved3; /* utb */
- vuint8_t uipcr; vuint24_t reserved4; /* uacr */
- vuint8_t uisr; vuint24_t reserved5; /* uimr */
- vuint8_t udu; vuint24_t reserved6;
- vuint8_t ubg1; vuint24_t reserved7;
- vuint8_t ubg2; vuint24_t reserved8;
- const uint8_t uip; vuint24_t reserved9;
- vuint8_t uop1; vuint24_t reserved10;
- vuint8_t uop0; vuint24_t reserved11;
-} __attribute((packed));
-
-#define MCF_UART(x) (*(struct m5407uart *)(&__MBAR[0x008600+((x)*0x100)]))
-
-
-#endif /* __MCF548X_UART_H__ */
-
diff --git a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_usb.h b/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_usb.h
deleted file mode 100644
index 0c256ef528..0000000000
--- a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_usb.h
+++ /dev/null
@@ -1,509 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Register and bit definitions for the MCF548X and MCF547x
- * Universal Serial Bus (USB)
- *
- * @note According to FreeScale errata sheet, the USB controller
- * isn't really usable on MCF54xx V4E CPUs.
- * Check V4M cores or wait for errata fixed
- * Last update: 25.02.2008 10:55:00
- */
-#ifndef __MCF548X_USB_H__
-#define __MCF548X_USB_H__
-
-/*
- * Universal Serial Bus (USB)
- */
-
-/* Register read/write macros */
-#define MCF_USB_USBAISR (*(vuint8_t *)(&__MBAR[0x00B000]))
-#define MCF_USB_USBAIMR (*(vuint8_t *)(&__MBAR[0x00B001]))
-#define MCF_USB_EPINFO (*(vuint8_t *)(&__MBAR[0x00B003]))
-#define MCF_USB_CFGR (*(vuint8_t *)(&__MBAR[0x00B004]))
-#define MCF_USB_CFGAR (*(vuint8_t *)(&__MBAR[0x00B005]))
-#define MCF_USB_SPEEDR (*(vuint8_t *)(&__MBAR[0x00B006]))
-#define MCF_USB_FRMNUMR (*(vuint16_t*)(&__MBAR[0x00B00E]))
-#define MCF_USB_EPTNR (*(vuint16_t*)(&__MBAR[0x00B010]))
-#define MCF_USB_IFUR (*(vuint16_t*)(&__MBAR[0x00B014]))
-#define MCF_USB_IFR0 (*(vuint16_t*)(&__MBAR[0x00B040]))
-#define MCF_USB_IFR1 (*(vuint16_t*)(&__MBAR[0x00B042]))
-#define MCF_USB_IFR2 (*(vuint16_t*)(&__MBAR[0x00B044]))
-#define MCF_USB_IFR3 (*(vuint16_t*)(&__MBAR[0x00B046]))
-#define MCF_USB_IFR4 (*(vuint16_t*)(&__MBAR[0x00B048]))
-#define MCF_USB_IFR5 (*(vuint16_t*)(&__MBAR[0x00B04A]))
-#define MCF_USB_IFR6 (*(vuint16_t*)(&__MBAR[0x00B04C]))
-#define MCF_USB_IFR7 (*(vuint16_t*)(&__MBAR[0x00B04E]))
-#define MCF_USB_IFR8 (*(vuint16_t*)(&__MBAR[0x00B050]))
-#define MCF_USB_IFR9 (*(vuint16_t*)(&__MBAR[0x00B052]))
-#define MCF_USB_IFR10 (*(vuint16_t*)(&__MBAR[0x00B054]))
-#define MCF_USB_IFR11 (*(vuint16_t*)(&__MBAR[0x00B056]))
-#define MCF_USB_IFR12 (*(vuint16_t*)(&__MBAR[0x00B058]))
-#define MCF_USB_IFR13 (*(vuint16_t*)(&__MBAR[0x00B05A]))
-#define MCF_USB_IFR14 (*(vuint16_t*)(&__MBAR[0x00B05C]))
-#define MCF_USB_IFR15 (*(vuint16_t*)(&__MBAR[0x00B05E]))
-#define MCF_USB_IFR16 (*(vuint16_t*)(&__MBAR[0x00B060]))
-#define MCF_USB_IFR17 (*(vuint16_t*)(&__MBAR[0x00B062]))
-#define MCF_USB_IFR18 (*(vuint16_t*)(&__MBAR[0x00B064]))
-#define MCF_USB_IFR19 (*(vuint16_t*)(&__MBAR[0x00B066]))
-#define MCF_USB_IFR20 (*(vuint16_t*)(&__MBAR[0x00B068]))
-#define MCF_USB_IFR21 (*(vuint16_t*)(&__MBAR[0x00B06A]))
-#define MCF_USB_IFR22 (*(vuint16_t*)(&__MBAR[0x00B06C]))
-#define MCF_USB_IFR23 (*(vuint16_t*)(&__MBAR[0x00B06E]))
-#define MCF_USB_IFR24 (*(vuint16_t*)(&__MBAR[0x00B070]))
-#define MCF_USB_IFR25 (*(vuint16_t*)(&__MBAR[0x00B072]))
-#define MCF_USB_IFR26 (*(vuint16_t*)(&__MBAR[0x00B074]))
-#define MCF_USB_IFR27 (*(vuint16_t*)(&__MBAR[0x00B076]))
-#define MCF_USB_IFR28 (*(vuint16_t*)(&__MBAR[0x00B078]))
-#define MCF_USB_IFR29 (*(vuint16_t*)(&__MBAR[0x00B07A]))
-#define MCF_USB_IFR30 (*(vuint16_t*)(&__MBAR[0x00B07C]))
-#define MCF_USB_IFR31 (*(vuint16_t*)(&__MBAR[0x00B07E]))
-#define MCF_USB_IFRn(x) (*(vuint16_t*)(&__MBAR[0x00B040+((x)*0x002)]))
-#define MCF_USB_PPCNT (*(vuint16_t*)(&__MBAR[0x00B080]))
-#define MCF_USB_DPCNT (*(vuint16_t*)(&__MBAR[0x00B082]))
-#define MCF_USB_CRCECNT (*(vuint16_t*)(&__MBAR[0x00B084]))
-#define MCF_USB_BSECNT (*(vuint16_t*)(&__MBAR[0x00B086]))
-#define MCF_USB_PIDECNT (*(vuint16_t*)(&__MBAR[0x00B088]))
-#define MCF_USB_FRMECNT (*(vuint16_t*)(&__MBAR[0x00B08A]))
-#define MCF_USB_TXPCNT (*(vuint16_t*)(&__MBAR[0x00B08C]))
-#define MCF_USB_CNTOVR (*(vuint8_t *)(&__MBAR[0x00B08E]))
-#define MCF_USB_EP0ACR (*(vuint8_t *)(&__MBAR[0x00B101]))
-#define MCF_USB_EP0MPSR (*(vuint16_t*)(&__MBAR[0x00B102]))
-#define MCF_USB_EP0IFR (*(vuint8_t *)(&__MBAR[0x00B104]))
-#define MCF_USB_EP0SR (*(vuint8_t *)(&__MBAR[0x00B105]))
-#define MCF_USB_BMRTR (*(vuint8_t *)(&__MBAR[0x00B106]))
-#define MCF_USB_BRTR (*(vuint8_t *)(&__MBAR[0x00B107]))
-#define MCF_USB_WVALUER (*(vuint16_t*)(&__MBAR[0x00B108]))
-#define MCF_USB_WINDEXR (*(vuint16_t*)(&__MBAR[0x00B10A]))
-#define MCF_USB_WLENGTH (*(vuint16_t*)(&__MBAR[0x00B10C]))
-#define MCF_USB_EP1OUTACR (*(vuint8_t *)(&__MBAR[0x00B131]))
-#define MCF_USB_EP2OUTACR (*(vuint8_t *)(&__MBAR[0x00B161]))
-#define MCF_USB_EP3OUTACR (*(vuint8_t *)(&__MBAR[0x00B191]))
-#define MCF_USB_EP4OUTACR (*(vuint8_t *)(&__MBAR[0x00B1C1]))
-#define MCF_USB_EP5OUTACR (*(vuint8_t *)(&__MBAR[0x00B1F1]))
-#define MCF_USB_EP6OUTACR (*(vuint8_t *)(&__MBAR[0x00B221]))
-#define MCF_USB_EPnOUTACR(x) (*(vuint8_t *)(&__MBAR[0x00B131+((x)*0x030)]))
-#define MCF_USB_EP1OUTMPSR (*(vuint16_t*)(&__MBAR[0x00B132]))
-#define MCF_USB_EP2OUTMPSR (*(vuint16_t*)(&__MBAR[0x00B162]))
-#define MCF_USB_EP3OUTMPSR (*(vuint16_t*)(&__MBAR[0x00B192]))
-#define MCF_USB_EP4OUTMPSR (*(vuint16_t*)(&__MBAR[0x00B1C2]))
-#define MCF_USB_EP5OUTMPSR (*(vuint16_t*)(&__MBAR[0x00B1F2]))
-#define MCF_USB_EP6OUTMPSR (*(vuint16_t*)(&__MBAR[0x00B222]))
-#define MCF_USB_EPnOUTMPSR(x) (*(vuint16_t*)(&__MBAR[0x00B132+((x)*0x030)]))
-#define MCF_USB_EP1OUTIFR (*(vuint8_t *)(&__MBAR[0x00B134]))
-#define MCF_USB_EP2OUTIFR (*(vuint8_t *)(&__MBAR[0x00B164]))
-#define MCF_USB_EP3OUTIFR (*(vuint8_t *)(&__MBAR[0x00B194]))
-#define MCF_USB_EP4OUTIFR (*(vuint8_t *)(&__MBAR[0x00B1C4]))
-#define MCF_USB_EP5OUTIFR (*(vuint8_t *)(&__MBAR[0x00B1F4]))
-#define MCF_USB_EP6OUTIFR (*(vuint8_t *)(&__MBAR[0x00B224]))
-#define MCF_USB_EPnOUTIFR(x) (*(vuint8_t *)(&__MBAR[0x00B134+((x)*0x030)]))
-#define MCF_USB_EP1OUTSR (*(vuint8_t *)(&__MBAR[0x00B135]))
-#define MCF_USB_EP2OUTSR (*(vuint8_t *)(&__MBAR[0x00B165]))
-#define MCF_USB_EP3OUTSR (*(vuint8_t *)(&__MBAR[0x00B195]))
-#define MCF_USB_EP4OUTSR (*(vuint8_t *)(&__MBAR[0x00B1C5]))
-#define MCF_USB_EP5OUTSR (*(vuint8_t *)(&__MBAR[0x00B1F5]))
-#define MCF_USB_EP6OUTSR (*(vuint8_t *)(&__MBAR[0x00B225]))
-#define MCF_USB_EPnOUTSR(x) (*(vuint8_t *)(&__MBAR[0x00B135+((x)*0x030)]))
-#define MCF_USB_EP1OUTSFR (*(vuint16_t*)(&__MBAR[0x00B13E]))
-#define MCF_USB_EP2OUTSFR (*(vuint16_t*)(&__MBAR[0x00B16E]))
-#define MCF_USB_EP3OUTSFR (*(vuint16_t*)(&__MBAR[0x00B19E]))
-#define MCF_USB_EP4OUTSFR (*(vuint16_t*)(&__MBAR[0x00B1CE]))
-#define MCF_USB_EP5OUTSFR (*(vuint16_t*)(&__MBAR[0x00B1FE]))
-#define MCF_USB_EP6OUTSFR (*(vuint16_t*)(&__MBAR[0x00B22E]))
-#define MCF_USB_EPnOUTSFR(x) (*(vuint16_t*)(&__MBAR[0x00B13E+((x)*0x030)]))
-#define MCF_USB_EP1INACR (*(vuint8_t *)(&__MBAR[0x00B149]))
-#define MCF_USB_EP2INACR (*(vuint8_t *)(&__MBAR[0x00B179]))
-#define MCF_USB_EP3INACR (*(vuint8_t *)(&__MBAR[0x00B1A9]))
-#define MCF_USB_EP4INACR (*(vuint8_t *)(&__MBAR[0x00B1D9]))
-#define MCF_USB_EP5INACR (*(vuint8_t *)(&__MBAR[0x00B209]))
-#define MCF_USB_EP6INACR (*(vuint8_t *)(&__MBAR[0x00B239]))
-#define MCF_USB_EPnINACR(x) (*(vuint8_t *)(&__MBAR[0x00B149+((x)*0x030)]))
-#define MCF_USB_EP1INMPSR (*(vuint16_t*)(&__MBAR[0x00B14A]))
-#define MCF_USB_EP2INMPSR (*(vuint16_t*)(&__MBAR[0x00B17A]))
-#define MCF_USB_EP3INMPSR (*(vuint16_t*)(&__MBAR[0x00B1AA]))
-#define MCF_USB_EP4INMPSR (*(vuint16_t*)(&__MBAR[0x00B1DA]))
-#define MCF_USB_EP5INMPSR (*(vuint16_t*)(&__MBAR[0x00B20A]))
-#define MCF_USB_EP6INMPSR (*(vuint16_t*)(&__MBAR[0x00B23A]))
-#define MCF_USB_EPnINMPSR(x) (*(vuint16_t*)(&__MBAR[0x00B14A+((x)*0x030)]))
-#define MCF_USB_EP1INIFR (*(vuint8_t *)(&__MBAR[0x00B14C]))
-#define MCF_USB_EP2INIFR (*(vuint8_t *)(&__MBAR[0x00B17C]))
-#define MCF_USB_EP3INIFR (*(vuint8_t *)(&__MBAR[0x00B1AC]))
-#define MCF_USB_EP4INIFR (*(vuint8_t *)(&__MBAR[0x00B1DC]))
-#define MCF_USB_EP5INIFR (*(vuint8_t *)(&__MBAR[0x00B20C]))
-#define MCF_USB_EP6INIFR (*(vuint8_t *)(&__MBAR[0x00B23C]))
-#define MCF_USB_EPnINIFR(x) (*(vuint8_t *)(&__MBAR[0x00B14C+((x)*0x030)]))
-#define MCF_USB_EP1INSR (*(vuint8_t *)(&__MBAR[0x00B14D]))
-#define MCF_USB_EP2INSR (*(vuint8_t *)(&__MBAR[0x00B17D]))
-#define MCF_USB_EP3INSR (*(vuint8_t *)(&__MBAR[0x00B1AD]))
-#define MCF_USB_EP4INSR (*(vuint8_t *)(&__MBAR[0x00B1DD]))
-#define MCF_USB_EP5INSR (*(vuint8_t *)(&__MBAR[0x00B20D]))
-#define MCF_USB_EP6INSR (*(vuint8_t *)(&__MBAR[0x00B23D]))
-#define MCF_USB_EPnINSR(x) (*(vuint8_t *)(&__MBAR[0x00B14D+((x)*0x030)]))
-#define MCF_USB_EP1INSFR (*(vuint16_t*)(&__MBAR[0x00B15A]))
-#define MCF_USB_EP2INSFR (*(vuint16_t*)(&__MBAR[0x00B18A]))
-#define MCF_USB_EP3INSFR (*(vuint16_t*)(&__MBAR[0x00B1BA]))
-#define MCF_USB_EP4INSFR (*(vuint16_t*)(&__MBAR[0x00B1EA]))
-#define MCF_USB_EP5INSFR (*(vuint16_t*)(&__MBAR[0x00B21A]))
-#define MCF_USB_EP6INSFR (*(vuint16_t*)(&__MBAR[0x00B24A]))
-#define MCF_USB_EPnINSFR(x) (*(vuint16_t*)(&__MBAR[0x00B15A+((x)*0x030)]))
-#define MCF_USB_USBSR (*(vuint32_t*)(&__MBAR[0x00B400]))
-#define MCF_USB_USBCR (*(vuint32_t*)(&__MBAR[0x00B404]))
-#define MCF_USB_DRAMCR (*(vuint32_t*)(&__MBAR[0x00B408]))
-#define MCF_USB_DRAMDR (*(vuint32_t*)(&__MBAR[0x00B40C]))
-#define MCF_USB_USBISR (*(vuint32_t*)(&__MBAR[0x00B410]))
-#define MCF_USB_USBIMR (*(vuint32_t*)(&__MBAR[0x00B414]))
-#define MCF_USB_EP0STAT (*(vuint32_t*)(&__MBAR[0x00B440]))
-#define MCF_USB_EP1STAT (*(vuint32_t*)(&__MBAR[0x00B470]))
-#define MCF_USB_EP2STAT (*(vuint32_t*)(&__MBAR[0x00B4A0]))
-#define MCF_USB_EP3STAT (*(vuint32_t*)(&__MBAR[0x00B4D0]))
-#define MCF_USB_EP4STAT (*(vuint32_t*)(&__MBAR[0x00B500]))
-#define MCF_USB_EP5STAT (*(vuint32_t*)(&__MBAR[0x00B530]))
-#define MCF_USB_EP6STAT (*(vuint32_t*)(&__MBAR[0x00B560]))
-#define MCF_USB_EPnSTAT(x) (*(vuint32_t*)(&__MBAR[0x00B440+((x)*0x030)]))
-#define MCF_USB_EP0ISR (*(vuint32_t*)(&__MBAR[0x00B444]))
-#define MCF_USB_EP1ISR (*(vuint32_t*)(&__MBAR[0x00B474]))
-#define MCF_USB_EP2ISR (*(vuint32_t*)(&__MBAR[0x00B4A4]))
-#define MCF_USB_EP3ISR (*(vuint32_t*)(&__MBAR[0x00B4D4]))
-#define MCF_USB_EP4ISR (*(vuint32_t*)(&__MBAR[0x00B504]))
-#define MCF_USB_EP5ISR (*(vuint32_t*)(&__MBAR[0x00B534]))
-#define MCF_USB_EP6ISR (*(vuint32_t*)(&__MBAR[0x00B564]))
-#define MCF_USB_EPnISR(x) (*(vuint32_t*)(&__MBAR[0x00B444+((x)*0x030)]))
-#define MCF_USB_EP0IMR (*(vuint32_t*)(&__MBAR[0x00B448]))
-#define MCF_USB_EP1IMR (*(vuint32_t*)(&__MBAR[0x00B478]))
-#define MCF_USB_EP2IMR (*(vuint32_t*)(&__MBAR[0x00B4A8]))
-#define MCF_USB_EP3IMR (*(vuint32_t*)(&__MBAR[0x00B4D8]))
-#define MCF_USB_EP4IMR (*(vuint32_t*)(&__MBAR[0x00B508]))
-#define MCF_USB_EP5IMR (*(vuint32_t*)(&__MBAR[0x00B538]))
-#define MCF_USB_EP6IMR (*(vuint32_t*)(&__MBAR[0x00B568]))
-#define MCF_USB_EPnIMR(x) (*(vuint32_t*)(&__MBAR[0x00B448+((x)*0x030)]))
-#define MCF_USB_EP0FRCFGR (*(vuint32_t*)(&__MBAR[0x00B44C]))
-#define MCF_USB_EP1FRCFGR (*(vuint32_t*)(&__MBAR[0x00B47C]))
-#define MCF_USB_EP2FRCFGR (*(vuint32_t*)(&__MBAR[0x00B4AC]))
-#define MCF_USB_EP3FRCFGR (*(vuint32_t*)(&__MBAR[0x00B4DC]))
-#define MCF_USB_EP4FRCFGR (*(vuint32_t*)(&__MBAR[0x00B50C]))
-#define MCF_USB_EP5FRCFGR (*(vuint32_t*)(&__MBAR[0x00B53C]))
-#define MCF_USB_EP6FRCFGR (*(vuint32_t*)(&__MBAR[0x00B56C]))
-#define MCF_USB_EPnFRCFGR(x) (*(vuint32_t*)(&__MBAR[0x00B44C+((x)*0x030)]))
-#define MCF_USB_EP0FDR (*(vuint32_t*)(&__MBAR[0x00B450]))
-#define MCF_USB_EP1FDR (*(vuint32_t*)(&__MBAR[0x00B480]))
-#define MCF_USB_EP2FDR (*(vuint32_t*)(&__MBAR[0x00B4B0]))
-#define MCF_USB_EP3FDR (*(vuint32_t*)(&__MBAR[0x00B4E0]))
-#define MCF_USB_EP4FDR (*(vuint32_t*)(&__MBAR[0x00B510]))
-#define MCF_USB_EP5FDR (*(vuint32_t*)(&__MBAR[0x00B540]))
-#define MCF_USB_EP6FDR (*(vuint32_t*)(&__MBAR[0x00B570]))
-#define MCF_USB_EPnFDR(x) (*(vuint32_t*)(&__MBAR[0x00B450+((x)*0x030)]))
-#define MCF_USB_EP0FSR (*(vuint32_t*)(&__MBAR[0x00B454]))
-#define MCF_USB_EP1FSR (*(vuint32_t*)(&__MBAR[0x00B484]))
-#define MCF_USB_EP2FSR (*(vuint32_t*)(&__MBAR[0x00B4B4]))
-#define MCF_USB_EP3FSR (*(vuint32_t*)(&__MBAR[0x00B4E4]))
-#define MCF_USB_EP4FSR (*(vuint32_t*)(&__MBAR[0x00B514]))
-#define MCF_USB_EP5FSR (*(vuint32_t*)(&__MBAR[0x00B544]))
-#define MCF_USB_EP6FSR (*(vuint32_t*)(&__MBAR[0x00B574]))
-#define MCF_USB_EPnFSR(x) (*(vuint32_t*)(&__MBAR[0x00B454+((x)*0x030)]))
-#define MCF_USB_EP0FCR (*(vuint32_t*)(&__MBAR[0x00B458]))
-#define MCF_USB_EP1FCR (*(vuint32_t*)(&__MBAR[0x00B488]))
-#define MCF_USB_EP2FCR (*(vuint32_t*)(&__MBAR[0x00B4B8]))
-#define MCF_USB_EP3FCR (*(vuint32_t*)(&__MBAR[0x00B4E8]))
-#define MCF_USB_EP4FCR (*(vuint32_t*)(&__MBAR[0x00B518]))
-#define MCF_USB_EP5FCR (*(vuint32_t*)(&__MBAR[0x00B548]))
-#define MCF_USB_EP6FCR (*(vuint32_t*)(&__MBAR[0x00B578]))
-#define MCF_USB_EPnFCR(x) (*(vuint32_t*)(&__MBAR[0x00B458+((x)*0x030)]))
-#define MCF_USB_EP0FAR (*(vuint32_t*)(&__MBAR[0x00B45C]))
-#define MCF_USB_EP1FAR (*(vuint32_t*)(&__MBAR[0x00B48C]))
-#define MCF_USB_EP2FAR (*(vuint32_t*)(&__MBAR[0x00B4BC]))
-#define MCF_USB_EP3FAR (*(vuint32_t*)(&__MBAR[0x00B4EC]))
-#define MCF_USB_EP4FAR (*(vuint32_t*)(&__MBAR[0x00B51C]))
-#define MCF_USB_EP5FAR (*(vuint32_t*)(&__MBAR[0x00B54C]))
-#define MCF_USB_EP6FAR (*(vuint32_t*)(&__MBAR[0x00B57C]))
-#define MCF_USB_EPnFAR(x) (*(vuint32_t*)(&__MBAR[0x00B45C+((x)*0x030)]))
-#define MCF_USB_EP0FRP (*(vuint32_t*)(&__MBAR[0x00B460]))
-#define MCF_USB_EP1FRP (*(vuint32_t*)(&__MBAR[0x00B490]))
-#define MCF_USB_EP2FRP (*(vuint32_t*)(&__MBAR[0x00B4C0]))
-#define MCF_USB_EP3FRP (*(vuint32_t*)(&__MBAR[0x00B4F0]))
-#define MCF_USB_EP4FRP (*(vuint32_t*)(&__MBAR[0x00B520]))
-#define MCF_USB_EP5FRP (*(vuint32_t*)(&__MBAR[0x00B550]))
-#define MCF_USB_EP6FRP (*(vuint32_t*)(&__MBAR[0x00B580]))
-#define MCF_USB_EPnFRP(x) (*(vuint32_t*)(&__MBAR[0x00B460+((x)*0x030)]))
-#define MCF_USB_EP0FWP (*(vuint32_t*)(&__MBAR[0x00B464]))
-#define MCF_USB_EP1FWP (*(vuint32_t*)(&__MBAR[0x00B494]))
-#define MCF_USB_EP2FWP (*(vuint32_t*)(&__MBAR[0x00B4C4]))
-#define MCF_USB_EP3FWP (*(vuint32_t*)(&__MBAR[0x00B4F4]))
-#define MCF_USB_EP4FWP (*(vuint32_t*)(&__MBAR[0x00B524]))
-#define MCF_USB_EP5FWP (*(vuint32_t*)(&__MBAR[0x00B554]))
-#define MCF_USB_EP6FWP (*(vuint32_t*)(&__MBAR[0x00B584]))
-#define MCF_USB_EPnFWP(x) (*(vuint32_t*)(&__MBAR[0x00B464+((x)*0x030)]))
-#define MCF_USB_EP0LRFP (*(vuint32_t*)(&__MBAR[0x00B468]))
-#define MCF_USB_EP1LRFP (*(vuint32_t*)(&__MBAR[0x00B498]))
-#define MCF_USB_EP2LRFP (*(vuint32_t*)(&__MBAR[0x00B4C8]))
-#define MCF_USB_EP3LRFP (*(vuint32_t*)(&__MBAR[0x00B4F8]))
-#define MCF_USB_EP4LRFP (*(vuint32_t*)(&__MBAR[0x00B528]))
-#define MCF_USB_EP5LRFP (*(vuint32_t*)(&__MBAR[0x00B558]))
-#define MCF_USB_EP6LRFP (*(vuint32_t*)(&__MBAR[0x00B588]))
-#define MCF_USB_EPnLRFP(x) (*(vuint32_t*)(&__MBAR[0x00B468+((x)*0x030)]))
-#define MCF_USB_EP0LWFP (*(vuint32_t*)(&__MBAR[0x00B46C]))
-#define MCF_USB_EP1LWFP (*(vuint32_t*)(&__MBAR[0x00B49C]))
-#define MCF_USB_EP2LWFP (*(vuint32_t*)(&__MBAR[0x00B4CC]))
-#define MCF_USB_EP3LWFP (*(vuint32_t*)(&__MBAR[0x00B4FC]))
-#define MCF_USB_EP4LWFP (*(vuint32_t*)(&__MBAR[0x00B52C]))
-#define MCF_USB_EP5LWFP (*(vuint32_t*)(&__MBAR[0x00B55C]))
-#define MCF_USB_EP6LWFP (*(vuint32_t*)(&__MBAR[0x00B58C]))
-#define MCF_USB_EPnLWFP(x) (*(vuint32_t*)(&__MBAR[0x00B46C+((x)*0x030)]))
-
-/* Bit definitions and macros for MCF_USB_USBAISR */
-#define MCF_USB_USBAISR_SETUP (0x01)
-#define MCF_USB_USBAISR_IN (0x02)
-#define MCF_USB_USBAISR_OUT (0x04)
-#define MCF_USB_USBAISR_EPHALT (0x08)
-#define MCF_USB_USBAISR_TRANSERR (0x10)
-#define MCF_USB_USBAISR_ACK (0x20)
-#define MCF_USB_USBAISR_CTROVFL (0x40)
-#define MCF_USB_USBAISR_EPSTALL (0x80)
-
-/* Bit definitions and macros for MCF_USB_USBAIMR */
-#define MCF_USB_USBAIMR_SETUPEN (0x01)
-#define MCF_USB_USBAIMR_INEN (0x02)
-#define MCF_USB_USBAIMR_OUTEN (0x04)
-#define MCF_USB_USBAIMR_EPHALTEN (0x08)
-#define MCF_USB_USBAIMR_TRANSERREN (0x10)
-#define MCF_USB_USBAIMR_ACKEN (0x20)
-#define MCF_USB_USBAIMR_CTROVFLEN (0x40)
-#define MCF_USB_USBAIMR_EPSTALLEN (0x80)
-
-/* Bit definitions and macros for MCF_USB_EPINFO */
-#define MCF_USB_EPINFO_EPDIR (0x01)
-#define MCF_USB_EPINFO_EPNUM(x) (((x)&0x07)<<1)
-
-/* Bit definitions and macros for MCF_USB_CFGAR */
-#define MCF_USB_CFGAR_RESERVED (0xA0)
-#define MCF_USB_CFGAR_RMTWKEUP (0xE0)
-
-/* Bit definitions and macros for MCF_USB_SPEEDR */
-#define MCF_USB_SPEEDR_HS (0x01)
-#define MCF_USB_SPEEDR_FS (0x02)
-
-/* Bit definitions and macros for MCF_USB_FRMNUMR */
-#define MCF_USB_FRMNUMR_FRMNUM(x) (((x)&0x0FFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPTNR */
-#define MCF_USB_EPTNR_EP1T(x) (((x)&0x0003)<<0)
-#define MCF_USB_EPTNR_EP2T(x) (((x)&0x0003)<<2)
-#define MCF_USB_EPTNR_EP3T(x) (((x)&0x0003)<<4)
-#define MCF_USB_EPTNR_EP4T(x) (((x)&0x0003)<<6)
-#define MCF_USB_EPTNR_EP5T(x) (((x)&0x0003)<<8)
-#define MCF_USB_EPTNR_EP6T(x) (((x)&0x0003)<<10)
-#define MCF_USB_EPTNR_EPnT1 (0)
-#define MCF_USB_EPTNR_EPnT2 (1)
-#define MCF_USB_EPTNR_EPnT3 (2)
-
-/* Bit definitions and macros for MCF_USB_IFUR */
-#define MCF_USB_IFUR_ALTSET(x) (((x)&0x00FF)<<0)
-#define MCF_USB_IFUR_IFNUM(x) (((x)&0x00FF)<<8)
-
-/* Bit definitions and macros for MCF_USB_IFRn */
-#define MCF_USB_IFRn_ALTSET(x) (((x)&0x00FF)<<0)
-#define MCF_USB_IFRn_IFNUM(x) (((x)&0x00FF)<<8)
-
-/* Bit definitions and macros for MCF_USB_CNTOVR */
-#define MCF_USB_CNTOVR_PPCNT (0x01)
-#define MCF_USB_CNTOVR_DPCNT (0x02)
-#define MCF_USB_CNTOVR_CRCECNT (0x04)
-#define MCF_USB_CNTOVR_BSECNT (0x08)
-#define MCF_USB_CNTOVR_PIDECNT (0x10)
-#define MCF_USB_CNTOVR_FRMECNT (0x20)
-#define MCF_USB_CNTOVR_TXPCNT (0x40)
-
-/* Bit definitions and macros for MCF_USB_EP0ACR */
-#define MCF_USB_EP0ACR_TTYPE(x) (((x)&0x03)<<0)
-#define MCF_USB_EP0ACR_TTYPE_CTRL (0)
-#define MCF_USB_EP0ACR_TTYPE_ISOC (1)
-#define MCF_USB_EP0ACR_TTYPE_BULK (2)
-#define MCF_USB_EP0ACR_TTYPE_INT (3)
-
-/* Bit definitions and macros for MCF_USB_EP0MPSR */
-#define MCF_USB_EP0MPSR_MAXPKTSZ(x) (((x)&0x07FF)<<0)
-#define MCF_USB_EP0MPSR_ADDTRANS(x) (((x)&0x0003)<<11)
-
-/* Bit definitions and macros for MCF_USB_EP0SR */
-#define MCF_USB_EP0SR_HALT (0x01)
-#define MCF_USB_EP0SR_ACTIVE (0x02)
-#define MCF_USB_EP0SR_PSTALL (0x04)
-#define MCF_USB_EP0SR_CCOMP (0x08)
-#define MCF_USB_EP0SR_TXZERO (0x20)
-#define MCF_USB_EP0SR_INT (0x80)
-
-/* Bit definitions and macros for MCF_USB_BMRTR */
-#define MCF_USB_BMRTR_DIR (0x80)
-#define MCF_USB_BMRTR_TYPE_STANDARD (0x00)
-#define MCF_USB_BMRTR_TYPE_CLASS (0x20)
-#define MCF_USB_BMRTR_TYPE_VENDOR (0x40)
-#define MCF_USB_BMRTR_REC_DEVICE (0x00)
-#define MCF_USB_BMRTR_REC_INTERFACE (0x01)
-#define MCF_USB_BMRTR_REC_ENDPOINT (0x02)
-#define MCF_USB_BMRTR_REC_OTHER (0x03)
-
-/* Bit definitions and macros for MCF_USB_EPnOUTACR */
-#define MCF_USB_EPnOUTACR_TTYPE(x) (((x)&0x03)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPnOUTMPSR */
-#define MCF_USB_EPnOUTMPSR_MAXPKTSZ(x) (((x)&0x07FF)<<0)
-#define MCF_USB_EPnOUTMPSR_ADDTRANS(x) (((x)&0x0003)<<11)
-
-/* Bit definitions and macros for MCF_USB_EPnOUTSR */
-#define MCF_USB_EPnOUTSR_HALT (0x01)
-#define MCF_USB_EPnOUTSR_ACTIVE (0x02)
-#define MCF_USB_EPnOUTSR_PSTALL (0x04)
-#define MCF_USB_EPnOUTSR_CCOMP (0x08)
-#define MCF_USB_EPnOUTSR_TXZERO (0x20)
-#define MCF_USB_EPnOUTSR_INT (0x80)
-
-/* Bit definitions and macros for MCF_USB_EPnOUTSFR */
-#define MCF_USB_EPnOUTSFR_FRMNUM(x) (((x)&0x07FF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPnINACR */
-#define MCF_USB_EPnINACR_TTYPE(x) (((x)&0x03)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPnINMPSR */
-#define MCF_USB_EPnINMPSR_MAXPKTSZ(x) (((x)&0x07FF)<<0)
-#define MCF_USB_EPnINMPSR_ADDTRANS(x) (((x)&0x0003)<<11)
-
-/* Bit definitions and macros for MCF_USB_EPnINSR */
-#define MCF_USB_EPnINSR_HALT (0x01)
-#define MCF_USB_EPnINSR_ACTIVE (0x02)
-#define MCF_USB_EPnINSR_PSTALL (0x04)
-#define MCF_USB_EPnINSR_CCOMP (0x08)
-#define MCF_USB_EPnINSR_TXZERO (0x20)
-#define MCF_USB_EPnINSR_INT (0x80)
-
-/* Bit definitions and macros for MCF_USB_EPnINSFR */
-#define MCF_USB_EPnINSFR_FRMNUM(x) (((x)&0x07FF)<<0)
-
-/* Bit definitions and macros for MCF_USB_USBSR */
-#define MCF_USB_USBSR_SUSP (0x00000080)
-#define MCF_USB_USBSR_ISOERREP (0x0000000F)
-
-/* Bit definitions and macros for MCF_USB_USBCR */
-#define MCF_USB_USBCR_RESUME (0x00000001)
-#define MCF_USB_USBCR_APPLOCK (0x00000002)
-#define MCF_USB_USBCR_RST (0x00000004)
-#define MCF_USB_USBCR_RAMEN (0x00000008)
-#define MCF_USB_USBCR_RAMSPLIT (0x00000020)
-
-/* Bit definitions and macros for MCF_USB_DRAMCR */
-#define MCF_USB_DRAMCR_DADR(x) (((x)&0x000003FF)<<0)
-#define MCF_USB_DRAMCR_DSIZE(x) (((x)&0x000007FF)<<16)
-#define MCF_USB_DRAMCR_BSY (0x40000000)
-#define MCF_USB_DRAMCR_START (0x80000000)
-
-/* Bit definitions and macros for MCF_USB_DRAMDR */
-#define MCF_USB_DRAMDR_DDAT(x) (((x)&0x000000FF)<<0)
-
-/* Bit definitions and macros for MCF_USB_USBISR */
-#define MCF_USB_USBISR_ISOERR (0x00000001)
-#define MCF_USB_USBISR_FTUNLCK (0x00000002)
-#define MCF_USB_USBISR_SUSP (0x00000004)
-#define MCF_USB_USBISR_RES (0x00000008)
-#define MCF_USB_USBISR_UPDSOF (0x00000010)
-#define MCF_USB_USBISR_RSTSTOP (0x00000020)
-#define MCF_USB_USBISR_SOF (0x00000040)
-#define MCF_USB_USBISR_MSOF (0x00000080)
-
-/* Bit definitions and macros for MCF_USB_USBIMR */
-#define MCF_USB_USBIMR_ISOERR (0x00000001)
-#define MCF_USB_USBIMR_FTUNLCK (0x00000002)
-#define MCF_USB_USBIMR_SUSP (0x00000004)
-#define MCF_USB_USBIMR_RES (0x00000008)
-#define MCF_USB_USBIMR_UPDSOF (0x00000010)
-#define MCF_USB_USBIMR_RSTSTOP (0x00000020)
-#define MCF_USB_USBIMR_SOF (0x00000040)
-#define MCF_USB_USBIMR_MSOF (0x00000080)
-
-/* Bit definitions and macros for MCF_USB_EPnSTAT */
-#define MCF_USB_EPnSTAT_RST (0x00000001)
-#define MCF_USB_EPnSTAT_FLUSH (0x00000002)
-#define MCF_USB_EPnSTAT_DIR (0x00000080)
-#define MCF_USB_EPnSTAT_BYTECNT(x) (((x)&0x00000FFF)<<16)
-
-/* Bit definitions and macros for MCF_USB_EPnISR */
-#define MCF_USB_EPnISR_EOF (0x00000001)
-#define MCF_USB_EPnISR_EOT (0x00000004)
-#define MCF_USB_EPnISR_FIFOLO (0x00000010)
-#define MCF_USB_EPnISR_FIFOHI (0x00000020)
-#define MCF_USB_EPnISR_ERR (0x00000040)
-#define MCF_USB_EPnISR_EMT (0x00000080)
-#define MCF_USB_EPnISR_FU (0x00000100)
-
-/* Bit definitions and macros for MCF_USB_EPnIMR */
-#define MCF_USB_EPnIMR_EOF (0x00000001)
-#define MCF_USB_EPnIMR_EOT (0x00000004)
-#define MCF_USB_EPnIMR_FIFOLO (0x00000010)
-#define MCF_USB_EPnIMR_FIFOHI (0x00000020)
-#define MCF_USB_EPnIMR_ERR (0x00000040)
-#define MCF_USB_EPnIMR_EMT (0x00000080)
-#define MCF_USB_EPnIMR_FU (0x00000100)
-
-/* Bit definitions and macros for MCF_USB_EPnFRCFGR */
-#define MCF_USB_EPnFRCFGR_DEPTH(x) (((x)&0x00001FFF)<<0)
-#define MCF_USB_EPnFRCFGR_BASE(x) (((x)&0x00000FFF)<<16)
-
-/* Bit definitions and macros for MCF_USB_EPnFSR */
-#define MCF_USB_EPnFSR_EMT (0x00010000)
-#define MCF_USB_EPnFSR_ALRM (0x00020000)
-#define MCF_USB_EPnFSR_FR (0x00040000)
-#define MCF_USB_EPnFSR_FU (0x00080000)
-#define MCF_USB_EPnFSR_OF (0x00100000)
-#define MCF_USB_EPnFSR_UF (0x00200000)
-#define MCF_USB_EPnFSR_RXW (0x00400000)
-#define MCF_USB_EPnFSR_FAE (0x00800000)
-#define MCF_USB_EPnFSR_FRM(x) (((x)&0x0000000F)<<24)
-#define MCF_USB_EPnFSR_TXW (0x40000000)
-#define MCF_USB_EPnFSR_IP (0x80000000)
-
-/* Bit definitions and macros for MCF_USB_EPnFCR */
-#define MCF_USB_EPnFCR_COUNTER(x) (((x)&0x0000FFFF)<<0)
-#define MCF_USB_EPnFCR_TXWMSK (0x00040000)
-#define MCF_USB_EPnFCR_OFMSK (0x00080000)
-#define MCF_USB_EPnFCR_UFMSK (0x00100000)
-#define MCF_USB_EPnFCR_RXWMSK (0x00200000)
-#define MCF_USB_EPnFCR_FAEMSK (0x00400000)
-#define MCF_USB_EPnFCR_IPMSK (0x00800000)
-#define MCF_USB_EPnFCR_GR(x) (((x)&0x00000007)<<24)
-#define MCF_USB_EPnFCR_FRM (0x08000000)
-#define MCF_USB_EPnFCR_TMR (0x10000000)
-#define MCF_USB_EPnFCR_WFR (0x20000000)
-#define MCF_USB_EPnFCR_SHAD (0x80000000)
-
-/* Bit definitions and macros for MCF_USB_EPnFAR */
-#define MCF_USB_EPnFAR_ALRMP(x) (((x)&0x00000FFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPnFRP */
-#define MCF_USB_EPnFRP_RP(x) (((x)&0x00000FFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPnFWP */
-#define MCF_USB_EPnFWP_WP(x) (((x)&0x00000FFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPnLRFP */
-#define MCF_USB_EPnLRFP_LRFP(x) (((x)&0x00000FFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPnLWFP */
-#define MCF_USB_EPnLWFP_LWFP(x) (((x)&0x00000FFF)<<0)
-
-
-#endif /* __MCF548X_USB_H__ */
diff --git a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_xlbarb.h b/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_xlbarb.h
deleted file mode 100644
index f4df976b37..0000000000
--- a/arch/m68k/include/asm/coldfire/mcf548x/mcf548x_xlbarb.h
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Register and bit definitions for the MCF548X and MCF547x
- * XLB bus arbiter
- */
-#ifndef __MCF548X_XLBARB_H__
-#define __MCF548X_XLBARB_H__
-
-/*
- * XLB arbiter register
- */
-#define MCF_XLBARB_ACFG (*(vuint32*)(&__MBAR[0x000240]))
-#define MCF_XLBARB_VER (*(vuint32*)(&__MBAR[0x000244]))
-#define MCF_XLBARB_STA (*(vuint32*)(&__MBAR[0x000248]))
-#define MCF_XLBARB_INTEN (*(vuint32*)(&__MBAR[0x00024C]))
-#define MCF_XLBARB_ADRCAP (*(vuint32*)(&__MBAR[0x000250]))
-#define MCF_XLBARB_SIGCAP (*(vuint32*)(&__MBAR[0x000254]))
-#define MCF_XLBARB_ADRTO (*(vuint32*)(&__MBAR[0x000258]))
-#define MCF_XLBARB_DATTO (*(vuint32*)(&__MBAR[0x00025C]))
-#define MCF_XLBARB_BUSTO (*(vuint32*)(&__MBAR[0x000260]))
-#define MCF_XLBARB_PRIEN (*(vuint32*)(&__MBAR[0x000264]))
-#define MCF_XLBARB_PRI (*(vuint32*)(&__MBAR[0x000268]))
-#define MCF_XLBARB_BAR (*(vuint32*)(&__MBAR[0x00026C]))
-
-
-#endif /* __MCF548X_XLBARB_H__ */
diff --git a/arch/m68k/include/asm/coldfire/mcf5xxx.h b/arch/m68k/include/asm/coldfire/mcf5xxx.h
deleted file mode 100644
index 5edde1e8b3..0000000000
--- a/arch/m68k/include/asm/coldfire/mcf5xxx.h
+++ /dev/null
@@ -1,258 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Definitions common across all ColdFire processors
- */
-#ifndef __MCF5XXX__H
-#define __MCF5XXX__H
-
-/*
- * Common M68K & ColdFire definitions
- */
-#define ADDRESS uint32_t
-#define INSTRUCTION uint16_t
-#define ILLEGAL 0x4AFC
-#define CPU_WORD_SIZE 16
-
-/*
- * Definitions for CPU status register (SR)
- */
-#define MCF5XXX_SR_T (0x8000)
-#define MCF5XXX_SR_S (0x2000)
-#define MCF5XXX_SR_M (0x1000)
-#define MCF5XXX_SR_IPL (0x0700)
-#define MCF5XXX_SR_IPL_0 (0x0000)
-#define MCF5XXX_SR_IPL_1 (0x0100)
-#define MCF5XXX_SR_IPL_2 (0x0200)
-#define MCF5XXX_SR_IPL_3 (0x0300)
-#define MCF5XXX_SR_IPL_4 (0x0400)
-#define MCF5XXX_SR_IPL_5 (0x0500)
-#define MCF5XXX_SR_IPL_6 (0x0600)
-#define MCF5XXX_SR_IPL_7 (0x0700)
-#define MCF5XXX_SR_X (0x0010)
-#define MCF5XXX_SR_N (0x0008)
-#define MCF5XXX_SR_Z (0x0004)
-#define MCF5XXX_SR_V (0x0002)
-#define MCF5XXX_SR_C (0x0001)
-
-/*
- * Definitions for CPU cache control register
- */
-#define MCF5XXX_CACR_CENB (0x80000000)
-#define MCF5XXX_CACR_DEC (0x80000000)
-#define MCF5XXX_CACR_DW (0x40000000)
-#define MCF5XXX_CACR_DESB (0x20000000)
-#define MCF5XXX_CACR_CPDI (0x10000000)
-#define MCF5XXX_CACR_DDPI (0x10000000)
-#define MCF5XXX_CACR_CPD (0x10000000)
-#define MCF5XXX_CACR_CFRZ (0x08000000)
-#define MCF5XXX_CACR_DHLCK (0x08000000)
-#define MCF5XXX_CACR_DDCM_WT (0x00000000)
-#define MCF5XXX_CACR_DDCM_CB (0x02000000)
-#define MCF5XXX_CACR_DDCM_IP (0x04000000)
-#define MCF5XXX_CACR_DDCM_II (0x06000000)
-#define MCF5XXX_CACR_CINV (0x01000000)
-#define MCF5XXX_CACR_DCINVA (0x01000000)
-#define MCF5XXX_CACR_DIDI (0x00800000)
-#define MCF5XXX_CACR_DDSP (0x00800000)
-#define MCF5XXX_CACR_DISD (0x00400000)
-#define MCF5XXX_CACR_INVI (0x00200000)
-#define MCF5XXX_CACR_INVD (0x00100000)
-#define MCF5XXX_CACR_BEC (0x00080000)
-#define MCF5XXX_CACR_BCINVA (0x00040000)
-#define MCF5XXX_CACR_IEC (0x00008000)
-#define MCF5XXX_CACR_DNFB (0x00002000)
-#define MCF5XXX_CACR_IDPI (0x00001000)
-#define MCF5XXX_CACR_IHLCK (0x00000800)
-#define MCF5XXX_CACR_CEIB (0x00000400)
-#define MCF5XXX_CACR_IDCM (0x00000400)
-#define MCF5XXX_CACR_DCM_WR (0x00000000)
-#define MCF5XXX_CACR_DCM_CB (0x00000100)
-#define MCF5XXX_CACR_DCM_IP (0x00000200)
-#define MCF5XXX_CACR_DCM (0x00000200)
-#define MCF5XXX_CACR_DCM_II (0x00000300)
-#define MCF5XXX_CACR_DBWE (0x00000100)
-#define MCF5XXX_CACR_ICINVA (0x00000100)
-#define MCF5XXX_CACR_IDSP (0x00000080)
-#define MCF5XXX_CACR_DWP (0x00000020)
-#define MCF5XXX_CACR_EUSP (0x00000020)
-#define MCF5XXX_CACR_EUST (0x00000020)
-#define MCF5XXX_CACR_DF (0x00000010)
-#define MCF5XXX_CACR_CLNF_00 (0x00000000)
-#define MCF5XXX_CACR_CLNF_01 (0x00000002)
-#define MCF5XXX_CACR_CLNF_10 (0x00000004)
-#define MCF5XXX_CACR_CLNF_11 (0x00000006)
-
-/*
- * Definition for CPU access control register
- */
-#define MCF5XXX_ACR_AB(a) ((a)&0xFF000000)
-#define MCF5XXX_ACR_AM(a) (((a)&0xFF000000) >> 8)
-#define MCF5XXX_ACR_EN (0x00008000)
-#define MCF5XXX_ACR_SM_USER (0x00000000)
-#define MCF5XXX_ACR_SM_SUPER (0x00002000)
-#define MCF5XXX_ACR_SM_IGNORE (0x00006000)
-#define MCF5XXX_ACR_ENIB (0x00000080)
-#define MCF5XXX_ACR_CM (0x00000040)
-#define MCF5XXX_ACR_DCM_WR (0x00000000)
-#define MCF5XXX_ACR_DCM_CB (0x00000020)
-#define MCF5XXX_ACR_DCM_IP (0x00000040)
-#define MCF5XXX_ACR_DCM_II (0x00000060)
-#define MCF5XXX_ACR_CM (0x00000040)
-#define MCF5XXX_ACR_BWE (0x00000020)
-#define MCF5XXX_ACR_WP (0x00000004)
-
-/*
- * Definitions for CPU core sram control registers
- */
-#define MCF5XXX_RAMBAR_BA(a) ((a)&0xFFFFC000)
-#define MCF5XXX_RAMBAR_PRI_00 (0x00000000)
-#define MCF5XXX_RAMBAR_PRI_01 (0x00004000)
-#define MCF5XXX_RAMBAR_PRI_10 (0x00008000)
-#define MCF5XXX_RAMBAR_PRI_11 (0x0000C000)
-#define MCF5XXX_RAMBAR_WP (0x00000100)
-#define MCF5XXX_RAMBAR_CI (0x00000020)
-#define MCF5XXX_RAMBAR_SC (0x00000010)
-#define MCF5XXX_RAMBAR_SD (0x00000008)
-#define MCF5XXX_RAMBAR_UC (0x00000004)
-#define MCF5XXX_RAMBAR_UD (0x00000002)
-#define MCF5XXX_RAMBAR_V (0x00000001)
-
-
-#ifndef __ASSEMBLY__
-
-extern char __MBAR[];
-
-
-/*
- * Extention to thhe basic POSIX data types
- */
-typedef volatile uint8_t vuint8_t; /* 8 bits */
-typedef volatile uint16_t vuint16_t; /* 16 bits */
-typedef volatile uint32_t vuint32_t; /* 32 bits */
-
-/*
- * Routines and macros for accessing Input/Output devices
- */
-
-#define mcf_iord_8(ADDR) *((vuint8_t *)(ADDR))
-#define mcf_iord_16(ADDR) *((vuint16_t *)(ADDR))
-#define mcf_iord_32(ADDR) *((vuint32_t *)(ADDR))
-
-#define mcf_iowr_8(ADDR,DATA) *((vuint8_t *)(ADDR)) = (DATA)
-#define mcf_iowr_16(ADDR,DATA) *((vuint16_t *)(ADDR)) = (DATA)
-#define mcf_iowr_32(ADDR,DATA) *((vuint32_t *)(ADDR)) = (DATA)
-
-/*
- * The ColdFire family of processors has a simplified exception stack
- * frame that looks like the following:
- *
- * 3322222222221111 111111
- * 1098765432109876 5432109876543210
- * 8 +----------------+----------------+
- * | Program Counter |
- * 4 +----------------+----------------+
- * |FS/Fmt/Vector/FS| SR |
- * SP --> 0 +----------------+----------------+
- *
- * The stack self-aligns to a 4-byte boundary at an exception, with
- * the FS/Fmt/Vector/FS field indicating the size of the adjustment
- * (SP += 0,1,2,3 bytes).
- */
-#define MCF5XXX_RD_SF_FORMAT(PTR) \
- ((*((uint16_t *)(PTR)) >> 12) & 0x00FF)
-
-#define MCF5XXX_RD_SF_VECTOR(PTR) \
- ((*((uint16_t *)(PTR)) >> 2) & 0x00FF)
-
-#define MCF5XXX_RD_SF_FS(PTR) \
- ( ((*((uint16_t *)(PTR)) & 0x0C00) >> 8) | (*((uint16_t *)(PTR)) & 0x0003) )
-
-#define MCF5XXX_SF_SR(PTR) *((uint16_t *)(PTR)+1)
-#define MCF5XXX_SF_PC(PTR) *((uint32_t *)(PTR)+1)
-
-/*
- * Functions provided as inline code to access supervisor mode
- * registers from C.
- *
- * Note: Most registers are write-only. So you must use shadow registers in
- * RAM to track the state of each register!
- */
-static __inline__ uint16_t mcf5xxx_rd_sr(void) { uint16_t rc; __asm__ __volatile__( "move.w %%sr,%0\n" : "=r" (rc) ); return rc; }
-static __inline__ void mcf5xxx_wr_sr(uint16_t value) { __asm__ __volatile__( "move.w %0,%%sr\n" : : "r" (value) ); }
-
-static __inline__ int asm_set_ipl(uint32_t value)
-{
- uint32_t oldipl,newipl;
- value = (value & 0x7) << 8U;
- oldipl = mcf5xxx_rd_sr();
- newipl = oldipl & ~0x0700U;
- newipl |= value;
- mcf5xxx_wr_sr(newipl);
- oldipl = (oldipl & 0x0700U) >> 8U;
- return oldipl;
-}
-
-static __inline__ void mcf5xxx_cpushl_bc(uint32_t* value) { __asm__ __volatile__( " move.l %0,%%a0 \n .word 0xF4E8\n nop\n" : : "a" (value) : "a0"); }
- // cpushl bc,%%a0@ ???
-
-static __inline__ void mcf5xxx_wr_cacr(uint32_t value) { __asm__ __volatile__( "movec %0,%%cacr\n nop\n" : : "r" (value) ); }
-static __inline__ void mcf5xxx_wr_asid(uint32_t value) { __asm__ __volatile__( "movec %0,%%asid\n nop\n" : : "r" (value) ); }
-static __inline__ void mcf5xxx_wr_acr0(uint32_t value) { __asm__ __volatile__( "movec %0,#4\n nop\n" : : "r" (value) ); }
-static __inline__ void mcf5xxx_wr_acr1(uint32_t value) { __asm__ __volatile__( "movec %0,#5\n nop\n" : : "r" (value) ); }
-static __inline__ void mcf5xxx_wr_acr2(uint32_t value) { __asm__ __volatile__( "movec %0,#6\n nop\n" : : "r" (value) ); }
-static __inline__ void mcf5xxx_wr_acr3(uint32_t value) { __asm__ __volatile__( "movec %0,#7\n nop\n" : : "r" (value) ); }
-static __inline__ void mcf5xxx_wr_mmubar(uint32_t value) { __asm__ __volatile__( "movec %0,%%mmubar\n nop\n" : : "r" (value) ); }
-static __inline__ void mcf5xxx_wr_other_a7(uint32_t value) { __asm__ __volatile__( "movec %0,%%other_sp\n nop\n" : : "r" (value) ); }
-static __inline__ void mcf5xxx_wr_vbr(uint32_t value) { __asm__ __volatile__( "movec %0,%%vbr\n nop\n" : : "r" (value) ); }
-static __inline__ void mcf5xxx_wr_macsr(uint32_t value) { __asm__ __volatile__( "movec %0,%%macsr\n nop\n" : : "r" (value) ); }
-static __inline__ void mcf5xxx_wr_mask(uint32_t value) { __asm__ __volatile__( "movec %0,%%mask\n nop\n" : : "r" (value) ); }
-static __inline__ void mcf5xxx_wr_acc0(uint32_t value) { __asm__ __volatile__( "movec %0,%%acc0\n nop\n" : : "r" (value) ); }
-static __inline__ void mcf5xxx_wr_accext01(uint32_t value) { __asm__ __volatile__( "movec %0,%%accext01\n nop\n" : : "r" (value) ); }
-static __inline__ void mcf5xxx_wr_accext23(uint32_t value) { __asm__ __volatile__( "movec %0,%%accext23\n nop\n" : : "r" (value) ); }
-static __inline__ void mcf5xxx_wr_acc1(uint32_t value) { __asm__ __volatile__( "movec %0,%%acc1\n nop\n" : : "r" (value) ); }
-static __inline__ void mcf5xxx_wr_acc2(uint32_t value) { __asm__ __volatile__( "movec %0,%%acc2\n nop\n" : : "r" (value) ); }
-static __inline__ void mcf5xxx_wr_acc3(uint32_t value) { __asm__ __volatile__( "movec %0,%%acc3\n nop\n" : : "r" (value) ); }
-//static __inline__ void mcf5xxx_wr_sr(uint32_t value) { __asm__ __volatile__( "movec %0,%%sr\n nop\n" : : "r" (value) ); }
-//static __inline__ void mcf5xxx_wr_pc(uint32_t value) { __asm__ __volatile__( "movec %0,#0x080F\n nop\n" : : "r" (value) ); }
-static __inline__ void mcf5xxx_wr_rombar0(uint32_t value) { __asm__ __volatile__( "movec %0,%%rombar0\n nop\n" : : "r" (value) ); }
-static __inline__ void mcf5xxx_wr_rombar1(uint32_t value) { __asm__ __volatile__( "movec %0,%%rombar1\n nop\n" : : "r" (value) ); }
-static __inline__ void mcf5xxx_wr_rambar0(uint32_t value) { __asm__ __volatile__( "movec %0,%%rambar0\n nop\n" : : "r" (value) ); }
-static __inline__ void mcf5xxx_wr_rambar1(uint32_t value) { __asm__ __volatile__( "movec %0,%%rambar1\n nop\n" : : "r" (value) ); }
-static __inline__ void mcf5xxx_wr_mpcr(uint32_t value) { __asm__ __volatile__( "movec %0,%%mpcr\n nop\n" : : "r" (value) ); }
-static __inline__ void mcf5xxx_wr_secmbar(uint32_t value) { __asm__ __volatile__( "movec %0,%%mbar1\n nop\n" : : "r" (value) ); }
-static __inline__ void mcf5xxx_wr_mbar(uint32_t value) { __asm__ __volatile__( "movec %0,%%mbar0\n nop\n" : : "r" (value) ); }
-
-#endif
-
-/*
- * Now do specific ColdFire processor
- */
-
-#if (defined(CONFIG_ARCH_MCF54xx))
-#include "asm/coldfire/mcf548x.h"
-
-#else
-#error "Error: Yet unsupported ColdFire processor."
-#endif
-
-
-#endif /* __MCF5XXX__H */
diff --git a/arch/m68k/include/asm/common.h b/arch/m68k/include/asm/common.h
deleted file mode 100644
index 202ccad0b3..0000000000
--- a/arch/m68k/include/asm/common.h
+++ /dev/null
@@ -1,25 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Common include file wrapper for m68k architecture
- */
-
-/* nothing */
diff --git a/arch/m68k/include/asm/elf.h b/arch/m68k/include/asm/elf.h
deleted file mode 100644
index 57fdcb2633..0000000000
--- a/arch/m68k/include/asm/elf.h
+++ /dev/null
@@ -1,146 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Defines for M68k ELF Files
- */
-#ifndef __ASMm68k_ELF_H
-#define __ASMm68k_ELF_H
-
-/*
- * ELF register definitions..
- */
-
-//#include <linux/config.h>
-#include <asm/ptrace.h>
-//#include <asm/user.h>
-
-/*
- * 68k ELF relocation types
- */
-#define R_68K_NONE 0
-#define R_68K_32 1
-#define R_68K_16 2
-#define R_68K_8 3
-#define R_68K_PC32 4
-#define R_68K_PC16 5
-#define R_68K_PC8 6
-#define R_68K_GOT32 7
-#define R_68K_GOT16 8
-#define R_68K_GOT8 9
-#define R_68K_GOT32O 10
-#define R_68K_GOT16O 11
-#define R_68K_GOT8O 12
-#define R_68K_PLT32 13
-#define R_68K_PLT16 14
-#define R_68K_PLT8 15
-#define R_68K_PLT32O 16
-#define R_68K_PLT16O 17
-#define R_68K_PLT8O 18
-#define R_68K_COPY 19
-#define R_68K_GLOB_DAT 20
-#define R_68K_JMP_SLOT 21
-#define R_68K_RELATIVE 22
-
-typedef unsigned long elf_greg_t;
-
-//#define ELF_NGREG (sizeof(struct user_regs_struct) / sizeof(elf_greg_t))
-#define ELF_NGREG 20
-typedef elf_greg_t elf_gregset_t[ELF_NGREG];
-
-typedef struct user_m68kfp_struct elf_fpregset_t;
-
-/*
- * This is used to ensure we don't load something for the wrong architecture.
- */
-#define elf_check_arch(x) ((x)->e_machine == EM_68K)
-
-/*
- * These are used to set parameters in the core dumps.
- */
-#define ELF_CLASS ELFCLASS32
-#define ELF_DATA ELFDATA2MSB
-#define ELF_ARCH EM_68K
-
-/* For SVR4/m68k the function pointer to be registered with `atexit' is
- passed in %a1. Although my copy of the ABI has no such statement, it
- is actually used on ASV. */
-#define ELF_PLAT_INIT(_r, load_addr) _r->a1 = 0
-
-#define USE_ELF_CORE_DUMP
-#if !defined(CONFIG_SUN3) && !defined(CONFIG_COLDFIRE)
-#define ELF_EXEC_PAGESIZE 4096
-#else
-#define ELF_EXEC_PAGESIZE 8192
-#endif
-
-/* This is the location that an ET_DYN program is loaded if exec'ed. Typical
- use of this is to invoke "./ld.so someprog" to test out a new version of
- the loader. We need to make sure that it is out of the way of the program
- that it will "exec", and that there is sufficient room for the brk. */
-
-#ifndef CONFIG_SUN3
-#define ELF_ET_DYN_BASE 0xD0000000UL
-#else
-#define ELF_ET_DYN_BASE 0x0D800000UL
-#endif
-
-#define ELF_CORE_COPY_REGS(pr_reg, regs) \
- /* Bleech. */ \
- pr_reg[0] = regs->d1; \
- pr_reg[1] = regs->d2; \
- pr_reg[2] = regs->d3; \
- pr_reg[3] = regs->d4; \
- pr_reg[4] = regs->d5; \
- pr_reg[7] = regs->a0; \
- pr_reg[8] = regs->a1; \
- pr_reg[9] = regs->a2; \
- pr_reg[14] = regs->d0; \
- pr_reg[15] = rdusp(); \
- pr_reg[16] = regs->orig_d0; \
- pr_reg[17] = regs->sr; \
- pr_reg[18] = regs->pc; \
- pr_reg[19] = (regs->format << 12) | regs->vector; \
- { \
- struct switch_stack *sw = ((struct switch_stack *)regs) - 1; \
- pr_reg[5] = sw->d6; \
- pr_reg[6] = sw->d7; \
- pr_reg[10] = sw->a3; \
- pr_reg[11] = sw->a4; \
- pr_reg[12] = sw->a5; \
- pr_reg[13] = sw->a6; \
- }
-
-/* This yields a mask that user programs can use to figure out what
- instruction set this cpu supports. */
-
-#define ELF_HWCAP (0)
-
-/* This yields a string that ld.so will use to load implementation
- specific libraries for optimization. This is more specific in
- intent than poking at uname or /proc/cpuinfo. */
-
-#define ELF_PLATFORM (NULL)
-
-#ifdef __KERNEL__
-#define SET_PERSONALITY(ex, ibcs2) set_personality((ibcs2)?PER_SVR4:PER_LINUX)
-#endif
-
-#endif
diff --git a/arch/m68k/include/asm/hardware.h b/arch/m68k/include/asm/hardware.h
deleted file mode 100644
index eeca64eb95..0000000000
--- a/arch/m68k/include/asm/hardware.h
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Common hardware definitions
- */
-
-#ifndef __M68K_HARDWARE_H
-#define __M68K_HARDWARE_H
-
-#include <mach/hardware.h>
-
-#endif
diff --git a/arch/m68k/include/asm/io.h b/arch/m68k/include/asm/io.h
deleted file mode 100644
index b6b01cb184..0000000000
--- a/arch/m68k/include/asm/io.h
+++ /dev/null
@@ -1,304 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Generic virtual read/write. Note that we don't support half-word
- * read/writes. We define __arch_*[bl] here, and leave __arch_*w
- * to the architecture specific code.
- */
-#ifndef __ASM_M68K_IO_H
-#define __ASM_M68K_IO_H
-
-#ifdef __KERNEL__
-
-#include <linux/types.h>
-#include <asm/byteorder.h>
-#include <asm/memory.h>
-
-/*
- */
-#define __arch_getb(a) (*(volatile unsigned char *)(a))
-#define __arch_getw(a) (*(volatile unsigned short *)(a))
-#define __arch_getl(a) (*(volatile unsigned int *)(a))
-
-#define __arch_putb(v,a) (*(volatile unsigned char *)(a) = (v))
-#define __arch_putw(v,a) (*(volatile unsigned short *)(a) = (v))
-#define __arch_putl(v,a) (*(volatile unsigned int *)(a) = (v))
-
-extern void __raw_writesb(unsigned int addr, const void *data, int bytelen);
-extern void __raw_writesw(unsigned int addr, const void *data, int wordlen);
-extern void __raw_writesl(unsigned int addr, const void *data, int longlen);
-
-extern void __raw_readsb(unsigned int addr, void *data, int bytelen);
-extern void __raw_readsw(unsigned int addr, void *data, int wordlen);
-extern void __raw_readsl(unsigned int addr, void *data, int longlen);
-
-#define __raw_writeb(v,a) __arch_putb(v,a)
-#define __raw_writew(v,a) __arch_putw(v,a)
-#define __raw_writel(v,a) __arch_putl(v,a)
-
-#define __raw_readb(a) __arch_getb(a)
-#define __raw_readw(a) __arch_getw(a)
-#define __raw_readl(a) __arch_getl(a)
-
-#define writeb(v,a) __arch_putb(v,a)
-#define writew(v,a) __arch_putw(v,a)
-#define writel(v,a) __arch_putl(v,a)
-
-#define readb(a) __arch_getb(a)
-#define readw(a) __arch_getw(a)
-#define readl(a) __arch_getl(a)
-
-/*
- * The compiler seems to be incapable of optimising constants
- * properly. Spell it out to the compiler in some cases.
- * These are only valid for small values of "off" (< 1<<12)
- */
-#define __raw_base_writeb(val,base,off) __arch_base_putb(val,base,off)
-#define __raw_base_writew(val,base,off) __arch_base_putw(val,base,off)
-#define __raw_base_writel(val,base,off) __arch_base_putl(val,base,off)
-
-#define __raw_base_readb(base,off) __arch_base_getb(base,off)
-#define __raw_base_readw(base,off) __arch_base_getw(base,off)
-#define __raw_base_readl(base,off) __arch_base_getl(base,off)
-
-/*
- * Now, pick up the machine-defined IO definitions
- */
-
-/*
- * IO port access primitives
- * -------------------------
- *
- * The M68k doesn't have special IO access instructions; all IO is memory
- * mapped. Note that these are defined to perform little endian accesses
- * only. Their primary purpose is to access PCI and ISA peripherals.
- *
- * Note that for a big endian machine, this implies that the following
- * big endian mode connectivity is in place, as described by numerious
- * ARM documents:
- *
- * PCI: D0-D7 D8-D15 D16-D23 D24-D31
- * ARM: D24-D31 D16-D23 D8-D15 D0-D7
- *
- * The machine specific io.h include defines __io to translate an "IO"
- * address to a memory address.
- *
- * Note that we prevent GCC re-ordering or caching values in expressions
- * by introducing sequence points into the in*() definitions. Note that
- * __raw_* do not guarantee this behaviour.
- *
- * The {in,out}[bwl] macros are for emulating x86-style PCI/ISA IO space.
- */
-#ifdef __io
-#define outb(v,p) __raw_writeb(v,__io(p))
-#define outw(v,p) __raw_writew(cpu_to_le16(v),__io(p))
-#define outl(v,p) __raw_writel(cpu_to_le32(v),__io(p))
-
-#define inb(p) ({ unsigned int __v = __raw_readb(__io(p)); __v; })
-#define inw(p) ({ unsigned int __v = le16_to_cpu(__raw_readw(__io(p))); __v; })
-#define inl(p) ({ unsigned int __v = le32_to_cpu(__raw_readl(__io(p))); __v; })
-
-#define outsb(p,d,l) __raw_writesb(__io(p),d,l)
-#define outsw(p,d,l) __raw_writesw(__io(p),d,l)
-#define outsl(p,d,l) __raw_writesl(__io(p),d,l)
-
-#define insb(p,d,l) __raw_readsb(__io(p),d,l)
-#define insw(p,d,l) __raw_readsw(__io(p),d,l)
-#define insl(p,d,l) __raw_readsl(__io(p),d,l)
-#endif
-
-#define outb_p(val,port) outb((val),(port))
-#define outw_p(val,port) outw((val),(port))
-#define outl_p(val,port) outl((val),(port))
-#define inb_p(port) inb((port))
-#define inw_p(port) inw((port))
-#define inl_p(port) inl((port))
-
-#define outsb_p(port,from,len) outsb(port,from,len)
-#define outsw_p(port,from,len) outsw(port,from,len)
-#define outsl_p(port,from,len) outsl(port,from,len)
-#define insb_p(port,to,len) insb(port,to,len)
-#define insw_p(port,to,len) insw(port,to,len)
-#define insl_p(port,to,len) insl(port,to,len)
-
-/*
- * ioremap and friends.
- *
- * ioremap takes a PCI memory address, as specified in
- * linux/Documentation/IO-mapping.txt. If you want a
- * physical address, use __ioremap instead.
- */
-extern void * __ioremap(unsigned long offset, size_t size, unsigned long flags);
-extern void __iounmap(void *addr);
-
-/*
- * Generic ioremap support.
- *
- * Define:
- * iomem_valid_addr(off,size)
- * iomem_to_phys(off)
- */
-#ifdef iomem_valid_addr
-#define __arch_ioremap(off,sz,nocache) \
- ({ \
- unsigned long _off = (off), _size = (sz); \
- void *_ret = (void *)0; \
- if (iomem_valid_addr(_off, _size)) \
- _ret = __ioremap(iomem_to_phys(_off),_size,0); \
- _ret; \
- })
-
-#define __arch_iounmap __iounmap
-#endif
-
-#define ioremap(off,sz) __arch_ioremap((off),(sz),0)
-#define ioremap_nocache(off,sz) __arch_ioremap((off),(sz),1)
-#define iounmap(_addr) __arch_iounmap(_addr)
-
-/*
- * DMA-consistent mapping functions. These allocate/free a region of
- * uncached, unwrite-buffered mapped memory space for use with DMA
- * devices. This is the "generic" version. The PCI specific version
- * is in pci.h
- */
-extern void *consistent_alloc(int gfp, size_t size, dma_addr_t *handle);
-extern void consistent_free(void *vaddr, size_t size, dma_addr_t handle);
-extern void consistent_sync(void *vaddr, size_t size, int rw);
-
-/*
- * String version of IO memory access ops:
- */
-extern void _memcpy_fromio(void *, unsigned long, size_t);
-extern void _memcpy_toio(unsigned long, const void *, size_t);
-extern void _memset_io(unsigned long, int, size_t);
-
-extern void __readwrite_bug(const char *fn);
-
-/*
- * If this architecture has PCI memory IO, then define the read/write
- * macros. These should only be used with the cookie passed from
- * ioremap.
- */
-#ifdef __mem_pci
-
-#define readb(c) ({ unsigned int __v = __raw_readb(__mem_pci(c)); __v; })
-#define readw(c) ({ unsigned int __v = le16_to_cpu(__raw_readw(__mem_pci(c))); __v; })
-#define readl(c) ({ unsigned int __v = le32_to_cpu(__raw_readl(__mem_pci(c))); __v; })
-
-#define writeb(v,c) __raw_writeb(v,__mem_pci(c))
-#define writew(v,c) __raw_writew(cpu_to_le16(v),__mem_pci(c))
-#define writel(v,c) __raw_writel(cpu_to_le32(v),__mem_pci(c))
-
-#define memset_io(c,v,l) _memset_io(__mem_pci(c),(v),(l))
-#define memcpy_fromio(a,c,l) _memcpy_fromio((a),__mem_pci(c),(l))
-#define memcpy_toio(c,a,l) _memcpy_toio(__mem_pci(c),(a),(l))
-
-#define eth_io_copy_and_sum(s,c,l,b) \
- eth_copy_and_sum((s),__mem_pci(c),(l),(b))
-
-static inline int
-check_signature(unsigned long io_addr, const unsigned char *signature,
- int length)
-{
- int retval = 0;
- do {
- if (readb(io_addr) != *signature)
- goto out;
- io_addr++;
- signature++;
- length--;
- } while (length);
- retval = 1;
-out:
- return retval;
-}
-
-#elif !defined(readb)
-
-#define readb(addr) (__readwrite_bug("readb"),0)
-#define readw(addr) (__readwrite_bug("readw"),0)
-#define readl(addr) (__readwrite_bug("readl"),0)
-#define writeb(v,addr) __readwrite_bug("writeb")
-#define writew(v,addr) __readwrite_bug("writew")
-#define writel(v,addr) __readwrite_bug("writel")
-
-#define eth_io_copy_and_sum(a,b,c,d) __readwrite_bug("eth_io_copy_and_sum")
-
-#define check_signature(io,sig,len) (0)
-
-#endif /* __mem_pci */
-
-/*
- * If this architecture has ISA IO, then define the isa_read/isa_write
- * macros.
- */
-#ifdef __mem_isa
-
-#define isa_readb(addr) __raw_readb(__mem_isa(addr))
-#define isa_readw(addr) __raw_readw(__mem_isa(addr))
-#define isa_readl(addr) __raw_readl(__mem_isa(addr))
-#define isa_writeb(val,addr) __raw_writeb(val,__mem_isa(addr))
-#define isa_writew(val,addr) __raw_writew(val,__mem_isa(addr))
-#define isa_writel(val,addr) __raw_writel(val,__mem_isa(addr))
-#define isa_memset_io(a,b,c) _memset_io(__mem_isa(a),(b),(c))
-#define isa_memcpy_fromio(a,b,c) _memcpy_fromio((a),__mem_isa(b),(c))
-#define isa_memcpy_toio(a,b,c) _memcpy_toio(__mem_isa((a)),(b),(c))
-
-#define isa_eth_io_copy_and_sum(a,b,c,d) \
- eth_copy_and_sum((a),__mem_isa(b),(c),(d))
-
-static inline int
-isa_check_signature(unsigned long io_addr, const unsigned char *signature,
- int length)
-{
- int retval = 0;
- do {
- if (isa_readb(io_addr) != *signature)
- goto out;
- io_addr++;
- signature++;
- length--;
- } while (length);
- retval = 1;
-out:
- return retval;
-}
-
-#else /* __mem_isa */
-
-#define isa_readb(addr) (__readwrite_bug("isa_readb"),0)
-#define isa_readw(addr) (__readwrite_bug("isa_readw"),0)
-#define isa_readl(addr) (__readwrite_bug("isa_readl"),0)
-#define isa_writeb(val,addr) __readwrite_bug("isa_writeb")
-#define isa_writew(val,addr) __readwrite_bug("isa_writew")
-#define isa_writel(val,addr) __readwrite_bug("isa_writel")
-#define isa_memset_io(a,b,c) __readwrite_bug("isa_memset_io")
-#define isa_memcpy_fromio(a,b,c) __readwrite_bug("isa_memcpy_fromio")
-#define isa_memcpy_toio(a,b,c) __readwrite_bug("isa_memcpy_toio")
-
-#define isa_eth_io_copy_and_sum(a,b,c,d) \
- __readwrite_bug("isa_eth_io_copy_and_sum")
-
-#define isa_check_signature(io,sig,len) (0)
-
-#endif /* __mem_isa */
-#endif /* __KERNEL__ */
-#endif /* __ASM_M68K_IO_H */
diff --git a/arch/m68k/include/asm/mach-types.h b/arch/m68k/include/asm/mach-types.h
deleted file mode 100644
index d221fcc892..0000000000
--- a/arch/m68k/include/asm/mach-types.h
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * This was automagically generated from arch/m68k/tools/mach-types!
- * Do NOT edit
- */
-
-#ifndef __ASM_M68K_MACH_TYPE_H
-#define __ASM_M68K_MACH_TYPE_H
-
-#ifndef __ASSEMBLY__
-/* The type of machine we're running on */
-extern unsigned int __machine_arch_type;
-#endif
-
-/* see arch/m68k/kernel/arch.c for a description of these */
-#define MACH_TYPE_GENERIC 0
-#define MACH_TYPE_MCF54xx 1
-#define MACH_TYPE_MCF5445x 2
-
-#ifdef CONFIG_ARCH_MCF54xx
-# ifdef machine_arch_type
-# undef machine_arch_type
-# define machine_arch_type __machine_arch_type
-# else
-# define machine_arch_type MACH_TYPE_MCF54xx
-# endif
-# define machine_is_mcf54xx() (machine_arch_type == MACH_TYPE_MCF54xx)
-#else
-# define machine_is_mcf54xx() (0)
-#endif
-
-#ifdef CONFIG_ARCH_MCF5445x
-# ifdef machine_arch_type
-# undef machine_arch_type
-# define machine_arch_type __machine_arch_type
-# else
-# define machine_arch_type MACH_TYPE_MCF5445x
-# endif
-# define machine_is_mcf5445x() (machine_arch_type == MACH_TYPE_MCF5445x)
-#else
-# define machine_is_mcf5445x() (0)
-#endif
-
-
-#ifndef machine_arch_type
-#define machine_arch_type __machine_arch_type
-#endif
-
-#endif
diff --git a/arch/m68k/include/asm/memory.h b/arch/m68k/include/asm/memory.h
deleted file mode 100644
index 006ea3c68e..0000000000
--- a/arch/m68k/include/asm/memory.h
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Note: this file should not be included by non-asm/.h files
- */
-#ifndef __ASM_M68K_MEMORY_H
-#define __ASM_M68K_MEMORY_H
-
-
-#endif /* __ASM_M68K_MEMORY_H */
diff --git a/arch/m68k/include/asm/module.h b/arch/m68k/include/asm/module.h
deleted file mode 100644
index f04d794572..0000000000
--- a/arch/m68k/include/asm/module.h
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Defines for the ELF module loader
- */
-#ifndef _ASM_M68K_MODULE_H
-#define _ASM_M68K_MODULE_H
-
-struct mod_arch_specific
-{
- int foo;
-};
-
-#define Elf_Shdr Elf32_Shdr
-#define Elf_Sym Elf32_Sym
-#define Elf_Ehdr Elf32_Ehdr
-
-#endif /* _ASM_M68K_MODULE_H */
diff --git a/arch/m68k/include/asm/posix_types.h b/arch/m68k/include/asm/posix_types.h
deleted file mode 100644
index d83afe94a2..0000000000
--- a/arch/m68k/include/asm/posix_types.h
+++ /dev/null
@@ -1,86 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * This file is generally used by user-level software, so you need to
- * be a little careful about namespace pollution etc. Also, we cannot
- * assume GCC is being used.
- */
-#ifndef __ARCH_M68K_POSIX_TYPES_H
-#define __ARCH_M68K_POSIX_TYPES_H
-
-
-typedef unsigned long __kernel_ino_t;
-typedef unsigned short __kernel_mode_t;
-typedef unsigned short __kernel_nlink_t;
-typedef long __kernel_off_t;
-typedef int __kernel_pid_t;
-typedef unsigned short __kernel_ipc_pid_t;
-typedef unsigned short __kernel_uid_t;
-typedef unsigned short __kernel_gid_t;
-typedef unsigned int __kernel_size_t;
-typedef int __kernel_ssize_t;
-typedef int __kernel_ptrdiff_t;
-typedef long __kernel_time_t;
-typedef long __kernel_suseconds_t;
-typedef long __kernel_clock_t;
-typedef int __kernel_daddr_t;
-typedef char * __kernel_caddr_t;
-typedef unsigned short __kernel_uid16_t;
-typedef unsigned short __kernel_gid16_t;
-typedef unsigned int __kernel_uid32_t;
-typedef unsigned int __kernel_gid32_t;
-
-typedef unsigned short __kernel_old_uid_t;
-typedef unsigned short __kernel_old_gid_t;
-
-#ifdef __GNUC__
-typedef long long __kernel_loff_t;
-#endif
-
-typedef struct {
-#if defined(__KERNEL__) || defined(__USE_ALL)
- int val[2];
-#else /* !defined(__KERNEL__) && !defined(__USE_ALL) */
- int __val[2];
-#endif /* !defined(__KERNEL__) && !defined(__USE_ALL) */
-} __kernel_fsid_t;
-
-#if defined(__KERNEL__) || !defined(__GLIBC__) || (__GLIBC__ < 2)
-
-#undef __FD_SET
-#define __FD_SET(fd, fdsetp) \
- (((fd_set *)fdsetp)->fds_bits[fd >> 5] |= (1<<(fd & 31)))
-
-#undef __FD_CLR
-#define __FD_CLR(fd, fdsetp) \
- (((fd_set *)fdsetp)->fds_bits[fd >> 5] &= ~(1<<(fd & 31)))
-
-#undef __FD_ISSET
-#define __FD_ISSET(fd, fdsetp) \
- ((((fd_set *)fdsetp)->fds_bits[fd >> 5] & (1<<(fd & 31))) != 0)
-
-#undef __FD_ZERO
-#define __FD_ZERO(fdsetp) \
- (memset (fdsetp, 0, sizeof (*(fd_set *)fdsetp)))
-
-#endif
-
-#endif
diff --git a/arch/m68k/include/asm/processor.h b/arch/m68k/include/asm/processor.h
deleted file mode 100644
index b0f82d084a..0000000000
--- a/arch/m68k/include/asm/processor.h
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * General processor specific definitions
- */
-#ifndef __ASM_M68K_PROCESSOR_H
-#define __ASM_M68K_PROCESSOR_H
-
-/*
- * Default implementation of macro that returns current
- * instruction pointer ("program counter").
- */
-#define current_text_addr() ({ __label__ _l; _l: &&_l;})
-
-static inline unsigned long rdusp(void)
-{
- unsigned long usp;
-
- __asm__ __volatile__("movel %/usp,%0" : "=a" (usp));
- return usp;
-}
-
-static inline void wrusp(unsigned long usp)
-{
- __asm__ __volatile__("movel %0,%/usp" : : "a" (usp));
-}
-
-#endif /* __ASM_M68K_PROCESSOR_H */
diff --git a/arch/m68k/include/asm/ptrace.h b/arch/m68k/include/asm/ptrace.h
deleted file mode 100644
index 8f3d39aea1..0000000000
--- a/arch/m68k/include/asm/ptrace.h
+++ /dev/null
@@ -1,55 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Remains of the pthread stuff...
- * @todo Rework these headers....
- */
-#ifndef __ASM_M68K_PTRACE_H
-#define __ASM_M68K_PTRACE_H
-
-#define PTRACE_GETREGS 12
-#define PTRACE_SETREGS 13
-#define PTRACE_GETFPREGS 14
-#define PTRACE_SETFPREGS 15
-
-#define PTRACE_SETOPTIONS 21
-
-
-#include <proc/ptrace.h>
-
-#ifndef __ASSEMBLY__
-
-#ifndef PS_S
-#define PS_S (0x2000)
-#define PS_M (0x1000)
-#endif
-
-//#define user_mode(regs) (!((regs)->sr & PS_S))
-#define instruction_pointer(regs) ((regs)->M68K_pc)
-#define profile_pc(regs) instruction_pointer(regs)
-
-#ifdef __KERNEL__
-extern void show_regs(struct pt_regs *);
-#endif
-
-#endif /* __ASSEMBLY__ */
-
-#endif
diff --git a/arch/m68k/include/asm/setup.h b/arch/m68k/include/asm/setup.h
deleted file mode 100644
index ee0bde8b79..0000000000
--- a/arch/m68k/include/asm/setup.h
+++ /dev/null
@@ -1,412 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Arch dependant barebox defines about linux mach types
- */
-#ifndef _M68K_SETUP_H
-#define _M68K_SETUP_H
-
-#include <config.h>
-
-
-/*
- * Linux/m68k Architectures
- */
-
-#define MACH_AMIGA 1
-#define MACH_ATARI 2
-#define MACH_MAC 3
-#define MACH_APOLLO 4
-#define MACH_SUN3 5
-#define MACH_MVME147 6
-#define MACH_MVME16x 7
-#define MACH_BVME6000 8
-#define MACH_HP300 9
-#define MACH_Q40 10
-#define MACH_SUN3X 11
- /* ColdFire boards */
-#define MACH_FIRE_ENGINE 12
-
-#ifdef __KERNEL__
-
-#ifndef __ASSEMBLY__
-extern unsigned long m68k_machtype;
-#endif /* !__ASSEMBLY__ */
-
-#if !defined(CONFIG_AMIGA)
-# define MACH_IS_AMIGA (0)
-#elif defined(CONFIG_ATARI) || defined(CONFIG_MAC) || defined(CONFIG_APOLLO) \
- || defined(CONFIG_MVME16x) || defined(CONFIG_BVME6000) \
- || defined(CONFIG_HP300) || defined(CONFIG_Q40) \
- || defined(CONFIG_SUN3X) || defined(CONFIG_MVME147)
-# define MACH_IS_AMIGA (m68k_machtype == MACH_AMIGA)
-#else
-# define MACH_AMIGA_ONLY
-# define MACH_IS_AMIGA (1)
-# define MACH_TYPE (MACH_AMIGA)
-#endif
-
-#if !defined(CONFIG_ATARI)
-# define MACH_IS_ATARI (0)
-#elif defined(CONFIG_AMIGA) || defined(CONFIG_MAC) || defined(CONFIG_APOLLO) \
- || defined(CONFIG_MVME16x) || defined(CONFIG_BVME6000) \
- || defined(CONFIG_HP300) || defined(CONFIG_Q40) \
- || defined(CONFIG_SUN3X) || defined(CONFIG_MVME147)
-# define MACH_IS_ATARI (m68k_machtype == MACH_ATARI)
-#else
-# define MACH_ATARI_ONLY
-# define MACH_IS_ATARI (1)
-# define MACH_TYPE (MACH_ATARI)
-#endif
-
-#if !defined(CONFIG_MAC)
-# define MACH_IS_MAC (0)
-#elif defined(CONFIG_AMIGA) || defined(CONFIG_ATARI) || defined(CONFIG_APOLLO) \
- || defined(CONFIG_MVME16x) || defined(CONFIG_BVME6000) \
- || defined(CONFIG_HP300) || defined(CONFIG_Q40) \
- || defined(CONFIG_SUN3X) || defined(CONFIG_MVME147)
-# define MACH_IS_MAC (m68k_machtype == MACH_MAC)
-#else
-# define MACH_MAC_ONLY
-# define MACH_IS_MAC (1)
-# define MACH_TYPE (MACH_MAC)
-#endif
-
-#if defined(CONFIG_SUN3)
-#define MACH_IS_SUN3 (1)
-#define MACH_SUN3_ONLY (1)
-#define MACH_TYPE (MACH_SUN3)
-#else
-#define MACH_IS_SUN3 (0)
-#endif
-
-#if !defined (CONFIG_APOLLO)
-# define MACH_IS_APOLLO (0)
-#elif defined(CONFIG_AMIGA) || defined(CONFIG_MAC) || defined(CONFIG_ATARI) \
- || defined(CONFIG_MVME16x) || defined(CONFIG_BVME6000) \
- || defined(CONFIG_HP300) || defined(CONFIG_Q40) \
- || defined(CONFIG_SUN3X) || defined(CONFIG_MVME147)
-# define MACH_IS_APOLLO (m68k_machtype == MACH_APOLLO)
-#else
-# define MACH_APOLLO_ONLY
-# define MACH_IS_APOLLO (1)
-# define MACH_TYPE (MACH_APOLLO)
-#endif
-
-#if !defined (CONFIG_MVME147)
-# define MACH_IS_MVME147 (0)
-#elif defined(CONFIG_AMIGA) || defined(CONFIG_MAC) || defined(CONFIG_ATARI) \
- || defined(CONFIG_APOLLO) || defined(CONFIG_BVME6000) \
- || defined(CONFIG_HP300) || defined(CONFIG_Q40) \
- || defined(CONFIG_SUN3X) || defined(CONFIG_MVME16x)
-# define MACH_IS_MVME147 (m68k_machtype == MACH_MVME147)
-#else
-# define MACH_MVME147_ONLY
-# define MACH_IS_MVME147 (1)
-# define MACH_TYPE (MACH_MVME147)
-#endif
-
-#if !defined (CONFIG_MVME16x)
-# define MACH_IS_MVME16x (0)
-#elif defined(CONFIG_AMIGA) || defined(CONFIG_MAC) || defined(CONFIG_ATARI) \
- || defined(CONFIG_APOLLO) || defined(CONFIG_BVME6000) \
- || defined(CONFIG_HP300) || defined(CONFIG_Q40) \
- || defined(CONFIG_SUN3X) || defined(CONFIG_MVME147)
-# define MACH_IS_MVME16x (m68k_machtype == MACH_MVME16x)
-#else
-# define MACH_MVME16x_ONLY
-# define MACH_IS_MVME16x (1)
-# define MACH_TYPE (MACH_MVME16x)
-#endif
-
-#if !defined (CONFIG_BVME6000)
-# define MACH_IS_BVME6000 (0)
-#elif defined(CONFIG_AMIGA) || defined(CONFIG_MAC) || defined(CONFIG_ATARI) \
- || defined(CONFIG_APOLLO) || defined(CONFIG_MVME16x) \
- || defined(CONFIG_HP300) || defined(CONFIG_Q40) \
- || defined(CONFIG_SUN3X) || defined(CONFIG_MVME147)
-# define MACH_IS_BVME6000 (m68k_machtype == MACH_BVME6000)
-#else
-# define MACH_BVME6000_ONLY
-# define MACH_IS_BVME6000 (1)
-# define MACH_TYPE (MACH_BVME6000)
-#endif
-
-#if !defined (CONFIG_HP300)
-# define MACH_IS_HP300 (0)
-#elif defined(CONFIG_AMIGA) || defined(CONFIG_MAC) || defined(CONFIG_ATARI) \
- || defined(CONFIG_APOLLO) || defined(CONFIG_MVME16x) \
- || defined(CONFIG_BVME6000) || defined(CONFIG_Q40) \
- || defined(CONFIG_SUN3X) || defined(CONFIG_MVME147)
-# define MACH_IS_HP300 (m68k_machtype == MACH_HP300)
-#else
-# define MACH_HP300_ONLY
-# define MACH_IS_HP300 (1)
-# define MACH_TYPE (MACH_HP300)
-#endif
-
-#if !defined (CONFIG_Q40)
-# define MACH_IS_Q40 (0)
-#elif defined(CONFIG_AMIGA) || defined(CONFIG_MAC) || defined(CONFIG_ATARI) \
- || defined(CONFIG_APOLLO) || defined(CONFIG_MVME16x) \
- || defined(CONFIG_BVME6000) || defined(CONFIG_HP300) \
- || defined(CONFIG_SUN3X) || defined(CONFIG_MVME147)
-# define MACH_IS_Q40 (m68k_machtype == MACH_Q40)
-#else
-# define MACH_Q40_ONLY
-# define MACH_IS_Q40 (1)
-# define MACH_TYPE (MACH_Q40)
-#endif
-
-#if !defined (CONFIG_SUN3X)
-# define MACH_IS_SUN3X (0)
-#elif defined(CONFIG_AMIGA) || defined(CONFIG_MAC) || defined(CONFIG_ATARI) \
- || defined(CONFIG_APOLLO) || defined(CONFIG_MVME16x) \
- || defined(CONFIG_BVME6000) || defined(CONFIG_HP300) \
- || defined(CONFIG_Q40) || defined(CONFIG_MVME147)
-# define MACH_IS_SUN3X (m68k_machtype == MACH_SUN3X)
-#else
-# define CONFIG_SUN3X_ONLY
-# define MACH_IS_SUN3X (1)
-# define MACH_TYPE (MACH_SUN3X)
-#endif
-
-/*
- * We only support one ColdFire board for the moment, so we don't do the
- * kind of complicated configuration this file does for the other 68k CPUs. --NL
- */
-#if !defined (CONFIG_COLDFIRE)
-# define MACH_IS_COLDFIRE (0)
-#else
-# define CONFIG_COLDFIRE_ONLY
-# define MACH_IS_COLDFIRE (1)
-# define MACH_TYPE (MACH_COLDFIRE)
-#endif
-
-#ifndef MACH_TYPE
-# define MACH_TYPE (m68k_machtype)
-#endif
-
-#endif /* __KERNEL__ */
-
-
- /*
- * CPU, FPU and MMU types
- *
- * Note: we may rely on the following equalities:
- *
- * CPU_68020 == MMU_68851
- * CPU_68030 == MMU_68030
- * CPU_68040 == FPU_68040 == MMU_68040
- * CPU_68060 == FPU_68060 == MMU_68060
- */
-
-#define CPUB_68020 0
-#define CPUB_68030 1
-#define CPUB_68040 2
-#define CPUB_68060 3
-#define CPUB_CFV4E 4
-
-#define CPU_68020 (1<<CPUB_68020)
-#define CPU_68030 (1<<CPUB_68030)
-#define CPU_68040 (1<<CPUB_68040)
-#define CPU_68060 (1<<CPUB_68060)
-#define CPU_CFV4E (1<<CPUB_CFV4E)
-
-#define FPUB_68881 0
-#define FPUB_68882 1
-#define FPUB_68040 2 /* Internal FPU */
-#define FPUB_68060 3 /* Internal FPU */
-#define FPUB_SUNFPA 4 /* Sun-3 FPA */
-#define FPUB_CFV4E 5
-
-#define FPU_68881 (1<<FPUB_68881)
-#define FPU_68882 (1<<FPUB_68882)
-#define FPU_68040 (1<<FPUB_68040)
-#define FPU_68060 (1<<FPUB_68060)
-#define FPU_SUNFPA (1<<FPUB_SUNFPA)
-#define FPU_CFV4E (1<<FPUB_CFV4E)
-
-#define MMUB_68851 0
-#define MMUB_68030 1 /* Internal MMU */
-#define MMUB_68040 2 /* Internal MMU */
-#define MMUB_68060 3 /* Internal MMU */
-#define MMUB_APOLLO 4 /* Custom Apollo */
-#define MMUB_SUN3 5 /* Custom Sun-3 */
-#define MMUB_CFV4E 6
-
-#define MMU_68851 (1<<MMUB_68851)
-#define MMU_68030 (1<<MMUB_68030)
-#define MMU_68040 (1<<MMUB_68040)
-#define MMU_68060 (1<<MMUB_68060)
-#define MMU_SUN3 (1<<MMUB_SUN3)
-#define MMU_APOLLO (1<<MMUB_APOLLO)
-#define MMU_CFV4E (1<<MMUB_CFV4E)
-
-#ifdef __KERNEL__
-
-#ifndef __ASSEMBLY__
-extern unsigned long m68k_cputype;
-extern unsigned long m68k_fputype;
-extern unsigned long m68k_mmutype; /* Not really used yet */
-#ifdef CONFIG_VME
-extern unsigned long vme_brdtype;
-#endif
-
- /*
- * m68k_is040or060 is != 0 for a '040 or higher;
- * used numbers are 4 for 68040 and 6 for 68060.
- */
-
-extern int m68k_is040or060;
-#endif /* !__ASSEMBLY__ */
-
-#if !defined(CONFIG_M68020)
-# define CPU_IS_020 (0)
-# define MMU_IS_851 (0)
-# define MMU_IS_SUN3 (0)
-#elif defined(CONFIG_M68030) || defined(CONFIG_M68040) || defined(CONFIG_M68060)
-# define CPU_IS_020 (m68k_cputype & CPU_68020)
-# define MMU_IS_851 (m68k_mmutype & MMU_68851)
-# define MMU_IS_SUN3 (0) /* Sun3 not supported with other CPU enabled */
-#else
-# define CPU_M68020_ONLY
-# define CPU_IS_020 (1)
-#ifdef MACH_SUN3_ONLY
-# define MMU_IS_SUN3 (1)
-# define MMU_IS_851 (0)
-#else
-# define MMU_IS_SUN3 (0)
-# define MMU_IS_851 (1)
-#endif
-#endif
-
-#if !defined(CONFIG_M68030)
-# define CPU_IS_030 (0)
-# define MMU_IS_030 (0)
-#elif defined(CONFIG_M68020) || defined(CONFIG_M68040) || defined(CONFIG_M68060)
-# define CPU_IS_030 (m68k_cputype & CPU_68030)
-# define MMU_IS_030 (m68k_mmutype & MMU_68030)
-#else
-# define CPU_M68030_ONLY
-# define CPU_IS_030 (1)
-# define MMU_IS_030 (1)
-#endif
-
-#if !defined(CONFIG_M68040)
-# define CPU_IS_040 (0)
-# define MMU_IS_040 (0)
-#elif defined(CONFIG_M68020) || defined(CONFIG_M68030) || defined(CONFIG_M68060)
-# define CPU_IS_040 (m68k_cputype & CPU_68040)
-# define MMU_IS_040 (m68k_mmutype & MMU_68040)
-#else
-# define CPU_M68040_ONLY
-# define CPU_IS_040 (1)
-# define MMU_IS_040 (1)
-#endif
-
-#if !defined(CONFIG_M68060)
-# define CPU_IS_060 (0)
-# define MMU_IS_060 (0)
-#elif defined(CONFIG_M68020) || defined(CONFIG_M68030) || defined(CONFIG_M68040)
-# define CPU_IS_060 (m68k_cputype & CPU_68060)
-# define MMU_IS_060 (m68k_mmutype & MMU_68060)
-#else
-# define CPU_M68060_ONLY
-# define CPU_IS_060 (1)
-# define MMU_IS_060 (1)
-#endif
-
-#if !defined(CONFIG_M68020) && !defined(CONFIG_M68030)
-# define CPU_IS_020_OR_030 (0)
-#else
-# define CPU_M68020_OR_M68030
-# if defined(CONFIG_M68040) || defined(CONFIG_M68060)
-# define CPU_IS_020_OR_030 (!m68k_is040or060)
-# else
-# define CPU_M68020_OR_M68030_ONLY
-# define CPU_IS_020_OR_030 (1)
-# endif
-#endif
-
-#if !defined(CONFIG_M68040) && !defined(CONFIG_M68060)
-# define CPU_IS_040_OR_060 (0)
-#else
-# define CPU_M68040_OR_M68060
-# if defined(CONFIG_M68020) || defined(CONFIG_M68030)
-# define CPU_IS_040_OR_060 (m68k_is040or060)
-# else
-# define CPU_M68040_OR_M68060_ONLY
-# define CPU_IS_040_OR_060 (1)
-# endif
-#endif
-
-#if !defined(CONFIG_CFV4E)
-# define CPU_IS_COLDFIRE (0)
-#else
-# define CPU_IS_COLDFIRE (1)
-# define CPU_IS_CFV4E (1)
-# define MMU_IS_CFV4E (1)
-#endif
-
-#define CPU_TYPE (m68k_cputype)
-
-#ifdef CONFIG_M68KFPU_EMU
-# ifdef CONFIG_M68KFPU_EMU_ONLY
-# define FPU_IS_EMU (1)
-# else
-# define FPU_IS_EMU (!m68k_fputype)
-# endif
-#else
-# define FPU_IS_EMU (0)
-#endif
-
-
-/*
- * Miscellaneous
- */
-
-#define NUM_MEMINFO 4
-#define CL_SIZE 256
-#define COMMAND_LINE_SIZE CL_SIZE
-
-#ifndef __ASSEMBLY__
-struct mem_info {
- unsigned long addr; /* physical address of memory chunk */
- unsigned long size; /* length of memory chunk (in bytes) */
-};
-extern int m68k_num_memory; /* # of memory blocks found (and used) */
-extern int m68k_realnum_memory; /* real # of memory blocks found */
-extern struct mem_info m68k_memory[NUM_MEMINFO];/* memory description */
-
-#endif
-
-#ifdef CONFIG_COLDFIRE
-#define QCHIP_RESTORE_DIRECTIVE ".chip 547x"
-#define CHIP_RESTORE_DIRECTIVE .chip 547x
-#else
-#define QCHIP_RESTORE_DIRECTIVE ".chip 68k"
-#define CHIP_RESTORE_DIRECTIVE .chip 68k
-#endif
-
-#endif /* __KERNEL__ */
-
-#endif /* _M68K_SETUP_H */
diff --git a/arch/m68k/include/asm/string.h b/arch/m68k/include/asm/string.h
deleted file mode 100644
index 19e3de45b6..0000000000
--- a/arch/m68k/include/asm/string.h
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Arch dependant configuration of std libc string and memory functions.
- */
-#ifndef __ASM_M68K_STRING_H
-#define __ASM_M68K_STRING_H
-
-/*
- * We don't do inline string functions, since the
- * optimised inline asm versions are not small.
- */
-
-#endif
diff --git a/arch/m68k/include/asm/types.h b/arch/m68k/include/asm/types.h
deleted file mode 100644
index 90e8bd7f75..0000000000
--- a/arch/m68k/include/asm/types.h
+++ /dev/null
@@ -1,82 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Arch dependant types definitions
- */
-#ifndef __ASM_M68K_TYPES_H
-#define __ASM_M68K_TYPES_H
-
-#ifndef __ASSEMBLY__
-
-typedef unsigned short umode_t;
-
-/*
- * __xx is ok: it doesn't pollute the POSIX namespace. Use these in the
- * header files exported to user space
- */
-
-typedef __signed__ char __s8;
-typedef unsigned char __u8;
-
-typedef __signed__ short __s16;
-typedef unsigned short __u16;
-
-typedef __signed__ int __s32;
-typedef unsigned int __u32;
-
-#if defined(__GNUC__) && !defined(__STRICT_ANSI__)
-typedef __signed__ long long __s64;
-typedef unsigned long long __u64;
-#endif
-
-#endif /* __ASSEMBLY__ */
-
-/*
- * These aren't exported outside the kernel to avoid name space clashes
- */
-#ifdef __KERNEL__
-
-#define BITS_PER_LONG 32
-
-#ifndef __ASSEMBLY__
-
-typedef signed char s8;
-typedef unsigned char u8;
-
-typedef signed short s16;
-typedef unsigned short u16;
-
-typedef signed int s32;
-typedef unsigned int u32;
-
-typedef signed long long s64;
-typedef unsigned long long u64;
-
-/* Dma addresses are 32-bits wide. */
-
-typedef u32 dma_addr_t;
-typedef u32 dma64_addr_t;
-
-#endif /* __ASSEMBLY__ */
-
-#endif /* __KERNEL__ */
-
-#endif
diff --git a/arch/m68k/lib/Makefile b/arch/m68k/lib/Makefile
deleted file mode 100644
index 09cfb29848..0000000000
--- a/arch/m68k/lib/Makefile
+++ /dev/null
@@ -1,31 +0,0 @@
-#
-# (C) Copyright 2007 Carsten Schlote <schlote@vahanus.net>
-# See file CREDITS for list of people who contributed to this project.
-#
-# This file is part of barebox.
-#
-# barebox 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 3 of the License, or
-# (at your option) any later version.
-#
-# barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
-#
-
-#
-# Architecture dependant stubs and callbacks
-#
-
-obj-y += m68k-meminit.o
-
-obj-$(CONFIG_CMD_BOOTM) += m68k-linuxboot.o
-
-obj-$(CONFIG_MODULES) += m68k-module.o
-
-extra-$(CONFIG_GENERIC_LINKER_SCRIPT) += barebox.lds
diff --git a/arch/m68k/lib/barebox.lds.S b/arch/m68k/lib/barebox.lds.S
deleted file mode 100644
index fb6673deec..0000000000
--- a/arch/m68k/lib/barebox.lds.S
+++ /dev/null
@@ -1,92 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Generic Linker file for M68k targets
- */
-#include <asm-generic/barebox.lds.h>
-
-OUTPUT_FORMAT("elf32-m68k", "elf32-m68k",
- "elf32-m68k")
-OUTPUT_ARCH(m68k)
-ENTRY(_start)
-SECTIONS
-{
- . = TEXT_BASE;
- . = ALIGN(4);
-
- /* Start of vector, text and rodata section */
- _stext = .;
- _text = .;
-
- /* M68k/CF style vector table */
- .vectors :
- {
- *(.vectors)
- }
-
- .text :
- {
- *(.text .stub .text.*)
- } =0x4e754e75
-
- . = ALIGN(4);
- .rodata :
- {
- *(.rodata .rodata.*)
- } =0xdeadbeef
-
- . = ALIGN(4);
- __barebox_cmd_start = .;
- .barebox_cmd : { BAREBOX_CMDS }
- __barebox_cmd_end = .;
-
- __barebox_initcalls_start = .;
- .barebox_initcalls : { INITCALLS }
- __barebox_initcalls_end = .;
-
- __usymtab_start = .;
- __usymtab : { BAREBOX_SYMS }
- __usymtab_end = .;
-
- /* End of text and rodata section */
- . = ALIGN(4);
- _etext = .;
-
- . = ALIGN(4);
- .got : { *(.got) }
- . = ALIGN(4);
-
- . = ALIGN(4);
- __early_init_data_begin = .;
- .early_init_data : { *(.early_init_data) }
- __early_init_data_end = .;
-
- .data : { *(.data .data.*) }
-
- . = ALIGN(4);
- __bss_start = .;
- .bss (NOLOAD) : { *(.bss .bass.*) }
- __bss_end =.;
- _end = .;
-
- . = ALIGN(4);
- _barebox_heap_start = .;
-}
diff --git a/arch/m68k/lib/m68k-linuxboot.c b/arch/m68k/lib/m68k-linuxboot.c
deleted file mode 100644
index 144d5a30b1..0000000000
--- a/arch/m68k/lib/m68k-linuxboot.c
+++ /dev/null
@@ -1,177 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * @brief Linux boot preparation code.
- *
- * This file is responsible to start a linux kernel on
- * Coldfire targets.
- *
- * @note Only Colilo mode supported yet.
- */
-#include <common.h>
-#include <command.h>
-#include <driver.h>
-#include <image.h>
-#include <zlib.h>
-#include <init.h>
-
-#include <asm/byteorder.h>
-#include <asm/setup.h>
-#include <environment.h>
-#include <boot.h>
-#include <asm/barebox-m68k.h>
-#include <asm/bootinfo.h>
-
-
-static int m68k_architecture = MACH_TYPE_GENERIC;
-
-
-/*
- * Setup M68k/Coldfire bootrecord info
- */
-#if defined (CONFIG_SETUP_MEMORY_TAGS) || \
- defined (CONFIG_CMDLINE_TAG) || \
- defined (CONFIG_INITRD_TAG)
-
-
-static void setup_boot_record(char* start_boot_rec, const char* command_line)
-{
- struct bi_record* record;
-
- *start_boot_rec++ = 'C';
- *start_boot_rec++ = 'o';
- *start_boot_rec++ = 'L';
- *start_boot_rec++ = 'i';
- *start_boot_rec++ = 'L';
- *start_boot_rec++ = 'o';
-
- record = (struct bi_record*) start_boot_rec;
-
- /* specify memory layout */
-#ifdef CONFIG_SETUP_MEMORY_TAGS
- record->tag = BI_MEMCHUNK;
- record->data[0] = 0;
- record->data[1] = 64 * 1024 * 1024; // TODO: to be changed for different boards
- record->size = sizeof (record->tag) + sizeof (record->size)
- + sizeof (record->data[0]) + sizeof (record->data[0]);
- record = (struct bi_record *) ((void *) record + record->size);
-#endif
-
- /* add a kernel command line */
-#ifdef CONFIG_CMDLINE_TAG
- record->tag = BI_COMMAND_LINE;
- strcpy ((char *) &record->data, command_line);
- record->size = sizeof (record->tag) + sizeof (record->size)
- + max (sizeof (record->data[0]), strlen (command_line)+1);
- record = (struct bi_record *) ((void *) record + record->size);
-#endif
-
- /* Add reference to initrd */
-#ifdef CONFIG_INITRD_TAG
-#endif
-
- /* Mark end of tags */
- record->tag = 0;
- record->data[0] = 0;
- record->data[1] = 0;
- record->size = sizeof(record->tag) + sizeof (record->size)
- + sizeof (record->data[0]) + sizeof (record->data[0]);
-}
-
-#else
-#define setup_boot_record(start_boot_rec,command_line) while (0) { }
-
-#endif /* CONFIG_SETUP_MEMORY_TAGS || CONFIG_CMDLINE_TAG || CONFIG_INITRD_TAG */
-
-
-static int do_bootm_linux(struct image_data *data)
-{
- image_header_t *os_header = &data->os->header;
- void (*theKernel)(int zero, int arch, uint params);
- const char *commandline = getenv ("bootargs");
- uint32_t loadaddr,loadsize;
-
- if (image_get_type(os_header) == IH_TYPE_MULTI) {
- printf("Multifile images not handled at the moment\n");
- return -1;
- }
-
- printf("commandline: %s\n", commandline);
-
- theKernel = (void (*)(int,int,uint))image_get_ep(os_header);
-
- debug ("## Transferring control to Linux (at address %08lx) ...\n",
- (ulong) theKernel);
-
- loadaddr = (uint32_t)image_get_load(os_header);
- loadsize = (uint32_t)image_get_size(os_header);
- setup_boot_record( (char*)(loadaddr+loadsize),(char*)commandline);
-
- if (relocate_image(data->os, (void *)loadaddr))
- return -1;
-
- /* we assume that the kernel is in place */
- printf ("\nStarting kernel image at 0x%08x size 0x%08x eentry 0x%08x\n\n",
- loadaddr, loadsize, (ulong) theKernel);
-
- /* Bring board into inactive post-reset state again */
- cleanup_before_linux ();
-
- /* Jump to kernel entry point */
- theKernel (0, m68k_architecture, 0xdeadbeaf);
-
- enable_interrupts();
- printf("Error: Loaded kernel returned. Probably it couldn't\n"
- "find it's bootrecord.\n");
- return -1;
-}
-
-/*
- * Register handler for m68k Kernel Images
- */
-static int image_handle_cmdline_parse(struct image_data *data, int opt, char *optarg)
-{
- switch (opt)
- {
- case 'a':
- m68k_architecture = simple_strtoul(optarg, NULL, 0);
- return 0;
- default:
- return 1;
- }
-}
-
-static struct image_handler handler =
-{
- .cmdline_options = "a:",
- .cmdline_parse = image_handle_cmdline_parse,
- .help_string = " -a <arch> use architecture number <arch>",
-
- .bootm = do_bootm_linux,
- .image_type = IH_OS_LINUX,
-};
-
-static int m68klinux_register_image_handler(void)
-{
- return register_image_handler(&handler);
-}
-
-late_initcall(m68klinux_register_image_handler);
diff --git a/arch/m68k/lib/m68k-meminit.c b/arch/m68k/lib/m68k-meminit.c
deleted file mode 100644
index 664ef509c5..0000000000
--- a/arch/m68k/lib/m68k-meminit.c
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Init for memory allocator on m68k/Coldfire
- */
-#include <common.h>
-#include <init.h>
-#include <mem_malloc.h>
-#include <asm/barebox-m68k.h>
-#include <reloc.h>
-#include <asm-generic/memory_layout.h>
-
-/** Initialize mem allocator on M68k/Coldfire
- */
-int m68k_mem_malloc_init(void)
-{
- /* Pass start and end address of managed memory */
-
- mem_malloc_init((void *)MALLOC_BASE,
- (void *)(MALLOC_BASE + MALLOC_SIZE));
-
- return 0;
-}
-
-core_initcall(m68k_mem_malloc_init);
diff --git a/arch/m68k/lib/m68k-module.c b/arch/m68k/lib/m68k-module.c
deleted file mode 100644
index 6a4a2bc1c2..0000000000
--- a/arch/m68k/lib/m68k-module.c
+++ /dev/null
@@ -1,110 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Moduleloader Subsystem
- *
- * These relocation stubs are taken from Linux 2.6.10 They are used by the
- * higher level ELF loader code to place ELF files to arbitrary addresses.
- */
-#include <common.h>
-#include <elf.h>
-#include <module.h>
-#include <errno.h>
-
-int apply_relocate(Elf32_Shdr *sechdrs,
- const char *strtab,
- unsigned int symindex,
- unsigned int relsec,
- struct module *me)
-{
- unsigned int i;
- Elf32_Rel *rel = (void *)sechdrs[relsec].sh_addr;
- Elf32_Sym *sym;
- uint32_t *location;
-
- DEBUGP("Applying relocate section %u to %u\n", relsec,
- sechdrs[relsec].sh_info);
- for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rel); i++) {
- /* This is where to make the change */
- location = (void *)sechdrs[sechdrs[relsec].sh_info].sh_addr
- + rel[i].r_offset;
- /* This is the symbol it is referring to. Note that all
- undefined symbols have been resolved. */
- sym = (Elf32_Sym *)sechdrs[symindex].sh_addr
- + ELF32_R_SYM(rel[i].r_info);
-
- switch (ELF32_R_TYPE(rel[i].r_info)) {
- case R_68K_32:
- /* We add the value into the location given */
- *location += sym->st_value;
- break;
- case R_68K_PC32:
- /* Add the value, subtract its postition */
- *location += sym->st_value - (uint32_t)location;
- break;
- default:
- printk(KERN_ERR "module %s: Unknown relocation: %u\n",
- me->name, ELF32_R_TYPE(rel[i].r_info));
- return -ENOEXEC;
- }
- }
- return 0;
-}
-
-int apply_relocate_add(Elf32_Shdr *sechdrs,
- const char *strtab,
- unsigned int symindex,
- unsigned int relsec,
- struct module *me)
-{
- unsigned int i;
- Elf32_Rela *rel = (void *)sechdrs[relsec].sh_addr;
- Elf32_Sym *sym;
- uint32_t *location;
-
- DEBUGP("Applying relocate_add section %u to %u\n", relsec,
- sechdrs[relsec].sh_info);
- for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rel); i++) {
- /* This is where to make the change */
- location = (void *)sechdrs[sechdrs[relsec].sh_info].sh_addr
- + rel[i].r_offset;
- /* This is the symbol it is referring to. Note that all
- undefined symbols have been resolved. */
- sym = (Elf32_Sym *)sechdrs[symindex].sh_addr
- + ELF32_R_SYM(rel[i].r_info);
-
- switch (ELF32_R_TYPE(rel[i].r_info)) {
- case R_68K_32:
- /* We add the value into the location given */
- *location = rel[i].r_addend + sym->st_value;
- break;
- case R_68K_PC32:
- /* Add the value, subtract its postition */
- *location = rel[i].r_addend + sym->st_value - (uint32_t)location;
- break;
- default:
- printk(KERN_ERR "module %s: Unknown relocation: %u\n",
- me->name, ELF32_R_TYPE(rel[i].r_info));
- return -ENOEXEC;
- }
- }
- return 0;
-}
diff --git a/arch/m68k/mach-mcfv4e.dox b/arch/m68k/mach-mcfv4e.dox
deleted file mode 100644
index c6dc8f6929..0000000000
--- a/arch/m68k/mach-mcfv4e.dox
+++ /dev/null
@@ -1,39 +0,0 @@
-/* This document is intended to provide the developer with information
- * how to integrate a new CPU (MACH) into this part of the barebox tree
- */
-
-/** @page dev_m68k_mach M68k/Coldfire based CPU (MACH) into the tree
-
-FIXME - fill in further info about Coldfire and so on. Check code
- for compliance with the specs given below - move code otherwise.
-
-@par What's happens when the reset signal is gone
-
-@note Code running immediately after reset runs at an address it is not linked
- to: "runtime address != link address". You should only use branches and
- do not refer to fixed data. This implies the use of assembler code only.
-
-The M68k CPU starts at lable \<reset\> in one of the corresponding start-*.S
-files. After some basic hardware setup it can call a function
-\<arch_init_lowlevel\> if not disabled. This call is intended to give all
-developers a chance to use a standard reset vector file, but also do some
-special things required only on their specific CPU.
-
-After handling some MMU, Stack or similiar issues, \<board_init_lowlevel\> can
-be called (if not disabled). This is a board specific function for SDRAM setup
-for example. As its board specific, your can do whatever you need to bring
-your board up. As stack is already set to internal core RAM, this routine can
-be C.
-
-@note: You are not allowed to call other code here, because we are not running
- at link address.
-
-When \<board_init_lowlevel\> returns it will be assumed that there is now
-working RAM that can be used for all further steps.
-
-Next step is relocation of barebox itself. It gets copied to the end of
-available RAM and the last assembly instruction is a jump to \<start_barebox\>.
-
-At this point of time: "runtime address == link address".
-
-*/
diff --git a/arch/m68k/mach-mcfv4e/Kconfig b/arch/m68k/mach-mcfv4e/Kconfig
deleted file mode 100644
index aaba27e5e8..0000000000
--- a/arch/m68k/mach-mcfv4e/Kconfig
+++ /dev/null
@@ -1,18 +0,0 @@
-
-menu "M68k/Coldfire V4E specific settings"
-
-config COPY_LOWMEM_VECTORS
- bool "Copy vectors to SDRAM address 0"
- default y
- help
- This copies the vector table to SDRAM address 0 (default address)
-
-config USE_LOWMEM_VECTORS
- bool "Use vectors at SDRAM address 0"
- default n
- depends on COPY_LOWMEM_VECTORS
- help
- This copies the vector table to SDRAM address 0 (default address) and
- also uses this vector location
-
-endmenu
diff --git a/arch/m68k/mach-mcfv4e/Makefile b/arch/m68k/mach-mcfv4e/Makefile
deleted file mode 100644
index f75834be54..0000000000
--- a/arch/m68k/mach-mcfv4e/Makefile
+++ /dev/null
@@ -1,19 +0,0 @@
-#
-# Generic code for Coldfire V4E targets (MCF547x/MCF548x)
-#
-obj-y += mcf_clocksource.o
-obj-y += mcf_reset_cpu.o
-
-#
-# FEC support
-#
-obj-y += multichannel_dma.o
-obj-y += dma_utils.o
-obj-y += fec.o
-obj-y += fecbd.o
-
-#
-# FreeScale MultiDMA Library
-#
-obj-y += mcdapi/
-obj-y += net/
diff --git a/arch/m68k/mach-mcfv4e/dma_utils.c b/arch/m68k/mach-mcfv4e/dma_utils.c
deleted file mode 100644
index adeefea3b1..0000000000
--- a/arch/m68k/mach-mcfv4e/dma_utils.c
+++ /dev/null
@@ -1,502 +0,0 @@
-/*
- * File: dma_utils.c
- * Purpose: General purpose utilities for the multi-channel DMA
- *
- * Notes: The methodology used in these utilities assumes that
- * no single initiator will be tied to more than one
- * task/channel
- */
-
-#include <common.h>
-#include <init.h>
-#include <linux/types.h>
-#include <mach/mcf54xx-regs.h>
-#include <proc/mcdapi/MCD_dma.h>
-
-#include <proc/dma_utils.h>
-
-/*
- * This global keeps track of which initiators have been
- * used of the available assignments. Initiators 0-15 are
- * hardwired. Initiators 16-31 are multiplexed and controlled
- * via the Initiatior Mux Control Registe (IMCR). The
- * assigned requestor is stored with the associated initiator
- * number.
- */
-static int8_t used_reqs[32] =
-{
- DMA_ALWAYS, DMA_DSPI_RX, DMA_DSPI_TX, DMA_DREQ0,
- DMA_PSC0_RX, DMA_PSC0_TX, DMA_USBEP0, DMA_USBEP1,
- DMA_USBEP2, DMA_USBEP3, DMA_PCI_TX, DMA_PCI_RX,
- DMA_PSC1_RX, DMA_PSC1_TX, DMA_I2C_RX, DMA_I2C_TX,
- 0, 0, 0, 0,
- 0, 0, 0, 0,
- 0, 0, 0, 0,
- 0, 0, 0, 0
-};
-
-/*
- * This global keeps track of which channels have been assigned
- * to tasks. This methology assumes that no single initiator
- * will be tied to more than one task/channel
- */
-typedef struct
-{
- int req;
- void (*handler)(void);
-} DMA_CHANNEL_STRUCT;
-
-static DMA_CHANNEL_STRUCT dma_channel[NCHANNELS] =
-{
- {-1,NULL}, {-1,NULL}, {-1,NULL}, {-1,NULL},
- {-1,NULL}, {-1,NULL}, {-1,NULL}, {-1,NULL},
- {-1,NULL}, {-1,NULL}, {-1,NULL}, {-1,NULL},
- {-1,NULL}, {-1,NULL}, {-1,NULL}, {-1,NULL}
-};
-
-/*
- * Enable all DMA interrupts
- *
- * Parameters:
- * pri Interrupt Priority
- * lvl Interrupt Level
- */
-void
-dma_irq_enable(uint8_t lvl, uint8_t pri)
-{
-//FIXME ASSERT(lvl > 0 && lvl < 8);
-//FIXME ASSERT(pri < 8);
-
- /* Setup the DMA ICR (#48) */
- MCF_INTC_ICR48 = 0
- | MCF_INTC_ICRn_IP(pri)
- | MCF_INTC_ICRn_IL(lvl);
-
- /* Unmask all task interrupts */
- MCF_DMA_DIMR = 0;
-
- /* Clear the interrupt pending register */
- MCF_DMA_DIPR = 0;
-
- /* Unmask the DMA interrupt in the interrupt controller */
- MCF_INTC_IMRH &= ~MCF_INTC_IMRH_INT_MASK48;
-}
-
-/*
- * Disable all DMA interrupts
- */
-void
-dma_irq_disable(void)
-{
- /* Mask all task interrupts */
- MCF_DMA_DIMR = (uint32_t)~0;
-
- /* Clear any pending task interrupts */
- MCF_DMA_DIPR = (uint32_t)~0;
-
- /* Mask the DMA interrupt in the interrupt controller */
- MCF_INTC_IMRH |= MCF_INTC_IMRH_INT_MASK48;
-}
-
-/*
- * Attempt to enable the provided Initiator in the Initiator
- * Mux Control Register
- *
- * Parameters:
- * initiator Initiator identifier
- *
- * Return Value:
- * 1 if unable to make the assignment
- * 0 successful
- */
-int
-dma_set_initiator(int initiator)
-{
- switch (initiator)
- {
- /* These initiators are always active */
- case DMA_ALWAYS:
- case DMA_DSPI_RX:
- case DMA_DSPI_TX:
- case DMA_DREQ0:
- case DMA_PSC0_RX:
- case DMA_PSC0_TX:
- case DMA_USBEP0:
- case DMA_USBEP1:
- case DMA_USBEP2:
- case DMA_USBEP3:
- case DMA_PCI_TX:
- case DMA_PCI_RX:
- case DMA_PSC1_RX:
- case DMA_PSC1_TX:
- case DMA_I2C_RX:
- case DMA_I2C_TX:
- break;
- case DMA_FEC0_RX:
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_SRC16(3))
- | MCF_DMA_IMCR_SRC16_FEC0RX;
- used_reqs[16] = DMA_FEC0_RX;
- break;
- case DMA_FEC0_TX:
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_SRC17(3))
- | MCF_DMA_IMCR_SRC17_FEC0TX;
- used_reqs[17] = DMA_FEC0_TX;
- break;
- case DMA_FEC1_RX:
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_SRC20(3))
- | MCF_DMA_IMCR_SRC20_FEC1RX;
- used_reqs[20] = DMA_FEC1_RX;
- break;
- case DMA_FEC1_TX:
- if (used_reqs[21] == 0)
- {
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_SRC21(3))
- | MCF_DMA_IMCR_SRC21_FEC1TX;
- used_reqs[21] = DMA_FEC1_TX;
- }
- else if (used_reqs[25] == 0)
- {
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_SRC25(3))
- | MCF_DMA_IMCR_SRC25_FEC1TX;
- used_reqs[25] = DMA_FEC1_TX;
- }
- else if (used_reqs[31] == 0)
- {
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_SRC31(3))
- | MCF_DMA_IMCR_SRC31_FEC1TX;
- used_reqs[31] = DMA_FEC1_TX;
- }
- else /* No empty slots */
- return 1;
- break;
- case DMA_DREQ1:
- if (used_reqs[29] == 0)
- {
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_SRC29(3))
- | MCF_DMA_IMCR_SRC29_DREQ1;
- used_reqs[29] = DMA_DREQ1;
- }
- else if (used_reqs[21] == 0)
- {
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_SRC21(3))
- | MCF_DMA_IMCR_SRC21_DREQ1;
- used_reqs[21] = DMA_DREQ1;
- }
- else /* No empty slots */
- return 1;
- break;
- case DMA_CTM0:
- if (used_reqs[24] == 0)
- {
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_SRC24(3))
- | MCF_DMA_IMCR_SRC24_CTM0;
- used_reqs[24] = DMA_CTM0;
- }
- else /* No empty slots */
- return 1;
- break;
- case DMA_CTM1:
- if (used_reqs[25] == 0)
- {
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_SRC25(3))
- | MCF_DMA_IMCR_SRC25_CTM1;
- used_reqs[25] = DMA_CTM1;
- }
- else /* No empty slots */
- return 1;
- break;
- case DMA_CTM2:
- if (used_reqs[26] == 0)
- {
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_SRC26(3))
- | MCF_DMA_IMCR_SRC26_CTM2;
- used_reqs[26] = DMA_CTM2;
- }
- else /* No empty slots */
- return 1;
- break;
- case DMA_CTM3:
- if (used_reqs[27] == 0)
- {
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_SRC27(3))
- | MCF_DMA_IMCR_SRC27_CTM3;
- used_reqs[27] = DMA_CTM3;
- }
- else /* No empty slots */
- return 1;
- break;
- case DMA_CTM4:
- if (used_reqs[28] == 0)
- {
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_SRC28(3))
- | MCF_DMA_IMCR_SRC28_CTM4;
- used_reqs[28] = DMA_CTM4;
- }
- else /* No empty slots */
- return 1;
- break;
- case DMA_CTM5:
- if (used_reqs[29] == 0)
- {
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_SRC29(3))
- | MCF_DMA_IMCR_SRC29_CTM5;
- used_reqs[29] = DMA_CTM5;
- }
- else /* No empty slots */
- return 1;
- break;
- case DMA_CTM6:
- if (used_reqs[30] == 0)
- {
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_SRC30(3))
- | MCF_DMA_IMCR_SRC30_CTM6;
- used_reqs[30] = DMA_CTM6;
- }
- else /* No empty slots */
- return 1;
- break;
- case DMA_CTM7:
- if (used_reqs[31] == 0)
- {
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_SRC31(3))
- | MCF_DMA_IMCR_SRC31_CTM7;
- used_reqs[31] = DMA_CTM7;
- }
- else /* No empty slots */
- return 1;
- break;
- case DMA_USBEP4:
- if (used_reqs[26] == 0)
- {
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_SRC26(3))
- | MCF_DMA_IMCR_SRC26_USBEP4;
- used_reqs[26] = DMA_USBEP4;
- }
- else /* No empty slots */
- return 1;
- break;
- case DMA_USBEP5:
- if (used_reqs[27] == 0)
- {
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_SRC27(3))
- | MCF_DMA_IMCR_SRC27_USBEP5;
- used_reqs[27] = DMA_USBEP5;
- }
- else /* No empty slots */
- return 1;
- break;
- case DMA_USBEP6:
- if (used_reqs[28] == 0)
- {
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_SRC28(3))
- | MCF_DMA_IMCR_SRC28_USBEP6;
- used_reqs[28] = DMA_USBEP6;
- }
- else /* No empty slots */
- return 1;
- break;
- case DMA_PSC2_RX:
- if (used_reqs[28] == 0)
- {
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_SRC28(3))
- | MCF_DMA_IMCR_SRC28_PSC2RX;
- used_reqs[28] = DMA_PSC2_RX;
- }
- else /* No empty slots */
- return 1;
- break;
- case DMA_PSC2_TX:
- if (used_reqs[29] == 0)
- {
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_SRC29(3))
- | MCF_DMA_IMCR_SRC29_PSC2TX;
- used_reqs[29] = DMA_PSC2_TX;
- }
- else /* No empty slots */
- return 1;
- break;
- case DMA_PSC3_RX:
- if (used_reqs[30] == 0)
- {
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_SRC30(3))
- | MCF_DMA_IMCR_SRC30_PSC3RX;
- used_reqs[30] = DMA_PSC3_RX;
- }
- else /* No empty slots */
- return 1;
- break;
- case DMA_PSC3_TX:
- if (used_reqs[31] == 0)
- {
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_SRC31(3))
- | MCF_DMA_IMCR_SRC31_PSC3TX;
- used_reqs[31] = DMA_PSC3_TX;
- }
- else /* No empty slots */
- return 1;
- break;
- default:
- return 1;
- }
- return 0;
-}
-
-/*
- * Return the initiator number for the given requestor
- *
- * Parameters:
- * requestor Initiator/Requestor identifier
- *
- * Return Value:
- * The initiator number (0-31) if initiator has been assigned
- * 0 (always initiator) otherwise
- */
-uint32_t
-dma_get_initiator(int requestor)
-{
- uint32_t i;
-
- for (i=0; i<sizeof(used_reqs); ++i)
- {
- if (used_reqs[i] == requestor)
- return i;
- }
- return 0;
-}
-
-/*
- * Remove the given initiator from the active list
- *
- * Parameters:
- * requestor Initiator/Requestor identifier
- */
-void
-dma_free_initiator(int requestor)
-{
- uint32_t i;
-
- for (i=16; i<sizeof(used_reqs); ++i)
- {
- if (used_reqs[i] == requestor)
- {
- used_reqs[i] = 0;
- break;
- }
- }
-}
-
-/*
- * Attempt to find an available channel and mark it as used
- *
- * Parameters:
- * requestor Initiator/Requestor identifier
- *
- * Return Value:
- * First available channel or -1 if they are all occupied
- */
-int
-dma_set_channel(int requestor, void (*handler)(void))
-{
- int i;
-
- /* Check to see if this requestor is already assigned to a channel */
- if ((i = dma_get_channel(requestor)) != -1)
- return i;
-
- for (i=0; i<NCHANNELS; ++i)
- {
- if (dma_channel[i].req == -1)
- {
- dma_channel[i].req = requestor;
- dma_channel[i].handler = handler;
- return i;
- }
- }
-
- /* All channels taken */
- return -1;
-}
-
-/*
- * Return the channel being initiated by the given requestor
- *
- * Parameters:
- * requestor Initiator/Requestor identifier
- *
- * Return Value:
- * Channel that the requestor is controlling or -1 if hasn't been
- * activated
- */
-int
-dma_get_channel(int requestor)
-{
- uint32_t i;
-
- for (i=0; i<NCHANNELS; ++i)
- {
- if (dma_channel[i].req == requestor)
- return i;
- }
- return -1;
-}
-
-/*
- * Remove the channel being initiated by the given requestor from
- * the active list
- *
- * Parameters:
- * requestor Initiator/Requestor identifier
- */
-void
-dma_free_channel(int requestor)
-{
- uint32_t i;
-
- for (i=0; i<NCHANNELS; ++i)
- {
- if (dma_channel[i].req == requestor)
- {
- dma_channel[i].req = -1;
- dma_channel[i].handler = NULL;
- break;
- }
- }
-}
-
-/*
- * This is the catch-all interrupt handler for the mult-channel DMA
- */
-int
-dma_interrupt_handler (void *arg1, void *arg2)
-{
- uint32_t i, interrupts;
- (void)arg1;
- (void)arg2;
-
- disable_interrupts(); // was: board_irq_disable();
-
- /*
- * Determine which interrupt(s) triggered by AND'ing the
- * pending interrupts with those that aren't masked.
- */
- interrupts = MCF_DMA_DIPR & ~MCF_DMA_DIMR;
-
- /* Make sure we are here for a reason */
-// ASSERT(interrupts != 0);
-
- /* Clear the interrupt in the pending register */
- MCF_DMA_DIPR = interrupts;
-
- for (i=0; i<16; ++i, interrupts>>=1)
- {
- if (interrupts & 0x1)
- {
- /* If there is a handler, call it */
- if (dma_channel[i].handler != NULL)
- dma_channel[i].handler();
- }
- }
-
- enable_interrupts(); // board_irq_enable();
- return 1;
-}
diff --git a/arch/m68k/mach-mcfv4e/fec.c b/arch/m68k/mach-mcfv4e/fec.c
deleted file mode 100644
index 7619283f86..0000000000
--- a/arch/m68k/mach-mcfv4e/fec.c
+++ /dev/null
@@ -1,1440 +0,0 @@
-/*
- * File: fec.c
- * Purpose: Driver for the Fast Ethernet Controller (FEC)
- *
- * Notes:
- */
-#include <common.h>
-#include <linux/types.h>
-
-#include <mach/mcf54xx-regs.h>
-#include <proc/mcdapi/MCD_dma.h>
-#include <proc/net/net.h>
-#include <proc/fecbd.h>
-#include <proc/fec.h>
-#include <proc/dma_utils.h>
-
-
-#define TRUE 1
-#define FALSE 0
-#define ASSERT(x) if (!(x)) hang();
-#define nop() __asm__ __volatile__("nop\n")
-
-
-FEC_EVENT_LOG fec_log[2];
-
-/*
- * Write a value to a PHY's MII register.
- *
- * Parameters:
- * ch FEC channel
- * phy_addr Address of the PHY.
- * reg_addr Address of the register in the PHY.
- * data Data to be written to the PHY register.
- *
- * Return Values:
- * 1 on failure
- * 0 on success.
- *
- * Please refer to your PHY manual for registers and their meanings.
- * mii_write() polls for the FEC's MII interrupt event (which should
- * be masked from the interrupt handler) and clears it. If after a
- * suitable amount of time the event isn't triggered, a value of 0
- * is returned.
- */
-int
-fec_mii_write(uint8_t ch, uint8_t phy_addr, uint8_t reg_addr, uint16_t data)
-{
- int timeout;
- uint32_t eimr;
-
- ASSERT(ch == 0 || ch == 1);
-
- /*
- * Clear the MII interrupt bit
- */
- MCF_FEC_EIR(ch) = MCF_FEC_EIR_MII;
-
- /*
- * Write to the MII Management Frame Register to kick-off
- * the MII write
- */
- MCF_FEC_MMFR(ch) = 0
- | MCF_FEC_MMFR_ST_01
- | MCF_FEC_MMFR_OP_WRITE
- | MCF_FEC_MMFR_PA(phy_addr)
- | MCF_FEC_MMFR_RA(reg_addr)
- | MCF_FEC_MMFR_TA_10
- | MCF_FEC_MMFR_DATA(data);
-
- /*
- * Mask the MII interrupt
- */
- eimr = MCF_FEC_EIMR(ch);
- MCF_FEC_EIMR(ch) &= ~MCF_FEC_EIMR_MII;
-
- /*
- * Poll for the MII interrupt (interrupt should be masked)
- */
- for (timeout = 0; timeout < FEC_MII_TIMEOUT; timeout++)
- {
- if (MCF_FEC_EIR(ch) & MCF_FEC_EIR_MII)
- break;
- }
- if(timeout == FEC_MII_TIMEOUT)
- return 1;
-
- /*
- * Clear the MII interrupt bit
- */
- MCF_FEC_EIR(ch) = MCF_FEC_EIR_MII;
-
- /*
- * Restore the EIMR
- */
- MCF_FEC_EIMR(ch) = eimr;
-
- return 0;
-}
-
-/*
- * Read a value from a PHY's MII register.
- *
- * Parameters:
- * ch FEC channel
- * phy_addr Address of the PHY.
- * reg_addr Address of the register in the PHY.
- * data Pointer to storage for the Data to be read
- * from the PHY register (passed by reference)
- *
- * Return Values:
- * 1 on failure
- * 0 on success.
- *
- * Please refer to your PHY manual for registers and their meanings.
- * mii_read() polls for the FEC's MII interrupt event (which should
- * be masked from the interrupt handler) and clears it. If after a
- * suitable amount of time the event isn't triggered, a value of 0
- * is returned.
- */
-int
-fec_mii_read(uint8_t ch, uint8_t phy_addr, uint8_t reg_addr, uint16_t *data)
-{
- int timeout;
-
- ASSERT(ch == 0 || ch == 1);
-
- /*
- * Clear the MII interrupt bit
- */
- MCF_FEC_EIR(ch) = MCF_FEC_EIR_MII;
-
- /*
- * Write to the MII Management Frame Register to kick-off
- * the MII read
- */
- MCF_FEC_MMFR(ch) = 0
- | MCF_FEC_MMFR_ST_01
- | MCF_FEC_MMFR_OP_READ
- | MCF_FEC_MMFR_PA(phy_addr)
- | MCF_FEC_MMFR_RA(reg_addr)
- | MCF_FEC_MMFR_TA_10;
-
- /*
- * Poll for the MII interrupt (interrupt should be masked)
- */
- for (timeout = 0; timeout < FEC_MII_TIMEOUT; timeout++)
- {
- if (MCF_FEC_EIR(ch) & MCF_FEC_EIR_MII)
- break;
- }
-
- if(timeout == FEC_MII_TIMEOUT)
- return 1;
-
- /*
- * Clear the MII interrupt bit
- */
- MCF_FEC_EIR(ch) = MCF_FEC_EIR_MII;
-
- *data = (uint16_t)(MCF_FEC_MMFR(ch) & 0x0000FFFF);
-
- return 0;
-}
-
-/*
- * Initialize the MII interface controller
- *
- * Parameters:
- * ch FEC channel
- * sys_clk System Clock Frequency (in MHz)
- */
-void
-fec_mii_init(uint8_t ch, uint32_t sys_clk)
-{
- ASSERT(ch == 0 || ch == 1);
-
- /*
- * Initialize the MII clock (EMDC) frequency
- *
- * Desired MII clock is 2.5MHz
- * MII Speed Setting = System_Clock / (2.5MHz * 2)
- * (plus 1 to make sure we round up)
- */
- MCF_FEC_MSCR(ch) = MCF_FEC_MSCR_MII_SPEED((sys_clk/5)+1);
-}
-
-/* Initialize the MIB counters
- *
- * Parameters:
- * ch FEC channel
- */
-void
-fec_mib_init(uint8_t ch)
-{
- ASSERT(ch == 0 || ch == 1);
-//To do
-}
-
-/* Display the MIB counters
- *
- * Parameters:
- * ch FEC channel
- */
-void
-fec_mib_dump(uint8_t ch)
-{
- ASSERT(ch == 0 || ch == 1);
-//To do
-}
-
-/* Initialize the FEC log
- *
- * Parameters:
- * ch FEC channel
- */
-void
-fec_log_init(uint8_t ch)
-{
- ASSERT(ch == 0 || ch == 1);
- memset(&fec_log[ch],0,sizeof(FEC_EVENT_LOG));
-}
-
-/* Display the FEC log
- *
- * Parameters:
- * ch FEC channel
- */
-void
-fec_log_dump(uint8_t ch)
-{
- ASSERT(ch == 0 || ch == 1);
- printf("\n FEC%d Log\n---------------\n",ch);
- printf("Total: %4d\n",fec_log[ch].total);
- printf("hberr: %4d\n",fec_log[ch].hberr);
- printf("babr: %4d\n",fec_log[ch].babr);
- printf("babt: %4d\n",fec_log[ch].babt);
- printf("gra: %4d\n",fec_log[ch].gra);
- printf("txf: %4d\n",fec_log[ch].txf);
- printf("mii: %4d\n",fec_log[ch].mii);
- printf("lc: %4d\n",fec_log[ch].lc);
- printf("rl: %4d\n",fec_log[ch].rl);
- printf("xfun: %4d\n",fec_log[ch].xfun);
- printf("xferr: %4d\n",fec_log[ch].xferr);
- printf("rferr: %4d\n",fec_log[ch].rferr);
- printf("dtxf: %4d\n",fec_log[ch].dtxf);
- printf("drxf: %4d\n",fec_log[ch].drxf);
- printf("\nRFSW:\n");
- printf("inv: %4d\n",fec_log[ch].rfsw_inv);
- printf("m: %4d\n",fec_log[ch].rfsw_m);
- printf("bc: %4d\n",fec_log[ch].rfsw_bc);
- printf("mc: %4d\n",fec_log[ch].rfsw_mc);
- printf("lg: %4d\n",fec_log[ch].rfsw_lg);
- printf("no: %4d\n",fec_log[ch].rfsw_no);
- printf("cr: %4d\n",fec_log[ch].rfsw_cr);
- printf("ov: %4d\n",fec_log[ch].rfsw_ov);
- printf("tr: %4d\n",fec_log[ch].rfsw_tr);
- printf("---------------\n\n");
-}
-
-/*
- * Display some of the registers for debugging
- *
- * Parameters:
- * ch FEC channel
- */
-void
-fec_debug_dump(uint8_t ch)
-{
- printf("\n------------- FEC%d -------------\n",ch);
- printf("EIR %08x \n",MCF_FEC_EIR(ch));
- printf("EIMR %08x \n",MCF_FEC_EIMR(ch));
- printf("ECR %08x \n",MCF_FEC_ECR(ch));
- printf("RCR %08x \n",MCF_FEC_RCR(ch));
- printf("R_HASH %08x \n",MCF_FEC_R_HASH(ch));
- printf("TCR %08x \n",MCF_FEC_TCR(ch));
- printf("FECTFWR %08x \n",MCF_FEC_FECTFWR(ch));
- printf("FECRFSR %08x \n",MCF_FEC_FECRFSR(ch));
- printf("FECRFCR %08x \n",MCF_FEC_FECRFCR(ch));
- printf("FECRLRFP %08x \n",MCF_FEC_FECRLRFP(ch));
- printf("FECRLWFP %08x \n",MCF_FEC_FECRLWFP(ch));
- printf("FECRFAR %08x \n",MCF_FEC_FECRFAR(ch));
- printf("FECRFRP %08x \n",MCF_FEC_FECRFRP(ch));
- printf("FECRFWP %08x \n",MCF_FEC_FECRFWP(ch));
- printf("FECTFSR %08x \n",MCF_FEC_FECTFSR(ch));
- printf("FECTFCR %08x \n",MCF_FEC_FECTFCR(ch));
- printf("FECTLRFP %08x \n",MCF_FEC_FECTLRFP(ch));
- printf("FECTLWFP %08x \n",MCF_FEC_FECTLWFP(ch));
- printf("FECTFAR %08x \n",MCF_FEC_FECTFAR(ch));
- printf("FECTFRP %08x \n",MCF_FEC_FECTFRP(ch));
- printf("FECTFWP %08x \n",MCF_FEC_FECTFWP(ch));
- printf("FRST %08x \n",MCF_FEC_FRST(ch));
- printf("--------------------------------\n\n");
-}
-
-/*
- * Set the duplex on the selected FEC controller
- *
- * Parameters:
- * ch FEC channel
- * duplex FEC_MII_FULL_DUPLEX or FEC_MII_HALF_DUPLEX
- */
-void
-fec_duplex (uint8_t ch, uint8_t duplex)
-{
- ASSERT(ch == 0 || ch == 1);
-
- switch (duplex)
- {
- case FEC_MII_HALF_DUPLEX:
- MCF_FEC_RCR(ch) |= MCF_FEC_RCR_DRT;
- MCF_FEC_TCR(ch) &= (uint32_t)~MCF_FEC_TCR_FDEN;
- break;
- case FEC_MII_FULL_DUPLEX:
- default:
- MCF_FEC_RCR(ch) &= (uint32_t)~MCF_FEC_RCR_DRT;
- MCF_FEC_TCR(ch) |= MCF_FEC_TCR_FDEN;
- break;
- }
-}
-
-/*
- * Generate the hash table settings for the given address
- *
- * Parameters:
- * addr 48-bit (6 byte) Address to generate the hash for
- *
- * Return Value:
- * The 6 most significant bits of the 32-bit CRC result
- */
-uint8_t
-fec_hash_address(const uint8_t *addr)
-{
- uint32_t crc;
- uint8_t byte;
- int i, j;
-
- crc = 0xFFFFFFFF;
- for(i=0; i<6; ++i)
- {
- byte = addr[i];
- for(j=0; j<8; ++j)
- {
- if((byte & 0x01)^(crc & 0x01))
- {
- crc >>= 1;
- crc = crc ^ 0xEDB88320;
- }
- else
- crc >>= 1;
- byte >>= 1;
- }
- }
- return (uint8_t)(crc >> 26);
-}
-
-/*
- * Set the Physical (Hardware) Address and the Individual Address
- * Hash in the selected FEC
- *
- * Parameters:
- * ch FEC channel
- * pa Physical (Hardware) Address for the selected FEC
- */
-void
-fec_set_address (uint8_t ch, const uint8_t *pa)
-{
- uint8_t crc;
-
- ASSERT(ch == 0 || ch == 1);
-
- /*
- * Set the Physical Address
- */
- MCF_FEC_PALR(ch) = (uint32_t)((pa[0]<<24) | (pa[1]<<16) | (pa[2]<<8) | pa[3]);
- MCF_FEC_PAUR(ch) = (uint32_t)((pa[4]<<24) | (pa[5]<<16));
-
- /*
- * Calculate and set the hash for given Physical Address
- * in the Individual Address Hash registers
- */
- crc = fec_hash_address(pa);
- if(crc >= 32)
- MCF_FEC_IAUR(ch) |= (uint32_t)(1 << (crc - 32));
- else
- MCF_FEC_IALR(ch) |= (uint32_t)(1 << crc);
-}
-
-/*
- * Reset the selected FEC controller
- *
- * Parameters:
- * ch FEC channel
- */
-void
-fec_reset (uint8_t ch)
-{
- int i;
-
- ASSERT(ch == 0 || ch == 1);
-
- /* Clear any events in the FIFO status registers */
- MCF_FEC_FECRFSR(ch) = (0
- | MCF_FEC_FECRFSR_OF
- | MCF_FEC_FECRFSR_UF
- | MCF_FEC_FECRFSR_RXW
- | MCF_FEC_FECRFSR_FAE
- | MCF_FEC_FECRFSR_IP);
- MCF_FEC_FECTFSR(ch) = (0
- | MCF_FEC_FECRFSR_OF
- | MCF_FEC_FECRFSR_UF
- | MCF_FEC_FECRFSR_RXW
- | MCF_FEC_FECRFSR_FAE
- | MCF_FEC_FECRFSR_IP);
-
- /* Reset the FIFOs */
- MCF_FEC_FRST(ch) |= MCF_FEC_FRST_SW_RST;
- MCF_FEC_FRST(ch) &= ~MCF_FEC_FRST_SW_RST;
-
- /* Set the Reset bit and clear the Enable bit */
- MCF_FEC_ECR(ch) = MCF_FEC_ECR_RESET;
-
- /* Wait at least 8 clock cycles */
- for (i=0; i<10; ++i)
- nop();
-}
-
-/*
- * Initialize the selected FEC
- *
- * Parameters:
- * ch FEC channel
- * mode External interface mode (MII, 7-wire, or internal loopback)
- * pa Physical (Hardware) Address for the selected FEC
- */
-void
-fec_init (uint8_t ch, uint8_t mode, const uint8_t *pa)
-{
- ASSERT(ch == 0 || ch == 1);
-
- /*
- * Enable all the external interface signals
- */
- if (mode == FEC_MODE_7WIRE)
- {
- if (ch == 1)
- MCF_GPIO_PAR_FECI2CIRQ |= MCF_GPIO_PAR_FECI2CIRQ_PAR_E17;
- else
- MCF_GPIO_PAR_FECI2CIRQ |= MCF_GPIO_PAR_FECI2CIRQ_PAR_E07;
- }
- else if (mode == FEC_MODE_MII)
- {
- if (ch == 1)
- MCF_GPIO_PAR_FECI2CIRQ |= 0
- | MCF_GPIO_PAR_FECI2CIRQ_PAR_E1MDC_EMDC
- | MCF_GPIO_PAR_FECI2CIRQ_PAR_E1MDIO_EMDIO
- | MCF_GPIO_PAR_FECI2CIRQ_PAR_E1MII
- | MCF_GPIO_PAR_FECI2CIRQ_PAR_E17;
- else
- MCF_GPIO_PAR_FECI2CIRQ |= 0
- | MCF_GPIO_PAR_FECI2CIRQ_PAR_E0MDC
- | MCF_GPIO_PAR_FECI2CIRQ_PAR_E0MDIO
- | MCF_GPIO_PAR_FECI2CIRQ_PAR_E0MII
- | MCF_GPIO_PAR_FECI2CIRQ_PAR_E07;
- }
-
- /*
- * Clear the Individual and Group Address Hash registers
- */
- MCF_FEC_IALR(ch) = 0;
- MCF_FEC_IAUR(ch) = 0;
- MCF_FEC_GALR(ch) = 0;
- MCF_FEC_GAUR(ch) = 0;
-
- /*
- * Set the Physical Address for the selected FEC
- */
- fec_set_address(ch, pa);
-
- /*
- * Mask all FEC interrupts
- */
- MCF_FEC_EIMR(ch) = MCF_FEC_EIMR_MASK_ALL;
-
- /*
- * Clear all FEC interrupt events
- */
- MCF_FEC_EIR(ch) = MCF_FEC_EIR_CLEAR_ALL;
-
- /*
- * Initialize the Receive Control Register
- */
- MCF_FEC_RCR(ch) = 0
- | MCF_FEC_RCR_MAX_FL(ETH_MAX_FRM)
- #ifdef FEC_PROMISCUOUS
- | MCF_FEC_RCR_PROM
- #endif
- | MCF_FEC_RCR_FCE;
-
- if (mode == FEC_MODE_MII)
- MCF_FEC_RCR(ch) |= MCF_FEC_RCR_MII_MODE;
-
- else if (mode == FEC_MODE_LOOPBACK)
- MCF_FEC_RCR(ch) |= MCF_FEC_RCR_LOOP;
-
- /*
- * Initialize the Transmit Control Register
- */
- MCF_FEC_TCR(ch) = MCF_FEC_TCR_FDEN;
-
- /*
- * Set Rx FIFO alarm and granularity
- */
- MCF_FEC_FECRFCR(ch) = 0
- | MCF_FEC_FECRFCR_FRM
- | MCF_FEC_FECRFCR_RXW_MSK
- | MCF_FEC_FECRFCR_GR(7);
- MCF_FEC_FECRFAR(ch) = MCF_FEC_FECRFAR_ALARM(768);
-
- /*
- * Set Tx FIFO watermark, alarm and granularity
- */
- MCF_FEC_FECTFCR(ch) = 0
- | MCF_FEC_FECTFCR_FRM
- | MCF_FEC_FECTFCR_TXW_MSK
- | MCF_FEC_FECTFCR_GR(7);
- MCF_FEC_FECTFAR(ch) = MCF_FEC_FECTFAR_ALARM(256);
- MCF_FEC_FECTFWR(ch) = MCF_FEC_FECTFWR_X_WMRK_256;
-
- /*
- * Enable the transmitter to append the CRC
- */
- MCF_FEC_CTCWR(ch) = 0
- | MCF_FEC_CTCWR_TFCW
- | MCF_FEC_CTCWR_CRC;
-}
-
-/*
- * Start the FEC Rx DMA task
- *
- * Parameters:
- * ch FEC channel
- * rxbd First Rx buffer descriptor in the chain
- */
-void
-fec_rx_start(uint8_t ch, int8_t *rxbd)
-{
- uint32_t initiator;
- int channel, result;
-
- ASSERT(ch == 0 || ch == 1);
-
- /*
- * Make the initiator assignment
- */
- result = dma_set_initiator(DMA_FEC_RX(ch));
- ASSERT(result == 0);
-
- /*
- * Grab the initiator number
- */
- initiator = dma_get_initiator(DMA_FEC_RX(ch));
-
- /*
- * Determine the DMA channel running the task for the
- * selected FEC
- */
- channel = dma_set_channel(DMA_FEC_RX(ch),
- (ch == 0) ? fec0_rx_frame : fec1_rx_frame);
- ASSERT(channel != -1);
-
- /*
- * Start the Rx DMA task
- */
- /*
- * Start the Rx DMA task
- */
- MCD_startDma(channel,
- (s8*)rxbd,
- 0,
- (s8*)MCF_FEC_FECRFDR_ADDR(ch),
- 0,
- RX_BUF_SZ,
- 0,
- initiator,
- FECRX_DMA_PRI(ch),
- 0
- | MCD_FECRX_DMA
- | MCD_INTERRUPT
- | MCD_TT_FLAGS_CW
- | MCD_TT_FLAGS_RL
- | MCD_TT_FLAGS_SP
- ,
- 0
- | MCD_NO_CSUM
- | MCD_NO_BYTE_SWAP
- );
-}
-
-/*
- * Continue the Rx DMA task
- *
- * This routine is called after the DMA task has halted after
- * encountering an Rx buffer descriptor that wasn't marked as
- * ready. There is no harm in calling the DMA continue routine
- * if the DMA is not halted.
- *
- * Parameters:
- * ch FEC channel
- */
-void
-fec_rx_continue(uint8_t ch)
-{
- int channel;
-
- ASSERT(ch == 0 || ch == 1);
-
- /*
- * Determine the DMA channel running the task for the
- * selected FEC
- */
- channel = dma_get_channel(DMA_FEC_RX(ch));
- ASSERT(channel != -1);
-
- /*
- * Continue/restart the DMA task
- */
- MCD_continDma(channel);
-}
-
-/*
- * Stop all frame receptions on the selected FEC
- *
- * Parameters:
- * ch FEC channel
- */
-void
-fec_rx_stop (uint8_t ch)
-{
- uint32_t mask;
- int channel;
-
- ASSERT(ch == 0 || ch == 1);
-
- /* Save off the EIMR value */
- mask = MCF_FEC_EIMR(ch);
-
- /* Mask all interrupts */
- MCF_FEC_EIMR(ch) = 0;
-
- /*
- * Determine the DMA channel running the task for the
- * selected FEC
- */
- channel = dma_get_channel(DMA_FEC_RX(ch));
- ASSERT(channel != -1);
-
- /* Kill the FEC Rx DMA task */
- MCD_killDma(channel);
-
- /*
- * Free up the FEC requestor from the software maintained
- * initiator list
- */
- dma_free_initiator(DMA_FEC_RX(ch));
-
- /* Free up the DMA channel */
- dma_free_channel(DMA_FEC_RX(ch));
-
- /* Restore the interrupt mask register value */
- MCF_FEC_EIMR(ch) = mask;
-}
-
-/*
- * Receive Frame interrupt handler - this handler is called by the
- * DMA interrupt handler indicating that a packet was successfully
- * transferred out of the Rx FIFO.
- *
- * Parameters:
- * nif Pointer to Network Interface structure
- * ch FEC channel
- */
-NBUF *
-fec_rx_frame(uint8_t ch, NIF *nif)
-{
-// ETH_HDR *eth_hdr;
- FECBD *pRxBD;
- NBUF *cur_nbuf, *new_nbuf;
- int keep;
-
- while ((pRxBD = fecbd_rx_alloc(ch)) != NULL)
- {
- fec_log[ch].drxf++;
- keep = TRUE;
-
- /*
- * Check the Receive Frame Status Word for errors
- * - The L bit should always be set
- * - No undefined bits should be set
- * - The upper 5 bits of the length should be cleared
- */
- if (!(pRxBD->status & RX_BD_L) || (pRxBD->status & 0x0608)
- || (pRxBD->length & 0xF800))
- {
- keep = FALSE;
- fec_log[ch].rfsw_inv++;
- }
- else if (pRxBD->status & RX_BD_ERROR)
- {
- keep = FALSE;
- if (pRxBD->status & RX_BD_NO)
- fec_log[ch].rfsw_no++;
- if (pRxBD->status & RX_BD_CR)
- fec_log[ch].rfsw_cr++;
- if (pRxBD->status & RX_BD_OV)
- fec_log[ch].rfsw_ov++;
- if (pRxBD->status & RX_BD_TR)
- fec_log[ch].rfsw_tr++;
- }
- else
- {
- if (pRxBD->status & RX_BD_LG)
- fec_log[ch].rfsw_lg++;
- if (pRxBD->status & RX_BD_M)
- fec_log[ch].rfsw_m++;
- if (pRxBD->status & RX_BD_BC)
- fec_log[ch].rfsw_bc++;
- if (pRxBD->status & RX_BD_MC)
- fec_log[ch].rfsw_mc++;
- }
-
- if (keep)
- {
- /*
- * Pull the network buffer off the Rx ring queue
- */
- cur_nbuf = nbuf_remove(NBUF_RX_RING);
- ASSERT(cur_nbuf);
- ASSERT(cur_nbuf->data == pRxBD->data);
-
- /*
- * Copy the buffer descriptor information to the network buffer
- */
-// cur_nbuf->length = (pRxBD->length - (ETH_HDR_LEN + ETH_CRC_LEN));
-// cur_nbuf->offset = ETH_HDR_LEN;
- cur_nbuf->length = (pRxBD->length - (ETH_CRC_LEN));
- cur_nbuf->offset = 0;
-
- /*
- * Get a new buffer pointer for this buffer descriptor
- */
- new_nbuf = nbuf_alloc();
- if (new_nbuf == NULL)
- {
- #ifdef CONFIG_DRIVER_NET_MCF54XX_DEBUG
- printf("nbuf_alloc() failed\n");
- #endif
- /*
- * Can't allocate a new network buffer, so we
- * have to trash the received data and reuse the buffer
- * hoping that some buffers will free up in the system
- * and this frame will be re-transmitted by the host
- */
- pRxBD->length = RX_BUF_SZ;
- pRxBD->status &= (RX_BD_W | RX_BD_INTERRUPT);
- pRxBD->status |= RX_BD_E;
- nbuf_add(NBUF_RX_RING, cur_nbuf);
- fec_rx_continue(ch);
- continue;
- }
-
- /*
- * Add the new network buffer to the Rx ring queue
- */
- nbuf_add(NBUF_RX_RING, new_nbuf);
-
- /*
- * Re-initialize the buffer descriptor - pointing it
- * to the new data buffer. The previous data buffer
- * will be passed up the stack
- */
- pRxBD->data = new_nbuf->data;
- pRxBD->length = RX_BUF_SZ;
- pRxBD->status &= (RX_BD_W | RX_BD_INTERRUPT);
- pRxBD->status |= RX_BD_E;
-
-
- /*
- * Let the DMA know that there is a new Rx BD (in case the
- * ring was full and the DMA was waiting for an empty one)
- */
- fec_rx_continue(ch);
-
- /*
- * Get pointer to the frame data inside the network buffer
- */
-// eth_hdr = (ETH_HDR *)cur_nbuf->data;
-
- /*
- * Pass the received packet up the network stack if the
- * protocol is supported in our network interface (NIF)
- */
-//FIXME if (nif_protocol_exist(nif,eth_hdr->type))
-// {
-// nif_protocol_handler(nif, eth_hdr->type, cur_nbuf);
-// }
-// else
-// nbuf_free(cur_nbuf);
- return(cur_nbuf);
- }
- else
- {
- /*
- * This frame isn't a keeper
- * Reset the status and length, but don't need to get another
- * buffer since we are trashing the data in the current one
- */
- pRxBD->length = RX_BUF_SZ;
- pRxBD->status &= (RX_BD_W | RX_BD_INTERRUPT);
- pRxBD->status |= RX_BD_E;
-
- /*
- * Move the current buffer from the beginning to the end of the
- * Rx ring queue
- */
- cur_nbuf = nbuf_remove(NBUF_RX_RING);
- nbuf_add(NBUF_RX_RING, cur_nbuf);
-
- /*
- * Let the DMA know that there are new Rx BDs (in case
- * it is waiting for an empty one)
- */
- fec_rx_continue(ch);
- }
- }
- return NULL;
-}
-
-void
-fec0_rx_frame(void)
-{
-// extern NIF nif1;
-// fec_rx_frame(0, 0);
-}
-
-void
-fec1_rx_frame(void)
-{
-// extern NIF nif1;
-// fec_rx_frame(1, 0);
-}
-
-/*
- * Start the FEC Tx DMA task
- *
- * Parameters:
- * ch FEC channel
- * txbd First Tx buffer descriptor in the chain
- */
-void
-fec_tx_start(uint8_t ch, int8_t *txbd)
-{
- uint32_t initiator;
- int channel, result;
- void fec0_tx_frame(void);
- void fec1_tx_frame(void);
-
- /*
- * Make the initiator assignment
- */
- result = dma_set_initiator(DMA_FEC_TX(ch));
- ASSERT(result == 0);
-
- /*
- * Grab the initiator number
- */
- initiator = dma_get_initiator(DMA_FEC_TX(ch));
- ASSERT(initiator != 0);
-
- /*
- * Determine the DMA channel running the task for the
- * selected FEC
- */
- channel = dma_set_channel(DMA_FEC_TX(ch),
- (ch == 0) ? fec0_tx_frame : fec1_tx_frame);
- ASSERT(channel != -1);
-
- /*
- * Start the Tx DMA task
- */
- MCD_startDma(channel,
- (s8*)txbd,
- 0,
- (s8*)MCF_FEC_FECTFDR_ADDR(ch),
- 0,
- ETH_MTU,
- 0,
- initiator,
- FECTX_DMA_PRI(ch),
- 0
- | MCD_FECTX_DMA
- | MCD_INTERRUPT
- | MCD_TT_FLAGS_CW
- | MCD_TT_FLAGS_RL
- | MCD_TT_FLAGS_SP
- ,
- 0
- | MCD_NO_CSUM
- | MCD_NO_BYTE_SWAP
- );
-}
-
-/*
- * Continue the Tx DMA task
- *
- * This routine is called after the DMA task has halted after
- * encountering an Tx buffer descriptor that wasn't marked as
- * ready. There is no harm in calling the continue DMA routine
- * if the DMA was not paused.
- *
- * Parameters:
- * ch FEC channel
- */
-void
-fec_tx_continue(uint8_t ch)
-{
- int channel;
-
- /*
- * Determine the DMA channel running the task for the
- * selected FEC
- */
- channel = dma_get_channel(DMA_FEC_TX(ch));
- ASSERT(channel > 0);
-
- /*
- * Continue/restart the DMA task
- */
- MCD_continDma((int)channel);
-}
-
-/*
- * Stop all transmissions on the selected FEC and kill the DMA task
- *
- * Parameters:
- * ch FEC channel
- */
-void
-fec_tx_stop (uint8_t ch)
-{
- uint32_t mask;
- int channel;
-
- ASSERT(ch == 0 || ch == 1);
-
- /* Save off the EIMR value */
- mask = MCF_FEC_EIMR(ch);
-
- /* Mask all interrupts */
- MCF_FEC_EIMR(ch) = 0;
-
- /* If the Ethernet is still enabled... */
- if (MCF_FEC_ECR(ch) & MCF_FEC_ECR_ETHER_EN)
- {
- /* Issue the Graceful Transmit Stop */
- MCF_FEC_TCR(ch) |= MCF_FEC_TCR_GTS;
-
- /* Wait for the Graceful Stop Complete interrupt */
- while(!(MCF_FEC_EIR(ch) & MCF_FEC_EIR_GRA))
- {
- if (!(MCF_FEC_ECR(ch) & MCF_FEC_ECR_ETHER_EN))
- break;
- }
-
- /* Clear the Graceful Stop Complete interrupt */
- MCF_FEC_EIR(ch) = MCF_FEC_EIR_GRA;
- }
-
- /*
- * Determine the DMA channel running the task for the
- * selected FEC
- */
- channel = dma_get_channel(DMA_FEC_TX(ch));
- ASSERT(channel > 0);
-
- /* Kill the FEC Tx DMA task */
- MCD_killDma(channel);
-
- /*
- * Free up the FEC requestor from the software maintained
- * initiator list
- */
- dma_free_initiator(DMA_FEC_TX(ch));
-
- /* Free up the DMA channel */
- dma_free_channel(DMA_FEC_TX(ch));
-
- /* Restore the interrupt mask register value */
- MCF_FEC_EIMR(ch) = mask;
-}
-
-/*
- * Trasmit Frame interrupt handler - this handler is called by the
- * DMA interrupt handler indicating that a packet was successfully
- * transferred to the Tx FIFO.
- *
- * Parameters:
- * ch FEC channel
- */
-void
-fec_tx_frame(uint8_t ch)
-{
- FECBD *pTxBD;
- NBUF *pNbuf;
-
- while ((pTxBD = fecbd_tx_free(ch)) != NULL)
- {
- fec_log[ch].dtxf++;
-
- /*
- * Grab the network buffer associated with this buffer descriptor
- */
- pNbuf = nbuf_remove(NBUF_TX_RING);
- ASSERT(pNbuf);
- ASSERT(pNbuf->data == pTxBD->data);
-
- /*
- * Free up the network buffer that was just transmitted
- */
- nbuf_free(pNbuf);
-
- /*
- * Re-initialize the Tx BD
- */
- pTxBD->data = NULL;
- pTxBD->length = 0;
- }
-}
-
-void
-fec0_tx_frame(void)
-{
- fec_tx_frame(0);
-}
-
-void
-fec1_tx_frame(void)
-{
- fec_tx_frame(1);
-}
-
-/*
- * Send a packet out the selected FEC
- *
- * Parameters:
- * ch FEC channel
- * nif Pointer to Network Interface (NIF) structure
- * dst Destination MAC Address
- * src Source MAC Address
- * type Ethernet Frame Type
- * length Number of bytes to be transmitted (doesn't include type,
- * src, or dest byte count)
- * pkt Pointer packet network buffer
- *
- * Return Value:
- * 1 success
- * 0 otherwise
- */
-int
-fec_send (uint8_t ch, NIF *nif, uint8_t *dst, uint8_t *src, uint16_t type, NBUF *nbuf)
-{
- FECBD *pTxBD;
- ASSERT(ch == 0 || ch == 1);
-
- /* Check the length */
- if ((nbuf->length + ETH_HDR_LEN) > ETH_MTU)
- return 0;
-
- /*
- * Copy the destination address, source address, and Ethernet
- * type into the packet
- */
-// memcpy(&nbuf->data[0], dst, 6);
-// memcpy(&nbuf->data[6], src, 6);
-// memcpy(&nbuf->data[12], &type, 2);
-
- /*
- * Grab the next available Tx Buffer Descriptor
- */
- while ((pTxBD = fecbd_tx_alloc(ch)) == NULL) {};
-
- /*
- * Put the network buffer into the Tx waiting queue
- */
- nbuf_add(NBUF_TX_RING, nbuf);
-
- /*
- * Setup the buffer descriptor for transmission
- */
- pTxBD->data = nbuf->data;
- pTxBD->length = nbuf->length; // + ETH_HDR_LEN;
- pTxBD->status |= (TX_BD_R | TX_BD_L);
-
- /*
- * Continue the Tx DMA task (in case it was waiting for a new
- * TxBD to be ready
- */
- fec_tx_continue(ch);
-
- return 1;
-}
-
-int
-fec0_send(NIF *nif, uint8_t *dst, uint8_t *src, uint16_t type, NBUF *nbuf)
-{
- return fec_send(0, nif, dst, src, type, nbuf);
-}
-
-int
-fec1_send(NIF *nif, uint8_t *dst, uint8_t *src, uint16_t type, NBUF *nbuf)
-{
- return fec_send(1, nif, dst, src, type, nbuf);
-}
-
-/*
- * Enable interrupts on the selected FEC
- *
- * Parameters:
- * ch FEC channel
- * pri Interrupt Priority
- * lvl Interrupt Level
- */
-void
-fec_irq_enable(uint8_t ch, uint8_t lvl, uint8_t pri)
-{
- ASSERT(ch == 0 || ch == 1);
- ASSERT(lvl > 0 && lvl < 8);
- ASSERT(pri < 8);
-
- /*
- * Setup the appropriate ICR
- */
- MCF_INTC_ICRn((ch == 0) ? 39 : 38) = (uint8_t)(0
- | MCF_INTC_ICRn_IP(pri)
- | MCF_INTC_ICRn_IL(lvl));
-
- /*
- * Clear any pending FEC interrupt events
- */
- MCF_FEC_EIR(ch) = MCF_FEC_EIR_CLEAR_ALL;
-
- /*
- * Unmask all FEC interrupts
- */
- MCF_FEC_EIMR(ch) = MCF_FEC_EIMR_UNMASK_ALL;
-
- /*
- * Unmask the FEC interrupt in the interrupt controller
- */
- if (ch == 0)
- MCF_INTC_IMRH &= ~MCF_INTC_IMRH_INT_MASK39;
- else
- MCF_INTC_IMRH &= ~MCF_INTC_IMRH_INT_MASK38;
-}
-
-/*
- * Disable interrupts on the selected FEC
- *
- * Parameters:
- * ch FEC channel
- */
-void
-fec_irq_disable(uint8_t ch)
-{
- ASSERT(ch == 0 || ch == 1);
-
- /*
- * Mask all FEC interrupts
- */
- MCF_FEC_EIMR(ch) = MCF_FEC_EIMR_MASK_ALL;
-
- /*
- * Mask the FEC interrupt in the interrupt controller
- */
- if (ch == 0)
- MCF_INTC_IMRH |= MCF_INTC_IMRH_INT_MASK39;
- else
- MCF_INTC_IMRH |= MCF_INTC_IMRH_INT_MASK38;
-}
-
-/*
- * FEC interrupt handler
- * All interrupts are multiplexed into a single vector for each
- * FEC module. The lower level interrupt handler passes in the
- * channel to this handler. Note that the receive interrupt is
- * generated by the Multi-channel DMA FEC Rx task.
- *
- * Parameters:
- * ch FEC channel
- */
-static void
-fec_irq_handler(uint8_t ch)
-{
- uint32_t event, eir;
-
- /*
- * Determine which interrupt(s) asserted by AND'ing the
- * pending interrupts with those that aren't masked.
- */
- eir = MCF_FEC_EIR(ch);
- event = eir & MCF_FEC_EIMR(ch);
-
- #ifdef CONFIG_DRIVER_NET_MCF54XX_DEBUG
- if (event != eir)
- printf("Pending but not enabled: 0x%08X\n",(event ^ eir));
- #endif
-
- /*
- * Clear the event(s) in the EIR immediately
- */
- MCF_FEC_EIR(ch) = event;
-
- if (event & MCF_FEC_EIR_RFERR)
- {
- fec_log[ch].total++;
- fec_log[ch].rferr++;
- #ifdef CONFIG_DRIVER_NET_MCF54XX_DEBUG
- printf("RFERR\n");
- printf("FECRFSR%d = 0x%08x\n",ch,MCF_FEC_FECRFSR(ch));
- fec_eth_stop(ch);
- #endif
- }
- if (event & MCF_FEC_EIR_XFERR)
- {
- fec_log[ch].total++;
- fec_log[ch].xferr++;
- #ifdef CONFIG_DRIVER_NET_MCF54XX_DEBUG
- printf("XFERR\n");
- #endif
- }
- if (event & MCF_FEC_EIR_XFUN)
- {
- fec_log[ch].total++;
- fec_log[ch].xfun++;
- #ifdef CONFIG_DRIVER_NET_MCF54XX_DEBUG
- printf("XFUN\n");
- fec_eth_stop(ch);
- #endif
- }
- if (event & MCF_FEC_EIR_RL)
- {
- fec_log[ch].total++;
- fec_log[ch].rl++;
- #ifdef CONFIG_DRIVER_NET_MCF54XX_DEBUG
- printf("RL\n");
- #endif
- }
- if (event & MCF_FEC_EIR_LC)
- {
- fec_log[ch].total++;
- fec_log[ch].lc++;
- #ifdef CONFIG_DRIVER_NET_MCF54XX_DEBUG
- printf("LC\n");
- #endif
- }
- if (event & MCF_FEC_EIR_MII)
- {
- fec_log[ch].mii++;
- }
- if (event & MCF_FEC_EIR_TXF)
- {
- fec_log[ch].txf++;
- }
- if (event & MCF_FEC_EIR_GRA)
- {
- fec_log[ch].gra++;
- }
- if (event & MCF_FEC_EIR_BABT)
- {
- fec_log[ch].total++;
- fec_log[ch].babt++;
- #ifdef CONFIG_DRIVER_NET_MCF54XX_DEBUG
- printf("BABT\n");
- #endif
- }
- if (event & MCF_FEC_EIR_BABR)
- {
- fec_log[ch].total++;
- fec_log[ch].babr++;
- #ifdef CONFIG_DRIVER_NET_MCF54XX_DEBUG
- printf("BABR\n");
- #endif
- }
- if (event & MCF_FEC_EIR_HBERR)
- {
- fec_log[ch].total++;
- fec_log[ch].hberr++;
- #ifdef CONFIG_DRIVER_NET_MCF54XX_DEBUG
- printf("HBERR\n");
- #endif
- }
-}
-
-int
-fec0_interrupt_handler(void* arg1, void* arg2)
-{
- (void) arg1;
- (void) arg2;
- fec_irq_handler(0);
- return 1;
-}
-
-int
-fec1_interrupt_handler(void* arg1, void* arg2)
-{
- (void) arg1;
- (void) arg2;
- fec_irq_handler(1);
- return 1;
-}
-
-/*
- * Configure the selected Ethernet port and enable all operations
- *
- * Parameters:
- * ch FEC channel
- * trcvr Transceiver mode (MII, 7-Wire or internal loopback)
- * speed Maximum operating speed (MII only)
- * duplex Full or Half-duplex (MII only)
- * mac Physical (MAC) Address
- */
-void
-fec_eth_setup(uint8_t ch, uint8_t trcvr, uint8_t speed, uint8_t duplex, const uint8_t *mac)
-{
- ASSERT(ch == 0 || ch == 1);
-
- /*
- * Disable FEC interrupts
- */
- fec_irq_disable(ch);
-
- /*
- * Initialize the event log
- */
- fec_log_init(ch);
-
- /*
- * Initialize the network buffers and fec buffer descriptors
- */
- nbuf_init();
- fecbd_init(ch);
-
- /*
- * Initialize the FEC
- */
- fec_reset(ch);
- fec_init(ch,trcvr,mac);
-
- if (trcvr == FEC_MODE_MII)
- {
- /*
- * Initialize the MII interface
- */
- fec_mii_init(ch, CFG_SYSTEM_CORE_CLOCK);
- }
-
- /*
- * Initialize and enable FEC interrupts
- */
- fec_irq_enable(ch, FEC_INTC_LVL(ch), FEC_INTC_PRI(ch));
-
- /*
- * Enable the multi-channel DMA tasks
- */
- fec_rx_start(ch, (int8_t*)fecbd_get_start(ch,Rx));
- fec_tx_start(ch, (int8_t*)fecbd_get_start(ch,Tx));
-
- /*
- * Enable the FEC channel
- */
- MCF_FEC_ECR(ch) |= MCF_FEC_ECR_ETHER_EN;
-}
-/*
- * Reset the selected Ethernet port
- *
- * Parameters:
- * ch FEC channel
- */
-void
-fec_eth_reset(uint8_t ch)
-{
-// To do
-}
-
-/*
- * Stop the selected Ethernet port
- *
- * Parameters:
- * ch FEC channel
- */
-void
-fec_eth_stop(uint8_t ch)
-{
- int level;
-
- /*
- * Disable interrupts
- */
- level = asm_set_ipl(7);
-
- /*
- * Gracefully disable the receiver and transmitter
- */
- fec_tx_stop(ch);
- fec_rx_stop(ch);
-
- /*
- * Disable FEC interrupts
- */
- fec_irq_disable(ch);
-
- /*
- * Disable the FEC channel
- */
- MCF_FEC_ECR(ch) &= ~MCF_FEC_ECR_ETHER_EN;
-
- #ifdef CONFIG_DRIVER_NET_MCF54XX_DEBUG
- nbuf_debug_dump();
- fec_log_dump(ch);
- #endif
-
- /*
- * Flush the network buffers
- */
- nbuf_flush();
-
- /*
- * Restore interrupt level
- */
- asm_set_ipl(level);
-}
diff --git a/arch/m68k/mach-mcfv4e/fecbd.c b/arch/m68k/mach-mcfv4e/fecbd.c
deleted file mode 100644
index a8e732b3ac..0000000000
--- a/arch/m68k/mach-mcfv4e/fecbd.c
+++ /dev/null
@@ -1,232 +0,0 @@
-/*
- * File: fecbd.c
- * Purpose: Provide a simple buffer management driver
- *
- * Notes:
- */
-#include <common.h>
-#include <linux/types.h>
-
-#include <mach/mcf54xx-regs.h>
-#include <proc/mcdapi/MCD_dma.h>
-#include <proc/net/net.h>
-#include <proc/fecbd.h>
-#include <proc/fec.h>
-#include <proc/dma_utils.h>
-
-#define ASSERT(x) if (!(x)) hang();
-
-/*
- * This implements a simple static buffer descriptor
- * ring for each channel and each direction
- *
- * FEC Buffer Descriptors need to be aligned to a 4-byte boundary.
- * In order to accomplish this, data is over-allocated and manually
- * aligned at runtime
- *
- * Enough space is allocated for each of the two FEC channels to have
- * NRXBD Rx BDs and NTXBD Tx BDs
- *
- */
-FECBD unaligned_bds[(2 * NRXBD) + (2 * NTXBD) + 1];
-
-/*
- * These pointers are used to reference into the chunck of data set
- * aside for buffer descriptors
- */
-FECBD *RxBD;
-FECBD *TxBD;
-
-/*
- * Macros to easier access to the BD ring
- */
-#define RxBD(ch,i) RxBD[(ch * NRXBD) + i]
-#define TxBD(ch,i) TxBD[(ch * NTXBD) + i]
-
-/*
- * Buffer descriptor indexes
- */
-static int iTxbd_new;
-static int iTxbd_old;
-static int iRxbd;
-
-/*
- * Initialize the FEC Buffer Descriptor ring
- * Buffer Descriptor format is defined by the MCDAPI
- *
- * Parameters:
- * ch FEC channel
- */
-void
-fecbd_init(uint8_t ch)
-{
- NBUF *nbuf;
- int i;
-
- /*
- * Align Buffer Descriptors to 4-byte boundary
- */
- RxBD = (FECBD *)(((int)unaligned_bds + 3) & 0xFFFFFFFC);
- TxBD = (FECBD *)((int)RxBD + (sizeof(FECBD) * 2 * NRXBD));
-
- /*
- * Initialize the Rx Buffer Descriptor ring
- */
- for (i = 0; i < NRXBD; ++i)
- {
- /* Grab a network buffer from the free list */
- nbuf = nbuf_alloc();
- ASSERT(nbuf);
-
- /* Initialize the BD */
- RxBD(ch,i).status = RX_BD_E | RX_BD_INTERRUPT;
- RxBD(ch,i).length = RX_BUF_SZ;
- RxBD(ch,i).data = nbuf->data;
-
- /* Add the network buffer to the Rx queue */
- nbuf_add(NBUF_RX_RING, nbuf);
- }
-
- /*
- * Set the WRAP bit on the last one
- */
- RxBD(ch,i-1).status |= RX_BD_W;
-
- /*
- * Initialize the Tx Buffer Descriptor ring
- */
- for (i = 0; i < NTXBD; ++i)
- {
- TxBD(ch,i).status = TX_BD_INTERRUPT;
- TxBD(ch,i).length = 0;
- TxBD(ch,i).data = NULL;
- }
-
- /*
- * Set the WRAP bit on the last one
- */
- TxBD(ch,i-1).status |= TX_BD_W;
-
- /*
- * Initialize the buffer descriptor indexes
- */
- iTxbd_new = iTxbd_old = iRxbd = 0;
-}
-
-void
-fecbd_dump(uint8_t ch)
-{
- #ifdef CONFIG_DRIVER_NET_MCF54XX_DEBUG
- int i;
-
- printf("\n------------ FEC%d BDs -----------\n",ch);
- printf("RxBD Ring\n");
- for (i=0; i<NRXBD; i++)
- {
- printf("%02d: BD Addr=0x%08x, Ctrl=0x%04x, Lgth=%04d, DataPtr=0x%08x\n",
- i, &RxBD(ch,i),
- RxBD(ch,i).status,
- RxBD(ch,i).length,
- RxBD(ch,i).data);
- }
- printf("TxBD Ring\n");
- for (i=0; i<NTXBD; i++)
- {
- printf("%02d: BD Addr=0x%08x, Ctrl=0x%04x, Lgth=%04d, DataPtr=0x%08x\n",
- i, &TxBD(ch,i),
- TxBD(ch,i).status,
- TxBD(ch,i).length,
- TxBD(ch,i).data);
- }
- printf("--------------------------------\n\n");
- #endif
-}
-
-/*
- * Return the address of the first buffer descriptor in the ring.
- *
- * Parameters:
- * ch FEC channel
- * direction Rx or Tx Macro
- *
- * Return Value:
- * The start address of the selected Buffer Descriptor ring
- */
-uint32_t
-fecbd_get_start(uint8_t ch, uint8_t direction)
-{
- switch (direction)
- {
- case Rx:
- return (uint32_t)((int)RxBD + (ch * sizeof(FECBD) * NRXBD));
- case Tx:
- default:
- return (uint32_t)((int)TxBD + (ch * sizeof(FECBD) * NTXBD));
- }
-}
-
-FECBD *
-fecbd_rx_alloc(uint8_t ch)
-{
- int i = iRxbd;
-
- /* Check to see if the ring of BDs is full */
- if (RxBD(ch,i).status & RX_BD_E)
- return NULL;
-
- /* Increment the circular index */
- iRxbd = (uint8_t)((iRxbd + 1) % NRXBD);
-
- return &RxBD(ch,i);
-}
-
-/*
- * This function keeps track of the next available Tx BD in the ring
- *
- * Parameters:
- * ch FEC channel
- *
- * Return Value:
- * Pointer to next available buffer descriptor.
- * NULL if the BD ring is full
- */
-FECBD *
-fecbd_tx_alloc(uint8_t ch)
-{
- int i = iTxbd_new;
-
- /* Check to see if the ring of BDs is full */
- if (TxBD(ch,i).status & TX_BD_R)
- return NULL;
-
- /* Increment the circular index */
- iTxbd_new = (uint8_t)((iTxbd_new + 1) % NTXBD);
-
- return &TxBD(ch,i);
-}
-
-/*
- * This function keeps track of the Tx BDs that have already been
- * processed by the FEC
- *
- * Parameters:
- * ch FEC channel
- *
- * Return Value:
- * Pointer to the oldest buffer descriptor that has already been sent
- * by the FEC, NULL if the BD ring is empty
- */
-FECBD *
-fecbd_tx_free(uint8_t ch)
-{
- int i = iTxbd_old;
-
- /* Check to see if the ring of BDs is empty */
- if ((TxBD(ch,i).data == NULL) || (TxBD(ch,i).status & TX_BD_R))
- return NULL;
-
- /* Increment the circular index */
- iTxbd_old = (uint8_t)((iTxbd_old + 1) % NTXBD);
-
- return &TxBD(ch,i);
-}
diff --git a/arch/m68k/mach-mcfv4e/include/mach/clocks.h b/arch/m68k/mach-mcfv4e/include/mach/clocks.h
deleted file mode 100644
index daedb7aebe..0000000000
--- a/arch/m68k/mach-mcfv4e/include/mach/clocks.h
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * This File contains functions to query clock settings for the actual
- * board.
- */
-#ifndef __ASM_ARCH_CLOCKS_H
-#define __ASM_ARCH_CLOCKS_H
-
-ulong mcfv4e_get_bus_clk(void);
-
-#endif /* __ASM_ARCH_CLOCKS_H */
diff --git a/arch/m68k/mach-mcfv4e/include/mach/debug_ll.h b/arch/m68k/mach-mcfv4e/include/mach/debug_ll.h
deleted file mode 100644
index c58be70334..0000000000
--- a/arch/m68k/mach-mcfv4e/include/mach/debug_ll.h
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * This File contains declaration for early output support
- */
-#ifndef __INCLUDE_ARCH_DEBUG_LL_H__
-#define __INCLUDE_ARCH_DEBUG_LL_H__
-
-extern __inline__ void putc( char ch )
-{
- //extern int early_console_putc( char ch);
- early_console_putc(NULL,ch);
-}
-
-#endif /* __INCLUDE_ARCH_DEBUG_LL_H__ */
diff --git a/arch/m68k/mach-mcfv4e/include/mach/hardware.h b/arch/m68k/mach-mcfv4e/include/mach/hardware.h
deleted file mode 100644
index 118afa63ab..0000000000
--- a/arch/m68k/mach-mcfv4e/include/mach/hardware.h
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * This File contains declaration for early output support
- */
-#ifndef __ASM_ARCH_HARDWARE_H__
-#define __ASM_ARCH_HARDWARE_H__
-
-#include <sizes.h>
-
-#ifdef CONFIG_ARCH_MCF54xx
-#include "mcf54xx-regs.h"
-#endif
-
-#endif /* __ASM_ARCH_HARDWARE_H__ */
diff --git a/arch/m68k/mach-mcfv4e/include/mach/mcf54xx-regs.h b/arch/m68k/mach-mcfv4e/include/mach/mcf54xx-regs.h
deleted file mode 100644
index 8dd5ed2c15..0000000000
--- a/arch/m68k/mach-mcfv4e/include/mach/mcf54xx-regs.h
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * This File contains declaration for early output support
- */
-#ifndef __MCF54xx_REGS_H__
-#define __MCF54xx_REGS_H__
-
-/* System Registers for V4E cores (MCF547x and MCF548x) */
-#include <asm/coldfire/mcf5xxx.h>
-
-#endif /* __MCF54xx_REGS_H__ */
diff --git a/arch/m68k/mach-mcfv4e/include/proc/dma_utils.h b/arch/m68k/mach-mcfv4e/include/proc/dma_utils.h
deleted file mode 100644
index 1cb27822ba..0000000000
--- a/arch/m68k/mach-mcfv4e/include/proc/dma_utils.h
+++ /dev/null
@@ -1,80 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Declaration of support function used with the MultiChannel DMA
- */
-#ifndef _DMA_UTILS_H_
-#define _DMA_UTILS_H_
-
-
-void dma_irq_enable(uint8_t, uint8_t);
-void dma_irq_disable(void);
-int dma_set_initiator(int);
-uint32_t dma_get_initiator(int);
-void dma_free_initiator(int);
-int dma_set_channel(int, void (*)(void));
-int dma_get_channel(int);
-void dma_free_channel(int);
-int dma_interrupt_handler(void *, void *);
-
-/*
- * Create identifiers for each initiator/requestor
- */
-#define DMA_ALWAYS (0)
-#define DMA_DSPI_RX (1)
-#define DMA_DSPI_TX (2)
-#define DMA_DREQ0 (3)
-#define DMA_PSC0_RX (4)
-#define DMA_PSC0_TX (5)
-#define DMA_USBEP0 (6)
-#define DMA_USBEP1 (7)
-#define DMA_USBEP2 (8)
-#define DMA_USBEP3 (9)
-#define DMA_PCI_TX (10)
-#define DMA_PCI_RX (11)
-#define DMA_PSC1_RX (12)
-#define DMA_PSC1_TX (13)
-#define DMA_I2C_RX (14)
-#define DMA_I2C_TX (15)
-#define DMA_FEC0_RX (16)
-#define DMA_FEC0_TX (17)
-#define DMA_FEC1_RX (18)
-#define DMA_FEC1_TX (19)
-#define DMA_DREQ1 (20)
-#define DMA_CTM0 (21)
-#define DMA_CTM1 (22)
-#define DMA_CTM2 (23)
-#define DMA_CTM3 (24)
-#define DMA_CTM4 (25)
-#define DMA_CTM5 (26)
-#define DMA_CTM6 (27)
-#define DMA_CTM7 (28)
-#define DMA_USBEP4 (29)
-#define DMA_USBEP5 (30)
-#define DMA_USBEP6 (31)
-#define DMA_PSC2_RX (32)
-#define DMA_PSC2_TX (33)
-#define DMA_PSC3_RX (34)
-#define DMA_PSC3_TX (35)
-#define DMA_FEC_RX(x) ((x == 0) ? DMA_FEC0_RX : DMA_FEC1_RX)
-#define DMA_FEC_TX(x) ((x == 0) ? DMA_FEC0_TX : DMA_FEC1_TX)
-
-#endif /* _DMA_UTILS_H_ */
diff --git a/arch/m68k/mach-mcfv4e/include/proc/fec.h b/arch/m68k/mach-mcfv4e/include/proc/fec.h
deleted file mode 100644
index 16bfaa6ded..0000000000
--- a/arch/m68k/mach-mcfv4e/include/proc/fec.h
+++ /dev/null
@@ -1,130 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Declaration for the Fast Ethernet Controller (FEC)
- */
-#ifndef _FEC_H_
-#define _FEC_H_
-
-// FIXME
-#define NIF void
-
-/********************************************************************/
-/* MII Speed Settings */
-#define FEC_MII_10BASE_T 0
-#define FEC_MII_100BASE_TX 1
-
-/* MII Duplex Settings */
-#define FEC_MII_HALF_DUPLEX 0
-#define FEC_MII_FULL_DUPLEX 1
-
-/* Timeout for MII communications */
-#define FEC_MII_TIMEOUT 0x10000
-
-/* External Interface Modes */
-#define FEC_MODE_7WIRE 0
-#define FEC_MODE_MII 1
-#define FEC_MODE_LOOPBACK 2 /* Internal Loopback */
-
-/*
- * FEC Event Log
- */
-typedef struct {
- int total; /* total count of errors */
- int hberr; /* heartbeat error */
- int babr; /* babbling receiver */
- int babt; /* babbling transmitter */
- int gra; /* graceful stop complete */
- int txf; /* transmit frame */
- int mii; /* MII */
- int lc; /* late collision */
- int rl; /* collision retry limit */
- int xfun; /* transmit FIFO underrrun */
- int xferr; /* transmit FIFO error */
- int rferr; /* receive FIFO error */
- int dtxf; /* DMA transmit frame */
- int drxf; /* DMA receive frame */
- int rfsw_inv; /* Invalid bit in RFSW */
- int rfsw_l; /* RFSW Last in Frame */
- int rfsw_m; /* RFSW Miss */
- int rfsw_bc; /* RFSW Broadcast */
- int rfsw_mc; /* RFSW Multicast */
- int rfsw_lg; /* RFSW Length Violation */
- int rfsw_no; /* RFSW Non-octet */
- int rfsw_cr; /* RFSW Bad CRC */
- int rfsw_ov; /* RFSW Overflow */
- int rfsw_tr; /* RFSW Truncated */
-} FEC_EVENT_LOG;
-
-
-int fec_mii_write(uint8_t , uint8_t , uint8_t , uint16_t );
-int fec_mii_read(uint8_t , uint8_t , uint8_t , uint16_t *x);
-void fec_mii_init(uint8_t, uint32_t);
-
-void fec_mib_init(uint8_t);
-void fec_mib_dump(uint8_t);
-
-void fec_log_init(uint8_t);
-void fec_log_dump(uint8_t);
-
-void fec_debug_dump(uint8_t);
-void fec_duplex (uint8_t, uint8_t);
-
-uint8_t fec_hash_address(const uint8_t *);
-void fec_set_address (uint8_t ch, const uint8_t *);
-
-void fec_reset (uint8_t);
-void fec_init (uint8_t, uint8_t, const uint8_t *);
-
-void fec_rx_start(uint8_t, int8_t *);
-void fec_rx_restart(uint8_t);
-void fec_rx_stop (uint8_t);
-
-NBUF * fec_rx_frame(uint8_t ch, NIF *nif);
-
-void fec0_rx_frame(void);
-void fec1_rx_frame(void);
-
-void fec_tx_start(uint8_t, int8_t *);
-void fec_tx_restart(uint8_t);
-void fec_tx_stop (uint8_t);
-
-void fec0_tx_frame(void);
-void fec1_tx_frame(void);
-
-int fec_send(uint8_t, NIF *, uint8_t *, uint8_t *, uint16_t , NBUF *);
-int fec0_send(NIF *, uint8_t *, uint8_t *, uint16_t , NBUF *);
-int fec1_send(NIF *, uint8_t *, uint8_t *, uint16_t , NBUF *);
-
-void fec_irq_enable(uint8_t, uint8_t, uint8_t);
-void fec_irq_disable(uint8_t);
-
-void fec_interrupt_handler(uint8_t);
-int fec0_interrupt_handler(void *, void *);
-int fec1_interrupt_handler(void *, void *);
-
-void fec_eth_setup(uint8_t, uint8_t, uint8_t, uint8_t, const uint8_t *);
-
-void fec_eth_reset(uint8_t);
-
-void fec_eth_stop(uint8_t);
-
-#endif /* _FEC_H_ */
diff --git a/arch/m68k/mach-mcfv4e/include/proc/fecbd.h b/arch/m68k/mach-mcfv4e/include/proc/fecbd.h
deleted file mode 100644
index d7551c6587..0000000000
--- a/arch/m68k/mach-mcfv4e/include/proc/fecbd.h
+++ /dev/null
@@ -1,115 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Provide a simple buffer management driver
- */
-
-#ifndef _FECBD_H_
-#define _FECBD_H_
-
-/********************************************************************/
-
-#define Rx 1
-#define Tx 0
-
-/*
- * Buffer sizes in bytes
- */
-#ifndef RX_BUF_SZ
-#define RX_BUF_SZ NBUF_SZ
-#endif
-#ifndef TX_BUF_SZ
-#define TX_BUF_SZ NBUF_SZ
-#endif
-
-/*
- * Number of Rx and Tx Buffers and Buffer Descriptors
- */
-#ifndef NRXBD
-#define NRXBD 10
-#endif
-#ifndef NTXBD
-#define NTXBD 4
-#endif
-
-/*
- * Buffer Descriptor Format
- */
-typedef struct
-{
- uint16_t status; /* control and status */
- uint16_t length; /* transfer length */
- uint8_t *data; /* buffer address */
-} FECBD;
-
-/*
- * Bit level definitions for status field of buffer descriptors
- */
-#define TX_BD_R 0x8000
-#define TX_BD_TO1 0x4000
-#define TX_BD_W 0x2000
-#define TX_BD_TO2 0x1000
-#define TX_BD_INTERRUPT 0x1000 /* MCF547x/8x Only */
-#define TX_BD_L 0x0800
-#define TX_BD_TC 0x0400
-#define TX_BD_DEF 0x0200 /* MCF5272 Only */
-#define TX_BD_ABC 0x0200
-#define TX_BD_HB 0x0100 /* MCF5272 Only */
-#define TX_BD_LC 0x0080 /* MCF5272 Only */
-#define TX_BD_RL 0x0040 /* MCF5272 Only */
-#define TX_BD_UN 0x0002 /* MCF5272 Only */
-#define TX_BD_CSL 0x0001 /* MCF5272 Only */
-
-#define RX_BD_E 0x8000
-#define RX_BD_R01 0x4000
-#define RX_BD_W 0x2000
-#define RX_BD_R02 0x1000
-#define RX_BD_INTERRUPT 0x1000 /* MCF547x/8x Only */
-#define RX_BD_L 0x0800
-#define RX_BD_M 0x0100
-#define RX_BD_BC 0x0080
-#define RX_BD_MC 0x0040
-#define RX_BD_LG 0x0020
-#define RX_BD_NO 0x0010
-#define RX_BD_CR 0x0004
-#define RX_BD_OV 0x0002
-#define RX_BD_TR 0x0001
-#define RX_BD_ERROR (RX_BD_NO | RX_BD_CR | RX_BD_OV | RX_BD_TR)
-
-/*
- * Functions provided in fec_bd.c
- */
-void
-fecbd_init(uint8_t);
-
-uint32_t
-fecbd_get_start(uint8_t, uint8_t);
-
-FECBD *
-fecbd_rx_alloc(uint8_t);
-
-FECBD *
-fecbd_tx_alloc(uint8_t);
-
-FECBD *
-fecbd_tx_free(uint8_t);
-
-#endif /* _FECBD_H_ */
diff --git a/arch/m68k/mach-mcfv4e/include/proc/mcdapi/MCD_dma.h b/arch/m68k/mach-mcfv4e/include/proc/mcdapi/MCD_dma.h
deleted file mode 100644
index ad7f1393c1..0000000000
--- a/arch/m68k/mach-mcfv4e/include/proc/mcdapi/MCD_dma.h
+++ /dev/null
@@ -1,379 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Main header file for multi-channel DMA API.
- */
-#ifndef _MCD_API_H
-#define _MCD_API_H
-
-/*
- * Turn Execution Unit tasks ON (#define) or OFF (#undef)
- */
-#undef MCD_INCLUDE_EU
-
-/*
- * Number of DMA channels
- */
-#define NCHANNELS 16
-
-/*
- * Total number of variants
- */
-#ifdef MCD_INCLUDE_EU
-#define NUMOFVARIANTS 6
-#else
-#define NUMOFVARIANTS 4
-#endif
-
-/*
- * Define sizes of the various tables
- */
-#define TASK_TABLE_SIZE (NCHANNELS*32)
-#define VAR_TAB_SIZE (128)
-#define CONTEXT_SAVE_SIZE (128)
-#define FUNCDESC_TAB_SIZE (256)
-
-#ifdef MCD_INCLUDE_EU
-#define FUNCDESC_TAB_NUM 16
-#else
-#define FUNCDESC_TAB_NUM 1
-#endif
-
-
-#ifndef DEFINESONLY
-
-/*
- * Portability typedefs
- */
-//typedef signed int s32;
-//typedef unsigned int u32;
-//typedef signed short s16;
-//typedef unsigned short u16;
-//typedef signed char s8;
-//typedef unsigned char u8;
-//
-/*
- * These structures represent the internal registers of the
- * multi-channel DMA
- */
-struct dmaRegs_s {
- u32 taskbar; /* task table base address register */
- u32 currPtr;
- u32 endPtr;
- u32 varTablePtr;
- u16 dma_rsvd0;
- u16 ptdControl; /* ptd control */
- u32 intPending; /* interrupt pending register */
- u32 intMask; /* interrupt mask register */
- u16 taskControl[16]; /* task control registers */
- u8 priority[32]; /* priority registers */
- u32 initiatorMux; /* initiator mux control */
- u32 taskSize0; /* task size control register 0. */
- u32 taskSize1; /* task size control register 1. */
- u32 dma_rsvd1; /* reserved */
- u32 dma_rsvd2; /* reserved */
- u32 debugComp1; /* debug comparator 1 */
- u32 debugComp2; /* debug comparator 2 */
- u32 debugControl; /* debug control */
- u32 debugStatus; /* debug status */
- u32 ptdDebug; /* priority task decode debug */
- u32 dma_rsvd3[31]; /* reserved */
-};
-typedef volatile struct dmaRegs_s dmaRegs;
-
-#endif
-
-/*
- * PTD contrl reg bits
- */
-#define PTD_CTL_TSK_PRI 0x8000
-#define PTD_CTL_COMM_PREFETCH 0x0001
-
-/*
- * Task Control reg bits and field masks
- */
-#define TASK_CTL_EN 0x8000
-#define TASK_CTL_VALID 0x4000
-#define TASK_CTL_ALWAYS 0x2000
-#define TASK_CTL_INIT_MASK 0x1f00
-#define TASK_CTL_ASTRT 0x0080
-#define TASK_CTL_HIPRITSKEN 0x0040
-#define TASK_CTL_HLDINITNUM 0x0020
-#define TASK_CTL_ASTSKNUM_MASK 0x000f
-
-/*
- * Priority reg bits and field masks
- */
-#define PRIORITY_HLD 0x80
-#define PRIORITY_PRI_MASK 0x07
-
-/*
- * Debug Control reg bits and field masks
- */
-#define DBG_CTL_BLOCK_TASKS_MASK 0xffff0000
-#define DBG_CTL_AUTO_ARM 0x00008000
-#define DBG_CTL_BREAK 0x00004000
-#define DBG_CTL_COMP1_TYP_MASK 0x00003800
-#define DBG_CTL_COMP2_TYP_MASK 0x00000070
-#define DBG_CTL_EXT_BREAK 0x00000004
-#define DBG_CTL_INT_BREAK 0x00000002
-
-/*
- * PTD Debug reg selector addresses
- * This reg must be written with a value to show the contents of
- * one of the desired internal register.
- */
-#define PTD_DBG_REQ 0x00 /* shows the state of 31 initiators */
-#define PTD_DBG_TSK_VLD_INIT 0x01 /* shows which 16 tasks are valid and
- have initiators asserted */
-
-
-/*
- * General return values
- */
-#define MCD_OK 0
-#define MCD_ERROR -1
-#define MCD_TABLE_UNALIGNED -2
-#define MCD_CHANNEL_INVALID -3
-
-/*
- * MCD_initDma input flags
- */
-#define MCD_RELOC_TASKS 0x00000001
-#define MCD_NO_RELOC_TASKS 0x00000000
-#define MCD_COMM_PREFETCH_EN 0x00000002 /* Commbus Prefetching - MCF547x/548x ONLY */
-
-/*
- * MCD_dmaStatus Status Values for each channel
- */
-#define MCD_NO_DMA 1 /* No DMA has been requested since reset */
-#define MCD_IDLE 2 /* DMA active, but the initiator is currently inactive */
-#define MCD_RUNNING 3 /* DMA active, and the initiator is currently active */
-#define MCD_PAUSED 4 /* DMA active but it is currently paused */
-#define MCD_HALTED 5 /* the most recent DMA has been killed with MCD_killTask() */
-#define MCD_DONE 6 /* the most recent DMA has completed. */
-
-
-/*
- * MCD_startDma parameter defines
- */
-
-/*
- * Constants for the funcDesc parameter
- */
-/* Byte swapping: */
-#define MCD_NO_BYTE_SWAP 0x00045670 /* to disable byte swapping. */
-#define MCD_BYTE_REVERSE 0x00076540 /* to reverse the bytes of each u32 of the DMAed data. */
-#define MCD_U16_REVERSE 0x00067450 /* to reverse the 16-bit halves of
- each 32-bit data value being DMAed.*/
-#define MCD_U16_BYTE_REVERSE 0x00054760 /* to reverse the byte halves of each
- 16-bit half of each 32-bit data value DMAed */
-#define MCD_NO_BIT_REV 0x00000000 /* do not reverse the bits of each byte DMAed. */
-#define MCD_BIT_REV 0x00088880 /* reverse the bits of each byte DMAed */
-/* CRCing: */
-#define MCD_CRC16 0xc0100000 /* to perform CRC-16 on DMAed data. */
-#define MCD_CRCCCITT 0xc0200000 /* to perform CRC-CCITT on DMAed data. */
-#define MCD_CRC32 0xc0300000 /* to perform CRC-32 on DMAed data. */
-#define MCD_CSUMINET 0xc0400000 /* to perform internet checksums on DMAed data.*/
-#define MCD_NO_CSUM 0xa0000000 /* to perform no checksumming. */
-
-#define MCD_FUNC_NOEU1 (MCD_NO_BYTE_SWAP | MCD_NO_BIT_REV | MCD_NO_CSUM)
-#define MCD_FUNC_NOEU2 (MCD_NO_BYTE_SWAP | MCD_NO_CSUM)
-
-/*
- * Constants for the flags parameter
- */
-#define MCD_TT_FLAGS_RL 0x00000001 /* Read line */
-#define MCD_TT_FLAGS_CW 0x00000002 /* Combine Writes */
-#define MCD_TT_FLAGS_SP 0x00000004 /* Speculative prefetch(XLB) MCF547x/548x ONLY */
-#define MCD_TT_FLAGS_MASK 0x000000ff
-#define MCD_TT_FLAGS_DEF (MCD_TT_FLAGS_RL | MCD_TT_FLAGS_CW)
-
-#define MCD_SINGLE_DMA 0x00000100 /* Unchained DMA */
-#define MCD_CHAIN_DMA /* TBD */
-#define MCD_EU_DMA /* TBD */
-#define MCD_FECTX_DMA 0x00001000 /* FEC TX ring DMA */
-#define MCD_FECRX_DMA 0x00002000 /* FEC RX ring DMA */
-
-
-/* these flags are valid for MCD_startDma and the chained buffer descriptors */
-#define MCD_BUF_READY 0x80000000 /* indicates that this buffer is now under the DMA's control */
-#define MCD_WRAP 0x20000000 /* to tell the FEC Dmas to wrap to the first BD */
-#define MCD_INTERRUPT 0x10000000 /* to generate an interrupt after completion of the DMA. */
-#define MCD_END_FRAME 0x08000000 /* tell the DMA to end the frame when transferring
- last byte of data in buffer */
-#define MCD_CRC_RESTART 0x40000000 /* to empty out the accumulated checksum
- prior to performing the DMA. */
-
-/* Defines for the FEC buffer descriptor control/status word*/
-#define MCD_FEC_BUF_READY 0x8000
-#define MCD_FEC_WRAP 0x2000
-#define MCD_FEC_INTERRUPT 0x1000
-#define MCD_FEC_END_FRAME 0x0800
-
-
-/*
- * Defines for general intuitiveness
- */
-
-#define MCD_TRUE 1
-#define MCD_FALSE 0
-
-/*
- * Three different cases for destination and source.
- */
-#define MINUS1 -1
-#define ZERO 0
-#define PLUS1 1
-
-#ifndef DEFINESONLY
-
-/* Task Table Entry struct*/
-typedef struct {
- u32 TDTstart; /* task descriptor table start */
- u32 TDTend; /* task descriptor table end */
- u32 varTab; /* variable table start */
- u32 FDTandFlags; /* function descriptor table start and flags */
- volatile u32 descAddrAndStatus;
- volatile u32 modifiedVarTab;
- u32 contextSaveSpace; /* context save space start */
- u32 literalBases;
-} TaskTableEntry;
-
-
-/* Chained buffer descriptor */
-typedef volatile struct MCD_bufDesc_struct MCD_bufDesc;
-struct MCD_bufDesc_struct {
- u32 flags; /* flags describing the DMA */
- u32 csumResult; /* checksum from checksumming performed since last checksum reset */
- s8 *srcAddr; /* the address to move data from */
- s8 *destAddr; /* the address to move data to */
- s8 *lastDestAddr; /* the last address written to */
- u32 dmaSize; /* the number of bytes to transfer independent of the transfer size */
- MCD_bufDesc *next; /* next buffer descriptor in chain */
- u32 info; /* private information about this descriptor; DMA does not affect it */
-};
-
-/* Progress Query struct */
-typedef volatile struct MCD_XferProg_struct {
- s8 *lastSrcAddr; /* the most-recent or last, post-increment source address */
- s8 *lastDestAddr; /* the most-recent or last, post-increment destination address */
- u32 dmaSize; /* the amount of data transferred for the current buffer */
- MCD_bufDesc *currBufDesc;/* pointer to the current buffer descriptor being DMAed */
-} MCD_XferProg;
-
-
-/* FEC buffer descriptor */
-typedef volatile struct MCD_bufDescFec_struct {
- u16 statCtrl;
- u16 length;
- u32 dataPointer;
-} MCD_bufDescFec;
-
-
-/*************************************************************************/
-/*
- * API function Prototypes - see MCD_dmaApi.c for further notes
- */
-
-/*
- * MCD_startDma starts a particular kind of DMA .
- */
-int MCD_startDma (
- int channel, /* the channel on which to run the DMA */
- s8 *srcAddr, /* the address to move data from, or buffer-descriptor address */
- s16 srcIncr, /* the amount to increment the source address per transfer */
- s8 *destAddr, /* the address to move data to */
- s16 destIncr, /* the amount to increment the destination address per transfer */
- u32 dmaSize, /* the number of bytes to transfer independent of the transfer size */
- u32 xferSize, /* the number bytes in of each data movement (1, 2, or 4) */
- u32 initiator, /* what device initiates the DMA */
- int priority, /* priority of the DMA */
- u32 flags, /* flags describing the DMA */
- u32 funcDesc /* a description of byte swapping, bit swapping, and CRC actions */
-);
-
-/*
- * MCD_initDma() initializes the DMA API by setting up a pointer to the DMA
- * registers, relocating and creating the appropriate task structures, and
- * setting up some global settings
- */
-int MCD_initDma (dmaRegs *sDmaBarAddr, void *taskTableDest, u32 flags);
-
-/*
- * MCD_dmaStatus() returns the status of the DMA on the requested channel.
- */
-int MCD_dmaStatus (int channel);
-
-/*
- * MCD_XferProgrQuery() returns progress of DMA on requested channel
- */
-int MCD_XferProgrQuery (int channel, MCD_XferProg *progRep);
-
-/*
- * MCD_killDma() halts the DMA on the requested channel, without any
- * intention of resuming the DMA.
- */
-int MCD_killDma (int channel);
-
-/*
- * MCD_continDma() continues a DMA which as stopped due to encountering an
- * unready buffer descriptor.
- */
-int MCD_continDma (int channel);
-
-/*
- * MCD_pauseDma() pauses the DMA on the given channel ( if any DMA is
- * running on that channel).
- */
-int MCD_pauseDma (int channel);
-
-/*
- * MCD_resumeDma() resumes the DMA on a given channel (if any DMA is
- * running on that channel).
- */
-int MCD_resumeDma (int channel);
-
-/*
- * MCD_csumQuery provides the checksum/CRC after performing a non-chained DMA
- */
-int MCD_csumQuery (int channel, u32 *csum);
-
-/*
- * MCD_getCodeSize provides the packed size required by the microcoded task
- * and structures.
- */
-int MCD_getCodeSize(void);
-
-/*
- * MCD_getVersion provides a pointer to a version string and returns a
- * version number.
- */
-int MCD_getVersion(char **longVersion);
-
-/* macro for setting a location in the variable table */
-#define MCD_SET_VAR(taskTab,idx,value) ((u32 *)(taskTab)->varTab)[idx] = value
- /* Note that MCD_SET_VAR() is invoked many times in firing up a DMA function,
- so I'm avoiding surrounding it with "do {} while(0)" */
-
-#endif /* DEFINESONLY */
-
-#endif /* _MCD_API_H */
diff --git a/arch/m68k/mach-mcfv4e/include/proc/mcdapi/MCD_progCheck.h b/arch/m68k/mach-mcfv4e/include/proc/mcdapi/MCD_progCheck.h
deleted file mode 100644
index a536f147c1..0000000000
--- a/arch/m68k/mach-mcfv4e/include/proc/mcdapi/MCD_progCheck.h
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * This file is autogenerated. Do not change .
- */
-#define CURRBD 4
-#define DCOUNT 6
-#define DESTPTR 5
-#define SRCPTR 7
diff --git a/arch/m68k/mach-mcfv4e/include/proc/mcdapi/MCD_tasksInit.h b/arch/m68k/mach-mcfv4e/include/proc/mcdapi/MCD_tasksInit.h
deleted file mode 100644
index 6b19d0262b..0000000000
--- a/arch/m68k/mach-mcfv4e/include/proc/mcdapi/MCD_tasksInit.h
+++ /dev/null
@@ -1,66 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Declaration for the MCD tasks. Do not edit.
- */
-#ifndef MCD_TSK_INIT_H
-#define MCD_TSK_INIT_H 1
-
-/*
- * Do not edit!
- */
-
-/*
- * Task 0
- */
-void MCD_startDmaChainNoEu(int *currBD, short srcIncr, short destIncr, int xferSize, short xferSizeIncr, int *cSave, volatile TaskTableEntry *taskTable, int channel);
-
-
-/*
- * Task 1
- */
-void MCD_startDmaSingleNoEu(char *srcAddr, short srcIncr, char *destAddr, short destIncr, int dmaSize, short xferSizeIncr, int flags, int *currBD, int *cSave, volatile TaskTableEntry *taskTable, int channel);
-
-
-/*
- * Task 2
- */
-void MCD_startDmaChainEu(int *currBD, short srcIncr, short destIncr, int xferSize, short xferSizeIncr, int *cSave, volatile TaskTableEntry *taskTable, int channel);
-
-
-/*
- * Task 3
- */
-void MCD_startDmaSingleEu(char *srcAddr, short srcIncr, char *destAddr, short destIncr, int dmaSize, short xferSizeIncr, int flags, int *currBD, int *cSave, volatile TaskTableEntry *taskTable, int channel);
-
-
-/*
- * Task 4
- */
-void MCD_startDmaENetRcv(char *bDBase, char *currBD, char *rcvFifoPtr, volatile TaskTableEntry *taskTable, int channel);
-
-
-/*
- * Task 5
- */
-void MCD_startDmaENetXmit(char *bDBase, char *currBD, char *xmitFifoPtr, volatile TaskTableEntry *taskTable, int channel);
-
-#endif /* MCD_TSK_INIT_H */
diff --git a/arch/m68k/mach-mcfv4e/include/proc/net/eth.h b/arch/m68k/mach-mcfv4e/include/proc/net/eth.h
deleted file mode 100644
index e86d0646c4..0000000000
--- a/arch/m68k/mach-mcfv4e/include/proc/net/eth.h
+++ /dev/null
@@ -1,70 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Declaration for for Ethernet Frames.
- */
-
-#ifndef _ETH_H
-#define _ETH_H
-
-
-/* Ethernet standard lengths in bytes*/
-#define ETH_ADDR_LEN (6)
-#define ETH_TYPE_LEN (2)
-#define ETH_CRC_LEN (4)
-#define ETH_MAX_DATA (1500)
-#define ETH_MIN_DATA (46)
-#define ETH_HDR_LEN (ETH_ADDR_LEN * 2 + ETH_TYPE_LEN)
-
-/* Defined Ethernet Frame Types */
-#define ETH_FRM_IP (0x0800)
-#define ETH_FRM_ARP (0x0806)
-#define ETH_FRM_RARP (0x8035)
-#define ETH_FRM_TEST (0xA5A5)
-
-/* Maximum and Minimum Ethernet Frame Sizes */
-#define ETH_MAX_FRM (ETH_HDR_LEN + ETH_MAX_DATA + ETH_CRC_LEN)
-#define ETH_MIN_FRM (ETH_HDR_LEN + ETH_MIN_DATA + ETH_CRC_LEN)
-#define ETH_MTU (ETH_HDR_LEN + ETH_MAX_DATA)
-
-/* Ethernet Addresses */
-typedef uint8_t ETH_ADDR[ETH_ADDR_LEN];
-
-/* 16-bit Ethernet Frame Type, ie. Protocol */
-typedef uint16_t ETH_FRM_TYPE;
-
-/* Ethernet Frame Header definition */
-typedef struct
-{
- ETH_ADDR dest;
- ETH_ADDR src;
- ETH_FRM_TYPE type;
-} ETH_HDR;
-
-/* Ethernet Frame definition */
-typedef struct
-{
- ETH_HDR head;
- uint8_t* data;
-} ETH_FRAME;
-
-
-#endif /* _ETH_H */
diff --git a/arch/m68k/mach-mcfv4e/include/proc/net/nbuf.h b/arch/m68k/mach-mcfv4e/include/proc/net/nbuf.h
deleted file mode 100644
index 8b6a89c27d..0000000000
--- a/arch/m68k/mach-mcfv4e/include/proc/net/nbuf.h
+++ /dev/null
@@ -1,88 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Definitions for network buffer management
- */
-
-#ifndef _MCFV4E_NBUF_H_
-#define _MCFV4E_NBUF_H_
-
-/*
- * Include the Queue structure definitions
- */
-#include "queue.h"
-
-/*
- * Number of network buffers to use
- */
-#define NBUF_MAX 30
-
-/*
- * Size of each buffer in bytes
- */
-#ifndef NBUF_SZ
-#define NBUF_SZ 1520
-#endif
-
-/*
- * Defines to identify all the buffer queues
- * - FREE must always be defined as 0
- */
-#define NBUF_FREE 0 /* available buffers */
-#define NBUF_TX_RING 1 /* buffers in the Tx BD ring */
-#define NBUF_RX_RING 2 /* buffers in the Rx BD ring */
-#define NBUF_SCRATCH 3 /* misc */
-#define NBUF_MAXQ 4 /* total number of queueus */
-
-/*
- * Buffer Descriptor Format
- *
- * Fields:
- * next Pointer to next node in the queue
- * data Pointer to the data buffer
- * offset Index into buffer
- * length Remaining bytes in buffer from (data + offset)
- */
-typedef struct
-{
- QNODE node;
- uint8_t *data;
- uint16_t offset;
- uint16_t length;
-} NBUF;
-
-/*
- * Functions to manipulate the network buffers.
- */
-int nbuf_init(void);
-void nbuf_flush(void);
-
-NBUF * nbuf_alloc (void);
-void nbuf_free(NBUF *);
-
-NBUF *nbuf_remove(int);
-void nbuf_add(int, NBUF *);
-
-void nbuf_reset(void);
-void nbuf_debug_dump(void);
-
-
-#endif /* _MCFV4E_NBUF_H_ */
diff --git a/arch/m68k/mach-mcfv4e/include/proc/net/net.h b/arch/m68k/mach-mcfv4e/include/proc/net/net.h
deleted file mode 100644
index d6877596b6..0000000000
--- a/arch/m68k/mach-mcfv4e/include/proc/net/net.h
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Network definitions and prototypes for dBUG.
- */
-
-#ifndef _MCFV4E_NET_H
-#define _MCFV4E_NET_H
-
-/*
- * Include information and prototypes for all protocols
- */
-#include "eth.h"
-#include "nbuf.h"
-
-int netif_init(int channel);
-int netif_setup(int channel);
-int netif_done(int channel);
-
-#endif /* _MCFV4E_NET_H */
-
diff --git a/arch/m68k/mach-mcfv4e/include/proc/net/queue.h b/arch/m68k/mach-mcfv4e/include/proc/net/queue.h
deleted file mode 100644
index d5c13f8a50..0000000000
--- a/arch/m68k/mach-mcfv4e/include/proc/net/queue.h
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Implement a first in, first out linked list
- */
-#ifndef _QUEUE_H_
-#define _QUEUE_H_
-
-/*
- * Individual queue node
- */
-typedef struct NODE
-{
- struct NODE *next;
-} QNODE;
-
-/*
- * Queue Struture - linked list of qentry items
- */
-typedef struct
-{
- QNODE *head;
- QNODE *tail;
-} QUEUE;
-
-/*
- * Functions provided by queue.c
- */
-void queue_init(QUEUE *);
-int queue_isempty(QUEUE *);
-void queue_add(QUEUE *, QNODE *);
-QNODE* queue_remove(QUEUE *);
-QNODE* queue_peek(QUEUE *);
-void queue_move(QUEUE *, QUEUE *);
-
-#endif /* _QUEUE_H_ */
diff --git a/arch/m68k/mach-mcfv4e/include/proc/processor.h b/arch/m68k/mach-mcfv4e/include/proc/processor.h
deleted file mode 100644
index 4f196bda9b..0000000000
--- a/arch/m68k/mach-mcfv4e/include/proc/processor.h
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Coldfire V4e processor specific defines
- */
-
-/* Empty dummy FIXME */
-
-/* interrupt management */
-
-void mcf_interrupts_initialize (void);
-int mcf_interrupts_register_handler (int vector, int (*handler)(void *, void *), void *hdev, void *harg);
-void mcf_interrupts_remove_handler (int (*handler)(void *, void *));
-int mcf_execute_irq_handler (struct pt_regs *pt_regs,int);
-
diff --git a/arch/m68k/mach-mcfv4e/include/proc/ptrace.h b/arch/m68k/mach-mcfv4e/include/proc/ptrace.h
deleted file mode 100644
index 5e120596d2..0000000000
--- a/arch/m68k/mach-mcfv4e/include/proc/ptrace.h
+++ /dev/null
@@ -1,119 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Declaration and defines for M68k register frames
- */
-#ifndef __ASM_PROC_PTRACE_H
-#define __ASM_PROC_PTRACE_H
-
-#define TRACE_FLAG 0x8000
-#define SVR_MODE 0x2000
-#define MODE_MASK 0x2000
-#define MASTER_FLAG 0x1000
-#define IRQ_MASK 0x0700
-#define CC_MASK 0x00FF
-
-#define CC_X_BIT 0x0010
-#define CC_N_BIT 0x0008
-#define CC_Z_BIT 0x0004
-#define CC_V_BIT 0x0002
-#define CC_C_BIT 0x0001
-
-#define PCMASK 0x0
-
-#ifndef __ASSEMBLY__
-
-/* this struct defines the way the registers are stored on the
- stack during a system call. */
-
-struct pt_regs {
- long uregs[37];
-};
-#define M68K_sp uregs[37]
-#define M68K_sr uregs[36]
-#define M68K_pc uregs[35]
-#define M68K_fpiar uregs[34]
-#define M68K_fpsr uregs[33]
-#define M68K_fpcr uregs[32]
-
-#define M68K_fp7 uregs[30]
-#define M68K_fp6 uregs[28]
-#define M68K_fp5 uregs[26]
-#define M68K_fp4 uregs[24]
-#define M68K_fp3 uregs[22]
-#define M68K_fp2 uregs[20]
-#define M68K_fp1 uregs[18]
-#define M68K_fp0 uregs[16]
-
-#define M68K_a7 uregs[15]
-#define M68K_a6 uregs[14]
-#define M68K_a5 uregs[13]
-#define M68K_a4 uregs[12]
-#define M68K_a3 uregs[11]
-#define M68K_a2 uregs[10]
-#define M68K_a1 uregs[ 9]
-#define M68K_a0 uregs[ 8]
-#define M68K_d7 uregs[ 7]
-#define M68K_d6 uregs[ 6]
-#define M68K_d5 uregs[ 5]
-#define M68K_d4 uregs[ 4]
-#define M68K_d3 uregs[ 3]
-#define M68K_d2 uregs[ 2]
-#define M68K_d1 uregs[ 1]
-#define M68K_d0 uregs[ 0]
-
-
-#ifdef __KERNEL__
-
-#define user_mode(regs) \
- (((regs)->M68K_sr & SVR_MODE) == 0)
-
-#define processor_mode(regs) \
- ((regs)->M68K_sr & SVR_MODE)
-
-#define interrupts_enabled(regs) \
- (!((regs)->M68K_sr & IRQ_MASK))
-
-#define condition_codes(regs) \
- ((regs)->M68K_sr & CC_MASK)
-
-/* Are the current registers suitable for user mode?
- * (used to maintain security in signal handlers)
- */
-static inline int valid_user_regs(struct pt_regs *regs)
-{
- if ((regs->M68K_sr & SVR_MODE) == 0 &&
- (regs->M68K_sr & IRQ_MASK) == 7)
- return 1;
-
- /*
- * Force SR to something logical...
- */
- regs->M68K_sr &= ~(CC_MASK);
-
- return 0;
-}
-
-#endif /* __KERNEL__ */
-
-#endif /* __ASSEMBLY__ */
-
-#endif
diff --git a/arch/m68k/mach-mcfv4e/mcdapi/MCD_dmaApi.c b/arch/m68k/mach-mcfv4e/mcdapi/MCD_dmaApi.c
deleted file mode 100644
index 60e2b6dd76..0000000000
--- a/arch/m68k/mach-mcfv4e/mcdapi/MCD_dmaApi.c
+++ /dev/null
@@ -1,907 +0,0 @@
-/*
- * File: MCD_dmaApi.c
- * Purpose: Main C file for multi-channel DMA API.
- *
- * Notes:
- */
-
-#include <asm/types.h>
-#include <proc/mcdapi/MCD_dma.h>
-#include <proc/mcdapi/MCD_tasksInit.h>
-#include <proc/mcdapi/MCD_progCheck.h>
-
-/*
- * This is an API-internal pointer to the DMA's registers
- */
-dmaRegs *MCD_dmaBar;
-
-/*
- * These are the real and model task tables as generated by the
- * build process
- */
-extern TaskTableEntry MCD_realTaskTableSrc[NCHANNELS];
-extern TaskTableEntry MCD_modelTaskTableSrc[NUMOFVARIANTS];
-
-/*
- * However, this (usually) gets relocated to on-chip SRAM, at which
- * point we access them as these tables
- */
-volatile TaskTableEntry *MCD_taskTable;
-TaskTableEntry *MCD_modelTaskTable;
-
-
-/*
- * MCD_chStatus[] is an array of status indicators for remembering
- * whether a DMA has ever been attempted on each channel, pausing
- * status, etc.
- */
-static int MCD_chStatus[NCHANNELS] =
-{
- MCD_NO_DMA, MCD_NO_DMA, MCD_NO_DMA, MCD_NO_DMA,
- MCD_NO_DMA, MCD_NO_DMA, MCD_NO_DMA, MCD_NO_DMA,
- MCD_NO_DMA, MCD_NO_DMA, MCD_NO_DMA, MCD_NO_DMA,
- MCD_NO_DMA, MCD_NO_DMA, MCD_NO_DMA, MCD_NO_DMA
-};
-
-/*
- * Prototypes for local functions
- */
-static void MCD_memcpy (int *dest, int *src, u32 size);
-static void MCD_resmActions (int channel);
-
-/*
- * Buffer descriptors used for storage of progress info for single Dmas
- * Also used as storage for the DMA for CRCs for single DMAs
- * Otherwise, the DMA does not parse these buffer descriptors
- */
-#ifdef MCD_INCLUDE_EU
-extern MCD_bufDesc MCD_singleBufDescs[NCHANNELS];
-#else
-MCD_bufDesc MCD_singleBufDescs[NCHANNELS];
-#endif
-MCD_bufDesc *MCD_relocBuffDesc;
-
-
-/*
- * Defines for the debug control register's functions
- */
-#define DBG_CTL_COMP1_TASK (0x00002000) /* have comparator 1 look for a task # */
-#define DBG_CTL_ENABLE (DBG_CTL_AUTO_ARM | \
- DBG_CTL_BREAK | \
- DBG_CTL_INT_BREAK | \
- DBG_CTL_COMP1_TASK)
-#define DBG_CTL_DISABLE (DBG_CTL_AUTO_ARM | \
- DBG_CTL_INT_BREAK | \
- DBG_CTL_COMP1_TASK)
-#define DBG_KILL_ALL_STAT (0xFFFFFFFF)
-
-/*
- * Offset to context save area where progress info is stored
- */
-#define CSAVE_OFFSET 10
-
-/*
- * Defines for Byte Swapping
- */
-#define MCD_BYTE_SWAP_KILLER 0xFFF8888F
-#define MCD_NO_BYTE_SWAP_ATALL 0x00040000
-
-/*
- * Execution Unit Identifiers
- */
-#define MAC 0 /* legacy - not used */
-#define LUAC 1 /* legacy - not used */
-#define CRC 2 /* legacy - not used */
-#define LURC 3 /* Logic Unit with CRC */
-
-/*
- * Task Identifiers
- */
-#define TASK_CHAINNOEU 0
-#define TASK_SINGLENOEU 1
-#ifdef MCD_INCLUDE_EU
-#define TASK_CHAINEU 2
-#define TASK_SINGLEEU 3
-#define TASK_FECRX 4
-#define TASK_FECTX 5
-#else
-#define TASK_CHAINEU 0
-#define TASK_SINGLEEU 1
-#define TASK_FECRX 2
-#define TASK_FECTX 3
-#endif
-
-/*
- * Structure to remember which variant is on which channel
- * TBD- need this?
- */
-typedef struct MCD_remVariants_struct MCD_remVariant;
-struct MCD_remVariants_struct
-{
- int remDestRsdIncr[NCHANNELS]; /* -1,0,1 */
- int remSrcRsdIncr[NCHANNELS]; /* -1,0,1 */
- s16 remDestIncr[NCHANNELS]; /* DestIncr */
- s16 remSrcIncr[NCHANNELS]; /* srcIncr */
- u32 remXferSize[NCHANNELS]; /* xferSize */
-};
-
-/*
- * Structure to remember the startDma parameters for each channel
- */
-MCD_remVariant MCD_remVariants;
-
-/*
- * Function: MCD_initDma
- * Purpose: Initializes the DMA API by setting up a pointer to the DMA
- * registers, relocating and creating the appropriate task
- * structures, and setting up some global settings
- * Arguments:
- * dmaBarAddr - pointer to the multichannel DMA registers
- * taskTableDest - location to move DMA task code and structs to
- * flags - operational parameters
- * Return Value:
- * MCD_TABLE_UNALIGNED if taskTableDest is not 512-byte aligned
- * MCD_OK otherwise
- */
-extern u32 MCD_funcDescTab0[];
-
-int MCD_initDma (dmaRegs *dmaBarAddr, void *taskTableDest, u32 flags)
-{
- int i;
- TaskTableEntry *entryPtr;
-
- /* setup the local pointer to register set */
- MCD_dmaBar = dmaBarAddr;
-
- /* do we need to move/create a task table */
- if ((flags & MCD_RELOC_TASKS) != 0)
- {
- int fixedSize;
- u32 *fixedPtr;
- /*int *tablePtr = taskTableDest;TBD*/
- int varTabsOffset, funcDescTabsOffset, contextSavesOffset;
- int taskDescTabsOffset;
- int taskTableSize, varTabsSize, funcDescTabsSize, contextSavesSize;
- int taskDescTabSize;
-
- int i;
-
- /* check if physical address is aligned on 512 byte boundary */
- if (((u32)taskTableDest & 0x000001ff) != 0)
- return(MCD_TABLE_UNALIGNED);
-
- MCD_taskTable = taskTableDest; /* set up local pointer to task Table */
-
- /*
- * Create a task table:
- * - compute aligned base offsets for variable tables and
- * function descriptor tables, then
- * - loop through the task table and setup the pointers
- * - copy over model task table with the the actual task descriptor
- * tables
- */
-
- taskTableSize = NCHANNELS * sizeof(TaskTableEntry);
- /* align variable tables to size */
- varTabsOffset = taskTableSize + (u32)taskTableDest;
- if ((varTabsOffset & (VAR_TAB_SIZE - 1)) != 0)
- varTabsOffset = (varTabsOffset + VAR_TAB_SIZE) & (~VAR_TAB_SIZE);
- /* align function descriptor tables */
- varTabsSize = NCHANNELS * VAR_TAB_SIZE;
- funcDescTabsOffset = varTabsOffset + varTabsSize;
-
- if ((funcDescTabsOffset & (FUNCDESC_TAB_SIZE - 1)) != 0)
- funcDescTabsOffset = (funcDescTabsOffset + FUNCDESC_TAB_SIZE) &
- (~FUNCDESC_TAB_SIZE);
-
- funcDescTabsSize = FUNCDESC_TAB_NUM * FUNCDESC_TAB_SIZE;
- contextSavesOffset = funcDescTabsOffset + funcDescTabsSize;
- contextSavesSize = (NCHANNELS * CONTEXT_SAVE_SIZE);
- fixedSize = taskTableSize + varTabsSize + funcDescTabsSize +
- contextSavesSize;
-
- /* zero the thing out */
- fixedPtr = (u32 *)taskTableDest;
- for (i = 0;i<(fixedSize/4);i++)
- fixedPtr[i] = 0;
-
- entryPtr = (TaskTableEntry*)MCD_taskTable;
- /* set up fixed pointers */
- for (i = 0; i < NCHANNELS; i++)
- {
- entryPtr[i].varTab = (u32)varTabsOffset; /* update ptr to local value */
- entryPtr[i].FDTandFlags = (u32)funcDescTabsOffset | MCD_TT_FLAGS_DEF;
- entryPtr[i].contextSaveSpace = (u32)contextSavesOffset;
- varTabsOffset += VAR_TAB_SIZE;
-#ifdef MCD_INCLUDE_EU /* if not there is only one, just point to the same one */
- funcDescTabsOffset += FUNCDESC_TAB_SIZE;
-#endif
- contextSavesOffset += CONTEXT_SAVE_SIZE;
- }
- /* copy over the function descriptor table */
- for ( i = 0; i < FUNCDESC_TAB_NUM; i++)
- {
- MCD_memcpy((void*)(entryPtr[i].FDTandFlags & ~MCD_TT_FLAGS_MASK),
- (void*)MCD_funcDescTab0, FUNCDESC_TAB_SIZE);
- }
-
- /* copy model task table to where the context saves stuff leaves off*/
- MCD_modelTaskTable = (TaskTableEntry*)contextSavesOffset;
-
- MCD_memcpy ((void*)MCD_modelTaskTable, (void*)MCD_modelTaskTableSrc,
- NUMOFVARIANTS * sizeof(TaskTableEntry));
-
- entryPtr = MCD_modelTaskTable; /* point to local version of
- model task table */
- taskDescTabsOffset = (u32)MCD_modelTaskTable +
- (NUMOFVARIANTS * sizeof(TaskTableEntry));
-
- /* copy actual task code and update TDT ptrs in local model task table */
- for (i = 0; i < NUMOFVARIANTS; i++)
- {
- taskDescTabSize = entryPtr[i].TDTend - entryPtr[i].TDTstart + 4;
- MCD_memcpy ((void*)taskDescTabsOffset, (void*)entryPtr[i].TDTstart, taskDescTabSize);
- entryPtr[i].TDTstart = (u32)taskDescTabsOffset;
- taskDescTabsOffset += taskDescTabSize;
- entryPtr[i].TDTend = (u32)taskDescTabsOffset - 4;
- }
-#ifdef MCD_INCLUDE_EU /* Tack single DMA BDs onto end of code so API controls
- where they are since DMA might write to them */
- MCD_relocBuffDesc = (MCD_bufDesc*)(entryPtr[NUMOFVARIANTS - 1].TDTend + 4);
-#else /* DMA does not touch them so they can be wherever and we don't need to
- waste SRAM on them */
- MCD_relocBuffDesc = MCD_singleBufDescs;
-#endif
- }
- else
- {
- /* point the would-be relocated task tables and the
- buffer descriptors to the ones the linker generated */
-
- if (((u32)MCD_realTaskTableSrc & 0x000001ff) != 0)
- return(MCD_TABLE_UNALIGNED);
-
- /* need to add code to make sure that every thing else is aligned properly TBD*/
- /* this is problematic if we init more than once or after running tasks,
- need to add variable to see if we have aleady init'd */
- entryPtr = MCD_realTaskTableSrc;
- for (i = 0; i < NCHANNELS; i++)
- {
- if (((entryPtr[i].varTab & (VAR_TAB_SIZE - 1)) != 0) ||
- ((entryPtr[i].FDTandFlags & (FUNCDESC_TAB_SIZE - 1)) != 0))
- return(MCD_TABLE_UNALIGNED);
- }
-
- MCD_taskTable = MCD_realTaskTableSrc;
- MCD_modelTaskTable = MCD_modelTaskTableSrc;
- MCD_relocBuffDesc = MCD_singleBufDescs;
- }
-
-
- /* Make all channels as totally inactive, and remember them as such: */
-
- MCD_dmaBar->taskbar = (u32) MCD_taskTable;
- for (i = 0; i < NCHANNELS; i++)
- {
- MCD_dmaBar->taskControl[i] = 0x0;
- MCD_chStatus[i] = MCD_NO_DMA;
- }
-
- /* Set up pausing mechanism to inactive state: */
- MCD_dmaBar->debugComp1 = 0; /* no particular values yet for either comparator registers */
- MCD_dmaBar->debugComp2 = 0;
- MCD_dmaBar->debugControl = DBG_CTL_DISABLE;
- MCD_dmaBar->debugStatus = DBG_KILL_ALL_STAT;
-
- /* enable or disable commbus prefetch, really need an ifdef or
- something to keep from trying to set this in the 8220 */
- if ((flags & MCD_COMM_PREFETCH_EN) != 0)
- MCD_dmaBar->ptdControl &= ~PTD_CTL_COMM_PREFETCH;
- else
- MCD_dmaBar->ptdControl |= PTD_CTL_COMM_PREFETCH;
-
- return(MCD_OK);
-}
-
-/* Function: MCD_dmaStatus
- * Purpose: Returns the status of the DMA on the requested channel
- * Arguments: channel - channel number
- * Returns: Predefined status indicators
- */
-int MCD_dmaStatus (int channel)
-{
- u16 tcrValue;
-
- if((channel < 0) || (channel >= NCHANNELS))
- return(MCD_CHANNEL_INVALID);
-
- tcrValue = MCD_dmaBar->taskControl[channel];
- if ((tcrValue & TASK_CTL_EN) == 0)
- { /* nothing running */
- /* if last reported with task enabled */
- if ( MCD_chStatus[channel] == MCD_RUNNING
- || MCD_chStatus[channel] == MCD_IDLE)
- MCD_chStatus[channel] = MCD_DONE;
- }
- else /* something is running */
- {
- /* There are three possibilities: paused, running or idle. */
- if ( MCD_chStatus[channel] == MCD_RUNNING
- || MCD_chStatus[channel] == MCD_IDLE)
- {
- MCD_dmaBar->ptdDebug = PTD_DBG_TSK_VLD_INIT;
- /* This register is selected to know which initiator is
- actually asserted. */
- if ((MCD_dmaBar->ptdDebug >> channel ) & 0x1 )
- MCD_chStatus[channel] = MCD_RUNNING;
- else
- MCD_chStatus[channel] = MCD_IDLE;
- /* do not change the status if it is already paused. */
- }
- }
- return MCD_chStatus[channel];
-}
-
-/* Function: MCD_startDma
- * Ppurpose: Starts a particular kind of DMA
- * Arguments: see below
- * Returns: MCD_CHANNEL_INVALID if channel is invalid, else MCD_OK
- */
-
-int MCD_startDma (
- int channel, /* the channel on which to run the DMA */
- s8 *srcAddr, /* the address to move data from, or physical buffer-descriptor address */
- s16 srcIncr, /* the amount to increment the source address per transfer */
- s8 *destAddr, /* the address to move data to */
- s16 destIncr, /* the amount to increment the destination address per transfer */
- u32 dmaSize, /* the number of bytes to transfer independent of the transfer size */
- u32 xferSize, /* the number bytes in of each data movement (1, 2, or 4) */
- u32 initiator, /* what device initiates the DMA */
- int priority, /* priority of the DMA */
- u32 flags, /* flags describing the DMA */
- u32 funcDesc /* a description of byte swapping, bit swapping, and CRC actions */
-#ifdef MCD_NEED_ADDR_TRANS
- s8 *srcAddrVirt /* virtual buffer descriptor address TBD*/
-#endif
-)
-{
- int srcRsdIncr, destRsdIncr;
- int *cSave;
- short xferSizeIncr;
- int tcrCount = 0;
-#ifdef MCD_INCLUDE_EU
- u32 *realFuncArray;
-#endif
-
- if((channel < 0) || (channel >= NCHANNELS))
- return(MCD_CHANNEL_INVALID);
-
- /* tbd - need to determine the proper response to a bad funcDesc when not
- including EU functions, for now, assign a benign funcDesc, but maybe
- should return an error */
-#ifndef MCD_INCLUDE_EU
- funcDesc = MCD_FUNC_NOEU1;
-#endif
-
-#ifdef MCD_DEBUG
-printf("startDma:Setting up params\n");
-#endif
- /* Set us up for task-wise priority. We don't technically need to do this on every start, but
- since the register involved is in the same longword as other registers that users are in control
- of, setting it more than once is probably preferable. That since the documentation doesn't seem
- to be completely consistent about the nature of the PTD control register. */
- MCD_dmaBar->ptdControl |= (u16) 0x8000;
-#if 1 /* Not sure what we need to keep here rtm TBD */
- /* Calculate additional parameters to the regular DMA calls. */
- srcRsdIncr = srcIncr < 0 ? -1 : (srcIncr > 0 ? 1 : 0);
- destRsdIncr = destIncr < 0 ? -1 : (destIncr > 0 ? 1 : 0);
-
- xferSizeIncr = (xferSize & 0xffff) | 0x20000000;
-
- /* Remember for each channel which variant is running. */
- MCD_remVariants.remSrcRsdIncr[channel] = srcRsdIncr;
- MCD_remVariants.remDestRsdIncr[channel] = destRsdIncr;
- MCD_remVariants.remDestIncr[channel] = destIncr;
- MCD_remVariants.remSrcIncr[channel] = srcIncr;
- MCD_remVariants.remXferSize[channel] = xferSize;
-#endif
-
- cSave = (int*)(MCD_taskTable[channel].contextSaveSpace) + CSAVE_OFFSET + CURRBD;
-
-#ifdef MCD_INCLUDE_EU /* may move this to EU specific calls */
- realFuncArray = (u32 *) (MCD_taskTable[channel].FDTandFlags & 0xffffff00);
- /* Modify the LURC's normal and byte-residue-loop functions according to parameter. */
- realFuncArray[(LURC*16)] = xferSize == 4 ?
- funcDesc : xferSize == 2 ?
- funcDesc & 0xfffff00f : funcDesc & 0xffff000f;
- realFuncArray[(LURC*16+1)] = (funcDesc & MCD_BYTE_SWAP_KILLER) | MCD_NO_BYTE_SWAP_ATALL;
-#endif
- /* Write the initiator field in the TCR, and also set the initiator-hold
- bit. Note that,due to a hardware quirk, this could collide with an
- MDE access to the initiator-register file, so we have to verify that the write
- reads back correctly. */
-
- MCD_dmaBar->taskControl[channel] =
- (initiator << 8) | TASK_CTL_HIPRITSKEN | TASK_CTL_HLDINITNUM;
-
- while(((MCD_dmaBar->taskControl[channel] & 0x1fff) !=
- ((initiator << 8) | TASK_CTL_HIPRITSKEN | TASK_CTL_HLDINITNUM)) &&
- (tcrCount < 1000))
- {
- tcrCount++;
- /*MCD_dmaBar->ptd_tcr[channel] = (initiator << 8) | 0x0020;*/
- MCD_dmaBar->taskControl[channel] =
- (initiator << 8) | TASK_CTL_HIPRITSKEN | TASK_CTL_HLDINITNUM;
- }
-
- MCD_dmaBar->priority[channel] = (u8)priority & PRIORITY_PRI_MASK;
- /* should be albe to handle this stuff with only one write to ts reg - tbd */
- if (channel < 8 && channel >= 0)
- {
- MCD_dmaBar->taskSize0 &= ~(0xf << (7-channel)*4);
- MCD_dmaBar->taskSize0 |= (xferSize & 3) << (((7 - channel)*4) + 2);
- MCD_dmaBar->taskSize0 |= (xferSize & 3) << ((7 - channel)*4);
- }
- else
- {
- MCD_dmaBar->taskSize1 &= ~(0xf << (15-channel)*4);
- MCD_dmaBar->taskSize1 |= (xferSize & 3) << (((15 - channel)*4) + 2);
- MCD_dmaBar->taskSize1 |= (xferSize & 3) << ((15 - channel)*4);
- }
-
- /* setup task table flags/options which mostly control the line buffers */
- MCD_taskTable[channel].FDTandFlags &= ~MCD_TT_FLAGS_MASK;
- MCD_taskTable[channel].FDTandFlags |= (MCD_TT_FLAGS_MASK & flags);
-
- if (flags & MCD_FECTX_DMA)
- {
- /* TDTStart and TDTEnd */
- MCD_taskTable[channel].TDTstart = MCD_modelTaskTable[TASK_FECTX].TDTstart;
- MCD_taskTable[channel].TDTend = MCD_modelTaskTable[TASK_FECTX].TDTend;
- MCD_startDmaENetXmit(srcAddr, srcAddr, destAddr, MCD_taskTable, channel);
- }
- else if (flags & MCD_FECRX_DMA)
- {
- /* TDTStart and TDTEnd */
- MCD_taskTable[channel].TDTstart = MCD_modelTaskTable[TASK_FECRX].TDTstart;
- MCD_taskTable[channel].TDTend = MCD_modelTaskTable[TASK_FECRX].TDTend;
- MCD_startDmaENetRcv(srcAddr, srcAddr, destAddr, MCD_taskTable, channel);
- }
- else if(flags & MCD_SINGLE_DMA)
- {
- /* this buffer descriptor is used for storing off initial parameters for later
- progress query calculation and for the DMA to write the resulting checksum
- The DMA does not use this to determine how to operate, that info is passed
- with the init routine*/
- MCD_relocBuffDesc[channel].srcAddr = srcAddr;
- MCD_relocBuffDesc[channel].destAddr = destAddr;
- MCD_relocBuffDesc[channel].lastDestAddr = destAddr; /* definitely not its final value */
- MCD_relocBuffDesc[channel].dmaSize = dmaSize;
- MCD_relocBuffDesc[channel].flags = 0; /* not used */
- MCD_relocBuffDesc[channel].csumResult = 0; /* not used */
- MCD_relocBuffDesc[channel].next = 0; /* not used */
-
- /* Initialize the progress-querying stuff to show no progress:*/
- ((volatile int *)MCD_taskTable[channel].contextSaveSpace)[SRCPTR + CSAVE_OFFSET] = (int)srcAddr;
- ((volatile int *)MCD_taskTable[channel].contextSaveSpace)[DESTPTR + CSAVE_OFFSET] = (int)destAddr;
- ((volatile int *)MCD_taskTable[channel].contextSaveSpace)[DCOUNT + CSAVE_OFFSET] = 0;
- ((volatile int *)MCD_taskTable[channel].contextSaveSpace)[CURRBD + CSAVE_OFFSET] =
- (u32) &(MCD_relocBuffDesc[channel]);
- /* tbd - need to keep the user from trying to call the EU routine
- when MCD_INCLUDE_EU is not defined */
- if( funcDesc == MCD_FUNC_NOEU1 || funcDesc == MCD_FUNC_NOEU2)
- {
- /* TDTStart and TDTEnd */
- MCD_taskTable[channel].TDTstart = MCD_modelTaskTable[TASK_SINGLENOEU].TDTstart;
- MCD_taskTable[channel].TDTend = MCD_modelTaskTable[TASK_SINGLENOEU].TDTend;
- MCD_startDmaSingleNoEu(srcAddr, srcIncr, destAddr, destIncr, dmaSize,
- xferSizeIncr, flags, (int *)&(MCD_relocBuffDesc[channel]), cSave,
- MCD_taskTable, channel);
- }
- else
- {
- /* TDTStart and TDTEnd */
- MCD_taskTable[channel].TDTstart = MCD_modelTaskTable[TASK_SINGLEEU].TDTstart;
- MCD_taskTable[channel].TDTend = MCD_modelTaskTable[TASK_SINGLEEU].TDTend;
- MCD_startDmaSingleEu(srcAddr, srcIncr, destAddr, destIncr, dmaSize,
- xferSizeIncr, flags, (int *)&(MCD_relocBuffDesc[channel]), cSave,
- MCD_taskTable, channel);
- }
- }
- else
- { /* chained DMAS */
- /* Initialize the progress-querying stuff to show no progress:*/
-#if 1 /* (!defined(MCD_NEED_ADDR_TRANS)) */
- ((volatile int *)MCD_taskTable[channel].contextSaveSpace)[SRCPTR + CSAVE_OFFSET]
- = (int)((MCD_bufDesc*) srcAddr)->srcAddr;
- ((volatile int *)MCD_taskTable[channel].contextSaveSpace)[DESTPTR + CSAVE_OFFSET]
- = (int)((MCD_bufDesc*) srcAddr)->destAddr;
-#else /* if using address translation, need the virtual addr of the first buffdesc */
- ((volatile int *)MCD_taskTable[channel].contextSaveSpace)[SRCPTR + CSAVE_OFFSET]
- = (int)((MCD_bufDesc*) srcAddrVirt)->srcAddr;
- ((volatile int *)MCD_taskTable[channel].contextSaveSpace)[DESTPTR + CSAVE_OFFSET]
- = (int)((MCD_bufDesc*) srcAddrVirt)->destAddr;
-#endif
- ((volatile int *)MCD_taskTable[channel].contextSaveSpace)[DCOUNT + CSAVE_OFFSET] = 0;
- ((volatile int *)MCD_taskTable[channel].contextSaveSpace)[CURRBD + CSAVE_OFFSET] = (u32) srcAddr;
-
- if( funcDesc == MCD_FUNC_NOEU1 || funcDesc == MCD_FUNC_NOEU2)
- {
- /*TDTStart and TDTEnd*/
- MCD_taskTable[channel].TDTstart = MCD_modelTaskTable[TASK_CHAINNOEU].TDTstart;
- MCD_taskTable[channel].TDTend = MCD_modelTaskTable[TASK_CHAINNOEU].TDTend;
- MCD_startDmaChainNoEu((int *)srcAddr, srcIncr, destIncr, xferSize,
- xferSizeIncr, cSave, MCD_taskTable, channel);
- }
- else
- {
- /*TDTStart and TDTEnd*/
- MCD_taskTable[channel].TDTstart = MCD_modelTaskTable[TASK_CHAINEU].TDTstart;
- MCD_taskTable[channel].TDTend = MCD_modelTaskTable[TASK_CHAINEU].TDTend;
- MCD_startDmaChainEu((int *)srcAddr, srcIncr, destIncr, xferSize,
- xferSizeIncr, cSave, MCD_taskTable, channel);
- }
- }
- MCD_chStatus[channel] = MCD_IDLE;
- return(MCD_OK);
-}
-
-/* Function: MCD_XferProgrQuery
- * Purpose: Returns progress of DMA on requested channel
- * Arguments: channel - channel to retrieve progress for
- * progRep - pointer to user supplied MCD_XferProg struct
- * Returns: MCD_CHANNEL_INVALID if channel is invalid, else MCD_OK
- *
- * Notes:
- * MCD_XferProgrQuery() upon completing or after aborting a DMA, or
- * while the DMA is in progress, this function returns the first
- * DMA-destination address not (or not yet) used in the DMA. When
- * encountering a non-ready buffer descriptor, the information for
- * the last completed descriptor is returned.
- *
- * MCD_XferProgQuery() has to avoid the possibility of getting
- * partially-updated information in the event that we should happen
- * to query DMA progress just as the DMA is updating it. It does that
- * by taking advantage of the fact context is not saved frequently for
- * the most part. We therefore read it at least twice until we get the
- * same information twice in a row.
- *
- * Because a small, but not insignificant, amount of time is required
- * to write out the progress-query information, especially upon
- * completion of the DMA, it would be wise to guarantee some time lag
- * between successive readings of the progress-query information.
- */
-
-/*
- * How many iterations of the loop below to execute to stabilize values
- */
-#define STABTIME 0
-
-int MCD_XferProgrQuery (int channel, MCD_XferProg *progRep)
-{
- MCD_XferProg prevRep;
- int again; /* true if we are to try again to get consistent results */
- int i; /* used as a time-waste counter */
- int destDiffBytes; /* Total number of bytes that we think actually got xfered. */
- int numIterations; /* number of iterations */
- int bytesNotXfered; /* bytes that did not get xfered. */
- s8 *LWAlignedInitDestAddr, *LWAlignedCurrDestAddr;
- int subModVal, addModVal; /* Mode values to added and subtracted from the
- final destAddr */
-
- if((channel < 0) || (channel >= NCHANNELS))
- return(MCD_CHANNEL_INVALID);
-
- /* Read a trial value for the progress-reporting values*/
- prevRep.lastSrcAddr =
- (s8 *) ((volatile int*) MCD_taskTable[channel].contextSaveSpace)[SRCPTR + CSAVE_OFFSET];
- prevRep.lastDestAddr =
- (s8 *) ((volatile int*) MCD_taskTable[channel].contextSaveSpace)[DESTPTR + CSAVE_OFFSET];
- prevRep.dmaSize = ((volatile int*) MCD_taskTable[channel].contextSaveSpace)[DCOUNT + CSAVE_OFFSET];
- prevRep.currBufDesc =
- (MCD_bufDesc*) ((volatile int*) MCD_taskTable[channel].contextSaveSpace)[CURRBD + CSAVE_OFFSET];
- /* Repeatedly reread those values until they match previous values: */
- do {
- /* Waste a little bit of time to ensure stability: */
- for (i = 0; i < STABTIME; i++)
- i += i >> 2; /* make sure this loop does something so that it doesn't get optimized out */
- /* Check them again: */
- progRep->lastSrcAddr =
- (s8 *) ((volatile int*) MCD_taskTable[channel].contextSaveSpace)[SRCPTR + CSAVE_OFFSET];
- progRep->lastDestAddr =
- (s8 *) ((volatile int*) MCD_taskTable[channel].contextSaveSpace)[DESTPTR + CSAVE_OFFSET];
- progRep->dmaSize = ((volatile int*) MCD_taskTable[channel].contextSaveSpace)[DCOUNT + CSAVE_OFFSET];
- progRep->currBufDesc =
- (MCD_bufDesc*) ((volatile int*) MCD_taskTable[channel].contextSaveSpace)[CURRBD + CSAVE_OFFSET];
- /* See if they match: */
- if ( prevRep.lastSrcAddr != progRep->lastSrcAddr
- || prevRep.lastDestAddr != progRep->lastDestAddr
- || prevRep.dmaSize != progRep->dmaSize
- || prevRep.currBufDesc != progRep->currBufDesc)
- {
- /* If they don't match, remember previous values and try again:*/
- prevRep.lastSrcAddr = progRep->lastSrcAddr;
- prevRep.lastDestAddr = progRep->lastDestAddr;
- prevRep.dmaSize = progRep->dmaSize;
- prevRep.currBufDesc = progRep->currBufDesc;
- again = MCD_TRUE;
- }
- else
- again = MCD_FALSE;
- } while (again == MCD_TRUE);
-
-
- /* Update the dCount, srcAddr and destAddr */
- /* To calculate dmaCount, we consider destination address. C
- overs M1,P1,Z for destination */
- switch(MCD_remVariants.remDestRsdIncr[channel]) {
- case MINUS1:
- subModVal = ((int)progRep->lastDestAddr) & ((MCD_remVariants.remXferSize[channel]) - 1);
- addModVal = ((int)progRep->currBufDesc->destAddr) & ((MCD_remVariants.remXferSize[channel]) - 1);
- LWAlignedInitDestAddr = (progRep->currBufDesc->destAddr) - addModVal;
- LWAlignedCurrDestAddr = (progRep->lastDestAddr) - subModVal;
- destDiffBytes = LWAlignedInitDestAddr - LWAlignedCurrDestAddr;
- bytesNotXfered = (destDiffBytes/MCD_remVariants.remDestIncr[channel]) *
- ( MCD_remVariants.remDestIncr[channel]
- + MCD_remVariants.remXferSize[channel]);
- progRep->dmaSize = destDiffBytes - bytesNotXfered + addModVal - subModVal;
- break;
- case ZERO:
- progRep->lastDestAddr = progRep->currBufDesc->destAddr;
- break;
- case PLUS1:
- /* This value has to be subtracted from the final calculated dCount. */
- subModVal = ((int)progRep->currBufDesc->destAddr) & ((MCD_remVariants.remXferSize[channel]) - 1);
- /* These bytes are already in lastDestAddr. */
- addModVal = ((int)progRep->lastDestAddr) & ((MCD_remVariants.remXferSize[channel]) - 1);
- LWAlignedInitDestAddr = (progRep->currBufDesc->destAddr) - subModVal;
- LWAlignedCurrDestAddr = (progRep->lastDestAddr) - addModVal;
- destDiffBytes = (progRep->lastDestAddr - LWAlignedInitDestAddr);
- numIterations = ( LWAlignedCurrDestAddr - LWAlignedInitDestAddr)/MCD_remVariants.remDestIncr[channel];
- bytesNotXfered = numIterations *
- ( MCD_remVariants.remDestIncr[channel]
- - MCD_remVariants.remXferSize[channel]);
- progRep->dmaSize = destDiffBytes - bytesNotXfered - subModVal;
- break;
- default:
- break;
- }
-
- /* This covers M1,P1,Z for source */
- switch(MCD_remVariants.remSrcRsdIncr[channel]) {
- case MINUS1:
- progRep->lastSrcAddr =
- progRep->currBufDesc->srcAddr +
- ( MCD_remVariants.remSrcIncr[channel] *
- (progRep->dmaSize/MCD_remVariants.remXferSize[channel]));
- break;
- case ZERO:
- progRep->lastSrcAddr = progRep->currBufDesc->srcAddr;
- break;
- case PLUS1:
- progRep->lastSrcAddr =
- progRep->currBufDesc->srcAddr +
- ( MCD_remVariants.remSrcIncr[channel] *
- (progRep->dmaSize/MCD_remVariants.remXferSize[channel]));
- break;
- default: break;
- }
-
- return(MCD_OK);
-}
-
-/* MCD_resmActions() does the majority of the actions of a DMA resume.
- * It is called from MCD_killDma() and MCD_resumeDma(). It has to be
- * a separate function because the kill function has to negate the task
- * enable before resuming it, but the resume function has to do nothing
- * if there is no DMA on that channel (i.e., if the enable bit is 0).
- */
-static void MCD_resmActions (int channel)
-{
- MCD_dmaBar->debugControl = DBG_CTL_DISABLE;
- MCD_dmaBar->debugStatus = MCD_dmaBar->debugStatus;
- MCD_dmaBar->ptdDebug = PTD_DBG_TSK_VLD_INIT; /* This register is selected to know
- which initiator is actually asserted. */
- if((MCD_dmaBar->ptdDebug >> channel ) & 0x1)
- MCD_chStatus[channel] = MCD_RUNNING;
- else
- MCD_chStatus[channel] = MCD_IDLE;
-}
-
-/* Function: MCD_killDma
- * Purpose: Halt the DMA on the requested channel, without any
- * intention of resuming the DMA.
- * Arguments: channel - requested channel
- * Returns: MCD_CHANNEL_INVALID if channel is invalid, else MCD_OK
- *
- * Notes:
- * A DMA may be killed from any state, including paused state, and it
- * always goes to the MCD_HALTED state even if it is killed while in
- * the MCD_NO_DMA or MCD_IDLE states.
- */
-int MCD_killDma (int channel)
-{
- /* MCD_XferProg progRep; */
-
- if((channel < 0) || (channel >= NCHANNELS))
- return(MCD_CHANNEL_INVALID);
-
- MCD_dmaBar->taskControl[channel] = 0x0;
- MCD_resumeDma (channel);
- /*
- * This must be after the write to the TCR so that the task doesn't
- * start up again momentarily, and before the status assignment so
- * as to override whatever MCD_resumeDma() may do to the channel
- * status.
- */
- MCD_chStatus[channel] = MCD_HALTED;
-
- /*
- * Update the current buffer descriptor's lastDestAddr field
- *
- * MCD_XferProgrQuery (channel, &progRep);
- * progRep.currBufDesc->lastDestAddr = progRep.lastDestAddr;
- */
- return(MCD_OK);
-}
-
-/* Function: MCD_continDma
- * Purpose: Continue a DMA which as stopped due to encountering an
- * unready buffer descriptor.
- * Arguments: channel - channel to continue the DMA on
- * Returns: MCD_CHANNEL_INVALID if channel is invalid, else MCD_OK
- *
- * Notes:
- * This routine does not check to see if there is a task which can
- * be continued. Also this routine should not be used with single DMAs.
- */
-int MCD_continDma (int channel)
-{
- if((channel < 0) || (channel >= NCHANNELS))
- return(MCD_CHANNEL_INVALID);
-
- MCD_dmaBar->taskControl[channel] |= TASK_CTL_EN;
- MCD_chStatus[channel] = MCD_RUNNING;
-
- return(MCD_OK);
-}
-
-/*
- * MCD_pauseDma() and MCD_resumeDma() below use the DMA's debug unit
- * to freeze a task and resume it. We freeze a task by breakpointing
- * on the stated task. That is, not any specific place in the task,
- * but any time that task executes. In particular, when that task
- * executes, we want to freeze that task and only that task.
- *
- * The bits of the debug control register influence interrupts vs.
- * breakpoints as follows:
- * - Bits 14 and 0 enable or disable debug functions. If enabled, you
- * will get the interrupt but you may or may not get a breakpoint.
- * - Bits 2 and 1 decide whether you also get a breakpoint in addition
- * to an interrupt.
- *
- * The debug unit can do these actions in response to either internally
- * detected breakpoint conditions from the comparators, or in response
- * to the external breakpoint pin, or both.
- * - Bits 14 and 1 perform the above-described functions for
- * internally-generated conditions, i.e., the debug comparators.
- * - Bits 0 and 2 perform the above-described functions for external
- * conditions, i.e., the breakpoint external pin.
- *
- * Note that, although you "always" get the interrupt when you turn
- * the debug functions, the interrupt can nevertheless, if desired, be
- * masked by the corresponding bit in the PTD's IMR. Note also that
- * this means that bits 14 and 0 must enable debug functions before
- * bits 1 and 2, respectively, have any effect.
- *
- * NOTE: It's extremely important to not pause more than one DMA channel
- * at a time.
- ********************************************************************/
-
-/* Function: MCD_pauseDma
- * Purpose: Pauses the DMA on a given channel (if any DMA is running
- * on that channel).
- * Arguments: channel
- * Returns: MCD_CHANNEL_INVALID if channel is invalid, else MCD_OK
- */
-int MCD_pauseDma (int channel)
-{
- /* MCD_XferProg progRep; */
-
- if((channel < 0) || (channel >= NCHANNELS))
- return(MCD_CHANNEL_INVALID);
-
- if (MCD_dmaBar->taskControl[channel] & TASK_CTL_EN)
- {
- MCD_dmaBar->debugComp1 = channel;
- MCD_dmaBar->debugControl = DBG_CTL_ENABLE | (1 << (channel + 16));
- MCD_chStatus[channel] = MCD_PAUSED;
-
- /*
- * Update the current buffer descriptor's lastDestAddr field
- *
- * MCD_XferProgrQuery (channel, &progRep);
- * progRep.currBufDesc->lastDestAddr = progRep.lastDestAddr;
- */
- }
- return(MCD_OK);
-}
-
-/* Function: MCD_resumeDma
- * Purpose: Resumes the DMA on a given channel (if any DMA is
- * running on that channel).
- * Arguments: channel - channel on which to resume DMA
- * Returns: MCD_CHANNEL_INVALID if channel is invalid, else MCD_OK
- */
-int MCD_resumeDma (int channel)
-{
- if((channel < 0) || (channel >= NCHANNELS))
- return(MCD_CHANNEL_INVALID);
-
- if (MCD_dmaBar->taskControl[channel] & TASK_CTL_EN)
- MCD_resmActions (channel);
-
- return(MCD_OK);
-}
-
-/* Function: MCD_csumQuery
- * Purpose: Provide the checksum after performing a non-chained DMA
- * Arguments: channel - channel to report on
- * csum - pointer to where to write the checksum/CRC
- * Returns: MCD_ERROR if the channel is invalid, else MCD_OK
- *
- * Notes:
- *
- */
-int MCD_csumQuery (int channel, u32 *csum)
-{
-#ifdef MCD_INCLUDE_EU
- if((channel < 0) || (channel >= NCHANNELS))
- return(MCD_CHANNEL_INVALID);
-
- *csum = MCD_relocBuffDesc[channel].csumResult;
- return(MCD_OK);
-#else
- return(MCD_ERROR);
-#endif
-}
-
-/* Function: MCD_getCodeSize
- * Purpose: Provide the size requirements of the microcoded tasks
- * Returns: Size in bytes
- */
-int MCD_getCodeSize(void)
-{
-#ifdef MCD_INCLUDE_EU
- return(0x2b5c);
-#else
- return(0x173c);
-#endif
-}
-
-/* Function: MCD_getVersion
- * Purpose: Provide the version string and number
- * Arguments: longVersion - user supplied pointer to a pointer to a char
- * which points to the version string
- * Returns: Version number and version string (by reference)
- */
-char MCD_versionString[] = "Multi-channel DMA API Alpha v0.3 (2004-04-26)";
-#define MCD_REV_MAJOR 0x00
-#define MCD_REV_MINOR 0x03
-
-int MCD_getVersion(char **longVersion)
-{
- *longVersion = MCD_versionString;
- return((MCD_REV_MAJOR << 8) | MCD_REV_MINOR);
-}
-
-/* Private version of memcpy()
- * Note that everything this is used for is longword-aligned.
- */
-static void MCD_memcpy (int *dest, int *src, u32 size)
-{
- u32 i;
-
- for (i = 0; i < size; i += sizeof(int), dest++, src++)
- *dest = *src;
-}
diff --git a/arch/m68k/mach-mcfv4e/mcdapi/MCD_library.dox b/arch/m68k/mach-mcfv4e/mcdapi/MCD_library.dox
deleted file mode 100644
index ec3a730730..0000000000
--- a/arch/m68k/mach-mcfv4e/mcdapi/MCD_library.dox
+++ /dev/null
@@ -1,10 +0,0 @@
-/** @page mcfv4e_MCDlib MultiChannelDMA library for Coldfire V4e
- *
- * The MCD library is taken as is from sources publically available from
- * FreeScale Semiconductors az http://www.freescale.com
- *
- * It is slight reformatted and cleaned up, but otherwise unchanged to support
- * later merged with updated MCD library releases.
- *
- * See the PDF document supplied with the library for API documentation
- */
diff --git a/arch/m68k/mach-mcfv4e/mcdapi/MCD_tasks.c b/arch/m68k/mach-mcfv4e/mcdapi/MCD_tasks.c
deleted file mode 100644
index 812120dd7a..0000000000
--- a/arch/m68k/mach-mcfv4e/mcdapi/MCD_tasks.c
+++ /dev/null
@@ -1,2449 +0,0 @@
-/*
- * File: MCD_tasks.c
- * Purpose: Contains task code and structures for Multi-channel DMA
- *
- * Notes:
- */
-#include <asm/types.h>
-#include <proc/mcdapi/MCD_dma.h>
-
-u32 MCD_varTab0[];
-u32 MCD_varTab1[];
-u32 MCD_varTab2[];
-u32 MCD_varTab3[];
-u32 MCD_varTab4[];
-u32 MCD_varTab5[];
-u32 MCD_varTab6[];
-u32 MCD_varTab7[];
-u32 MCD_varTab8[];
-u32 MCD_varTab9[];
-u32 MCD_varTab10[];
-u32 MCD_varTab11[];
-u32 MCD_varTab12[];
-u32 MCD_varTab13[];
-u32 MCD_varTab14[];
-u32 MCD_varTab15[];
-
-u32 MCD_funcDescTab0[];
-#ifdef MCD_INCLUDE_EU
-u32 MCD_funcDescTab1[];
-u32 MCD_funcDescTab2[];
-u32 MCD_funcDescTab3[];
-u32 MCD_funcDescTab4[];
-u32 MCD_funcDescTab5[];
-u32 MCD_funcDescTab6[];
-u32 MCD_funcDescTab7[];
-u32 MCD_funcDescTab8[];
-u32 MCD_funcDescTab9[];
-u32 MCD_funcDescTab10[];
-u32 MCD_funcDescTab11[];
-u32 MCD_funcDescTab12[];
-u32 MCD_funcDescTab13[];
-u32 MCD_funcDescTab14[];
-u32 MCD_funcDescTab15[];
-#endif
-
-u32 MCD_contextSave0[];
-u32 MCD_contextSave1[];
-u32 MCD_contextSave2[];
-u32 MCD_contextSave3[];
-u32 MCD_contextSave4[];
-u32 MCD_contextSave5[];
-u32 MCD_contextSave6[];
-u32 MCD_contextSave7[];
-u32 MCD_contextSave8[];
-u32 MCD_contextSave9[];
-u32 MCD_contextSave10[];
-u32 MCD_contextSave11[];
-u32 MCD_contextSave12[];
-u32 MCD_contextSave13[];
-u32 MCD_contextSave14[];
-u32 MCD_contextSave15[];
-
-u32 MCD_realTaskTableSrc[] =
-{
- 0x00000000,
- 0x00000000,
- (u32)MCD_varTab0, /* Task 0 Variable Table */
- (u32)MCD_funcDescTab0, /* Task 0 Function Descriptor Table & Flags */
- 0x00000000,
- 0x00000000,
- (u32)MCD_contextSave0, /* Task 0 context save space */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- (u32)MCD_varTab1, /* Task 1 Variable Table */
-#ifdef MCD_INCLUDE_EU
- (u32)MCD_funcDescTab1, /* Task 1 Function Descriptor Table & Flags */
-#else
- (u32)MCD_funcDescTab0, /* Task 0 Function Descriptor Table & Flags */
-#endif
- 0x00000000,
- 0x00000000,
- (u32)MCD_contextSave1, /* Task 1 context save space */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- (u32)MCD_varTab2, /* Task 2 Variable Table */
-#ifdef MCD_INCLUDE_EU
- (u32)MCD_funcDescTab2, /* Task 2 Function Descriptor Table & Flags */
-#else
- (u32)MCD_funcDescTab0, /* Task 0 Function Descriptor Table & Flags */
-#endif
- 0x00000000,
- 0x00000000,
- (u32)MCD_contextSave2, /* Task 2 context save space */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- (u32)MCD_varTab3, /* Task 3 Variable Table */
-#ifdef MCD_INCLUDE_EU
- (u32)MCD_funcDescTab3, /* Task 3 Function Descriptor Table & Flags */
-#else
- (u32)MCD_funcDescTab0, /* Task 0 Function Descriptor Table & Flags */
-#endif
- 0x00000000,
- 0x00000000,
- (u32)MCD_contextSave3, /* Task 3 context save space */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- (u32)MCD_varTab4, /* Task 4 Variable Table */
-#ifdef MCD_INCLUDE_EU
- (u32)MCD_funcDescTab4, /* Task 4 Function Descriptor Table & Flags */
-#else
- (u32)MCD_funcDescTab0, /* Task 0 Function Descriptor Table & Flags */
-#endif
- 0x00000000,
- 0x00000000,
- (u32)MCD_contextSave4, /* Task 4 context save space */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- (u32)MCD_varTab5, /* Task 5 Variable Table */
-#ifdef MCD_INCLUDE_EU
- (u32)MCD_funcDescTab5, /* Task 5 Function Descriptor Table & Flags */
-#else
- (u32)MCD_funcDescTab0, /* Task 0 Function Descriptor Table & Flags */
-#endif
- 0x00000000,
- 0x00000000,
- (u32)MCD_contextSave5, /* Task 5 context save space */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- (u32)MCD_varTab6, /* Task 6 Variable Table */
-#ifdef MCD_INCLUDE_EU
- (u32)MCD_funcDescTab6, /* Task 6 Function Descriptor Table & Flags */
-#else
- (u32)MCD_funcDescTab0, /* Task 0 Function Descriptor Table & Flags */
-#endif
- 0x00000000,
- 0x00000000,
- (u32)MCD_contextSave6, /* Task 6 context save space */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- (u32)MCD_varTab7, /* Task 7 Variable Table */
-#ifdef MCD_INCLUDE_EU
- (u32)MCD_funcDescTab7, /* Task 7 Function Descriptor Table & Flags */
-#else
- (u32)MCD_funcDescTab0, /* Task 0 Function Descriptor Table & Flags */
-#endif
- 0x00000000,
- 0x00000000,
- (u32)MCD_contextSave7, /* Task 7 context save space */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- (u32)MCD_varTab8, /* Task 8 Variable Table */
-#ifdef MCD_INCLUDE_EU
- (u32)MCD_funcDescTab8, /* Task 8 Function Descriptor Table & Flags */
-#else
- (u32)MCD_funcDescTab0, /* Task 0 Function Descriptor Table & Flags */
-#endif
- 0x00000000,
- 0x00000000,
- (u32)MCD_contextSave8, /* Task 8 context save space */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- (u32)MCD_varTab9, /* Task 9 Variable Table */
-#ifdef MCD_INCLUDE_EU
- (u32)MCD_funcDescTab9, /* Task 9 Function Descriptor Table & Flags */
-#else
- (u32)MCD_funcDescTab0, /* Task 0 Function Descriptor Table & Flags */
-#endif
- 0x00000000,
- 0x00000000,
- (u32)MCD_contextSave9, /* Task 9 context save space */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- (u32)MCD_varTab10, /* Task 10 Variable Table */
-#ifdef MCD_INCLUDE_EU
- (u32)MCD_funcDescTab10, /* Task 10 Function Descriptor Table & Flags */
-#else
- (u32)MCD_funcDescTab0, /* Task 0 Function Descriptor Table & Flags */
-#endif
- 0x00000000,
- 0x00000000,
- (u32)MCD_contextSave10, /* Task 10 context save space */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- (u32)MCD_varTab11, /* Task 11 Variable Table */
-#ifdef MCD_INCLUDE_EU
- (u32)MCD_funcDescTab11, /* Task 11 Function Descriptor Table & Flags */
-#else
- (u32)MCD_funcDescTab0, /* Task 0 Function Descriptor Table & Flags */
-#endif
- 0x00000000,
- 0x00000000,
- (u32)MCD_contextSave11, /* Task 11 context save space */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- (u32)MCD_varTab12, /* Task 12 Variable Table */
-#ifdef MCD_INCLUDE_EU
- (u32)MCD_funcDescTab12, /* Task 12 Function Descriptor Table & Flags */
-#else
- (u32)MCD_funcDescTab0, /* Task 0 Function Descriptor Table & Flags */
-#endif
- 0x00000000,
- 0x00000000,
- (u32)MCD_contextSave12, /* Task 12 context save space */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- (u32)MCD_varTab13, /* Task 13 Variable Table */
-#ifdef MCD_INCLUDE_EU
- (u32)MCD_funcDescTab13, /* Task 13 Function Descriptor Table & Flags */
-#else
- (u32)MCD_funcDescTab0, /* Task 0 Function Descriptor Table & Flags */
-#endif
- 0x00000000,
- 0x00000000,
- (u32)MCD_contextSave13, /* Task 13 context save space */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- (u32)MCD_varTab14, /* Task 14 Variable Table */
-#ifdef MCD_INCLUDE_EU
- (u32)MCD_funcDescTab14, /* Task 14 Function Descriptor Table & Flags */
-#else
- (u32)MCD_funcDescTab0, /* Task 0 Function Descriptor Table & Flags */
-#endif
- 0x00000000,
- 0x00000000,
- (u32)MCD_contextSave14, /* Task 14 context save space */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- (u32)MCD_varTab15, /* Task 15 Variable Table */
-#ifdef MCD_INCLUDE_EU
- (u32)MCD_funcDescTab15, /* Task 15 Function Descriptor Table & Flags */
-#else
- (u32)MCD_funcDescTab0, /* Task 0 Function Descriptor Table & Flags */
-#endif
- 0x00000000,
- 0x00000000,
- (u32)MCD_contextSave15, /* Task 15 context save space */
- 0x00000000,
-};
-
-
-u32 MCD_varTab0[] =
-{ /* Task 0 Variable Table */
- 0x00000000, /* var[0] */
- 0x00000000, /* var[1] */
- 0x00000000, /* var[2] */
- 0x00000000, /* var[3] */
- 0x00000000, /* var[4] */
- 0x00000000, /* var[5] */
- 0x00000000, /* var[6] */
- 0x00000000, /* var[7] */
- 0x00000000, /* var[8] */
- 0x00000000, /* var[9] */
- 0x00000000, /* var[10] */
- 0x00000000, /* var[11] */
- 0x00000000, /* var[12] */
- 0x00000000, /* var[13] */
- 0x00000000, /* var[14] */
- 0x00000000, /* var[15] */
- 0x00000000, /* var[16] */
- 0x00000000, /* var[17] */
- 0x00000000, /* var[18] */
- 0x00000000, /* var[19] */
- 0x00000000, /* var[20] */
- 0x00000000, /* var[21] */
- 0x00000000, /* var[22] */
- 0x00000000, /* var[23] */
- 0xe0000000, /* inc[0] */
- 0x20000000, /* inc[1] */
- 0x2000ffff, /* inc[2] */
- 0x00000000, /* inc[3] */
- 0x00000000, /* inc[4] */
- 0x00000000, /* inc[5] */
- 0x00000000, /* inc[6] */
- 0x00000000, /* inc[7] */
-};
-
-
-u32 MCD_varTab1[] =
-{ /* Task 1 Variable Table */
- 0x00000000, /* var[0] */
- 0x00000000, /* var[1] */
- 0x00000000, /* var[2] */
- 0x00000000, /* var[3] */
- 0x00000000, /* var[4] */
- 0x00000000, /* var[5] */
- 0x00000000, /* var[6] */
- 0x00000000, /* var[7] */
- 0x00000000, /* var[8] */
- 0x00000000, /* var[9] */
- 0x00000000, /* var[10] */
- 0x00000000, /* var[11] */
- 0x00000000, /* var[12] */
- 0x00000000, /* var[13] */
- 0x00000000, /* var[14] */
- 0x00000000, /* var[15] */
- 0x00000000, /* var[16] */
- 0x00000000, /* var[17] */
- 0x00000000, /* var[18] */
- 0x00000000, /* var[19] */
- 0x00000000, /* var[20] */
- 0x00000000, /* var[21] */
- 0x00000000, /* var[22] */
- 0x00000000, /* var[23] */
- 0xe0000000, /* inc[0] */
- 0x20000000, /* inc[1] */
- 0x2000ffff, /* inc[2] */
- 0x00000000, /* inc[3] */
- 0x00000000, /* inc[4] */
- 0x00000000, /* inc[5] */
- 0x00000000, /* inc[6] */
- 0x00000000, /* inc[7] */
-};
-
-u32 MCD_varTab2[]=
-{ /* Task 2 Variable Table */
- 0x00000000, /* var[0] */
- 0x00000000, /* var[1] */
- 0x00000000, /* var[2] */
- 0x00000000, /* var[3] */
- 0x00000000, /* var[4] */
- 0x00000000, /* var[5] */
- 0x00000000, /* var[6] */
- 0x00000000, /* var[7] */
- 0x00000000, /* var[8] */
- 0x00000000, /* var[9] */
- 0x00000000, /* var[10] */
- 0x00000000, /* var[11] */
- 0x00000000, /* var[12] */
- 0x00000000, /* var[13] */
- 0x00000000, /* var[14] */
- 0x00000000, /* var[15] */
- 0x00000000, /* var[16] */
- 0x00000000, /* var[17] */
- 0x00000000, /* var[18] */
- 0x00000000, /* var[19] */
- 0x00000000, /* var[20] */
- 0x00000000, /* var[21] */
- 0x00000000, /* var[22] */
- 0x00000000, /* var[23] */
- 0xe0000000, /* inc[0] */
- 0x20000000, /* inc[1] */
- 0x2000ffff, /* inc[2] */
- 0x00000000, /* inc[3] */
- 0x00000000, /* inc[4] */
- 0x00000000, /* inc[5] */
- 0x00000000, /* inc[6] */
- 0x00000000, /* inc[7] */
-};
-
-u32 MCD_varTab3[]=
-{ /* Task 3 Variable Table */
- 0x00000000, /* var[0] */
- 0x00000000, /* var[1] */
- 0x00000000, /* var[2] */
- 0x00000000, /* var[3] */
- 0x00000000, /* var[4] */
- 0x00000000, /* var[5] */
- 0x00000000, /* var[6] */
- 0x00000000, /* var[7] */
- 0x00000000, /* var[8] */
- 0x00000000, /* var[9] */
- 0x00000000, /* var[10] */
- 0x00000000, /* var[11] */
- 0x00000000, /* var[12] */
- 0x00000000, /* var[13] */
- 0x00000000, /* var[14] */
- 0x00000000, /* var[15] */
- 0x00000000, /* var[16] */
- 0x00000000, /* var[17] */
- 0x00000000, /* var[18] */
- 0x00000000, /* var[19] */
- 0x00000000, /* var[20] */
- 0x00000000, /* var[21] */
- 0x00000000, /* var[22] */
- 0x00000000, /* var[23] */
- 0xe0000000, /* inc[0] */
- 0x20000000, /* inc[1] */
- 0x2000ffff, /* inc[2] */
- 0x00000000, /* inc[3] */
- 0x00000000, /* inc[4] */
- 0x00000000, /* inc[5] */
- 0x00000000, /* inc[6] */
- 0x00000000, /* inc[7] */
-};
-
-u32 MCD_varTab4[]=
-{ /* Task 4 Variable Table */
- 0x00000000, /* var[0] */
- 0x00000000, /* var[1] */
- 0x00000000, /* var[2] */
- 0x00000000, /* var[3] */
- 0x00000000, /* var[4] */
- 0x00000000, /* var[5] */
- 0x00000000, /* var[6] */
- 0x00000000, /* var[7] */
- 0x00000000, /* var[8] */
- 0x00000000, /* var[9] */
- 0x00000000, /* var[10] */
- 0x00000000, /* var[11] */
- 0x00000000, /* var[12] */
- 0x00000000, /* var[13] */
- 0x00000000, /* var[14] */
- 0x00000000, /* var[15] */
- 0x00000000, /* var[16] */
- 0x00000000, /* var[17] */
- 0x00000000, /* var[18] */
- 0x00000000, /* var[19] */
- 0x00000000, /* var[20] */
- 0x00000000, /* var[21] */
- 0x00000000, /* var[22] */
- 0x00000000, /* var[23] */
- 0xe0000000, /* inc[0] */
- 0x20000000, /* inc[1] */
- 0x2000ffff, /* inc[2] */
- 0x00000000, /* inc[3] */
- 0x00000000, /* inc[4] */
- 0x00000000, /* inc[5] */
- 0x00000000, /* inc[6] */
- 0x00000000, /* inc[7] */
-};
-
-u32 MCD_varTab5[]=
-{ /* Task 5 Variable Table */
- 0x00000000, /* var[0] */
- 0x00000000, /* var[1] */
- 0x00000000, /* var[2] */
- 0x00000000, /* var[3] */
- 0x00000000, /* var[4] */
- 0x00000000, /* var[5] */
- 0x00000000, /* var[6] */
- 0x00000000, /* var[7] */
- 0x00000000, /* var[8] */
- 0x00000000, /* var[9] */
- 0x00000000, /* var[10] */
- 0x00000000, /* var[11] */
- 0x00000000, /* var[12] */
- 0x00000000, /* var[13] */
- 0x00000000, /* var[14] */
- 0x00000000, /* var[15] */
- 0x00000000, /* var[16] */
- 0x00000000, /* var[17] */
- 0x00000000, /* var[18] */
- 0x00000000, /* var[19] */
- 0x00000000, /* var[20] */
- 0x00000000, /* var[21] */
- 0x00000000, /* var[22] */
- 0x00000000, /* var[23] */
- 0xe0000000, /* inc[0] */
- 0x20000000, /* inc[1] */
- 0x2000ffff, /* inc[2] */
- 0x00000000, /* inc[3] */
- 0x00000000, /* inc[4] */
- 0x00000000, /* inc[5] */
- 0x00000000, /* inc[6] */
- 0x00000000, /* inc[7] */
-};
-
-u32 MCD_varTab6[]=
-{ /* Task 6 Variable Table */
- 0x00000000, /* var[0] */
- 0x00000000, /* var[1] */
- 0x00000000, /* var[2] */
- 0x00000000, /* var[3] */
- 0x00000000, /* var[4] */
- 0x00000000, /* var[5] */
- 0x00000000, /* var[6] */
- 0x00000000, /* var[7] */
- 0x00000000, /* var[8] */
- 0x00000000, /* var[9] */
- 0x00000000, /* var[10] */
- 0x00000000, /* var[11] */
- 0x00000000, /* var[12] */
- 0x00000000, /* var[13] */
- 0x00000000, /* var[14] */
- 0x00000000, /* var[15] */
- 0x00000000, /* var[16] */
- 0x00000000, /* var[17] */
- 0x00000000, /* var[18] */
- 0x00000000, /* var[19] */
- 0x00000000, /* var[20] */
- 0x00000000, /* var[21] */
- 0x00000000, /* var[22] */
- 0x00000000, /* var[23] */
- 0xe0000000, /* inc[0] */
- 0x20000000, /* inc[1] */
- 0x2000ffff, /* inc[2] */
- 0x00000000, /* inc[3] */
- 0x00000000, /* inc[4] */
- 0x00000000, /* inc[5] */
- 0x00000000, /* inc[6] */
- 0x00000000, /* inc[7] */
-};
-
-u32 MCD_varTab7[]=
-{ /* Task 7 Variable Table */
- 0x00000000, /* var[0] */
- 0x00000000, /* var[1] */
- 0x00000000, /* var[2] */
- 0x00000000, /* var[3] */
- 0x00000000, /* var[4] */
- 0x00000000, /* var[5] */
- 0x00000000, /* var[6] */
- 0x00000000, /* var[7] */
- 0x00000000, /* var[8] */
- 0x00000000, /* var[9] */
- 0x00000000, /* var[10] */
- 0x00000000, /* var[11] */
- 0x00000000, /* var[12] */
- 0x00000000, /* var[13] */
- 0x00000000, /* var[14] */
- 0x00000000, /* var[15] */
- 0x00000000, /* var[16] */
- 0x00000000, /* var[17] */
- 0x00000000, /* var[18] */
- 0x00000000, /* var[19] */
- 0x00000000, /* var[20] */
- 0x00000000, /* var[21] */
- 0x00000000, /* var[22] */
- 0x00000000, /* var[23] */
- 0xe0000000, /* inc[0] */
- 0x20000000, /* inc[1] */
- 0x2000ffff, /* inc[2] */
- 0x00000000, /* inc[3] */
- 0x00000000, /* inc[4] */
- 0x00000000, /* inc[5] */
- 0x00000000, /* inc[6] */
- 0x00000000, /* inc[7] */
-};
-
-u32 MCD_varTab8[]=
-{ /* Task 8 Variable Table */
- 0x00000000, /* var[0] */
- 0x00000000, /* var[1] */
- 0x00000000, /* var[2] */
- 0x00000000, /* var[3] */
- 0x00000000, /* var[4] */
- 0x00000000, /* var[5] */
- 0x00000000, /* var[6] */
- 0x00000000, /* var[7] */
- 0x00000000, /* var[8] */
- 0x00000000, /* var[9] */
- 0x00000000, /* var[10] */
- 0x00000000, /* var[11] */
- 0x00000000, /* var[12] */
- 0x00000000, /* var[13] */
- 0x00000000, /* var[14] */
- 0x00000000, /* var[15] */
- 0x00000000, /* var[16] */
- 0x00000000, /* var[17] */
- 0x00000000, /* var[18] */
- 0x00000000, /* var[19] */
- 0x00000000, /* var[20] */
- 0x00000000, /* var[21] */
- 0x00000000, /* var[22] */
- 0x00000000, /* var[23] */
- 0xe0000000, /* inc[0] */
- 0x20000000, /* inc[1] */
- 0x2000ffff, /* inc[2] */
- 0x00000000, /* inc[3] */
- 0x00000000, /* inc[4] */
- 0x00000000, /* inc[5] */
- 0x00000000, /* inc[6] */
- 0x00000000, /* inc[7] */
-};
-
-u32 MCD_varTab9[]=
-{ /* Task 9 Variable Table */
- 0x00000000, /* var[0] */
- 0x00000000, /* var[1] */
- 0x00000000, /* var[2] */
- 0x00000000, /* var[3] */
- 0x00000000, /* var[4] */
- 0x00000000, /* var[5] */
- 0x00000000, /* var[6] */
- 0x00000000, /* var[7] */
- 0x00000000, /* var[8] */
- 0x00000000, /* var[9] */
- 0x00000000, /* var[10] */
- 0x00000000, /* var[11] */
- 0x00000000, /* var[12] */
- 0x00000000, /* var[13] */
- 0x00000000, /* var[14] */
- 0x00000000, /* var[15] */
- 0x00000000, /* var[16] */
- 0x00000000, /* var[17] */
- 0x00000000, /* var[18] */
- 0x00000000, /* var[19] */
- 0x00000000, /* var[20] */
- 0x00000000, /* var[21] */
- 0x00000000, /* var[22] */
- 0x00000000, /* var[23] */
- 0xe0000000, /* inc[0] */
- 0x20000000, /* inc[1] */
- 0x2000ffff, /* inc[2] */
- 0x00000000, /* inc[3] */
- 0x00000000, /* inc[4] */
- 0x00000000, /* inc[5] */
- 0x00000000, /* inc[6] */
- 0x00000000, /* inc[7] */
-};
-
-u32 MCD_varTab10[]=
-{ /* Task 10 Variable Table */
- 0x00000000, /* var[0] */
- 0x00000000, /* var[1] */
- 0x00000000, /* var[2] */
- 0x00000000, /* var[3] */
- 0x00000000, /* var[4] */
- 0x00000000, /* var[5] */
- 0x00000000, /* var[6] */
- 0x00000000, /* var[7] */
- 0x00000000, /* var[8] */
- 0x00000000, /* var[9] */
- 0x00000000, /* var[10] */
- 0x00000000, /* var[11] */
- 0x00000000, /* var[12] */
- 0x00000000, /* var[13] */
- 0x00000000, /* var[14] */
- 0x00000000, /* var[15] */
- 0x00000000, /* var[16] */
- 0x00000000, /* var[17] */
- 0x00000000, /* var[18] */
- 0x00000000, /* var[19] */
- 0x00000000, /* var[20] */
- 0x00000000, /* var[21] */
- 0x00000000, /* var[22] */
- 0x00000000, /* var[23] */
- 0xe0000000, /* inc[0] */
- 0x20000000, /* inc[1] */
- 0x2000ffff, /* inc[2] */
- 0x00000000, /* inc[3] */
- 0x00000000, /* inc[4] */
- 0x00000000, /* inc[5] */
- 0x00000000, /* inc[6] */
- 0x00000000, /* inc[7] */
-};
-
-u32 MCD_varTab11[]=
-{ /* Task 11 Variable Table */
- 0x00000000, /* var[0] */
- 0x00000000, /* var[1] */
- 0x00000000, /* var[2] */
- 0x00000000, /* var[3] */
- 0x00000000, /* var[4] */
- 0x00000000, /* var[5] */
- 0x00000000, /* var[6] */
- 0x00000000, /* var[7] */
- 0x00000000, /* var[8] */
- 0x00000000, /* var[9] */
- 0x00000000, /* var[10] */
- 0x00000000, /* var[11] */
- 0x00000000, /* var[12] */
- 0x00000000, /* var[13] */
- 0x00000000, /* var[14] */
- 0x00000000, /* var[15] */
- 0x00000000, /* var[16] */
- 0x00000000, /* var[17] */
- 0x00000000, /* var[18] */
- 0x00000000, /* var[19] */
- 0x00000000, /* var[20] */
- 0x00000000, /* var[21] */
- 0x00000000, /* var[22] */
- 0x00000000, /* var[23] */
- 0xe0000000, /* inc[0] */
- 0x20000000, /* inc[1] */
- 0x2000ffff, /* inc[2] */
- 0x00000000, /* inc[3] */
- 0x00000000, /* inc[4] */
- 0x00000000, /* inc[5] */
- 0x00000000, /* inc[6] */
- 0x00000000, /* inc[7] */
-};
-
-u32 MCD_varTab12[]=
-{ /* Task 12 Variable Table */
- 0x00000000, /* var[0] */
- 0x00000000, /* var[1] */
- 0x00000000, /* var[2] */
- 0x00000000, /* var[3] */
- 0x00000000, /* var[4] */
- 0x00000000, /* var[5] */
- 0x00000000, /* var[6] */
- 0x00000000, /* var[7] */
- 0x00000000, /* var[8] */
- 0x00000000, /* var[9] */
- 0x00000000, /* var[10] */
- 0x00000000, /* var[11] */
- 0x00000000, /* var[12] */
- 0x00000000, /* var[13] */
- 0x00000000, /* var[14] */
- 0x00000000, /* var[15] */
- 0x00000000, /* var[16] */
- 0x00000000, /* var[17] */
- 0x00000000, /* var[18] */
- 0x00000000, /* var[19] */
- 0x00000000, /* var[20] */
- 0x00000000, /* var[21] */
- 0x00000000, /* var[22] */
- 0x00000000, /* var[23] */
- 0xe0000000, /* inc[0] */
- 0x20000000, /* inc[1] */
- 0x2000ffff, /* inc[2] */
- 0x00000000, /* inc[3] */
- 0x00000000, /* inc[4] */
- 0x00000000, /* inc[5] */
- 0x00000000, /* inc[6] */
- 0x00000000, /* inc[7] */
-};
-
-u32 MCD_varTab13[]=
-{ /* Task 13 Variable Table */
- 0x00000000, /* var[0] */
- 0x00000000, /* var[1] */
- 0x00000000, /* var[2] */
- 0x00000000, /* var[3] */
- 0x00000000, /* var[4] */
- 0x00000000, /* var[5] */
- 0x00000000, /* var[6] */
- 0x00000000, /* var[7] */
- 0x00000000, /* var[8] */
- 0x00000000, /* var[9] */
- 0x00000000, /* var[10] */
- 0x00000000, /* var[11] */
- 0x00000000, /* var[12] */
- 0x00000000, /* var[13] */
- 0x00000000, /* var[14] */
- 0x00000000, /* var[15] */
- 0x00000000, /* var[16] */
- 0x00000000, /* var[17] */
- 0x00000000, /* var[18] */
- 0x00000000, /* var[19] */
- 0x00000000, /* var[20] */
- 0x00000000, /* var[21] */
- 0x00000000, /* var[22] */
- 0x00000000, /* var[23] */
- 0xe0000000, /* inc[0] */
- 0x20000000, /* inc[1] */
- 0x2000ffff, /* inc[2] */
- 0x00000000, /* inc[3] */
- 0x00000000, /* inc[4] */
- 0x00000000, /* inc[5] */
- 0x00000000, /* inc[6] */
- 0x00000000, /* inc[7] */
-};
-
-u32 MCD_varTab14[]=
-{ /* Task 14 Variable Table */
- 0x00000000, /* var[0] */
- 0x00000000, /* var[1] */
- 0x00000000, /* var[2] */
- 0x00000000, /* var[3] */
- 0x00000000, /* var[4] */
- 0x00000000, /* var[5] */
- 0x00000000, /* var[6] */
- 0x00000000, /* var[7] */
- 0x00000000, /* var[8] */
- 0x00000000, /* var[9] */
- 0x00000000, /* var[10] */
- 0x00000000, /* var[11] */
- 0x00000000, /* var[12] */
- 0x00000000, /* var[13] */
- 0x00000000, /* var[14] */
- 0x00000000, /* var[15] */
- 0x00000000, /* var[16] */
- 0x00000000, /* var[17] */
- 0x00000000, /* var[18] */
- 0x00000000, /* var[19] */
- 0x00000000, /* var[20] */
- 0x00000000, /* var[21] */
- 0x00000000, /* var[22] */
- 0x00000000, /* var[23] */
- 0xe0000000, /* inc[0] */
- 0x20000000, /* inc[1] */
- 0x2000ffff, /* inc[2] */
- 0x00000000, /* inc[3] */
- 0x00000000, /* inc[4] */
- 0x00000000, /* inc[5] */
- 0x00000000, /* inc[6] */
- 0x00000000, /* inc[7] */
-};
-
-u32 MCD_varTab15[]=
-{ /* Task 15 Variable Table */
- 0x00000000, /* var[0] */
- 0x00000000, /* var[1] */
- 0x00000000, /* var[2] */
- 0x00000000, /* var[3] */
- 0x00000000, /* var[4] */
- 0x00000000, /* var[5] */
- 0x00000000, /* var[6] */
- 0x00000000, /* var[7] */
- 0x00000000, /* var[8] */
- 0x00000000, /* var[9] */
- 0x00000000, /* var[10] */
- 0x00000000, /* var[11] */
- 0x00000000, /* var[12] */
- 0x00000000, /* var[13] */
- 0x00000000, /* var[14] */
- 0x00000000, /* var[15] */
- 0x00000000, /* var[16] */
- 0x00000000, /* var[17] */
- 0x00000000, /* var[18] */
- 0x00000000, /* var[19] */
- 0x00000000, /* var[20] */
- 0x00000000, /* var[21] */
- 0x00000000, /* var[22] */
- 0x00000000, /* var[23] */
- 0xe0000000, /* inc[0] */
- 0x20000000, /* inc[1] */
- 0x2000ffff, /* inc[2] */
- 0x00000000, /* inc[3] */
- 0x00000000, /* inc[4] */
- 0x00000000, /* inc[5] */
- 0x00000000, /* inc[6] */
- 0x00000000, /* inc[7] */
-};
-
-u32 MCD_funcDescTab0[]=
-{ /* Task 0 Function Descriptor Table */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0xa0045670, /* mainFunc(), EU# 3 */
- 0xa0000000, /* rsduFunc(), EU# 3 */
- 0xa0000000, /* crcAccumVal(), EU# 3 */
- 0x20000000, /* setCrcAccum(), EU# 3 */
- 0x21800000, /* and(), EU# 3 */
- 0x21e00000, /* or(), EU# 3 */
- 0x20400000, /* add(), EU# 3 */
- 0x20500000, /* sub(), EU# 3 */
- 0x205a0000, /* andNot(), EU# 3 */
- 0x20a00000, /* shiftR(), EU# 3 */
- 0x202fa000, /* andReadyBit(), EU# 3 */
- 0x202f9000, /* andNotReadyBit(), EU# 3 */
- 0x202ea000, /* andWrapBit(), EU# 3 */
- 0x202da000, /* andLastBit(), EU# 3 */
- 0x202e2000, /* andInterruptBit(), EU# 3 */
- 0x202f2000, /* andCrcRestartBit(), EU# 3 */
-};
-
-#ifdef MCD_INCLUDE_EU
-u32 MCD_funcDescTab1[]=
-{ /* Task 1 Function Descriptor Table */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0xa0045670, /* mainFunc(), EU# 3 */
- 0xa0000000, /* rsduFunc(), EU# 3 */
- 0xa0000000, /* crcAccumVal(), EU# 3 */
- 0x20000000, /* setCrcAccum(), EU# 3 */
- 0x21800000, /* and(), EU# 3 */
- 0x21e00000, /* or(), EU# 3 */
- 0x20400000, /* add(), EU# 3 */
- 0x20500000, /* sub(), EU# 3 */
- 0x205a0000, /* andNot(), EU# 3 */
- 0x20a00000, /* shiftR(), EU# 3 */
- 0x202fa000, /* andReadyBit(), EU# 3 */
- 0x202f9000, /* andNotReadyBit(), EU# 3 */
- 0x202ea000, /* andWrapBit(), EU# 3 */
- 0x202da000, /* andLastBit(), EU# 3 */
- 0x202e2000, /* andInterruptBit(), EU# 3 */
- 0x202f2000, /* andCrcRestartBit(), EU# 3 */
-};
-
-u32 MCD_funcDescTab2[]=
-{ /* Task 2 Function Descriptor Table */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0xa0045670, /* mainFunc(), EU# 3 */
- 0xa0000000, /* rsduFunc(), EU# 3 */
- 0xa0000000, /* crcAccumVal(), EU# 3 */
- 0x20000000, /* setCrcAccum(), EU# 3 */
- 0x21800000, /* and(), EU# 3 */
- 0x21e00000, /* or(), EU# 3 */
- 0x20400000, /* add(), EU# 3 */
- 0x20500000, /* sub(), EU# 3 */
- 0x205a0000, /* andNot(), EU# 3 */
- 0x20a00000, /* shiftR(), EU# 3 */
- 0x202fa000, /* andReadyBit(), EU# 3 */
- 0x202f9000, /* andNotReadyBit(), EU# 3 */
- 0x202ea000, /* andWrapBit(), EU# 3 */
- 0x202da000, /* andLastBit(), EU# 3 */
- 0x202e2000, /* andInterruptBit(), EU# 3 */
- 0x202f2000, /* andCrcRestartBit(), EU# 3 */
-};
-
-u32 MCD_funcDescTab3[]=
-{ /* Task 3 Function Descriptor Table */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0xa0045670, /* mainFunc(), EU# 3 */
- 0xa0000000, /* rsduFunc(), EU# 3 */
- 0xa0000000, /* crcAccumVal(), EU# 3 */
- 0x20000000, /* setCrcAccum(), EU# 3 */
- 0x21800000, /* and(), EU# 3 */
- 0x21e00000, /* or(), EU# 3 */
- 0x20400000, /* add(), EU# 3 */
- 0x20500000, /* sub(), EU# 3 */
- 0x205a0000, /* andNot(), EU# 3 */
- 0x20a00000, /* shiftR(), EU# 3 */
- 0x202fa000, /* andReadyBit(), EU# 3 */
- 0x202f9000, /* andNotReadyBit(), EU# 3 */
- 0x202ea000, /* andWrapBit(), EU# 3 */
- 0x202da000, /* andLastBit(), EU# 3 */
- 0x202e2000, /* andInterruptBit(), EU# 3 */
- 0x202f2000, /* andCrcRestartBit(), EU# 3 */
-};
-
-u32 MCD_funcDescTab4[]=
-{ /* Task 4 Function Descriptor Table */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0xa0045670, /* mainFunc(), EU# 3 */
- 0xa0000000, /* rsduFunc(), EU# 3 */
- 0xa0000000, /* crcAccumVal(), EU# 3 */
- 0x20000000, /* setCrcAccum(), EU# 3 */
- 0x21800000, /* and(), EU# 3 */
- 0x21e00000, /* or(), EU# 3 */
- 0x20400000, /* add(), EU# 3 */
- 0x20500000, /* sub(), EU# 3 */
- 0x205a0000, /* andNot(), EU# 3 */
- 0x20a00000, /* shiftR(), EU# 3 */
- 0x202fa000, /* andReadyBit(), EU# 3 */
- 0x202f9000, /* andNotReadyBit(), EU# 3 */
- 0x202ea000, /* andWrapBit(), EU# 3 */
- 0x202da000, /* andLastBit(), EU# 3 */
- 0x202e2000, /* andInterruptBit(), EU# 3 */
- 0x202f2000, /* andCrcRestartBit(), EU# 3 */
-};
-
-u32 MCD_funcDescTab5[]=
-{ /* Task 5 Function Descriptor Table */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0xa0045670, /* mainFunc(), EU# 3 */
- 0xa0000000, /* rsduFunc(), EU# 3 */
- 0xa0000000, /* crcAccumVal(), EU# 3 */
- 0x20000000, /* setCrcAccum(), EU# 3 */
- 0x21800000, /* and(), EU# 3 */
- 0x21e00000, /* or(), EU# 3 */
- 0x20400000, /* add(), EU# 3 */
- 0x20500000, /* sub(), EU# 3 */
- 0x205a0000, /* andNot(), EU# 3 */
- 0x20a00000, /* shiftR(), EU# 3 */
- 0x202fa000, /* andReadyBit(), EU# 3 */
- 0x202f9000, /* andNotReadyBit(), EU# 3 */
- 0x202ea000, /* andWrapBit(), EU# 3 */
- 0x202da000, /* andLastBit(), EU# 3 */
- 0x202e2000, /* andInterruptBit(), EU# 3 */
- 0x202f2000, /* andCrcRestartBit(), EU# 3 */
-};
-
-u32 MCD_funcDescTab6[]=
-{ /* Task 6 Function Descriptor Table */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0xa0045670, /* mainFunc(), EU# 3 */
- 0xa0000000, /* rsduFunc(), EU# 3 */
- 0xa0000000, /* crcAccumVal(), EU# 3 */
- 0x20000000, /* setCrcAccum(), EU# 3 */
- 0x21800000, /* and(), EU# 3 */
- 0x21e00000, /* or(), EU# 3 */
- 0x20400000, /* add(), EU# 3 */
- 0x20500000, /* sub(), EU# 3 */
- 0x205a0000, /* andNot(), EU# 3 */
- 0x20a00000, /* shiftR(), EU# 3 */
- 0x202fa000, /* andReadyBit(), EU# 3 */
- 0x202f9000, /* andNotReadyBit(), EU# 3 */
- 0x202ea000, /* andWrapBit(), EU# 3 */
- 0x202da000, /* andLastBit(), EU# 3 */
- 0x202e2000, /* andInterruptBit(), EU# 3 */
- 0x202f2000, /* andCrcRestartBit(), EU# 3 */
-};
-
-u32 MCD_funcDescTab7[]=
-{ /* Task 7 Function Descriptor Table */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0xa0045670, /* mainFunc(), EU# 3 */
- 0xa0000000, /* rsduFunc(), EU# 3 */
- 0xa0000000, /* crcAccumVal(), EU# 3 */
- 0x20000000, /* setCrcAccum(), EU# 3 */
- 0x21800000, /* and(), EU# 3 */
- 0x21e00000, /* or(), EU# 3 */
- 0x20400000, /* add(), EU# 3 */
- 0x20500000, /* sub(), EU# 3 */
- 0x205a0000, /* andNot(), EU# 3 */
- 0x20a00000, /* shiftR(), EU# 3 */
- 0x202fa000, /* andReadyBit(), EU# 3 */
- 0x202f9000, /* andNotReadyBit(), EU# 3 */
- 0x202ea000, /* andWrapBit(), EU# 3 */
- 0x202da000, /* andLastBit(), EU# 3 */
- 0x202e2000, /* andInterruptBit(), EU# 3 */
- 0x202f2000, /* andCrcRestartBit(), EU# 3 */
-};
-
-u32 MCD_funcDescTab8[]=
-{ /* Task 8 Function Descriptor Table */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0xa0045670, /* mainFunc(), EU# 3 */
- 0xa0000000, /* rsduFunc(), EU# 3 */
- 0xa0000000, /* crcAccumVal(), EU# 3 */
- 0x20000000, /* setCrcAccum(), EU# 3 */
- 0x21800000, /* and(), EU# 3 */
- 0x21e00000, /* or(), EU# 3 */
- 0x20400000, /* add(), EU# 3 */
- 0x20500000, /* sub(), EU# 3 */
- 0x205a0000, /* andNot(), EU# 3 */
- 0x20a00000, /* shiftR(), EU# 3 */
- 0x202fa000, /* andReadyBit(), EU# 3 */
- 0x202f9000, /* andNotReadyBit(), EU# 3 */
- 0x202ea000, /* andWrapBit(), EU# 3 */
- 0x202da000, /* andLastBit(), EU# 3 */
- 0x202e2000, /* andInterruptBit(), EU# 3 */
- 0x202f2000, /* andCrcRestartBit(), EU# 3 */
-};
-
-u32 MCD_funcDescTab9[]=
-{ /* Task 9 Function Descriptor Table */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0xa0045670, /* mainFunc(), EU# 3 */
- 0xa0000000, /* rsduFunc(), EU# 3 */
- 0xa0000000, /* crcAccumVal(), EU# 3 */
- 0x20000000, /* setCrcAccum(), EU# 3 */
- 0x21800000, /* and(), EU# 3 */
- 0x21e00000, /* or(), EU# 3 */
- 0x20400000, /* add(), EU# 3 */
- 0x20500000, /* sub(), EU# 3 */
- 0x205a0000, /* andNot(), EU# 3 */
- 0x20a00000, /* shiftR(), EU# 3 */
- 0x202fa000, /* andReadyBit(), EU# 3 */
- 0x202f9000, /* andNotReadyBit(), EU# 3 */
- 0x202ea000, /* andWrapBit(), EU# 3 */
- 0x202da000, /* andLastBit(), EU# 3 */
- 0x202e2000, /* andInterruptBit(), EU# 3 */
- 0x202f2000, /* andCrcRestartBit(), EU# 3 */
-};
-
-u32 MCD_funcDescTab10[]=
-{ /* Task 10 Function Descriptor Table */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0xa0045670, /* mainFunc(), EU# 3 */
- 0xa0000000, /* rsduFunc(), EU# 3 */
- 0xa0000000, /* crcAccumVal(), EU# 3 */
- 0x20000000, /* setCrcAccum(), EU# 3 */
- 0x21800000, /* and(), EU# 3 */
- 0x21e00000, /* or(), EU# 3 */
- 0x20400000, /* add(), EU# 3 */
- 0x20500000, /* sub(), EU# 3 */
- 0x205a0000, /* andNot(), EU# 3 */
- 0x20a00000, /* shiftR(), EU# 3 */
- 0x202fa000, /* andReadyBit(), EU# 3 */
- 0x202f9000, /* andNotReadyBit(), EU# 3 */
- 0x202ea000, /* andWrapBit(), EU# 3 */
- 0x202da000, /* andLastBit(), EU# 3 */
- 0x202e2000, /* andInterruptBit(), EU# 3 */
- 0x202f2000, /* andCrcRestartBit(), EU# 3 */
-};
-
-u32 MCD_funcDescTab11[]=
-{ /* Task 11 Function Descriptor Table */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0xa0045670, /* mainFunc(), EU# 3 */
- 0xa0000000, /* rsduFunc(), EU# 3 */
- 0xa0000000, /* crcAccumVal(), EU# 3 */
- 0x20000000, /* setCrcAccum(), EU# 3 */
- 0x21800000, /* and(), EU# 3 */
- 0x21e00000, /* or(), EU# 3 */
- 0x20400000, /* add(), EU# 3 */
- 0x20500000, /* sub(), EU# 3 */
- 0x205a0000, /* andNot(), EU# 3 */
- 0x20a00000, /* shiftR(), EU# 3 */
- 0x202fa000, /* andReadyBit(), EU# 3 */
- 0x202f9000, /* andNotReadyBit(), EU# 3 */
- 0x202ea000, /* andWrapBit(), EU# 3 */
- 0x202da000, /* andLastBit(), EU# 3 */
- 0x202e2000, /* andInterruptBit(), EU# 3 */
- 0x202f2000, /* andCrcRestartBit(), EU# 3 */
-};
-
-u32 MCD_funcDescTab12[]=
-{ /* Task 12 Function Descriptor Table */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0xa0045670, /* mainFunc(), EU# 3 */
- 0xa0000000, /* rsduFunc(), EU# 3 */
- 0xa0000000, /* crcAccumVal(), EU# 3 */
- 0x20000000, /* setCrcAccum(), EU# 3 */
- 0x21800000, /* and(), EU# 3 */
- 0x21e00000, /* or(), EU# 3 */
- 0x20400000, /* add(), EU# 3 */
- 0x20500000, /* sub(), EU# 3 */
- 0x205a0000, /* andNot(), EU# 3 */
- 0x20a00000, /* shiftR(), EU# 3 */
- 0x202fa000, /* andReadyBit(), EU# 3 */
- 0x202f9000, /* andNotReadyBit(), EU# 3 */
- 0x202ea000, /* andWrapBit(), EU# 3 */
- 0x202da000, /* andLastBit(), EU# 3 */
- 0x202e2000, /* andInterruptBit(), EU# 3 */
- 0x202f2000, /* andCrcRestartBit(), EU# 3 */
-};
-
-u32 MCD_funcDescTab13[]=
-{ /* Task 13 Function Descriptor Table */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0xa0045670, /* mainFunc(), EU# 3 */
- 0xa0000000, /* rsduFunc(), EU# 3 */
- 0xa0000000, /* crcAccumVal(), EU# 3 */
- 0x20000000, /* setCrcAccum(), EU# 3 */
- 0x21800000, /* and(), EU# 3 */
- 0x21e00000, /* or(), EU# 3 */
- 0x20400000, /* add(), EU# 3 */
- 0x20500000, /* sub(), EU# 3 */
- 0x205a0000, /* andNot(), EU# 3 */
- 0x20a00000, /* shiftR(), EU# 3 */
- 0x202fa000, /* andReadyBit(), EU# 3 */
- 0x202f9000, /* andNotReadyBit(), EU# 3 */
- 0x202ea000, /* andWrapBit(), EU# 3 */
- 0x202da000, /* andLastBit(), EU# 3 */
- 0x202e2000, /* andInterruptBit(), EU# 3 */
- 0x202f2000, /* andCrcRestartBit(), EU# 3 */
-};
-
-u32 MCD_funcDescTab14[]=
-{ /* Task 14 Function Descriptor Table */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0xa0045670, /* mainFunc(), EU# 3 */
- 0xa0000000, /* rsduFunc(), EU# 3 */
- 0xa0000000, /* crcAccumVal(), EU# 3 */
- 0x20000000, /* setCrcAccum(), EU# 3 */
- 0x21800000, /* and(), EU# 3 */
- 0x21e00000, /* or(), EU# 3 */
- 0x20400000, /* add(), EU# 3 */
- 0x20500000, /* sub(), EU# 3 */
- 0x205a0000, /* andNot(), EU# 3 */
- 0x20a00000, /* shiftR(), EU# 3 */
- 0x202fa000, /* andReadyBit(), EU# 3 */
- 0x202f9000, /* andNotReadyBit(), EU# 3 */
- 0x202ea000, /* andWrapBit(), EU# 3 */
- 0x202da000, /* andLastBit(), EU# 3 */
- 0x202e2000, /* andInterruptBit(), EU# 3 */
- 0x202f2000, /* andCrcRestartBit(), EU# 3 */
-};
-
-u32 MCD_funcDescTab15[]=
-{ /* Task 15 Function Descriptor Table */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0xa0045670, /* mainFunc(), EU# 3 */
- 0xa0000000, /* rsduFunc(), EU# 3 */
- 0xa0000000, /* crcAccumVal(), EU# 3 */
- 0x20000000, /* setCrcAccum(), EU# 3 */
- 0x21800000, /* and(), EU# 3 */
- 0x21e00000, /* or(), EU# 3 */
- 0x20400000, /* add(), EU# 3 */
- 0x20500000, /* sub(), EU# 3 */
- 0x205a0000, /* andNot(), EU# 3 */
- 0x20a00000, /* shiftR(), EU# 3 */
- 0x202fa000, /* andReadyBit(), EU# 3 */
- 0x202f9000, /* andNotReadyBit(), EU# 3 */
- 0x202ea000, /* andWrapBit(), EU# 3 */
- 0x202da000, /* andLastBit(), EU# 3 */
- 0x202e2000, /* andInterruptBit(), EU# 3 */
- 0x202f2000, /* andCrcRestartBit(), EU# 3 */
-};
-#endif /*MCD_INCLUDE_EU*/
-
-u32 MCD_contextSave0[128]; /* Task 0 context save space */
-u32 MCD_contextSave1[128]; /* Task 1 context save space */
-u32 MCD_contextSave2[128]; /* Task 2 context save space */
-u32 MCD_contextSave3[128]; /* Task 3 context save space */
-u32 MCD_contextSave4[128]; /* Task 4 context save space */
-u32 MCD_contextSave5[128]; /* Task 5 context save space */
-u32 MCD_contextSave6[128]; /* Task 6 context save space */
-u32 MCD_contextSave7[128]; /* Task 7 context save space */
-u32 MCD_contextSave8[128]; /* Task 8 context save space */
-u32 MCD_contextSave9[128]; /* Task 9 context save space */
-u32 MCD_contextSave10[128]; /* Task 10 context save space */
-u32 MCD_contextSave11[128]; /* Task 11 context save space */
-u32 MCD_contextSave12[128]; /* Task 12 context save space */
-u32 MCD_contextSave13[128]; /* Task 13 context save space */
-u32 MCD_contextSave14[128]; /* Task 14 context save space */
-u32 MCD_contextSave15[128]; /* Task 15 context save space */
-
-
-u32 MCD_ChainNoEu_TDT[];
-u32 MCD_SingleNoEu_TDT[];
-#ifdef MCD_INCLUDE_EU
-u32 MCD_ChainEu_TDT[];
-u32 MCD_SingleEu_TDT[];
-#endif
-u32 MCD_ENetRcv_TDT[];
-u32 MCD_ENetXmit_TDT[];
-
-u32 MCD_modelTaskTableSrc[]=
-{
- (u32)MCD_ChainNoEu_TDT,
- (u32)&((u8*)MCD_ChainNoEu_TDT)[0x0000016c],
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- (u32)MCD_SingleNoEu_TDT,
- (u32)&((u8*)MCD_SingleNoEu_TDT)[0x000000d4],
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
-#ifdef MCD_INCLUDE_EU
- (u32)MCD_ChainEu_TDT,
- (u32)&((u8*)MCD_ChainEu_TDT)[0x000001b4],
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- (u32)MCD_SingleEu_TDT,
- (u32)&((u8*)MCD_SingleEu_TDT)[0x00000124],
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
-#endif
- (u32)MCD_ENetRcv_TDT,
- (u32)&((u8*)MCD_ENetRcv_TDT)[0x0000009c],
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- (u32)MCD_ENetXmit_TDT,
- (u32)&((u8*)MCD_ENetXmit_TDT)[0x000000d0],
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
-};
-u32 MCD_ChainNoEu_TDT[]=
-{
- 0x80004000, /* 0000(:370): LCDEXT: idx0 = 0x00000000; ; */
- 0x8118801b, /* 0004(:370): LCD: idx1 = var2; idx1 once var0; idx1 += inc3 */
- 0xb8c60018, /* 0008(:371): LCD: idx2 = *(idx1 + var12); idx2 once var0; idx2 += inc3 */
- 0x10002b10, /* 000C(:372): DRD1A: var10 = idx2; FN=0 MORE init=0 WS=0 RS=0 */
- 0x7000000d, /* 0010(:373): DRD2A: EU0=0 EU1=0 EU2=0 EU3=13 EXT MORE init=0 WS=0 RS=0 */
- 0x018cf89f, /* 0014(:373): DRD2B1: var6 = EU3(); EU3(idx2) */
- 0x6000000a, /* 0018(:374): DRD2A: EU0=0 EU1=0 EU2=0 EU3=10 EXT init=0 WS=0 RS=0 */
- 0x080cf89f, /* 001C(:374): DRD2B1: idx0 = EU3(); EU3(idx2) */
- 0x000001f8, /* 0020(:0): NOP */
- 0x98180364, /* 0024(:378): LCD: idx0 = idx0; idx0 == var13; idx0 += inc4 */
- 0x8118801b, /* 0028(:380): LCD: idx1 = var2; idx1 once var0; idx1 += inc3 */
- 0xf8c6001a, /* 002C(:381): LCDEXT: idx2 = *(idx1 + var12 + 8); idx2 once var0; idx2 += inc3 */
- 0xb8c6601b, /* 0030(:382): LCD: idx3 = *(idx1 + var12 + 12); ; idx3 += inc3 */
- 0x10002710, /* 0034(:384): DRD1A: var9 = idx2; FN=0 MORE init=0 WS=0 RS=0 */
- 0x00000f18, /* 0038(:385): DRD1A: var3 = idx3; FN=0 init=0 WS=0 RS=0 */
- 0xb8c6001d, /* 003C(:387): LCD: idx2 = *(idx1 + var12 + 20); idx2 once var0; idx2 += inc3 */
- 0x10001310, /* 0040(:388): DRD1A: var4 = idx2; FN=0 MORE init=0 WS=0 RS=0 */
- 0x60000007, /* 0044(:389): DRD2A: EU0=0 EU1=0 EU2=0 EU3=7 EXT init=0 WS=0 RS=0 */
- 0x014cf88b, /* 0048(:389): DRD2B1: var5 = EU3(); EU3(idx2,var11) */
- 0x98c6001c, /* 004C(:391): LCD: idx2 = idx1 + var12 + 4; idx2 once var0; idx2 += inc3 */
- 0x00000710, /* 0050(:392): DRD1A: var1 = idx2; FN=0 init=0 WS=0 RS=0 */
- 0x98c70018, /* 0054(:393): LCD: idx2 = idx1 + var14; idx2 once var0; idx2 += inc3 */
- 0x10001f10, /* 0058(:394): DRD1A: var7 = idx2; FN=0 MORE init=0 WS=0 RS=0 */
- 0x0000c818, /* 005C(:395): DRD1A: *idx2 = var3; FN=0 init=0 WS=0 RS=0 */
- 0x000001f8, /* 0060(:0): NOP */
- 0xc1476018, /* 0064(:399): LCDEXT: idx1 = var2 + var14; ; idx1 += inc3 */
- 0xc003231d, /* 0068(:399): LCDEXT: idx2 = var0, idx3 = var6; idx3 == var12; idx2 += inc3, idx3 += inc5 */
- 0x811a601b, /* 006C(:400): LCD: idx4 = var2; ; idx4 += inc3 */
- 0xc1862102, /* 0070(:403): LCDEXT: idx5 = var3, idx6 = var12; idx6 < var4; idx5 += inc0, idx6 += inc2 */
- 0x849be009, /* 0074(:403): LCD: idx7 = var9; ; idx7 += inc1 */
- 0x03fed7b8, /* 0078(:406): DRD1A: *idx7; FN=0 init=31 WS=3 RS=3 */
- 0xda9b001b, /* 007C(:408): LCDEXT: idx5 = idx5, idx6 = idx6; idx5 once var0; idx5 += inc3, idx6 += inc3 */
- 0x9b9be01b, /* 0080(:408): LCD: idx7 = idx7; ; idx7 += inc3 */
- 0x1000cb20, /* 0084(:409): DRD1A: *idx2 = idx4; FN=0 MORE init=0 WS=0 RS=0 */
- 0x70000006, /* 0088(:410): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf88f, /* 008C(:410): DRD2B1: idx2 = EU3(); EU3(idx2,var15) */
- 0x1000cb28, /* 0090(:411): DRD1A: *idx2 = idx5; FN=0 MORE init=0 WS=0 RS=0 */
- 0x70000006, /* 0094(:412): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf88f, /* 0098(:412): DRD2B1: idx2 = EU3(); EU3(idx2,var15) */
- 0x1000cb30, /* 009C(:413): DRD1A: *idx2 = idx6; FN=0 MORE init=0 WS=0 RS=0 */
- 0x70000006, /* 00A0(:414): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf88f, /* 00A4(:414): DRD2B1: idx2 = EU3(); EU3(idx2,var15) */
- 0x1000cb38, /* 00A8(:415): DRD1A: *idx2 = idx7; FN=0 MORE init=0 WS=0 RS=0 */
- 0x0000c728, /* 00AC(:416): DRD1A: *idx1 = idx5; FN=0 init=0 WS=0 RS=0 */
- 0x000001f8, /* 00B0(:0): NOP */
- 0xc1476018, /* 00B4(:420): LCDEXT: idx1 = var2 + var14; ; idx1 += inc3 */
- 0xc003241d, /* 00B8(:420): LCDEXT: idx2 = var0, idx3 = var6; idx3 == var16; idx2 += inc3, idx3 += inc5 */
- 0x811a601b, /* 00BC(:421): LCD: idx4 = var2; ; idx4 += inc3 */
- 0xda9b001b, /* 00C0(:424): LCDEXT: idx5 = idx5, idx6 = idx6; idx5 once var0; idx5 += inc3, idx6 += inc3 */
- 0x9b9be01b, /* 00C4(:424): LCD: idx7 = idx7; ; idx7 += inc3 */
- 0x0000d3a0, /* 00C8(:425): DRD1A: *idx4; FN=0 init=0 WS=0 RS=0 */
- 0xc1862102, /* 00CC(:427): LCDEXT: idx5 = var3, idx6 = var12; idx6 < var4; idx5 += inc0, idx6 += inc2 */
- 0x849be009, /* 00D0(:427): LCD: idx7 = var9; ; idx7 += inc1 */
- 0x0bfed7b8, /* 00D4(:430): DRD1A: *idx7; FN=0 TFD init=31 WS=3 RS=3 */
- 0xda9b001b, /* 00D8(:432): LCDEXT: idx5 = idx5, idx6 = idx6; idx5 once var0; idx5 += inc3, idx6 += inc3 */
- 0x9b9be01b, /* 00DC(:432): LCD: idx7 = idx7; ; idx7 += inc3 */
- 0x1000cb20, /* 00E0(:433): DRD1A: *idx2 = idx4; FN=0 MORE init=0 WS=0 RS=0 */
- 0x70000006, /* 00E4(:434): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf88f, /* 00E8(:434): DRD2B1: idx2 = EU3(); EU3(idx2,var15) */
- 0x1000cb28, /* 00EC(:435): DRD1A: *idx2 = idx5; FN=0 MORE init=0 WS=0 RS=0 */
- 0x70000006, /* 00F0(:436): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf88f, /* 00F4(:436): DRD2B1: idx2 = EU3(); EU3(idx2,var15) */
- 0x1000cb30, /* 00F8(:437): DRD1A: *idx2 = idx6; FN=0 MORE init=0 WS=0 RS=0 */
- 0x70000006, /* 00FC(:438): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf88f, /* 0100(:438): DRD2B1: idx2 = EU3(); EU3(idx2,var15) */
- 0x1000cb38, /* 0104(:439): DRD1A: *idx2 = idx7; FN=0 MORE init=0 WS=0 RS=0 */
- 0x0000c728, /* 0108(:440): DRD1A: *idx1 = idx5; FN=0 init=0 WS=0 RS=0 */
- 0x000001f8, /* 010C(:0): NOP */
- 0x8118801b, /* 0110(:444): LCD: idx1 = var2; idx1 once var0; idx1 += inc3 */
- 0xd8c60018, /* 0114(:446): LCDEXT: idx2 = idx1 + var12; idx2 once var0; idx2 += inc3 */
- 0x98c6601c, /* 0118(:446): LCD: idx3 = idx1 + var12 + 4; ; idx3 += inc3 */
- 0x6000000b, /* 011C(:447): DRD2A: EU0=0 EU1=0 EU2=0 EU3=11 EXT init=0 WS=0 RS=0 */
- 0x0c8cfc9f, /* 0120(:447): DRD2B1: *idx2 = EU3(); EU3(*idx2) */
- 0x000001f8, /* 0124(:0): NOP */
- 0xa146001e, /* 0128(:450): LCD: idx1 = *(var2 + var12 + 24); idx1 once var0; idx1 += inc3 */
- 0x10000b08, /* 012C(:451): DRD1A: var2 = idx1; FN=0 MORE init=0 WS=0 RS=0 */
- 0x10002050, /* 0130(:452): DRD1A: var8 = var10; FN=0 MORE init=0 WS=0 RS=0 */
- 0xb8c60018, /* 0134(:453): LCD: idx2 = *(idx1 + var12); idx2 once var0; idx2 += inc3 */
- 0x10002b10, /* 0138(:454): DRD1A: var10 = idx2; FN=0 MORE init=0 WS=0 RS=0 */
- 0x7000000a, /* 013C(:455): DRD2A: EU0=0 EU1=0 EU2=0 EU3=10 EXT MORE init=0 WS=0 RS=0 */
- 0x080cf89f, /* 0140(:455): DRD2B1: idx0 = EU3(); EU3(idx2) */
- 0x6000000d, /* 0144(:456): DRD2A: EU0=0 EU1=0 EU2=0 EU3=13 EXT init=0 WS=0 RS=0 */
- 0x018cf89f, /* 0148(:456): DRD2B1: var6 = EU3(); EU3(idx2) */
- 0x000001f8, /* 014C(:0): NOP */
- 0x8618801b, /* 0150(:462): LCD: idx1 = var12; idx1 once var0; idx1 += inc3 */
- 0x7000000e, /* 0154(:463): DRD2A: EU0=0 EU1=0 EU2=0 EU3=14 EXT MORE init=0 WS=0 RS=0 */
- 0x084cf21f, /* 0158(:463): DRD2B1: idx1 = EU3(); EU3(var8) */
- 0xd8990336, /* 015C(:464): LCDEXT: idx2 = idx1; idx2 > var12; idx2 += inc6 */
- 0x8019801b, /* 0160(:464): LCD: idx3 = var0; idx3 once var0; idx3 += inc3 */
- 0x040001f8, /* 0164(:465): DRD1A: FN=0 INT init=0 WS=0 RS=0 */
- 0x000001f8, /* 0168(:0): NOP */
- 0x000001f8, /* 016C(:0): NOP */
-};
-u32 MCD_SingleNoEu_TDT[]=
-{
- 0x8198001b, /* 0000(:657): LCD: idx0 = var3; idx0 once var0; idx0 += inc3 */
- 0x7000000d, /* 0004(:658): DRD2A: EU0=0 EU1=0 EU2=0 EU3=13 EXT MORE init=0 WS=0 RS=0 */
- 0x080cf81f, /* 0008(:658): DRD2B1: idx0 = EU3(); EU3(idx0) */
- 0x8198801b, /* 000C(:659): LCD: idx1 = var3; idx1 once var0; idx1 += inc3 */
- 0x6000000e, /* 0010(:660): DRD2A: EU0=0 EU1=0 EU2=0 EU3=14 EXT init=0 WS=0 RS=0 */
- 0x084cf85f, /* 0014(:660): DRD2B1: idx1 = EU3(); EU3(idx1) */
- 0x000001f8, /* 0018(:0): NOP */
- 0x8298001b, /* 001C(:664): LCD: idx0 = var5; idx0 once var0; idx0 += inc3 */
- 0x7000000d, /* 0020(:665): DRD2A: EU0=0 EU1=0 EU2=0 EU3=13 EXT MORE init=0 WS=0 RS=0 */
- 0x010cf81f, /* 0024(:665): DRD2B1: var4 = EU3(); EU3(idx0) */
- 0x6000000e, /* 0028(:666): DRD2A: EU0=0 EU1=0 EU2=0 EU3=14 EXT init=0 WS=0 RS=0 */
- 0x018cf81f, /* 002C(:666): DRD2B1: var6 = EU3(); EU3(idx0) */
- 0xc202601b, /* 0030(:669): LCDEXT: idx0 = var4, idx1 = var4; ; idx0 += inc3, idx1 += inc3 */
- 0xc002221c, /* 0034(:669): LCDEXT: idx2 = var0, idx3 = var4; idx3 == var8; idx2 += inc3, idx3 += inc4 */
- 0x809a601b, /* 0038(:670): LCD: idx4 = var1; ; idx4 += inc3 */
- 0xc10420c2, /* 003C(:673): LCDEXT: idx5 = var2, idx6 = var8; idx6 < var3; idx5 += inc0, idx6 += inc2 */
- 0x839be009, /* 0040(:673): LCD: idx7 = var7; ; idx7 += inc1 */
- 0x03fed7b8, /* 0044(:676): DRD1A: *idx7; FN=0 init=31 WS=3 RS=3 */
- 0xda9b001b, /* 0048(:678): LCDEXT: idx5 = idx5, idx6 = idx6; idx5 once var0; idx5 += inc3, idx6 += inc3 */
- 0x9b9be01b, /* 004C(:678): LCD: idx7 = idx7; ; idx7 += inc3 */
- 0x70000006, /* 0050(:680): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf889, /* 0054(:680): DRD2B1: idx2 = EU3(); EU3(idx2,var9) */
- 0x1000cb28, /* 0058(:681): DRD1A: *idx2 = idx5; FN=0 MORE init=0 WS=0 RS=0 */
- 0x70000006, /* 005C(:682): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf889, /* 0060(:682): DRD2B1: idx2 = EU3(); EU3(idx2,var9) */
- 0x1000cb30, /* 0064(:683): DRD1A: *idx2 = idx6; FN=0 MORE init=0 WS=0 RS=0 */
- 0x70000006, /* 0068(:684): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf889, /* 006C(:684): DRD2B1: idx2 = EU3(); EU3(idx2,var9) */
- 0x0000cb38, /* 0070(:685): DRD1A: *idx2 = idx7; FN=0 init=0 WS=0 RS=0 */
- 0x000001f8, /* 0074(:0): NOP */
- 0xc202601b, /* 0078(:689): LCDEXT: idx0 = var4, idx1 = var4; ; idx0 += inc3, idx1 += inc3 */
- 0xc002229c, /* 007C(:689): LCDEXT: idx2 = var0, idx3 = var4; idx3 == var10; idx2 += inc3, idx3 += inc4 */
- 0x809a601b, /* 0080(:690): LCD: idx4 = var1; ; idx4 += inc3 */
- 0xda9b001b, /* 0084(:693): LCDEXT: idx5 = idx5, idx6 = idx6; idx5 once var0; idx5 += inc3, idx6 += inc3 */
- 0x9b9be01b, /* 0088(:693): LCD: idx7 = idx7; ; idx7 += inc3 */
- 0x0000d3a0, /* 008C(:694): DRD1A: *idx4; FN=0 init=0 WS=0 RS=0 */
- 0xc10420c2, /* 0090(:696): LCDEXT: idx5 = var2, idx6 = var8; idx6 < var3; idx5 += inc0, idx6 += inc2 */
- 0x839be009, /* 0094(:696): LCD: idx7 = var7; ; idx7 += inc1 */
- 0x0bfed7b8, /* 0098(:699): DRD1A: *idx7; FN=0 TFD init=31 WS=3 RS=3 */
- 0xda9b001b, /* 009C(:701): LCDEXT: idx5 = idx5, idx6 = idx6; idx5 once var0; idx5 += inc3, idx6 += inc3 */
- 0x9b9be01b, /* 00A0(:701): LCD: idx7 = idx7; ; idx7 += inc3 */
- 0x70000006, /* 00A4(:703): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf889, /* 00A8(:703): DRD2B1: idx2 = EU3(); EU3(idx2,var9) */
- 0x1000cb28, /* 00AC(:704): DRD1A: *idx2 = idx5; FN=0 MORE init=0 WS=0 RS=0 */
- 0x70000006, /* 00B0(:705): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf889, /* 00B4(:705): DRD2B1: idx2 = EU3(); EU3(idx2,var9) */
- 0x1000cb30, /* 00B8(:706): DRD1A: *idx2 = idx6; FN=0 MORE init=0 WS=0 RS=0 */
- 0x70000006, /* 00BC(:707): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf889, /* 00C0(:707): DRD2B1: idx2 = EU3(); EU3(idx2,var9) */
- 0x0000cb38, /* 00C4(:708): DRD1A: *idx2 = idx7; FN=0 init=0 WS=0 RS=0 */
- 0x000001f8, /* 00C8(:0): NOP */
- 0xc318022d, /* 00CC(:712): LCDEXT: idx0 = var6; idx0 > var8; idx0 += inc5 */
- 0x8018801b, /* 00D0(:712): LCD: idx1 = var0; idx1 once var0; idx1 += inc3 */
- 0x040001f8, /* 00D4(:713): DRD1A: FN=0 INT init=0 WS=0 RS=0 */
-};
-#ifdef MCD_INCLUDE_EU
-u32 MCD_ChainEu_TDT[]=
-{
- 0x80004000, /* 0000(:947): LCDEXT: idx0 = 0x00000000; ; */
- 0x8198801b, /* 0004(:947): LCD: idx1 = var3; idx1 once var0; idx1 += inc3 */
- 0xb8c68018, /* 0008(:948): LCD: idx2 = *(idx1 + var13); idx2 once var0; idx2 += inc3 */
- 0x10002f10, /* 000C(:949): DRD1A: var11 = idx2; FN=0 MORE init=0 WS=0 RS=0 */
- 0x7000000d, /* 0010(:950): DRD2A: EU0=0 EU1=0 EU2=0 EU3=13 EXT MORE init=0 WS=0 RS=0 */
- 0x01ccf89f, /* 0014(:950): DRD2B1: var7 = EU3(); EU3(idx2) */
- 0x6000000a, /* 0018(:951): DRD2A: EU0=0 EU1=0 EU2=0 EU3=10 EXT init=0 WS=0 RS=0 */
- 0x080cf89f, /* 001C(:951): DRD2B1: idx0 = EU3(); EU3(idx2) */
- 0x000001f8, /* 0020(:0): NOP */
- 0x981803a4, /* 0024(:955): LCD: idx0 = idx0; idx0 == var14; idx0 += inc4 */
- 0x8198801b, /* 0028(:957): LCD: idx1 = var3; idx1 once var0; idx1 += inc3 */
- 0xf8c6801a, /* 002C(:958): LCDEXT: idx2 = *(idx1 + var13 + 8); idx2 once var0; idx2 += inc3 */
- 0xb8c6e01b, /* 0030(:959): LCD: idx3 = *(idx1 + var13 + 12); ; idx3 += inc3 */
- 0x10002b10, /* 0034(:961): DRD1A: var10 = idx2; FN=0 MORE init=0 WS=0 RS=0 */
- 0x00001318, /* 0038(:962): DRD1A: var4 = idx3; FN=0 init=0 WS=0 RS=0 */
- 0xb8c6801d, /* 003C(:964): LCD: idx2 = *(idx1 + var13 + 20); idx2 once var0; idx2 += inc3 */
- 0x10001710, /* 0040(:965): DRD1A: var5 = idx2; FN=0 MORE init=0 WS=0 RS=0 */
- 0x60000007, /* 0044(:966): DRD2A: EU0=0 EU1=0 EU2=0 EU3=7 EXT init=0 WS=0 RS=0 */
- 0x018cf88c, /* 0048(:966): DRD2B1: var6 = EU3(); EU3(idx2,var12) */
- 0x98c6801c, /* 004C(:968): LCD: idx2 = idx1 + var13 + 4; idx2 once var0; idx2 += inc3 */
- 0x00000b10, /* 0050(:969): DRD1A: var2 = idx2; FN=0 init=0 WS=0 RS=0 */
- 0x98c78018, /* 0054(:970): LCD: idx2 = idx1 + var15; idx2 once var0; idx2 += inc3 */
- 0x10002310, /* 0058(:971): DRD1A: var8 = idx2; FN=0 MORE init=0 WS=0 RS=0 */
- 0x0000c820, /* 005C(:972): DRD1A: *idx2 = var4; FN=0 init=0 WS=0 RS=0 */
- 0x000001f8, /* 0060(:0): NOP */
- 0x8698801b, /* 0064(:976): LCD: idx1 = var13; idx1 once var0; idx1 += inc3 */
- 0x7000000f, /* 0068(:977): DRD2A: EU0=0 EU1=0 EU2=0 EU3=15 EXT MORE init=0 WS=0 RS=0 */
- 0x084cf2df, /* 006C(:977): DRD2B1: idx1 = EU3(); EU3(var11) */
- 0xd899042d, /* 0070(:978): LCDEXT: idx2 = idx1; idx2 >= var16; idx2 += inc5 */
- 0x8019801b, /* 0074(:978): LCD: idx3 = var0; idx3 once var0; idx3 += inc3 */
- 0x60000003, /* 0078(:979): DRD2A: EU0=0 EU1=0 EU2=0 EU3=3 EXT init=0 WS=0 RS=0 */
- 0x2cd7c7df, /* 007C(:979): DRD2B2: EU3(var13) */
- 0xd8990364, /* 0080(:980): LCDEXT: idx2 = idx1; idx2 == var13; idx2 += inc4 */
- 0x8019801b, /* 0084(:980): LCD: idx3 = var0; idx3 once var0; idx3 += inc3 */
- 0x60000003, /* 0088(:981): DRD2A: EU0=0 EU1=0 EU2=0 EU3=3 EXT init=0 WS=0 RS=0 */
- 0x2c17c7df, /* 008C(:981): DRD2B2: EU3(var1) */
- 0x000001f8, /* 0090(:0): NOP */
- 0xc1c7e018, /* 0094(:984): LCDEXT: idx1 = var3 + var15; ; idx1 += inc3 */
- 0xc003a35e, /* 0098(:984): LCDEXT: idx2 = var0, idx3 = var7; idx3 == var13; idx2 += inc3, idx3 += inc6 */
- 0x819a601b, /* 009C(:985): LCD: idx4 = var3; ; idx4 += inc3 */
- 0xc206a142, /* 00A0(:988): LCDEXT: idx5 = var4, idx6 = var13; idx6 < var5; idx5 += inc0, idx6 += inc2 */
- 0x851be009, /* 00A4(:988): LCD: idx7 = var10; ; idx7 += inc1 */
- 0x63fe0000, /* 00A8(:991): DRD2A: EU0=0 EU1=0 EU2=0 EU3=0 EXT init=31 WS=3 RS=3 */
- 0x0d4cfddf, /* 00AC(:991): DRD2B1: *idx5 = EU3(); EU3(*idx7) */
- 0xda9b001b, /* 00B0(:993): LCDEXT: idx5 = idx5, idx6 = idx6; idx5 once var0; idx5 += inc3, idx6 += inc3 */
- 0x9b9be01b, /* 00B4(:993): LCD: idx7 = idx7; ; idx7 += inc3 */
- 0x70000002, /* 00B8(:994): DRD2A: EU0=0 EU1=0 EU2=0 EU3=2 EXT MORE init=0 WS=0 RS=0 */
- 0x004cf81f, /* 00BC(:994): DRD2B1: var1 = EU3(); EU3(idx0) */
- 0x1000cb20, /* 00C0(:995): DRD1A: *idx2 = idx4; FN=0 MORE init=0 WS=0 RS=0 */
- 0x70000006, /* 00C4(:996): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf891, /* 00C8(:996): DRD2B1: idx2 = EU3(); EU3(idx2,var17) */
- 0x1000cb28, /* 00CC(:997): DRD1A: *idx2 = idx5; FN=0 MORE init=0 WS=0 RS=0 */
- 0x70000006, /* 00D0(:998): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf891, /* 00D4(:998): DRD2B1: idx2 = EU3(); EU3(idx2,var17) */
- 0x1000cb30, /* 00D8(:999): DRD1A: *idx2 = idx6; FN=0 MORE init=0 WS=0 RS=0 */
- 0x70000006, /* 00DC(:1000): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf891, /* 00E0(:1000): DRD2B1: idx2 = EU3(); EU3(idx2,var17) */
- 0x1000cb38, /* 00E4(:1001): DRD1A: *idx2 = idx7; FN=0 MORE init=0 WS=0 RS=0 */
- 0x0000c728, /* 00E8(:1002): DRD1A: *idx1 = idx5; FN=0 init=0 WS=0 RS=0 */
- 0x000001f8, /* 00EC(:0): NOP */
- 0xc1c7e018, /* 00F0(:1006): LCDEXT: idx1 = var3 + var15; ; idx1 += inc3 */
- 0xc003a49e, /* 00F4(:1006): LCDEXT: idx2 = var0, idx3 = var7; idx3 == var18; idx2 += inc3, idx3 += inc6 */
- 0x819a601b, /* 00F8(:1007): LCD: idx4 = var3; ; idx4 += inc3 */
- 0xda9b001b, /* 00FC(:1010): LCDEXT: idx5 = idx5, idx6 = idx6; idx5 once var0; idx5 += inc3, idx6 += inc3 */
- 0x9b9be01b, /* 0100(:1010): LCD: idx7 = idx7; ; idx7 += inc3 */
- 0x0000d3a0, /* 0104(:1011): DRD1A: *idx4; FN=0 init=0 WS=0 RS=0 */
- 0xc206a142, /* 0108(:1013): LCDEXT: idx5 = var4, idx6 = var13; idx6 < var5; idx5 += inc0, idx6 += inc2 */
- 0x851be009, /* 010C(:1013): LCD: idx7 = var10; ; idx7 += inc1 */
- 0x6bfe0000, /* 0110(:1016): DRD2A: EU0=0 EU1=0 EU2=0 EU3=0 TFD EXT init=31 WS=3 RS=3 */
- 0x0d4cfddf, /* 0114(:1016): DRD2B1: *idx5 = EU3(); EU3(*idx7) */
- 0xda9b001b, /* 0118(:1018): LCDEXT: idx5 = idx5, idx6 = idx6; idx5 once var0; idx5 += inc3, idx6 += inc3 */
- 0x9b9be01b, /* 011C(:1018): LCD: idx7 = idx7; ; idx7 += inc3 */
- 0x70000002, /* 0120(:1019): DRD2A: EU0=0 EU1=0 EU2=0 EU3=2 EXT MORE init=0 WS=0 RS=0 */
- 0x004cf81f, /* 0124(:1019): DRD2B1: var1 = EU3(); EU3(idx0) */
- 0x1000cb20, /* 0128(:1020): DRD1A: *idx2 = idx4; FN=0 MORE init=0 WS=0 RS=0 */
- 0x70000006, /* 012C(:1021): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf891, /* 0130(:1021): DRD2B1: idx2 = EU3(); EU3(idx2,var17) */
- 0x1000cb28, /* 0134(:1022): DRD1A: *idx2 = idx5; FN=0 MORE init=0 WS=0 RS=0 */
- 0x70000006, /* 0138(:1023): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf891, /* 013C(:1023): DRD2B1: idx2 = EU3(); EU3(idx2,var17) */
- 0x1000cb30, /* 0140(:1024): DRD1A: *idx2 = idx6; FN=0 MORE init=0 WS=0 RS=0 */
- 0x70000006, /* 0144(:1025): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf891, /* 0148(:1025): DRD2B1: idx2 = EU3(); EU3(idx2,var17) */
- 0x1000cb38, /* 014C(:1026): DRD1A: *idx2 = idx7; FN=0 MORE init=0 WS=0 RS=0 */
- 0x0000c728, /* 0150(:1027): DRD1A: *idx1 = idx5; FN=0 init=0 WS=0 RS=0 */
- 0x000001f8, /* 0154(:0): NOP */
- 0x8198801b, /* 0158(:1031): LCD: idx1 = var3; idx1 once var0; idx1 += inc3 */
- 0xd8c68018, /* 015C(:1033): LCDEXT: idx2 = idx1 + var13; idx2 once var0; idx2 += inc3 */
- 0x98c6e01c, /* 0160(:1033): LCD: idx3 = idx1 + var13 + 4; ; idx3 += inc3 */
- 0x6000000b, /* 0164(:1034): DRD2A: EU0=0 EU1=0 EU2=0 EU3=11 EXT init=0 WS=0 RS=0 */
- 0x0c8cfc9f, /* 0168(:1034): DRD2B1: *idx2 = EU3(); EU3(*idx2) */
- 0x0000cc08, /* 016C(:1035): DRD1A: *idx3 = var1; FN=0 init=0 WS=0 RS=0 */
- 0xa1c6801e, /* 0170(:1038): LCD: idx1 = *(var3 + var13 + 24); idx1 once var0; idx1 += inc3 */
- 0x10000f08, /* 0174(:1039): DRD1A: var3 = idx1; FN=0 MORE init=0 WS=0 RS=0 */
- 0x10002458, /* 0178(:1040): DRD1A: var9 = var11; FN=0 MORE init=0 WS=0 RS=0 */
- 0xb8c68018, /* 017C(:1041): LCD: idx2 = *(idx1 + var13); idx2 once var0; idx2 += inc3 */
- 0x10002f10, /* 0180(:1042): DRD1A: var11 = idx2; FN=0 MORE init=0 WS=0 RS=0 */
- 0x7000000a, /* 0184(:1043): DRD2A: EU0=0 EU1=0 EU2=0 EU3=10 EXT MORE init=0 WS=0 RS=0 */
- 0x080cf89f, /* 0188(:1043): DRD2B1: idx0 = EU3(); EU3(idx2) */
- 0x6000000d, /* 018C(:1044): DRD2A: EU0=0 EU1=0 EU2=0 EU3=13 EXT init=0 WS=0 RS=0 */
- 0x01ccf89f, /* 0190(:1044): DRD2B1: var7 = EU3(); EU3(idx2) */
- 0x000001f8, /* 0194(:0): NOP */
- 0x8698801b, /* 0198(:1050): LCD: idx1 = var13; idx1 once var0; idx1 += inc3 */
- 0x7000000e, /* 019C(:1051): DRD2A: EU0=0 EU1=0 EU2=0 EU3=14 EXT MORE init=0 WS=0 RS=0 */
- 0x084cf25f, /* 01A0(:1051): DRD2B1: idx1 = EU3(); EU3(var9) */
- 0xd899037f, /* 01A4(:1052): LCDEXT: idx2 = idx1; idx2 > var13; idx2 += inc7 */
- 0x8019801b, /* 01A8(:1052): LCD: idx3 = var0; idx3 once var0; idx3 += inc3 */
- 0x040001f8, /* 01AC(:1053): DRD1A: FN=0 INT init=0 WS=0 RS=0 */
- 0x000001f8, /* 01B0(:0): NOP */
- 0x000001f8, /* 01B4(:0): NOP */
-};
-u32 MCD_SingleEu_TDT[]=
-{
- 0x8218001b, /* 0000(:1248): LCD: idx0 = var4; idx0 once var0; idx0 += inc3 */
- 0x7000000d, /* 0004(:1249): DRD2A: EU0=0 EU1=0 EU2=0 EU3=13 EXT MORE init=0 WS=0 RS=0 */
- 0x080cf81f, /* 0008(:1249): DRD2B1: idx0 = EU3(); EU3(idx0) */
- 0x8218801b, /* 000C(:1250): LCD: idx1 = var4; idx1 once var0; idx1 += inc3 */
- 0x6000000e, /* 0010(:1251): DRD2A: EU0=0 EU1=0 EU2=0 EU3=14 EXT init=0 WS=0 RS=0 */
- 0x084cf85f, /* 0014(:1251): DRD2B1: idx1 = EU3(); EU3(idx1) */
- 0x000001f8, /* 0018(:0): NOP */
- 0x8318001b, /* 001C(:1255): LCD: idx0 = var6; idx0 once var0; idx0 += inc3 */
- 0x7000000d, /* 0020(:1256): DRD2A: EU0=0 EU1=0 EU2=0 EU3=13 EXT MORE init=0 WS=0 RS=0 */
- 0x014cf81f, /* 0024(:1256): DRD2B1: var5 = EU3(); EU3(idx0) */
- 0x6000000e, /* 0028(:1257): DRD2A: EU0=0 EU1=0 EU2=0 EU3=14 EXT init=0 WS=0 RS=0 */
- 0x01ccf81f, /* 002C(:1257): DRD2B1: var7 = EU3(); EU3(idx0) */
- 0x8498001b, /* 0030(:1260): LCD: idx0 = var9; idx0 once var0; idx0 += inc3 */
- 0x7000000f, /* 0034(:1261): DRD2A: EU0=0 EU1=0 EU2=0 EU3=15 EXT MORE init=0 WS=0 RS=0 */
- 0x080cf19f, /* 0038(:1261): DRD2B1: idx0 = EU3(); EU3(var6) */
- 0xd81882a4, /* 003C(:1262): LCDEXT: idx1 = idx0; idx1 >= var10; idx1 += inc4 */
- 0x8019001b, /* 0040(:1262): LCD: idx2 = var0; idx2 once var0; idx2 += inc3 */
- 0x60000003, /* 0044(:1263): DRD2A: EU0=0 EU1=0 EU2=0 EU3=3 EXT init=0 WS=0 RS=0 */
- 0x2c97c7df, /* 0048(:1263): DRD2B2: EU3(var9) */
- 0xd818826d, /* 004C(:1264): LCDEXT: idx1 = idx0; idx1 == var9; idx1 += inc5 */
- 0x8019001b, /* 0050(:1264): LCD: idx2 = var0; idx2 once var0; idx2 += inc3 */
- 0x60000003, /* 0054(:1265): DRD2A: EU0=0 EU1=0 EU2=0 EU3=3 EXT init=0 WS=0 RS=0 */
- 0x2c17c7df, /* 0058(:1265): DRD2B2: EU3(var1) */
- 0x000001f8, /* 005C(:0): NOP */
- 0xc282e01b, /* 0060(:1268): LCDEXT: idx0 = var5, idx1 = var5; ; idx0 += inc3, idx1 += inc3 */
- 0xc002a25e, /* 0064(:1268): LCDEXT: idx2 = var0, idx3 = var5; idx3 == var9; idx2 += inc3, idx3 += inc6 */
- 0x811a601b, /* 0068(:1269): LCD: idx4 = var2; ; idx4 += inc3 */
- 0xc184a102, /* 006C(:1272): LCDEXT: idx5 = var3, idx6 = var9; idx6 < var4; idx5 += inc0, idx6 += inc2 */
- 0x841be009, /* 0070(:1272): LCD: idx7 = var8; ; idx7 += inc1 */
- 0x63fe0000, /* 0074(:1275): DRD2A: EU0=0 EU1=0 EU2=0 EU3=0 EXT init=31 WS=3 RS=3 */
- 0x0d4cfddf, /* 0078(:1275): DRD2B1: *idx5 = EU3(); EU3(*idx7) */
- 0xda9b001b, /* 007C(:1277): LCDEXT: idx5 = idx5, idx6 = idx6; idx5 once var0; idx5 += inc3, idx6 += inc3 */
- 0x9b9be01b, /* 0080(:1277): LCD: idx7 = idx7; ; idx7 += inc3 */
- 0x70000002, /* 0084(:1279): DRD2A: EU0=0 EU1=0 EU2=0 EU3=2 EXT MORE init=0 WS=0 RS=0 */
- 0x004cf99f, /* 0088(:1279): DRD2B1: var1 = EU3(); EU3(idx6) */
- 0x70000006, /* 008C(:1280): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf88b, /* 0090(:1280): DRD2B1: idx2 = EU3(); EU3(idx2,var11) */
- 0x1000cb28, /* 0094(:1281): DRD1A: *idx2 = idx5; FN=0 MORE init=0 WS=0 RS=0 */
- 0x70000006, /* 0098(:1282): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf88b, /* 009C(:1282): DRD2B1: idx2 = EU3(); EU3(idx2,var11) */
- 0x1000cb30, /* 00A0(:1283): DRD1A: *idx2 = idx6; FN=0 MORE init=0 WS=0 RS=0 */
- 0x70000006, /* 00A4(:1284): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf88b, /* 00A8(:1284): DRD2B1: idx2 = EU3(); EU3(idx2,var11) */
- 0x0000cb38, /* 00AC(:1285): DRD1A: *idx2 = idx7; FN=0 init=0 WS=0 RS=0 */
- 0x000001f8, /* 00B0(:0): NOP */
- 0xc282e01b, /* 00B4(:1289): LCDEXT: idx0 = var5, idx1 = var5; ; idx0 += inc3, idx1 += inc3 */
- 0xc002a31e, /* 00B8(:1289): LCDEXT: idx2 = var0, idx3 = var5; idx3 == var12; idx2 += inc3, idx3 += inc6 */
- 0x811a601b, /* 00BC(:1290): LCD: idx4 = var2; ; idx4 += inc3 */
- 0xda9b001b, /* 00C0(:1293): LCDEXT: idx5 = idx5, idx6 = idx6; idx5 once var0; idx5 += inc3, idx6 += inc3 */
- 0x9b9be01b, /* 00C4(:1293): LCD: idx7 = idx7; ; idx7 += inc3 */
- 0x0000d3a0, /* 00C8(:1294): DRD1A: *idx4; FN=0 init=0 WS=0 RS=0 */
- 0xc184a102, /* 00CC(:1296): LCDEXT: idx5 = var3, idx6 = var9; idx6 < var4; idx5 += inc0, idx6 += inc2 */
- 0x841be009, /* 00D0(:1296): LCD: idx7 = var8; ; idx7 += inc1 */
- 0x6bfe0000, /* 00D4(:1299): DRD2A: EU0=0 EU1=0 EU2=0 EU3=0 TFD EXT init=31 WS=3 RS=3 */
- 0x0d4cfddf, /* 00D8(:1299): DRD2B1: *idx5 = EU3(); EU3(*idx7) */
- 0xda9b001b, /* 00DC(:1301): LCDEXT: idx5 = idx5, idx6 = idx6; idx5 once var0; idx5 += inc3, idx6 += inc3 */
- 0x9b9be01b, /* 00E0(:1301): LCD: idx7 = idx7; ; idx7 += inc3 */
- 0x70000002, /* 00E4(:1303): DRD2A: EU0=0 EU1=0 EU2=0 EU3=2 EXT MORE init=0 WS=0 RS=0 */
- 0x004cf99f, /* 00E8(:1303): DRD2B1: var1 = EU3(); EU3(idx6) */
- 0x70000006, /* 00EC(:1304): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf88b, /* 00F0(:1304): DRD2B1: idx2 = EU3(); EU3(idx2,var11) */
- 0x1000cb28, /* 00F4(:1305): DRD1A: *idx2 = idx5; FN=0 MORE init=0 WS=0 RS=0 */
- 0x70000006, /* 00F8(:1306): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf88b, /* 00FC(:1306): DRD2B1: idx2 = EU3(); EU3(idx2,var11) */
- 0x1000cb30, /* 0100(:1307): DRD1A: *idx2 = idx6; FN=0 MORE init=0 WS=0 RS=0 */
- 0x70000006, /* 0104(:1308): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf88b, /* 0108(:1308): DRD2B1: idx2 = EU3(); EU3(idx2,var11) */
- 0x0000cb38, /* 010C(:1309): DRD1A: *idx2 = idx7; FN=0 init=0 WS=0 RS=0 */
- 0x000001f8, /* 0110(:0): NOP */
- 0x8144801c, /* 0114(:1312): LCD: idx0 = var2 + var9 + 4; idx0 once var0; idx0 += inc3 */
- 0x0000c008, /* 0118(:1313): DRD1A: *idx0 = var1; FN=0 init=0 WS=0 RS=0 */
- 0xc398027f, /* 011C(:1315): LCDEXT: idx0 = var7; idx0 > var9; idx0 += inc7 */
- 0x8018801b, /* 0120(:1315): LCD: idx1 = var0; idx1 once var0; idx1 += inc3 */
- 0x040001f8, /* 0124(:1316): DRD1A: FN=0 INT init=0 WS=0 RS=0 */
-};
-#endif
-u32 MCD_ENetRcv_TDT[]=
-{
- 0x80004000, /* 0000(:1389): LCDEXT: idx0 = 0x00000000; ; */
- 0x81988000, /* 0004(:1389): LCD: idx1 = var3; idx1 once var0; idx1 += inc0 */
- 0x10000788, /* 0008(:1390): DRD1A: var1 = *idx1; FN=0 MORE init=0 WS=0 RS=0 */
- 0x6000000a, /* 000C(:1391): DRD2A: EU0=0 EU1=0 EU2=0 EU3=10 EXT init=0 WS=0 RS=0 */
- 0x080cf05f, /* 0010(:1391): DRD2B1: idx0 = EU3(); EU3(var1) */
- 0x98180209, /* 0014(:1394): LCD: idx0 = idx0; idx0 != var8; idx0 += inc1 */
- 0x81c40004, /* 0018(:1396): LCD: idx1 = var3 + var8 + 4; idx1 once var0; idx1 += inc0 */
- 0x7000000e, /* 001C(:1397): DRD2A: EU0=0 EU1=0 EU2=0 EU3=14 EXT MORE init=0 WS=0 RS=0 */
- 0x010cf05f, /* 0020(:1397): DRD2B1: var4 = EU3(); EU3(var1) */
- 0x7000000c, /* 0024(:1398): DRD2A: EU0=0 EU1=0 EU2=0 EU3=12 EXT MORE init=0 WS=0 RS=0 */
- 0x01ccf05f, /* 0028(:1398): DRD2B1: var7 = EU3(); EU3(var1) */
- 0x70000004, /* 002C(:1399): DRD2A: EU0=0 EU1=0 EU2=0 EU3=4 EXT MORE init=0 WS=0 RS=0 */
- 0x014cf049, /* 0030(:1399): DRD2B1: var5 = EU3(); EU3(var1,var9) */
- 0x70000004, /* 0034(:1400): DRD2A: EU0=0 EU1=0 EU2=0 EU3=4 EXT MORE init=0 WS=0 RS=0 */
- 0x004cf04a, /* 0038(:1400): DRD2B1: var1 = EU3(); EU3(var1,var10) */
- 0x00000b88, /* 003C(:1403): DRD1A: var2 = *idx1; FN=0 init=0 WS=0 RS=0 */
- 0xc4030150, /* 0040(:1406): LCDEXT: idx1 = var8, idx2 = var6; idx1 < var5; idx1 += inc2, idx2 += inc0 */
- 0x8119e012, /* 0044(:1406): LCD: idx3 = var2; ; idx3 += inc2 */
- 0x03e0cf90, /* 0048(:1409): DRD1A: *idx3 = *idx2; FN=0 init=31 WS=0 RS=0 */
- 0x81188000, /* 004C(:1412): LCD: idx1 = var2; idx1 once var0; idx1 += inc0 */
- 0x000ac788, /* 0050(:1413): DRD1A: *idx1 = *idx1; FN=0 init=0 WS=1 RS=1 */
- 0xc4030000, /* 0054(:1415): LCDEXT: idx1 = var8, idx2 = var6; idx1 once var0; idx1 += inc0, idx2 += inc0 */
- 0x8199e000, /* 0058(:1415): LCD: idx3 = var3; ; idx3 += inc0 */
- 0x70000004, /* 005C(:1421): DRD2A: EU0=0 EU1=0 EU2=0 EU3=4 EXT MORE init=0 WS=0 RS=0 */
- 0x084cfc8b, /* 0060(:1421): DRD2B1: idx1 = EU3(); EU3(*idx2,var11) */
- 0x60000005, /* 0064(:1422): DRD2A: EU0=0 EU1=0 EU2=0 EU3=5 EXT init=0 WS=0 RS=0 */
- 0x0cccf841, /* 0068(:1422): DRD2B1: *idx3 = EU3(); EU3(idx1,var1) */
- 0x81c60000, /* 006C(:1428): LCD: idx1 = var3 + var12; idx1 once var0; idx1 += inc0 */
- 0xc399021b, /* 0070(:1430): LCDEXT: idx2 = var7; idx2 > var8; idx2 += inc3 */
- 0x80198000, /* 0074(:1430): LCD: idx3 = var0; idx3 once var0; idx3 += inc0 */
- 0x00008400, /* 0078(:1431): DRD1A: idx1 = var0; FN=0 init=0 WS=0 RS=0 */
- 0x00000f08, /* 007C(:1432): DRD1A: var3 = idx1; FN=0 init=0 WS=0 RS=0 */
- 0x81988000, /* 0080(:1435): LCD: idx1 = var3; idx1 once var0; idx1 += inc0 */
- 0x10000788, /* 0084(:1436): DRD1A: var1 = *idx1; FN=0 MORE init=0 WS=0 RS=0 */
- 0x6000000a, /* 0088(:1437): DRD2A: EU0=0 EU1=0 EU2=0 EU3=10 EXT init=0 WS=0 RS=0 */
- 0x080cf05f, /* 008C(:1437): DRD2B1: idx0 = EU3(); EU3(var1) */
- 0xc2188209, /* 0090(:1440): LCDEXT: idx1 = var4; idx1 != var8; idx1 += inc1 */
- 0x80190000, /* 0094(:1440): LCD: idx2 = var0; idx2 once var0; idx2 += inc0 */
- 0x040001f8, /* 0098(:1441): DRD1A: FN=0 INT init=0 WS=0 RS=0 */
- 0x000001f8, /* 009C(:0): NOP */
-};
-u32 MCD_ENetXmit_TDT[]=
-{
- 0x80004000, /* 0000(:1516): LCDEXT: idx0 = 0x00000000; ; */
- 0x81988000, /* 0004(:1516): LCD: idx1 = var3; idx1 once var0; idx1 += inc0 */
- 0x10000788, /* 0008(:1517): DRD1A: var1 = *idx1; FN=0 MORE init=0 WS=0 RS=0 */
- 0x6000000a, /* 000C(:1518): DRD2A: EU0=0 EU1=0 EU2=0 EU3=10 EXT init=0 WS=0 RS=0 */
- 0x080cf05f, /* 0010(:1518): DRD2B1: idx0 = EU3(); EU3(var1) */
- 0x98180309, /* 0014(:1521): LCD: idx0 = idx0; idx0 != var12; idx0 += inc1 */
- 0x80004003, /* 0018(:1523): LCDEXT: idx1 = 0x00000003; ; */
- 0x81c60004, /* 001C(:1523): LCD: idx2 = var3 + var12 + 4; idx2 once var0; idx2 += inc0 */
- 0x7000000e, /* 0020(:1524): DRD2A: EU0=0 EU1=0 EU2=0 EU3=14 EXT MORE init=0 WS=0 RS=0 */
- 0x014cf05f, /* 0024(:1524): DRD2B1: var5 = EU3(); EU3(var1) */
- 0x7000000c, /* 0028(:1525): DRD2A: EU0=0 EU1=0 EU2=0 EU3=12 EXT MORE init=0 WS=0 RS=0 */
- 0x028cf05f, /* 002C(:1525): DRD2B1: var10 = EU3(); EU3(var1) */
- 0x7000000d, /* 0030(:1526): DRD2A: EU0=0 EU1=0 EU2=0 EU3=13 EXT MORE init=0 WS=0 RS=0 */
- 0x018cf05f, /* 0034(:1526): DRD2B1: var6 = EU3(); EU3(var1) */
- 0x70000004, /* 0038(:1527): DRD2A: EU0=0 EU1=0 EU2=0 EU3=4 EXT MORE init=0 WS=0 RS=0 */
- 0x01ccf04d, /* 003C(:1527): DRD2B1: var7 = EU3(); EU3(var1,var13) */
- 0x10000b90, /* 0040(:1528): DRD1A: var2 = *idx2; FN=0 MORE init=0 WS=0 RS=0 */
- 0x60000004, /* 0044(:1529): DRD2A: EU0=0 EU1=0 EU2=0 EU3=4 EXT init=0 WS=0 RS=0 */
- 0x020cf0a1, /* 0048(:1529): DRD2B1: var8 = EU3(); EU3(var2,idx1) */
- 0xc3188312, /* 004C(:1532): LCDEXT: idx1 = var6; idx1 > var12; idx1 += inc2 */
- 0x83c70000, /* 0050(:1532): LCD: idx2 = var7 + var14; idx2 once var0; idx2 += inc0 */
- 0x00001f10, /* 0054(:1533): DRD1A: var7 = idx2; FN=0 init=0 WS=0 RS=0 */
- 0xc583a3c3, /* 0058(:1535): LCDEXT: idx1 = var11, idx2 = var7; idx2 >= var15; idx1 += inc0, idx2 += inc3 */
- 0x81042325, /* 005C(:1535): LCD: idx3 = var2, idx4 = var8; idx4 == var12; idx3 += inc4, idx4 += inc5 */
- 0x03e0c798, /* 0060(:1540): DRD1A: *idx1 = *idx3; FN=0 init=31 WS=0 RS=0 */
- 0xd8990000, /* 0064(:1543): LCDEXT: idx1 = idx1, idx2 = idx2; idx1 once var0; idx1 += inc0, idx2 += inc0 */
- 0x9999e000, /* 0068(:1543): LCD: idx3 = idx3; ; idx3 += inc0 */
- 0x000acf98, /* 006C(:1544): DRD1A: *idx3 = *idx3; FN=0 init=0 WS=1 RS=1 */
- 0xd8992306, /* 0070(:1546): LCDEXT: idx1 = idx1, idx2 = idx2; idx2 > var12; idx1 += inc0, idx2 += inc6 */
- 0x9999e03f, /* 0074(:1546): LCD: idx3 = idx3; ; idx3 += inc7 */
- 0x03eac798, /* 0078(:1549): DRD1A: *idx1 = *idx3; FN=0 init=31 WS=1 RS=1 */
- 0xd8990000, /* 007C(:1552): LCDEXT: idx1 = idx1, idx2 = idx2; idx1 once var0; idx1 += inc0, idx2 += inc0 */
- 0x9999e000, /* 0080(:1552): LCD: idx3 = idx3; ; idx3 += inc0 */
- 0x000acf98, /* 0084(:1553): DRD1A: *idx3 = *idx3; FN=0 init=0 WS=1 RS=1 */
- 0xd8990000, /* 0088(:1555): LCDEXT: idx1 = idx1, idx2 = idx2; idx1 once var0; idx1 += inc0, idx2 += inc0 */
- 0x99832302, /* 008C(:1555): LCD: idx3 = idx3, idx4 = var6; idx4 > var12; idx3 += inc0, idx4 += inc2 */
- 0x0beac798, /* 0090(:1558): DRD1A: *idx1 = *idx3; FN=0 TFD init=31 WS=1 RS=1 */
- 0x81988000, /* 0094(:1560): LCD: idx1 = var3; idx1 once var0; idx1 += inc0 */
- 0x6000000b, /* 0098(:1561): DRD2A: EU0=0 EU1=0 EU2=0 EU3=11 EXT init=0 WS=0 RS=0 */
- 0x0c4cfc5f, /* 009C(:1561): DRD2B1: *idx1 = EU3(); EU3(*idx1) */
- 0x81c80000, /* 00A0(:1563): LCD: idx1 = var3 + var16; idx1 once var0; idx1 += inc0 */
- 0xc5190312, /* 00A4(:1565): LCDEXT: idx2 = var10; idx2 > var12; idx2 += inc2 */
- 0x80198000, /* 00A8(:1565): LCD: idx3 = var0; idx3 once var0; idx3 += inc0 */
- 0x00008400, /* 00AC(:1566): DRD1A: idx1 = var0; FN=0 init=0 WS=0 RS=0 */
- 0x00000f08, /* 00B0(:1567): DRD1A: var3 = idx1; FN=0 init=0 WS=0 RS=0 */
- 0x81988000, /* 00B4(:1570): LCD: idx1 = var3; idx1 once var0; idx1 += inc0 */
- 0x10000788, /* 00B8(:1571): DRD1A: var1 = *idx1; FN=0 MORE init=0 WS=0 RS=0 */
- 0x6000000a, /* 00BC(:1572): DRD2A: EU0=0 EU1=0 EU2=0 EU3=10 EXT init=0 WS=0 RS=0 */
- 0x080cf05f, /* 00C0(:1572): DRD2B1: idx0 = EU3(); EU3(var1) */
- 0xc2988309, /* 00C4(:1575): LCDEXT: idx1 = var5; idx1 != var12; idx1 += inc1 */
- 0x80190000, /* 00C8(:1575): LCD: idx2 = var0; idx2 once var0; idx2 += inc0 */
- 0x040001f8, /* 00CC(:1576): DRD1A: FN=0 INT init=0 WS=0 RS=0 */
- 0x000001f8, /* 00D0(:0): NOP */
-};
-
-#ifdef MCD_INCLUDE_EU
-MCD_bufDesc MCD_singleBufDescs[NCHANNELS];
-#endif
diff --git a/arch/m68k/mach-mcfv4e/mcdapi/MCD_tasksInit.c b/arch/m68k/mach-mcfv4e/mcdapi/MCD_tasksInit.c
deleted file mode 100644
index 8d82b471f9..0000000000
--- a/arch/m68k/mach-mcfv4e/mcdapi/MCD_tasksInit.c
+++ /dev/null
@@ -1,225 +0,0 @@
-/*
- * File: MCD_tasksInit.c
- * Purpose: Functions for initializing variable tables of different
- * types of tasks.
- *
- * Notes:
- */
-
-/*
- * Do not edit!
- */
-
-#include <asm/types.h>
-#include <proc/mcdapi/MCD_dma.h>
-
-extern dmaRegs *MCD_dmaBar;
-
-
-/*
- * Task 0
- */
-
-void MCD_startDmaChainNoEu(int *currBD, short srcIncr, short destIncr, int xferSize, short xferSizeIncr, int *cSave, volatile TaskTableEntry *taskTable, int channel)
-{
-
- MCD_SET_VAR(taskTable+channel, 2, (u32)currBD); /* var[2] */
- MCD_SET_VAR(taskTable+channel, 25, (u32)(0xe000 << 16) | (0xffff & srcIncr)); /* inc[1] */
- MCD_SET_VAR(taskTable+channel, 24, (u32)(0xe000 << 16) | (0xffff & destIncr)); /* inc[0] */
- MCD_SET_VAR(taskTable+channel, 11, (u32)xferSize); /* var[11] */
- MCD_SET_VAR(taskTable+channel, 26, (u32)(0x2000 << 16) | (0xffff & xferSizeIncr)); /* inc[2] */
- MCD_SET_VAR(taskTable+channel, 0, (u32)cSave); /* var[0] */
- MCD_SET_VAR(taskTable+channel, 1, (u32)0x00000000); /* var[1] */
- MCD_SET_VAR(taskTable+channel, 3, (u32)0x00000000); /* var[3] */
- MCD_SET_VAR(taskTable+channel, 4, (u32)0x00000000); /* var[4] */
- MCD_SET_VAR(taskTable+channel, 5, (u32)0x00000000); /* var[5] */
- MCD_SET_VAR(taskTable+channel, 6, (u32)0x00000000); /* var[6] */
- MCD_SET_VAR(taskTable+channel, 7, (u32)0x00000000); /* var[7] */
- MCD_SET_VAR(taskTable+channel, 8, (u32)0x00000000); /* var[8] */
- MCD_SET_VAR(taskTable+channel, 9, (u32)0x00000000); /* var[9] */
- MCD_SET_VAR(taskTable+channel, 10, (u32)0x00000000); /* var[10] */
- MCD_SET_VAR(taskTable+channel, 12, (u32)0x00000000); /* var[12] */
- MCD_SET_VAR(taskTable+channel, 13, (u32)0x80000000); /* var[13] */
- MCD_SET_VAR(taskTable+channel, 14, (u32)0x00000010); /* var[14] */
- MCD_SET_VAR(taskTable+channel, 15, (u32)0x00000004); /* var[15] */
- MCD_SET_VAR(taskTable+channel, 16, (u32)0x08000000); /* var[16] */
- MCD_SET_VAR(taskTable+channel, 27, (u32)0x00000000); /* inc[3] */
- MCD_SET_VAR(taskTable+channel, 28, (u32)0x80000000); /* inc[4] */
- MCD_SET_VAR(taskTable+channel, 29, (u32)0x80000001); /* inc[5] */
- MCD_SET_VAR(taskTable+channel, 30, (u32)0x40000000); /* inc[6] */
-
- /* Set the task's Enable bit in its Task Control Register */
- MCD_dmaBar->taskControl[channel] |= (u16)0x8000;
-}
-
-
-/*
- * Task 1
- */
-
-void MCD_startDmaSingleNoEu(char *srcAddr, short srcIncr, char *destAddr, short destIncr, int dmaSize, short xferSizeIncr, int flags, int *currBD, int *cSave, volatile TaskTableEntry *taskTable, int channel)
-{
-
- MCD_SET_VAR(taskTable+channel, 7, (u32)srcAddr); /* var[7] */
- MCD_SET_VAR(taskTable+channel, 25, (u32)(0xe000 << 16) | (0xffff & srcIncr)); /* inc[1] */
- MCD_SET_VAR(taskTable+channel, 2, (u32)destAddr); /* var[2] */
- MCD_SET_VAR(taskTable+channel, 24, (u32)(0xe000 << 16) | (0xffff & destIncr)); /* inc[0] */
- MCD_SET_VAR(taskTable+channel, 3, (u32)dmaSize); /* var[3] */
- MCD_SET_VAR(taskTable+channel, 26, (u32)(0x2000 << 16) | (0xffff & xferSizeIncr)); /* inc[2] */
- MCD_SET_VAR(taskTable+channel, 5, (u32)flags); /* var[5] */
- MCD_SET_VAR(taskTable+channel, 1, (u32)currBD); /* var[1] */
- MCD_SET_VAR(taskTable+channel, 0, (u32)cSave); /* var[0] */
- MCD_SET_VAR(taskTable+channel, 4, (u32)0x00000000); /* var[4] */
- MCD_SET_VAR(taskTable+channel, 6, (u32)0x00000000); /* var[6] */
- MCD_SET_VAR(taskTable+channel, 8, (u32)0x00000000); /* var[8] */
- MCD_SET_VAR(taskTable+channel, 9, (u32)0x00000004); /* var[9] */
- MCD_SET_VAR(taskTable+channel, 10, (u32)0x08000000); /* var[10] */
- MCD_SET_VAR(taskTable+channel, 27, (u32)0x00000000); /* inc[3] */
- MCD_SET_VAR(taskTable+channel, 28, (u32)0x80000001); /* inc[4] */
- MCD_SET_VAR(taskTable+channel, 29, (u32)0x40000000); /* inc[5] */
-
- /* Set the task's Enable bit in its Task Control Register */
- MCD_dmaBar->taskControl[channel] |= (u16)0x8000;
-}
-
-
-/*
- * Task 2
- */
-
-void MCD_startDmaChainEu(int *currBD, short srcIncr, short destIncr, int xferSize, short xferSizeIncr, int *cSave, volatile TaskTableEntry *taskTable, int channel)
-{
-
- MCD_SET_VAR(taskTable+channel, 3, (u32)currBD); /* var[3] */
- MCD_SET_VAR(taskTable+channel, 25, (u32)(0xe000 << 16) | (0xffff & srcIncr)); /* inc[1] */
- MCD_SET_VAR(taskTable+channel, 24, (u32)(0xe000 << 16) | (0xffff & destIncr)); /* inc[0] */
- MCD_SET_VAR(taskTable+channel, 12, (u32)xferSize); /* var[12] */
- MCD_SET_VAR(taskTable+channel, 26, (u32)(0x2000 << 16) | (0xffff & xferSizeIncr)); /* inc[2] */
- MCD_SET_VAR(taskTable+channel, 0, (u32)cSave); /* var[0] */
- MCD_SET_VAR(taskTable+channel, 1, (u32)0x00000000); /* var[1] */
- MCD_SET_VAR(taskTable+channel, 2, (u32)0x00000000); /* var[2] */
- MCD_SET_VAR(taskTable+channel, 4, (u32)0x00000000); /* var[4] */
- MCD_SET_VAR(taskTable+channel, 5, (u32)0x00000000); /* var[5] */
- MCD_SET_VAR(taskTable+channel, 6, (u32)0x00000000); /* var[6] */
- MCD_SET_VAR(taskTable+channel, 7, (u32)0x00000000); /* var[7] */
- MCD_SET_VAR(taskTable+channel, 8, (u32)0x00000000); /* var[8] */
- MCD_SET_VAR(taskTable+channel, 9, (u32)0x00000000); /* var[9] */
- MCD_SET_VAR(taskTable+channel, 10, (u32)0x00000000); /* var[10] */
- MCD_SET_VAR(taskTable+channel, 11, (u32)0x00000000); /* var[11] */
- MCD_SET_VAR(taskTable+channel, 13, (u32)0x00000000); /* var[13] */
- MCD_SET_VAR(taskTable+channel, 14, (u32)0x80000000); /* var[14] */
- MCD_SET_VAR(taskTable+channel, 15, (u32)0x00000010); /* var[15] */
- MCD_SET_VAR(taskTable+channel, 16, (u32)0x00000001); /* var[16] */
- MCD_SET_VAR(taskTable+channel, 17, (u32)0x00000004); /* var[17] */
- MCD_SET_VAR(taskTable+channel, 18, (u32)0x08000000); /* var[18] */
- MCD_SET_VAR(taskTable+channel, 27, (u32)0x00000000); /* inc[3] */
- MCD_SET_VAR(taskTable+channel, 28, (u32)0x80000000); /* inc[4] */
- MCD_SET_VAR(taskTable+channel, 29, (u32)0xc0000000); /* inc[5] */
- MCD_SET_VAR(taskTable+channel, 30, (u32)0x80000001); /* inc[6] */
- MCD_SET_VAR(taskTable+channel, 31, (u32)0x40000000); /* inc[7] */
-
- /* Set the task's Enable bit in its Task Control Register */
- MCD_dmaBar->taskControl[channel] |= (u16)0x8000;
-}
-
-
-/*
- * Task 3
- */
-
-void MCD_startDmaSingleEu(char *srcAddr, short srcIncr, char *destAddr, short destIncr, int dmaSize, short xferSizeIncr, int flags, int *currBD, int *cSave, volatile TaskTableEntry *taskTable, int channel)
-{
-
- MCD_SET_VAR(taskTable+channel, 8, (u32)srcAddr); /* var[8] */
- MCD_SET_VAR(taskTable+channel, 25, (u32)(0xe000 << 16) | (0xffff & srcIncr)); /* inc[1] */
- MCD_SET_VAR(taskTable+channel, 3, (u32)destAddr); /* var[3] */
- MCD_SET_VAR(taskTable+channel, 24, (u32)(0xe000 << 16) | (0xffff & destIncr)); /* inc[0] */
- MCD_SET_VAR(taskTable+channel, 4, (u32)dmaSize); /* var[4] */
- MCD_SET_VAR(taskTable+channel, 26, (u32)(0x2000 << 16) | (0xffff & xferSizeIncr)); /* inc[2] */
- MCD_SET_VAR(taskTable+channel, 6, (u32)flags); /* var[6] */
- MCD_SET_VAR(taskTable+channel, 2, (u32)currBD); /* var[2] */
- MCD_SET_VAR(taskTable+channel, 0, (u32)cSave); /* var[0] */
- MCD_SET_VAR(taskTable+channel, 1, (u32)0x00000000); /* var[1] */
- MCD_SET_VAR(taskTable+channel, 5, (u32)0x00000000); /* var[5] */
- MCD_SET_VAR(taskTable+channel, 7, (u32)0x00000000); /* var[7] */
- MCD_SET_VAR(taskTable+channel, 9, (u32)0x00000000); /* var[9] */
- MCD_SET_VAR(taskTable+channel, 10, (u32)0x00000001); /* var[10] */
- MCD_SET_VAR(taskTable+channel, 11, (u32)0x00000004); /* var[11] */
- MCD_SET_VAR(taskTable+channel, 12, (u32)0x08000000); /* var[12] */
- MCD_SET_VAR(taskTable+channel, 27, (u32)0x00000000); /* inc[3] */
- MCD_SET_VAR(taskTable+channel, 28, (u32)0xc0000000); /* inc[4] */
- MCD_SET_VAR(taskTable+channel, 29, (u32)0x80000000); /* inc[5] */
- MCD_SET_VAR(taskTable+channel, 30, (u32)0x80000001); /* inc[6] */
- MCD_SET_VAR(taskTable+channel, 31, (u32)0x40000000); /* inc[7] */
-
- /* Set the task's Enable bit in its Task Control Register */
- MCD_dmaBar->taskControl[channel] |= (u16)0x8000;
-}
-
-
-/*
- * Task 4
- */
-
-void MCD_startDmaENetRcv(char *bDBase, char *currBD, char *rcvFifoPtr, volatile TaskTableEntry *taskTable, int channel)
-{
-
- MCD_SET_VAR(taskTable+channel, 0, (u32)bDBase); /* var[0] */
- MCD_SET_VAR(taskTable+channel, 3, (u32)currBD); /* var[3] */
- MCD_SET_VAR(taskTable+channel, 6, (u32)rcvFifoPtr); /* var[6] */
- MCD_SET_VAR(taskTable+channel, 1, (u32)0x00000000); /* var[1] */
- MCD_SET_VAR(taskTable+channel, 2, (u32)0x00000000); /* var[2] */
- MCD_SET_VAR(taskTable+channel, 4, (u32)0x00000000); /* var[4] */
- MCD_SET_VAR(taskTable+channel, 5, (u32)0x00000000); /* var[5] */
- MCD_SET_VAR(taskTable+channel, 7, (u32)0x00000000); /* var[7] */
- MCD_SET_VAR(taskTable+channel, 8, (u32)0x00000000); /* var[8] */
- MCD_SET_VAR(taskTable+channel, 9, (u32)0x0000ffff); /* var[9] */
- MCD_SET_VAR(taskTable+channel, 10, (u32)0x30000000); /* var[10] */
- MCD_SET_VAR(taskTable+channel, 11, (u32)0x0fffffff); /* var[11] */
- MCD_SET_VAR(taskTable+channel, 12, (u32)0x00000008); /* var[12] */
- MCD_SET_VAR(taskTable+channel, 24, (u32)0x00000000); /* inc[0] */
- MCD_SET_VAR(taskTable+channel, 25, (u32)0x60000000); /* inc[1] */
- MCD_SET_VAR(taskTable+channel, 26, (u32)0x20000004); /* inc[2] */
- MCD_SET_VAR(taskTable+channel, 27, (u32)0x40000000); /* inc[3] */
-
- /* Set the task's Enable bit in its Task Control Register */
- MCD_dmaBar->taskControl[channel] |= (u16)0x8000;
-}
-
-
-/*
- * Task 5
- */
-
-void MCD_startDmaENetXmit(char *bDBase, char *currBD, char *xmitFifoPtr, volatile TaskTableEntry *taskTable, int channel)
-{
-
- MCD_SET_VAR(taskTable+channel, 0, (u32)bDBase); /* var[0] */
- MCD_SET_VAR(taskTable+channel, 3, (u32)currBD); /* var[3] */
- MCD_SET_VAR(taskTable+channel, 11, (u32)xmitFifoPtr); /* var[11] */
- MCD_SET_VAR(taskTable+channel, 1, (u32)0x00000000); /* var[1] */
- MCD_SET_VAR(taskTable+channel, 2, (u32)0x00000000); /* var[2] */
- MCD_SET_VAR(taskTable+channel, 4, (u32)0x00000000); /* var[4] */
- MCD_SET_VAR(taskTable+channel, 5, (u32)0x00000000); /* var[5] */
- MCD_SET_VAR(taskTable+channel, 6, (u32)0x00000000); /* var[6] */
- MCD_SET_VAR(taskTable+channel, 7, (u32)0x00000000); /* var[7] */
- MCD_SET_VAR(taskTable+channel, 8, (u32)0x00000000); /* var[8] */
- MCD_SET_VAR(taskTable+channel, 9, (u32)0x00000000); /* var[9] */
- MCD_SET_VAR(taskTable+channel, 10, (u32)0x00000000); /* var[10] */
- MCD_SET_VAR(taskTable+channel, 12, (u32)0x00000000); /* var[12] */
- MCD_SET_VAR(taskTable+channel, 13, (u32)0x0000ffff); /* var[13] */
- MCD_SET_VAR(taskTable+channel, 14, (u32)0xffffffff); /* var[14] */
- MCD_SET_VAR(taskTable+channel, 15, (u32)0x00000004); /* var[15] */
- MCD_SET_VAR(taskTable+channel, 16, (u32)0x00000008); /* var[16] */
- MCD_SET_VAR(taskTable+channel, 24, (u32)0x00000000); /* inc[0] */
- MCD_SET_VAR(taskTable+channel, 25, (u32)0x60000000); /* inc[1] */
- MCD_SET_VAR(taskTable+channel, 26, (u32)0x40000000); /* inc[2] */
- MCD_SET_VAR(taskTable+channel, 27, (u32)0xc000fffc); /* inc[3] */
- MCD_SET_VAR(taskTable+channel, 28, (u32)0xe0000004); /* inc[4] */
- MCD_SET_VAR(taskTable+channel, 29, (u32)0x80000000); /* inc[5] */
- MCD_SET_VAR(taskTable+channel, 30, (u32)0x4000ffff); /* inc[6] */
- MCD_SET_VAR(taskTable+channel, 31, (u32)0xe0000001); /* inc[7] */
-
- /* Set the task's Enable bit in its Task Control Register */
- MCD_dmaBar->taskControl[channel] |= (u16)0x8000;
-}
diff --git a/arch/m68k/mach-mcfv4e/mcdapi/Makefile b/arch/m68k/mach-mcfv4e/mcdapi/Makefile
deleted file mode 100644
index 52ddaf8581..0000000000
--- a/arch/m68k/mach-mcfv4e/mcdapi/Makefile
+++ /dev/null
@@ -1,26 +0,0 @@
-#
-# (C) Copyright 2007 Carsten Schlote <schlote@vahanus.net>
-# See file CREDITS for list of people who contributed to this project.
-#
-# This file is part of barebox.
-#
-# barebox 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 3 of the License, or
-# (at your option) any later version.
-#
-# barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
-#
-
-#
-# FreeScale MultiDMA Library
-#
-obj-y += MCD_dmaApi.o MCD_tasks.o MCD_tasksInit.o
-
-
diff --git a/arch/m68k/mach-mcfv4e/mcdapi/ReleaseNotes.txt b/arch/m68k/mach-mcfv4e/mcdapi/ReleaseNotes.txt
deleted file mode 100644
index bc10e713f9..0000000000
--- a/arch/m68k/mach-mcfv4e/mcdapi/ReleaseNotes.txt
+++ /dev/null
@@ -1,27 +0,0 @@
-
-Multi-channel DMA API Release Notes
-
-Version 0.3
-
-* MCD_INCLUDE_EU functionality supported(microcode changes for all tasks
-except ethernet).
-* Fixed bug when using MCD_END_FRAME which would cause the DMA to transfer
-zero bytes and then complete.
-* Code cleanup.
-
-
-Version 0.2 (Slight Update)
-
-* Modified casts and task table implementations that were causing
-warnings (and even errors on certain compilers)
-* Cosmetic changes to clean up MCD_dmaApi.c and MCD_dma.h
-* Fixed table declarations so that MCD_tasks.c will compile if
- MCD_INCLUDE_EU is defined (Note: EU functionality still not supported)
-
-Version 0.1 (Initial release)
-
-Alpha version
-MCD_INCLUDE_EU functionality not supported.
-MCD_INCLUDE_JBIG not supported.
-
-
diff --git a/arch/m68k/mach-mcfv4e/mcf_clocksource.c b/arch/m68k/mach-mcfv4e/mcf_clocksource.c
deleted file mode 100644
index 8fb2fba2ec..0000000000
--- a/arch/m68k/mach-mcfv4e/mcf_clocksource.c
+++ /dev/null
@@ -1,138 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Implements the clocksource for Coldfire V4E
- */
-#include <common.h>
-#include <init.h>
-#include <clock.h>
-#include <mach/mcf54xx-regs.h>
-#include <mach/clocks.h>
-#include <proc/processor.h> //FIXME - move to other file
-
-#ifdef CONFIG_USE_IRQ
-
-static uint32_t mcf_sltirq_hits; // FIXME: test code
-
-static int slt_timer_default_isr(void *not_used, void *t)
-{
- struct mcf5xxx_slt *slt = MCF_SLT_Address(0);
- if ( MCF_INTC_IPRH | MCF_INTC_IPRH_INT54 )
- {
- if (slt->SSR & MCF_SLT_SSR_ST)
- {
- slt->SSR = 0UL
- | MCF_SLT_SSR_ST;
- }
- mcf_sltirq_hits++;
- return 1;
- }
- return 0;
-}
-#endif
-
-
-static uint64_t mcf_clocksource_read(void)
-{
- struct mcf5xxx_slt *slt = MCF_SLT_Address(0);
- uint32_t sltcnt;
- uint64_t rc = 0;
-
- if (slt->SSR & MCF_SLT_SSR_ST)
- {
-#ifndef CONFIG_USE_IRQ
- slt->SSR = 0UL
- | MCF_SLT_SSR_ST;
-#endif
-
- rc = 0xffffffffULL + 1;
- }
-
- sltcnt = 0xffffffffUL - slt->SCNT;
-
- rc += sltcnt;
-
- return rc;
-}
-
-
-static struct clocksource cs = {
- .read = mcf_clocksource_read,
- .mask = 0xffffffff,
- .mult = 1,
- .shift = 0,
-};
-
-static int clocksource_init (void)
-{
- struct mcf5xxx_slt *slt = MCF_SLT_Address(0);
- uint32_t sltclk = mcfv4e_get_bus_clk() * 1000000;
-
- /* Setup a slice timer terminal count */
- slt->STCNT = 0xffffffff;
-
- /* Reset status bits */
- slt->SSR = 0UL
- | MCF_SLT_SSR_ST
- | MCF_SLT_SSR_BE;
-
- /* Start timer to run continously */
- slt->SCR = 0UL
- | MCF_SLT_SCR_TEN
- | MCF_SLT_SCR_RUN
- | MCF_SLT_SCR_IEN; // FIXME - add irq handler
-
- /* Setup up multiplier */
- cs.mult = clocksource_hz2mult(sltclk, cs.shift);
-
- /*
- * Register the timer interrupt handler
- */
- init_clock(&cs);
-
- return 0;
-}
-
-core_initcall(clocksource_init);
-
-#ifdef CONFIG_USE_IRQ
-
-static int clocksource_irq_init(void)
-{
- if (!mcf_interrupts_register_handler(
- 118, // FIXME!
- (int (*)(void*,void*))slt_timer_default_isr,
- NULL,
- NULL)
- )
- {
- return 1;
- }
- // Setup ICR
- MCF_INTC_ICR54 = MCF_INTC_ICRn_IL(1) | MCF_INTC_ICRn_IP(0);
- // Enable IRQ source
- MCF_INTC_IMRH &= ~MCF_INTC_IMRH_INT_MASK54;
- return 0;
-}
-
-postcore_initcall(clocksource_irq_init);
-
-#endif
diff --git a/arch/m68k/mach-mcfv4e/mcf_reset_cpu.c b/arch/m68k/mach-mcfv4e/mcf_reset_cpu.c
deleted file mode 100644
index d4659d22aa..0000000000
--- a/arch/m68k/mach-mcfv4e/mcf_reset_cpu.c
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Implements a watchdog triggered reset for V4e Coldfire cores
- */
-#include <common.h>
-#include <mach/mcf54xx-regs.h>
-
-/**
- * Reset the cpu by setting up the watchdog timer and let it time out
- */
-void __noreturn reset_cpu (unsigned long addr)
-{
- while ( ignored ) { ; };
-
- /* Disable watchdog and set Time-Out field to minimum timeout value */
- MCF_GPT_GMS0 = 0;
- MCF_GPT_GCIR0 = MCF_GPT_GCIR_PRE(1) | MCF_GPT_GCIR_CNT(0xffff);
-
- /* Enable watchdog */
- MCF_GPT_GMS0 = MCF_GPT_GMS_OCPW(0xA5) | MCF_GPT_GMS_WDEN | MCF_GPT_GMS_CE | MCF_GPT_GMS_TMS_GPIO;
-
- while (1);
- /*NOTREACHED*/
-}
-EXPORT_SYMBOL(reset_cpu);
-
diff --git a/arch/m68k/mach-mcfv4e/multichannel_dma.c b/arch/m68k/mach-mcfv4e/multichannel_dma.c
deleted file mode 100644
index acc104e4af..0000000000
--- a/arch/m68k/mach-mcfv4e/multichannel_dma.c
+++ /dev/null
@@ -1,51 +0,0 @@
-/*
- * barebox Header File
- *
- * Generic Clocksource for V4E
- *
- * Copyright (c) 2007 Carsten Schlote <c.schlote\@konzeptpark.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 <init.h>
-#include <mach/mcf54xx-regs.h>
-#include <proc/mcdapi/MCD_dma.h>
-#include <proc/dma_utils.h>
-
-
-static int mcdapi_init(void)
-{
- /*
- * Initialize the Multi-channel DMA
- */
- MCD_initDma ((dmaRegs*)(__MBAR+0x8000),
- (void *)CFG_SYS_SRAM_ADDRESS,
- MCD_COMM_PREFETCH_EN | MCD_RELOC_TASKS);
-
- /*
- * Enable interrupts in DMA and INTC
- */
- dma_irq_enable(DMA_INTC_LVL, DMA_INTC_PRI);
-
- return 0;
-}
-
-postcore_initcall(mcdapi_init);
-
diff --git a/arch/m68k/mach-mcfv4e/net/Makefile b/arch/m68k/mach-mcfv4e/net/Makefile
deleted file mode 100644
index 78c528f259..0000000000
--- a/arch/m68k/mach-mcfv4e/net/Makefile
+++ /dev/null
@@ -1,26 +0,0 @@
-#
-# (C) Copyright 2007 Carsten Schlote <schlote@vahanus.net>
-# See file CREDITS for list of people who contributed to this project.
-#
-# This file is part of barebox.
-#
-# barebox 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 3 of the License, or
-# (at your option) any later version.
-#
-# barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
-#
-
-#
-# Support code for current FEC driver code - must be eliminated later...
-#
-obj-y += nbuf.o queue.o net.o
-
-
diff --git a/arch/m68k/mach-mcfv4e/net/nbuf.c b/arch/m68k/mach-mcfv4e/net/nbuf.c
deleted file mode 100644
index 234e75821a..0000000000
--- a/arch/m68k/mach-mcfv4e/net/nbuf.c
+++ /dev/null
@@ -1,239 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Implementation of network buffer scheme.
- * @todo Obsolete this file
- */
-#include <common.h>
-#include <malloc.h>
-#include <linux/types.h>
-
-#include <proc/net/queue.h>
-#include <proc/net/net.h>
-
-#include <mach/mcf54xx-regs.h>
-
-
-#define ASSERT(x)
-
-/**
- * Queues used for network buffer storage
- */
-QUEUE nbuf_queue[NBUF_MAXQ];
-
-/*
- * Some devices require line-aligned buffers. In order to accomplish
- * this, the nbuf data is over-allocated and adjusted. The following
- * array keeps track of the original data pointer returned by malloc
- */
-ADDRESS unaligned_buffers[NBUF_MAX];
-
-/**
- * Initialize all the network buffer queues
- *
- * Return Value:
- * 0 success
- * 1 failure
- */
-int
-nbuf_init(void)
-{
- int i;
- NBUF *nbuf;
-
- for (i=0; i<NBUF_MAXQ; ++i)
- {
- /* Initialize all the queues */
- queue_init(&nbuf_queue[i]);
- }
-
- #ifdef CONFIG_DRIVER_NET_MCF54XX_DEBUG
- printf("Creating %d net buffers of %d bytes\n",NBUF_MAX,NBUF_SZ);
- #endif
-
- for (i=0; i<NBUF_MAX; ++i)
- {
- /* Allocate memory for the network buffer structure */
- nbuf = (NBUF *)malloc(sizeof(NBUF));
- if (!nbuf)
- {
- ASSERT(nbuf);
- return 1;
- }
-
- /* Allocate memory for the actual data */
- unaligned_buffers[i] = (ADDRESS)malloc(NBUF_SZ + 16);
- nbuf->data = (uint8_t *)((uint32_t)(unaligned_buffers[i] + 15) & 0xFFFFFFF0);
- if (!nbuf->data)
- {
- ASSERT(nbuf->data);
- return 1;
- }
-
- /* Initialize the network buffer */
- nbuf->offset = 0;
- nbuf->length = 0;
-
- /* Add the network buffer to the free list */
- queue_add(&nbuf_queue[NBUF_FREE], (QNODE *)nbuf);
- }
-
- #ifdef CONFIG_DRIVER_NET_MCF54XX_DEBUG
- printf("NBUF allocation complete\n");
- nbuf_debug_dump();
- #endif
-
- return 0;
-}
-/**
- * Return all the allocated memory to the heap
- */
-void
-nbuf_flush(void)
-{
- NBUF *nbuf;
- int i, level = asm_set_ipl(7);
- int n = 0;
-
- for (i=0; i<NBUF_MAX; ++i)
- free((uint8_t*)unaligned_buffers[i]);
-
- for (i=0; i<NBUF_MAXQ; ++i)
- {
- while ((nbuf = (NBUF *)queue_remove(&nbuf_queue[i])) != NULL)
- {
- free(nbuf);
- ++n;
- }
- }
- ASSERT(n == NBUF_MAX);
- asm_set_ipl(level);
-}
-/**
- * Allocate a network buffer from the free list
- *
- * Return Value:
- * Pointer to a free network buffer
- * NULL if none are available
- */
-NBUF *
-nbuf_alloc(void)
-{
- NBUF *nbuf;
- int level = asm_set_ipl(7);
-
- nbuf = (NBUF *)queue_remove(&nbuf_queue[NBUF_FREE]);
- asm_set_ipl(level);
- return nbuf;
-}
-/**
- * Add the specified network buffer back to the free list
- *
- * Parameters:
- * nbuf Buffer to add back to the free list
- */
-void
-nbuf_free(NBUF *nbuf)
-{
- int level = asm_set_ipl(7);
-
- nbuf->offset = 0;
- nbuf->length = NBUF_SZ;
- queue_add(&nbuf_queue[NBUF_FREE],(QNODE *)nbuf);
-
- asm_set_ipl(level);
-}
-/**
- * Remove a network buffer from the specified queue
- *
- * Parameters:
- * q The index that identifies the queue to pull the buffer from
- */
-NBUF *
-nbuf_remove(int q)
-{
- NBUF *nbuf;
- int level = asm_set_ipl(7);
-
- nbuf = (NBUF *)queue_remove(&nbuf_queue[q]);
- asm_set_ipl(level);
- return nbuf;
-}
-/**
- * Add a network buffer to the specified queue
- *
- * Parameters:
- * q The index that identifies the queue to add the buffer to
- */
-void
-nbuf_add(int q, NBUF *nbuf)
-{
- int level = asm_set_ipl(7);
- queue_add(&nbuf_queue[q],(QNODE *)nbuf);
- asm_set_ipl(level);
-}
-/**
- * Put all the network buffers back into the free list
- */
-void
-nbuf_reset(void)
-{
- NBUF *nbuf;
- int i, level = asm_set_ipl(7);
-
- for (i=1; i<NBUF_MAXQ; ++i)
- {
- while ((nbuf = nbuf_remove(i)) != NULL)
- nbuf_free(nbuf);
- }
- asm_set_ipl(level);
-}
-/**
- * Display all the nbuf queues
- */
-void
-nbuf_debug_dump(void)
-{
-#ifdef CONFIG_DRIVER_NET_MCF54XX_DEBUG
- NBUF *nbuf;
- int i, j, level;
-
- level = asm_set_ipl(7);
-
- for (i=0; i<NBUF_MAXQ; ++i)
- {
- printf("\n\nQueue #%d\n\n",i);
- printf("\tBuffer Location\tOffset\tLength\n");
- printf("--------------------------------------\n");
- j = 0;
- nbuf = (NBUF *)queue_peek(&nbuf_queue[i]);
- while (nbuf != NULL)
- {
- printf("%d\t 0x%08x\t0x%04x\t0x%04x\n",j++,nbuf->data,
- nbuf->offset,
- nbuf->length);
- nbuf = (NBUF *)nbuf->node.next;
- }
- }
-
- asm_set_ipl(level);
-#endif
-}
diff --git a/arch/m68k/mach-mcfv4e/net/net.c b/arch/m68k/mach-mcfv4e/net/net.c
deleted file mode 100644
index febabfeda0..0000000000
--- a/arch/m68k/mach-mcfv4e/net/net.c
+++ /dev/null
@@ -1,156 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Network initialization for MCF V4E FEC support code
- * @todo Obsolete this file
- */
-#include <common.h>
-#include <malloc.h>
-#include <linux/types.h>
-
-#include <mach/mcf54xx-regs.h>
-#include <proc/mcdapi/MCD_dma.h>
-#include <proc/net/net.h>
-#include <proc/fecbd.h>
-#include <proc/fec.h>
-#include <proc/dma_utils.h>
-
-#include <proc/processor.h> //FIXME - move to other file
-
-int netif_init(int channel)
-{
- uint8_t* board_get_ethaddr(uint8_t*);
-
-#ifdef CONFIG_USE_IRQ
- int vector;
- int (*handler)(void *, void *);
-
- disable_interrupts();
-
- /*
- * Register the FEC0 interrupt handler
- */
- handler = (channel == 0) ? fec0_interrupt_handler
- : fec1_interrupt_handler;
- vector = (channel == 0) ? 103 : 102;
-
- if (!mcf_interrupts_register_handler(
- vector,handler, NULL,(void *)0xdeadbeef))
- {
- printf("Error: Unable to register handler\n");
- return 0;
- }
-
- /*
- * Register the DMA interrupt handler
- */
- handler = dma_interrupt_handler;
- vector = 112;
-
- if (!mcf_interrupts_register_handler(
- vector,handler, NULL,NULL))
- {
- printf("Error: Unable to register handler\n");
- return 0;
- }
-#endif
- /*
- * Enable interrupts
- */
- enable_interrupts();
-
- return 1;
-}
-
-int netif_setup(int channel)
-{
- uint8_t mac[6];
- /*
- * Get user programmed MAC address
- */
-// board_get_ethaddr(mac);
-
-
- /*
- * Initialize the network interface structure
- */
-// nif_init(&nif1);
-// nif1.mtu = ETH_MTU;
-// nif1.send = (DBUG_ETHERNET_PORT == 0) ? fec0_send : fec1_send;
-
- /*
- * Initialize the dBUG Ethernet port
- */
- fec_eth_setup(channel, /* Which FEC to use */
- FEC_MODE_MII, /* Use MII mode */
- FEC_MII_100BASE_TX, /* Allow 10 and 100Mbps */
- FEC_MII_FULL_DUPLEX, /* Allow Full and Half Duplex */
- mac);
-
- /*
- * Copy the Ethernet address to the NIF structure
- */
-// memcpy(nif1.hwa, mac, 6);
-
- #ifdef DEBUG
- printf("Ethernet Address is %02X:%02X:%02X:%02X:%02X:%02X\n",\
- mac[0], mac[1], mac[2], mac[3], mac[4], mac[5]);
- #endif
-
- return 1;
-}
-
-int netif_done(int channel)
-{
- /*
- * Download complete, clean up
- */
-#ifdef CONFIG_USE_IRQ
- int (*handler)(void *, void *);
-#endif
- /*
- * Disable interrupts
- */
- disable_interrupts();
-
- /*
- * Disable the Instruction Cache
- */
- mcf5xxx_wr_cacr(MCF5XXX_CACR_ICINVA);
-
- /*
- * Disable the dBUG Ethernet port
- */
- fec_eth_stop(channel);
-
- /*
- * Remove the interrupt handlers
- */
-#ifdef CONFIG_USE_IRQ
- handler = (channel == 0) ? fec0_interrupt_handler
- : fec1_interrupt_handler;
- mcf_interrupts_remove_handler(handler);
- mcf_interrupts_remove_handler(dma_interrupt_handler);
-#endif
- return 1;
-}
-
-
diff --git a/arch/m68k/mach-mcfv4e/net/queue.c b/arch/m68k/mach-mcfv4e/net/queue.c
deleted file mode 100644
index 9f779474ea..0000000000
--- a/arch/m68k/mach-mcfv4e/net/queue.c
+++ /dev/null
@@ -1,128 +0,0 @@
-/*
- * Copyright (c) 2008 Carsten Schlote <c.schlote@konzeptpark.de>
- * See file CREDITS for list of people who contributed to this project.
- *
- * This file is part of barebox.
- *
- * barebox 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 3 of the License, or
- * (at your option) any later version.
- *
- * barebox 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 barebox. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file
- * Implements a first in, first out linked list
- *
- * @note Simple selfcontaining basic code
- * @todo Replace by barebox standard list functions
- */
-#include <linux/types.h>
-#include <proc/net/queue.h>
-
-/** Initialize the specified queue to an empty state
- *
- * @param[in]
- * q Pointer to queue structure
- */
-void queue_init(QUEUE *q)
-{
- q->head = NULL;
-}
-
-/**
- * Check for an empty queue
- *
- * @param[in] q Pointer to queue structure
- * @return
- * 1 if Queue is empty
- * 0 otherwise
- */
-int
-queue_isempty(QUEUE *q)
-{
- return (q->head == NULL);
-}
-
-/**
- * Add an item to the end of the queue
- *
- * @param[in] q Pointer to queue structure
- * @param[in] node New node to add to the queue
- */
-void queue_add(QUEUE *q, QNODE *node)
-{
- if (queue_isempty(q))
- {
- q->head = q->tail = node;
- }
- else
- {
- q->tail->next = node;
- q->tail = node;
- }
-
- node->next = NULL;
-}
-
-/** Remove and return first (oldest) entry from the specified queue
- *
- * @param[in] q Pointer to queue structure
- * @return
- * Node at head of queue - NULL if queue is empty
- */
-QNODE*
-queue_remove(QUEUE *q)
-{
- QNODE *oldest;
-
- if (queue_isempty(q))
- return NULL;
-
- oldest = q->head;
- q->head = oldest->next;
- return oldest;
-}
-
-/** Peek into the queue and return pointer to first (oldest) entry.
- *
- * The queue is not modified
- *
- * @param[in] q Pointer to queue structure
- * @return
- * Node at head of queue - NULL if queue is empty
- */
-QNODE*
-queue_peek(QUEUE *q)
-{
- return q->head;
-}
-
-/** Move entire contents of one queue to the other
- *
- * @param[in] src Pointer to source queue
- * @param[in] dst Pointer to destination queue
- */
-void
-queue_move(QUEUE *dst, QUEUE *src)
-{
- if (queue_isempty(src))
- return;
-
- if (queue_isempty(dst))
- dst->head = src->head;
- else
- dst->tail->next = src->head;
-
- dst->tail = src->tail;
- src->head = NULL;
- return;
-}
-