AnsweredAssumed Answered

Has _BOOTROM_BOOT_DXE_SPI changed in 0.3 I need secondary boot

Question asked by tkireland on Jan 7, 2010
Latest reply on Jan 13, 2010 by tkireland

Hi

I am using _BOOTROM_BOOT_DXE_SPI to do a secondary SPI boot Here is the code:

 

#include <defBF537.h> /* provides function entry addresses */

 

.section program

 

_Reload:

 

/* R0, R1, R2 contain the parameters when called from 'C' */
/* The parameter is expected in R7 for the Boot Rom call */
R5 = R2; /* SPI_BAUD value */
R6 = R1; /* SPI SSEL number */
R7 = R0; /* load address */

 

P0.H = HI(0xef00016E);//HI(_BOOTROM_BOOT_DXE_SPI);
P0.L = LO(0xef00016E);//LO(_BOOTROM_BOOT_DXE_SPI);

 

JUMP (P0) ; /* jump to Boot ROM */

 

_Reload.end:

 

.GLOBAL _Reload;
.TYPE _Reload,STT_FUNC;
.GLOBAL _Reload.end;
.TYPE _Reload.end,STT_FUNC;

 

In Tracing throught the boot code I see the jump to _BOOTROM_BOOT_DXE_SPI at EF00000A is set to EF00072E but the boot menu jumps to EF000164, so I

artificially set the called boot routine to EF00016E. It still does not funtion properly.

 

I would seem the boot code has changed and I cannot find the source matching the disassembly.

Any ideas?

 

Tom Ireland

Outcomes