xref: /openbmc/u-boot/doc/README.m54418twr (revision 2290fe06)
1Freescale MCF54418TWR ColdFire Development Board
2================================================
3
4TsiChung Liew(Tsi-Chung.Liew@freescale.com)
5Created Mar 22, 2012
6===========================================
7
8
9Changed files:
10==============
11
12- board/freescale/m54418twr/m54418twr.c	Dram setup
13- board/freescale/m54418twr/Makefile	Makefile
14- board/freescale/m54418twr/config.mk	config make
15- board/freescale/m54418twr/u-boot.lds	Linker description
16
17- arch/m68k/cpu/mcf5445x/cpu.c		cpu specific code
18- arch/m68k/cpu/mcf5445x/cpu_init.c	Flexbus ChipSelect, Mux pins setup, icache and RTC extra regs
19- arch/m68k/cpu/mcf5445x/interrupts.c	cpu specific interrupt support
20- arch/m68k/cpu/mcf5445x/speed.c	system, pci, flexbus, and cpu clock
21- arch/m68k/cpu/mcf5445x/Makefile	Makefile
22- arch/m68k/cpu/mcf5445x/config.mk	config make
23- arch/m68k/cpu/mcf5445x/start.S	start up assembly code
24
25- doc/README.m54418twr			This readme file
26
27- drivers/net/mcffec.c			ColdFire common FEC driver
28- drivers/net/mcfmii.c			ColdFire common MII driver
29- drivers/serial/mcfuart.c		ColdFire common UART driver
30
31- arch/m68k/include/asm/bitops.h	Bit operation function export
32- arch/m68k/include/asm/byteorder.h	Byte order functions
33- arch/m68k/include/asm/fec.h		FEC structure and definition
34- arch/m68k/include/asm/global_data.h	Global data structure
35- arch/m68k/include/asm/immap.h		ColdFire specific header file and driver macros
36- arch/m68k/include/asm/immap_5441x.h	mcf5441x specific header file
37- arch/m68k/include/asm/io.h		io functions
38- arch/m68k/include/asm/m5441x.h	mcf5441x specific header file
39- arch/m68k/include/asm/posix_types.h	Posix
40- arch/m68k/include/asm/processor.h	header file
41- arch/m68k/include/asm/ptrace.h	Exception structure
42- arch/m68k/include/asm/rtc.h		Realtime clock header file
43- arch/m68k/include/asm/string.h	String function export
44- arch/m68k/include/asm/timer.h		Timer structure and definition
45- arch/m68k/include/asm/types.h		Data types definition
46- arch/m68k/include/asm/uart.h		Uart structure and definition
47- arch/m68k/include/asm/u-boot.h	u-boot structure
48
49- include/configs/M54418TWR.h		Board specific configuration file
50
51- arch/m68k/lib/board.c			board init function
52- arch/m68k/lib/cache.c
53- arch/m68k/lib/interrupts.c		Coldfire common interrupt functions
54- arch/m68k/lib/time.c			Timer functions (Dma timer and PIT)
55- arch/m68k/lib/traps.c			Exception init code
56
571 MCF5441x specific Options/Settings
58====================================
591.1 pre-loader is no longer suppoer in thie coldfire family
60
611.2 Configuration settings for M54418TWR Development Board
62CONFIG_MCF5441x			-- define for all MCF5441x CPUs
63CONFIG_M54418			-- define for all Freescale MCF54418 CPUs
64CONFIG_M54418TWR		-- define for M54418TWR board
65
66CONFIG_MCFUART			-- define to use common CF Uart driver
67CONFIG_SYS_UART_PORT		-- define UART port number, start with 0, 1 and 2
68CONFIG_BAUDRATE			-- define UART baudrate
69
70CONFIG_MCFFEC			-- define to use common CF FEC driver
71CONFIG_MII			-- enable to use MII driver
72CONFIG_SYS_DISCOVER_PHY		-- enable PHY discovery
73CONFIG_SYS_RX_ETH_BUFFER	-- Set FEC Receive buffer
74CONFIG_SYS_FAULT_ECHO_LINK_DOWN	--
75CONFIG_SYS_FEC0_PINMUX		-- Set FEC0 Pin configuration
76CONFIG_SYS_FEC1_PINMUX		-- Set FEC1 Pin configuration
77CONFIG_SYS_FEC0_MIIBASE		-- Set FEC0 MII base register
78CONFIG_SYS_FEC1_MIIBASE		-- Set FEC0 MII base register
79MCFFEC_TOUT_LOOP		-- set FEC timeout loop
80CONFIG_HAS_ETH1			-- define to enable second FEC in u-boot
81
82CONFIG_MCFTMR			-- define to use DMA timer
83
84CONFIG_SYS_IMMR			-- define for MBAR offset
85
86CONFIG_EXTRA_CLOCK		-- Enable extra clock such as vco, flexbus, pci, etc
87
88CONFIG_SYS_MBAR			-- define MBAR offset
89
90CONFIG_MONITOR_IS_IN_RAM 	-- Not support
91
92CONFIG_SYS_INIT_RAM_ADDR	-- defines the base address of the MCF54455 internal SRAM
93
94CONFIG_SYS_CSn_BASE		-- defines the Chip Select Base register
95CONFIG_SYS_CSn_MASK		-- defines the Chip Select Mask register
96CONFIG_SYS_CSn_CTRL		-- defines the Chip Select Control register
97
98CONFIG_SYS_SDRAM_BASE		-- defines the DRAM Base
99
1002. MEMORY MAP UNDER U-BOOT AND LINUX KERNEL
101===========================================
1022.1. System memory map:
103	MRAM:		0x00000000-0x0003FFFF (256KB)
104	DDR:		0x40000000-0x47FFFFFF (128MB)
105	SRAM:		0x80000000-0x8000FFFF (64KB)
106	IP:		0xE0000000-0xFFFFFFFF (512MB)
107
1083. COMPILATION
109==============
1103.1	To create U-Boot the gcc-4.x compiler set (ColdFire ELF version)
111from codesourcery.com was used. Download it from:
112http://www.codesourcery.com/gnu_toolchains/coldfire/download.html
113
1143.2 Compilation
115   export CROSS_COMPILE=cross-compile-prefix
116   cd u-boot
117   make distclean
118   make M54418TWR_config, or			- default to spi serial flash boot, 50Mhz input clock
119   make M54418TWR_nand_mii_config, or		- default to nand flash boot, mii mode, 25Mhz input clock
120   make M54418TWR_nand_rmii_config, or		- default to nand flash boot, rmii mode, 50Mhz input clock
121   make M54418TWR_nand_rmii_lowfreq_config, or	- default to nand flash boot, rmii mode, 50Mhz input clock
122   make M54418TWR_serial_mii_config, or		- default to spi serial flash boot, 25Mhz input clock
123   make M54418TWR_serial_rmii_config, or	- default to spi serial flash boot, 50Mhz input clock
124   make
125
1264. SCREEN DUMP
127==============
1284.1 M54418TWR Development board
129    Boot from NAND flash (NOTE: May not show exactly the same)
130
131U-Boot 2012.10-00209-g12ae1d8-dirty (Oct 18 2012 - 15:54:54)
132
133CPU:   Freescale MCF54418 (Mask:a3 Version:1)
134       CPU CLK 250 MHz BUS CLK 125 MHz FLB CLK 125 MHz
135       INP CLK 50 MHz VCO CLK 500 MHz
136Board: Freescale MCF54418 Tower System
137SPI:   ready
138DRAM:  128 MiB
139NAND:  256 MiB
140In:    serial
141Out:   serial
142Err:   serial
143Net:   FEC0, FEC1
144-> pri
145baudrate=115200
146bootargs=root=/dev/mtdblock2 rw rootfstype=jffs2 mtdparts=NAND:1M(u-boot)ro,7M(k
147ernel)ro,-(jffs2) console=ttyS0,115200
148bootdelay=2
149eth1addr=00:e0:0c:bc:e5:61
150ethact=FEC0
151ethaddr=00:e0:0c:bc:e5:60
152fileaddr=40010000
153filesize=27354
154gatewayip=192.168.1.1
155hostname=M54418TWR
156inpclk=50000000
157ipaddr=192.168.1.2
158load=tftp ${loadaddr} ${u-boot};
159loadaddr=0x40010000
160mem=129024k
161netdev=eth0
162netmask=255.255.255.0
163prog=nand device 0;nand erase 0 40000;nb_update ${loadaddr} ${filesize};save
164serverip=192.168.1.1
165stderr=serial
166stdin=serial
167stdout=serial
168u-boot=u-boot.bin
169upd=run load; run prog
170
171Environment size: 653/131068 bytes
172-> bdinfo
173memstart    = 0x40000000
174memsize     = 0x08000000
175flashstart  = 0x00000000
176flashsize   = 0x00000000
177flashoffset = 0x00000000
178sramstart   = 0x80000000
179sramsize    = 0x00010000
180mbar        = 0xFC000000
181cpufreq     =    250 MHz
182busfreq     =    125 MHz
183flbfreq     =    125 MHz
184inpfreq     =     50 MHz
185vcofreq     =    500 MHz
186ethaddr     = 00:e0:0c:bc:e5:60
187eth1addr    = 00:e0:0c:bc:e5:61
188ip_addr     = 192.168.1.2
189baudrate    = 115200 bps
190-> help
191?       - alias for 'help'
192base    - print or set address offset
193bdinfo  - print Board Info structure
194boot    - boot default, i.e., run 'bootcmd'
195bootd   - boot default, i.e., run 'bootcmd'
196bootelf - Boot from an ELF image in memory
197bootm   - boot application image from memory
198bootp   - boot image via network using BOOTP/TFTP protocol
199bootvx  - Boot vxWorks from an ELF image
200cmp     - memory compare
201coninfo - print console devices and information
202cp      - memory copy
203crc32   - checksum calculation
204dcache  - enable or disable data cache
205dhcp    - boot image via network using DHCP/TFTP protocol
206echo    - echo args to console
207editenv - edit environment variable
208env     - environment handling commands
209exit    - exit script
210false   - do nothing, unsuccessfully
211go      - start application at address 'addr'
212help    - print command description/usage
213icache  - enable or disable instruction cache
214iminfo  - print header information for application image
215imxtract- extract a part of a multi-image
216itest   - return true/false on integer compare
217loop    - infinite loop on address range
218md      - memory display
219mdio    - MDIO utility commands
220mii     - MII utility commands
221mm      - memory modify (auto-incrementing address)
222mtest   - simple RAM read/write test
223mw      - memory write (fill)
224nand    - NAND sub-system
225nb_update- Nand boot update  program
226nboot   - boot from NAND device
227nfs     - boot image via network using NFS protocol
228nm      - memory modify (constant address)
229ping    - send ICMP ECHO_REQUEST to network host
230printenv- print environment variables
231reginfo - print register information
232reset   - Perform RESET of the CPU
233run     - run commands in an environment variable
234saveenv - save environment variables to persistent storage
235setenv  - set environment variables
236sf      - SPI flash sub-system
237showvar - print local hushshell variables
238sleep   - delay execution for some time
239source  - run script from memory
240sspi    - SPI utility command
241test    - minimal test like /bin/sh
242tftpboot- boot image via network using TFTP protocol
243true    - do nothing, successfully
244version - print monitor, compiler and linker version
245