Wireless工具移植之RTL8188eus驱动移植

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为后辍。

你可能感兴趣的:(Linux,Working,Notes)