Bonjour à tous.
J'ai écris un pti firmware sur un µC dans l'optique de faire du transfert de données Bulk IN/OUT vers un PC (sous linux pour l'instant).
Voici ce que donne un lsusb -v sur la machine connectée au µC :
Code lsusb -v : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56 Bus 001 Device 007: ID 0123:4567 Device Descriptor: bLength 18 bDescriptorType 1 bcdUSB 2.00 bDeviceClass 0 (Defined at Interface level) bDeviceSubClass 0 bDeviceProtocol 0 bMaxPacketSize0 16 idVendor 0x0123 idProduct 0x4567 bcdDevice 1.00 iManufacturer 1 iProduct 2 iSerial 3 bNumConfigurations 1 Configuration Descriptor: bLength 9 bDescriptorType 2 wTotalLength 32 bNumInterfaces 1 bConfigurationValue 1 iConfiguration 0 bmAttributes 0xc0 Self Powered MaxPower 100mA Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 0 bNumEndpoints 2 bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 0 bInterfaceProtocol 0 iInterface 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x01 EP 1 OUT bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0040 1x 64 bytes bInterval 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x82 EP 2 IN bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0040 1x 64 bytes bInterval 0
Cela me semble correct, n'est-ce pas ?
Mais, mais ! le driver que j'ai écris ne se charge pas, aucun node ne se crée non plus dans /dev.
Pourtant mon module (simplement dérivé d'usb-skeleton avec les VID et PID qui vont bien -- 0x0123 0x4567) est bien en mémoire (il printk à l'exec d'__init et à l'exec de probe()), mais n'est pas appelé.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 $dmesg|tail [ 2561.216204] usb 1-2: new full-speed USB device number 7 using ohci_hcd
Quelques suggestions ? Merci pour votre aide.
Edit, quelques infos supplémentaires :
À la connexion USB de mon device :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 $udevadm monitor KERNEL[5226.607086] add /devices/pci0000:00/0000:00:06.0/usb1/1-2 (usb) KERNEL[5226.616284] add /devices/pci0000:00/0000:00:06.0/usb1/1-2/1-2:1.0 (usb) UDEV [5226.621658] add /devices/pci0000:00/0000:00:06.0/usb1/1-2 (usb) UDEV [5226.630613] add /devices/pci0000:00/0000:00:06.0/usb1/1-2/1-2:1.0 (usb)
Partager