本文档介绍如何简易修改迅为- iMX6 开发板 Android4.4 系统的 MAC 地址,在网络通信中, 会用到 MAC 地址,开发板源码中默认的 MAC 地址全部一样,这样会引起冲突,导致网络通 信故障。
iMX6 的 uboot 和 kernel 源码中默认带有通过环境变量设置 MAC 地址的源码,只需要 简单修改,即可添加上设置 MAC 地址功能。另外请注意,如果 MAC 地址不合法,在内核代码中会纠正,导致设置的 MAC 地址和系 统启动之后的 MAC 地址不一样。
1.uboot 源码修改uboot uboot 源码在源码包解压得到文件夹“bootable/bootloader/uboot-imx”下,进入目 录使用命令“vim lib_arm/board.c”打开文件。
uboot 在“stdio_init (); /* get the devices list going. */”这一行代码下添加调用获取 MAC 地址的环境变量的函数,如下图所示。
修改之后的源码如下:
//add by rty 20180724
eth_initialize(gd->bd);
//add end
保存“lib_arm/board.c”退出。
然后使用命令“vim drivers/net/mxc_fec.c”打开文件,如下图所示,将“static int fec_get_hwaddr(struct eth_device *dev, unsigned char *mac)”修改。