Download zip Select Archive Format
Name Last Update history
File empty ..
File txt Kconfig Loading commit data...
File txt MAINTAINERS Loading commit data...
File txt Makefile Loading commit data...
File txt README Loading commit data...
File txt m52277evb.c Loading commit data...

README

Freescale MCF52277EVB ColdFire Development Board
================================================

TsiChung Liew(Tsi-Chung.Liew@freescale.com)
Created Jan 8, 2008
===========================================


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

- board/freescale/m52277evb/m52277evb.c	Dram setup
- board/freescale/m52277evb/Makefile	Makefile
- board/freescale/m52277evb/config.mk	config make
- board/freescale/m52277evb/u-boot.lds	Linker description

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

- doc/README.m52277evb		This readme file

- 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/crossbar.h		CrossBar structure and definition
- include/asm-m68k/dspi.h		DSPI structure and definition
- include/asm-m68k/edma.h		eDMA structure and definition
- include/asm-m68k/flexbus.h		FlexBus 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_5227x.h	mcf5227x specific header file
- include/asm-m68k/io.h			io functions
- include/asm-m68k/lcd.h		LCD structure and definition
- include/asm-m68k/m5227x.h		mcf5227x 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/ssi.h		SSI structure and definition
- 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/M52277EVB.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 MCF52277 specific Options/Settings
====================================
1.1 pre-loader is no longer suppoer in this coldfire family

1.2 Configuration settings for M52277EVB Development Board
CONFIG_MCF5227x		-- define for all MCF5227x CPUs
CONFIG_M52277		-- define for all Freescale MCF52277 CPUs

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_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 MCF52277 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

CONFIG_LCD and CONFIG_CMD_USB are not supported in this current U-Boot,
update will be provided at later time

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:		0xF0000000-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 (64MB)
	SRAM:		0x80000000-0x80007FFF (32KB)
	IP:		0xFC000000-0xFC0FFFFF (64KB)

3. COMPILATION
==============
3.1	To create U-Boot the gcc-4.1-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-1.x.x
   make distclean
   make M52277EVB_config
   make

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

U-Boot 1.3.1 (Jan 8 2008 - 12:44:08)

CPU:   Freescale MCF52277 (Mask:6c Version:0)
       CPU CLK 160 Mhz BUS CLK 80 Mhz FLB CLK 80 MHZ
       INP CLK 16 Mhz VCO CLK 480 Mhz
Board: Freescale 52277 EVB
I2C:   ready
DRAM:  64 MB
FLASH: 16 MB
In:    serial
Out:   serial
Err:   serial
-> print
baudrate=115200
hostname=M52277EVB
inpclk=16000000
loadaddr=(0x40000000 + 0x10000)
load=tftp ${loadaddr) ${u-boot}
upd=run load; run prog
prog=prot off 0 3ffff;era 0 3ffff;cp.b ${loadaddr} 0 ${filesize};save
u-boot=u-boot.bin
stdin=serial
stdout=serial
stderr=serial
mem=65024k

Environment size: 280/32764 bytes
-> bdinfo
memstart    = 0x40000000
memsize     = 0x04000000
flashstart  = 0x00000000
flashsize   = 0x01000000
flashoffset = 0x00000000
sramstart   = 0x80000000
sramsize    = 0x00008000
mbar        = 0xFC000000
busfreq     =     80 MHz
flbfreq     =     80 Mhz
inpfreq     =     16 Mhz
vcofreq     =    480 Mhz

baudrate    = 115200 bps
->
-> help
?       - alias for 'help'
base    - print or set address offset
bdinfo  - print Board Info structure
boot    - boot default, i.e., run 'bootcmd'
bootd   - boot default, i.e., run 'bootcmd'
bootelf - Boot from an ELF image in memory
bootm   - boot application image from memory
bootp	- boot image via network using BootP/TFTP protocol
bootvx  - Boot vxWorks from an ELF image
cmp     - memory compare
coninfo - print console devices and information
cp      - memory copy
crc32   - checksum calculation
date    - get/set/reset date & time
dcache  - enable or disable data cache
echo    - echo args to console
erase   - erase FLASH memory
flinfo  - print FLASH memory information
go      - start application at address 'addr'
help    - print online help
i2c     - I2C sub-system
icache  - enable or disable instruction cache
iminfo  - print header information for application image
imls    - list all images found in flash
itest	- return true/false on integer compare
loadb   - load binary file over serial line (kermit mode)
loads   - load S-Record file over serial line
loady   - load binary file over serial line (ymodem mode)
loop    - infinite loop on address range
ls	- list files in a directory (default /)
md      - memory display
mm      - memory modify (auto-incrementing)
mtest   - simple RAM test
mw      - memory write (fill)
nm      - memory modify (constant address)
ping	- send ICMP ECHO_REQUEST to network host
printenv- print environment variables
protect - enable or disable FLASH write protection
reset   - Perform RESET of the CPU
run     - run commands in an environment variable
saveenv - save environment variables to persistent storage
setenv  - set environment variables
sleep   - delay execution for some time
source  - run script from memory
version - print monitor version
->