This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

C6657如何重新编译emac lib库



我们仿照EVM6657开发板自己做了一块板子,在调试网络通信时发现程序卡在循环读取SGMII_REGS->STATUS 这个地方了,读取此寄存器,返回值是0x30,表示网络自动协商没有完成,没有LINK UP。后续发现是我们自己的开发板在一些硬件配置上与开发板不同,修改后程序运行正常。

现在我们想把关于emac改动后编译成lib库,就不需要再加入底层驱动修改了。如何重新编译emac lib库?麻烦请教一下。

  • emac lib? /drv/emac?还是transport的nimu驱动?
    在pdk/packages下面有个配置环境的pdksetupenv.bat/sh脚本,修改下执行,然后make就ok了呀;
    也可以自己把源码都拉到ccs里,编译成库或直接把源码加到工程里
  • 是drv/emac_lib,在build下可以生成ti.drv.emac.ae66。在实际的“NIMU_emacExample_EVMC6657C66BiosExampleProject”工程下会调用该库文件。该库文件因为编译不对,所以我们自己开发板运行会有问题。也尝试过导入到CCS,由于TI 官方给的makefile显示的是“no rules to make  target”,所以怀疑emac make给的有问题。问题如下图所示:

  • 不能这么编,要在顶层的makefile开始,make 指定用哪个板子/大小端/核和编译的组件,然后会遍历到emac,单独编会少环境变量。