ÈÕÆÚ£º2018-07-25
    ±¾Îĵµ½éÉÜÈçºÎ¼òÒ×ÐÞ¸Ä 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)¡±Ð޸ġ£
    
    ÐÞ¸ÄÖ®ºóµÄ´úÂëÈçÏ£º
    
    ±£´æÍ˳ö£¬uboot ¾Í¿ÉÒÔ»ñÈ¡»·¾³±äÁ¿ÖÐµÄ ethaddr ²ÎÊý¡£
2.kernel Ô´ÂëÐÞ¸Ä
    kernel Ô´ÂëÔÚÔ´Âë°ü½âѹµÃµ½Îļþ¼Ð¡°kernel_imx¡±Ï£¬½øÈëĿ¼ʹÓÃÃüÁî¡°vim arch/arm/mach-mx6/mx6_fec.c¡±´ò¿ªÎļþ¡£
    ÈçÏÂͼËùʾ£¬½«¡°void __init imx6_init_fec(struct fec_platform_data fec_data)¡±º¯ ÊýÐ޸ġ£
    
    ÐÞ¸ÄÖ®ºóµÄÔ´ÂëÈçÏ£º
    
3.²âÊÔ
    ±àÒë´úÂ룬ÉÕд¾µÏñ£¬½øÈë uboot ģʽ£¬ÈçÏÂͼËùʾ£¬Ê¹ÓÃÃüÁî¡°printenv¡±£¬¿ÉÒÔ²é Ôĵ½»·¾³±äÁ¿¡°ethaddr=22:33:56:18:89:67¡±£¬Ä¬È쵀 MAC µØÖ·ÊÇ¡°22:33:56:18:89:67¡±¡£
    
    ÖØÆôÖ®ºó£¬½øÈë android£¬ÔÚ¿ØÖÆÌ¨Ê¹ÓÃÃüÁî¡°ip link show¡±£¬ÈçÏÂͼËùʾ¡£Õâ¸ö MAC µØÖ·ºÍ uboot ÉèÖõĵØÖ·Ïàͬ¡£
    
    ÖØÆô¿ª·¢°å£¬½øÈë uboot ģʽ£¬È»ºóʹÓÃÃüÁî¡°setenv ethaddr 00:11:22:33:44:55¡±ÖØ ÐÂÉèÖà MAC µØÖ·£¬½Ó×ÅʹÓá°saveenv¡±ÃüÁî±£´æ»·¾³±äÁ¿£¬ÈçÏÂͼËùʾ¡£
    
    ÈçÏÂͼËùʾ£¬ÔÚ uboot ÖÐʹÓÃÃüÁî¡°printenv¡±£¬MAC µØÖ·ÔÚ uboot »·¾³±äÁ¿ÖÐÉèÖà Ϊ¡°ethaddr=00:11:22:33:44:55¡±
    
    ÖØÆô¿ª·¢°å£¬½øÈë android ϵͳ£¬ÔÙ´ÎʹÓá°ip link show¡±ÃüÁî²éÔÄ MAC µØÖ·£¬ÈçÏ ͼËùʾ£¬MAC µØÖ·ÒѾÐ޸ĹýÀ´ÁË¡£
    