U-Boot for Motorola M68K Last Update: January 12, 2004 ==================================================================== This file contains status information for the port of U-Boot to the Motorola M68K series of CPUs. 1. OVERVIEW ----------- Bernhard Kuhn ported U-Boot 0.4.0 to the Motorola Coldfire architecture. The patches of Bernhard support the MCF5272 and MCF5282. A great disadvantage of these patches was that they needed a pre-bootloader to start u-boot. Because of this, a new port was created which no longer needs a first stage booter. Although this port is intended to cover all M68k processors, only the parts for the Motorola Coldfire MCF5272 and MCF5282 are implemented at the moment. Additional CPUs and boards will be hopefully added soon! 2. SUPPORTED CPUs ----------------- 2.1 Motorola Coldfire MCF5272 ----------------------------- CPU specific code is located in: cpu/mcf52x2 2.1 Motorola Coldfire MCF5282 ----------------------------- CPU specific code is located in: cpu/mcf52x2 At the moment the code isn't fully implemented and still needs a pre-loader! The preloader must initialize the processor and then start u-boot. The board must be configured for a pre-loader (see 4.1) For the preloader, please see http://mailman.uclinux.org/pipermail/uclinux-dev/2003-December/023384.html U-boot is configured to run at 0x20000 at default. This can be configured by change TEXT_BASE in board/m5282evb/config.mk and CFG_MONITOR_BASE in include/configs/M5282EVB.h. 3. SUPPORTED BOARDs ------------------- 3.1 Motorola M5272C3 EVB ------------------------ Board specific code is located in: board/m5272c3 To configure the board, type: make M5272C3_config U-Boot Memory Map: ------------------ 0xffe00000 - 0xffe3ffff u-boot 0xffe04000 - 0xffe05fff environment (embedded in u-boot!) 0xffe40000 - 0xffffffff free for linux/applications 3.2 Motorola M5282 EVB ------------------------ Board specific code is located in: board/m5282evb To configure the board, type: make M5272C3_config 4. CONFIGURATION OPTIONS/SETTINGS ---------------------------------- 4.1 Configuration to use a pre-loader ------------------------------------- If u-boot should be loaded to RAM and started by a pre-loader CONFIG_MONITOR_IS_IN_RAM must be defined. If it is defined the initial vector table and basic processor initialization will not be compiled in. The start address of u-boot must be adjusted in the boards config header file (CFG_MONITOR_BASE) and Makefile (TEXT_BASE) to the load address. 4.1 MCF5272 specific Options/Settings ------------------------------------- CONFIG_MCF52x2 -- defined for all MCF52x2 CPUs CONFIG_M5272 -- defined for all Motorola MCF5272 CPUs CONFIG_MONITOR_IS_IN_RAM -- defined if u-boot is loaded by a pre-loader CFG_MBAR -- defines the base address of the MCF5272 configuration registers CFG_INIT_RAM_ADDR -- defines the base address of the MCF5272 internal SRAM CFG_ENET_BD_BASE -- defines the base addres of the FEC buffer descriptors CFG_SCR -- defines the contents of the System Configuration Register CFG_SPR -- defines the contents of the System Protection Register CFG_BRx_PRELIM -- defines the contents of the Chip Select Base Registers CFG_ORx_PRELIM -- defines the contents of the Chip Select Option Registers CFG_PxDDR -- defines the contents of the Data Direction Registers CFG_PxDAT -- defines the contents of the Data Registers CFG_PXCNT -- defines the contents of the Port Configuration Registers 4.2 MCF5282 specific Options/Settings ------------------------------------- CONFIG_MCF52x2 -- defined for all MCF52x2 CPUs CONFIG_M5282 -- defined for all Motorola MCF5282 CPUs CONFIG_MONITOR_IS_IN_RAM -- defined if u-boot is loaded by a pre-loader CFG_MBAR -- defines the base address of the MCF5282 internal register space CFG_INIT_RAM_ADDR -- defines the base address of the MCF5282 internal SRAM CFG_INT_FLASH_BASE -- defines the base address of the MCF5282 internal Flash memory CFG_ENET_BD_BASE -- defines the base addres of the FEC buffer descriptors 5. COMPILER ----------- To create U-Boot the gcc-2.95.3 compiler set (m68k-elf-20030314) from uClinux.org was used. You can download it from: http://www.uclinux.org/pub/uClinux/m68k-elf-tools/ Regards, Josef