Home | History | Annotate | only in /external/u-boot/board/freescale/m54455evb
Up to higher level directory
NameDateSize
Kconfig22-Oct-2020187
m54455evb.c22-Oct-20205.2K
MAINTAINERS22-Oct-2020308
Makefile22-Oct-2020168
README22-Oct-202015.2K
sbf_dram_init.S22-Oct-20201.7K

README

      1 Freescale MCF54455EVB ColdFire Development Board
      2 ================================================
      3 
      4 TsiChung Liew(Tsi-Chung.Liew (a] freescale.com)
      5 Created 4/08/07
      6 ===========================================
      7 
      8 
      9 Changed files:
     10 ==============
     11 
     12 - board/freescale/m54455evb/m54455evb.c	Dram setup, IDE pre init, and PCI init
     13 - board/freescale/m54455evb/flash.c		Atmel and INTEL flash support
     14 - board/freescale/m54455evb/Makefile		Makefile
     15 - board/freescale/m54455evb/config.mk	config make
     16 - board/freescale/m54455evb/u-boot.lds	Linker description
     17 
     18 - common/cmd_bdinfo.c		Clock frequencies output
     19 - common/cmd_mii.c		mii support
     20 
     21 - arch/m68k/cpu/mcf5445x/cpu.c		cpu specific code
     22 - arch/m68k/cpu/mcf5445x/cpu_init.c	Flexbus ChipSelect, Mux pins setup, icache and RTC extra regs
     23 - arch/m68k/cpu/mcf5445x/interrupts.c	cpu specific interrupt support
     24 - arch/m68k/cpu/mcf5445x/speed.c		system, pci, flexbus, and cpu clock
     25 - arch/m68k/cpu/mcf5445x/Makefile		Makefile
     26 - arch/m68k/cpu/mcf5445x/config.mk	config make
     27 - arch/m68k/cpu/mcf5445x/start.S		start up assembly code
     28 
     29 - doc/README.m54455evb	This readme file
     30 
     31 - drivers/net/mcffec.c		ColdFire common FEC driver
     32 - drivers/serial/mcfuart.c	ColdFire common UART driver
     33 
     34 - include/asm-m68k/bitops.h		Bit operation function export
     35 - include/asm-m68k/byteorder.h		Byte order functions
     36 - include/asm-m68k/fec.h		FEC structure and definition
     37 - include/asm-m68k/fsl_i2c.h		I2C structure and definition
     38 - include/asm-m68k/global_data.h	Global data structure
     39 - include/asm-m68k/immap.h		ColdFire specific header file and driver macros
     40 - include/asm-m68k/immap_5445x.h	mcf5445x specific header file
     41 - include/asm-m68k/io.h			io functions
     42 - include/asm-m68k/m5445x.h		mcf5445x specific header file
     43 - include/asm-m68k/posix_types.h	Posix
     44 - include/asm-m68k/processor.h		header file
     45 - include/asm-m68k/ptrace.h		Exception structure
     46 - include/asm-m68k/rtc.h		Realtime clock header file
     47 - include/asm-m68k/string.h		String function export
     48 - include/asm-m68k/timer.h		Timer structure and definition
     49 - include/asm-m68k/types.h		Data types definition
     50 - include/asm-m68k/uart.h		Uart structure and definition
     51 - include/asm-m68k/u-boot.h		U-Boot structure
     52 
     53 - include/configs/M54455EVB.h	Board specific configuration file
     54 
     55 - arch/m68k/lib/board.c			board init function
     56 - arch/m68k/lib/cache.c
     57 - arch/m68k/lib/interrupts			Coldfire common interrupt functions
     58 - arch/m68k/lib/m68k_linux.c
     59 - arch/m68k/lib/time.c			Timer functions (Dma timer and PIT)
     60 - arch/m68k/lib/traps.c			Exception init code
     61 
     62 - rtc/mcfrtc.c				Realtime clock Driver
     63 
     64 1 MCF5445x specific Options/Settings
     65 ====================================
     66 1.1 pre-loader is no longer suppoer in thie coldfire family
     67 
     68 1.2 Configuration settings for M54455EVB Development Board
     69 CONFIG_MCF5445x		-- define for all MCF5445x CPUs
     70 CONFIG_M54455		-- define for all Freescale MCF54455 CPUs
     71 CONFIG_M54455EVB	-- define for M54455EVB board
     72 
     73 CONFIG_MCFUART		-- define to use common CF Uart driver
     74 CONFIG_SYS_UART_PORT		-- define UART port number, start with 0, 1 and 2
     75 CONFIG_BAUDRATE		-- define UART baudrate
     76 
     77 CONFIG_MCFRTC		-- define to use common CF RTC driver
     78 CONFIG_SYS_MCFRTC_BASE		-- provide base address for RTC in immap.h
     79 CONFIG_SYS_RTC_OSCILLATOR	-- define RTC clock frequency
     80 RTC_DEBUG		-- define to show RTC debug message
     81 CONFIG_CMD_DATE		-- enable to use date feature in U-Boot
     82 
     83 CONFIG_MCFFEC		-- define to use common CF FEC driver
     84 CONFIG_MII		-- enable to use MII driver
     85 CONFIG_CF_DOMII		-- enable to use MII feature in cmd_mii.c
     86 CONFIG_SYS_DISCOVER_PHY	-- enable PHY discovery
     87 CONFIG_SYS_RX_ETH_BUFFER	-- Set FEC Receive buffer
     88 CONFIG_SYS_FAULT_ECHO_LINK_DOWN--
     89 CONFIG_SYS_FEC0_PINMUX		-- Set FEC0 Pin configuration
     90 CONFIG_SYS_FEC1_PINMUX		-- Set FEC1 Pin configuration
     91 CONFIG_SYS_FEC0_MIIBASE	-- Set FEC0 MII base register
     92 CONFIG_SYS_FEC1_MIIBASE	-- Set FEC0 MII base register
     93 MCFFEC_TOUT_LOOP	-- set FEC timeout loop
     94 CONFIG_HAS_ETH1		-- define to enable second FEC in U-Boot
     95 
     96 CONFIG_ISO_PARTITION	-- enable ISO read/write
     97 CONFIG_DOS_PARTITION	-- enable DOS read/write
     98 CONFIG_IDE_RESET	-- define ide_reset()
     99 CONFIG_IDE_PREINIT	-- define ide_preinit()
    100 CONFIG_ATAPI		-- define ATAPI support
    101 CONFIG_LBA48		-- define LBA48 (larger than 120GB) support
    102 CONFIG_SYS_IDE_MAXBUS		-- define max channel
    103 CONFIG_SYS_IDE_MAXDEVICE	-- define max devices per channel
    104 CONFIG_SYS_ATA_BASE_ADDR	-- define ATA base address
    105 CONFIG_SYS_ATA_IDE0_OFFSET	-- define ATA IDE0 offset
    106 CONFIG_SYS_ATA_DATA_OFFSET	-- define ATA data IO
    107 CONFIG_SYS_ATA_REG_OFFSET	-- define for normal register accesses
    108 CONFIG_SYS_ATA_ALT_OFFSET	-- define for alternate registers
    109 CONFIG_SYS_ATA_STRIDE		-- define for Interval between registers
    110 _IO_BASE		-- define for IO base address
    111 
    112 CONFIG_MCFTMR		-- define to use DMA timer
    113 CONFIG_MCFPIT		-- define to use PIT timer
    114 
    115 CONFIG_SYS_FSL_I2C	-- define to use FSL common I2C driver
    116 CONFIG_SYS_I2C_SOFT	-- define for I2C bit-banged
    117 CONFIG_SYS_I2C_SPEED		-- define for I2C speed
    118 CONFIG_SYS_I2C_SLAVE		-- define for I2C slave address
    119 CONFIG_SYS_I2C_OFFSET		-- define for I2C base address offset
    120 CONFIG_SYS_IMMR		-- define for MBAR offset
    121 
    122 CONFIG_PCI              -- define for PCI support
    123 CONFIG_PCI_PNP          -- define for Plug n play support
    124 CONFIG_SYS_PCI_MEM_BUS		-- PCI memory logical offset
    125 CONFIG_SYS_PCI_MEM_PHYS	-- PCI memory physical offset
    126 CONFIG_SYS_PCI_MEM_SIZE	-- PCI memory size
    127 CONFIG_SYS_PCI_IO_BUS		-- PCI IO logical offset
    128 CONFIG_SYS_PCI_IO_PHYS		-- PCI IO physical offset
    129 CONFIG_SYS_PCI_IO_SIZE		-- PCI IO size
    130 CONFIG_SYS_PCI_CFG_BUS		-- PCI Configuration logical offset
    131 CONFIG_SYS_PCI_CFG_PHYS	-- PCI Configuration physical offset
    132 CONFIG_SYS_PCI_CFG_SIZE	-- PCI Configuration size
    133 
    134 CONFIG_EXTRA_CLOCK	-- Enable extra clock such as vco, flexbus, pci, etc
    135 
    136 CONFIG_SYS_MBAR		-- define MBAR offset
    137 
    138 CONFIG_SYS_ATMEL_BOOT		-- To determine the U-Boot is booted from Atmel or Intel
    139 
    140 CONFIG_MONITOR_IS_IN_RAM -- Not support
    141 
    142 CONFIG_SYS_INIT_RAM_ADDR	-- defines the base address of the MCF54455 internal SRAM
    143 
    144 CONFIG_SYS_CSn_BASE	-- defines the Chip Select Base register
    145 CONFIG_SYS_CSn_MASK	-- defines the Chip Select Mask register
    146 CONFIG_SYS_CSn_CTRL	-- defines the Chip Select Control register
    147 
    148 CONFIG_SYS_ATMEL_BASE	-- defines the Atmel Flash base
    149 CONFIG_SYS_INTEL_BASE	-- defines the Intel Flash base
    150 
    151 CONFIG_SYS_SDRAM_BASE	-- defines the DRAM Base
    152 CONFIG_SYS_SDRAM_BASE1	-- defines the DRAM Base 1
    153 
    154 2. MEMORY MAP UNDER U-BOOT AND LINUX KERNEL
    155 ===========================================
    156 2.1. System memory map:
    157 	Flash:		0x00000000-0x3FFFFFFF (1024MB)
    158 	DDR:		0x40000000-0x7FFFFFFF (1024MB)
    159 	SRAM:		0x80000000-0x8FFFFFFF (256MB)
    160 	ATA:		0x90000000-0x9FFFFFFF (256MB)
    161 	PCI:		0xA0000000-0xBFFFFFFF (512MB)
    162 	FlexBus:	0xC0000000-0xDFFFFFFF (512MB)
    163 	IP:		0xF0000000-0xFFFFFFFF (256MB)
    164 
    165 2.2. For the initial bringup, we adopted a consistent memory scheme between U-Boot and
    166 	linux kernel, you can customize it based on your system requirements:
    167 	Atmel boot:
    168 	Flash0:		0x00000000-0x0007FFFF (512KB)
    169 	Flash1:		0x04000000-0x05FFFFFF (32MB)
    170 	Intel boot:
    171 	Flash0:		0x00000000-0x01FFFFFF (32MB)
    172 	Flash1:		0x04000000-0x0407FFFF (512KB)
    173 
    174 	CPLD:		0x08000000-0x08FFFFFF (16MB)
    175 	FPGA:		0x09000000-0x09FFFFFF (16MB)
    176 	DDR:		0x40000000-0x4FFFFFFF (256MB)
    177 	SRAM:		0x80000000-0x80007FFF (32KB)
    178 	IP:		0xFC000000-0xFC0FFFFF (64KB)
    179 
    180 3. SWITCH SETTINGS
    181 ==================
    182 3.1 SW1 Pin3: 0 - Boot from Atmel or 1 - INTEL
    183 	SW1 Pin4: 0 - ULPI chip not in reset state or 1 - ULPI chip in reset state
    184 	SW1 Pin5: 0 - Full ATA Bus enabled, FEC Phy1 powered down
    185 			  1 - Upper 8 bits ATA data bus disabled, FEC PHY1 active
    186 	SW1 Pin6: 0 - FEC Phy0 active or 1 - FEC Phy0 powered down
    187 	SW1 Pin3: 0 - Boot from Atmel or 1 - INTEL
    188 
    189 4. COMPILATION
    190 ==============
    191 4.1	To create U-Boot the gcc-4.1-32 compiler set (ColdFire ELF version)
    192 from codesourcery.com was used. Download it from:
    193 http://www.codesourcery.com/gnu_toolchains/coldfire/download.html
    194 
    195 4.2 Compilation
    196    export CROSS_COMPILE=cross-compile-prefix
    197    cd u-boot-1.x.x
    198    make distclean
    199    make M54455EVB_config, or		- default to atmel 33Mhz input clock
    200    make M54455EVB_atmel_config, or	- default to atmel 33Mhz input clock
    201    make M54455EVB_a33_config, or	- default to atmel 33Mhz input clock
    202    make M54455EVB_a66_config, or	- default to atmel 66Mhz input clock
    203    make M54455EVB_intel_config, or	- default to intel 33Mhz input clock
    204    make M54455EVB_i33_config, or	- default to intel 33Mhz input clock
    205    make M54455EVB_i66_config, or	- default to intel 66Mhz input clock
    206    make
    207 
    208 5. SCREEN DUMP
    209 ==============
    210 5.1 M54455EVB Development board
    211     Boot from Atmel (NOTE: May not show exactly the same)
    212 
    213 U-Boot 1.2.0-g98c80b46-dirty (Jul 26 2007 - 12:44:08)
    214 
    215 CPU:   Freescale MCF54455 (Mask:48 Version:1)
    216        CPU CLK 266 Mhz BUS CLK 133 Mhz FLB CLK 66 Mhz
    217        PCI CLK 33 Mhz INP CLK 33 Mhz VCO CLK 533 Mhz
    218 Board: Freescale M54455 EVB
    219 I2C:   ready
    220 DRAM:  256 MB
    221 FLASH: 16.5 MB
    222 In:    serial
    223 Out:   serial
    224 Err:   serial
    225 Net:   FEC0, FEC1
    226 IDE:   Bus 0: not available
    227 -> print
    228 bootargs=root=/dev/ram rw
    229 bootdelay=1
    230 baudrate=115200
    231 ethaddr=00:e0:0c:bc:e5:60
    232 eth1addr=00:e0:0c:bc:e5:61
    233 hostname=M54455EVB
    234 netdev=eth0
    235 inpclk=33333333
    236 loadaddr=40010000
    237 load=tftp ${loadaddr) ${u-boot}
    238 upd=run load; run prog
    239 prog=prot off 0 2ffff;era 0 2ffff;cp.b ${loadaddr} 0 ${filesize};save
    240 ethact=FEC0
    241 mtdids=nor0=M54455EVB-1
    242 mtdparts=M54455EVB-1:16m(user)
    243 u-boot=u-boot54455.bin
    244 filesize=292b4
    245 fileaddr=40010000
    246 gatewayip=192.168.1.1
    247 netmask=255.255.255.0
    248 ipaddr=192.168.1.3
    249 serverip=192.168.1.2
    250 stdin=serial
    251 stdout=serial
    252 stderr=serial
    253 mem=261632k
    254 
    255 Environment size: 563/8188 bytes
    256 -> bdinfo
    257 memstart    = 0x40000000
    258 memsize     = 0x10000000
    259 flashstart  = 0x00000000
    260 flashsize   = 0x01080000
    261 flashoffset = 0x00000000
    262 sramstart   = 0x80000000
    263 sramsize    = 0x00008000
    264 mbar        = 0xFC000000
    265 busfreq     = 133.333 MHz
    266 pcifreq     = 33.333 MHz
    267 flbfreq     = 66.666 MHz
    268 inpfreq     = 33.333 MHz
    269 vcofreq     = 533.333 MHz
    270 ethaddr     = 00:E0:0C:BC:E5:60
    271 eth1addr    = 00:E0:0C:BC:E5:61
    272 ip_addr     = 192.168.1.3
    273 baudrate    = 115200 bps
    274 ->
    275 -> help
    276 ?       - alias for 'help'
    277 base    - print or set address offset
    278 bdinfo  - print Board Info structure
    279 boot    - boot default, i.e., run 'bootcmd'
    280 bootd   - boot default, i.e., run 'bootcmd'
    281 bootelf - Boot from an ELF image in memory
    282 bootm   - boot application image from memory
    283 bootp	- boot image via network using BootP/TFTP protocol
    284 bootvx  - Boot vxWorks from an ELF image
    285 cmp     - memory compare
    286 coninfo - print console devices and information
    287 cp      - memory copy
    288 crc32   - checksum calculation
    289 date    - get/set/reset date & time
    290 dcache  - enable or disable data cache
    291 diskboot- boot from IDE device
    292 echo    - echo args to console
    293 erase   - erase FLASH memory
    294 ext2load- load binary file from a Ext2 filesystem
    295 ext2ls  - list files in a directory (default /)
    296 fatinfo - print information about filesystem
    297 fatload - load binary file from a dos filesystem
    298 fatls   - list files in a directory (default /)
    299 flinfo  - print FLASH memory information
    300 fsinfo	- print information about filesystems
    301 fsload	- load binary file from a filesystem image
    302 go      - start application at address 'addr'
    303 help    - print online help
    304 i2c     - I2C sub-system
    305 icache  - enable or disable instruction cache
    306 ide     - IDE sub-system
    307 iminfo  - print header information for application image
    308 imls    - list all images found in flash
    309 itest	- return true/false on integer compare
    310 loadb   - load binary file over serial line (kermit mode)
    311 loads   - load S-Record file over serial line
    312 loady   - load binary file over serial line (ymodem mode)
    313 loop    - infinite loop on address range
    314 ls	- list files in a directory (default /)
    315 md      - memory display
    316 mii     - MII utility commands
    317 mm      - memory modify (auto-incrementing)
    318 mtest   - simple RAM test
    319 mw      - memory write (fill)
    320 nfs	- boot image via network using NFS protocol
    321 nm      - memory modify (constant address)
    322 pci     - list and access PCI Configuration Space
    323 ping	- send ICMP ECHO_REQUEST to network host
    324 printenv- print environment variables
    325 protect - enable or disable FLASH write protection
    326 rarpboot- boot image via network using RARP/TFTP protocol
    327 reset   - Perform RESET of the CPU
    328 run     - run commands in an environment variable
    329 saveenv - save environment variables to persistent storage
    330 setenv  - set environment variables
    331 sleep   - delay execution for some time
    332 source  - run script from memory
    333 tftpboot- boot image via network using TFTP protocol
    334 version - print monitor version
    335 ->bootm 4000000
    336 
    337 ## Booting image at 04000000 ...
    338    Image Name:   Linux Kernel Image
    339    Created:      2007-08-14  15:13:00 UTC
    340    Image Type:   M68K Linux Kernel Image (uncompressed)
    341    Data Size:    2301952 Bytes =  2.2 MB
    342    Load Address: 40020000
    343    Entry Point:  40020000
    344    Verifying Checksum ... OK
    345 OK
    346 Linux version 2.6.20-gfe5136d6-dirty (mattw@kea) (gcc version 4.2.0 20070318 (pr
    347 erelease) (Sourcery G++ Lite 4.2-20)) #108 Mon Aug 13 13:00:13 MDT 2007
    348 starting up linux startmem 0xc0254000, endmem 0xcfffffff, size 253MB
    349 Built 1 zonelists.  Total pages: 32624
    350 Kernel command line: root=/dev/mtdblock1 rw rootfstype=jffs2 ip=none mtdparts=ph
    351 ysmap-flash.0:5M(kernel)ro,-(jffs2)
    352 PID hash table entries: 1024 (order: 10, 4096 bytes)
    353 Console: colour dummy device 80x25
    354 Dentry cache hash table entries: 32768 (order: 4, 131072 bytes)
    355 Inode-cache hash table entries: 16384 (order: 3, 65536 bytes)
    356 Memory: 257496k/262136k available (1864k kernel code, 2440k data, 88k init)
    357 Mount-cache hash table entries: 1024
    358 NET: Registered protocol family 16
    359 SCSI subsystem initialized
    360 NET: Registered protocol family 2
    361 IP route cache hash table entries: 2048 (order: 0, 8192 bytes)
    362 TCP established hash table entries: 8192 (order: 2, 32768 bytes)
    363 TCP bind hash table entries: 4096 (order: 1, 16384 bytes)
    364 TCP: Hash tables configured (established 8192 bind 4096)
    365 TCP reno registered
    366 JFFS2 version 2.2. (NAND) (C) 2001-2006 Red Hat, Inc.
    367 io scheduler noop registered
    368 io scheduler anticipatory registered
    369 io scheduler deadline registered
    370 io scheduler cfq registered (default)
    371 ColdFire internal UART serial driver version 1.00
    372 ttyS0 at 0xfc060000 (irq = 90) is a builtin ColdFire UART
    373 ttyS1 at 0xfc064000 (irq = 91) is a builtin ColdFire UART
    374 ttyS2 at 0xfc068000 (irq = 92) is a builtin ColdFire UART
    375 RAMDISK driver initialized: 16 RAM disks of 64000K size 1024 blocksize
    376 loop: loaded (max 8 devices)
    377 FEC ENET Version 0.2
    378 fec: PHY @ 0x0, ID 0x20005ca2 -- DP83849
    379 eth0: ethernet 00:08:ee:00:e4:19
    380 physmap platform flash device: 01000000 at 04000000
    381 physmap-flash.0: Found 1 x16 devices at 0x0 in 8-bit bank
    382  Intel/Sharp Extended Query Table at 0x0031
    383 Using buffer write method
    384 cfi_cmdset_0001: Erase suspend on write enabled
    385 2 cmdlinepart partitions found on MTD device physmap-flash.0
    386 Creating 2 MTD partitions on "physmap-flash.0":
    387 0x00000000-0x00500000 : "kernel"
    388 mtd: Giving out device 0 to kernel
    389 0x00500000-0x01000000 : "jffs2"
    390 mtd: Giving out device 1 to jffs2
    391 mice: PS/2 mouse device common for all mice
    392 i2c /dev entries driver
    393 TCP cubic registered
    394 NET: Registered protocol family 1
    395 NET: Registered protocol family 17
    396 NET: Registered protocol family 15
    397 VFS: Mounted root (jffs2 filesystem).
    398 Setting the hostname to freescale
    399 Mounting filesystems
    400 mount: Mounting usbfs on /proc/bus/usb failed: No such file or directory
    401 Starting syslogd and klogd
    402 Setting up networking on loopback device:
    403 Setting up networking on eth0:
    404 eth0: config: auto-negotiation on, 100FDX, 100HDX, 10FDX, 10HDX.
    405 Adding static route for default gateway to 172.27.255.254:
    406 Setting nameserver to 172.27.0.1 in /etc/resolv.conf:
    407 Starting inetd:
    408 / #
    409