zoukankan      html  css  js  c++  java
  • 为MarS Board安装无线网卡Linux驱动

    玩了几天MarS Board,发现要了解Linux是如何工作的,从嵌入式开发板玩起最有效率。因为会遇到无数的问题和未知领域,然后在解决问题的过程中有深入了解Linux的机会。
     
    为这块开发板专门买了块TL823N的无线网卡,小巧可爱,不占地方。不过Linux下的驱动安装是没有Windows方便的。就像显卡一样,厂商对Linux不大重视。这个网卡果然不能即插即用。
    查了下它的芯片是rt8192cu,虽然较新的内核里有驱动,但是不能稳定工作。于是在RealTek官方页面下载驱动包,再编译进内核。
     
    为交叉编译设置环境变量:
    ARCH=arm
    CROSS_COMPILE=<path-to>/arm-eabi-
     
    修改driver下的Makefile,把默认配置i386_pc关掉,并添加新的配置:
    CONFIG_PLATFORM_I386_PC = n
    CONFIG_PLATFORM_MARS = y
     
    ifeq ($(CONFIG_PLATFORM_MARS), y)
      EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
      KSRC := <path-to>/kernel_imx
      KVER := $(shell uname -r)
      ARCH := arm
    endif
     
    这里kernel_imx是内核代码目录。确保.config文件里有CONFIG_WIRELESS_EXT设置为y。回到驱动目录,执行make。会生成一个8192cu.ko的文件,这个就是驱动了。把这个驱动放到板上,再进行安装。
     
    安装驱动:
    insmod 8192cu.ko
     
    确认驱动已装载:
    lsmod
     
    启动无线网络:
    ip link set wlan0 up
     
    安装包:wireless_tools以及wpa_supplicant(我的AP用的是WPA协议)。
     
    查看可用接入点:
    iwlist wlan0 scanning
     
    关联接入点:
    wpa_passphrase <ssid> <password> > wifi_home.conf
    wpa_supplicant -B -i wlan0 -c wifi_home.conf
     
    dhcpcd -A wlan0
    得到ip就大功告成。
     
    以上是最原始的安装驱动的方式。要让生活更美好一点,可以把驱动代码集成到内核代码中,对无线网络的配置也可以用netctl在boot的时候自动配置。
  • 相关阅读:
    Linux中的官方源、镜像源汇总
    提示"libc.so.6: version `GLIBC_2.14' not found"
    win8.1 安装msi软件出现 2503、2502
    平均负载(Load average)
    oracle 导入报错:field in data file exceeds maximum length
    一个命令的输出作为另外一个命令的输入
    Http 状态码
    Linux 命令总结
    ORA-12505: TNS: 监听程序当前无法识别连接描述符中所给出的SID等错误解决方法
    轻松应对IDC机房带宽突然暴涨问题
  • 原文地址:https://www.cnblogs.com/silmerusse/p/3247085.html
Copyright © 2011-2022 走看看