Merge branch 'master' of /home/wd/git/u-boot/custodians
[platform/kernel/u-boot.git] / doc / README.m5373evb
1 Freescale MCF5373EVB ColdFire Development Board
2 ================================================
3
4 TsiChung Liew(Tsi-Chung.Liew@freescale.com)
5 Created 11/08/07
6 ===========================================
7
8
9 Changed files:
10 ==============
11
12 - board/freescale/m5373evb/m5373evb.c   Dram setup
13 - board/freescale/m5373evb/mii.c        Mii access
14 - board/freescale/m5373evb/Makefile     Makefile
15 - board/freescale/m5373evb/config.mk    config make
16 - board/freescale/m5373evb/u-boot.lds   Linker description
17
18 - cpu/mcf532x/cpu.c             cpu specific code
19 - cpu/mcf532x/cpu_init.c        FBCS, Mux pins, icache and RTC extra regs
20 - cpu/mcf532x/interrupts.c      cpu specific interrupt support
21 - cpu/mcf532x/speed.c           system, pci, flexbus, and cpu clock
22 - cpu/mcf532x/Makefile          Makefile
23 - cpu/mcf532x/config.mk         config make
24 - cpu/mcf532x/start.S           start up assembly code
25
26 - doc/README.m5373evb           This readme file
27
28 - drivers/net/mcffec.c          ColdFire common FEC driver
29 - drivers/serial/mcfuart.c      ColdFire common UART driver
30 - drivers/rtc/mcfrtc.c          Realtime clock Driver
31
32 - include/asm-m68k/bitops.h             Bit operation function export
33 - include/asm-m68k/byteorder.h          Byte order functions
34 - include/asm-m68k/fec.h                FEC structure and definition
35 - include/asm-m68k/fsl_i2c.h            I2C structure and definition
36 - include/asm-m68k/global_data.h        Global data structure
37 - include/asm-m68k/immap.h              ColdFire specific header file and driver macros
38 - include/asm-m68k/immap_532x.h         mcf532x specific header file
39 - include/asm-m68k/io.h                 io functions
40 - include/asm-m68k/m532x.h              mcf532x specific header file
41 - include/asm-m68k/posix_types.h        Posix
42 - include/asm-m68k/processor.h          header file
43 - include/asm-m68k/ptrace.h             Exception structure
44 - include/asm-m68k/rtc.h                Realtime clock header file
45 - include/asm-m68k/string.h             String function export
46 - include/asm-m68k/timer.h              Timer structure and definition
47 - include/asm-m68k/types.h              Data types definition
48 - include/asm-m68k/uart.h               Uart structure and definition
49 - include/asm-m68k/u-boot.h             u-boot structure
50
51 - include/configs/M5373EVB.h            Board specific configuration file
52
53 - lib_m68k/board.c                      board init function
54 - lib_m68k/cache.c
55 - lib_m68k/interrupts                   Coldfire common interrupt functions
56 - lib_m68k/m68k_linux.c
57 - lib_m68k/time.c                       Timer functions (Dma timer and PIT)
58 - lib_m68k/traps.c                      Exception init code
59
60 1 MCF5373 specific Options/Settings
61 ====================================
62 1.1 pre-loader is no longer suppoer in thie coldfire family
63
64 1.2 Configuration settings for M5373EVB Development Board
65 CONFIG_MCF532x          -- define for all MCF532x CPUs
66 CONFIG_M5373            -- define for all Freescale MCF5373 CPUs
67 CONFIG_M5373EVB         -- define for M5373EVB board
68
69 CONFIG_MCFUART          -- define to use common CF Uart driver
70 CONFIG_SYS_UART_PORT            -- define UART port number, start with 0, 1 and 2
71 CONFIG_BAUDRATE         -- define UART baudrate
72
73 CONFIG_MCFRTC           -- define to use common CF RTC driver
74 CONFIG_SYS_MCFRTC_BASE          -- provide base address for RTC in immap.h
75 CONFIG_SYS_RTC_OSCILLATOR       -- define RTC clock frequency
76 RTC_DEBUG               -- define to show RTC debug message
77 CONFIG_CMD_DATE         -- enable to use date feature in u-boot
78
79 CONFIG_MCFFEC           -- define to use common CF FEC driver
80 CONFIG_NET_MULTI        -- define to use multi FEC in u-boot
81 CONFIG_MII              -- enable to use MII driver
82 CONFIG_CF_DOMII         -- enable to use MII feature in cmd_mii.c
83 CONFIG_SYS_DISCOVER_PHY -- enable PHY discovery
84 CONFIG_SYS_RX_ETH_BUFFER        -- Set FEC Receive buffer
85 CONFIG_SYS_FAULT_ECHO_LINK_DOWN--
86 CONFIG_SYS_FEC0_PINMUX          -- Set FEC0 Pin configuration
87 CONFIG_SYS_FEC0_MIIBASE -- Set FEC0 MII base register
88 MCFFEC_TOUT_LOOP        -- set FEC timeout loop
89
90 CONFIG_MCFTMR           -- define to use DMA timer
91 CONFIG_MCFPIT           -- define to use PIT timer
92
93 CONFIG_FSL_I2C          -- define to use FSL common I2C driver
94 CONFIG_HARD_I2C         -- define for I2C hardware support
95 CONFIG_SOFT_I2C         -- define for I2C bit-banged
96 CONFIG_SYS_I2C_SPEED            -- define for I2C speed
97 CONFIG_SYS_I2C_SLAVE            -- define for I2C slave address
98 CONFIG_SYS_I2C_OFFSET           -- define for I2C base address offset
99 CONFIG_SYS_IMMR         -- define for MBAR offset
100
101 CONFIG_SYS_MBAR         -- define MBAR offset
102
103 CONFIG_MONITOR_IS_IN_RAM -- Not support
104
105 CONFIG_SYS_INIT_RAM_ADDR        -- defines the base address of the MCF5373 internal SRAM
106
107 CONFIG_SYS_CSn_BASE     -- defines the Chip Select Base register
108 CONFIG_SYS_CSn_MASK     -- defines the Chip Select Mask register
109 CONFIG_SYS_CSn_CTRL     -- defines the Chip Select Control register
110
111 CONFIG_SYS_SDRAM_BASE   -- defines the DRAM Base
112
113 2. MEMORY MAP UNDER U-BOOT AND LINUX KERNEL
114 ===========================================
115 2.1. System memory map:
116         Flash:          0x00000000-0x3FFFFFFF (1024MB)
117         DDR:            0x40000000-0x7FFFFFFF (1024MB)
118         SRAM:           0x80000000-0x8FFFFFFF (256MB)
119         IP:             0xF0000000-0xFFFFFFFF (256MB)
120
121 2.2. For the initial bringup, we adopted a consistent memory scheme between u-boot and
122         linux kernel, you can customize it based on your system requirements:
123         Flash0:         0x00000000-0x00FFFFFF (16MB)
124
125         DDR:            0x40000000-0x4FFFFFFF (256MB)
126         SRAM:           0x80000000-0x80007FFF (32KB)
127         IP:             0xFC000000-0xFC0FFFFF (64KB)
128
129 3. COMPILATION
130 ==============
131 3.1     To create U-Boot the gcc-4.1-xx compiler set (ColdFire ELF or
132 uClinux version) from codesourcery.com was used. Download it from:
133 http://www.codesourcery.com/gnu_toolchains/coldfire/download.html
134
135 3.2 Compilation
136    export CROSS_COMPILE=cross-compile-prefix
137    cd u-boot-1.x.x
138    make distclean
139    make M5373EVB_config
140    make
141
142 4. SCREEN DUMP
143 ==============
144 4.1 M5373EVB Development board
145     (NOTE: May not show exactly the same)
146
147 U-Boot 1.3.0 (Nov 8 2007 - 12:44:08)
148
149 CPU:   Freescale MCF5373 (Mask:65 Version:1)
150        CPU CLK 240 Mhz BUS CLK 80 Mhz
151 Board: Freescale FireEngine 5373 EVB
152 I2C:   ready
153 DRAM:  32 MB
154 FLASH: 2 MB
155 In:    serial
156 Out:   serial
157 Err:   serial
158 NAND:  16 MiB
159 Net:   FEC0
160 -> print
161 bootdelay=1
162 baudrate=115200
163 ethaddr=00:e0:0c:bc:e5:60
164 hostname=M5373EVB
165 netdev=eth0
166 loadaddr=40010000
167 load=tftp ${loadaddr) ${u-boot}
168 upd=run load; run prog
169 prog=prot off 0 2ffff;era 0 2ffff;cp.b ${loadaddr} 0 ${filesize};save
170 ethact=FEC0
171 u-boot=u-boot.bin
172 gatewayip=192.168.1.1
173 netmask=255.255.255.0
174 ipaddr=192.168.1.3
175 serverip=192.168.1.2
176 stdin=serial
177 stdout=serial
178 stderr=serial
179 mem=261632k
180
181 Environment size: 401/8188 bytes
182 -> bdinfo
183 memstart    = 0x40000000
184 memsize     = 0x02000000
185 flashstart  = 0x00000000
186 flashsize   = 0x00200000
187 flashoffset = 0x00000000
188 sramstart   = 0x80000000
189 sramsize    = 0x00008000
190 mbar        = 0xFC000000
191 busfreq     =     80 MHz
192 ethaddr     = 00:E0:0C:BC:E5:60
193 ip_addr     = 192.168.1.3
194 baudrate    = 115200 bps
195 ->
196 -> help
197 ?       - alias for 'help'
198 base    - print or set address offset
199 bdinfo  - print Board Info structure
200 boot    - boot default, i.e., run 'bootcmd'
201 bootd   - boot default, i.e., run 'bootcmd'
202 bootelf - Boot from an ELF image in memory
203 bootm   - boot application image from memory
204 bootp   - boot image via network using BootP/TFTP protocol
205 bootvx  - Boot vxWorks from an ELF image
206 cmp     - memory compare
207 coninfo - print console devices and information
208 cp      - memory copy
209 crc32   - checksum calculation
210 date    - get/set/reset date & time
211 dcache  - enable or disable data cache
212 echo    - echo args to console
213 erase   - erase FLASH memory
214 flinfo  - print FLASH memory information
215 go      - start application at address 'addr'
216 help    - print online help
217 i2c     - I2C sub-system
218 icache  - enable or disable instruction cache
219 iminfo  - print header information for application image
220 imls    - list all images found in flash
221 itest   - return true/false on integer compare
222 loadb   - load binary file over serial line (kermit mode)
223 loads   - load S-Record file over serial line
224 loady   - load binary file over serial line (ymodem mode)
225 loop    - infinite loop on address range
226 ls      - list files in a directory (default /)
227 md      - memory display
228 mii     - MII utility commands
229 mm      - memory modify (auto-incrementing)
230 mtest   - simple RAM test
231 mw      - memory write (fill)
232 nand    - NAND sub-system
233 nboot   - boot from NAND device
234 nfs     - boot image via network using NFS protocol
235 nm      - memory modify (constant address)
236 ping    - send ICMP ECHO_REQUEST to network host
237 printenv- print environment variables
238 protect - enable or disable FLASH write protection
239 rarpboot- boot image via network using RARP/TFTP protocol
240 reset   - Perform RESET of the CPU
241 run     - run commands in an environment variable
242 saveenv - save environment variables to persistent storage
243 setenv  - set environment variables
244 sleep   - delay execution for some time
245 source  - run script from memory
246 tftpboot- boot image via network using TFTP protocol
247 version - print monitor version
248 -> tftp 0x40800000 uImage
249 Using FEC0 device
250 TFTP from server 192.168.1.3; our IP address is 192.168.1.3 Filename 'uImage'.
251 Load address: 0x40800000
252 Loading: #################################################################
253           #################################################################
254           ##########
255 done
256 Bytes transferred = 2053270 (1f5496 hex)
257 -> bootm 0x40800000
258 ## Booting image at 40800000 ...
259     Image Name:   Linux Kernel Image
260     Created:      2007-11-07  20:33:08 UTC
261     Image Type:   M68K Linux Kernel Image (gzip compressed)
262     Data Size:    2053206 Bytes =  2 MB
263     Load Address: 40020000
264     Entry Point:  40020000
265     Verifying Checksum ... OK
266     Uncompressing Kernel Image ... OK
267 Linux version 2.6.22-uc1 (mattw@loa) (gcc version 4.2.1 (Sourcery G++ Lite 4.2-7
268
269
270 uClinux/COLDFIRE(m537x)
271 COLDFIRE port done by Greg Ungerer, gerg@snapgear.com Flat model support (C) 1998,1999 Kenneth Albanowski, D. Jeff Dionne Built 1 zonelists.  Total pages: 8128 Kernel command line: rootfstype=romfs PID hash table entries: 128 (order: 7, 512 bytes) Dentry cache hash table entries: 4096 (order: 2, 16384 bytes) Inode-cache hash table entries: 2048 (order: 1, 8192 bytes) Memory available: 28092k/32768k RAM, (1788k kernel code, 244k data) Mount-cache hash table entries: 512
272 NET: Registered protocol family 16
273 USB-MCF537x: (HOST module) EHCI device is registered
274 USB-MCF537x: (OTG module) EHCI device is registered
275 USB-MCF537x: (OTG module) UDC device is registered
276 usbcore: registered new interface driver usbfs
277 usbcore: registered new interface driver hub
278 usbcore: registered new device driver usb
279 NET: Registered protocol family 2
280 IP route cache hash table entries: 1024 (order: 0, 4096 bytes) TCP established hash table entries: 1024 (order: 1, 8192 bytes) TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
281 TCP: Hash tables configured (established 1024 bind 1024) TCP reno registered
282 JFFS2 version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
283 io scheduler noop registered
284 io scheduler cfq registered (default)
285 ColdFire internal UART serial driver version 1.00 ttyS0 at 0xfc060000 (irq = 90) is a builtin ColdFire UART
286 ttyS1 at 0xfc064000 (irq = 91) is a builtin ColdFire UART
287 ttyS2 at 0xfc068000 (irq = 92) is a builtin ColdFire UART RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize
288 loop: module loaded
289 nbd: registered device at major 43
290 usbcore: registered new interface driver ub FEC ENET Version 0.2
291 fec: PHY @ 0x1, ID 0x20005c90 -- DP83848
292 eth0: ethernet 00:e0:0c:bc:e5:60
293 uclinux[mtd]: RAM probe address=0x4021c22c size=0x22b000 Creating 1 MTD partitions on "RAM":
294 0x00000000-0x0022b000 : "ROMfs"
295 uclinux[mtd]: set ROMfs to be root filesystem NAND device: Manufacturer ID: 0x20, Chip ID: 0x73 (ST Micro NAND 16MiB 3,3V 8-b) Scanning device for bad blocks Creating 1 MTD partitions on "NAND 16MiB 3,3V 8-bit":
296 0x00000000-0x01000000 : "M53xx flash partition 1"
297 QSPI: spi->max_speed_hz 300000
298 QSPI: Baud set to 255
299 SPI: Coldfire master initialized
300 M537x - Disable UART1 when using Audio
301 udc: Freescale MCF53xx UDC driver version 27 October 2006 init
302 udc: MCF53xx USB Device is found. ID=0x5 Rev=0x41 i2c /dev entries driver
303 usbcore: registered new interface driver usbhid
304 drivers/hid/usbhid/hid-core.c: v2.6:USB HID core driver TCP cubic registered
305 NET: Registered protocol family 1
306 NET: Registered protocol family 17
307 VFS: Mounted root (romfs filesystem) readonly.
308 Freeing unused kernel memory: 64k freed (0x401f5000 - 0x40204000) init started:  BusyBox v1.00 (2007.11.07-19:57+0000) multi-call binary?Setting e Mounting filesystems
309 mount: Mounting devpts on /dev/pts failed: No such device
310 mount: Mounting usbfs on /proc/bus/usb failed: No such file or directory Starting syslogd and klogd Setting up networking on loopback device:
311 Setting up networking on eth0:
312 info, udhcpc (v0.9.9-pre) started
313 eth0: config: auto-negotiation on, 100FDX, 100HDX, 10FDX, 10HDX.
314 debug, Sending discover...
315 debug, Sending discover...
316 debug, Sending select for 172.27.0.130...
317 info, Lease of 172.27.0.130 obtained, lease time 43200 deleting routers
318 route: SIOC[ADD|DEL]RT: No such process
319 adding dns 172.27.0.1
320 Starting the boa webserver:
321 Setting time from ntp server: ntp.cs.strath.ac.uk
322 ntp.cs.strath.ac.uk: Unknown host
323
324
325 BusyBox v1.00 (2007.11.07-19:57+0000) Built-in shell (msh) Enter 'help' for a list of built-in commands.
326
327 #