1702e6014SWolfgang DenkFreescale MCF53017EVB ColdFire Development Board 2702e6014SWolfgang Denk================================================ 3702e6014SWolfgang Denk 4702e6014SWolfgang DenkTsiChung Liew(Tsi-Chung.Liew@freescale.com) 5702e6014SWolfgang DenkCreated 10/22/08 6702e6014SWolfgang Denk=========================================== 7702e6014SWolfgang Denk 8702e6014SWolfgang Denk 9702e6014SWolfgang DenkChanged files: 10702e6014SWolfgang Denk============== 11702e6014SWolfgang Denk 12702e6014SWolfgang Denk- board/freescale/m53017evb/m53017evb.c Dram setup 13702e6014SWolfgang Denk- board/freescale/m53017evb/mii.c Mii access 14702e6014SWolfgang Denk- board/freescale/m53017evb/Makefile Makefile 15702e6014SWolfgang Denk- board/freescale/m53017evb/config.mk config make 16702e6014SWolfgang Denk- board/freescale/m53017evb/u-boot.lds Linker description 17702e6014SWolfgang Denk 18702e6014SWolfgang Denk- arch/m68k/cpu/mcf532x/cpu.c cpu specific code 19702e6014SWolfgang Denk- arch/m68k/cpu/mcf532x/cpu_init.c FBCS, Mux pins, icache and RTC extra regs 20702e6014SWolfgang Denk- arch/m68k/cpu/mcf532x/interrupts.c cpu specific interrupt support 21702e6014SWolfgang Denk- arch/m68k/cpu/mcf532x/speed.c system, flexbus, and cpu clock 22702e6014SWolfgang Denk- arch/m68k/cpu/mcf532x/Makefile Makefile 23702e6014SWolfgang Denk- arch/m68k/cpu/mcf532x/config.mk config make 24702e6014SWolfgang Denk- arch/m68k/cpu/mcf532x/start.S start up assembly code 25702e6014SWolfgang Denk 26702e6014SWolfgang Denk- doc/README.m53017evb This readme file 27702e6014SWolfgang Denk 28702e6014SWolfgang Denk- drivers/net/mcffec.c ColdFire common FEC driver 29702e6014SWolfgang Denk- drivers/net/mcfmii.c ColdFire common Mii driver 30702e6014SWolfgang Denk- drivers/serial/mcfuart.c ColdFire common UART driver 31702e6014SWolfgang Denk- drivers/rtc/mcfrtc.c Realtime clock Driver 32702e6014SWolfgang Denk 33702e6014SWolfgang Denk- include/asm-m68k/bitops.h Bit operation function export 34702e6014SWolfgang Denk- include/asm-m68k/byteorder.h Byte order functions 35702e6014SWolfgang Denk- include/asm-m68k/fec.h FEC structure and definition 36702e6014SWolfgang Denk- include/asm-m68k/fsl_i2c.h I2C structure and definition 37702e6014SWolfgang Denk- include/asm-m68k/global_data.h Global data structure 38702e6014SWolfgang Denk- include/asm-m68k/immap.h ColdFire specific header file and driver macros 39702e6014SWolfgang Denk- include/asm-m68k/immap_5301x.h mcf5301x specific header file 40702e6014SWolfgang Denk- include/asm-m68k/io.h io functions 41702e6014SWolfgang Denk- include/asm-m68k/m532x.h mcf5301x specific header file 42702e6014SWolfgang Denk- include/asm-m68k/posix_types.h Posix 43702e6014SWolfgang Denk- include/asm-m68k/processor.h header file 44702e6014SWolfgang Denk- include/asm-m68k/ptrace.h Exception structure 45702e6014SWolfgang Denk- include/asm-m68k/rtc.h Realtime clock header file 46702e6014SWolfgang Denk- include/asm-m68k/string.h String function export 47702e6014SWolfgang Denk- include/asm-m68k/timer.h Timer structure and definition 48702e6014SWolfgang Denk- include/asm-m68k/types.h Data types definition 49702e6014SWolfgang Denk- include/asm-m68k/uart.h Uart structure and definition 50*a187559eSBin Meng- include/asm-m68k/u-boot.h U-Boot structure 51702e6014SWolfgang Denk 52702e6014SWolfgang Denk- include/configs/M53017EVB.h Board specific configuration file 53702e6014SWolfgang Denk 54702e6014SWolfgang Denk- arch/m68k/lib/board.c board init function 55702e6014SWolfgang Denk- arch/m68k/lib/cache.c 56702e6014SWolfgang Denk- arch/m68k/lib/interrupts Coldfire common interrupt functions 57702e6014SWolfgang Denk- arch/m68k/lib/m68k_linux.c 58702e6014SWolfgang Denk- arch/m68k/lib/time.c Timer functions (Dma timer and PIT) 59702e6014SWolfgang Denk- arch/m68k/lib/traps.c Exception init code 60702e6014SWolfgang Denk 61702e6014SWolfgang Denk1 MCF5301x specific Options/Settings 62702e6014SWolfgang Denk==================================== 63702e6014SWolfgang Denk1.1 pre-loader is no longer suppoer in thie coldfire family 64702e6014SWolfgang Denk 65702e6014SWolfgang Denk1.2 Configuration settings for M53017EVB Development Board 66702e6014SWolfgang DenkCONFIG_MCF5301x -- define for all MCF5301x CPUs 67702e6014SWolfgang DenkCONFIG_M53015 -- define for MCF53015 CPUs 68702e6014SWolfgang DenkCONFIG_M53017EVB -- define for M53017EVB board 69702e6014SWolfgang Denk 70702e6014SWolfgang DenkCONFIG_MCFUART -- define to use common CF Uart driver 71702e6014SWolfgang DenkCONFIG_SYS_UART_PORT -- define UART port number, start with 0, 1 and 2 72702e6014SWolfgang DenkCONFIG_BAUDRATE -- define UART baudrate 73702e6014SWolfgang Denk 74702e6014SWolfgang DenkCONFIG_MCFRTC -- define to use common CF RTC driver 75702e6014SWolfgang DenkCONFIG_SYS_MCFRTC_BASE -- provide base address for RTC in immap.h 76702e6014SWolfgang DenkCONFIG_SYS_RTC_OSCILLATOR -- define RTC clock frequency 77702e6014SWolfgang DenkRTC_DEBUG -- define to show RTC debug message 78*a187559eSBin MengCONFIG_CMD_DATE -- enable to use date feature in U-Boot 79702e6014SWolfgang Denk 80702e6014SWolfgang DenkCONFIG_MCFFEC -- define to use common CF 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_FEC0_MIIBASE -- Set FEC0 MII base register 88702e6014SWolfgang DenkMCFFEC_TOUT_LOOP -- set FEC timeout loop 89702e6014SWolfgang Denk 90702e6014SWolfgang DenkCONFIG_MCFTMR -- define to use DMA timer 91702e6014SWolfgang DenkCONFIG_MCFPIT -- define to use PIT timer 92702e6014SWolfgang Denk 9300f792e0SHeiko SchocherCONFIG_SYS_I2C_FSL -- define to use FSL common I2C driver 94ea818dbbSHeiko SchocherCONFIG_SYS_I2C_SOFT -- define for I2C bit-banged 95702e6014SWolfgang DenkCONFIG_SYS_I2C_SPEED -- define for I2C speed 96702e6014SWolfgang DenkCONFIG_SYS_I2C_SLAVE -- define for I2C slave address 97702e6014SWolfgang DenkCONFIG_SYS_I2C_OFFSET -- define for I2C base address offset 98702e6014SWolfgang DenkCONFIG_SYS_IMMR -- define for MBAR offset 99702e6014SWolfgang Denk 100702e6014SWolfgang DenkCONFIG_SYS_MBAR -- define MBAR offset 101702e6014SWolfgang Denk 102702e6014SWolfgang DenkCONFIG_MONITOR_IS_IN_RAM -- Not support 103702e6014SWolfgang Denk 104702e6014SWolfgang DenkCONFIG_SYS_INIT_RAM_ADDR -- defines the base address of the MCF5301x internal SRAM 105702e6014SWolfgang Denk 106702e6014SWolfgang DenkCONFIG_SYS_CSn_BASE -- defines the Chip Select Base register 107702e6014SWolfgang DenkCONFIG_SYS_CSn_MASK -- defines the Chip Select Mask register 108702e6014SWolfgang DenkCONFIG_SYS_CSn_CTRL -- defines the Chip Select Control register 109702e6014SWolfgang Denk 110702e6014SWolfgang DenkCONFIG_SYS_SDRAM_BASE -- defines the DRAM Base 111702e6014SWolfgang Denk 112702e6014SWolfgang Denk2. MEMORY MAP UNDER U-BOOT AND LINUX KERNEL 113702e6014SWolfgang Denk=========================================== 114702e6014SWolfgang Denk2.1. System memory map: 115702e6014SWolfgang Denk Flash: 0x00000000-0x3FFFFFFF (1024MB) 116702e6014SWolfgang Denk DDR: 0x40000000-0x7FFFFFFF (1024MB) 117702e6014SWolfgang Denk SRAM: 0x80000000-0x8FFFFFFF (256MB) 118702e6014SWolfgang Denk IP: 0xFC000000-0xFFFFFFFF (256MB) 119702e6014SWolfgang Denk 120*a187559eSBin Meng2.2. For the initial bringup, we adopted a consistent memory scheme between U-Boot and 121702e6014SWolfgang Denk linux kernel, you can customize it based on your system requirements: 122702e6014SWolfgang Denk Flash0: 0x00000000-0x00FFFFFF (16MB) 123702e6014SWolfgang Denk DDR: 0x40000000-0x4FFFFFFF (256MB) 124702e6014SWolfgang Denk SRAM: 0x80000000-0x80007FFF (32KB) 125702e6014SWolfgang Denk IP: 0xFC000000-0xFC0FFFFF (64KB) 126702e6014SWolfgang Denk 127702e6014SWolfgang Denk3. COMPILATION 128702e6014SWolfgang Denk============== 129702e6014SWolfgang Denk3.1 To create U-Boot the gcc-4.x-xx compiler set (ColdFire ELF or 130702e6014SWolfgang DenkuClinux version) from codesourcery.com was used. Download it from: 131702e6014SWolfgang Denkhttp://www.codesourcery.com/gnu_toolchains/coldfire/download.html 132702e6014SWolfgang Denk 133702e6014SWolfgang Denk3.2 Compilation 134702e6014SWolfgang Denk export CROSS_COMPILE=cross-compile-prefix 135702e6014SWolfgang Denk cd u-boot 136702e6014SWolfgang Denk make distclean 137702e6014SWolfgang Denk make M53017EVB_config 138702e6014SWolfgang Denk make 139702e6014SWolfgang Denk 140702e6014SWolfgang Denk4. SCREEN DUMP 141702e6014SWolfgang Denk============== 142702e6014SWolfgang Denk4.1 M53017EVB Development board 143702e6014SWolfgang Denk (NOTE: May not show exactly the same) 144702e6014SWolfgang Denk 145702e6014SWolfgang DenkU-Boot 2008.10 (Oct 22 2007 - 11:07:57) 146702e6014SWolfgang Denk 147702e6014SWolfgang DenkCPU: Freescale MCF53015 (Mask:76 Version:0) 148702e6014SWolfgang Denk CPU CLK 240 Mhz BUS CLK 80 Mhz 149702e6014SWolfgang DenkBoard: Freescale M53017EVB 150702e6014SWolfgang DenkI2C: ready 151702e6014SWolfgang DenkDRAM: 64 MB 152702e6014SWolfgang DenkFLASH: 16 MB 153702e6014SWolfgang DenkIn: serial 154702e6014SWolfgang DenkOut: serial 155702e6014SWolfgang DenkErr: serial 156702e6014SWolfgang DenkNAND: 16 MiB 157702e6014SWolfgang DenkNet: FEC0, FEC1 158702e6014SWolfgang Denk-> print 159702e6014SWolfgang Denkbootdelay=1 160702e6014SWolfgang Denkbaudrate=115200 161702e6014SWolfgang Denkethaddr=00:e0:0c:bc:e5:60 162702e6014SWolfgang Denkhostname=M53017EVB 163702e6014SWolfgang Denknetdev=eth0 164702e6014SWolfgang Denkloadaddr=40010000 165702e6014SWolfgang Denku-boot=u-boot.bin 166702e6014SWolfgang Denkload=tftp ${loadaddr) ${u-boot} 167702e6014SWolfgang Denkupd=run load; run prog 168702e6014SWolfgang Denkprog=prot off 0 3ffff;era 0 3ffff;cp.b ${loadaddr} 0 ${filesize};save 169702e6014SWolfgang Denkgatewayip=192.168.1.1 170702e6014SWolfgang Denknetmask=255.255.255.0 171702e6014SWolfgang Denkipaddr=192.168.1.3 172702e6014SWolfgang Denkserverip=192.168.1.2 173702e6014SWolfgang Denkstdin=serial 174702e6014SWolfgang Denkstdout=serial 175702e6014SWolfgang Denkstderr=serial 176702e6014SWolfgang Denkmem=65024k 177702e6014SWolfgang Denk 178702e6014SWolfgang DenkEnvironment size: 437/4092 bytes 179702e6014SWolfgang Denk-> 180