run u-boot from nand (stored in PBI)

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

run u-boot from nand (stored in PBI)

1,264 Views
t_alex
Contributor III

Hi,

I following the instructions in Infocentre, under U-boot-> eSPI/SD/NAND boot but it does not seem to work.

http://www.freescale.com/infocenter/index.jsp?topic=%2FQORIQSDK%2F2880375.html

My platform is P3041DS, and I stored the PBL.bin into NAND. I also configured SW1 and SW7 as per the instruction on the page.

However the UART console shows nothing. To have another to check if u-boot is running, in PBI  I set GPIO18 to high and at the beginning of  start_e500, at set GPIO18 to low. However the state of the pin still remains high.

Here is extract of the PBI code from codewarrior:

#set gpio18 to output hi

09130000 00002000

09130008 00002000

#flush

09138000 00000000

091380C0 00000000

#Clear CPC1

09010000 00200400

09138000 00000000

091380c0 00000100

#Initialize CPC1 as 1MB SRAM

09010100 00000000

09010104 fff0000b

09010f00 08000000

09010000 80000000

#Configure LAW for CPC1

09000d00 00000000

09000d04 fff00000

09000d08 81000013

09000010 00000000

09000014 ff000000

09000018 81000000

#Flush data

09138000 00000000

091380c0 00000000

#u-boot part

.......

#Flush data

09138000 00000000

091380c0 00000000

Is there any other things I should do? Anybody successfully tried out as instructed from the page?

Labels (1)
Tags (2)
0 Kudos
3 Replies

756 Views
addiyi
NXP Employee
NXP Employee

Hi Alex,

Besides the steps provided under U-boot-> eSPI/SD/NAND boot, make sure about the following aspects:

- in rcw you set the RCW source and BOOT location to NAND;

- convert u-boot.bin into u-boot.xxd;

- in QCS tool, switch to tab "PBI" and paste PBI commands into text field, then choose "ACS File (XXD Object Dump)", change Offset to "f80000", and click "Browse" to select the u-boot.xxd file and click Add;

- content of the "u-boot.xxd" will be pasted after the commands, then paste "09138000 00000000" and "091380c0 00000000" at the end. Click "Apply".

- generate the PBL image

- for NAND boot, make sure SW1[1:5]=01001 and SW7[1:4]=1001

- write the PBL image to NAND flash using CW, starting with address 0x0;

Adrian

756 Views
t_alex
Contributor III

Finally I can run after building P3041DS_NAND. 

0 Kudos

756 Views
t_alex
Contributor III

Hi Andrian,

I believed I did all the steps correctly, but I will check again tomorrow.

I did not use CW to write to NAND flash but I boot with the P3041DS default settings (RCW from NOR) and perform writing to NAND using u-boot commands.

I realize i may have not used the correct u-boot image. I used P3041DS image, not P3041DS_NAND. However both should have the same initial start_e500 right?

One more question: what is the purpose of RAMBOOT_PBL option?

0 Kudos