概述
1.unzip解压驱动源码RTL8189ES_linux_v4.3.18.1_15373.20151005
2.复制源码到realtek文件夹,并改名为RTL8189ES。windows下直接干!
3.rtl8189FS、rtl8188EUS处理方法同第1、2步
4.增加Kconfig文件,内容为:
menuconfig REALTEK_WIFI
tristate "Realtek wifi"
if REALTEK_WIFI
choice
prompt "select wifi type"
default RTL8189ES
config RTL8723BU
depends on REALTEK_WIFI
tristate "rtl8723BU usb wifi"
config RTL8189FS
depends on REALTEK_WIFI
tristate "rtl8189fs/ftv sdio wifi"
config RTL8189ES
depends on REALTEK_WIFI
tristate "rtl8189es sdio wifi"
config RTL8188EUS
depends on REALTEK_WIFI
tristate "rtl8188eus usb wifi"
endchoice
endif
5.增加Makefile文件,内容为:
obj-$(CONFIG_RTL8188EUS) += rtl8188EUS/
obj-$(CONFIG_RTL8189FS) += rtl8189FS/
obj-$(CONFIG_RTL8189ES) += rtl8189ES/
obj-$(CONFIG_RTL8723BU) += rtl8723BU/
6.复制realtek文件夹到Linux源码的linux-3.14.43-g064c28b-v1.5driversnetwireless目录下
7.vim/gedit修改 drivers/net/wireless/Kconfig,添加一行
source "drivers/net/wireless/realtek/Kconfig"
8.vim/gedit修改 drivers/net/wireless/Makefile,添加一行
obj-y += realtek/
9.Linux源码下make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- menuconfig弹出选择界面,逐级选择。
9.1选择驱动模块
-> Device Drivers
-> Network device support (NETDEVICES [=y])
-> Wireless LAN (WLAN [=y])
-> Realtek wifi (REALTEK_WIFI [=m])
-> rtl8189es sdio wifi([=m])
-> rtl8723BU usb wifi([=m])
9.2配置支持WiFi设备
-> Device Drivers
-> Network device support (NETDEVICES [=y])
-> Wireless LAN (WLAN [=y])
-> IEEE 802.11 for Host AP(Prism2/2.5/3 and WEP/TKIP/CCMP) ([=y])
-> Support downloading firmware images with Host AP driver ([=y])
-> Support for non-volatitle firmware download ([=y])
9.3配置支持IEEE 802.11(有些系统可以省略这一步)
-> Networking support
-> Wireless ([=y])
-> cfg80211 wireless extensions ([=y])
-> Generic IEEE 802.11 Networking Stack(mac80211) ([=y])
9.4保存配置
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- savedefconfig
cp defconfig arch/arm/configs/am437x-lihaibin_defconfig
进入configs,并查看:
cd arch/arm/configs/
ls am437* -l
替换TI开发板文件:
cp am437x-lihaibin_defconfig tisdk_am437x-evm_defconfig
9.5检查驱动配置
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- distclean
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- tisdk_am437x-evm_defconfig
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- menuconfig
10.编译驱动模块
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- modules -j 8
编译完成以后就会在 rtl8188EUS 和 rtl8189ES 文件夹下分别生成 8723BU.ko 和 8189es.ko 文件
备注:如果操作系统源码Makefile没有指定ARCH=arm 和CROSS_COMPILE=arm-linux-gnueabihf- 需要使用生成驱动模块 make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- modules -j10
11.复制8723BU.ko 、8189es.ko、zImage 到开发板。
12.编译内核,采用以下指令
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- modules -j 10
编译完成后在arch/arm/boot/下生成了内核镜像zImage文件
13.复制zImage,替换原来开发板的zImage
14.重启系统之后,使用insmod 8189es.ko 或者 depmod ;modprobe 8189es.ko安装驱动模块.
可以使用make modules_install指令安装模块到开发板根文件系统,方法如下:
第1-9步同上
10.编译设备树
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- am437x-gp-evm.dtb
11.编译内核,采用以下指令
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- zImage -j 32
编译完成后在arch/arm/boot/下生成了内核镜像zImage文件
12. 制卡
cp am437x-gp-evm.dtb /home/lee14-64/AM437x/mksdboot/Linux-3.14.43-mksdboot/boot/
cp zImage /home/lee14-64/AM437x/mksdboot/Linux-3.14.43-mksdboot/boot/
fdisk -l
./mksdboot.sh --device /dev/sdb --board tl437x-evm
制卡后需要重新拔插!
umount /media/lee14-64/rootfs ; umount /media/lee14-64/boot
13.编译驱动模块
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- modules -j 10
14.安装驱动模块:
ls /media/lee14-64/
make ARCH=arm modules_install INSTALL_MOD_PATH=/media/lee14-64/rootfs
15.安装外部模块
重要提示:部分版本不能直接make menuconfig,否则会恢复为默认配置 ,make savedefconfig不能使用否则启动异常 ,应使用make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- savedefconfig
最后
以上就是丰富香烟为你收集整理的RTL8189ES驱动移植的全部内容,希望文章能够帮你解决RTL8189ES驱动移植所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复