summaryrefslogtreecommitdiff
path: root/doc/README.m5475evb
blob: cec4fd0434ca04ccbf48f5a878659d4d7f920d3a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
Freescale MCF5475EVB ColdFire Development Board
================================================

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


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

- board/freescale/m547xevb/m547xevb.c	Dram setup, IDE pre init, and PCI init
- board/freescale/m547xevb/mii.c	MII init
- board/freescale/m547xevb/Makefile	Makefile
- board/freescale/m547xevb/config.mk	config make
- board/freescale/m547xevb/u-boot.lds	Linker description

- cpu/mcf547x_8x/cpu.c			cpu specific code
- cpu/mcf547x_8x/cpu_init.c		Flexbus ChipSelect, Mux pins setup, icache and RTC extra regs
- cpu/mcf547x_8x/interrupts.c		cpu specific interrupt support
- cpu/mcf547x_8x/slicetimer.c		Timer support
- cpu/mcf547x_8x/speed.c		system, pci, flexbus, and cpu clock
- cpu/mcf547x_8x/Makefile		Makefile
- cpu/mcf547x_8x/config.mk		config make
- cpu/mcf547x_8x/start.S		start up assembly code

- doc/README.m5475evb			This readme file

- drivers/dma/MCD_dmaApi.c		DMA API functions
- drivers/dma/MCD_tasks.c		DMA Tasks
- drivers/dma/MCD_tasksInit.c		DMA Tasks Init
- drivers/net/fsl_mcdmafec.c		ColdFire common DMA FEC driver
- drivers/serial/mcfuart.c		ColdFire common UART driver

- include/MCD_dma.h			DMA header file
- include/MCD_progCheck.h		DMA header file
- include/MCD_tasksInit.h		DMA header file
- include/asm-m68k/bitops.h		Bit operation function export
- include/asm-m68k/byteorder.h		Byte order functions
- include/asm-m68k/errno.h		Error Number definition
- include/asm-m68k/fec.h		FEC structure and definition
- include/asm-m68k/fsl_i2c.h		I2C structure and definition
- include/asm-m68k/fsl_mcddmafec.h	DMA FEC 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_547x_8x.h	mcf547x_8x specific header file
- include/asm-m68k/io.h			io functions
- include/asm-m68k/m547x_8x.h		mcf547x_8x 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/M5475EVB.h		Board specific configuration file

- lib_m68k/board.c			board init function
- lib_m68k/cache.c
- lib_m68k/interrupts			Coldfire common interrupt functions
- lib_m68k/m68k_linux.c
- lib_m68k/traps.c			Exception init code

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

1.2 Configuration settings for M5475EVB Development Board
CONFIG_MCF547x_8x	-- define for all MCF547x_8x CPUs
CONFIG_M547x		-- define for all Freescale MCF547x CPUs
CONFIG_M5475		-- define for M5475EVB board

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

CONFIG_FSLDMAFEC	-- define to use common dma FEC driver
CONFIG_NET_MULTI	-- define to use multi FEC in u-boot
CONFIG_MII		-- enable to use MII driver
CONFIG_CF_DOMII		-- enable to use MII feature in cmd_mii.c
CFG_DISCOVER_PHY	-- enable PHY discovery
CFG_RX_ETH_BUFFER	-- Set FEC Receive buffer
CFG_FAULT_ECHO_LINK_DOWN--
CFG_FEC0_PINMUX		-- Set FEC0 Pin configuration
CFG_FEC1_PINMUX		-- Set FEC1 Pin configuration
CFG_FEC0_MIIBASE	-- Set FEC0 MII base register
CFG_FEC1_MIIBASE	-- Set FEC0 MII base register
MCFFEC_TOUT_LOOP	-- set FEC timeout loop
CONFIG_HAS_ETH1		-- define to enable second FEC in u-boot

CONFIG_CMD_USB		-- enable USB commands
CONFIG_USB_OHCI_NEW	-- enable USB OHCI driver
CONFIG_USB_STORAGE	-- enable USB Storage device
CONFIG_DOS_PARTITION	-- enable DOS read/write

CONFIG_SLTTMR		-- define to use SLT timer

CONFIG_FSL_I2C		-- define to use FSL common I2C driver
CONFIG_HARD_I2C		-- define for I2C hardware support
CONFIG_SOFT_I2C		-- define for I2C bit-banged
CFG_I2C_SPEED		-- define for I2C speed
CFG_I2C_SLAVE		-- define for I2C slave address
CFG_I2C_OFFSET		-- define for I2C base address offset
CFG_IMMR		-- define for MBAR offset

CONFIG_PCI              -- define for PCI support
CONFIG_PCI_PNP          -- define for Plug n play support
CONFIG_SKIPPCI_HOSTBRIDGE	-- SKIP PCI Host bridge
CFG_PCI_MEM_BUS		-- PCI memory logical offset
CFG_PCI_MEM_PHYS	-- PCI memory physical offset
CFG_PCI_MEM_SIZE	-- PCI memory size
CFG_PCI_IO_BUS		-- PCI IO logical offset
CFG_PCI_IO_PHYS		-- PCI IO physical offset
CFG_PCI_IO_SIZE		-- PCI IO size
CFG_PCI_CFG_BUS		-- PCI Configuration logical offset
CFG_PCI_CFG_PHYS	-- PCI Configuration physical offset
CFG_PCI_CFG_SIZE	-- PCI Configuration size

CFG_MBAR		-- define MBAR offset

CONFIG_MONITOR_IS_IN_RAM -- Not support

CFG_INIT_RAM_ADDR	-- defines the base address of the MCF547x internal SRAM

CFG_CSn_BASE	-- defines the Chip Select Base register
CFG_CSn_MASK	-- defines the Chip Select Mask register
CFG_CSn_CTRL	-- defines the Chip Select Control register

CFG_SDRAM_BASE	-- defines the DRAM Base

2. MEMORY MAP UNDER U-BOOT AND LINUX KERNEL
===========================================
2.1. System memory map:
	Flash:		0xFF800000-0xFFFFFFFF (8MB)
	DDR:		0x00000000-0x3FFFFFFF (1024MB)
	SRAM:		0xF2000000-0xF2000FFF (4KB)
	PCI:		0x70000000-0x8FFFFFFF (512MB)
	IP:		0xF0000000-0xFFFFFFFF (256MB)

3. COMPILATION
==============
3.1	To create U-Boot the gcc-4.x 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 M5475AFE_config, or	- boot 2MB, RAM 64MB
   make M5475BFE_config, or	- boot 2MB, code 16MB, RAM 64MB
   make M5475CFE_config, or	- boot 2MB, code 16MB, Video, USB, RAM 64MB
   make M5475DFE_config, or	- boot 2MB, USB, RAM 64MB
   make M5475EFE_config, or	- boot 2MB, Video, USB, RAM 64MB
   make M5475FFE_config, or	- boot 2MB, code 32MB, Video, USB, RAM 128MB
   make M5475GFE_config, or	- boot 2MB, RAM 64MB
   make

5. SCREEN DUMP
==============
5.1

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

CPU:   Freescale MCF5475
       CPU CLK 266 Mhz BUS CLK 133 Mhz
Board: Freescale FireEngine 5475 EVB
I2C:   ready
DRAM:  64 MB
FLASH: 18 MB
In:    serial
Out:   serial
Err:   serial
Net:   FEC0, FEC1
-> pri
bootdelay=1
baudrate=115200
ethaddr=00:e0:0c:bc:e5:60
eth1addr=00:e0:0c:bc:e5:61
ipaddr=192.162.1.2
serverip=192.162.1.1
gatewayip=192.162.1.1
netmask=255.255.255.0
hostname=M547xEVB
netdev=eth0
loadaddr=10000
u-boot=u-boot.bin
load=tftp ${loadaddr) ${u-boot}
upd=run load; run prog
prog=prot off bank 1;era ff800000 ff82ffff;cp.b ${loadaddr} ff800000 ${filesize};save
stdin=serial
stdout=serial
stderr=serial
ethact=FEC0
mem=65024k

Environment size: 433/8188 bytes
-> bdin
memstart    = 0x00000000
memsize     = 0x04000000
flashstart  = 0xFF800000
flashsize   = 0x01200000
flashoffset = 0x00000000
sramstart   = 0xF2000000
sramsize    = 0x00001000
mbar        = 0xF0000000
busfreq     = 133.333 MHz
pcifreq     =      0 MHz
ethaddr     = 00:E0:0C:BC:E5:60
eth1addr    = 00:E0:0C:BC:E5:61
ip_addr     = 192.162.1.2
baudrate    = 115200 bps
-> ?
?       - alias for 'help'
autoscr - run script from memory
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
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
icache  - enable or disable instruction cache
icrc32  - checksum calculation
iloop   - infinite loop on address range
imd     - i2c memory display
iminfo  - print header information for application image
imls    - list all images found in flash
imm     - i2c memory modify (auto-incrementing)
imw     - memory write (fill)
inm     - memory modify (constant address)
iprobe  - probe to discover valid I2C chip addresses
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
md      - memory display
mii     - MII utility commands
mm      - memory modify (auto-incrementing)
mtest   - simple RAM test
mw      - memory write (fill)
nfs	- boot image via network using NFS protocol
nm      - memory modify (constant address)
pci     - list and access PCI Configuration Space
ping	- send ICMP ECHO_REQUEST to network host
printenv- print environment variables
protect - enable or disable FLASH write protection
rarpboot- boot image via network using RARP/TFTP protocol
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
tftpboot- boot image via network using TFTP protocol
usb     - USB sub-system
usbboot - boot from USB device
version - print monitor version
-> usb start
(Re)start USB...
USB:   OHCI pci controller (1131, 1561) found @(0:17:0)
OHCI regs address 0x80000000
scanning bus for devices... 2 USB Device(s) found
       scanning bus for storage devices... 1 Storage Device(s) found
->