일본 제조사의  CDMA 모뎀을 USB로 연결했는데  디바이스 파일 생성에 문제가 있어 도움을 주실 분이 있을런지요..^^;


Android ICS, Kernel : 3.0.31


해당 모뎀은 USB를 CDC-ACM(Modem Function) 과 CDC Device Management Function을 지원합니다.

연결했을때 ttyACM0, ttyWDM0 이런식으로  device file이 생성되어야 하는데 현재 ttyACM0 만 생성이 되고 DM 쪽은 생성이 안되네요.


Kernel config 파일에는 아래처럼 설정했고,

CONFIG_USB_ACM=y

CONFIG_USB_WDM=y


파일을 보면 


kernel/drivers/usb/class/cdc-acm.h

kernel/drivers/usb/class/cdc-acm.c

kernel/drivers/usb/class/.cdc-acm.o.cmd

kernel/drivers/usb/class/cdc-acm.o

kernel/drivers/usb /gadget/f_acm.c


kernel/drivers/usb/class/cdc-wdm.o

kernel/drivers/usb/class/.cdc-wdm.o.cmd

kernel/drivers/usb/class/cdc-wdm.c


이렇게 빌드가 된 상태입니다.


/dev 아래를 보면 ttyACM0 만 올라오고 DM은 안올라와요

   crwxrwxrwx radio    radio    166,   0 2013-03-22 16:09 ttyACM0


Kernel 로그상으로는 cdc-wdm 으로 인식을 한것 같은데요.


<7>[    7.179931] usb 1-1.3: default language 0x0409

<7>[    7.186126] usb 1-1.3: udev 3, busnum 1, minor = 2

<6>[    7.186126] usb 1-1.3: New USB device found, idVendor=0482, idProduct=0232

<6>[    7.199127] usb 1-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=0

<6>[    7.207275] usb 1-1.3: Product: KCMP

<6>[    7.211334] usb 1-1.3: Manufacturer: KYOCERA CORPORATION

<7>[    7.218200] usb 1-1.3: usb_probe_device

<7>[    7.222625] usb 1-1.3: configuration #1 chosen from 1 choice

<7>[    7.229827] usb 1-1.3: adding 1-1.3:1.0 (config #1, interface 0)

<7>[    7.238281] usbserial_generic 1-1.3:1.0: usb_probe_interface

<7>[    7.244689] usbserial_generic 1-1.3:1.0: usb_probe_interface - got id

<7>[    7.252441] usb 1-1.3: adding 1-1.3:1.1 (config #1, interface 1)

<7>[    7.259765] cdc_acm 1-1.3:1.1: usb_probe_interface

<7>[    7.259765] cdc_acm 1-1.3:1.1: usb_probe_interface - got id

<6>[    7.271697] twl6030_bci twl6030_bci: Battery Voltage at Bootup is 0 mV

<6>[    7.279174] cdc_acm 1-1.3:1.1: ttyACM0: USB ACM device

<7>[    7.285980] usb 1-1.3: adding 1-1.3:1.2 (config #1, interface 2)

<7>[    7.293457] usb 1-1.3: adding 1-1.3:1.3 (config #1, interface 3)

<7>[    7.301422] cdc_wdm 1-1.3:1.3: usb_probe_interface

<7>[    7.306823] cdc_wdm 1-1.3:1.3: usb_probe_interface - got id

<7>[    7.313323] cdc_wdm 1-1.3:1.3: looking for a minor, starting at 176

<6>[    7.320587] cdc_wdm 1-1.3:1.3: cdc-wdm0: USB WDM device

<7>[    7.327087] usb 1-1.3: adding 1-1.3:1.4 (config #1, interface 4)

<6>[    7.335723] OMAP Watchdog Timer Rev 0x00: initial timeout 30 sec

<6>[    7.343322] Bluetooth: HCI UART driver ver 2.2

<7>[    7.348663] usbserial_generic 1-1.3:1.4: usb_probe_interface

<7>[    7.355041] usbserial_generic 1-1.3:1.4: usb_probe_interface - got id

<6>[    7.362274] Bluetooth: HCI H4 protocol initialized

<6>[    7.367950] cpuidle: using governor ladder

<7>[    7.368377] drivers/usb/core/inode.c: creating file '003'


cdc-wdm0 로 /dev 아래에 올라와야 하는 것 같은데요.

mknod 를 써서 따로 생성을 시켜줘야하는지.. 그럼 어디다가 그걸 해 줘야하는지.. 모르겠네요..


device list 와 kernel 로그 첨부합니다.


혹시 아시는 분 있으시면 도움 주시기 바랍니다.


감사합니다~!!!