blob: b49c3c07c40586545ec82ff3349dd58ebf2d39ee [file] [log] [blame] [edit]
Overview
--------
The MPC8544DS system is similar to the 85xx CDS systems such
as the MPC8548CDS due to the similar E500 core. However, it
is placed on the same board as the 8641 HPCN system.
Flash Banks
-----------
Like the 85xx CDS systems, the 8544 DS board has two flash banks.
They are both present on boot, but there locations can be swapped
using the dip-switch SW10, bit 2.
However, unlike the CDS systems, but similar to the 8641 HPCN
board, a runtime reset through the FPGA can also affect a swap
on the flash bank mappings for the next reset cycle.
Irrespective of the switch SW10[2], booting is always from the
boot bank at 0xfff8_0000.
Memory Map
----------
0xff80_0000 - 0xffbf_ffff Alternate bank 4MB
0xffc0_0000 - 0xffff_ffff Boot bank 4MB
0xffb8_0000 Alternate image start 512KB
0xfff8_0000 Boot image start 512KB
Flashing Images
---------------
For example, to place a new image in the alternate flash bank
and then reset with that new image temporarily, use this:
tftp 1000000 u-boot.bin.8544ds
erase ffb80000 ffbfffff
cp.b 1000000 ffb80000 80000
pixis_reset altbank
To overwrite the image in the boot flash bank:
tftp 1000000 u-boot.bin.8544ds
protect off all
erase fff80000 ffffffff
cp.b 1000000 fff80000 80000
Other example U-Boot image and flash manipulations examples
can be found in the README.mpc85xxcds file as well.
The pixis_reset command
-----------------------
A new command, "pixis_reset", is introduced to reset mpc8641hpcn board
using the FPGA sequencer. When the board restarts, it has the option
of using either the current or alternate flash bank as the boot
image, with or without the watchdog timer enabled, and finally with
or without frequency changes.
Usage is;
pixis_reset
pixis_reset altbank
pixis_reset altbank wd
pixis_reset altbank cf <SYSCLK freq> <COREPLL ratio> <MPXPLL ratio>
pixis_reset cf <SYSCLK freq> <COREPLL ratio> <MPXPLL ratio>
Examples;
/* reset to current bank, like "reset" command */
pixis_reset
/* reset board but use the to alternate flash bank */
pixis_reset altbank
/* reset board, use alternate flash bank with watchdog timer enabled*/
pixis_reset altbank wd
/* reset board to alternate bank with frequency changed.
* 40 is SYSCLK, 2.5 is COREPLL ratio, 10 is MPXPLL ratio
*/
pixis-reset altbank cf 40 2.5 10
Valid clock choices are in the 8641 Reference Manuals.
Using the Device Tree Source File
---------------------------------
To create the DTB (Device Tree Binary) image file,
use a command similar to this:
dtc -b 0 -f -I dts -O dtb mpc8544ds.dts > mpc8544ds.dtb
Likely, that .dts file will come from here;
linux-2.6/arch/powerpc/boot/dts/mpc8544ds.dts
After placing the DTB file in your TFTP disk area,
you can download that dtb file using a command like:
tftp 900000 mpc8544ds.dtb
Burn it to flash if you want.
Booting Linux
-------------
Place a linux uImage in the TFTP disk area too.
tftp 1000000 uImage.8544
tftp 900000 mpc8544ds.dtb
bootm 1000000 - 900000
Watch your ethact, netdev and bootargs U-Boot environment variables.
You may want to do something like this too:
setenv ethact eTSEC3
setenv netdev eth1