zedboard 无线网卡移植问题
0赞目标开发板:zedboard
操作系统:ubuntu-12.04-desktop-amd64
交叉编译器:arm-xilinx-linux-gnueabi-
无线网卡驱动版本:rtl8192CU_linux_v2.0.1324.20110126.tar.gz
内核版本:linux-digilent-3.3.0-digilent-12.07-zed-beta.tar.gz
移植步骤
解压内核
/home/azzuri/linux-digilent-3.3.0-digilent-12.07-zed-beta解压网卡驱动并放到文件夹
/home/azzuri/linux-digilent-3.3.0-digilent-12.07-zed-beta/drivers/net/wireless修改/home/azzuri/linux-digilent-3.3.0-digilent-12.07-zed-beta/drivers/net/wireless文件夹下Makefile和Kconfig
Makefile下添加
obj -$(CONFIG_RTL8192CU) += rtl8192cu/
Kconfig下添加
source"drivers/net/wireless/rtl8192cu/Kconfig"
修改驱动中Makefile
CONFIG_PLATFORM_I386_PC=n
CONFIG_PLATFORM_ANDROID_X86=n
CONFIG_PLATFORM_ARM_S3C2K4=n
CONFIG_PLATFORM_ARM_PXA2XX=n
CONFIG_PLATFORM_ARM_S3C6K4=y
CONFIG_PLATFORM_ARM_MX51_241H= n
CONFIG_PLATFORM_ARM_MX51_420C= n
CONFIG_PLATFORM_MIPS_RMI=n
CONFIG_PLATFORM_RTD2880B=n
CONFIG_PLATFORM_MIPS_AR9132=n
CONFIG_PLATFORM_MT53XX=n
CONFIG_PLATFORM_RTK_DMP=n
CONFIG_PLATFORM_ARM_TCC8900=n
ifeq ($(CONFIG_PLATFORM_ARM_S3C6K4), y)
EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
ARCH := arm
CROSS_COMPILE := arm-none-linux-gnueabi-
KVER := 3.3.0
KSRC ?= /home/azzuri/linux-digilent-3.3.0-digilent-12.07-zed-beta
endif编译内核
进入文件夹/home/azzuri/linux-digilent-3.3.0-digilent-12.07-zed-beta
make ARCH=arm CROSS_COMPILE=arm-xilinx-linux-gnueabi- digilent_zed_deconfig
make ARCH=arm CROSS_COMPILE=arm-xilinx-linux-gnueabi- menuconfig
选择完成后,退出保存,编译内核
make ARCH=arm CROSS_COMPILE=arm-xilinx-linux-gnueabi-
出现错误:
In file included from drivers/net/wireless/rtl8192cu/include/drv_types.h:80:0,
from drivers/net/wireless/rtl8192cu/core/rtw_cmd.c:24:
drivers/net/wireless/rtl8192cu/include/rtw_xmit.h:343:24: error: field 'xmit_tasklet' has incomplete type
In file included from drivers/net/wireless/rtl8192cu/include/drv_types.h:81:0,
from drivers/net/wireless/rtl8192cu/core/rtw_cmd.c:24:
drivers/net/wireless/rtl8192cu/include/rtw_recv.h:217:24: error: field 'recv_tasklet' has incomplete type
In file included from drivers/net/wireless/rtl8192cu/include/drv_types.h:86:0,
from drivers/net/wireless/rtl8192cu/core/rtw_cmd.c:24:
drivers/net/wireless/rtl8192cu/include/rtw_io.h:35:28: fatal error: linux/smp_lock.h: No such file or directory
compilation terminated.
make[4]: *** [drivers/net/wireless/rtl8192cu/core/rtw_cmd.o] Error 1
make[3]: *** [drivers/net/wireless/rtl8192cu] Error 2
make[2]: *** [drivers/net/wireless] Error 2
make[1]: *** [drivers/net] Error 2
make: *** [drivers] Error 2
不知道是哪里出了问题,大家有知道的帮帮忙指出一下,十分感谢!
参考
http://blog.csdn.net/yake827/article/details/41870445
http://blog.csdn.net/yake827/article/details/38126063
http://blog.csdn.net/hunanchenxingyu/article/details/19914921
