uboot/board/freescale/mpc8536ds/README
<<
>>
Prefs
   1Overview:
   2=========
   3
   4The MPC8536E integrates a PowerPC processor core with system logic
   5required for imaging, networking, and communications applications.
   6
   7Boot from NAND:
   8===============
   9
  10The MPC8536E is capable of booting from NAND flash which uses the image
  11u-boot-nand.bin. This image contains two parts: a first stage image(also
  12call 4K NAND loader and a second stage image. The former is appended to
  13the latter to produce u-boot-nand.bin.
  14
  15The bootup process can be divided into two stages: the first stage will
  16configure the L2SRAM, then copy the second stage image to L2SRAM and jump
  17to it. The second stage image is to configure all the hardware and boot up
  18to U-Boot command line.
  19
  20The 4K NAND loader's code comes from the corresponding nand_spl directory,
  21along with the code twisted by CONFIG_NAND_SPL. The macro CONFIG_NAND_SPL
  22is mainly used to shrink the code size to the 4K size limitation.
  23
  24The macro CONFIG_SYS_RAMBOOT is used to control the code to produce the
  25second stage image. It's set in the board config file when boot from NAND
  26is selected.
  27
  28Build and boot steps
  29--------------------
  30
  311. Building image
  32        make MPC8536DS_NAND_config
  33        make CROSS_COMPILE=powerpc-none-linux-gnuspe- all
  34
  352. Change dip-switch
  36        SW2[5-8] = 1011
  37        SW9[1-3] = 101
  38        Note: 1 stands for 'on', 0 stands for 'off'
  39
  403. Flash image
  41        tftp 1000000 u-boot-nand.bin
  42        nand erase 0 a0000
  43        nand write 1000000 0 a0000
  44
  45Boot from On-chip ROM:
  46======================
  47
  48The MPC8536E is capable of booting from the on-chip ROM - boot from eSDHC
  49and boot from eSPI. When power on, the porcessor excutes the ROM code to
  50initialize the eSPI/eSDHC controller, and loads the mian U-Boot image from
  51the memory device that interfaced to the controller, such as the SDCard or
  52SPI EEPROM, to the target memory, e.g. SDRAM or L2SRAM, then boot from it.
  53
  54The memory device should contain a specific data structure with control word
  55and config word at the fixed address. The config word direct the process how
  56to config the memory device, and the control word direct the processor where
  57to find the image on the memory device, or where copy the main image to. The
  58user can use any method to store the data structure to the memory device, only
  59if store it on the assigned address.
  60
  61Build and boot steps
  62--------------------
  63
  64For boot from eSDHC:
  651. Build image
  66        make MPC8536DS_SDCARD_config
  67        make CROSS_COMPILE=powerpc-none-linux-gnuspe- all
  68
  692. Change dip-switch
  70        SW2[5-8] = 0111
  71        SW3[1]   = 0
  72        SW8[7]   = 0 - The on-board SD/MMC slot is active
  73        SW8[7]   = 1 - The externel SD/MMC slot is active
  74
  753. Put image to SDCard
  76        Put the follwing info at the assigned address on the SDCard:
  77
  78           Offset   |   Data     | Description
  79        --------------------------------------------------------
  80        | 0x40-0x43 | 0x424F4F54 | BOOT signature              |
  81        --------------------------------------------------------
  82        | 0x48-0x4B | 0x00080000 | u-boot.bin's size           |
  83        --------------------------------------------------------
  84        | 0x50-0x53 | 0x???????? | u-boot.bin's Addr on SDCard |
  85        --------------------------------------------------------
  86        | 0x58-0x5B | 0xF8F80000 | Target Address              |
  87        -------------------------------------------------------
  88        | 0x60-0x63 | 0xF8FFF000 | Execution Starting Address  |
  89        --------------------------------------------------------
  90        | 0x68-0x6B | 0x6        | Number of Config Addr/Data  |
  91        --------------------------------------------------------
  92        | 0x80-0x83 | 0xFF720100 | Config Addr 1               |
  93        | 0x84-0x87 | 0xF8F80000 | Config Data 1               |
  94        --------------------------------------------------------
  95        | 0x88-0x8b | 0xFF720e44 | Config Addr 2               |
  96        | 0x8c-0x8f | 0x0000000C | Config Data 2               |
  97        --------------------------------------------------------
  98        | 0x90-0x93 | 0xFF720000 | Config Addr 3               |
  99        | 0x94-0x97 | 0x80010000 | Config Data 3               |
 100        --------------------------------------------------------
 101        | 0x98-0x9b | 0xFF72e40c | Config Addr 4               |
 102        | 0x9c-0x9f | 0x00000040 | Config Data 4               |
 103        --------------------------------------------------------
 104        | 0xa0-0xa3 | 0x40000001 | Config Addr 5               |
 105        | 0xa4-0xa7 | 0x00000100 | Config Data 5               |
 106        --------------------------------------------------------
 107        | 0xa8-0xab | 0x80000001 | Config Addr 6               |
 108        | 0xac-0xaf | 0x80000001 | Config Data 6               |
 109        --------------------------------------------------------
 110        |              ......                                  |
 111        --------------------------------------------------------
 112        | 0x???????? | u-boot.bin                              |
 113        --------------------------------------------------------
 114
 115        then insert the SDCard to the active slot to boot up.
 116
 117For boot from eSPI:
 1181. Build image
 119        make MPC8536DS_SPIFLASH_config
 120        make CROSS_COMPILE=powerpc-none-linux-gnuspe- all
 121
 1222. Change dip-switch
 123        SW2[5-8] = 0110
 124
 1253. Put image to SPI flash
 126        Put the info in the above table onto the SPI flash, then
 127        boot up.
 128