查看: 1011|回复: 0

RT3070驱动移植及测试

[复制链接]
  • TA的每日心情
    奋斗
    2015-10-8 09:49
  • 签到天数: 430 天

    连续签到: 1 天

    [LV.9]以坛为家II

    发表于 2014-8-23 00:46:28 | 显示全部楼层 |阅读模式
    分享到:
    使用硬件
            MY-I.MX6 Demo开发平台
            使用软件
            linux Mfgtools 串口软件
            正文
            具体过程如下,首先到Ralink官网上https://www.mediatek.com/en/downloads/下载最新linux驱动代码。
            这里下载的是DPO_RT5572_LinuxSTA_2.6.1.3_20121022.tar.bz2,然后到解压后的文件夹,打开readme_sta_usb文档,里面有具体修改地方的指导。下面的内容为补充说明:
            Makefile
            在最上面加
            MODE = STA
            改平台
            PLATFORM = RALINK_2880
            os/linux/config.mk
            156行
            ifeq ($(PLATFORM), RALINK_2880)
            LINUX_SRC = /home/bruce/share/imx6/L3.0.35_4.1.0_130816_source/source/ltib/rpm/BUILD/linux-3.0.35
            CROSS_COMPILE = arm-linux-
            endif
            864行
            ifeq ($(PLATFORM), RALINK_2880)
            #CFLAGS := -D__KERNEL__ -I$(LINUX_SRC)/include -I$(RT28xx_DIR)/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fomit-frame-pointer -G 0 -mno-abicalls -fno-pic -pipe -finline-limit=100000 -march=mips2 -mabi=32 -Wa,--trap -DLINUX -nostdinc -iwithprefix include $(WFLAGS)
            EXTRA_CFLAGS := -D__KERNEL__ -I$(LINUX_SRC)/include -I$(RT28xx_DIR)/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -Uarm -fno-common -pipe -D__LINUX_ARM_ARCH__=7 -march=armv7-a -msoft-float -Uarm -DMODULE -DMODVERSIONS $(WFLAGS)
            export EXTRA_CFLAGS
            endif
            编译make
            完成后在os/linux/目录下生成rt5572sta.ko文件。
            将这个文件放到rootfs相应的目录下。
            将源代码根目录下的RT2870STA.dat放到rootfs/etc/Wireless/RT2870STA目录下
            insmod rt5572sta.ko
            ifconfig ra0 up
            移植wpa_supplicant
            因为现在的无线wifi网络大多是wpa加密。所以需要移植wpa_supplicant工具。
            参考下面的帖子,里面的讲解非常详细。注意最好使用和文章中一样的软件版本,否则可能会出现编译不通过的情况。
            https://blog.csdn.net/hongtao_liu/article/details/5679195
            在根目录etc/下编写一个连接脚本/etc/wpa_supplicant.conf。将下面的内容放到配置文件中,这个配置适合大部分应用,不同的路由器只需要将红色部分替换即可。
            # WPA-PSK/TKIP
           
            ctrl_interface=/var/run/wpa_supplicant
            network={
               ssid="xxxxx"
               scan_ssid=1
               key_mgmt=WPA-EAP WPA-PSK IEEE8021X NONE
               pairwise=TKIP CCMP  
               group=CCMP TKIP WEP104 WEP40   
               psk="xxxxxxxx"
            }
            连接无线网络操作步骤
            1. 装载RT3070驱动
            insmod rt5572sta.ko
            2. 将RT3070的固件放到目录下
            etc/Wireless/RT2870STA
            3. 打开无线网络,设置IP地址
            ifconfig ra0 192.168.1.179 up
            4. 设置网关
            route add default gw 192.168.1.1
            5. 新建目录,只需要建立一次即可,当前的文件系统已经自带这个目录
            mkdir -p /var/run/wpa_supplicant
            6. 连接网络,网络信息在/etc/wpa_supplicant.conf这个文件中
            wpa_supplicant -B -ira0 -c /etc/wpa_supplicant.conf -Dwext
            7. 设置DNS服务器,要不然不能使用域名解析
            cat /etc/resolv.conf 查看当前DNS配置
            echo "nameserver 202.102.128.68" >> /etc/resolv.conf
            这时候就能ping通www.baidu.com了
            8. 查看无线网络状态
            iwconfig ra0
           
    回复

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /2 下一条

    手机版|小黑屋|与非网

    GMT+8, 2024-4-18 14:43 , Processed in 0.122502 second(s), 17 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2020, Tencent Cloud.