目标板:Hi3518

内核版本:linux3.0.8
 
1.修改makefile
#PLATFORM = PC     //注释掉
PLATFORM = HI3518     //支持平台

ifeq ($(PLATFORM),HI3518)
LINUX_SRC = /root/hi3518/linux-3.0.y     //内核路径
CROSS_COMPILE = /opt/hisi-linux-nptl/arm-hisiv100-linux/target/bin/arm-hisiv100nptl-linux- //工具链路径
endif

2.进入RT3070/include/rtmp_def.h

    #define INF_MAIN_DEV_NAME     "wlan"
    #define INF_MBSSID_DEV_NAME "wlan"

3.修改os/linux/config.mk使其支持wpa_suplicant(将‘n'变成'y')

# Support Wpa_Supplicant
HAS_WPA_SUPPLICANT=y
# Support Native WpaSupplicant for Network Maganger
HAS_NATIVE_WPA_SUPPLICANT_SUPPORT=y

4.在编译驱动前必须先编译image

问题一:

/root/hi3518/RT3070/os/linux/../../os/linux/sta_ioctl.c:: error: unknown field 'private' specified in initializer
/root/hi3518/RT3070/os/linux/../../os/linux/sta_ioctl.c:: warning: initialization from incompatible pointer type
/root/hi3518/RT3070/os/linux/../../os/linux/sta_ioctl.c:: error: unknown field 'num_private' specified in initializer
/root/hi3518/RT3070/os/linux/../../os/linux/sta_ioctl.c:: warning: excess elements in struct initializer
/root/hi3518/RT3070/os/linux/../../os/linux/sta_ioctl.c:: warning: (near initialization for 'rt28xx_iw_handler_def')
/root/hi3518/RT3070/os/linux/../../os/linux/sta_ioctl.c:: error: unknown field 'private_args' specified in initializer
/root/hi3518/RT3070/os/linux/../../os/linux/sta_ioctl.c:: warning: excess elements in struct initializer
/root/hi3518/RT3070/os/linux/../../os/linux/sta_ioctl.c:: warning: (near initialization for 'rt28xx_iw_handler_def')
/root/hi3518/RT3070/os/linux/../../os/linux/sta_ioctl.c:: error: unknown field 'num_private_args' specified in initializer
/root/hi3518/RT3070/os/linux/../../os/linux/sta_ioctl.c:: warning: excess elements in struct initializer
/root/hi3518/RT3070/os/linux/../../os/linux/sta_ioctl.c:: warning: (near initialization for 'rt28xx_iw_handler_def')
]: *** [/root/hi3518/RT3070/os/linux/../../os/linux/sta_ioctl.o] 错误
]: *** [_module_/root/hi3518/RT3070/os/linux] 错误
]:正在离开目录 `/root/hi3518/linux-3.0.y'

问题原因:是因为在配置Makefile时,指定的内核在配置时不支持802.11的无线设备驱动。

解决办法:重新配置编译指定的Linux Kernel,将Device Drivers

   ==>Network deivce support
       ==>Wireless LAN
        ==><*> USB ZD1201 based Wireless device support,编译即可
问题二:
rt3070sta: module has no symbols (stripped?)
insmod: can't insert 'rt3070sta.ko': invalid module format

解决办法:不能对目标文件进行裁剪

rtusb init rt2870 --->
usbcore: registered new interface driver rt2870
如果出现以下报错,说明内核源码错了
rt5370sta: version magic '2.6.32.59 mod_unload ARMv4 ' should be '2.6.32.2-Frie'
insmod: cannot insert 'rt5370sta.ko': invalid module format

插入网卡,这个时候ifconfig是看不到网卡的,要启用网卡,用以下命令:

ifconfig ra0 up

wifi驱动移植的更多相关文章

  1. EP-N8530S USB WIFI 驱动移植

    /*********************************************************************** * EP-N8530S USB WIFI 驱动移植 * ...

  2. I.MX6 AW-NB177NF WIFI 驱动移植问题

    /******************************************************************************** * I.MX6 AW-NB177NF ...

  3. wifi 驱动移植范例

    .改Makefile:  里面没有dm6441平台的,我看到有dm6446的,所以就在这里改了 ifeq ($(PLATFORM),DM6446) LINUX_SRC = /root/work/lin ...

  4. android wifi驱动移植详细过程

    转自:http://bbs.imp3.net/thread-10558924-1-1.html 对于刚入手android没多久的人来说,android wifi 驱动的移植确实还是有难度的,不过参考了 ...

  5. Android平台开发-WIFI 驱动移植 -- 详细

    一.WIFI的基本架构(代码路径)     1.WIFI Settings应用程序:       packages/apps/Settings/src/com/android/settings/wif ...

  6. WIFI驱动的移植 realtek 8188

    一般我们拿到的android源代码中wifi应用层部分是好的, 主要是wifi芯片的驱动要移植并添加进去. wifi驱动的移植, 以realtek的8188etv为例到官网下载相应的驱动, 解压后可以 ...

  7. Android wifi驱动的移植 realtek 8188

    Android wifi驱动的移植 一般我们拿到的android源代码中wifi应用层部分是好的, 主要是wifi芯片的驱动要移植并添加进去. wifi驱动的移植, 以realtek的8188etv为 ...

  8. Android系统如何移植wpa_supplicant及wifi驱动

    一.WPA_SUPPLICANT简介 1. 什么是wpa_supplicant wpa_supplicant is a WPA Supplicant for Linux, BSD, Mac OS X, ...

  9. 基于ubuntu-2.6.35内核的SDIO-WiFi驱动移植

    一.移植环境:        1.主机:Ubuntu 10.10发行版        2.目标机:FS_S5PC100平台        3.交叉编译工具:arm-cortex_a8-linux-gn ...

随机推荐

  1. [LouguT30212]玩游戏

    题面在这里 description 对于\(k=1,2,...,t\),求\[\frac{1}{nm}\sum_{i=1}^{n}\sum_{j=1}^{m}(a_i+b_j)^k\] 对\(9982 ...

  2. 【以前的空间】BZOJ2733[HNOI2012]永无乡

    启发式合并?! 似乎当时写并查集的时候就有看到过类似于把小并查集并到大并查集上的说法,原来这就是启发式…… 具体做法就是把小树里面的一个个拿出来,然后加到大树里面去(裸的不敢相信) const max ...

  3. 在Windows*上编译Tensorflow教程

    背景介绍 最简单的 Tensorflow 的安装方法是在 pip 一键式安装官方预编译好的包 pip install tensorflow 通常这种预编译的包的编译参数选择是为了最大兼容性而不是为了最 ...

  4. 洛谷4525 & 4526:【模板】自适应辛普森法——题解

    参考:https://phqghume.github.io/2018/05/19/%E8%87%AA%E9%80%82%E5%BA%94%E8%BE%9B%E6%99%AE%E6%A3%AE%E6%B ...

  5. 20181022 考试记录&高级数据结构

    题目 W神爷的题解 高级数据结构 T1: 其实是一道easy题,$O(n^3log n)$ 也是能卡过去的,本着要的70分的心态,最后尽然A了. 如果是正解则是$O(n^3)$,当确定你要选择的列时, ...

  6. (ex)BSGS题表

    学了一下BSGS大概知道他是什么了,但是并没有做什么难题,所以也就会个板子.普通的BSGS,我还是比较理解的,然而exBSGS我却只理解个大概,也许还会个板子......(这个东西好像都会有一群恶心的 ...

  7. 在CentOS 6.5 中安装JDK 1.7 + Eclipse并配置opencv的java开发环境(二)

    一.安装JDK 1.7 1. 卸载OpenJDK rpm -qa | grep java rpm -e --nodeps java-1.6.0-openjdk-1.6.0.0-1.50.1.11.5. ...

  8. HDU 5586 (dp 思想)

    Sum Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Total Submis ...

  9. Java的switch是否支持String作为参数,还支持哪些类型?

    在Java5以前,switch(expr)中,exper只能是byte,short,char,int类型. 从Java5开始,java中引入了枚举类型,即enum类型. 从Java7开始,exper还 ...

  10. C. Line (扩展欧几里得)

    C. Line time limit per test 1 second memory limit per test 256 megabytes input standard input output ...