随笔 - 8, 文章 - 6, 评论 - 8, 引用 - 0
数据加载中……

移植eboot

注意事项
xllp_lcd.h,在D:\Source_Code\WINCE500\PUBLIC\COMMON\OAK\CSP\ARM\INTEL\PXA27X\XLLP\INC下的该文件没有以下几行,而Armland自己多加了,这几行的内容很明显应该要我们自己加的,自己新建一个专属目录放新添的头文件还是其它?我看每个BSP底下都有src/inc文件夹,这应该是用来放只属于自己板子的信息,那么我们可以将Mailstone的文件夹复制过来,像以下的这些多加的部分就加到里面的比如mainstoneii.h,如果自己建新文件的话可能会很麻烦,因为会需要在很多源文件下添加include。
#define  SHARP57    7
// Sharp 800x600 12.1 display
#define  SHARP121   8
#define  VGA800X600  9
#define  VGA640X480  10
#define SHARP57_PIXEL_CLOCK_FREQUENCY     910   // 9.10 MHz
#define SHARP121_PIXEL_CLOCK_FREQUENCY    3168
#define VGA640X480_PIXEL_CLOCK_FREQUENCY    2500   //VGA 640*480 
#define VGA800X600_PIXEL_CLOCK_FREQUENCY    5000   //VGA 800*600  

目前由于编译main文件出错,暂时在其中添加了#define  SHARP57    7一行。

 


操作及结果
建一些Dirs文件,复制eboot源码到相应位置,sources文件用mainstone的,在arm_xmu下放一个sources.cmn,也是mainstone的

set _WINCEROOT=d:\Source_Code\WINCE500

cd %_WINCEROOT%\public\common\oak\misc

set _TGTPROJ=arm_xmu_eboot

set _PROJECTROOT=%_WINCEROOT%\PBWorkspaces\%_TGTPROJ%\WINCE500\arm_xmu_ARMV4I

wince ARMV4I arm_xmu_eboot arm_xmu

create a cesysgen.bat in D:\Source_Code\WINCE500\PBWorkspaces\arm_xmu_eboot\wince500\arm_xmu_ARMV4I\oak\misc\, use that one in armland,sysgen required this

sysgen
**********************************************************************
sysgen在%_PROJECTROOT%里产生了一些文件,主要一个是cesysgen文件夹,内含oak/ddk/sdk三个文件夹,此过程是必要的,不然会有很多头文件找不到,看显示似乎有些地方仍有问题,现在还不确定
**********************************************************************
D:\Source_Code\WINCE500>sysgen
Starting sysgen phase for project ( common )


User selected the following SYSGEN variables
环境变量 SYSGEN 没有定义


Checking for uncleared variables
Done checking for uncleared variables

Report:
环境变量 SYSGEN 没有定义
系统找不到指定的路径。
CE_MODULES=coredll nk
COREDLL_COMPONENTS=coremain lmem showerr thunks corecrt corestrw snotify coregwe
stub coreimmstub locmini multiui nostrsafe
NK_COMPONENTS= nknocomp nknomapfile
环境变量 SYSGEN_ 没有定义
**************************************************************************

在D:\Source_Code\WINCE500\PLATFORM\Common下build -c,生成编译eboot所需的一些库,放在D:\Source_Code\WINCE500\PLATFORM\Common\lib\下

复制Mainstoneii/src的common文件夹到arm_xmu/src下,并修改dirs文件,原因是因为这里会生成编译eboot所需的一些库,放在D:\Source_Code\WINCE500\PLATFORM\arm_xmu\lib\下

build -c
**************************************************************************
这一步在D:\Source_Code\WINCE500\PLATFORM\arm_xmu\里产生了lib/target两个文件夹和build.dat
**************************************************************************

至此可以生成所需的文件,比如eboot.nb0/eboot.bin/eboot.exe等。

posted on 2006-08-21 21:08 embedder 阅读(2515) 评论(4)  编辑 收藏 引用

评论

# re: 移植eboot  回复  更多评论   

先建立eboot,生成eboot。调试通过后再建BSP!!!!
建BSP可以用wizard来建立,没那么多手工建的。

现在只谈eboot

common下有lib文件夹,不要build,我说过很多次了!!!!!!!
2006-08-22 17:04 | LeeXC

# re: 移植eboot  回复  更多评论   

认真看文档,很多问题自己都能解决的!!!!
2006-08-22 17:05 | LeeXC

# re: 移植eboot  回复  更多评论   

遇到的具体问题如下描述:
我用板子厂商提供的bsp新建了一个系统(TinyKernel),没有加入任何其他的组件。在系统建立过程中出现如下提示信息:
User selected the following SYSGEN variables
环境变量 SYSGEN 没有定义


Checking for uncleared variables
Done checking for uncleared variables

Report:
环境变量 SYSGEN 没有定义
系统找不到指定的路径。
CE_MODULES=coredll nk
COREDLL_COMPONENTS=coremain lmem showerr thunks corecrt corestrw snotify coregwestub coreimmstub locmini multiui nostrsafe
NK_COMPONENTS= nknocomp nknomapfile
环境变量 SYSGEN_ 没有定义
BUILD: [00:0000000005:PROGC ] Computing include file dependencies:
BUILD: [00:0000000006:PROGC ] Checking for SDK include directory: C:\WINCE500\sdk\ce\inc.
BUILD: [00:0000000007:PROGC ] Scan \WINCE500\PLATFORM\COMMON\SRC\COMMON\CACHE\
BUILD: [00:0000000008:PROGC ] Scan \WINCE500\PLATFORM\COMMON\SRC\COMMON\IO\BASE\
BUILD: [00:0000000009:PROGC ] Scan \WINCE500\PLATFORM\COMMON\SRC\COMMON\IO\PCMCIA\
BUILD: [00:0000000010:PROGC ] Scan \WINCE500\PLATFORM\COMMON\SRC\COMMON\IO\PCI\
BUILD: [00:0000000011:PROGC ] Scan \

在系统建立后:由如下提示信息
reating rom file C:\WINCE500\PBWorkspaces\ep9312\RelDir\ep931x_ARMV4I_Release\NK.nb0
Done!
makeimg: Check for C:\WINCE500\PBWorkspaces\ep9312\RelDir\ep931x_ARMV4I_Release\PostRomImage.bat to run.
makeimg: Check for C:\WINCE500\PBWorkspaces\ep9312\RelDir\ep931x_ARMV4I_Release\PostMakeImg.bat to run.
makeimg: Change directory to C:\WINCE500.
makeimg: run command: cmd /C C:\WINCE500\public\common\oak\misc\pbpostmakeimg
驱动器 C 中的卷没有标签。
卷的序列号是 A804-FC70
C:\WINCE500\PBWorkspaces\ep9312\RelDir\ep931x_ARMV4I_Release 的目录
2007-07-10 16:18 374,527 NK.bin
1 个文件 374,527 字节
0 个目录 957,022,208 可用字节
BLDDEMO: ep9312 build complete.

ep9312 - 0 error(s), 2 warning(s)
通过以太网下载到目标板后无法启动系统.
在串口提示如下信息:
Sent BOOTME to 255.255.255.255
Locked Down Link 1
Src IP 192.168.1.201 Port 0800 Dest IP 192.168.1.108 Port 0C88
EthDown::TFTPD_OPEN::boot.bin
-EbootSendBootmeAndWaitForTftp
Found pTOC signature.
ROMHDR at Address 00200044h
RomHdr.ulRAMStart=82000000h RomHdr.physfirst=80200000h.
Got EDBG_CMD_JUMPIMG
Got EDBG_CMD_CONFIG, flags:0x00000000
EBOOT: pCfgData = 0x5F16A, pCfgData->Flags
INFO: Jumping to image at 0x00201006...
Windows CE Kernel for ARM (Thumb Enabled) Built on Jun 24 2004 at 18:25:00
ProcessorType=0920 Revision=0
sp_abt=ffff5000 sp_irq=ffff2800 sp_undef=ffffc800 OEMAddressTable = 80201150
InitClock...
Processor = 199Mhz, Bus = 99Mhz
Sp=ffffc7cc
在PB中提示如下的信息:
The Kernel Debugger is waiting to connect with target.
请问问题出在哪里?好久都没有解决了,郁闷中。请给指条明路。
qq 9099065 email mewangel@sina.com
2007-07-11 15:22 | hit_mewangel

# re: 移植eboot  回复  更多评论   

看起来你的Eboot已经起来了,只是CE系统要与PB连接出了问题,这个应该是你建系统的步骤有错,试试:Build OS-set active configuration-Debug,Platform-setting-build options里选上“Enable Full Kernel Mode”和“Enable KITL”,“Enable Kernel Debugger”应该不用选,你也可以选上试试,这些弄好后重建系统;另外在Eboot启动后而尚未下载CE时,打开Target-Connectivity Option-Kernel Service Map,Download选Ethernet,点旁边的Settings选择里面出现的那项,Debugger选Kdstub,这些你应该已经选过了,再提醒下;现在下系统后应该就可以了
2007-07-11 18:53 | embedder
只有注册用户登录后才能发表评论。