dm9000在wince6.0上的移植过程

1、 dm9000a 文件夹放到 /WINCE600/PLATFORM/zylonite_mhlv/SRC/DRIVERS MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
并做以下修改 MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
A、g_szDm9ConfigParams[] 修改如下 MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
{ CID_IO_BASE_ADDRESS, 0x14000300, NDIS_STRING_CONST("IoAddress")}, MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
这项又硬件而定, ZW310 dm9000 地址为 0x14000300 MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
B、dm9isa.h 中修改如下 MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
#defineMzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
DM9000_DATA_OFFSETMzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
0x02
MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
这个参数取决于 CMD 接在 A 几上, A1 2 A2 4 MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
2、 打开在 driver 目录下的 dirs 文件,在该文件里将 dm9000 加入到 dirs MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
如: MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
…. MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
dm9000a/ MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
3、 添加 dm9000 注册项到系统中,在 platform.reg 添加如下, MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
CODE:
IF BSP_NODM9000 ! MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
[HKEY_LOCAL_MACHINE/Comm/DM9CE] MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
"DisplayName"="DM9000A/9010 ISA Fast Ethernet Adapter" MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
"Group"="NDIS" MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
"ImagePath"="dm9isa.dll" MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
[HKEY_LOCAL_MACHINE/Comm/DM9CE/Linkage] MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
"Route"=multi_sz:"dm9ce1" MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
[HKEY_LOCAL_MACHINE/Comm/DM9CE1] MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
"DisplayName"="DM9000A/9010 ISA Fast Ethernet Adapter" MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
"Group"="NDIS" MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
"ImagePath"="dm9isa.dll" MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
[HKEY_LOCAL_MACHINE/Comm/Tcpip/Linkage] MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
"Bind"="dm9ce1" MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
[HKEY_LOCAL_MACHINE/Comm/DM9CE1/Parms] MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
"BusNumber"=dword:0 MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
"BusType"=dword:1 MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
"XmitBuffer"=dword:20 MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
"RecvBuffer"=dword:20 MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
"IrqNumber"=dword:17 MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
"SysIntr"=dword:17 MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
[HKEY_LOCAL_MACHINE/Comm/DM9CE1/Parms/TcpIp] MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
"EnableDHCP"=dword:0 MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
"UseZeroBroadcast"=dword:0 MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
"DefaultGateway"="192.168.0.1" MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
"IpAddress"="192.168.0.11" MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
"Subnetmask"="255.255.255.0" MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
"DNS"="192.168.0.1" MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
ENDIF BSP_NODM9000 !
MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
注: MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
l"IrqNumber"=dword:17MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
感觉这个地方没有什么用,我就随便写了个,我试过写成别的值,也是可以的MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
l"SysIntr"=dword:17MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
这个要写成dm9000int端的中断产生的逻辑中断值,ZW310用的是GPIO102,逻辑中断值要用静态的。添加方法如下:MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
bsp_cfg.h
中添加 MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
#define SYSINTR_DM9000  (SYSINTR_FIRMWARE+7)    // 23MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
BSPIntrInit
()函数中添加 MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
OALIntrStaticTranslate(SYSINTR_DM9000,IRQ_GPIO_SHARE(PXA_GPIO_DEBUG_ETH_INT_ID));
MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
lOEMInterruptDisable()、OEMInterruptDone()、OEMInterruptEnable()、OEMInterruptHandler()中部需要添加对GPIO102的处理,对GPIO的所有pinBSP都已经统一实现,以后会对怎么实现,单独写一篇总结进行介绍。MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
4、dm9isa.dll编译进系统,修改platform.bib如下:MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
CODE:
IF BSP_NODM9000 ! MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
dm9isa.dll    $(_FLATRELEASEDIR)/dm9isa.dll    NK SHK MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
ENDIF BSP_NODM9000 !
MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
5、zylonite_mhlv.bat中添加并设置环境变量如下:MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
set BSP_NODM9000=MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
6、验证有没有成功移植  可以ping 192.168.0.11
MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
5、zylonite_mhlv.bat中添加并设置环境变量如下:MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
set BSP_NODM9000=MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
6、验证有没有成功移植  可以ping 192.168.0.11
MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
5、zylonite_mhlv.bat中添加并设置环境变量如下: MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
set BSP_NODM9000= MzýŸn€ÇÃ2zhanwei.seaskyer.netŽ¼Ò»²È2`Ä
6、验证有没有成功移植  可以ping 192.168.0.11

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值