wdenk | bf9e3b3 | 2004-02-12 00:47:09 +0000 | [diff] [blame] | 1 | |
| 2 | U-Boot for Motorola M68K |
| 3 | |
| 4 | Last Update: January 12, 2004 |
| 5 | ==================================================================== |
| 6 | |
| 7 | This file contains status information for the port of U-Boot to the |
| 8 | Motorola M68K series of CPUs. |
| 9 | |
| 10 | 1. OVERVIEW |
| 11 | ----------- |
| 12 | Bernhard Kuhn ported U-Boot 0.4.0 to the Motorola Coldfire |
| 13 | architecture. The patches of Bernhard support the MCF5272 and |
| 14 | MCF5282. A great disadvantage of these patches was that they needed |
| 15 | a pre-bootloader to start u-boot. Because of this, a new port was |
| 16 | created which no longer needs a first stage booter. |
| 17 | |
| 18 | Although this port is intended to cover all M68k processors, only |
| 19 | the parts for the Motorola Coldfire MCF5272 and MCF5282 are |
| 20 | implemented at the moment. Additional CPUs and boards will be |
| 21 | hopefully added soon! |
| 22 | |
| 23 | |
| 24 | 2. SUPPORTED CPUs |
| 25 | ----------------- |
| 26 | |
| 27 | 2.1 Motorola Coldfire MCF5272 |
| 28 | ----------------------------- |
| 29 | CPU specific code is located in: cpu/mcf52x2 |
| 30 | |
| 31 | |
| 32 | 2.1 Motorola Coldfire MCF5282 |
| 33 | ----------------------------- |
| 34 | CPU specific code is located in: cpu/mcf52x2 |
| 35 | |
| 36 | At the moment the code isn't fully implemented and still needs a pre-loader! |
| 37 | The preloader must initialize the processor and then start u-boot. The board |
| 38 | must be configured for a pre-loader (see 4.1) |
| 39 | |
wdenk | cfca5e6 | 2004-08-01 13:09:47 +0000 | [diff] [blame] | 40 | For the preloader, please see |
| 41 | http://mailman.uclinux.org/pipermail/uclinux-dev/2003-December/023384.html |
| 42 | |
wdenk | bf9e3b3 | 2004-02-12 00:47:09 +0000 | [diff] [blame] | 43 | U-boot is configured to run at 0x20000 at default. This can be configured by |
| 44 | change TEXT_BASE in board/m5282evb/config.mk and CFG_MONITOR_BASE in |
| 45 | include/configs/M5282EVB.h. |
| 46 | |
| 47 | |
| 48 | 3. SUPPORTED BOARDs |
| 49 | ------------------- |
| 50 | |
| 51 | 3.1 Motorola M5272C3 EVB |
| 52 | ------------------------ |
| 53 | Board specific code is located in: board/m5272c3 |
| 54 | |
| 55 | To configure the board, type: make M5272C3_config |
| 56 | |
| 57 | U-Boot Memory Map: |
| 58 | ------------------ |
| 59 | 0xffe00000 - 0xffe3ffff u-boot |
| 60 | 0xffe04000 - 0xffe05fff environment (embedded in u-boot!) |
| 61 | 0xffe40000 - 0xffffffff free for linux/applications |
| 62 | |
| 63 | |
| 64 | 3.2 Motorola M5282 EVB |
| 65 | ------------------------ |
| 66 | Board specific code is located in: board/m5282evb |
| 67 | |
| 68 | To configure the board, type: make M5272C3_config |
| 69 | |
| 70 | |
| 71 | 4. CONFIGURATION OPTIONS/SETTINGS |
| 72 | ---------------------------------- |
| 73 | |
| 74 | 4.1 Configuration to use a pre-loader |
| 75 | ------------------------------------- |
| 76 | If u-boot should be loaded to RAM and started by a pre-loader |
| 77 | CONFIG_MONITOR_IS_IN_RAM must be defined. If it is defined the |
| 78 | initial vector table and basic processor initialization will not |
| 79 | be compiled in. The start address of u-boot must be adjusted in |
| 80 | the boards config header file (CFG_MONITOR_BASE) and Makefile |
| 81 | (TEXT_BASE) to the load address. |
| 82 | |
| 83 | |
| 84 | 4.1 MCF5272 specific Options/Settings |
| 85 | ------------------------------------- |
| 86 | |
| 87 | CONFIG_MCF52x2 -- defined for all MCF52x2 CPUs |
| 88 | CONFIG_M5272 -- defined for all Motorola MCF5272 CPUs |
| 89 | |
| 90 | CONFIG_MONITOR_IS_IN_RAM |
| 91 | -- defined if u-boot is loaded by a pre-loader |
| 92 | |
| 93 | CFG_MBAR -- defines the base address of the MCF5272 configuration registers |
| 94 | CFG_INIT_RAM_ADDR |
| 95 | -- defines the base address of the MCF5272 internal SRAM |
| 96 | CFG_ENET_BD_BASE |
| 97 | -- defines the base addres of the FEC buffer descriptors |
| 98 | |
| 99 | CFG_SCR -- defines the contents of the System Configuration Register |
| 100 | CFG_SPR -- defines the contents of the System Protection Register |
| 101 | CFG_BRx_PRELIM -- defines the contents of the Chip Select Base Registers |
| 102 | CFG_ORx_PRELIM -- defines the contents of the Chip Select Option Registers |
| 103 | |
| 104 | CFG_PxDDR -- defines the contents of the Data Direction Registers |
| 105 | CFG_PxDAT -- defines the contents of the Data Registers |
| 106 | CFG_PXCNT -- defines the contents of the Port Configuration Registers |
| 107 | |
| 108 | |
| 109 | 4.2 MCF5282 specific Options/Settings |
| 110 | ------------------------------------- |
| 111 | |
| 112 | CONFIG_MCF52x2 -- defined for all MCF52x2 CPUs |
| 113 | CONFIG_M5282 -- defined for all Motorola MCF5282 CPUs |
| 114 | |
| 115 | CONFIG_MONITOR_IS_IN_RAM |
| 116 | -- defined if u-boot is loaded by a pre-loader |
| 117 | |
| 118 | CFG_MBAR -- defines the base address of the MCF5282 internal register space |
| 119 | CFG_INIT_RAM_ADDR |
| 120 | -- defines the base address of the MCF5282 internal SRAM |
| 121 | CFG_INT_FLASH_BASE |
| 122 | -- defines the base address of the MCF5282 internal Flash memory |
| 123 | CFG_ENET_BD_BASE |
| 124 | -- defines the base addres of the FEC buffer descriptors |
| 125 | |
| 126 | |
| 127 | 5. COMPILER |
| 128 | ----------- |
| 129 | To create U-Boot the gcc-2.95.3 compiler set (m68k-elf-20030314) from uClinux.org was used. |
| 130 | You can download it from: http://www.uclinux.org/pub/uClinux/m68k-elf-tools/ |
| 131 | |
| 132 | |
| 133 | Regards, |
| 134 | |
| 135 | Josef |
| 136 | <josef.baumgartner@telex.de> |