让Android 设备通过USB 转RJ45有线网卡上网
一、下载驱动
网卡采用USB 2.0转以太网控制芯片AX88772B,Android2.3 和4.0下的通用网卡驱动不支持这款芯片, 需要从网上下载最新的linux 下AX88772B驱动
驱动下载地址:http://www.asix.com.tw/cs/download.php?sub=driverdetail&PItemID=105
二、将下载的驱动源码编译进kernel image.
下载的驱动解包后有6个文件, readme文件是release note , 里面有revision history和 make 方法, 可以简单看一下.
Makefile文件告诉我们生成的最终文件是asix.o, 其它4个文件asix.c, asix.h,axusbnet.c,axusbnet.h就是我们需要的源码文件了.
进入你的kernel 目录, 你会发现/drivers/net/usb里已经有asix.c 文件, 你可以用下载的asix.c 直接替换这个文件, 也可以将原始的asix.c 改名成asix_ori.c.
将asix.c, asix.h,axusbnet.c,axusbnet.h全部放入/drivers/net/usb 目录, 不需要做任何修改,直接在终端执行make -j2.
如果不能生asix.o, 你需要检查你的config 文件里下面几个flag 是否有设置
#
# USB Network Adapters
#
CONFIG_USB_PEGASUS=y
CONFIG_USB_USBNET=y
CONFIG_USB_NET_AX8817X=y
CONFIG_USB_NET_CDCETHER=y
CONFIG_USB_NET_CDC_NCM=y
CONFIG_USB_NET_DM9601=y
CONFIG_USB_NET_NET1080=y
CONFIG_USB_NET_CDC_SUBSET=y
CONFIG_USB_BELKIN=y
CONFIG_USB_ARMLINUX=y
CONFIG_USB_NET_ZAURUS=y
三、配置dhcp 和dns
烧入新生成的kernel image, 这时你的设备还不能通过浏览器访问internet, 需要配置dhcp 和dns.
打开adb, 输入下面两条命令
netcfg eth0 dhcp
setprop net.dns1 8.8.8.8
最后用busybox ifconfig 检查一下设置是否生效.
如果在eth0 里能看到系统分配的IP 地址, 说明一切设置OK了.
更多相关文章
- Android的支持库 && app/apk包进系统 && 预置so库进系统 && 预置
- Glide源码分析(四)——Registry机制
- Android Studio Gradle 缓存文件夹设置
- NDK笔记---Android.mk文件
- android设备中的临时文件夹在哪里?
- 使用Java解析XML文件以获取名称列表
- cocos2d-x避免手动修改android.mk文件来编译
- android源码2.3.7开发环境与编译实战(ubuntu10.04下)
- 尝试查看所有XML文件的图形布局时出现StackOverFlowError