RT3070-STA驱动程序编译步骤

说明

本文内容测试时的编译环境

开发平台:Ubuntu 18.04(VMWare15.51)

目标平台:Hi3518EV200

目标Linux版本:linux-3.4.35

交叉编译工具链:arm-hisiv300-linux-

本文使用的驱动适合多个网卡型号,我只编译了其中RT3070的网卡驱动。

注意:生成的ko模块未在具体硬件平台上验证,本文只是从编译流程上进行记录。

该驱动的编译过程和配置流程和MT7601U差不多,有感兴趣的可以参考MT7601U-STA驱动程序编译步骤。

〇、开始之前

在开始之前,你需要做出以下准备:

(1)已经建立了hi3518的交叉编译环境。 这一步骤可以参考我做的记录博文,详见【参考】部分第1项。

(2)已经准备好了一份linux内核源码,或者linux下编译需要使用的资源文件。 linux源码的获取可以在其官方网站上得到,下载地址详见【参考】部分的第2项。

(3)已经准备好了RT3070驱动程序源码,我们需要交叉编译得到在嵌入式Linux上运行的ko模块文件,驱动程序源码可从本文末的【原始驱动程序下载】部分得到。

一、Makefile文件的修改

添加目标平台编译配置信息:

RT3070-STA驱动程序编译步骤_第1张图片RT3070-STA驱动程序编译步骤_第2张图片

修改编译选项:

RT3070-STA驱动程序编译步骤_第3张图片

二、修改config.mk文件

./os/linux/config.mk文件中针对选中平台的编译添加编译配置,在末尾追加如下配置代码:

RT3070-STA驱动程序编译步骤_第4张图片

ifeq ($(PLATFORM),hi3518)
EXTRA_CFLAGS := $(WFLAGS) -I$(RT28xx_DIR)/include -Wno-error=implicit-function-declaration
export EXTRA_CFLAGS
endif

在文件开头修改对wpa_supplicant的支持(可选):

RT3070-STA驱动程序编译步骤_第5张图片

三、修改Makefile.6.util文件

根据目标内核版本的不同,需要修改 Makefile.4.util(针对Linux 2.4) 或者 Makefile.6.util(针对Linux 2.6) 文件中的错误。

本文中,在 ./os/linux/Makefile.6.util 文件内,修改所有rt_rbus_pci_util.ort_rbus_pci_drv.o,这样的修改共有3处:

RT3070-STA驱动程序编译步骤_第6张图片

四、在顶层目录下执行make

编译过程中的警告可以忽略;最后“cp: cannot create regular file ‘/tftpboot’: Permission denied
”的警告可以忽略,只要生成的3个ko文件存在即可。编译后使用file命令验证生成的ko模块:

RT3070-STA驱动程序编译步骤_第7张图片

原始驱动程序下载

[2011_0719_RT3070_RT8070_RT3370_RT5370_RT5372_RT2070_Linux_STA_V2.5.0.3_DPO.tar.bz2]

百度网盘链接:https://pan.baidu.com/s/1lwQJXWsRRXrXGm64A9TU0w

提取码:6did

参考

1.【燕卫博】从零开始进行Hi3518_SDK安装、环境搭建和Linux内核编译,并生成可供烧写的uImage

2.Linux内核源码下载地址

————2020-1-28@燕卫博————

你可能感兴趣的:(驱动程序编译)