cdc-acm driver: este dispositivo não pode fazer chamadas sozinho. Não é um modem

-1

Estou usando o Beagleboard-xm com o 3.12 Kernel e o Ubuntu rootfs do site do Robert Nelson.

Eu uso um modem Telit HE910 GPS + GSM juntamente com o meu projeto. Assim como o guia do usuário HW eu tenho que aplicar uma lógica alta por 5s na entrada deste modem para habilitá-lo

Então, quando faço isso, alternando o gpio pin por 5s usando um script, recebo algumas mensagens no terminal

Estou certo de que esta mensagem vem do driver em usb/class/cdc-acm.c , mas não encontrou o motivo por trás disso?

Como posso resolver este problema ??

root@arm:~# ./modem_on.sh 
Turning on Telit modem ......
going to sleep and toggle
[   70.791381] cdc_acm 1-2:1.0: This device cannot do calls on its own. It is not a modem.
[   74.390258] cdc_acm 1-2:1.0: This device cannot do calls on its own. It is not a modem.
[   74.406890] cdc_acm 1-2:1.2: This device cannot do calls on its own. It is not a modem.
[   74.462188] cdc_acm 1-2:1.4: This device cannot do calls on its own. It is not a modem.
[   74.478363] cdc_acm 1-2:1.6: This device cannot do calls on its own. It is not a modem.
[   74.495269] cdc_acm 1-2:1.8: This device cannot do calls on its own. It is not a modem.
[   74.510040] cdc_acm 1-2:1.10: This device cannot do calls on its own. It is not a modem.
[   74.530090] cdc_acm 1-2:1.12: This device cannot do calls on its own. It is not a modem.
[   74.619720] cdc_acm 1-2:1.0: This device cannot do calls on its own. It is not a modem.
[   74.634429] cdc_acm 1-2:1.2: This device cannot do calls on its own. It is not a modem.
[   74.649475] cdc_acm 1-2:1.4: This device cannot do calls on its own. It is not a modem.
[   74.664459] cdc_acm 1-2:1.6: This device cannot do calls on its own. It is not a modem.
[   74.678741] cdc_acm 1-2:1.8: This device cannot do calls on its own. It is not a modem.
[   74.693389] cdc_acm 1-2:1.10: This device cannot do calls on its own. It is not a modem.
[   74.708099] cdc_acm 1-2:1.12: This device cannot do calls on its own. It is not a modem.
Script complete ..........

A porção necessária realted de dmesg está abaixo

[   30.623107] init: plymouth-upstart-bridge main process ended, respawning
[   70.629943] usb 1-2: new high-speed USB device number 2 using ehci-omap
[   70.782501] usb 1-2: config 1 interface 0 altsetting 0 endpoint 0x81 has an invalid bInterval 255, changing to 11
[   70.782592] usb 1-2: New USB device found, idVendor=058b, idProduct=0041
[   70.782623] usb 1-2: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[   70.791381] cdc_acm 1-2:1.0: This device cannot do calls on its own. It is not a modem.
[   70.801483] cdc_acm 1-2:1.0: ttyACM0: USB ACM device
[   73.041625] usb 1-2: USB disconnect, device number 2
[   74.209930] usb 1-2: new high-speed USB device number 3 using ehci-omap
[   74.369049] usb 1-2: New USB device found, idVendor=1bc7, idProduct=0021
[   74.369110] usb 1-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[   74.369140] usb 1-2: Product: Telit Wireless Module
[   74.369171] usb 1-2: Manufacturer: Telit wireless solutions
[   74.369201] usb 1-2: SerialNumber: 357164042197668
[   74.390258] cdc_acm 1-2:1.0: This device cannot do calls on its own. It is not a modem.
[   74.400207] cdc_acm 1-2:1.0: ttyACM0: USB ACM device
[   74.406890] cdc_acm 1-2:1.2: This device cannot do calls on its own. It is not a modem.
[   74.416900] cdc_acm 1-2:1.2: ttyACM1: USB ACM device
[   74.462188] cdc_acm 1-2:1.4: This device cannot do calls on its own. It is not a modem.
[   74.472259] cdc_acm 1-2:1.4: ttyACM2: USB ACM device
[   74.478363] cdc_acm 1-2:1.6: This device cannot do calls on its own. It is not a modem.
[   74.488372] cdc_acm 1-2:1.6: ttyACM3: USB ACM device
[   74.495269] cdc_acm 1-2:1.8: This device cannot do calls on its own. It is not a modem.
[   74.505279] cdc_acm 1-2:1.8: ttyACM4: USB ACM device
[   74.510040] cdc_acm 1-2:1.10: This device cannot do calls on its own. It is not a modem.
[   74.520141] cdc_acm 1-2:1.10: ttyACM5: USB ACM device
[   74.530090] cdc_acm 1-2:1.12: This device cannot do calls on its own. It is not a modem.
[   74.540283] cdc_acm 1-2:1.12: ttyACM6: USB ACM device
[   74.619720] cdc_acm 1-2:1.0: This device cannot do calls on its own. It is not a modem.
[   74.629455] cdc_acm 1-2:1.0: ttyACM0: USB ACM device
[   74.634429] cdc_acm 1-2:1.2: This device cannot do calls on its own. It is not a modem.
[   74.644042] cdc_acm 1-2:1.2: ttyACM1: USB ACM device
[   74.649475] cdc_acm 1-2:1.4: This device cannot do calls on its own. It is not a modem.
[   74.659027] cdc_acm 1-2:1.4: ttyACM2: USB ACM device
[   74.664459] cdc_acm 1-2:1.6: This device cannot do calls on its own. It is not a modem.
[   74.674133] cdc_acm 1-2:1.6: ttyACM3: USB ACM device
[   74.678741] cdc_acm 1-2:1.8: This device cannot do calls on its own. It is not a modem.
[   74.688415] cdc_acm 1-2:1.8: ttyACM4: USB ACM device
[   74.693389] cdc_acm 1-2:1.10: This device cannot do calls on its own. It is not a modem.
[   74.703186] cdc_acm 1-2:1.10: ttyACM5: USB ACM device
[   74.708099] cdc_acm 1-2:1.12: This device cannot do calls on its own. It is not a modem.
[   74.717895] cdc_acm 1-2:1.12: ttyACM6: USB ACM device

'

    
por Sorcrer 25.08.2014 / 10:59

1 resposta

0

Tente editar o driver diretamente

Abra este arquivo

/cdc-acm.c

Eu não tenho isso, então você tem que procurar em um shell ou navegador

Abra com este comando

sudo gedit /path/to/cdc-amc.c

E altere a linha 60 para

#include <linux/serial.h>

e a linha 613 para

set_bit(ASYNCB_INITIALIZED, &acm->port.flags);

O seu problema é muito único, este foi o único patch que pude encontrar, pois a sua combinação de mensagens de erro e drivers era para a versão do driver USB, por isso fiz pequenas edições para você.

Por favor, reveja minha fonte e o patch

    
por Mark Kirby 25.08.2014 / 13:15