Con Kolivas
|
176cae2700
|
Add basic definitions for hashfast device recognition.
|
2013-10-13 18:42:33 +11:00 |
|
Con Kolivas
|
9b5c534911
|
Merge branch 'master' into hashfast
Conflicts:
api.c
configure.ac
miner.h
usbutils.c
usbutils.h
|
2013-10-13 16:41:53 +11:00 |
|
Con Kolivas
|
84de52c1c6
|
Use a write lock when performing any USB control transfers to prevent concurrent transfers.
|
2013-10-13 10:11:46 +11:00 |
|
Con Kolivas
|
c069028648
|
Free a libusb transfer after we have finished using it to avoid a dereference in usb_control_transfer
|
2013-10-12 17:44:28 +11:00 |
|
Con Kolivas
|
84f642f563
|
Although async transfers are meant to use heap memory, we never return before the transfer function has completed so stack memory will suffice for control transfers, fixing a memory leak in the process.
|
2013-10-12 15:06:48 +11:00 |
|
Con Kolivas
|
2ca8d85906
|
Convert all usb control transfers to asynchronous communication with our own timeout management as well.
|
2013-10-12 08:45:03 +11:00 |
|
Con Kolivas
|
b537976036
|
Make pthread conditional timeouts handle all bulk usb transfer timeouts performing libusb_cancel_transfer, disabling timeouts within libusb itself.
|
2013-10-11 23:06:40 +11:00 |
|
Chris Chua
|
b509e84376
|
using separate identifier for bitburner fury boards
|
2013-10-11 21:14:59 +11:00 |
|
Con Kolivas
|
03ad59f287
|
Add a small amount to the usb timeout before cancelling to allow for a regular usb polling interval to pass.
|
2013-10-11 15:37:55 +11:00 |
|
Con Kolivas
|
08d8612f68
|
Do not attempt to clear a usb halt before sending the cancel message since all transfers should normally be cancelled before attempting to clear a halt condition, and only change the return message to a timeout if it's consistent with a cancellation.
|
2013-10-11 14:47:01 +11:00 |
|
Con Kolivas
|
6d18ce4caa
|
Retry up to USB_RETRY_MAX times to clear a halt condition before failing.
|
2013-10-11 14:37:40 +11:00 |
|
Con Kolivas
|
3a7a677f45
|
Show the error number as well as the description in erroring bulk transfers.
|
2013-10-11 13:43:16 +11:00 |
|
Con Kolivas
|
b5dfacef24
|
We are always dependent on libusb handling events so use the blocking libusb_handle_events in the polling thread and use a bool to know if we should continue polling.
|
2013-10-11 10:15:06 +11:00 |
|
Con Kolivas
|
853aa28ffc
|
Merge branch 'master' into async
Conflicts:
usbutils.c
|
2013-10-11 08:49:59 +11:00 |
|
Con Kolivas
|
32bc746178
|
Check for presence of driver name in DRIVER_COUNT_FOUND to prevent strcmp on a null pointer when a driver is not built in.
|
2013-10-09 22:17:56 +11:00 |
|
Con Kolivas
|
dc9c3783ec
|
Display errors on failed usb read and write and consider sequential IO errors a permanent failure.
|
2013-10-08 22:05:01 +11:00 |
|
Con Kolivas
|
a22f5bfddd
|
Use libusb's own error name function instead of hand coding the error names.
|
2013-10-08 21:40:04 +11:00 |
|
Con Kolivas
|
efd8c44182
|
Check for async transfer variants of error messages.
|
2013-10-08 21:01:04 +11:00 |
|
Con Kolivas
|
2806f49c01
|
Revert "Check for the async variants of the libusb errors and retry up to retry max when trying to clear a pipe error/stall."
This reverts commit c7d5256b36 .
|
2013-10-08 21:00:51 +11:00 |
|
Con Kolivas
|
d34279b226
|
Remove unused variables.
|
2013-10-08 20:48:26 +11:00 |
|
Con Kolivas
|
f80c900336
|
Merge branch 'master' into async
Conflicts:
api.c
cgminer.c
miner.h
usbutils.c
util.c
|
2013-10-08 20:46:36 +11:00 |
|
Con Kolivas
|
ef8efd6c48
|
Minimise the time between dropping the read devlock and grabbing the write devlock to avoid tons of logging spam in the interim.
|
2013-10-08 00:01:26 +11:00 |
|
Con Kolivas
|
85e0b3a50f
|
Check for the async variants of the libusb errors and retry up to retry max when trying to clear a pipe error/stall.
|
2013-10-07 23:34:12 +11:00 |
|
Con Kolivas
|
a79768b74d
|
Use libusb's own error name function instead of hand coding the error names.
|
2013-10-07 23:34:12 +11:00 |
|
Con Kolivas
|
74775e4e72
|
Check for libusb transfer stall error to be consistent with async IO errors returned for a halt condition.
|
2013-10-07 23:34:11 +11:00 |
|
Con Kolivas
|
38ae7093d2
|
Check for continuous IO errors on USB and consider the device inactive if more than retry max.
|
2013-10-07 23:34:11 +11:00 |
|
Con Kolivas
|
7318eceef9
|
Make the devlock a cglock in usbutils and only grab the write lock for fundamental changes allowing us to send and receive transfers concurrently without lock contention.
|
2013-10-07 23:34:01 +11:00 |
|
ckolivas
|
6cd7f0f1be
|
Remove unmaintained broken ztex driver.
|
2013-10-07 23:33:13 +11:00 |
|
Kano
|
51418f79e5
|
Klondike update code to current git
|
2013-10-07 23:33:11 +11:00 |
|
Con Kolivas
|
585d4af4e6
|
Store statistics on how often we have to cancel async bulk transfers and add a debug message whenever we do.
|
2013-10-07 23:32:01 +11:00 |
|
Con Kolivas
|
1d1efbe7f8
|
Treat any unexpected timeouts waiting for async transfers as though there may be a usb halt condition and attempt to clear the halt before cancelling the tranfer.
|
2013-10-07 23:31:20 +11:00 |
|
Con Kolivas
|
a798e14a12
|
Remove zero packet flag on usb as it's unsupported outside linux and unnecessary.
|
2013-10-07 23:31:20 +11:00 |
|
Con Kolivas
|
375095645e
|
Fake the libusb transfer timed out message if we force cancel it with our own async functions.
|
2013-10-07 23:31:20 +11:00 |
|
Con Kolivas
|
a6a9407067
|
Use asynchronous transfers for all bulk transfers, allowing us to use our own timers and cancelling transfers that take too long.
|
2013-10-07 23:31:20 +11:00 |
|
Con Kolivas
|
991765845b
|
Add libusb error warning message when significant error occurs.
|
2013-10-07 23:31:20 +11:00 |
|
ckolivas
|
052e434846
|
Remove unmaintained broken ztex driver.
|
2013-10-04 12:00:41 +10:00 |
|
Kano
|
dc85abd9cd
|
Klondike update code to current git
|
2013-10-03 23:19:18 +10:00 |
|
Con Kolivas
|
3eece61819
|
Get statistics on how long usb reads and writes wait on the devlock.
|
2013-10-03 09:40:02 +10:00 |
|
Con Kolivas
|
f49a3c7657
|
Merge branch 'master' into hashfast
Conflicts:
Makefile.am
api.c
cgminer.c
configure.ac
miner.h
usbutils.c
usbutils.h
|
2013-09-30 08:43:29 +10:00 |
|
Con Kolivas
|
14887ba852
|
usbinfo.devlock is only ever write locked so convert it to a mutex
|
2013-09-29 17:45:28 +10:00 |
|
Con Kolivas
|
5e1ebd5070
|
Deuglify use of _PARSE_COMMANDS macro expansions.
|
2013-09-29 13:54:16 +10:00 |
|
Con Kolivas
|
303a763162
|
Deuglify use of usb parse commands macro in usbutils.
|
2013-09-29 13:08:15 +10:00 |
|
ckolivas
|
8b341ccd60
|
Use macro expansion in usb_find_devices to avoid explicitly listing them all.
|
2013-09-29 02:48:39 +10:00 |
|
ckolivas
|
0952a8812f
|
Use macro expansion to iterate over all the drivers without explicitly writing them out in usbutils.c
|
2013-09-29 02:45:45 +10:00 |
|
ckolivas
|
39c2e662a7
|
Reattach the kernel driver on linux on usb_uninit.
|
2013-09-28 23:12:29 +10:00 |
|
ckolivas
|
3ef9fa3b88
|
Attach the kernel driver on failure to usb init on linux.
|
2013-09-28 23:09:26 +10:00 |
|
ckolivas
|
00aa8b4ecf
|
libusb kernel driver operations are only available on linux.
|
2013-09-28 23:05:39 +10:00 |
|
ckolivas
|
372c40956a
|
Reuse the DRIVER_ macros to avoid having yet another definition for DRV_
|
2013-09-28 12:44:36 +10:00 |
|
ckolivas
|
2903028e6b
|
Use macro expansion to generate extern device_drv prototypes.
|
2013-09-28 11:45:58 +10:00 |
|
ckolivas
|
8875197466
|
Create a macro list of drivers to enable easier addition of further drivers.
|
2013-09-28 10:25:48 +10:00 |
|
Con Kolivas
|
c50b13a602
|
Merge branch 'master' of github.com:ckolivas/cgminer into redfury
|
2013-09-28 01:01:48 +10:00 |
|
Con Kolivas
|
71797050f2
|
There is no point setting the BF1 preferred packet size to the maximum since it will do so automatically.
|
2013-09-27 22:37:14 +10:00 |
|
Kano
|
9b9dde1667
|
usbutils - fix USBDEBUG warnings
|
2013-09-27 16:56:25 +10:00 |
|
Con Kolivas
|
8d133706c9
|
Remove unnecessary steps in communicating with BF1 and just use USB interface 1.
|
2013-09-27 15:04:07 +10:00 |
|
Kano
|
61c2ac5714
|
usbutils - usb_bulk_transfer fix the buf/data fix
|
2013-09-27 14:57:22 +10:00 |
|
Con Kolivas
|
2ba7fbe597
|
Merge branch 'master' of github.com:ckolivas/cgminer into redfury
|
2013-09-27 14:35:35 +10:00 |
|
Kano
|
ffea432f73
|
usb_bulk_transfer - use the allocated buffer
|
2013-09-27 14:25:57 +10:00 |
|
Con Kolivas
|
2fc5c1d0ec
|
Set preferred packet sizes per interface on BF1.
|
2013-09-27 13:47:35 +10:00 |
|
Con Kolivas
|
621114c559
|
Merge branch 'master' of github.com:ckolivas/cgminer into redfury
|
2013-09-27 13:08:36 +10:00 |
|
Kano
|
d3a3b3a73d
|
usbutils allow PrefPacketSize per endpoint
|
2013-09-27 13:07:04 +10:00 |
|
Con Kolivas
|
8e4909f8d5
|
Merge branch 'master' of github.com:ckolivas/cgminer into redfury
|
2013-09-27 11:00:48 +10:00 |
|
Con Kolivas
|
7deaa91b26
|
Add information for 2nd USB interface on BF1 devices and choose interface 1 for bulk transfers.
|
2013-09-27 10:36:23 +10:00 |
|
Kano
|
d8518f4336
|
usbutils - bulk transfer copy test fix
|
2013-09-27 10:08:59 +10:00 |
|
Con Kolivas
|
8d6126ac85
|
Merge branch 'master' of github.com:ckolivas/cgminer into redfury
|
2013-09-27 09:53:04 +10:00 |
|
Kano
|
a62267fa93
|
usbutils - add USBDEBUG for usb_bulk_transfer
|
2013-09-27 09:44:58 +10:00 |
|
Con Kolivas
|
a39a9c27d6
|
Merge branch 'master' into redfury
|
2013-09-27 08:32:54 +10:00 |
|
Kano
|
36d8653406
|
usbutils - interfaces must all be on one handle - ep implies the interface
|
2013-09-26 20:58:29 +10:00 |
|
Con Kolivas
|
435065c86b
|
Rename BF1 devices BF1
|
2013-09-26 07:24:09 +10:00 |
|
Con Kolivas
|
d6949f3a94
|
Decrease usb buffering to verbose logging.
|
2013-09-25 15:31:34 +10:00 |
|
Con Kolivas
|
759e82bb98
|
Add in first draft for a serialised work model sending/receiving data for BF1 devices.
|
2013-09-25 15:30:54 +10:00 |
|
Con Kolivas
|
2ab023f300
|
Add BF1 detection code to bitfury driver.
|
2013-09-24 21:55:47 +10:00 |
|
Con Kolivas
|
99c838965e
|
Add bf1 device information to usbutils to enable device detection.
|
2013-09-24 20:39:59 +10:00 |
|
Con Kolivas
|
293622cf2a
|
Merge branch 'master' into hashfast
Conflicts:
usbutils.c
usbutils.h
|
2013-09-22 22:54:18 +10:00 |
|
Con Kolivas
|
48f5ff3754
|
Use macro expansion to only need to define usb enums and commands in one place.
|
2013-09-22 22:38:45 +10:00 |
|
Con Kolivas
|
118f9038a0
|
Merge branch 'master' into hashfast
|
2013-09-22 20:18:18 +10:00 |
|
Kano
|
0e8028fc29
|
usbutils saving incorrect overflow buffer
|
2013-09-22 19:59:29 +10:00 |
|
Kano
|
95eb948053
|
usbtils - interfaces dont work yet in libusb windows so disable for that only
|
2013-09-22 00:12:57 +10:00 |
|
Con Kolivas
|
62f6fefb12
|
Create a struct array of hashfast commands and their associated usb command names.
|
2013-09-21 08:33:11 +10:00 |
|
Kano
|
1910e37121
|
usbutils - only release the device once - for the first intinfo
|
2013-09-19 21:54:15 +10:00 |
|
Kano
|
0f0b0f818f
|
usbutils set_interface is no longer valid
|
2013-09-19 21:41:27 +10:00 |
|
Kano
|
166147a803
|
ubsutils interfaces much each have their own handle
|
2013-09-19 21:11:40 +10:00 |
|
Con Kolivas
|
d866973d52
|
Add templates for USB commands likely to be used by hashfast driver.
|
2013-09-19 17:19:51 +10:00 |
|
Con Kolivas
|
78932aa1ed
|
Provide basic structure for a hashfast driver.
|
2013-09-19 10:38:08 +10:00 |
|
Kano
|
00c2c3369a
|
usbutils kernel_detach should use the interface number
|
2013-09-17 21:42:11 +10:00 |
|
Kano
|
24858de6de
|
usbutils - allow the driver to change which_intinfo
|
2013-09-17 19:19:43 +10:00 |
|
Kano
|
cc5c998164
|
usbutils correct/reverse CMR product numbers
|
2013-09-16 12:23:49 +10:00 |
|
Kano
|
67b9ee4448
|
usbutils specifically track handles and interfaces
|
2013-09-14 18:15:21 +10:00 |
|
Kano
|
08483717aa
|
usbutils - allow a device to use multiple interfaces (and better var names)
|
2013-09-14 18:14:48 +10:00 |
|
kanoi
|
9282054987
|
Merge pull request #466 from mibe/master
Fixed typos
|
2013-09-03 23:57:33 -07:00 |
|
Con Kolivas
|
b1823f2723
|
Always use a maxpacketsize buffer in usb_bulk_transfer
|
2013-08-31 23:18:09 +10:00 |
|
Con Kolivas
|
fb00f24bcf
|
Use 64 bytes for all libusb control transfers.
|
2013-08-31 22:17:53 +10:00 |
|
Con Kolivas
|
33ae5ab8b9
|
Use an internal buffer in _usb_transfer_read in case the read is larger than the buffer passed to it.
|
2013-08-31 21:31:32 +10:00 |
|
Kano
|
612c0b12c8
|
usbutils cps sleep_estimate is not an underestimate
|
2013-08-21 10:06:19 +10:00 |
|
Kano
|
01855a6051
|
usbutils add cps stats estimates
|
2013-08-21 00:06:05 +10:00 |
|
Con Kolivas
|
deb7be72c6
|
Use the reentrant cgsleep functions for usecps in usbutils.
|
2013-08-20 21:08:32 +10:00 |
|
Con Kolivas
|
eeac9d81fc
|
Replace all references to the old n*sleep functions with the equivalent cgsleep_*s replacements.
|
2013-08-20 19:23:49 +10:00 |
|
Con Kolivas
|
f7e6701058
|
Fix uninit variable warnings.
|
2013-08-10 01:11:23 +10:00 |
|
Kano
|
ac08ed1d03
|
usbutils - force check every combination
|
2013-08-10 01:05:50 +10:00 |
|
Chris Chua
|
b0f4d55be7
|
changes to Avalon driver for BitBurner boards
|
2013-07-29 21:39:29 +10:00 |
|
Michael Bemmerl
|
1c7ef61c47
|
Fixed typos
|
2013-07-21 23:34:48 +02:00 |
|