3G撥號上網之一,內核編譯

一、開發環境

Linux CentOS 6.4
ARM Mirco2440
內核 linux-2.6.32
交叉編譯 arm-linux-gcc 4.4.3
文件系統 rootfs_qtopia_qt4

二、內核配置

Cd ~/linux-2.6.32.2
Make menuconfig
配置:
Device Drivers=>
USB support=>
[*] Suppon for Host-side USB
[*] USB device filesystem
[*] USB device class-devices
[*] OHCI HCDsupport
[*] USB Mass Storage Support
USB Serial Convelter suppor -->
[*] USB driver for GSM and CDMA modems
SCSI device support=>
[*]SCSI device support
[*] SCSI disk support
[*] Probe all LUNs on each SCSI device
HDI Devices=>
[*] USB Human Interface Devices support
[*] /dev/hiddev raw HID device support
Network device support=>
<*> PPP(point—to—point protoco1)support
[*]   PPP multilink support(EXPERIMENTAL)
<*> PPP support for async serial ports
<*> PPP suppo rt for sync tty ports
<*> PPP Deflate compression
<*> PPP BSD —Compress compression
<*> PPP MPPE compress compression(encryp—tion)
<*> PPP over Ethernet
<*> PPP over 12TP


三、修改相關內核驅動文件(此處使用的是華爲EC189上網卡)

首先在將華爲EC189上網卡插入開發板上支持usb host模式的usb口。
識別之後會在屏幕上打印出以下信息:
Bus 00x Device 00x: ID12d1:1446 HUAWEI。。。(類似這種,x爲序號,不用管)
從上面我們可以看到ID號,這就是我們需要的信息。
再進入linux-2.6.32.2/drivers/usb/serial/option.c,將此設備增添上。
#defineHUAWEI_PRODUCT_EC189 0x1446
staticstruct usb_device_id option_ids[]={
……
{USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID,0x1446,0xff,0xff,0xff)},
……};

修改完之後輸入以下命令開始編譯
#make zImage
編譯結束後,會在 arch/arm/boot目錄下生成 linux 內核映象文件:zImage
將其燒錄到開發板中。

這裏我用的是SuperVivi-USB-Transfer-Tool將內核燒錄進去的。

先將Mirco2440設置成從NOR Flash啓動,進入vivi選項界面,選擇下載內核,再SuperVivi中選中zImage,就OK了。

接下來就是準備USB_modeswitch工具的移植了。。。


發佈了34 篇原創文章 · 獲贊 8 · 訪問量 4萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章