Booting from SPI flash

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

Booting from SPI flash

Jump to solution
1,010 Views
veerendranathj
Contributor III

Hi,

when we select booting from eSPI flash using configuration buttons... pre-boot loader (PBL) will initialize the communication between the booting medium(eSPI/eLBC/I2C/SD) to load RCW but according to following doc we are defining eSPI controller initialization in PBI commands... But how this is possible to load RCW before initializing eSPI...

Doc: http://www.nxp.com/files/training/doc/dwf/DWF13_APF_ENT_T0881.pdf

Thanks and Regards,

Veerendranath

Tags (4)
0 Kudos
1 Solution
780 Views
r8070z
NXP Employee
NXP Employee


Have a great day,

After reset the PBL uses eSPI interface with hardware wired settings. This only way to load RCW from the eSPI interface and start pre-boot initialization (PBI) from the eSPI interface. However during PBI from the eSPI interface the PBL can change the eSPI registers. Of course it is should be done carefully. So if you skip section:

#Initialize eSPI controller

09110000 80000403

09110020 2d170008

09110024 00100008

09110028 00100008

0911002c 00100008

the BPL still can load u-boot. I guess that main goal of the author was PBL command

09110020 2d17000

i.e. changing the SPMODE0 register in order to speed-up eSPI interface.

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

View solution in original post

0 Kudos
3 Replies
781 Views
r8070z
NXP Employee
NXP Employee


Have a great day,

After reset the PBL uses eSPI interface with hardware wired settings. This only way to load RCW from the eSPI interface and start pre-boot initialization (PBI) from the eSPI interface. However during PBI from the eSPI interface the PBL can change the eSPI registers. Of course it is should be done carefully. So if you skip section:

#Initialize eSPI controller

09110000 80000403

09110020 2d170008

09110024 00100008

09110028 00100008

0911002c 00100008

the BPL still can load u-boot. I guess that main goal of the author was PBL command

09110020 2d17000

i.e. changing the SPMODE0 register in order to speed-up eSPI interface.

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos
780 Views
dbevans42
Contributor I

What are the hardware wired settings used to load the RCW from eSPI interface?  Are these the default/reset values for the SPMODE0 register?  Specifically I am wondering does the data needs to be MSB or LSB first?  What is the clock speed used?

0 Kudos
780 Views
veerendranathj
Contributor III

Thanks.. :smileyhappy:

0 Kudos