[U-Boot] [patch 0/6] Update patchset for some Freescale ColdFire boards

The following patches update some ColdFire boards to work with latest u-boot. Those update were tested on following Freescale boards: M54455EVB, M54451EVB, M5475EVB(M5475CFE_config), M5485EVB(M5485HFE_conifg), M5208EVB, M5253DEMO, M52277EVB, M53017EVB, M5373EVB, M5329EVB(M5329BFEE_config).
[PATCH 1/6] Fix the configuration broken for ColdFire boards. [PATCH 2/6] Fix the CPP flags for toolchain 4.4.1 on ColdFire boards. [PATCH 3/6] Env and lds file clean up for ColdFire M5445x and M547x/8x boards. [PATCH 4/6] Clean up lds files for some ColdFire nommu chips [PATCH 5/6] Enable the dm9000 on ColdFire 5253DEMO board. [PATCH 6/6] Disable the NFS define for 52277 board.

Some typoes in Makefile and boards.cfg make the M54455 board and M53017 board configuration broken.
Signed-off-by: Jason Jin Jason.jin@freescale.com --- Makefile | 1 + boards.cfg | 2 +- 2 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/Makefile b/Makefile index 10a856a..425ba80 100644 --- a/Makefile +++ b/Makefile @@ -674,6 +674,7 @@ M54455EVB_stm33_config : unconfig cp $(obj)board/freescale/m54455evb/u-boot.stm $(obj)board/freescale/m54455evb/u-boot.lds ; \ fi; \ echo "#define CONFIG_SYS_INPUT_CLKSRC $${FREQ}" >> $(obj)include/config.h ; \ + $(XECHO) "... with $${FREQ}Hz input clock" @$(MKCONFIG) -n $@ -a M54455EVB m68k mcf5445x m54455evb freescale
M5475AFE_config \ diff --git a/boards.cfg b/boards.cfg index d25f3f2..04a706c 100644 --- a/boards.cfg +++ b/boards.cfg @@ -214,7 +214,7 @@ M5271EVB m68k mcf52x2 m5271evb freesca M5272C3 m68k mcf52x2 m5272c3 freescale M5275EVB m68k mcf52x2 m5275evb freescale M5282EVB m68k mcf52x2 m5282evb freescale -M53017EVB m68k mcf52x2 m53017evb freescale +M53017EVB m68k mcf532x m53017evb freescale EP2500 m68k mcf52x2 ep2500 Mercury microblaze-generic microblaze microblaze microblaze-generic xilinx dbau1000 mips mips32 dbau1x00 - au1x00 dbau1x00:DBAU1000

The original comparing the 4.1 with gcc --version will assume the toolchain 4.4.1 as toolchain 4.1 and setup wrong CPP flags.
Signed-off-by: Lu Jingchang b35083@freescale.com Signed-off-by: Jason Jin Jason.jin@freescale.com --- arch/m68k/cpu/mcf5227x/config.mk | 2 +- arch/m68k/cpu/mcf532x/config.mk | 2 +- arch/m68k/cpu/mcf5445x/config.mk | 2 +- arch/m68k/cpu/mcf547x_8x/config.mk | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/arch/m68k/cpu/mcf5227x/config.mk b/arch/m68k/cpu/mcf5227x/config.mk index 8eab49d..2257df4 100644 --- a/arch/m68k/cpu/mcf5227x/config.mk +++ b/arch/m68k/cpu/mcf5227x/config.mk @@ -24,7 +24,7 @@ #
PLATFORM_RELFLAGS += -ffixed-d7 -msep-data -ifneq ($(findstring 4.1,$(shell $(CC) --version)),4.1) +ifneq ($(findstring 4.1.,$(shell $(CC) --version)),4.1.) PLATFORM_CPPFLAGS += -mcpu=52277 -fPIC else PLATFORM_CPPFLAGS += -m5307 -fPIC diff --git a/arch/m68k/cpu/mcf532x/config.mk b/arch/m68k/cpu/mcf532x/config.mk index b783444..191c583 100644 --- a/arch/m68k/cpu/mcf532x/config.mk +++ b/arch/m68k/cpu/mcf532x/config.mk @@ -29,7 +29,7 @@ cfg=$(shell grep configs $(OBJTREE)/include/config.h | sed 's/.*<(configs.*)>/ is5301x:=$(shell grep CONFIG_MCF5301x $(TOPDIR)/include/$(cfg)) is532x:=$(shell grep CONFIG_MCF532x $(TOPDIR)/include/$(cfg))
-ifneq ($(findstring 4.1,$(shell $(CC) --version)),4.1) +ifneq ($(findstring 4.1.,$(shell $(CC) --version)),4.1.)
ifneq (,$(findstring CONFIG_MCF5301x,$(is5301x))) PLATFORM_CPPFLAGS += -mcpu=53015 -fPIC diff --git a/arch/m68k/cpu/mcf5445x/config.mk b/arch/m68k/cpu/mcf5445x/config.mk index b0b49f7..fa73bbe 100644 --- a/arch/m68k/cpu/mcf5445x/config.mk +++ b/arch/m68k/cpu/mcf5445x/config.mk @@ -24,7 +24,7 @@ #
PLATFORM_RELFLAGS += -ffixed-d7 -msep-data -ifneq ($(findstring 4.1,$(shell $(CC) --version)),4.1) +ifneq ($(findstring 4.1.,$(shell $(CC) --version)),4.1.) PLATFORM_CPPFLAGS += -mcpu=54455 -fPIC else PLATFORM_CPPFLAGS += -m5407 -fPIC diff --git a/arch/m68k/cpu/mcf547x_8x/config.mk b/arch/m68k/cpu/mcf547x_8x/config.mk index 83102ab..9cc0783 100644 --- a/arch/m68k/cpu/mcf547x_8x/config.mk +++ b/arch/m68k/cpu/mcf547x_8x/config.mk @@ -24,7 +24,7 @@ #
PLATFORM_RELFLAGS += -ffixed-d7 -msep-data -ifneq ($(findstring 4.1,$(shell $(CC) --version)),4.1) +ifneq ($(findstring 4.1.,$(shell $(CC) --version)),4.1.) PLATFORM_CPPFLAGS += -mcpu=5485 -fPIC else PLATFORM_CPPFLAGS += -m5407 -fPIC

Move the environment outside the u-boot image, leave more space for the text to avoid the possible PC truncate issue.
The lds file for ColdFire need to clean up since commit 6d8962e814c15807dd6ac5757904be2a02d187b8 'Switch from archive libraries to partial linking'.
Signed-off-by: Jason Jin Jason.jin@freescale.com --- board/freescale/m54451evb/u-boot.spa | 10 ---------- board/freescale/m54451evb/u-boot.stm | 13 ------------- board/freescale/m54455evb/u-boot.atm | 7 ------- board/freescale/m54455evb/u-boot.int | 4 ---- board/freescale/m547xevb/u-boot.lds | 6 ------ board/freescale/m548xevb/u-boot.lds | 6 ------ include/configs/M54451EVB.h | 9 +++++---- include/configs/M54455EVB.h | 10 ++++++---- include/configs/M5475EVB.h | 9 +++++---- include/configs/M5485EVB.h | 9 +++++---- 10 files changed, 21 insertions(+), 62 deletions(-)
diff --git a/board/freescale/m54451evb/u-boot.spa b/board/freescale/m54451evb/u-boot.spa index e1bacd3..03d8e52 100644 --- a/board/freescale/m54451evb/u-boot.spa +++ b/board/freescale/m54451evb/u-boot.spa @@ -56,16 +56,6 @@ SECTIONS /* the sector layout of our flash chips! XXX FIXME XXX */
arch/m68k/cpu/mcf5445x/start.o (.text) - arch/m68k/cpu/mcf5445x/libmcf5445x.o (.text) - arch/m68k/lib/libm68k.o (.text) - common/cmd_flash.o (.text) - common/dlmalloc.o (.text) - common/main.o (.text) - common/image.o (.text) - lib/libgeneric.o (.text) - - . = DEFINED(env_offset) ? env_offset : .; - common/env_embedded.o (.text)
*(.text) *(.fixup) diff --git a/board/freescale/m54451evb/u-boot.stm b/board/freescale/m54451evb/u-boot.stm index 1c6979f..46773d0 100644 --- a/board/freescale/m54451evb/u-boot.stm +++ b/board/freescale/m54451evb/u-boot.stm @@ -56,20 +56,7 @@ SECTIONS /* the sector layout of our flash chips! XXX FIXME XXX */
arch/m68k/cpu/mcf5445x/start.o (.text) -/* arch/m68k/cpu/mcf5445x/cpu_init.o (.text) - arch/m68k/cpu/mcf5445x/cpu.o (.text) - arch/m68k/cpu/mcf5445x/dspi.o (.text) - arch/m68k/cpu/mcf5445x/interrupt.o (.text) - arch/m68k/cpu/mcf5445x/speed.o (.text) - arch/m68k/lib/board.o (.text) - common/serial.o (.text) - common/console.o (.text) - lib/display_options.o (.text) - board/freescale/m54455evb/m54455evb.o (.text)
- . = DEFINED(env_offset) ? env_offset : .; - common/env_embedded.o (.text) -*/ *(.text) *(.fixup) *(.got1) diff --git a/board/freescale/m54455evb/u-boot.atm b/board/freescale/m54455evb/u-boot.atm index cf4650e..03d8e52 100644 --- a/board/freescale/m54455evb/u-boot.atm +++ b/board/freescale/m54455evb/u-boot.atm @@ -56,13 +56,6 @@ SECTIONS /* the sector layout of our flash chips! XXX FIXME XXX */
arch/m68k/cpu/mcf5445x/start.o (.text) - arch/m68k/lib/traps.o (.text) - arch/m68k/lib/interrupts.o (.text) - common/dlmalloc.o (.text) - lib/zlib.o (.text) - - . = DEFINED(env_offset) ? env_offset : .; - common/env_embedded.o (.text)
*(.text) *(.fixup) diff --git a/board/freescale/m54455evb/u-boot.int b/board/freescale/m54455evb/u-boot.int index 79e64a2..03d8e52 100644 --- a/board/freescale/m54455evb/u-boot.int +++ b/board/freescale/m54455evb/u-boot.int @@ -56,10 +56,6 @@ SECTIONS /* the sector layout of our flash chips! XXX FIXME XXX */
arch/m68k/cpu/mcf5445x/start.o (.text) - arch/m68k/lib/traps.o (.text) - arch/m68k/lib/interrupts.o (.text) - common/dlmalloc.o (.text) - lib/zlib.o (.text)
*(.text) *(.fixup) diff --git a/board/freescale/m547xevb/u-boot.lds b/board/freescale/m547xevb/u-boot.lds index a4e4d5a..a5b1c1a 100644 --- a/board/freescale/m547xevb/u-boot.lds +++ b/board/freescale/m547xevb/u-boot.lds @@ -56,12 +56,6 @@ SECTIONS /* the sector layout of our flash chips! XXX FIXME XXX */
arch/m68k/cpu/mcf547x_8x/start.o (.text) - arch/m68k/lib/traps.o (.text) - arch/m68k/lib/interrupts.o (.text) - common/dlmalloc.o (.text) - - . = DEFINED(env_offset) ? env_offset : .; - common/env_embedded.o (.text)
*(.text) *(.fixup) diff --git a/board/freescale/m548xevb/u-boot.lds b/board/freescale/m548xevb/u-boot.lds index a4e4d5a..a5b1c1a 100644 --- a/board/freescale/m548xevb/u-boot.lds +++ b/board/freescale/m548xevb/u-boot.lds @@ -56,12 +56,6 @@ SECTIONS /* the sector layout of our flash chips! XXX FIXME XXX */
arch/m68k/cpu/mcf547x_8x/start.o (.text) - arch/m68k/lib/traps.o (.text) - arch/m68k/lib/interrupts.o (.text) - common/dlmalloc.o (.text) - - . = DEFINED(env_offset) ? env_offset : .; - common/env_embedded.o (.text)
*(.text) *(.fixup) diff --git a/include/configs/M54451EVB.h b/include/configs/M54451EVB.h index 37715c5..12405d3 100644 --- a/include/configs/M54451EVB.h +++ b/include/configs/M54451EVB.h @@ -250,7 +250,7 @@ #endif #define CONFIG_SYS_BOOTPARAMS_LEN 64*1024 #define CONFIG_SYS_MONITOR_LEN (256 << 10) /* Reserve 256 kB for Monitor */ -#define CONFIG_SYS_MALLOC_LEN (128 << 10) /* Reserve 128 kB for malloc() */ +#define CONFIG_SYS_MALLOC_LEN (256 << 10) /* Reserve 256 kB for malloc() */
/* * For booting Linux, the board info and command line data @@ -261,7 +261,8 @@ #define CONFIG_SYS_BOOTMAPSZ (CONFIG_SYS_SDRAM_BASE + (CONFIG_SYS_SDRAM_SIZE << 20))
/* Configuration for environment - * Environment is embedded in u-boot in the second sector of the flash + * Environment is not embedded in u-boot. First time runing may have env crc error warnig + * if there are no correct environment on the flash. */ #if defined(CONFIG_SYS_STMICRO_BOOT) # define CONFIG_ENV_IS_IN_SPI_FLASH 1 @@ -271,9 +272,9 @@ # define CONFIG_ENV_SECT_SIZE 0x10000 #else # define CONFIG_ENV_IS_IN_FLASH 1 -# define CONFIG_ENV_ADDR (CONFIG_SYS_FLASH_BASE + 0x8000) +# define CONFIG_ENV_ADDR (CONFIG_SYS_FLASH_BASE + 0x40000) # define CONFIG_ENV_SIZE 0x2000 -# define CONFIG_ENV_SECT_SIZE 0x8000 +# define CONFIG_ENV_SECT_SIZE 0x20000 #endif #undef CONFIG_ENV_OVERWRITE
diff --git a/include/configs/M54455EVB.h b/include/configs/M54455EVB.h index 86faa3d..46d99a8 100644 --- a/include/configs/M54455EVB.h +++ b/include/configs/M54455EVB.h @@ -310,7 +310,7 @@ #endif #define CONFIG_SYS_BOOTPARAMS_LEN 64*1024 #define CONFIG_SYS_MONITOR_LEN (256 << 10) /* Reserve 256 kB for Monitor */ -#define CONFIG_SYS_MALLOC_LEN (128 << 10) /* Reserve 128 kB for malloc() */ +#define CONFIG_SYS_MALLOC_LEN (256 << 10) /* Reserve 256 kB for malloc() */
/* * For booting Linux, the board info and command line data @@ -322,7 +322,8 @@
/* * Configuration for environment - * Environment is embedded in u-boot in the second sector of the flash + * Environment is not embedded in u-boot. First time runing may have env crc error warnig + * if there are no correct environment on the flash. */ #ifdef CONFIG_CF_SBF # define CONFIG_ENV_IS_IN_SPI_FLASH @@ -346,8 +347,9 @@ # define CONFIG_SYS_FLASH_BASE CONFIG_SYS_CS0_BASE # define CONFIG_SYS_FLASH0_BASE CONFIG_SYS_CS0_BASE # define CONFIG_SYS_FLASH1_BASE CONFIG_SYS_CS1_BASE -# define CONFIG_ENV_ADDR (CONFIG_SYS_FLASH_BASE + 0x4000) -# define CONFIG_ENV_SECT_SIZE 0x2000 +# define CONFIG_ENV_ADDR (CONFIG_SYS_FLASH_BASE + 0x40000) +# define CONFIG_ENV_SIZE 0x2000 +# define CONFIG_ENV_SECT_SIZE 0x10000 #endif #ifdef CONFIG_SYS_INTEL_BOOT # define CONFIG_SYS_FLASH_BASE CONFIG_SYS_CS0_BASE diff --git a/include/configs/M5475EVB.h b/include/configs/M5475EVB.h index 5f6eb55..57134e6 100644 --- a/include/configs/M5475EVB.h +++ b/include/configs/M5475EVB.h @@ -243,7 +243,7 @@ #define CONFIG_SYS_MONITOR_LEN (256 << 10) /* Reserve 256 kB for Monitor */
#define CONFIG_SYS_BOOTPARAMS_LEN 64*1024 -#define CONFIG_SYS_MALLOC_LEN (128 << 10) /* Reserve 128 kB for malloc() */ +#define CONFIG_SYS_MALLOC_LEN (256 << 10) /* Reserve 256 kB for malloc() */
/* * For booting Linux, the board info and command line data @@ -274,10 +274,11 @@ #endif
/* Configuration for environment - * Environment is embedded in u-boot in the second sector of the flash + * Environment is not embedded in u-boot but at offset 0x40000 on the flash. + * First time runing may have env crc error warnig if there are no correct environment on the flash. */ -#define CONFIG_ENV_OFFSET 0x2000 -#define CONFIG_ENV_SECT_SIZE 0x2000 +#define CONFIG_ENV_OFFSET 0x40000 +#define CONFIG_ENV_SECT_SIZE 0x10000 #define CONFIG_ENV_IS_IN_FLASH 1
/*----------------------------------------------------------------------- diff --git a/include/configs/M5485EVB.h b/include/configs/M5485EVB.h index e178e35..ea4c129 100644 --- a/include/configs/M5485EVB.h +++ b/include/configs/M5485EVB.h @@ -229,7 +229,7 @@ #define CONFIG_SYS_MONITOR_LEN (256 << 10) /* Reserve 256 kB for Monitor */
#define CONFIG_SYS_BOOTPARAMS_LEN 64*1024 -#define CONFIG_SYS_MALLOC_LEN (128 << 10) /* Reserve 128 kB for malloc() */ +#define CONFIG_SYS_MALLOC_LEN (256 << 10) /* Reserve 256 kB for malloc() */
/* * For booting Linux, the board info and command line data @@ -260,10 +260,11 @@ #endif
/* Configuration for environment - * Environment is embedded in u-boot in the second sector of the flash + * Environment is not embedded in u-boot. First time runing may have env crc error warnig + * if there are no correct environment on the flash. */ -#define CONFIG_ENV_OFFSET 0x2000 -#define CONFIG_ENV_SECT_SIZE 0x2000 +#define CONFIG_ENV_OFFSET 0x40000 +#define CONFIG_ENV_SECT_SIZE 0x10000 #define CONFIG_ENV_IS_IN_FLASH 1
/*-----------------------------------------------------------------------

The lds file for ColdFire boards need to clean up since commit 6d8962e814c15807dd6ac5757904be2a02d187b8 'Switch from archive libraries to partial linking'.
Signed-off-by: Jason Jin Jason.jin@freescale.com --- board/freescale/m5208evbe/u-boot.lds | 3 --- board/freescale/m52277evb/u-boot.spa | 3 --- board/freescale/m5253demo/u-boot.lds | 4 ---- board/freescale/m53017evb/u-boot.lds | 2 -- board/freescale/m5329evb/u-boot.lds | 4 ---- board/freescale/m5373evb/u-boot.lds | 4 ---- 6 files changed, 0 insertions(+), 20 deletions(-)
diff --git a/board/freescale/m5208evbe/u-boot.lds b/board/freescale/m5208evbe/u-boot.lds index e5011a6..2bac566 100644 --- a/board/freescale/m5208evbe/u-boot.lds +++ b/board/freescale/m5208evbe/u-boot.lds @@ -56,9 +56,6 @@ SECTIONS /* the sector layout of our flash chips! XXX FIXME XXX */
arch/m68k/cpu/mcf52x2/start.o (.text) - arch/m68k/cpu/mcf52x2/libmcf52x2.o (.text) - arch/m68k/lib/libm68k.o (.text) - common/dlmalloc.o (.text)
. = DEFINED(env_offset) ? env_offset : .; common/env_embedded.o (.text) diff --git a/board/freescale/m52277evb/u-boot.spa b/board/freescale/m52277evb/u-boot.spa index 4b710be..2872250 100644 --- a/board/freescale/m52277evb/u-boot.spa +++ b/board/freescale/m52277evb/u-boot.spa @@ -58,9 +58,6 @@ SECTIONS arch/m68k/cpu/mcf5227x/start.o (.text) arch/m68k/cpu/mcf5227x/libmcf5227x.o (.text) arch/m68k/lib/libm68k.o (.text) - lib/libgeneric.o (.text) - common/cmd_mem.o (.text) - common/main.o (.text)
. = DEFINED(env_offset) ? env_offset : .; common/env_embedded.o (.text) diff --git a/board/freescale/m5253demo/u-boot.lds b/board/freescale/m5253demo/u-boot.lds index 3644838..279c5b9 100644 --- a/board/freescale/m5253demo/u-boot.lds +++ b/board/freescale/m5253demo/u-boot.lds @@ -56,10 +56,6 @@ SECTIONS /* the sector layout of our flash chips! XXX FIXME XXX */
arch/m68k/cpu/mcf52x2/start.o (.text) - arch/m68k/lib/traps.o (.text) - arch/m68k/cpu/mcf52x2/interrupts.o (.text) - common/dlmalloc.o (.text) - lib/zlib.o (.text)
. = DEFINED(env_offset) ? env_offset : .; common/env_embedded.o (.text) diff --git a/board/freescale/m53017evb/u-boot.lds b/board/freescale/m53017evb/u-boot.lds index 445566b..69b57c5 100644 --- a/board/freescale/m53017evb/u-boot.lds +++ b/board/freescale/m53017evb/u-boot.lds @@ -58,8 +58,6 @@ SECTIONS arch/m68k/cpu/mcf532x/start.o (.text) arch/m68k/cpu/mcf532x/libmcf532x.o (.text) arch/m68k/lib/libm68k.o (.text) - common/dlmalloc.o (.text) - lib/zlib.o (.text)
. = DEFINED(env_offset) ? env_offset : .; common/env_embedded.o (.text) diff --git a/board/freescale/m5329evb/u-boot.lds b/board/freescale/m5329evb/u-boot.lds index 4375342..f267609 100644 --- a/board/freescale/m5329evb/u-boot.lds +++ b/board/freescale/m5329evb/u-boot.lds @@ -56,10 +56,6 @@ SECTIONS /* the sector layout of our flash chips! XXX FIXME XXX */
arch/m68k/cpu/mcf532x/start.o (.text) - arch/m68k/lib/traps.o (.text) - arch/m68k/lib/interrupts.o (.text) - common/dlmalloc.o (.text) - lib/zlib.o (.text)
. = DEFINED(env_offset) ? env_offset : .; common/env_embedded.o (.text) diff --git a/board/freescale/m5373evb/u-boot.lds b/board/freescale/m5373evb/u-boot.lds index f3acfc7..ee2e5a3 100644 --- a/board/freescale/m5373evb/u-boot.lds +++ b/board/freescale/m5373evb/u-boot.lds @@ -56,10 +56,6 @@ SECTIONS /* the sector layout of our flash chips! XXX FIXME XXX */
arch/m68k/cpu/mcf532x/start.o (.text) - arch/m68k/lib/traps.o (.text) - arch/m68k/lib/interrupts.o (.text) - common/dlmalloc.o (.text) - lib/zlib.o (.text)
. = DEFINED(env_offset) ? env_offset : .; common/env_embedded.o (.text)

commit a45dde2293c816138e53c26eca6fd0322583f9a6 changed the dm9000 direct register access to standard IO. This should work on the ColdFire platform as there are corresponding macros for the LE devices. But the hardware settings on M5253DEMO board had swapped the byte order which make the original macros such as out_le16 cannot work. To avoid changing the common io access code on ColdFire platform, the DM9000_BYTE_SWAPPED define added to make the dm9000 use __raw* IO access on ColdFire M5253DEMO board.
Signed-off-by: Jason Jin Jason.jin@freescale.com --- drivers/net/dm9000x.c | 10 +++++++++- include/configs/M5253DEMO.h | 1 + 2 files changed, 10 insertions(+), 1 deletions(-)
diff --git a/drivers/net/dm9000x.c b/drivers/net/dm9000x.c index 709f67a..d806c91 100644 --- a/drivers/net/dm9000x.c +++ b/drivers/net/dm9000x.c @@ -116,13 +116,21 @@ static u8 DM9000_ior(int); static void DM9000_iow(int reg, u8 value);
/* DM9000 network board routine ---------------------------- */ - +#ifndef DM9000_BYTE_SWAPPED #define DM9000_outb(d,r) writeb(d, (volatile u8 *)(r)) #define DM9000_outw(d,r) writew(d, (volatile u16 *)(r)) #define DM9000_outl(d,r) writel(d, (volatile u32 *)(r)) #define DM9000_inb(r) readb((volatile u8 *)(r)) #define DM9000_inw(r) readw((volatile u16 *)(r)) #define DM9000_inl(r) readl((volatile u32 *)(r)) +#else +#define DM9000_outb(d,r) __raw_writeb(d, (volatile u8 *)(r)) +#define DM9000_outw(d,r) __raw_writew(d, (volatile u16 *)(r)) +#define DM9000_outl(d,r) __raw_writel(d, (volatile u32 *)(r)) +#define DM9000_inb(r) __raw_readb((volatile u8 *)(r)) +#define DM9000_inw(r) __raw_readw((volatile u16 *)(r)) +#define DM9000_inl(r) __raw_readl((volatile u32 *)(r)) +#endif
#ifdef CONFIG_DM9000_DEBUG static void diff --git a/include/configs/M5253DEMO.h b/include/configs/M5253DEMO.h index f2f3159..8120b68 100644 --- a/include/configs/M5253DEMO.h +++ b/include/configs/M5253DEMO.h @@ -95,6 +95,7 @@ # define DM9000_IO CONFIG_DM9000_BASE # define DM9000_DATA (CONFIG_DM9000_BASE + 4) # undef CONFIG_DM9000_DEBUG +# define DM9000_BYTE_SWAPPED
# define CONFIG_OVERWRITE_ETHADDR_ONCE

There is no network device on ColdFire 52277EVB board.But the default cmd include NFS define which make the build error.
Signed-off-by: Jason Jin Jason.jin@freescale.com --- include/configs/M52277EVB.h | 1 + 1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/include/configs/M52277EVB.h b/include/configs/M52277EVB.h index bb3b474..5722544 100644 --- a/include/configs/M52277EVB.h +++ b/include/configs/M52277EVB.h @@ -69,6 +69,7 @@ #define CONFIG_CMD_MEMORY #define CONFIG_CMD_MISC #undef CONFIG_CMD_NET +#undef CONFIG_CMD_NFS #define CONFIG_CMD_REGINFO #undef CONFIG_CMD_USB #undef CONFIG_CMD_BMP

Dear Jason Jin,
In message 1302597610-15646-6-git-send-email-Jason.jin@freescale.com you wrote:
commit a45dde2293c816138e53c26eca6fd0322583f9a6 changed the dm9000 direct register access to standard IO. This should work on the ColdFire platform as there are corresponding macros for the LE devices. But the hardware settings on M5253DEMO board had swapped the byte order which make the original macros such as out_le16 cannot work. To avoid changing the common io access code on ColdFire platform, the DM9000_BYTE_SWAPPED define added to make the dm9000 use __raw* IO access on ColdFire M5253DEMO board.
...
+#ifndef DM9000_BYTE_SWAPPED #define DM9000_outb(d,r) writeb(d, (volatile u8 *)(r)) #define DM9000_outw(d,r) writew(d, (volatile u16 *)(r)) #define DM9000_outl(d,r) writel(d, (volatile u32 *)(r)) #define DM9000_inb(r) readb((volatile u8 *)(r)) #define DM9000_inw(r) readw((volatile u16 *)(r)) #define DM9000_inl(r) readl((volatile u32 *)(r)) +#else +#define DM9000_outb(d,r) __raw_writeb(d, (volatile u8 *)(r)) +#define DM9000_outw(d,r) __raw_writew(d, (volatile u16 *)(r)) +#define DM9000_outl(d,r) __raw_writel(d, (volatile u32 *)(r)) +#define DM9000_inb(r) __raw_readb((volatile u8 *)(r)) +#define DM9000_inw(r) __raw_readw((volatile u16 *)(r)) +#define DM9000_inl(r) __raw_readl((volatile u32 *)(r)) +#endif
All these "volatile something *" casts are not needed and should be removed.
Best regards,
Wolfgang Denk

Dear Jason Jin,
In message 1302597610-15646-4-git-send-email-Jason.jin@freescale.com you wrote:
Move the environment outside the u-boot image, leave more space for the text to avoid the possible PC truncate issue.
The lds file for ColdFire need to clean up since commit 6d8962e814c15807dd6ac5757904be2a02d187b8 'Switch from archive libraries to partial linking'.
...
/*
- Configuration for environment
- Environment is embedded in u-boot in the second sector of the flash
- Environment is not embedded in u-boot. First time runing may have env crc error warnig
- if there are no correct environment on the flash.
Line too long.
+#define CONFIG_SYS_MALLOC_LEN (256 << 10) /* Reserve 256 kB for malloc() */
Ditto. Please fix globally!
Best regards,
Wolfgang Denk

Dear Jason Jin,
In message 1302597610-15646-3-git-send-email-Jason.jin@freescale.com you wrote:
The original comparing the 4.1 with gcc --version will assume the toolchain 4.4.1 as toolchain 4.1 and setup wrong CPP flags.
Signed-off-by: Lu Jingchang b35083@freescale.com Signed-off-by: Jason Jin Jason.jin@freescale.com
It is IMO a bad idea to base option settings on specific strings in the compiler version. Cannot you test if the respective options are supported by a specific compiler, as we do in so many other places?
Best regards,
Wolfgang Denk
participants (2)
-
Jason Jin
-
Wolfgang Denk