[U-Boot] [PATCH 2/2][v2] Add readme of how to boot from espi flash for p4080ds.

Scott Wood scottwood at freescale.com
Tue Nov 16 22:54:32 CET 2010


On Tue, 16 Nov 2010 11:34:43 +0100
Wolfgang Denk <wd at denx.de> wrote:

> Dear Shaohui Xie,
> 
> In message <1289897403-24602-1-git-send-email-b21989 at freescale.com> you wrote:
> >
> > +The P4080 is capable of booting from SPI. The bootup process can be divided into
> > +two stages: the first stage will load RCW and write configuration registers to
> > +initialize SPI interface, and configure one CPC as 1M SRAM, and loads U-boot image
> > +to CPC. The second stage will configure all the hardware and boot up to U-Boot
> > +command line.
> > +
> > +The PBL image contains three parts, the first is RCW, the second is PBI commands
> > +performs configuration registers write, the third is the 512KB u-boot image. The
> > +PBL image is produced by tool pbl_image_tool.html.
> 
> Please explain abbreviations. What's PBI? CPC? 

PBI is pre-boot initialization.

CPC is corenet platform cache -- a.k.a. L3 cache.

> What is "pbl_image_tool.html"?  I doubt that a HTML page can be used
> as tool?

The html file contains a javascript-based tool.

> And where can this tool be found?  And why is it not part of the
> U-Boot distribution?

It *may* be bundled with the BSP -- not sure.

It would be really nice if it were made generally available, though I
don't know if there are any plans for that.  Certainly we shouldn't be
referring users towards it if it's not publicly available.

> > +1. Producing RCW
> > +Copy RCW of u-boot dump and paste it to tab "Tools" of the tool and choose
> > +"Boot" and change PBI_SRC to "0b0101 - SPI 24b Addressing", change BOOT_LOC to
> 
> You really mean one has to go to some web page and manually copy and
> paste information there?
> 
> To build some image?
> 
> May I ask how you do automatic regression testing?

We usually use xxd to turn a hex dump of an RCW into a binary.  You
only need the tool if you want something interactive to make changes to
the RCW.

The problem with providing such a hexdump here is that it would contain
other settings that may not be appropriate for the board's
configuration.  RCWs on p4080 are a lot more complicated than on older
chips; it's no longer practical to embed a near-universal default
RCW in the U-Boot build.

> > +2. Producing ACS File
> 
> What is ACS?

Don't know, I don't even have a reference to that in my copy of the RCW
tool. :-P

> > +	make P4080DS_PBL_BOOT_INDIRECT_config
> > +	make CROSS_COMPILE=powerpc-none-linux-gnuspe- all
> > +	xxd u-boot.bin > u-boot.xxd
> 
> > +3. Producing PBI commands
> > +Switch to tab "PBI" and paste commands below into text field (please note these
> > +commands are for CPC1 used as SRAM only, change corresponding register setting
> > +if CPC2 need to be used as SRAM), then choose "ACS File (XXD Object Dump)",
> > +change Offset to "f80000", and click "Browse" to select the u-boot.xxd file
> > +produced in step 2, and click "Add PBI Data", after it finished, paste
> > +"09138000 00000000" and "091380c0 00000000" at the end.
> 
> This must be a bad joke.
> 
> Can you not provide a plain and simple AUTOMATIC way to get this
> result? some plain stupid command line tool? Something that works as
> a simple "make XXX" ?  So it can be scripted / automatized / used?

Yes, a simple C tool to take an existing PBL or RCW dump and "espi-ize"
it into a PBL dump would be nice.  The user will still need to acquire
the existing RCW manually.  This only needs to be done once on a board;
it's not part of building a U-Boot image.

-Scott



More information about the U-Boot mailing list