xref: /openbmc/u-boot/board/freescale/m547xevb/README (revision cb33bda44f4bbf6fb58adf41dced313ca38da6fc)
1702e6014SWolfgang DenkFreescale MCF5475EVB ColdFire Development Board
2702e6014SWolfgang Denk================================================
3702e6014SWolfgang Denk
4702e6014SWolfgang DenkTsiChung Liew(Tsi-Chung.Liew@freescale.com)
5702e6014SWolfgang DenkCreated Jan 08, 2008
6702e6014SWolfgang Denk===========================================
7702e6014SWolfgang Denk
8702e6014SWolfgang Denk
9702e6014SWolfgang DenkChanged files:
10702e6014SWolfgang Denk==============
11702e6014SWolfgang Denk
12702e6014SWolfgang Denk- board/freescale/m547xevb/m547xevb.c	Dram setup, IDE pre init, and PCI init
13702e6014SWolfgang Denk- board/freescale/m547xevb/mii.c	MII init
14702e6014SWolfgang Denk- board/freescale/m547xevb/Makefile	Makefile
15702e6014SWolfgang Denk- board/freescale/m547xevb/config.mk	config make
16702e6014SWolfgang Denk- board/freescale/m547xevb/u-boot.lds	Linker description
17702e6014SWolfgang Denk
18702e6014SWolfgang Denk- arch/m68k/cpu/mcf547x_8x/cpu.c			cpu specific code
19702e6014SWolfgang Denk- arch/m68k/cpu/mcf547x_8x/cpu_init.c		Flexbus ChipSelect, Mux pins setup, icache and RTC extra regs
20702e6014SWolfgang Denk- arch/m68k/cpu/mcf547x_8x/interrupts.c		cpu specific interrupt support
21702e6014SWolfgang Denk- arch/m68k/cpu/mcf547x_8x/slicetimer.c		Timer support
22702e6014SWolfgang Denk- arch/m68k/cpu/mcf547x_8x/speed.c		system, pci, flexbus, and cpu clock
23702e6014SWolfgang Denk- arch/m68k/cpu/mcf547x_8x/Makefile		Makefile
24702e6014SWolfgang Denk- arch/m68k/cpu/mcf547x_8x/config.mk		config make
25702e6014SWolfgang Denk- arch/m68k/cpu/mcf547x_8x/start.S		start up assembly code
26702e6014SWolfgang Denk
27702e6014SWolfgang Denk- doc/README.m5475evb			This readme file
28702e6014SWolfgang Denk
29702e6014SWolfgang Denk- drivers/dma/MCD_dmaApi.c		DMA API functions
30702e6014SWolfgang Denk- drivers/dma/MCD_tasks.c		DMA Tasks
31702e6014SWolfgang Denk- drivers/dma/MCD_tasksInit.c		DMA Tasks Init
32702e6014SWolfgang Denk- drivers/net/fsl_mcdmafec.c		ColdFire common DMA FEC driver
33702e6014SWolfgang Denk- drivers/serial/mcfuart.c		ColdFire common UART driver
34702e6014SWolfgang Denk
35702e6014SWolfgang Denk- include/MCD_dma.h			DMA header file
36702e6014SWolfgang Denk- include/MCD_progCheck.h		DMA header file
37702e6014SWolfgang Denk- include/MCD_tasksInit.h		DMA header file
38702e6014SWolfgang Denk- include/asm-m68k/bitops.h		Bit operation function export
39702e6014SWolfgang Denk- include/asm-m68k/byteorder.h		Byte order functions
40702e6014SWolfgang Denk- include/asm-m68k/errno.h		Error Number definition
41702e6014SWolfgang Denk- include/asm-m68k/fec.h		FEC structure and definition
42702e6014SWolfgang Denk- include/asm-m68k/fsl_i2c.h		I2C structure and definition
43702e6014SWolfgang Denk- include/asm-m68k/fsl_mcddmafec.h	DMA FEC structure and definition
44702e6014SWolfgang Denk- include/asm-m68k/global_data.h	Global data structure
45702e6014SWolfgang Denk- include/asm-m68k/immap.h		ColdFire specific header file and driver macros
46702e6014SWolfgang Denk- include/asm-m68k/immap_547x_8x.h	mcf547x_8x specific header file
47702e6014SWolfgang Denk- include/asm-m68k/io.h			io functions
48702e6014SWolfgang Denk- include/asm-m68k/m547x_8x.h		mcf547x_8x specific header file
49702e6014SWolfgang Denk- include/asm-m68k/posix_types.h	Posix
50702e6014SWolfgang Denk- include/asm-m68k/processor.h		header file
51702e6014SWolfgang Denk- include/asm-m68k/ptrace.h		Exception structure
52702e6014SWolfgang Denk- include/asm-m68k/rtc.h		Realtime clock header file
53702e6014SWolfgang Denk- include/asm-m68k/string.h		String function export
54702e6014SWolfgang Denk- include/asm-m68k/timer.h		Timer structure and definition
55702e6014SWolfgang Denk- include/asm-m68k/types.h		Data types definition
56702e6014SWolfgang Denk- include/asm-m68k/uart.h		Uart structure and definition
57*a187559eSBin Meng- include/asm-m68k/u-boot.h		U-Boot structure
58702e6014SWolfgang Denk
59702e6014SWolfgang Denk- include/configs/M5475EVB.h		Board specific configuration file
60702e6014SWolfgang Denk
61702e6014SWolfgang Denk- arch/m68k/lib/board.c			board init function
62702e6014SWolfgang Denk- arch/m68k/lib/cache.c
63702e6014SWolfgang Denk- arch/m68k/lib/interrupts			Coldfire common interrupt functions
64702e6014SWolfgang Denk- arch/m68k/lib/m68k_linux.c
65702e6014SWolfgang Denk- arch/m68k/lib/traps.c			Exception init code
66702e6014SWolfgang Denk
67702e6014SWolfgang Denk1 MCF547x specific Options/Settings
68702e6014SWolfgang Denk====================================
69702e6014SWolfgang Denk1.1 pre-loader is no longer suppoer in thie coldfire family
70702e6014SWolfgang Denk
71702e6014SWolfgang Denk1.2 Configuration settings for M5475EVB Development Board
72702e6014SWolfgang DenkCONFIG_MCF547x_8x	-- define for all MCF547x_8x CPUs
73702e6014SWolfgang DenkCONFIG_M547x		-- define for all Freescale MCF547x CPUs
74702e6014SWolfgang DenkCONFIG_M5475		-- define for M5475EVB board
75702e6014SWolfgang Denk
76702e6014SWolfgang DenkCONFIG_MCFUART		-- define to use common CF Uart driver
77702e6014SWolfgang DenkCONFIG_SYS_UART_PORT		-- define UART port number, start with 0, 1 and 2
78702e6014SWolfgang DenkCONFIG_BAUDRATE		-- define UART baudrate
79702e6014SWolfgang Denk
80702e6014SWolfgang DenkCONFIG_FSLDMAFEC	-- define to use common dma FEC driver
81702e6014SWolfgang DenkCONFIG_MII		-- enable to use MII driver
82702e6014SWolfgang DenkCONFIG_CF_DOMII		-- enable to use MII feature in cmd_mii.c
83702e6014SWolfgang DenkCONFIG_SYS_DISCOVER_PHY	-- enable PHY discovery
84702e6014SWolfgang DenkCONFIG_SYS_RX_ETH_BUFFER	-- Set FEC Receive buffer
85702e6014SWolfgang DenkCONFIG_SYS_FAULT_ECHO_LINK_DOWN--
86702e6014SWolfgang DenkCONFIG_SYS_FEC0_PINMUX		-- Set FEC0 Pin configuration
87702e6014SWolfgang DenkCONFIG_SYS_FEC1_PINMUX		-- Set FEC1 Pin configuration
88702e6014SWolfgang DenkCONFIG_SYS_FEC0_MIIBASE	-- Set FEC0 MII base register
89702e6014SWolfgang DenkCONFIG_SYS_FEC1_MIIBASE	-- Set FEC0 MII base register
90702e6014SWolfgang DenkMCFFEC_TOUT_LOOP	-- set FEC timeout loop
91*a187559eSBin MengCONFIG_HAS_ETH1		-- define to enable second FEC in U-Boot
92702e6014SWolfgang Denk
93702e6014SWolfgang DenkCONFIG_CMD_USB		-- enable USB commands
94702e6014SWolfgang DenkCONFIG_USB_OHCI_NEW	-- enable USB OHCI driver
95702e6014SWolfgang DenkCONFIG_USB_STORAGE	-- enable USB Storage device
96702e6014SWolfgang DenkCONFIG_DOS_PARTITION	-- enable DOS read/write
97702e6014SWolfgang Denk
98702e6014SWolfgang DenkCONFIG_SLTTMR		-- define to use SLT timer
99702e6014SWolfgang Denk
10000f792e0SHeiko SchocherCONFIG_SYS_I2C_FSL	-- define to use FSL common I2C driver
101ea818dbbSHeiko SchocherCONFIG_SYS_I2C_SOFT	-- define for I2C bit-banged
102702e6014SWolfgang DenkCONFIG_SYS_I2C_SPEED		-- define for I2C speed
103702e6014SWolfgang DenkCONFIG_SYS_I2C_SLAVE		-- define for I2C slave address
104702e6014SWolfgang DenkCONFIG_SYS_I2C_OFFSET		-- define for I2C base address offset
105702e6014SWolfgang DenkCONFIG_SYS_IMMR		-- define for MBAR offset
106702e6014SWolfgang Denk
107702e6014SWolfgang DenkCONFIG_PCI		-- define for PCI support
108702e6014SWolfgang DenkCONFIG_PCI_PNP		-- define for Plug n play support
109702e6014SWolfgang DenkCONFIG_SKIPPCI_HOSTBRIDGE	-- SKIP PCI Host bridge
110702e6014SWolfgang DenkCONFIG_SYS_PCI_MEM_BUS		-- PCI memory logical offset
111702e6014SWolfgang DenkCONFIG_SYS_PCI_MEM_PHYS	-- PCI memory physical offset
112702e6014SWolfgang DenkCONFIG_SYS_PCI_MEM_SIZE	-- PCI memory size
113702e6014SWolfgang DenkCONFIG_SYS_PCI_IO_BUS		-- PCI IO logical offset
114702e6014SWolfgang DenkCONFIG_SYS_PCI_IO_PHYS		-- PCI IO physical offset
115702e6014SWolfgang DenkCONFIG_SYS_PCI_IO_SIZE		-- PCI IO size
116702e6014SWolfgang DenkCONFIG_SYS_PCI_CFG_BUS		-- PCI Configuration logical offset
117702e6014SWolfgang DenkCONFIG_SYS_PCI_CFG_PHYS	-- PCI Configuration physical offset
118702e6014SWolfgang DenkCONFIG_SYS_PCI_CFG_SIZE	-- PCI Configuration size
119702e6014SWolfgang Denk
120702e6014SWolfgang DenkCONFIG_SYS_MBAR		-- define MBAR offset
121702e6014SWolfgang Denk
122702e6014SWolfgang DenkCONFIG_MONITOR_IS_IN_RAM -- Not support
123702e6014SWolfgang Denk
124702e6014SWolfgang DenkCONFIG_SYS_INIT_RAM_ADDR	-- defines the base address of the MCF547x internal SRAM
125702e6014SWolfgang Denk
126702e6014SWolfgang DenkCONFIG_SYS_CSn_BASE	-- defines the Chip Select Base register
127702e6014SWolfgang DenkCONFIG_SYS_CSn_MASK	-- defines the Chip Select Mask register
128702e6014SWolfgang DenkCONFIG_SYS_CSn_CTRL	-- defines the Chip Select Control register
129702e6014SWolfgang Denk
130702e6014SWolfgang DenkCONFIG_SYS_SDRAM_BASE	-- defines the DRAM Base
131702e6014SWolfgang Denk
132702e6014SWolfgang Denk2. MEMORY MAP UNDER U-BOOT AND LINUX KERNEL
133702e6014SWolfgang Denk===========================================
134702e6014SWolfgang Denk2.1. System memory map:
135702e6014SWolfgang Denk	Flash:		0xFF800000-0xFFFFFFFF (8MB)
136702e6014SWolfgang Denk	DDR:		0x00000000-0x3FFFFFFF (1024MB)
137702e6014SWolfgang Denk	SRAM:		0xF2000000-0xF2000FFF (4KB)
138702e6014SWolfgang Denk	PCI:		0x70000000-0x8FFFFFFF (512MB)
139702e6014SWolfgang Denk	IP:		0xF0000000-0xFFFFFFFF (256MB)
140702e6014SWolfgang Denk
141702e6014SWolfgang Denk3. COMPILATION
142702e6014SWolfgang Denk==============
143702e6014SWolfgang Denk3.1	To create U-Boot the gcc-4.x compiler set (ColdFire ELF or uclinux
144702e6014SWolfgang Denk	version) from codesourcery.com was used. Download it from:
145702e6014SWolfgang Denk	http://www.codesourcery.com/gnu_toolchains/coldfire/download.html
146702e6014SWolfgang Denk
147702e6014SWolfgang Denk3.2 Compilation
148702e6014SWolfgang Denk   export CROSS_COMPILE=cross-compile-prefix
149702e6014SWolfgang Denk   cd u-boot-1.x.x
150702e6014SWolfgang Denk   make distclean
151702e6014SWolfgang Denk   make M5475AFE_config, or	- boot 2MB, RAM 64MB
152702e6014SWolfgang Denk   make M5475BFE_config, or	- boot 2MB, code 16MB, RAM 64MB
153702e6014SWolfgang Denk   make M5475CFE_config, or	- boot 2MB, code 16MB, Video, USB, RAM 64MB
154702e6014SWolfgang Denk   make M5475DFE_config, or	- boot 2MB, USB, RAM 64MB
155702e6014SWolfgang Denk   make M5475EFE_config, or	- boot 2MB, Video, USB, RAM 64MB
156702e6014SWolfgang Denk   make M5475FFE_config, or	- boot 2MB, code 32MB, Video, USB, RAM 128MB
157702e6014SWolfgang Denk   make M5475GFE_config, or	- boot 2MB, RAM 64MB
158702e6014SWolfgang Denk   make
159702e6014SWolfgang Denk
160702e6014SWolfgang Denk5. SCREEN DUMP
161702e6014SWolfgang Denk==============
162702e6014SWolfgang Denk5.1
163702e6014SWolfgang Denk
164702e6014SWolfgang DenkU-Boot 1.3.1 (Jan  8 2008 - 12:47:44)
165702e6014SWolfgang Denk
166702e6014SWolfgang DenkCPU:   Freescale MCF5475
167702e6014SWolfgang Denk       CPU CLK 266 Mhz BUS CLK 133 Mhz
168702e6014SWolfgang DenkBoard: Freescale FireEngine 5475 EVB
169702e6014SWolfgang DenkI2C:   ready
170702e6014SWolfgang DenkDRAM:  64 MB
171702e6014SWolfgang DenkFLASH: 18 MB
172702e6014SWolfgang DenkIn:    serial
173702e6014SWolfgang DenkOut:   serial
174702e6014SWolfgang DenkErr:   serial
175702e6014SWolfgang DenkNet:   FEC0, FEC1
176702e6014SWolfgang Denk-> pri
177702e6014SWolfgang Denkbootdelay=1
178702e6014SWolfgang Denkbaudrate=115200
179702e6014SWolfgang Denkethaddr=00:e0:0c:bc:e5:60
180702e6014SWolfgang Denketh1addr=00:e0:0c:bc:e5:61
181702e6014SWolfgang Denkipaddr=192.162.1.2
182702e6014SWolfgang Denkserverip=192.162.1.1
183702e6014SWolfgang Denkgatewayip=192.162.1.1
184702e6014SWolfgang Denknetmask=255.255.255.0
185702e6014SWolfgang Denkhostname=M547xEVB
186702e6014SWolfgang Denknetdev=eth0
187702e6014SWolfgang Denkloadaddr=10000
188702e6014SWolfgang Denku-boot=u-boot.bin
189702e6014SWolfgang Denkload=tftp ${loadaddr) ${u-boot}
190702e6014SWolfgang Denkupd=run load; run prog
191702e6014SWolfgang Denkprog=prot off bank 1;era ff800000 ff82ffff;cp.b ${loadaddr} ff800000 ${filesize};save
192702e6014SWolfgang Denkstdin=serial
193702e6014SWolfgang Denkstdout=serial
194702e6014SWolfgang Denkstderr=serial
195702e6014SWolfgang Denkethact=FEC0
196702e6014SWolfgang Denkmem=65024k
197702e6014SWolfgang Denk
198702e6014SWolfgang DenkEnvironment size: 433/8188 bytes
199702e6014SWolfgang Denk-> bdin
200702e6014SWolfgang Denkmemstart    = 0x00000000
201702e6014SWolfgang Denkmemsize     = 0x04000000
202702e6014SWolfgang Denkflashstart  = 0xFF800000
203702e6014SWolfgang Denkflashsize   = 0x01200000
204702e6014SWolfgang Denkflashoffset = 0x00000000
205702e6014SWolfgang Denksramstart   = 0xF2000000
206702e6014SWolfgang Denksramsize    = 0x00001000
207702e6014SWolfgang Denkmbar	    = 0xF0000000
208702e6014SWolfgang Denkbusfreq     = 133.333 MHz
209702e6014SWolfgang Denkpcifreq     =	   0 MHz
210702e6014SWolfgang Denkethaddr     = 00:E0:0C:BC:E5:60
211702e6014SWolfgang Denketh1addr    = 00:E0:0C:BC:E5:61
212702e6014SWolfgang Denkip_addr     = 192.162.1.2
213702e6014SWolfgang Denkbaudrate    = 115200 bps
214702e6014SWolfgang Denk-> ?
215702e6014SWolfgang Denk?	- alias for 'help'
216702e6014SWolfgang Denkbase	- print or set address offset
217702e6014SWolfgang Denkbdinfo	- print Board Info structure
218702e6014SWolfgang Denkboot	- boot default, i.e., run 'bootcmd'
219702e6014SWolfgang Denkbootd	- boot default, i.e., run 'bootcmd'
220702e6014SWolfgang Denkbootelf - Boot from an ELF image in memory
221702e6014SWolfgang Denkbootm	- boot application image from memory
222702e6014SWolfgang Denkbootp	- boot image via network using BootP/TFTP protocol
223702e6014SWolfgang Denkbootvx	- Boot vxWorks from an ELF image
224702e6014SWolfgang Denkcmp	- memory compare
225702e6014SWolfgang Denkconinfo - print console devices and information
226702e6014SWolfgang Denkcp	- memory copy
227702e6014SWolfgang Denkcrc32	- checksum calculation
228702e6014SWolfgang Denkdcache	- enable or disable data cache
229702e6014SWolfgang Denkecho	- echo args to console
230702e6014SWolfgang Denkerase	- erase FLASH memory
231702e6014SWolfgang Denkflinfo	- print FLASH memory information
232702e6014SWolfgang Denkgo	- start application at address 'addr'
233702e6014SWolfgang Denkhelp	- print online help
234702e6014SWolfgang Denki2c	- I2C sub-system
235702e6014SWolfgang Denkicache	- enable or disable instruction cache
236702e6014SWolfgang Denkiminfo	- print header information for application image
237702e6014SWolfgang Denkimls	- list all images found in flash
238702e6014SWolfgang Denkitest	- return true/false on integer compare
239702e6014SWolfgang Denkloadb	- load binary file over serial line (kermit mode)
240702e6014SWolfgang Denkloads	- load S-Record file over serial line
241702e6014SWolfgang Denkloady	- load binary file over serial line (ymodem mode)
242702e6014SWolfgang Denkloop	- infinite loop on address range
243702e6014SWolfgang Denkmd	- memory display
244702e6014SWolfgang Denkmii	- MII utility commands
245702e6014SWolfgang Denkmm	- memory modify (auto-incrementing)
246702e6014SWolfgang Denkmtest	- simple RAM test
247702e6014SWolfgang Denkmw	- memory write (fill)
248702e6014SWolfgang Denknfs	- boot image via network using NFS protocol
249702e6014SWolfgang Denknm	- memory modify (constant address)
250702e6014SWolfgang Denkpci	- list and access PCI Configuration Space
251702e6014SWolfgang Denkping	- send ICMP ECHO_REQUEST to network host
252702e6014SWolfgang Denkprintenv- print environment variables
253702e6014SWolfgang Denkprotect - enable or disable FLASH write protection
254702e6014SWolfgang Denkrarpboot- boot image via network using RARP/TFTP protocol
255702e6014SWolfgang Denkreset	- Perform RESET of the CPU
256702e6014SWolfgang Denkrun	- run commands in an environment variable
257702e6014SWolfgang Denksaveenv - save environment variables to persistent storage
258702e6014SWolfgang Denksetenv	- set environment variables
259702e6014SWolfgang Denksleep	- delay execution for some time
260702e6014SWolfgang Denksource	- run script from memory
261702e6014SWolfgang Denktftpboot- boot image via network using TFTP protocol
262702e6014SWolfgang Denkusb	- USB sub-system
263702e6014SWolfgang Denkusbboot - boot from USB device
264702e6014SWolfgang Denkversion - print monitor version
265702e6014SWolfgang Denk-> usb start
266702e6014SWolfgang Denk(Re)start USB...
267702e6014SWolfgang DenkUSB:   OHCI pci controller (1131, 1561) found @(0:17:0)
268702e6014SWolfgang DenkOHCI regs address 0x80000000
269702e6014SWolfgang Denkscanning bus for devices... 2 USB Device(s) found
270702e6014SWolfgang Denk       scanning bus for storage devices... 1 Storage Device(s) found
271702e6014SWolfgang Denk->
272