딥 네트워크 - 딥러닝 모델 분석/네트웍 통신/카메라 3A 튜닝 분야

How can I implement BL_JUMP mode in eboot to jump to a existing OS 본문

Kernel Porting/Windows 관련

How can I implement BL_JUMP mode in eboot to jump to a existing OS

파란새 2008. 2. 9. 06:27
자료출처 : http://microsoft-personal-operating-systems.hostweb.com/TopicMessages/microsoft.public.windowsce.embedded/2095530/1/Default.aspx

I placed eboot at the start of Flash chip whose physical addreass base is
0x60000000, and place Os image at 0x60080000. In the Bootloadermain() I
added the following code:

case BL_JUMP:
// (5) final call to launch the image. never returned

if((dwAction == BL_JUMP)&&(dwLaunchAddr == 0))
{
EdbgOutputDebugString("marviny -- BL_JUMP mode returned from
OEMPreDownload()!!!!\n");
dwLaunchAddr = 0x60080000;
EdbgOutputDebugString("So we JUMP to default address at 0x%X...\r\n",
dwLaunchAddr);
//
// Delay 1 Millisecond to flush the Uart fifo and stop the UART.
//
if(bEthLaunch)
{
DelayInuSec(1000);
// OEMUartStop();
}

((PFN_LAUNCH)(dwLaunchAddr))();

EdbgOutputDebugString("SpinForever...\r\n");
SPIN_FOREVER;
}

There is no Launch() function in my Bsp, but there is a typedef:

typedef VOID (*PFN_LAUNCH)(VOID);

'Kernel Porting > Windows 관련' 카테고리의 다른 글

WINCE 어드레스 맵핑 ....  (0) 2008.02.08