讓Android 裝置通過USB 轉RJ45有線網絡卡上網
一、下載驅動
網絡卡採用USB 2.0轉乙太網控制晶片AX88772B, android 2.3 和4.0下的通用網絡卡驅動不支援這款晶片, 需要從網上下載最新的linux 下AX88772B驅動
二、將下載的驅動原始碼編譯進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了.