DM9000网卡初始化错误

6410的板子, 昨天从EBOOT开始烧了一遍之后,无法进入系统,串口打印如下:

Starting auto-download ...
DM9000 ID is 0x90000a46
INFO: Probe: DM9000 is detected.
DM9000: MAC Address: 0:0:0:0:0:0
ERROR: InitEthDevice: Invalid MAC address.
ERROR: OEMPlatformInit: Failed to initialize Ethernet controller.

屡试不爽。

 

跑到bootloader下ether.c的InitEthDevice函数加了个返回值

 if (!pBSPArgs->kitl.mac[0] && !pBSPArgs->kitl.mac[1] && !pBSPArgs->kitl.mac[2])
 {
  OALMSG(OAL_ERROR, (TEXT("ERROR: InitEthDevice: Invalid MAC address./r/n")));
  bResult = TRUE;    // iceiilin added
  goto CleanUp;
 }

欺骗了一把勤勤恳恳的eboot,哄他继续干下去,于是系统得以顺利启动。

 

以为网卡挂了。早上问客服弄了个一键烧写,把EBOOT和OS用一张SD卡全自动地烧进去,系统不可思议地启动了。再擦干净用原来的办法一步步试了一次,依然顺利无比,网卡安静得像小猫。生活中充满了惊奇啊。

 

又是一个悬而未决的问题。希望哪天我能有能力把这篇文章补充完整。

你可能感兴趣的:(生活,OS)