mirror of
https://github.com/brain-hackers/u-boot-brain
synced 2024-08-19 16:38:53 +09:00
![Mike Frysinger](/assets/img/avatar_default.png)
This is long over due. All but two net drivers have been converted, but those have now been dropped. The only thing left to do is actually delete all references to NET_MULTI and code that is compiled when that is not defined. So here we scrub the core code. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
273 lines
9.6 KiB
Plaintext
273 lines
9.6 KiB
Plaintext
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_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
|
|
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
|
|
->
|