summaryrefslogtreecommitdiffstats
path: root/arch/m68k
diff options
context:
space:
mode:
Diffstat (limited to 'arch/m68k')
-rw-r--r--arch/m68k/Makefile3
-rw-r--r--arch/m68k/boards/kp_ukd_r1_num/kp_ukd_r1_num.c7
-rw-r--r--arch/m68k/boards/phycore_mcf54xx/phyCore_MCF54xx.c5
-rw-r--r--arch/m68k/configs/phycore_kpukdr1_5475num_defconfig162
-rw-r--r--arch/m68k/configs/phycore_mcf54xx_defconfig162
-rw-r--r--arch/m68k/include/asm/posix_types.h1
-rw-r--r--arch/m68k/lib/m68k-linuxboot.c8
7 files changed, 19 insertions, 329 deletions
diff --git a/arch/m68k/Makefile b/arch/m68k/Makefile
index ec70028a16..86afb24732 100644
--- a/arch/m68k/Makefile
+++ b/arch/m68k/Makefile
@@ -18,8 +18,7 @@
# along with barebox. If not, see <http://www.gnu.org/licenses/>.
#
-CPPFLAGS += -isystem $(gccincdir) -D __M68K__ \
- -fno-strict-aliasing
+CPPFLAGS += -isystem $(gccincdir) -fno-strict-aliasing
machine-$(CONFIG_ARCH_MCF54xx) := mcfv4e
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
index 9bf1713cc4..7475ab326b 100644
--- 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
@@ -42,6 +42,7 @@ ulong mcfv4e_get_bus_clk(void)
* 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,
@@ -52,6 +53,7 @@ static struct device_d cfi_dev = {
* 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 */
@@ -61,6 +63,7 @@ static struct device_d cfi_dev = {
* ?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 */
@@ -75,12 +78,14 @@ static struct fec_platform_data fec_info = {
};
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 */
@@ -96,6 +101,7 @@ static struct memory_platform_data ram_pdata = {
};
static struct device_d sdram_dev = {
+ .id = -1,
.name = "mem",
.map_base = CFG_SDRAM_ADDRESS,
.size = CFG_SDRAM_SIZE,
@@ -134,6 +140,7 @@ static int mcfv4e_devices_init(void)
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,
diff --git a/arch/m68k/boards/phycore_mcf54xx/phyCore_MCF54xx.c b/arch/m68k/boards/phycore_mcf54xx/phyCore_MCF54xx.c
index 3bc2d12a42..3744950699 100644
--- a/arch/m68k/boards/phycore_mcf54xx/phyCore_MCF54xx.c
+++ b/arch/m68k/boards/phycore_mcf54xx/phyCore_MCF54xx.c
@@ -46,6 +46,7 @@ ulong mcfv4e_get_bus_clk(void)
*/
static struct device_d cfi_dev =
{
+ .id = -1,
.name = "cfi_flash",
.map_base = CFG_FLASH_ADDRESS,
.size = CFG_FLASH_SIZE,
@@ -61,6 +62,7 @@ static struct fec_platform_data fec_info =
static struct device_d network_dev0 =
{
+ .id = -1,
.name = "fec_mcf54xx",
.map_base = MCF_FEC_ADDR(0),
.size = MCF_FEC_SIZE(0), /* area size */
@@ -68,6 +70,7 @@ static struct device_d network_dev0 =
};
static struct device_d network_dev1 =
{
+ .id = -1,
.name = "fec_mcf54xx",
.map_base = MCF_FEC_ADDR(1),
.size = MCF_FEC_SIZE(1), /* area size */
@@ -84,6 +87,7 @@ static struct memory_platform_data ram_pdata = {
static struct device_d sdram_dev =
{
+ .id = -1,
.name = "mem",
.map_base = CFG_SDRAM_ADDRESS,
.size = CFG_SDRAM_SIZE,
@@ -116,6 +120,7 @@ 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,
diff --git a/arch/m68k/configs/phycore_kpukdr1_5475num_defconfig b/arch/m68k/configs/phycore_kpukdr1_5475num_defconfig
index d8688080e7..14c6d78f9f 100644
--- a/arch/m68k/configs/phycore_kpukdr1_5475num_defconfig
+++ b/arch/m68k/configs/phycore_kpukdr1_5475num_defconfig
@@ -1,143 +1,25 @@
-#
-# Automatically generated make config: don't edit
-# Linux kernel version: 2.0.0-rc4-git
-# Tue Feb 19 13:41:25 2008
-#
-CONFIG_BOARDINFO="konzeptpark UKD Prototype with Phycore MCF5475 NUM"
-# CONFIG_BOARD_LINKER_SCRIPT is not set
-CONFIG_GENERIC_LINKER_SCRIPT=y
-CONFIG_M68K=y
-CONFIG_MCFV4E=y
-CONFIG_ARCH_MCF54xx=y
-# CONFIG_MACH_KPUKDR1 is not set
CONFIG_MACH_KPUKDR1_NUM=y
-# CONFIG_MACH_KPUKDR2 is not set
-# CONFIG_MACH_KPUKDR2_NUM is not set
-# CONFIG_MACH_PCM982_5485 is not set
-# CONFIG_MACH_PCM982_5475 is not set
-# CONFIG_MACH_PCM982_5475_NUM is not set
-# CONFIG_MACH_PCM982_54455 is not set
-
-#
-# M68k/Coldfire V4E specific settings
-#
-CONFIG_COPY_LOWMEM_VECTORS=y
-# CONFIG_USE_LOWMEM_VECTORS is not set
-CONFIG_CMD_REGDUMP_V4E=y
-CONFIG_CMD_PCI_V4E=y
-
-#
-# M68k/Coldfire specific Linux boot settings
-#
-CONFIG_CMDLINE_TAG=y
-CONFIG_SETUP_MEMORY_TAGS=y
CONFIG_INITRD_TAG=y
-CONFIG_GREGORIAN_CALENDER=y
-CONFIG_HAS_KALLSYMS=y
-CONFIG_HAS_MODULES=y
-CONFIG_CMD_MEMORY=y
-CONFIG_ENV_HANDLING=y
-
-#
-# General Settings
-#
-CONFIG_TEXT_BASE=0x07f00000
CONFIG_BROKEN=y
CONFIG_EXPERIMENTAL=y
-# CONFIG_MODULES is not set
-# CONFIG_KALLSYMS is not set
-CONFIG_HAS_EARLY_INIT=y
-CONFIG_EARLY_INITDATA_RAM_ADDR=0x20000000
-CONFIG_EARLY_INITDATA_RAM_SIZE=0x1f00
-CONFIG_EARLY_INITDATA_SIZE=0x100
-CONFIG_DEBUG_INITCALLS=y
-CONFIG_USE_IRQ=y
-CONFIG_PROMPT="barebox:"
-CONFIG_BAUDRATE=115200
+CONFIG_LONGHELP=y
CONFIG_CMDLINE_EDITING=y
CONFIG_AUTO_COMPLETE=y
-CONFIG_LONGHELP=y
-CONFIG_CBSIZE=1024
-CONFIG_MAXARGS=16
-CONFIG_SHELL_HUSH=y
-# CONFIG_SHELL_SIMPLE is not set
-# CONFIG_GLOB is not set
-CONFIG_PROMPT_HUSH_PS2="> "
-CONFIG_DYNAMIC_CRC_TABLE=y
-CONFIG_ERRNO_MESSAGES=y
-CONFIG_TIMESTAMP=y
-CONFIG_CONSOLE_ACTIVATE_FIRST=y
-CONFIG_EARLY_CONSOLE_PORT="psc0"
-CONFIG_EARLY_CONSOLE_BAUDRATE=115200
-# CONFIG_OF_FLAT_TREE is not set
-CONFIG_DEFAULT_ENVIRONMENT=y
CONFIG_DEFAULT_ENVIRONMENT_PATH="arch/m68k/boards/kp_ukd_r1_num/env/"
-
-#
-# Debugging
-#
CONFIG_DEBUG_INFO=y
-CONFIG_DEBUG_LL=y
-# CONFIG_ENABLE_FLASH_NOISE is not set
-# CONFIG_ENABLE_PARTITION_NOISE is not set
CONFIG_ENABLE_DEVICE_NOISE=y
-
-#
-# Commands
-#
-
-#
-# scripting
-#
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_HELP=y
CONFIG_CMD_READLINE=y
-
-#
-# file commands
-#
-CONFIG_CMD_LS=y
-CONFIG_CMD_RM=y
-CONFIG_CMD_CAT=y
-CONFIG_CMD_MKDIR=y
-CONFIG_CMD_RMDIR=y
-CONFIG_CMD_CP=y
-CONFIG_CMD_PWD=y
-CONFIG_CMD_CD=y
-CONFIG_CMD_MOUNT=y
-CONFIG_CMD_UMOUNT=y
-
-#
-# console
-#
-CONFIG_CMD_CLEAR=y
-CONFIG_CMD_ECHO=y
-# CONFIG_CMD_SPLASH is not set
-
-#
-# memory
-#
-# CONFIG_CMD_LOADB is not set
-# CONFIG_CMD_LOADS is not set
CONFIG_CMD_MEMINFO=y
CONFIG_CMD_CRC=y
CONFIG_CMD_MTEST=y
CONFIG_CMD_MTEST_ALTERNATIVE=y
-
-#
-# flash
-#
CONFIG_CMD_FLASH=y
-
-#
-# booting
-#
-CONFIG_CMD_BOOTM=y
CONFIG_CMD_BOOTM_ZLIB=y
CONFIG_CMD_BOOTM_BZLIB=y
CONFIG_CMD_BOOTM_SHOW_TYPE=y
@@ -145,52 +27,10 @@ CONFIG_CMD_RESET=y
CONFIG_CMD_GO=y
CONFIG_CMD_TIMEOUT=y
CONFIG_CMD_PARTITION=y
-CONFIG_CMD_TEST=y
CONFIG_NET=y
-CONFIG_NET_BOOTP=y
CONFIG_NET_DHCP=y
-CONFIG_NET_RARP=y
-# CONFIG_NET_SNTP is not set
-# CONFIG_NET_NFS is not set
CONFIG_NET_PING=y
CONFIG_NET_TFTP=y
-
-#
-# Drivers
-#
-
-#
-# serial drivers
-#
-CONFIG_DRIVER_SERIAL_MCFV4E=y
-CONFIG_MIIDEV=y
-
-#
-# Network drivers
-#
-CONFIG_DRIVER_NET_MCF54XX=y
-# CONFIG_DRIVER_NET_MCF54XX_DEBUG is not set
-
-#
-# SPI drivers
-#
-CONFIG_SPI=y
-# CONFIG_DRIVER_SPI_MC13783 is not set
-
-#
-# flash drivers
-#
-CONFIG_HAS_CFI=y
CONFIG_DRIVER_CFI=y
-# CONFIG_DRIVER_CFI_NEW is not set
-CONFIG_DRIVER_CFI_OLD=y
CONFIG_CFI_BUFFER_WRITE=y
-# CONFIG_NAND is not set
-
-#
-# Filesystem support
-#
CONFIG_FS_CRAMFS=y
-CONFIG_ZLIB=y
-CONFIG_BZLIB=y
-CONFIG_CRC32=y
diff --git a/arch/m68k/configs/phycore_mcf54xx_defconfig b/arch/m68k/configs/phycore_mcf54xx_defconfig
index ca3387a528..f0d9fc2845 100644
--- a/arch/m68k/configs/phycore_mcf54xx_defconfig
+++ b/arch/m68k/configs/phycore_mcf54xx_defconfig
@@ -1,143 +1,25 @@
-#
-# Automatically generated make config: don't edit
-# Linux kernel version: 2.0.1-csc
-# Thu Mar 27 14:02:15 2008
-#
-CONFIG_BOARDINFO="Phytec Baseboard with Phycore MCF5485"
-# CONFIG_BOARD_LINKER_SCRIPT is not set
-CONFIG_GENERIC_LINKER_SCRIPT=y
-CONFIG_M68K=y
-CONFIG_MCFV4E=y
-CONFIG_ARCH_MCF54xx=y
-# CONFIG_MACH_KPUKDR1 is not set
-# CONFIG_MACH_KPUKDR1_NUM is not set
-# CONFIG_MACH_KPUKDR2 is not set
-# CONFIG_MACH_KPUKDR2_NUM is not set
CONFIG_MACH_PCM982_5485=y
-# CONFIG_MACH_PCM982_5475 is not set
-# CONFIG_MACH_PCM982_5475_NUM is not set
-# CONFIG_MACH_PCM982_54455 is not set
-
-#
-# M68k/Coldfire V4E specific settings
-#
-CONFIG_COPY_LOWMEM_VECTORS=y
-# CONFIG_USE_LOWMEM_VECTORS is not set
-CONFIG_CMD_REGDUMP_V4E=y
-CONFIG_CMD_PCI_V4E=y
-
-#
-# M68k/Coldfire specific Linux boot settings
-#
-CONFIG_CMDLINE_TAG=y
-CONFIG_SETUP_MEMORY_TAGS=y
CONFIG_INITRD_TAG=y
-CONFIG_GREGORIAN_CALENDER=y
-CONFIG_HAS_KALLSYMS=y
-CONFIG_HAS_MODULES=y
-CONFIG_CMD_MEMORY=y
-CONFIG_ENV_HANDLING=y
-
-#
-# General Settings
-#
-CONFIG_TEXT_BASE=0x07f00000
CONFIG_BROKEN=y
CONFIG_EXPERIMENTAL=y
-# CONFIG_MODULES is not set
-# CONFIG_KALLSYMS is not set
-CONFIG_HAS_EARLY_INIT=y
-CONFIG_EARLY_INITDATA_RAM_ADDR=0x20000000
-CONFIG_EARLY_INITDATA_RAM_SIZE=0x1f00
-CONFIG_EARLY_INITDATA_SIZE=0x100
-CONFIG_DEBUG_INITCALLS=y
-CONFIG_USE_IRQ=y
-CONFIG_PROMPT="barebox:"
-CONFIG_BAUDRATE=115200
+CONFIG_LONGHELP=y
CONFIG_CMDLINE_EDITING=y
CONFIG_AUTO_COMPLETE=y
-CONFIG_LONGHELP=y
-CONFIG_CBSIZE=1024
-CONFIG_MAXARGS=16
-CONFIG_SHELL_HUSH=y
-# CONFIG_SHELL_SIMPLE is not set
-# CONFIG_GLOB is not set
-CONFIG_PROMPT_HUSH_PS2="> "
-CONFIG_DYNAMIC_CRC_TABLE=y
-CONFIG_ERRNO_MESSAGES=y
-CONFIG_TIMESTAMP=y
-CONFIG_CONSOLE_ACTIVATE_FIRST=y
-CONFIG_EARLY_CONSOLE_PORT="psc0"
-CONFIG_EARLY_CONSOLE_BAUDRATE=115200
-# CONFIG_OF_FLAT_TREE is not set
-CONFIG_DEFAULT_ENVIRONMENT=y
CONFIG_DEFAULT_ENVIRONMENT_PATH="arch/m68k/boards/phycore_mcf54xx/env"
-
-#
-# Debugging
-#
CONFIG_DEBUG_INFO=y
-CONFIG_DEBUG_LL=y
-# CONFIG_ENABLE_FLASH_NOISE is not set
-# CONFIG_ENABLE_PARTITION_NOISE is not set
CONFIG_ENABLE_DEVICE_NOISE=y
-
-#
-# Commands
-#
-
-#
-# scripting
-#
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_HELP=y
CONFIG_CMD_READLINE=y
-
-#
-# file commands
-#
-CONFIG_CMD_LS=y
-CONFIG_CMD_RM=y
-CONFIG_CMD_CAT=y
-CONFIG_CMD_MKDIR=y
-CONFIG_CMD_RMDIR=y
-CONFIG_CMD_CP=y
-CONFIG_CMD_PWD=y
-CONFIG_CMD_CD=y
-CONFIG_CMD_MOUNT=y
-CONFIG_CMD_UMOUNT=y
-
-#
-# console
-#
-CONFIG_CMD_CLEAR=y
-CONFIG_CMD_ECHO=y
-# CONFIG_CMD_SPLASH is not set
-
-#
-# memory
-#
-# CONFIG_CMD_LOADB is not set
-# CONFIG_CMD_LOADS is not set
CONFIG_CMD_MEMINFO=y
CONFIG_CMD_CRC=y
CONFIG_CMD_MTEST=y
CONFIG_CMD_MTEST_ALTERNATIVE=y
-
-#
-# flash
-#
CONFIG_CMD_FLASH=y
-
-#
-# booting
-#
-CONFIG_CMD_BOOTM=y
CONFIG_CMD_BOOTM_ZLIB=y
CONFIG_CMD_BOOTM_BZLIB=y
CONFIG_CMD_BOOTM_SHOW_TYPE=y
@@ -145,52 +27,10 @@ CONFIG_CMD_RESET=y
CONFIG_CMD_GO=y
CONFIG_CMD_TIMEOUT=y
CONFIG_CMD_PARTITION=y
-CONFIG_CMD_TEST=y
CONFIG_NET=y
-CONFIG_NET_BOOTP=y
CONFIG_NET_DHCP=y
-CONFIG_NET_RARP=y
-# CONFIG_NET_SNTP is not set
-# CONFIG_NET_NFS is not set
CONFIG_NET_PING=y
CONFIG_NET_TFTP=y
-
-#
-# Drivers
-#
-
-#
-# serial drivers
-#
-CONFIG_DRIVER_SERIAL_MCFV4E=y
-CONFIG_MIIDEV=y
-
-#
-# Network drivers
-#
-CONFIG_DRIVER_NET_MCF54XX=y
-# CONFIG_DRIVER_NET_MCF54XX_DEBUG is not set
-
-#
-# SPI drivers
-#
-CONFIG_SPI=y
-# CONFIG_DRIVER_SPI_MC13783 is not set
-
-#
-# flash drivers
-#
-CONFIG_HAS_CFI=y
CONFIG_DRIVER_CFI=y
-# CONFIG_DRIVER_CFI_NEW is not set
-CONFIG_DRIVER_CFI_OLD=y
CONFIG_CFI_BUFFER_WRITE=y
-# CONFIG_NAND is not set
-
-#
-# Filesystem support
-#
CONFIG_FS_CRAMFS=y
-CONFIG_ZLIB=y
-CONFIG_BZLIB=y
-CONFIG_CRC32=y
diff --git a/arch/m68k/include/asm/posix_types.h b/arch/m68k/include/asm/posix_types.h
index c40c41d041..d83afe94a2 100644
--- a/arch/m68k/include/asm/posix_types.h
+++ b/arch/m68k/include/asm/posix_types.h
@@ -27,7 +27,6 @@
#define __ARCH_M68K_POSIX_TYPES_H
-typedef unsigned short __kernel_dev_t;
typedef unsigned long __kernel_ino_t;
typedef unsigned short __kernel_mode_t;
typedef unsigned short __kernel_nlink_t;
diff --git a/arch/m68k/lib/m68k-linuxboot.c b/arch/m68k/lib/m68k-linuxboot.c
index 417a8e0cd7..e5e90a8722 100644
--- a/arch/m68k/lib/m68k-linuxboot.c
+++ b/arch/m68k/lib/m68k-linuxboot.c
@@ -109,20 +109,20 @@ static int do_bootm_linux(struct image_data *data)
const char *commandline = getenv ("bootargs");
uint32_t loadaddr,loadsize;
- if (os_header->ih_type == IH_TYPE_MULTI) {
+ if (image_check_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))ntohl((os_header->ih_ep));
+ theKernel = (void (*)(int,int,uint))image_get_ep(os_header);
debug ("## Transferring control to Linux (at address %08lx) ...\n",
(ulong) theKernel);
- loadaddr = (uint32_t)ntohl(os_header->ih_load);
- loadsize = (uint32_t)ntohl(os_header->ih_size);
+ 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))