123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- NAND boot on PPC440 platforms
- This document describes the U-Boot NAND boot feature as it
- is implemented for the AMCC Sequoia (PPC440EPx) board.
- The PPC440EP(x)/GR(x) cpu's can boot directly from NAND FLASH,
- completely without NOR FLASH. This can be done by using the NAND
- boot feature of the 440 NAND flash controller (NDFC).
- Here a short description of the different boot stages:
- a) IPL (Initial Program Loader, integrated inside CPU)
- Will load first 4k from NAND (SPL) into cache and execute it from there.
- b) SPL (Secondary Program Loader)
- Will load special U-Boot version (NUB) from NAND and execute it. This SPL
- has to fit into 4kByte. It sets up the CPU and configures the SDRAM
- controller and the NAND controller so that the special U-Boot image can be
- loaded from NAND to SDRAM.
- This special image is build in the directory "nand_spl".
- c) NUB (NAND U-Boot)
- This NAND U-Boot (NUB) is a special U-Boot version which can be started
- from RAM. Therefore it mustn't (re-)configure the SDRAM controller.
- On 440EPx the SPL is copied to internal SRAM before the NAND controller
- is set up. While still running from cache, I experienced problems accessing
- the NAND controller.
- Example: Build and install NAND boot image for Sequoia (440EPx):
- a) Configure for sequoia with NAND boot support:
- b) Build image(s)
- This will generate the SPL image in the "nand_spl" directory:
- nand_spl/u-boot-spl.bin
- Also another image is created spanning a whole NAND block (16kBytes):
- nand_spl/u-boot-spl-16k.bin
- The main NAND U-Boot image is generated in the toplevel directory:
- u-boot.bin
- A combined image of u-boot-spl-16k.bin and u-boot.bin is also created:
- u-boot-nand.bin
- This image should be programmed at offset 0 in the NAND flash:
- September 07 2006, Stefan Roese <sr@denx.de>
|