阅读:1718回复:3
往i.MX21板子上移植WinCE的思路及问题
以前只是接触过CE应用程序的开发,现在需要在板子上做OS的定制和移植. 虽然看了一些资料还是挺迷茫, 向各位在论坛上的老手讨教点经验,请大家给点意见,谢谢!
我的硬件资源如下: CPU: MC9328MX21 CVK 存储设备: 2片32MB的SDRAM, 一片16MB的Intel Strata flash 接口: USB, 一个串口(调试用), 一个SD卡接口, JTAG, 以太网口( DM9000) 我已经从Freescale下了个标准板的BSP, 现问题如下: 1. 我理解的移植部分工作需要完成 eboot的修改+ 网卡驱动的编写. 因为标准板上用的是CS8900的网卡芯片, 而我的板子上用的是DM9000. 那么具体修改eboot里的哪些部分呢? 原来的汇编代码里CPU时钟设置之类的是否需要改动? 2. Freescale以及市面上的各种开发板都用一些烧写工具通过网络或者串口烧eboot, 具体到我的板子上,是否可用这些工具还是需要我写个烧写工具? |
|
沙发#
发布于:2008-07-18 19:08
我从Freescale下了个文件(FSL-WCE500-9-MX21ADS-DEMO),这个就是iMX21的标准板BSP了吧?
新手请教几个问题: 1. 关于dm9000的驱动,是不是分成两种(eboot里的和OAL里的)?我看了原来BSP里与网卡初始化相关的部分,感觉有挺多地方需要改。我所想到的如下: (1)main.c里 (2)ether.c里的InitEthDevice( ) (3)%platform\src\inc\bsp_base_reg_cfg.h 2. 我现在用的板子用的是一片16MB的Intel Strata flash,Freescale标准板用的是两片16MB的Burst Flash。这种情况下需要怎么改startup.s?我在startup.s里没有瞅见有关flash大小定义的函数啊。是不是改虚实映射相关的文件就可以了呢? 3. main.c ---OEMDebugInit()调用了串口初始化函数,好像应该根据串口的地址作修改。可是串口的地址一直找不到。 还望高手们不吝指教! |
|
板凳#
发布于:2008-08-06 08:57
有没有哪位使用过MX21平台的兄弟给点意见?
|
|
地板#
发布于:2008-08-06 13:03
eboot和OAL应该是属于一个层的吧,
9000移植的话一个放在EBOOT中,一个放在系统驱动中,就是可以放在...Src\Drivers目录下 EBOOT中的话代码好像是都在EBOOT文件下的,改好就可以。系统驱动使用的话,要把中断也改好,(...oal/intr.c) NOR FALSH没改过,在头文件中改一下大小就可以了吧,芯片没有换的话,关于控制器部分也不用改了(OALSetUpExtMemories),这个一般不会有什么问题 21上的调试串口有两个,UART1或是通过16C552扩的,在BSP_CFG中有选择,选一下就可以了。但是若是选择了UART1的话,(系统起来后还拿它当调试端口的话),就不能再做一般的COM口用了,注册表中要改掉,否则系统启动加载驱动时会挂住 |
|
|