USB slow starting

Technical questions regarding the XTC tools and programming with XMOS.
rbilling
New User
Posts: 2
Joined: Mon Apr 05, 2021 12:16 pm

USB slow starting

Post by rbilling »

I'm trying to debug an application on an XU224-1024-FB374 and I've run into three problems with the USB on the xTAG3 probe.

1) Sometimes when using it the USB on the development system (Intel i3 running Fedora Core Linux V29) the USB locks up solid. Resetting the driver by SSH from another machine frees it after a delay.

2) It doesn't seem to like USB3, plugging it in via an old hub gets it going.

3) It takes about 90 seconds to fire up and start talking to the target (evidence below).

Any ideas gratefully received.

[unclebob@portia Community_14.4.1]

$ time xrun -lb

XMOS Target Board Info
----------------------

ID Name Serial Type
-- ---- ------ ----
0 Unknown 0x00000000 0x00000000


real 1m29.213s
user 0m0.016s
sys 0m0.017s
[unclebob@portia Community_14.4.1]$ time xrun -l

Available XMOS Devices
----------------------

ID Name Adapter ID Devices
-- ---- ---------- -------
0 XMOS XTAG-3 KKdY8n5S O[0..1]


real 1m28.168s
user 0m0.017s
sys 0m0.026s
[unclebob@portia Community_14.4.1]$



rbilling
New User
Posts: 2
Joined: Mon Apr 05, 2021 12:16 pm

Post by rbilling »

Following my last what seems top be happening is that xgdb is slowly working through and trying every address looking for the xTag3.

It occasionally finds a device that it can open, which may be part of the problem. For example it has opened 3/11 which is the laser printer.

This seems to be in xdbg_getDeviceInfo which is in xdbg_api.so. Is the source of this available?



openat(AT_FDCWD, "/dev/bus/usb/003/014", O_RDWR) = -1 EACCES (Permission denied)
openat(AT_FDCWD, "/dev/bus/usb/003/014", O_RDONLY) = 5
ioctl(5, USBDEVFS_CONNECTINFO, 0x7fff5a56b150) = -1 EPERM (Operation not permitted)
read(5, "\22\1\0\2\t\0\2@5\10\0\205\t\1\1\2\0\1", 18) = 18
read(5, "\t\2)\0\1\1\0\340", 8) = 8
read(5, "2\t\4\0\0\1\t\0\1\0\7\5\201\3\1\0\f\t\4\0\1\1\t\0\2\0\7\5\201\3\1\0"..., 33) = 33
close(5) = 0
openat(AT_FDCWD, "/dev/bus/usb/003/013", O_RDWR) = -1 EACCES (Permission denied)
openat(AT_FDCWD, "/dev/bus/usb/003/013", O_RDONLY) = 5
ioctl(5, USBDEVFS_CONNECTINFO, 0x7fff5a56b150) = -1 EPERM (Operation not permitted)
read(5, "\22\1\20\1\0\0\0\10O\34&\0\20\1\1\2\0\1", 18) = 18
read(5, "\t\2;\0\2\1\0\240", 8) = 8
read(5, "1\t\4\0\0\1\3\1\1\0\t!\20\1\0\1\"6\0\7\5\201\3\10\0\n\t\4\1\0\1\3"..., 51) = 51
close(5) = 0
openat(AT_FDCWD, "/dev/bus/usb/003/011", O_RDWR) = 5
ioctl(5, USBDEVFS_CONNECTINFO, 0x7fff5a56b150) = 0
read(5, "\22\1\20\1\0\0\0\10\360\3\27\20\0\1\1\2\3\1", 18) = 18
read(5, "\t\2N\0\1\1\0\300", 8) = 8
read(5, "\1\t\4\0\0\3\7\1\3\0\7\5\1\2@\0\0\7\5\201\2@\0\0\7\5\202\3\10\0\377\t"..., 70) = 70
close(5) = 0
openat(AT_FDCWD, "/dev/bus/usb/003/010", O_RDWR) = -1 EACCES (Permission denied)
openat(AT_FDCWD, "/dev/bus/usb/003/010", O_RDONLY) = 5
ioctl(5, USBDEVFS_CONNECTINFO, 0x7fff5a56b150) = -1 EPERM (Operation not permitted)
read(5, "\22\1\0\2\t\0\1@@\32\1\1\21\1\0\1\0\1", 18) = 18
read(5, "\t\2\31\0\1\1\0\340", 8) = 8
read(5, "2\t\4\0\0\1\t\0\0\0\7\5\201\3\1\0\f", 17) = 17
close(5) = 0