Sierra Wireless WP7610に接続された組み込みLinuxデバイスがあります。 WP7610には、0、1、2という3つのUSBシリアルポートがあります。 WP7610がリセットされるまではすべて問題ありません(AT + RESETコマンドを送信するなど)。再び表示されると、USBポートは1、2、3と表示されます。私の仮定は、/dev/ttyUSB0が何かによって占められているということですが、何かはわかりません。
リセット前のデバイスは次のようになりました。
# ls -al /dev/ttyUSB*
crw-rw---- 1 root root 188, 0 Feb 15 13:05 /dev/ttyUSB0
crw-rw---- 1 root root 188, 1 Feb 15 13:05 /dev/ttyUSB1
crw-rw---- 1 root root 188, 2 Feb 15 13:05 /dev/ttyUSB2
# cat /proc/devices | grep -i “ttyUSB”
188 ttyUSB
# cat /proc/tty/driver/usbserial
usbserinfo:1.0 driver:2.0
0: module:GobiSerial name:"GobiSerial" vendor:1199 product:68c0 num_ports:1 port:0 path:usb-AmbUSB-1
1: module:GobiSerial name:"GobiSerial" vendor:1199 product:68c0 num_ports:1 port:0 path:usb-AmbUSB-1
2: module:GobiSerial name:"GobiSerial" vendor:1199 product:68c0 num_ports:1 port:0 path:usb-AmbUSB-1
# lsmod
Module Size Used by Tainted: G
GobiNet 460334 0
GobiSerial 18134 3
usbserial 41154 7 GobiSerial
rndis_host 9899 0
cdc_ether 9675 1 rndis_host
usbnet 34161 3 GobiNet,rndis_host,cdc_ether
mii 4994 1 usbnet
cdc_acm 24834 0
ehci_ambarella 3615 0
ehci_hcd 77691 1 ehci_ambarella
usbcore 244473 9 GobiNet,GobiSerial,usbserial,rndis_host,cdc_ether,usbnet,cdc_acm,ehci_ambarella,ehci_hcd
cfg80211 337122 0
rfkill 13990 1 cfg80211
# cat /proc/tty/drivers
/dev/tty /dev/tty 5 0 system:/dev/tty
/dev/console /dev/console 5 1 system:console
/dev/ptmx /dev/ptmx 5 2 system
/dev/vc/0 /dev/vc/0 4 0 system:vtmaster
usbserial /dev/ttyUSB 188 0-511 serial
acm /dev/ttyACM 166 0-255 serial
ambarella-uart /dev/ttyS 4 64-66 serial
pty_slave /dev/pts 136 0-1048575 pty:slave
pty_master /dev/ptm 128 0-1048575 pty:master
unknown /dev/tty 4 1-63 console
リセット後:
# ls -al /dev/ttyUSB*
crw-rw---- 1 root root 188, 1 Feb 19 14:55 /dev/ttyUSB1
crw-rw---- 1 root root 188, 2 Feb 19 14:55 /dev/ttyUSB2
crw-rw---- 1 root root 188, 3 Feb 19 14:55 /dev/ttyUSB3
# cat /proc/tty/drivers
/dev/tty /dev/tty 5 0 system:/dev/tty
/dev/console /dev/console 5 1 system:console
/dev/ptmx /dev/ptmx 5 2 system
/dev/vc/0 /dev/vc/0 4 0 system:vtmaster
usbserial /dev/ttyUSB 188 0-511 serial
acm /dev/ttyACM 166 0-255 serial
ambarella-uart /dev/ttyS 4 64-66 serial
pty_slave /dev/pts 136 0-1048575 pty:slave
pty_master /dev/ptm 128 0-1048575 pty:master
unknown /dev/tty 4 1-63 console
# cat /proc/tty/driver/usbserial
usbserinfo:1.0 driver:2.0
1: module:GobiSerial name:"GobiSerial" vendor:1199 product:68c0 num_ports:1 port:0 path:usb-AmbUSB-1
2: module:GobiSerial name:"GobiSerial" vendor:1199 product:68c0 num_ports:1 port:0 path:usb-AmbUSB-1
3: module:GobiSerial name:"GobiSerial" vendor:1199 product:68c0 num_ports:1 port:0 path:usb-AmbUSB-1
これが起こらないようにしたい、または問題を解決できるようにしたいです。新しいUSBポートを取り外して再定義してみました。
rm /dev/ttyUSB1
rm /dev/ttyUSB2
rm /dev/ttyUSB3
mknod /dev/ttyUSB0 c 188 0
mknod /dev/ttyUSB1 c 188 1
mknod /dev/ttyUSB2 c 188 2
しかし、それは変わりませんでしたcat /proc/tty/driver/usbserial
。ドライバを削除しようとしています。
rmmod /lib/modules/GobiSerial.ko
modprobe -r usbserial
ただし、エラーのため失敗します。
modprobe: can't unload module 'usbserial': Resource temporarily unavailable
GobiSerialをqcserialに置き換えようとしましたが、同じ問題が発生します。
cat /proc/tty/driver/usbserial
usbserinfo:1.0 driver:2.0
1: module:qcserial name:"Qualcomm USB modem" vendor:1199 product:68c0 num_ports:1 port:0 path:usb-AmbUSB-1
2: module:qcserial name:"Qualcomm USB modem" vendor:1199 product:68c0 num_ports:1 port:0 path:usb-AmbUSB-1
3: module:qcserial name:"Qualcomm USB modem" vendor:1199 product:68c0 num_ports:1 port:0 path:usb-AmbUSB-1