Freescale MCF53017EVB ColdFire Development Board
================================================

TsiChung Liew(Tsi-Chung.Liew@freescale.com)
Created 10/22/08
===========================================


Changed files:
==============

- board/freescale/m53017evb/m53017evb.c	Dram setup
- board/freescale/m53017evb/mii.c	Mii access
- board/freescale/m53017evb/Makefile	Makefile
- board/freescale/m53017evb/config.mk	config make
- board/freescale/m53017evb/u-boot.lds	Linker description

- arch/m68k/cpu/mcf532x/cpu.c			cpu specific code
- arch/m68k/cpu/mcf532x/cpu_init.c		FBCS, Mux pins, icache and RTC extra regs
- arch/m68k/cpu/mcf532x/interrupts.c		cpu specific interrupt support
- arch/m68k/cpu/mcf532x/speed.c			system, flexbus, and cpu clock
- arch/m68k/cpu/mcf532x/Makefile			Makefile
- arch/m68k/cpu/mcf532x/config.mk			config make
- arch/m68k/cpu/mcf532x/start.S			start up assembly code

- doc/README.m53017evb			This readme file

- drivers/net/mcffec.c			ColdFire common FEC driver
- drivers/net/mcfmii.c			ColdFire common Mii driver
- drivers/serial/mcfuart.c		ColdFire common UART driver
- drivers/rtc/mcfrtc.c			Realtime clock Driver

- include/asm-m68k/bitops.h		Bit operation function export
- include/asm-m68k/byteorder.h		Byte order functions
- include/asm-m68k/fec.h		FEC structure and definition
- include/asm-m68k/fsl_i2c.h		I2C structure and definition
- include/asm-m68k/global_data.h	Global data structure
- include/asm-m68k/immap.h		ColdFire specific header file and driver macros
- include/asm-m68k/immap_5301x.h	mcf5301x specific header file
- include/asm-m68k/io.h			io functions
- include/asm-m68k/m532x.h		mcf5301x specific header file
- include/asm-m68k/posix_types.h	Posix
- include/asm-m68k/processor.h		header file
- include/asm-m68k/ptrace.h		Exception structure
- include/asm-m68k/rtc.h		Realtime clock header file
- include/asm-m68k/string.h		String function export
- include/asm-m68k/timer.h		Timer structure and definition
- include/asm-m68k/types.h		Data types definition
- include/asm-m68k/uart.h		Uart structure and definition
- include/asm-m68k/u-boot.h		U-Boot structure

- include/configs/M53017EVB.h		Board specific configuration file

- arch/m68k/lib/board.c			board init function
- arch/m68k/lib/cache.c
- arch/m68k/lib/interrupts			Coldfire common interrupt functions
- arch/m68k/lib/m68k_linux.c
- arch/m68k/lib/time.c			Timer functions (Dma timer and PIT)
- arch/m68k/lib/traps.c			Exception init code

1 MCF5301x specific Options/Settings
====================================
1.1 pre-loader is no longer suppoer in thie coldfire family

1.2 Configuration settings for M53017EVB Development Board
CONFIG_MCF5301x			-- define for all MCF5301x CPUs
CONFIG_M53015			-- define for MCF53015 CPUs
CONFIG_M53017EVB		-- define for M53017EVB board

CONFIG_MCFUART			-- define to use common CF Uart driver
CONFIG_SYS_UART_PORT		-- define UART port number, start with 0, 1 and 2
CONFIG_BAUDRATE			-- define UART baudrate

CONFIG_MCFRTC			-- define to use common CF RTC driver
CONFIG_SYS_MCFRTC_BASE		-- provide base address for RTC in immap.h
CONFIG_SYS_RTC_OSCILLATOR	-- define RTC clock frequency
RTC_DEBUG			-- define to show RTC debug message
CONFIG_CMD_DATE			-- enable to use date feature in U-Boot

CONFIG_MCFFEC			-- define to use common CF FEC driver
CONFIG_MII			-- enable to use MII driver
CONFIG_CF_DOMII			-- enable to use MII feature in cmd_mii.c
CONFIG_SYS_DISCOVER_PHY		-- enable PHY discovery
CONFIG_SYS_RX_ETH_BUFFER	-- Set FEC Receive buffer
CONFIG_SYS_FAULT_ECHO_LINK_DOWN	--
CONFIG_SYS_FEC0_PINMUX		-- Set FEC0 Pin configuration
CONFIG_SYS_FEC0_MIIBASE		-- Set FEC0 MII base register
MCFFEC_TOUT_LOOP		-- set FEC timeout loop

CONFIG_MCFTMR			-- define to use DMA timer
CONFIG_MCFPIT			-- define to use PIT timer

CONFIG_SYS_I2C_FSL		-- define to use FSL common I2C driver
CONFIG_SYS_I2C_SOFT		-- define for I2C bit-banged
CONFIG_SYS_I2C_SPEED		-- define for I2C speed
CONFIG_SYS_I2C_SLAVE		-- define for I2C slave address
CONFIG_SYS_I2C_OFFSET		-- define for I2C base address offset
CONFIG_SYS_IMMR			-- define for MBAR offset

CONFIG_SYS_MBAR			-- define MBAR offset

CONFIG_MONITOR_IS_IN_RAM 	-- Not support

CONFIG_SYS_INIT_RAM_ADDR	-- defines the base address of the MCF5301x internal SRAM

CONFIG_SYS_CSn_BASE		-- defines the Chip Select Base register
CONFIG_SYS_CSn_MASK		-- defines the Chip Select Mask register
CONFIG_SYS_CSn_CTRL		-- defines the Chip Select Control register

CONFIG_SYS_SDRAM_BASE		-- defines the DRAM Base

2. MEMORY MAP UNDER U-BOOT AND LINUX KERNEL
===========================================
2.1. System memory map:
	Flash:		0x00000000-0x3FFFFFFF (1024MB)
	DDR:		0x40000000-0x7FFFFFFF (1024MB)
	SRAM:		0x80000000-0x8FFFFFFF (256MB)
	IP:		0xFC000000-0xFFFFFFFF (256MB)

2.2. For the initial bringup, we adopted a consistent memory scheme between U-Boot and
	linux kernel, you can customize it based on your system requirements:
	Flash0:		0x00000000-0x00FFFFFF (16MB)
	DDR:		0x40000000-0x4FFFFFFF (256MB)
	SRAM:		0x80000000-0x80007FFF (32KB)
	IP:		0xFC000000-0xFC0FFFFF (64KB)

3. COMPILATION
==============
3.1	To create U-Boot the gcc-4.x-xx compiler set (ColdFire ELF or
uClinux version) from codesourcery.com was used. Download it from:
http://www.codesourcery.com/gnu_toolchains/coldfire/download.html

3.2 Compilation
   export CROSS_COMPILE=cross-compile-prefix
   cd u-boot
   make distclean
   make M53017EVB_config
   make

4. SCREEN DUMP
==============
4.1 M53017EVB Development board
    (NOTE: May not show exactly the same)

U-Boot 2008.10 (Oct 22 2007 - 11:07:57)

CPU:   Freescale MCF53015 (Mask:76 Version:0)
       CPU CLK 240 Mhz BUS CLK 80 Mhz
Board: Freescale M53017EVB
I2C:   ready
DRAM:  64 MB
FLASH: 16 MB
In:    serial
Out:   serial
Err:   serial
NAND:  16 MiB
Net:   FEC0, FEC1
-> print
bootdelay=1
baudrate=115200
ethaddr=00:e0:0c:bc:e5:60
hostname=M53017EVB
netdev=eth0
loadaddr=40010000
u-boot=u-boot.bin
load=tftp ${loadaddr) ${u-boot}
upd=run load; run prog
prog=prot off 0 3ffff;era 0 3ffff;cp.b ${loadaddr} 0 ${filesize};save
gatewayip=192.168.1.1
netmask=255.255.255.0
ipaddr=192.168.1.3
serverip=192.168.1.2
stdin=serial
stdout=serial
stderr=serial
mem=65024k

Environment size: 437/4092 bytes
->
