У нас CentOS 6
установлена очень старая CheckWay Sherman
версия ядра Linux 2.6.32-696.1.1.el6.i686
.
Мы пытаемся интегрировать внешний usbserialВесыустройство, но есть ошибки настройки UART
скорости.
stty -f /dev/ttyUSB0 9600
error unable to perform operation
Вот соответствующие сообщения от dmesg
:
cp210x ttyUSB0: cp210x converter now disconnected from ttyUSB0
cp210x 2-3:1.0: device disconnected
usb 2-4: new full speed USB device number 7 using xhci_hcd
usb 2-4: New USB device found, idVendor=10c4, idProduct=ea60
usb 2-4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
usb 2-4: Product: CP2102N USB to UART Bridge Controller
usb 2-4: Manufacturer: Silicon Labs
usb 2-4: SerialNumber: 52add1d6cbd5eb11ac3ffdf743d319e3
usb 2-4: configuration #1 chosen from 1 choice
cp210x 2-4:1.0: cp210x converter detected
usb 2-4: reset full speed USB device number 7 using xhci_hcd
xhci_hcd 0000:00:14.0: Setup ERROR: setup context command for slot 6.
usb 2-4: reset full speed USB device number 7 using xhci_hcd
xhci_hcd 0000:00:14.0: Setup ERROR: setup context command for slot 6.
usb 2-4: reset full speed USB device number 7 using xhci_hcd
xhci_hcd 0000:00:14.0: xHCI xhci_drop_endpoint called with disabled ep c1b5d540
xhci_hcd 0000:00:14.0: xHCI xhci_drop_endpoint called with disabled ep c1b5d56c
usb 2-4: cp210x converter now attached to ttyUSB0
udev
конфигурация:
[root@pos_test_disp ~]# grep -r "usb" /etc/modprobe.d/
/etc/modprobe.d/dist.conf:alias char-major-188-* usbserial
/etc/modprobe.d/dist.conf:alias usbdevfs usbcore
/etc/modprobe.d/dist.conf:install usbmouse /sbin/modprobe --first-time --ignore-install usbmouse && { /sbin/modprobe hid; /bin/true; }
/etc/modprobe.d/dist.conf:remove usbmouse { /sbin/modprobe -r hid; } ; /sbin/modprobe -r --first-time --ignore-remove usbmouse
/etc/modprobe.d/dist.conf:alias usb-uhci uhci-hcd
/etc/modprobe.d/dist.conf:alias usb-ohci ohci-hcd
[root@pos_test_disp ~]# grep -r "cp210x" /etc/modprobe.d/
lsusb
:
[root@pos_test_disp ~]# lsusb -t
/: Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 5000M
/: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/11p, 480M
|__ Port 2: Dev 2, If 0, Class=HID, Driver=usbhid, 12M
|__ Port 2: Dev 2, If 1, Class=HID, Driver=usbhid, 12M
|__ Port 4: Dev 7, If 0, Class=vend., Driver=cp210x, 12M
|__ Port 6: Dev 4, If 0, Class=hub, Driver=hub/4p, 480M
|__ Port 3: Dev 5, If 0, Class=HID, Driver=usbhid, 1.5M
|__ Port 4: Dev 6, If 0, Class=HID, Driver=usbhid, 1.5M
|__ Port 4: Dev 6, If 1, Class=HID, Driver=usbhid, 1.5M
/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci_hcd/2p, 480M
|__ Port 1: Dev 2, If 0, Class=hub, Driver=hub/8p, 480M
lsmod
:
[root@pos_test_disp ~]# lsmod | head
Module Size Used by
cp210x 11320 1
usbserial 30508 3 cp210x
Я пробовал подключать устройство к другому порту, перезагружать систему и т. д.
Как вы думаете, мне нужно попробовать перекомпилировать драйверы и добавить туда отладочное журналирование?
Если да, то нужно ли мне копаться в cp210x
или xhci_hcd
?
Или, может быть, есть какое-то известное решение?
PS: Я знаю, что нам нужно обновить наше оборудование, но, к сожалению, такой возможности нет.
ОБНОВЛЯТЬ
Я обновил систему до ядра 2.6.32-696.30.1.el6.centos.plus.i686
, yum update
но проблема все еще осталась.