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 
 | 
  
 | 
- arch/m68k/cpu/mcf547x_8x/cpu.c            cpu specific code 
 | 
- arch/m68k/cpu/mcf547x_8x/cpu_init.c        Flexbus ChipSelect, Mux pins setup, icache and RTC extra regs 
 | 
- arch/m68k/cpu/mcf547x_8x/interrupts.c        cpu specific interrupt support 
 | 
- arch/m68k/cpu/mcf547x_8x/slicetimer.c        Timer support 
 | 
- arch/m68k/cpu/mcf547x_8x/speed.c        system, pci, flexbus, and cpu clock 
 | 
- arch/m68k/cpu/mcf547x_8x/Makefile        Makefile 
 | 
- arch/m68k/cpu/mcf547x_8x/config.mk        config make 
 | 
- arch/m68k/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 
 | 
  
 | 
- 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/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 
 | 
CONFIG_SYS_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_MII        -- enable to use MII driver 
 | 
CONFIG_CF_DOMII        -- enable to use MII feature in cmd_mii.c 
 | 
CONFIG_SYS_DISCOVER_PHY    -- enable PHY discovery 
 | 
CONFIG_SYS_RX_ETH_BUFFER    -- Set FEC Receive buffer 
 | 
CONFIG_SYS_FAULT_ECHO_LINK_DOWN-- 
 | 
CONFIG_SYS_FEC0_PINMUX        -- Set FEC0 Pin configuration 
 | 
CONFIG_SYS_FEC1_PINMUX        -- Set FEC1 Pin configuration 
 | 
CONFIG_SYS_FEC0_MIIBASE    -- Set FEC0 MII base register 
 | 
CONFIG_SYS_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_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_PCI        -- define for PCI support 
 | 
CONFIG_PCI_PNP        -- define for Plug n play support 
 | 
CONFIG_SKIPPCI_HOSTBRIDGE    -- SKIP PCI Host bridge 
 | 
CONFIG_SYS_PCI_MEM_BUS        -- PCI memory logical offset 
 | 
CONFIG_SYS_PCI_MEM_PHYS    -- PCI memory physical offset 
 | 
CONFIG_SYS_PCI_MEM_SIZE    -- PCI memory size 
 | 
CONFIG_SYS_PCI_IO_BUS        -- PCI IO logical offset 
 | 
CONFIG_SYS_PCI_IO_PHYS        -- PCI IO physical offset 
 | 
CONFIG_SYS_PCI_IO_SIZE        -- PCI IO size 
 | 
CONFIG_SYS_PCI_CFG_BUS        -- PCI Configuration logical offset 
 | 
CONFIG_SYS_PCI_CFG_PHYS    -- PCI Configuration physical offset 
 | 
CONFIG_SYS_PCI_CFG_SIZE    -- PCI Configuration size 
 | 
  
 | 
CONFIG_SYS_MBAR        -- define MBAR offset 
 | 
  
 | 
CONFIG_MONITOR_IS_IN_RAM -- Not support 
 | 
  
 | 
CONFIG_SYS_INIT_RAM_ADDR    -- defines the base address of the MCF547x 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 
 | 
  
 | 
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' 
 | 
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 
 | 
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 
 | 
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 
 | 
source    - run script from memory 
 | 
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 
 | 
-> 
 |