On Tue, Jul 2, 2013 at 1:32 PM, Xiaofan Chen <[email protected]> wrote:
> On Tue, Jul 2, 2013 at 11:44 AM, Xiaofan Chen <[email protected]> wrote:
>> Sorry for the false alarm. It seems to do with using WinZIP
>> to un-archive the tar.bz2 file. Using MSys utility sorted out
>> the issue. Normally I am using 7-zip and/or MSys utility
>> but I happened to use WinZIP this time.
>>
>
> Some issues under Windows 7 x64 with the xusb example.
> The device is ST-Link V2 using ST's WinUSB driver.
Strange. This device is actually STM32-F4 Discovery Kit with
built-in ST-Link V2. I thought this may have something to
do with ST's latest firmware (V2.J17.S0). So I tried to use
another STM32-F0 Discovery Kit with built-in ST-Link V2 debugger
with older firmware version (V2.J14.S0), then xusb works fine.
Now I plugged the STM32-F4 kit again and xusb seems to work fine
and I I can not reproduce the issue again.
So I guess there is no problem with xusb and libusbx.
C:\work\libusbx\libusbx-1.0.16-rc2\bin_mingw32>xusb 0483:3748
Using libusbx v1.0.16.10767
Opening device 0483:3748...
Reading device descriptor:
length: 18
device class: 0
S/N: 3
VID:PID: 0483:3748
bcdDevice: 0100
iMan:iProd:iSer: 1:2:3
nb confs: 1
Reading BOS descriptor: no descriptor
Reading first configuration descriptor:
nb interfaces: 1
interface[0]: id = 0
interface[0].altsetting[0]: num endpoints = 3
Class.SubClass.Protocol: FF.FF.FF
endpoint[0].address: 81
max packet size: 0040
polling interval: 00
endpoint[1].address: 02
max packet size: 0040
polling interval: 00
endpoint[2].address: 83
max packet size: 0040
polling interval: 00
Claiming interface 0...
Reading string descriptors:
String (0x01): "STMicroelectronics"
String (0x02): "STM32 STLink"
String (0x03): "I?s♠I?QQ7↨◄?"
Releasing interface 0...
Closing device...
[debug log]
[skipped the earlier part]
...
Reading device descriptor:
[ 1.363136] [00000b74] libusbx: debug [libusb_get_device_descriptor]
length: 18
device class: 0
S/N: 3
VID:PID: 0483:3748
bcdDevice: 0100
iMan:iProd:iSer: 1:2:3
nb confs: 1
Reading BOS descriptor: [ 1.366137] [00000b74] libusbx: debug
[libusb_claim_interface] interface 0
[ 1.366137] [00000b74] libusbx: debug [winusbx_claim_interface]
claimed interface 0
[ 1.366137] [00000b74] libusbx: debug [libusb_get_config_descriptor] index 0
[ 1.366137] [00000b74] libusbx: debug [windows_assign_endpoints]
(re)assigned endpoint 81 to interface 0
[ 1.367137] [00000b74] libusbx: debug [windows_assign_endpoints]
(re)assigned endpoint 02 to interface 0
[ 1.367137] [00000b74] libusbx: debug [windows_assign_endpoints]
(re)assigned endpoint 83 to interface 0
[ 1.367137] [00000b74] libusbx: debug [auto_claim] auto-claimed interface 0 for
control request
[ 1.367137] [00000b74] libusbx: debug [winusbx_submit_control_transfer] will use
interface 0
[ 1.368137] [00000b74] libusbx: debug [usbi_add_pollfd] add fd 2 events 1
[ 1.368137] [00000b74] libusbx: debug [libusb_get_next_timeout] next timeout in
0.997433s
[ 1.368137] [00000b74] libusbx: debug
[libusb_handle_events_timeout_completed] doing our own event handling
[ 1.369137] [00000b74] libusbx: debug [handle_events] poll() 3 fds with timeout
in 998ms
[ 1.370137] [00000b74] libusbx: debug [handle_events] poll() returned 1
[ 1.370137] [00000b74] libusbx: debug [windows_handle_events] checking fd 0 with
revents = 0000
[ 1.370137] [00000b74] libusbx: debug [windows_handle_events] checking fd 1 with
revents = 0000
[ 1.370137] [00000b74] libusbx: debug [windows_handle_events] checking fd 2 with
revents = 0001
[ 1.371137] [00000b74] libusbx: debug [usbi_remove_pollfd] remove fd 2
[ 1.371137] [00000b74] libusbx: debug [windows_transfer_callback]
handling I/O completion with errcode 31, size 0
[ 1.371137] [00000b74] libusbx: debug [windows_transfer_callback]
detected endpoint stall
[ 1.372137] [00000b74] libusbx: debug [libusb_release_interface] interface 0
[ 1.372137] [00000b74] libusbx: debug [auto_release] auto-released interface 0
[ 1.372137] [00000b74] libusbx: debug [usbi_handle_transfer_completion] transfer
00968510 has callback 6b6064e4
[ 1.372137] [00000b74] libusbx: debug [sync_transfer_cb] actual_length=0
no descriptor
Reading first configuration descriptor:
[ 1.373137] [00000b74] libusbx: debug [libusb_get_config_descriptor] index 0
nb interfaces: 1
interface[0]: id = 0
interface[0].altsetting[0]: num endpoints = 3
Class.SubClass.Protocol: FF.FF.FF
endpoint[0].address: 81
max packet size: 0040
polling interval: 00
endpoint[1].address: 02
max packet size: 0040
polling interval: 00
endpoint[2].address: 83
max packet size: 0040
polling interval: 00
Claiming interface 0...
[ 1.376138] [00000b74] libusbx: debug [libusb_claim_interface] interface 0
[ 1.377138] [00000b74] libusbx: debug [winusbx_claim_interface] claimed interfac
e 0
[ 1.377138] [00000b74] libusbx: debug [libusb_get_config_descriptor] index 0
[ 1.377138] [00000b74] libusbx: debug [windows_assign_endpoints] (re)assigned en
dpoint 81 to interface 0
[ 1.378138] [00000b74] libusbx: debug [windows_assign_endpoints] (re)assigned en
dpoint 02 to interface 0
[ 1.378138] [00000b74] libusbx: debug [windows_assign_endpoints] (re)assigned en
dpoint 83 to interface 0
Reading string descriptors:
[ 1.380138] [00000b74] libusbx: debug [winusbx_submit_control_transfer] will use
interface 0
[ 1.380138] [00000b74] libusbx: debug [usbi_add_pollfd] add fd 2 events 1
[ 1.381138] [00000b74] libusbx: debug [libusb_get_next_timeout] next timeout in
0.998717s
[ 1.381138] [00000b74] libusbx: debug [libusb_handle_events_timeout_completed] d
oing our own event handling
[ 1.381138] [00000b74] libusbx: debug [handle_events] poll() 3 fds with timeout
in 999ms
[ 1.381138] [00000b74] libusbx: debug [handle_events] poll() returned 1
[ 1.382138] [00000b74] libusbx: debug [windows_handle_events] checking fd 0 with
revents = 0000
[ 1.382138] [00000b74] libusbx: debug [windows_handle_events] checking fd 1 with
revents = 0000
[ 1.382138] [00000b74] libusbx: debug [windows_handle_events] checking fd 2 with
revents = 0001
[ 1.383138] [00000b74] libusbx: debug [usbi_remove_pollfd] remove fd 2
[ 1.383138] [00000b74] libusbx: debug [windows_transfer_callback] handling I/O c
ompletion with errcode 0, size 4
[ 1.383138] [00000b74] libusbx: debug [usbi_handle_transfer_completion] transfer
00968510 has callback 6b6064e4
[ 1.384138] [00000b74] libusbx: debug [sync_transfer_cb] actual_length=4
[ 1.384138] [00000b74] libusbx: debug [winusbx_submit_control_transfer] will use
interface 0
[ 1.384138] [00000b74] libusbx: debug [usbi_add_pollfd] add fd 2 events 1
[ 1.384138] [00000b74] libusbx: debug [libusb_get_next_timeout] next timeout in
0.999572s
[ 1.385138] [00000b74] libusbx: debug
[libusb_handle_events_timeout_completed] doing our own event handling
[ 1.385138] [00000b74] libusbx: debug [handle_events] poll() 3 fds with timeout
in 1000ms
[ 1.385138] [00000b74] libusbx: debug [handle_events] poll() returned 1
[ 1.385138] [00000b74] libusbx: debug [windows_handle_events] checking fd 0 with
revents = 0000
[ 1.385138] [00000b74] libusbx: debug [windows_handle_events] checking fd 1 with
revents = 0000
[ 1.386139] [00000b74] libusbx: debug [windows_handle_events] checking fd 2 with
revents = 0001
[ 1.386139] [00000b74] libusbx: debug [usbi_remove_pollfd] remove fd 2
[ 1.386139] [00000b74] libusbx: debug [windows_transfer_callback]
handling I/O completion with errcode 0, size 38
[ 1.387139] [00000b74] libusbx: debug [usbi_handle_transfer_completion] transfer
00968510 has callback 6b6064e4
[ 1.387139] [00000b74] libusbx: debug [sync_transfer_cb] actual_length=38
String (0x01): "STMicroelectronics"
[ 1.388139] [00000b74] libusbx: debug [winusbx_submit_control_transfer] will use
interface 0
[ 1.388139] [00000b74] libusbx: debug [usbi_add_pollfd] add fd 2 events 1
[ 1.388139] [00000b74] libusbx: debug [libusb_get_next_timeout] next timeout in
0.999144s
[ 1.390139] [00000b74] libusbx: debug
[libusb_handle_events_timeout_completed] doing our own event handling
[ 1.390139] [00000b74] libusbx: debug [handle_events] poll() 3 fds with timeout
in 1000ms
[ 1.390139] [00000b74] libusbx: debug [handle_events] poll() returned 1
[ 1.390139] [00000b74] libusbx: debug [windows_handle_events] checking fd 0 with
revents = 0000
[ 1.390139] [00000b74] libusbx: debug [windows_handle_events] checking fd 1 with
revents = 0000
[ 1.391139] [00000b74] libusbx: debug [windows_handle_events] checking fd 2 with
revents = 0001
[ 1.391139] [00000b74] libusbx: debug [usbi_remove_pollfd] remove fd 2
[ 1.391139] [00000b74] libusbx: debug [windows_transfer_callback] handling I/O c
ompletion with errcode 0, size 4
[ 1.392139] [00000b74] libusbx: debug [usbi_handle_transfer_completion] transfer
00968510 has callback 6b6064e4
[ 1.392139] [00000b74] libusbx: debug [sync_transfer_cb] actual_length=4
[ 1.392139] [00000b74] libusbx: debug [winusbx_submit_control_transfer] will use
interface 0
[ 1.392139] [00000b74] libusbx: debug [usbi_add_pollfd] add fd 2 events 1
[ 1.393139] [00000b74] libusbx: debug [libusb_get_next_timeout] next timeout in
0.999145s
[ 1.393139] [00000b74] libusbx: debug
[libusb_handle_events_timeout_completed] doing our own event handling
[ 1.393139] [00000b74] libusbx: debug [handle_events] poll() 3 fds with timeout
in 1000ms
[ 1.395139] [00000b74] libusbx: debug [handle_events] poll() returned 1
[ 1.395139] [00000b74] libusbx: debug [windows_handle_events] checking fd 0 with
revents = 0000
[ 1.395139] [00000b74] libusbx: debug [windows_handle_events] checking fd 1 with
revents = 0000
[ 1.396140] [00000b74] libusbx: debug [windows_handle_events] checking fd 2 with
revents = 0001
[ 1.396140] [00000b74] libusbx: debug [usbi_remove_pollfd] remove fd 2
[ 1.396140] [00000b74] libusbx: debug [windows_transfer_callback]
handling I/O completion with errcode 0, size 26
[ 1.397140] [00000b74] libusbx: debug [usbi_handle_transfer_completion] transfer
00968510 has callback 6b6064e4
[ 1.397140] [00000b74] libusbx: debug [sync_transfer_cb] actual_length=26
String (0x02): "STM32 STLink"
[ 1.398140] [00000b74] libusbx: debug [winusbx_submit_control_transfer] will use
interface 0
[ 1.398140] [00000b74] libusbx: debug [usbi_add_pollfd] add fd 2 events 1
[ 1.398140] [00000b74] libusbx: debug [libusb_get_next_timeout] next timeout in
0.999144s
[ 1.400140] [00000b74] libusbx: debug [libusb_handle_events_timeout_completed] d
oing our own event handling
[ 1.401140] [00000b74] libusbx: debug [handle_events] poll() 3 fds with timeout
in 1000ms
[ 1.401140] [00000b74] libusbx: debug [handle_events] poll() returned 1
[ 1.401140] [00000b74] libusbx: debug [windows_handle_events] checking fd 0 with
revents = 0000
[ 1.401140] [00000b74] libusbx: debug [windows_handle_events] checking fd 1 with
revents = 0000
[ 1.402140] [00000b74] libusbx: debug [windows_handle_events] checking fd 2 with
revents = 0001
[ 1.402140] [00000b74] libusbx: debug [usbi_remove_pollfd] remove fd 2
[ 1.402140] [00000b74] libusbx: debug [windows_transfer_callback]
handling I/O completion with errcode 0, size 4
[ 1.402140] [00000b74] libusbx: debug [usbi_handle_transfer_completion] transfer
00968510 has callback 6b6064e4
[ 1.403140] [00000b74] libusbx: debug [sync_transfer_cb] actual_length=4
[ 1.403140] [00000b74] libusbx: debug [winusbx_submit_control_transfer] will use
interface 0
[ 1.403140] [00000b74] libusbx: debug [usbi_add_pollfd] add fd 2 events 1
[ 1.404140] [00000b74] libusbx: debug [libusb_get_next_timeout] next timeout in
0.999573s
[ 1.404140] [00000b74] libusbx: debug
[libusb_handle_events_timeout_completed] doing our own event handling
[ 1.404140] [00000b74] libusbx: debug [handle_events] poll() 3 fds with timeout
in 1000ms
[ 1.406141] [00000b74] libusbx: debug [handle_events] poll() returned 1
[ 1.406141] [00000b74] libusbx: debug [windows_handle_events] checking fd 0 with
revents = 0000
[ 1.406141] [00000b74] libusbx: debug [windows_handle_events] checking fd 1 with
revents = 0000
[ 1.406141] [00000b74] libusbx: debug [windows_handle_events] checking fd 2 with
revents = 0001
[ 1.407141] [00000b74] libusbx: debug [usbi_remove_pollfd] remove fd 2
[ 1.407141] [00000b74] libusbx: debug [windows_transfer_callback]
handling I/O completion with errcode 0, size 26
[ 1.407141] [00000b74] libusbx: debug [usbi_handle_transfer_completion] transfer
00968510 has callback 6b6064e4
[ 1.408141] [00000b74] libusbx: debug [sync_transfer_cb] actual_length=26
String (0x03): "I?s♠I?QQ7↨◄?"
[ 1.408141] [00000b74] libusbx: debug [winusbx_submit_control_transfer] will use
interface 0
[ 1.409141] [00000b74] libusbx: debug [usbi_add_pollfd] add fd 2 events 1
[ 1.409141] [00000b74] libusbx: debug [libusb_get_next_timeout] next timeout in
0.999572s
[ 1.409141] [00000b74] libusbx: debug [libusb_handle_events_timeout_completed] d
oing our own event handling
[ 1.409141] [00000b74] libusbx: debug [handle_events] poll() 3 fds with timeout
in 1000ms
[ 1.409141] [00000b74] libusbx: debug [handle_events] poll() returned 1
[ 1.410141] [00000b74] libusbx: debug [windows_handle_events] checking fd 0 with
revents = 0000
[ 1.411141] [00000b74] libusbx: debug [windows_handle_events] checking fd 1 with
revents = 0000
[ 1.411141] [00000b74] libusbx: debug [windows_handle_events] checking fd 2 with
revents = 0001
[ 1.411141] [00000b74] libusbx: debug [usbi_remove_pollfd] remove fd 2
[ 1.412141] [00000b74] libusbx: debug [windows_transfer_callback]
handling I/O completion with errcode 0, size 4
[ 1.412141] [00000b74] libusbx: debug [usbi_handle_transfer_completion] transfer
00968510 has callback 6b6064e4
[ 1.412141] [00000b74] libusbx: debug [sync_transfer_cb] actual_length=4
[ 1.413141] [00000b74] libusbx: debug [winusbx_submit_control_transfer] will use
interface 0
[ 1.413141] [00000b74] libusbx: debug [usbi_add_pollfd] add fd 2 events 1
[ 1.414141] [00000b74] libusbx: debug [libusb_get_next_timeout] next
timeout in 0.999573s
[ 1.414141] [00000b74] libusbx: debug
[libusb_handle_events_timeout_completed] doing our own event handling
[ 1.414141] [00000b74] libusbx: debug [handle_events] poll() 3 fds with timeout
in 1000ms
[ 1.414141] [00000b74] libusbx: debug [handle_events] poll() returned 1
[ 1.416142] [00000b74] libusbx: debug [windows_handle_events] checking
fd 0 with revents = 0000
[ 1.416142] [00000b74] libusbx: debug [windows_handle_events] checking
fd 1 with revents = 0000
[ 1.416142] [00000b74] libusbx: debug [windows_handle_events] checking
fd 2 with revents = 0001
[ 1.416142] [00000b74] libusbx: debug [usbi_remove_pollfd] remove fd 2
[ 1.416142] [00000b74] libusbx: debug [windows_transfer_callback]
handling I/O completion with errcode 31, size 0
[ 1.417142] [00000b74] libusbx: debug [windows_transfer_callback]
detected endpoint stall
[ 1.417142] [00000b74] libusbx: debug [usbi_handle_transfer_completion] transfer
00968510 has callback 6b6064e4
[ 1.417142] [00000b74] libusbx: debug [sync_transfer_cb] actual_length=0
Releasing interface 0...
[ 1.418142] [00000b74] libusbx: debug [libusb_release_interface] interface 0
Closing device...
[ 1.418142] [00000b74] libusbx: debug [libusb_close]
[ 1.419142] [00000b74] libusbx: debug [libusb_unref_device] destroy device 2.5
[ 1.419142] [00000b74] libusbx: debug [libusb_unref_device] destroy device 2.2
[ 1.419142] [00000b74] libusbx: debug [libusb_unref_device] destroy device 2.3
[ 1.419142] [00000b74] libusbx: debug [libusb_unref_device] destroy device 2.1
[ 1.419142] [00000b74] libusbx: debug [libusb_unref_device] destroy device 2.0
[ 1.421142] [00000b74] libusbx: debug [libusb_exit]
[ 1.421142] [00000b74] libusbx: debug [libusb_exit] destroying default context
--
Xiaofan
------------------------------------------------------------------------------
This SF.net email is sponsored by Windows:
Build for Windows Store.
http://p.sf.net/sfu/windows-dev2dev
_______________________________________________
libusbx-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/libusbx-devel