This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM3352通过串口连接中兴ME3630的4G设备,未能生成/dev/ttyusb设备节点

    硬件同事已经检查了模块接线,3.3V供电,接地,D+和D-接线均正常
    ME3630需要配置为usb-serial模式,连接在3352的USB0上,
    内核加载后dev和sys信息如下,未能生成/dev/ttyusb0设备节点

    内核修改如下:    

    1.menuconfig

1. 1Device Drivers --->
          USB support --->
               USB Serial Converter support --->
                        USB Generic Serial Driver
                        USB driver for GSM and CDMA modems
1.2 Device Drivers --->
           Network device support --->
                PPP (point-to-point protocol) support
                PPP multilink support
                PPP filtering
                PPP support for async serial ports
                PPP support for sync tty ports
1.3 Device Drivers --->
           Network device support --->
                USB Network Adapters --->
                     Multi-purpose USB Networking Framework

2.4G设备添加

\drivers\usb\serial\option.c

static struct usb_device_id option_ids[] =

{
         { USB_DEVICE(0x19d2, 0x0117 },

{ USB_DEVICE(0x19d2, 0x0199) },
{ USB_DEVICE(0x19d2, 0x1476) }

添加单板类型匹配

printk("idVendor=%x, idProduct=%x, bInterfaceNumber =%d\r\n", 

serial->dev->descriptor.idVendor,
serial->dev->descriptor.idProduct,
serial->interface->cur_altsetting->desc. bInterfaceNumber);

if (serial->dev->descriptor.idVendor == 0x19d2 &&
serial->dev->descriptor.idProduct == 0x1476 &&
serial->interface->cur_altsetting->desc. bInterfaceNumber == 3)
return -ENODEV;
if (serial->dev->descriptor.idVendor == 0x19d2 &&
serial->dev->descriptor.idProduct == 0x1476 &&
serial->interface->cur_altsetting->desc. bInterfaceNumber == 4)
return -ENODEV;
if (serial->dev->descriptor.idVendor == 0x19d2 &&
serial->dev->descriptor.idProduct == 0x1509 &&
serial->interface->cur_altsetting->desc. bInterfaceNumber == 4)
return -ENODEV;
if (serial->dev->descriptor.idVendor == 0x19d2 &&
serial->dev->descriptor.idProduct == 0x1509 &&
serial->interface->cur_altsetting->desc. bInterfaceNumber == 5)
return -ENODEV;

在内核代码中添加调试信息,内核上电USB部分打印信息如下:
绿色部分是新增的调试信息,黑色部分是原有的打印信息;
ME3630 4G模块没有触发usb_generic_driver中的generic_probe()函数。
应该是内核没有识别到ME 3630设备,是硬件连接问题还是内核设置问题?
usb_init ...
usb_init bus_register ret:0
usbcore: registered new interface driver usbfs
usb_init usb_register ret:0
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
usb_init usb_register_device_driver ret:0
usbcore: registered new interface driver zd1201
hso: drivers/net/usb/hso.c: Option Wireless
usbcore: registered new interface driver hso
usbcore: registered new interface driver cdc_ether
usbcore: registered new interface driver cdc_eem
usbcore: registered new interface driver dm9601
cdc_ncm: 04-Aug-2011
usbcore: registered new interface driver cdc_ncm
usbcore: registered new interface driver hwa-rc
usbcore: registered new interface driver hwa-hc
usbcore: registered new interface driver cdc_acm
cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters
usbcore: registered new interface driver uas
usb_serial_init start...
usb_serial_init bus_register ret:0
usb_serial_init tty_register_driver ret:0
usbcore: registered new interface driver usbserial
usb_serial_init usb_register ret:0
usb_serial_generic_register vendor:5f9 product:ffff
USB Serial support registered for generic
usbcore: registered new interface driver usbserial_generic
usb_serial_init usb_serial_generic_register ret:0
usbserial: USB Serial Driver core
usb_serial_init success...
 
option_init start...
USB Serial support registered for GSM modem (1-port)
option_init usb_serial_register ret:0
usbcore: registered new interface driver option
option_init usb_register ret:0
option: v0.7.2:USB Driver for GSM modems