移植MT7620A+MT7610E驱动到Openwrt trunk(Linux Kernel 3.14.18)

MT7620

修改trunk/build_dir/target-mipsel_24kec+dsp_uClibc-0.9.33.2/linux-ramips_mt7620a/mt7620/rt2880/os/linux/rt_linux.c :1201行

  将:  

    pOSFSInfo->fsuid = current_fsuid();
    pOSFSInfo->fsgid = current_fsgid();

  修改为:

    pOSFSInfo->fsuid = *(int *)&current_fsuid();

    pOSFSInfo->fsgid = *(int *)&current_fsgid();

 

MT7610E

7610E驱动要修改的地方有2处

1.修改trunk/build_dir/target-mipsel_24kec+dsp_uClibc-0.9.33.2/linux-ramips_mt7620a/mt7610e..../os/linux/rt_linux.c :899行

  将:  

pOSFSInfo->fsuid = current_fsuid();

pOSFSInfo->fsgid = current_fsgid();

  修改为:

pOSFSInfo->fsuid = *(int *)&current_fsuid();

pOSFSInfo->fsgid = *(int *)&current_fsgid();

2. 修改trunk/build_dir/target-mipsel_24kec+dsp_uClibc-0.9.33.2/linux-ramips_mt7620a/mt7610e....../os/linux/pci_main_dev.c

  在#include区域后面增加如下代码:

#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,8,0)

#define __devexit

#define __devinit

#define __devinitdata

#endif

    修改如下代码:

#if LINUX_VERSION_CODE >= 0x20412

    remove:     __devexit_p(rt2860_remove_one),

#else remove: __devexit(rt2860_remove_one), #endif

   修改为:

#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,8,0)
    remove:     rt2860_remove_one,

#else

#if LINUX_VERSION_CODE >= 0x20412 remove: __devexit_p(rt2860_remove_one), #else remove: __devexit(rt2860_remove_one), #endif #endif

 

重新编译make V=99

 

整个世界都清净了。。。

你可能感兴趣的:(kernel)