И это всё МОЁ

Уважаемые, всем привет.


Я тут задался идеей подцепить к rockchip rk3188 девайсу с armv7l, на ядре 3.0.36+ USB modem (аналоговый, с телефонным джэком).


Вижу что при подключении оного в порт происходит его определение, но НЕ происходит создание ttyUSB и/или ttyACM0:

[Wed Dec 11 04:37:27 2019] usb 2-1.2: new high speed USB device number 16 using usb20_host

[Wed Dec 11 04:37:28 2019] usb 2-1.2: New USB device found, idVendor=0baf, idProduct=0303

[Wed Dec 11 04:37:28 2019] usb 2-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=10

[Wed Dec 11 04:37:28 2019] usb 2-1.2: Product: USB Modem

[Wed Dec 11 04:37:28 2019] usb 2-1.2: Manufacturer: U.S.Robotics

[Wed Dec 11 04:37:28 2019] usb 2-1.2: SerialNumber: 0000002


Поискав инфу, обнаружил сию надпись:

The ttyACM0 device comes from a CDC modem interface. Unless it’s compiled in your kernel you probably wont see the ttyACM0 devices.


Что даёт поиск cdc:

-rw-r–r– 1 root root 3364 2013-09-04 14:00 /lib/modules/3.0.36+/kernel/drivers/net/usb/cdc_subset.ko


А вот что даёт вывод

#lsusb -v -s 002:021


Bus 002 Device 021: ID 0baf:0303 U.S. Robotics

Device Descriptor:

bLength 18

bDescriptorType 1

bcdUSB 2.00

bDeviceClass 2 Communications

bDeviceSubClass 0

bDeviceProtocol 0

bMaxPacketSize0 64

idVendor 0x0baf U.S. Robotics

idProduct 0x0303

bcdDevice 2.00

iManufacturer 1 U.S.Robotics

iProduct 2 USB Modem

iSerial 10 0000002

bNumConfigurations 1

Configuration Descriptor:

bLength 9

bDescriptorType 2

wTotalLength 67

bNumInterfaces 2

bConfigurationValue 2

iConfiguration 0

bmAttributes 0x80

(Bus Powered)

MaxPower 360mA

Interface Descriptor:

bLength 9

bDescriptorType 4

bInterfaceNumber 0

bAlternateSetting 0

bNumEndpoints 1

bInterfaceClass 2 Communications

bInterfaceSubClass 2 Abstract (modem)

bInterfaceProtocol 1 AT-commands (v.25ter)

iInterface 5 AltIf0

CDC Header:

bcdCDC 10.01

CDC Call Management:

bmCapabilities 0x03

call management

use DataInterface

bDataInterface 1

CDC Union:

bMasterInterface 0

bSlaveInterface 1

CDC ACM:

bmCapabilities 0x06

sends break

line coding and serial state

Endpoint Descriptor:

bLength 7

bDescriptorType 5

bEndpointAddress 0x82 EP 2 IN
bmAttributes 3

Transfer Type Interrupt

Synch Type None

Usage Type Data

wMaxPacketSize 0x0010 1x 16 bytes

bInterval 10

Interface Descriptor:

bLength 9

bDescriptorType 4

bInterfaceNumber 1

bAlternateSetting 0

bNumEndpoints 2

bInterfaceClass 10 CDC Data

bInterfaceSubClass 0 Unused

bInterfaceProtocol 0

iInterface 5 AltIf0

Endpoint Descriptor:

bLength 7

bDescriptorType 5

bEndpointAddress 0x01 EP 1 OUT

bmAttributes 2

Transfer Type Bulk

Synch Type None

Usage Type Data

wMaxPacketSize 0x0200 1x 512 bytes

bInterval 0

Endpoint Descriptor:

bLength 7

bDescriptorType 5

bEndpointAddress 0x81 EP 1 IN

bmAttributes 2

Transfer Type Bulk

Synch Type None

Usage Type Data

wMaxPacketSize 0x0200 1x 512 bytes

bInterval 0

Device Qualifier (for other device speed):

bLength 10

bDescriptorType 6

bcdUSB 2.00

bDeviceClass 2 Communications

bDeviceSubClass 0

bDeviceProtocol 0

bMaxPacketSize0 64

bNumConfigurations 1

Device Status: 0x0002

(Bus Powered)

Remote Wakeup Enabled


— то есть, cdc этот (вроде как) видит модем, однако НЕ решается создать /dev/ttyUSB и/или /dev/ttyACM0.


Я прочёл тут одну ветку на похожую тему, но ответа так и не нашёл - как заставить девайс создавать /dev/tty*.


Может кто скажет, что не так, или - что надо сделать, что бы этот «3.0.36+ #33 SMP PREEMPT Thu Sep 5 16:37:41 EEST 2013 armv7l GNU/Linux»

не просто увидел мой USB модем, но и создал бы ему /dev/ttyUSB и-или /dev/ttyACM0 ?


Благодарю заранее !


-t









 , ,