rtl8188eu无线网卡驱动移植

基于3.14内核rtl8188eu驱动移植
时间:2016-01-08 作者:华清远见

最近的项目上要用到3.14的内核,我们需要一个可以使用wifi连接外网的文件系统,我们的wifi模块使用的是rtl8188eus,所以需要移植一个rtl8188eu的驱动。

首先去网上找相关8188eu的驱动源码,我这里使用的是rtl8188EUS_rtl8189ES_linux_v4.1.1_4235.20120606。

还需要使用到linux-3.14内核的源码,这两样准备完毕后,源码就齐了。

将rtl8188的驱动解压后,需要添加一个适合于我们平台的编译选项,操作如下:

vi Makefile

将原Makefile中关于CONFIG_PLATFORM_I386_PC = y改成 n

根据其他arm平台添加一个 CONFIG_PLATFORM_ARM_SMDK4x12 = y

然后在适当位置添加如下(356-362行内容):

退出保存后,执行make

在linux/osdep_service.h下,注释掉1360行对应的daemonize(“%s”,”RTKTHREAD);

继续编译,错误如下:

这个错误的原因是3.14内核不支持这些函数,这些函数的名称被换成了其他名称的函数,这里的主要功能是实现proc文件系统,这里我们选择注释掉。

vi os_dep/linux/os_intfs.c

注释掉rtw_proc_init_one()函数内部所有代码

注释掉rtw_proc_remove_one()函数内部所有代码

注释完成后,继续编译

如果编译时出现这种错误,是因为在配置Makefile时,我们指定的内核在配置时不支持802.11的无线设备驱动。

../os/linux/sta_ioctl.c:2227: error: unknown field 'private' specified in initializer

../os/linux/sta_ioctl.c:2227: warning: initialization from incompatible pointer type

../os/linux/sta_ioctl.c:2228: error: unknown field 'num_private' specified in initializer

../os/linux/sta_ioctl.c:2228: warning: excess elements in struct initializer

../os/linux/sta_ioctl.c:2228: warning: (near initialization for 'rt28xx_iw_handler_def')

../os/linux/sta_ioctl.c:2229: error: unknown field 'private_args' specified in initializer

../os/linux/sta_ioctl.c:2229: warning: excess elements in struct initializer

../os/linux/sta_ioctl.c:2229: warning: (near initialization for 'rt28xx_iw_handler_def')

../os/linux/sta_ioctl.c:2230: error: unknown field 'num_private_args' specified in initializer

../os/linux/sta_ioctl.c:2230: warning: excess elements in struct initializer

../os/linux/sta_ioctl.c:2230: warning: (near initialization for 'rt28xx_iw_handler_def')

解决办法:重新配置编译指定的Linux Kernel,将Device Drivers==>Network deivce support==>Wireless LAN==><*> USB ZD1201 based Wireless device support,编译即可

继续编译

如果有以下的错误:

error: 'struct net_device' has no member named 'wireless_handlers'

//如下是原因,讲到了定义的地方

struct net_device is defined in include/linux/netdevice.h, which includes

this ifdef:

#ifdef CONFIG_WIRELESS_EXT

/* List of functions to handle Wireless Extensions (instead of ioctl).

* See for details. Jean II */

const struct iw_handler_def * wireless_handlers; <======== NOTE

/* Instance data managed by the core of Wireless Extensions. */

struct iw_public_data * wireless_data;

#endif

解决方法:在Makefile加上如下

继续编译:

编译到最后出现了undefined的情况,是因为现在版本的内核kernel_thread函数并没有定义它的符号,我们把这个函数换成856行的kthread_run(),如下图:

这个函数需要一个头文件,这个头文件时kthread.h,他可以从3.14内核源码中拷贝,位置是include/linux/kthrea.h。

拷贝到os_dep/linux/下以后,在os_dep/linux/os_intfs.c中添加如下代码

之后就可以编译成功了,如下图

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
### 回答1: rtl8188eu无线网卡驱动是一款适用于Realtek rtl8188eu芯片的无线网卡驱动程序。rtl8188eu芯片是一种常用于笔记本电脑和台式机的无线网络解决方案,具有稳定的性能和快速的数据传输速度。 安装rtl8188eu无线网卡驱动是保证无线网络正常工作的关键步骤之一。首先,我们可以通过在Realtek官网上搜索rtl8188eu无线网卡驱动的最新版本来获取驱动程序。然后,我们可以下载该驱动程序并按照驱动程序附带的安装说明进行安装。安装过程大致包括解压缩驱动文件、运行安装程序、连接无线网卡等步骤。 安装完rtl8188eu无线网卡驱动后,我们需要对驱动程序进行设置和配置,以确保与我们的无线网络兼容且正常工作。通常情况下,我们可以通过系统设置或无线网络管理工具来完成这些配置。需要注意的是,在配置过程中,我们可能需要提供无线网络的名称(SSID)和密码等信息。 当配置完成后,我们就可以开始使用rtl8188eu无线网卡进行无线上网了。此时,我们可以打开我们的无线网络连接管理工具,搜索可用的无线网络,并选择我们要连接的网络。在成功连接到无线网络后,我们就可以正常使用无线网络进行各种在线活动了。 总的来说,rtl8188eu无线网卡驱动是保证我们的无线网络正常工作的必备程序。安装和配置过程相对简单,只要按照说明进行操作即可。有了稳定的无线网络连接,我们可以轻松享受互联网带来的便利和乐趣。 ### 回答2: rtl8188eu无线网卡驱动是一款用于支持rtl8188eu芯片的无线网卡驱动程序。rtl8188eu芯片是Realtek公司开发的一款高性能无线网络解决方案芯片,主要用于电脑、笔记本电脑和其他移动设备上的无线网络连接。 rtl8188eu无线网卡驱动的安装可以通过几种方式实现。一种常见的方式是通过官方网站下载最新版本的驱动程序,然后按照说明进行安装。另一种方式是通过操作系统的设备管理器,选择更新驱动程序并选择手动安装,然后指定下载的驱动程序文件。 rtl8188eu无线网卡驱动的安装后,可以实现无线网络连接功能。用户可以通过电脑或其他设备的操作系统界面来管理和配置无线网络连接,包括搜索和连接到可用的无线网络、设置无线网络的安全参数等。 安装rtl8188eu无线网卡驱动后,用户可以享受到稳定和高速的无线网络连接。这款驱动程序经过优化和测试,能够提供稳定的无线网络信号和较快的数据传输速度,让用户能够更加方便地进行各种在线活动,如上网浏览、在线游戏、视频播放等。 总之,rtl8188eu无线网卡驱动是一款可以使得rtl8188eu芯片的无线网卡正常工作的驱动程序。它能够通过安装和配置,实现高速、稳定的无线网络连接,为用户带来更加便利的上网体验。 ### 回答3: RTL8188EU是Realtek(瑞昱)公司生产的一款无线网卡芯片。该芯片是用于在计算机中提供无线网络连接功能的硬件设备。 要使用RTL8188EU无线网卡,首先需要安装相应的驱动程序。驱动程序是一种软件,它可以让操作系统认识和与硬件设备进行通信。以下是安装RTL8188EU无线网卡驱动的步骤: 1. 查找正确的驱动程序:首先要确定自己所使用的无线网卡的型号是RTL8188EU,并准备安装对应的驱动程序。可以通过查看无线网卡的型号、参考产品说明书或者从Realtek官方网站下载驱动程序。 2. 下载和解压驱动程序:在Realtek官方网站或其他可信的下载网站上找到相应的驱动程序,并下载到计算机中。下载完成后,使用解压软件将驱动程序解压到一个目录中,准备进行安装。 3. 安装驱动程序:点击驱动程序所在的目录,找到"Setup.exe"或类似的安装程序,并双击运行。安装程序会自动开始安装过程,并按照指示完成驱动程序的安装。 4. 重启计算机:安装驱动程序后,必须重新启动计算机,以便新的驱动程序能够生效。 5. 配置无线网络连接:在计算机重启后,可以打开无线网络连接设置,找到已安装的RTL8188EU无线网卡,并进行配置。可以选择所需的无线网络,并输入密码连接到网络。 需要指出的是,驱动程序的安装可能因操作系统版本和计算机配置而有所不同。在安装驱动程序前,建议查阅相关的驱动程序安装指南或参考Realtek官方网站上的说明。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值