kerneldoc: Add myself to the git-mailrc for kerneldoc
[platform/kernel/u-boot.git] / doc / README.pblimage
1 ------------------------------------------------------------------
2 Freescale PBL(pre-boot loader) Boot Image generation using mkimage
3 ------------------------------------------------------------------
4
5 The CoreNet SoC's can boot directly from eSPI FLASH, SD/MMC and
6 NAND, etc. These SoCs use PBL to load RCW and/or pre-initialization
7 instructions. For more details refer section 5 Pre-boot loader
8 specifications of reference manual P3041RM/P4080RM/P5020RM at link:
9 http://www.freescale.com/webapp/search/Serp.jsp?Reference+Manuals
10
11 Building PBL Boot Image and boot steps
12 --------------------------------------
13
14 1. Building PBL Boot Image.
15    The default Image is u-boot.pbl.
16
17    For eSPI boot(available on P3041/P4080/P5020):
18         To build the eSPI boot image:
19         make <board_name>_SPIFLASH_config
20         make u-boot.pbl
21
22    For SD boot(available on P3041/P4080/P5020):
23         To build the SD boot image:
24         make <board_name>_SDCARD_config
25         make u-boot.pbl
26
27    For Nand boot(available on P3041/P5020):
28         To build the NAND boot image:
29         make <board_name>_NAND_config
30         make u-boot.pbl
31
32
33 2. pblimage support available with mkimage utility will generate Freescale PBL
34 boot image that can be flashed on the board eSPI flash, SD/MMC and NAND.
35 Following steps describe it in detail.
36
37         1). Boot from eSPI flash
38         Write u-boot.pbl to eSPI flash from offset 0x0.
39         for ex in u-boot:
40         =>tftp 100000 u-boot.pbl
41         =>sf probe 0
42         =>sf erase 0 100000
43         =>sf write 100000 0 $filesize
44         Change SW1[1:5] = off off on off on.
45
46         2). Boot from SD/MMC
47         Write u-boot.pbl to SD/MMC from offset 0x1000.
48         for ex in u-boot:
49         =>tftp 100000 u-boot.pbl
50         =>mmcinfo
51         =>mmc write 100000 8 441
52         Change SW1[1:5] = off off on on off.
53
54         3). Boot from Nand
55         Write u-boot.pbl to Nand from offset 0x0.
56         for ex in u-boot:
57         =>tftp 100000 u-boot.pbl
58         =>nand info
59         =>nand erase 0 100000
60         =>nand write 100000 0 $filesize
61         Change SW1[1:5] = off on off off on
62         Change SW7[1:4] = on off off on
63
64 Board specific configuration file specifications:
65 ------------------------------------------------
66 1. Configuration files rcw.cfg and pbi.cfg must present in the
67 board/freescale/corenet_ds/, rcw.cfg is for RCW, pbi.cfg is for
68 PBI instructions. File name must not be changed since they are used
69 in Makefile.
70 2. These files can have empty lines and lines starting with "#" as first
71 character to put comments
72
73 Typical example of rcw.cfg file:
74 -----------------------------------
75
76 #PBL preamble and RCW header
77 aa55aa55 010e0100
78 #64 bytes RCW data
79 4c580000 00000000 18185218 0000cccc
80 40464000 3c3c2000 58000000 61000000
81 00000000 00000000 00000000 008b6000
82 00000000 00000000 00000000 00000000
83
84 Typical example of pbi.cfg file:
85 -----------------------------------
86
87 #PBI commands
88 #Initialize CPC1
89 09010000 00200400
90 09138000 00000000
91 091380c0 00000100
92 09010100 00000000
93 09010104 fff0000b
94 09010f00 08000000
95 09010000 80000000
96 #Configure LAW for CPC1
97 09000d00 00000000
98 09000d04 fff00000
99 09000d08 81000013
100 09000010 00000000
101 09000014 ff000000
102 09000018 81000000
103 #Initialize eSPI controller
104 09110000 80000403
105 09110020 2d170008
106 09110024 00100008
107 09110028 00100008
108 0911002c 00100008
109 #Flush PBL data
110 09138000 00000000
111 091380c0 00000000
112
113 ------------------------------------------------
114 Author: Shaohui Xie<Shaohui.Xie@freescale.com>