44 Commits (9dc63cee53da8694a2de5187e9190439306afe12)

Author SHA1 Message Date
Kano 96c0c31775 BTB get version from Firmware 12 years ago
Chris Chua be0d899b74 making sure original Avalon is unaffected by BitBurner changes 12 years ago
Chris Chua 2b932ccb81 changes to queueing strategy for BitBurner boards 12 years ago
Kano 356fcb107a BTB allow up to 1400mV as per firmware limits 12 years ago
Con Kolivas dd9233f78b The write thread in avalon is only ever actually woken up by timeout so remove the write semaphore and use a simple sleep poll. 12 years ago
Kano 802737e8dd BTB voltage management via the API - and set default on startup 12 years ago
Chris Chua b0f4d55be7 changes to Avalon driver for BitBurner boards 12 years ago
Con Kolivas 4b4a13549e Count the number of miners idled in avalon to account more accurately for when its result return rate is too low. 12 years ago
Con Kolivas 065b6a5e36 Provide an --avalon-freq command line to give a valid range of frequencies for avalon in auto mode. 12 years ago
Con Kolivas ce214e1270 Decrease avalon frequency in auto mode if we are unable to maintain the temperature in the optimal range. 12 years ago
Con Kolivas f142a4de23 Allow the avalon fanspeed range to be passed as parameter on the command line, default to 20-100% 12 years ago
Con Kolivas 862c88ecbb Move to slightly more relaxed timeouts for avalon. 12 years ago
Con Kolivas e811c4dc77 Add an avalon-auto option which enables dynamic overclocking based on hardware error rate for maximum effective hashrate. 12 years ago
Con Kolivas 9b45daba6b Add an --avalon-cutoff feature which puts the avalon idle should it reach this temperature, defaulting to 60, re-enabling it when it gets to target temperature. 12 years ago
ckolivas ec4948d93d Change default avalon target temperature to 50 degrees. 12 years ago
Con Kolivas 1fca632f7c Add an --avalon-temp option to allow a user specified target temperature. 12 years ago
Con Kolivas 6cc09aa1e9 Make the fan control on the avalon a simple PID controller with a target temperature of 45. 12 years ago
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