Wireless工具移植之RTL8188eus驱动移植

2019-07-13 09:23发布

RTL8188eus驱动版本: RTL8188EUS_linux_v4.3.0.3_10997.20140327.zip,该驱动源码包支持rtl8188eus和rtl8188etv的芯片。   一、交叉编译wireless_tools工具:
cd RTL8188EUS_linux_v4.3.0.3_10997.20140327/wireless_tools/
tar -xvfwireless_tools.30.rtl.tar.gz cdwireless_tools.30.rtl/ 修改Makefile即可交叉编译,具体方法见上一篇博客文章:《Wireless工具移植之wireless tools》
  二、rtl8188eus驱动移植:
2.1解压源码包:     cd driver/     tar -xvfrtl8188EUS_linux_v4.3.0.3_10997.20140327.tar.gz     cd rtl8188EUS_linux_v4.3.0.3_10997.20140327/
2.2、修改Makefile,找到自己的嵌入式平台,如果没有,就按照下面的例子添加:
    vi Makefile
    添加HI35XX平台相关的交叉编译工具:
    ######################Platform Related #######################
    CONFIG_PLATFORM_ARM_HI35XX= y
 
    ########################add #########################
    ifeq ($(CONFIG_PLATFORM_ARM_HI35XX), y)
    EXTRA_CFLAGS+= -DCONFIG_LITTLE_ENDIAN     ARCH:= arm     CROSS_COMPILE:= arm-hisiv100nptl-linux-     KVER:= 3.0.y     KSRC:= /work/Hi3518_SDK_V1.0.A.0/osdrv/kernel/linux-3.0.y     INSTALL_PREFIX:= /work/IPCAM_LIB/Wireless/RTL8188eus     MODULE_NAME:= rtl8188eu   //最终生成为rtl8188eu.ko     endif     ########################end #########################  
    参数说明
        EXTRA_CFLAGS:The EXTRA_CFLAGS is usually usedto carry some additional settings at compilation time through macrodefinitions.
        CONFIG_BIG_ENDIAN: Define some internal datastructure as big endian.         CONFIG_LITTLE_ENDIAN: Define some internal datastructure as little endian.         CONFIG_MINIMAL_MEMORY_USAGE:Forbetter performance in powerful platform, we allocate large physical continuousmemory as TX/RX IO buffers. In some embedded platform, there is chance to failto allocate memory. Define this macro to prevent this situation.         CONFIG_PLATFORM_ANDROID:Older Android kernel do not hasCONFIG_ANDROID defined. Define this macro to force the Android correspondingcode inside our driver to be compiled. For newer Android kernel, it has no needto define this macro, otherwise, warning message about redefinition will showup.           ARCH:The ARCH is used to specify thearchitecture of the target platform CPU, such as:arm, mips, i386, etc.         CROSS_COMPILE:The CROSS_COMPILE is used tospecify the toolchain prefix used for driver compilation.         KSRC:The KSRC is used to specify the pathof kernel source used for driver compilation.         MODULE_NAME:Different module name is assignedto drivers for different chips:
        Chip type          Defaultmodule name
        RTL8192CU-series    8192cu
        RTL8192CE-series    8192ce
        RTL8192DU-series    8192du
        RTL8192DE-series    8192de
        RTL8723AS-series    8723as
        RTL8723AU-series    8723au
        RTL8189ES-series    8189es
        RTL8188EU-series    8188eu
        RTL8723BS-series    8723bs
        RTL8723BU-series    8723bu
        If you wantto change the module name, you can set value of MODULE_NAME here.
      2.3、编译生成目标文件:
        make
        生成的文件名即你在Makefile中指定的MODULE_NAME以.ko为后辍。