Restoring MPC8xx Bootloader

Embedded Planet's PlanetCore is located in flash memory when the boards are shipped from Embedded Planet. If the customer is not using a BDM development tool, the PlanetCore loader is required to be in flash memory in order to boot the boards. The location of the PlanetCore loader in flash is dependent upon whether the CPU board is high or low memory boot.

Most Embedded Planet's CPU boards are designed to be either high or low memory boot boards. In high boot boards the CPU reset vector is 0xFFF0 0100 and for low boot boards 0x0000 0100. High or low boot is determined by the CPLD programming on the Embedded Planet CPU board. Embedded Planet does the CPLD programming before the boards are shipped.

The tables below show the location of the PlanetCore loader and diagnostics in flash memory for both high and low boot boards. The diagnostics are not required to be in flash memory.

FLASH Memory Map - Low Boot Board
Location Description
FFFF FFFF PlanetCore Diagnostics and Utilities (512K)
 
FFF8 0000
FFFF FFFF Application Space (FLASH Size - 768K)
 
LSB+ 256K
Fxx3 FFFF PlanetCore Boot Loader (256K)
 
FFE0 0000
FFC0 0000
FF80 0000
FF00 0000
FE00 0000
FC00 0000
LSB for 2M FLASH
LSB for 4M FLASH
LSB for 8 M FLASH
LSB for 16M FLASH
LSB for 32M FLASH
LSB for 64M FLASH
FLASH Memory Map - High Boot Board
Location Description
FFFF FFFF PlanetCore Diagnostics and Utilities (512K)
 
FFF8 0000
FFF7 FFFF Application Space (256K)
 
FFF4 FFFF
FFF3 FFFF PlanetCore Boot Loader (256K)
 
FFF0 0000

If customers are currently using high boot boards, there is a possibility that when they receive a low boot board that they will accidentally erase the PlanetCore loader when they try to program their application. The reason for this is that the lowest address in flash memory is a logical place to begin programming applications so this will conflict with the low boot loader.

If the customer erases the PlanetCore loader, either in high or low boot, the board will need to be re-programmed. The customer can either return the boards to Embedded Planet to be re-programmed or use a BDM tool to re-program it themselves. The following outlines how to re-program the PlanetCore loader using a BDM tool. The instructions are not specific to any BDM tool, but will outline the basic steps.

  1. Attach the BDM to the debug port of the Embedded Planet CPU board.
  2. Follow the instructions for your BDM tool for further information on connecting to the target, powering the target, and executing the BDM software.
  3. Initialize the CPU board by using a BDM script file for the specific BDM tool. Embedded Planet has BDM script files for the HMI BDM tool. Contact Embedded Planet to obtain the files. The HMI BDM script files can be used as a starting point for other BDM tools.
  4. Once the script file has been initiated, the CPU board RAM should be accessible. Download the PCLxxx.MOT (where xxx is the version of the PlanetCore loader) file to the CPU RAM according to your BDM tool's documentation. The PCLxxx.MOT file is located on the documentation CD that came with the Embedded Planet product.
  5. Once the file has been downloaded to the CPU RAM, the program needs to be executed. Use the BDM tool to execute the downloaded program at address 0x100000. This will run the PlanetCore burner that will program the PlanetCore loader into flash memory. Wait approximately tens seconds and you should see a flashing red led on the CPU. This will indicate that the programming is done.
  6. Now follow the CPU board documentation to connect to the CPU board's monitor port to verify that the PlanetCore loader has been re-programmed.

Support | Contact | Company