27 Commits (f2bbfee7041409b04a726aba954fddb9780d7870)

Author SHA1 Message Date
Con Kolivas a36e55b754 Set the avalon preferred packet size to 512. 12 years ago
Con Kolivas 581afcf9ab Use only one cgsem in avalon signalling when the write thread should commit work by reading the status bytes off during an avalon_read, minimising the number of usb calls and resetting from only one place. 12 years ago
Con Kolivas 7c683cf2b1 Use low latency usb transfers on the avalon, sleeping up to half a buffer's worth only if no data is returning to increase hashrate, abolish lost work and decrease CPU. 12 years ago
ckolivas b59c33800b Implement cgminer specific cgsem semaphores to imitate unnamed semaphore behaviour on osx which does not support them. 12 years ago
Con Kolivas eec1a86af0 Update copyrights of modified files. 12 years ago
Con Kolivas c0c5c060bd Provide some defaults for avalon if none are specified and do not try to claim the device if it fails to reset with them and no options are specified. 12 years ago
ckolivas 60bb463cf1 Use semaphores to signal a reset to pause the read thread while the write thread does the actual reset, making all writes come from the same place. 12 years ago
Con Kolivas 772b354ea9 Remove unneeded function and checks in avalon write code. 12 years ago
Con Kolivas 7748c46943 Make the avalon_read function parse the ftdi responses appopriately. 12 years ago
Con Kolivas 2a222ecffa Use the avalon read timeout to completion if no data has been read. 12 years ago
Con Kolivas a32e521d0a Implement avalon_ready and avalon_wait_ready functions for when usb is ready to receive commands. 12 years ago
Con Kolivas 269a8de977 First pass rewriting serialdev into direct usb dev for avalon driver. 12 years ago
Con Kolivas 8fea60f384 Define a cts equivalent for direct usb and use it for avalon driver full. 12 years ago
Con Kolivas abfaf36112 Discard any reads obtained from the avalon get results thread during a reset. 12 years ago
Con Kolivas c9ca6ca7e3 Tighter control over work submissions in avalon allows us to use a smaller array. 12 years ago
Con Kolivas 66e27a10c5 Move avalon read thread start till after conditional wait, store idle status in avalon_info and use it to determine whether an error is appropriate or not. 12 years ago
Con Kolivas 7cf154bfa5 Use AVA_GETS_OK macro in avalon_read. 12 years ago
Con Kolivas ebf885520d Do all writes on avalon with a select() timeout to prevent indefinite blocking and loop if less than desired is written. 12 years ago
Con Kolivas 629feb5f3f Create a separate thread for handling all work and idle submission to the avalon which messages the scanhash function it has completed to update statistics. 12 years ago
Con Kolivas 7404446781 Created a threaded message parser for avalon reads. 12 years ago
Con Kolivas 569a6f65a0 Do a non-blocking read of anything in the avalon buffer after opening the device. 12 years ago
Con Kolivas 6c5c6e99a3 Reinstate the matching_work_count per subdevice on avalon based on the work subid. 12 years ago
Con Kolivas 0c35f67aa9 Make the avalon array size a macro. 12 years ago
Con Kolivas 3671b2c310 The read_count is unused by the avalon get result code and no longer required for avalon reset so simplify code removing it. 12 years ago
Con Kolivas 6752c24750 Remove unused per unit matching work count for avalon. 12 years ago
Con Kolivas 2f75a5d89e Simplify avalon scanhash code using the new find_queued_work_bymidstate function. Partially works only. 12 years ago
Con Kolivas 71bae003bc First draft of port of avalon driver to new cgminer queued infrastructure. 12 years ago