Linux USB gadget 網路體驗,linuxgadget

來源:互聯網
上載者:User

Linux USB gadget 網路體驗,linuxgadget

平台:Mini2440

系統:linux-2.6.32.2

主機:Windows

配置USB gadget功能中的usbnet時,主要工作是載入g_ether.ko模組,但是試了好幾次插到電腦上,都是沒反應,windows識別不到裝置,查閱資料後才知道是USB介面的上拉問題,mini2440通過GPC5來上拉USB介面,只有這樣主機才能識別到裝置並提示安裝裝置。整合了資料後解決了問題,步驟:

開啟mach-mini2440.c添加代碼:

static void s3c2410_udc_pullup(enum s3c2410_udc_cmd_e cmd){        switch (cmd) {        case S3C2410_UDC_P_ENABLE :                s3c2410_gpio_cfgpin(S3C2410_GPC(5), S3C2410_GPIO_OUTPUT);                s3c2410_gpio_setpin(S3C2410_GPC(5), 1);                break;        case S3C2410_UDC_P_DISABLE :                s3c2410_gpio_setpin(S3C2410_GPC(5), 0);                break;        case S3C2410_UDC_P_RESET :                break;        default:                break;        }}
static struct s3c2410_udc_mach_info s3c2410_udc_cfg __initdata = {.udc_command= s3c2410_udc_pullup,};
在mini2440_machine_init函數中添加一句:
static void __init mini2440_machine_init(void){#if defined (LCD_WIDTH)s3c24xx_fb_set_platdata(&mini2440_fb_info);#endifs3c_i2c0_set_platdata(NULL);s3c2410_gpio_cfgpin(S3C2410_GPC(0), S3C2410_GPC0_LEND);s3c_device_nand.dev.platform_data = &friendly_arm_nand_info;s3c_device_sdi.dev.platform_data = &mini2440_mmc_cfg;s3c24xx_udc_set_platdata(&s3c2410_udc_cfg); //添加platform_add_devices(mini2440_devices, ARRAY_SIZE(mini2440_devices));s3c_pm_init();}
在程式開頭添加#include <plat/udc.h>標頭檔後儲存關閉。

make menuconfig配置核心:Device drivers-usb support-usb gadget support

配置

注意游標處配置,容易被忽略,選擇S3C2410 USB Device Controller

配置完成儲存退出,make zImage,用新核心啟動linux。

配置命令:ifconfig usb0 172.20.21.88 up

用USB串連D型介面和Windows主機,提示安裝裝置:

驅動:http://download.csdn.net/detail/wu20093346/7914915


從列表或指定位置安裝


安裝完成後出現一個新的本地串連,修改IP,此時應該可以和mini2440板ping通:



嵌入式linux gadget開發中,usb裝置插入PC時,在裝置端怎捕捉跟主機的串連與斷開?

linux 本身就已經有支援熱插拔裝置,並在插入和拔出後調用你指定的指令碼,google裡以linux hotplug做關鍵字搜尋即可。
 
Linux 下的linux_usb_gadget中的g_serialko載入不上來

必須針對自己當前用的核心自己編譯模組。

必須是相同的核心版本編譯的模組。而且,gcc 編譯參數必須一樣(當然看實際情況……),還有就是如果是 gcc 3.1 之前的,gcc 版本也必須一樣。

不然就很容易出現 invalid module format
 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.