第一步:
#make menuconfig
勾選中下面
Device Drivers->USB Support->
Support for Host-side USB
USB device filesystem
ECHI HCD (USB 2.0) support
OHCI HCD support
UHCI HCD (most Intel and VIA) support
USB Modem (CDC ACM) support
USB Serial Converter support->
[M] USB Serial Converter support
USB Generic Serial Driver
USB driver for GSM and CDMA modems
Device Drivers->Network device support->
PPP (point-to-point protocol) support
PPP multilink support (EXPERIMENTAL)
PPP filtering
PPP support for async serial ports
PPP support for sync tty ports
PPP Deflate compression
PPP BSD-Compression (encryption) (EXPERIMENTAL)
PPP over Ethernet (EXPERIMENTAL)
這些步驟是保證自己的內核支持usb接口的3G網卡。(未標註的都選擇*)
按說編譯進內核就沒什麼問題了,但是我試了很久都沒用,最後在Device Drivers-> USB Support-> 中在USB Serial Converter support前選擇[M]編譯成模塊。然後
在/drivers/usb/serial找到usbserial.ko將其copy到開發板的一個目錄下,隨便一個都可以,我的放在/lib目錄下,進入對應目錄後執行insmod usbserial vendor=0x19f5 product=0x9909 (其中vendor和product換成自己網卡的對應值)。
接着ls /dev 應該會看到ttyUSB0、1、2、3的,到這裏基本上網卡的驅動就裝好了。
第二步:
使用網卡撥號,需要下面幾個文件
evdo-disconnect-chat
evdo-connect-chat
//這兩個放在根目錄 / 下
pppstats
chat
pppd
pppdump
//這四個放在/usr/sbin目錄下
evdo
//這個放在/etc/ppp/peers目錄下
使用時在命令行下輸入
pppd call evdo persist & //會在後臺自動持續撥號,直至撥號成功爲止
將usbserial編譯進內核的方法如下:(2011.11.14加入)
3G網卡需要用到usb轉串口,在配置內核時把USB Serial Converter support選上,然後進入它的子選項,把USB driver for GSM and CDMA modems選上。最後保存退出,這樣就把驅動加入了內核。
驅動加入內核後,3G網卡還不能工作。因爲驅動程序無法識別我們的USB設備。還需要修改drivers/usb/serial/目錄裏的option.c文件。修改如下:
1) 在代碼裏添加兩個宏定義
/* 天翼 易通E300 PRODUCTS */
#define ETCOM_VENDOR_ID 0x19f5
#define ETCOM_PRODUCT_E300 0x9909
2) 在 static struct usb_device_id option_ids[] 的末尾添加
{ USB_DEVICE(ETCOM_VENDOR_ID, ETCOM_PRODUCT_E300) },
/* 天翼易通/*
修改完成後,重新編譯生成的內核就可以支持3G網卡了。