1
0
mirror of https://github.com/GOSTSec/sgminer synced 2025-01-10 06:48:05 +00:00
Commit Graph

4280 Commits

Author SHA1 Message Date
Con Kolivas
b2b594b80e Revert "Don't reset result counter to zero if it's negative in avalon on just one successful share."
This reverts commit ce0a9cd3a4.

This wasn't the problem.
2013-05-27 00:53:24 +10:00
Con Kolivas
ce0a9cd3a4 Don't reset result counter to zero if it's negative in avalon on just one successful share. 2013-05-27 00:28:56 +10:00
Con Kolivas
4c3fe39e94 Add avalon reset response to debugging output. 2013-05-26 21:50:31 +10:00
Con Kolivas
d0132a7702 Do a wait_avalon_ready before sending a reset code. 2013-05-26 21:34:53 +10:00
Con Kolivas
1f493d6462 Iterate over spare bytes in the avalon result returned from a reset request trying to find the beginning of the reset. 2013-05-26 21:30:55 +10:00
Con Kolivas
467d149785 Idle avalon after reset. 2013-05-26 21:21:11 +10:00
Con Kolivas
1ef027c444 Check for nothing but consecutive bad results on avalon and reset the FPGA if it happens. 2013-05-26 21:14:17 +10:00
Con Kolivas
44736b3012 Make submit_nonce return a bool for whether it's a valid share or not. 2013-05-26 20:59:40 +10:00
Con Kolivas
e90cf62af1 Unset the work restart flag sooner in avalon_flush_work to avoid re-entering the flush work function and just reset the queued counter instead of rotating the array to avoid runs of no valid work. 2013-05-26 17:07:27 +10:00
Con Kolivas
0a9d7ca6b3 Implement an avalon_flush_work function for work restarts. 2013-05-26 16:46:43 +10:00
Con Kolivas
3c39d75fc9 Shut down avalon read and write threads and idle the miners on closing it. 2013-05-26 16:26:42 +10:00
Con Kolivas
c9ca6ca7e3 Tighter control over work submissions in avalon allows us to use a smaller array. 2013-05-26 16:15:10 +10:00
Con Kolivas
db7c72b892 Rotate avalon array to reset the queued count before releasing the lock so work will always be available on next pass. 2013-05-26 14:59:05 +10:00
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. 2013-05-26 14:37:45 +10:00
Con Kolivas
0763070cb0 Wait till the avalon_send_tasks thread has filled the avalon with idle work before starting the avalon_get_results thread. 2013-05-26 14:29:28 +10:00
Con Kolivas
7cf154bfa5 Use AVA_GETS_OK macro in avalon_read. 2013-05-26 14:23:14 +10:00
Con Kolivas
ebf885520d Do all writes on avalon with a select() timeout to prevent indefinite blocking and loop if less than desired is written. 2013-05-26 14:18:21 +10:00
Con Kolivas
596784aaf3 Check explicitly that ava_buffer_full equals the macro. 2013-05-26 14:08:21 +10:00
Con Kolivas
e9e6ad821d Send initial reset as an avalon task to remove avalon_write function. 2013-05-26 13:58:12 +10:00
Con Kolivas
e27ca54408 avalon_clear_readbuf is no longer required. 2013-05-26 13:53:02 +10:00
Con Kolivas
7dc3485fc2 Check for 2 stray bytes on avalon reset. 2013-05-26 13:39:42 +10:00
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. 2013-05-26 13:16:19 +10:00
Con Kolivas
c87f4c303f Give the avalon get results thread name the device number as well. 2013-05-26 09:04:24 +10:00
Con Kolivas
4076e6b36e Make sure we're not adjusting temps on every successful work retrieval on avalon. 2013-05-26 08:57:02 +10:00
Con Kolivas
4784ecce75 Count missing work items from behind a successful work read in avalon as well. 2013-05-26 08:55:03 +10:00
Con Kolivas
70a3e885e0 Change message for work not found in avalon parser. 2013-05-26 08:42:41 +10:00
Con Kolivas
fba70ff593 Simplify debugging and only discard from avalon read buffer if at least one full result has been discarded. 2013-05-26 01:51:20 +10:00
Con Kolivas
7324a33b55 Only display discarded bytes in avalon if they're not used as nonces. 2013-05-26 01:38:51 +10:00
Con Kolivas
be3224f933 Only loop once through avalon_parse_results, but do so after timeouts as well. 2013-05-26 01:33:32 +10:00
Con Kolivas
1f08809a7f Only debug and move ram if spare bytes exist in avalon buffer. 2013-05-26 01:31:20 +10:00
Con Kolivas
9f59e9a6d6 Remove off by one error. 2013-05-26 01:30:03 +10:00
Con Kolivas
0a82b255eb Inverted logic. 2013-05-26 01:25:43 +10:00
Con Kolivas
b6b1abb5d9 Add more debugging to avalon reads. 2013-05-26 01:24:14 +10:00
Con Kolivas
ab73935875 Convert unsigned size_ts to ints for parsing avalon messages. 2013-05-26 01:17:05 +10:00
Con Kolivas
bb06c2f01b Cope with not finding nonces in avalon parsing gracefully by not overflowing buffers. 2013-05-26 01:05:26 +10:00
Con Kolivas
e9429f3886 Adjust avalon temp values on one lot of valid nonces from the parser. 2013-05-26 00:52:20 +10:00
Con Kolivas
7404446781 Created a threaded message parser for avalon reads. 2013-05-26 00:43:23 +10:00
Con Kolivas
ff44696a20 Avalon_wait_write is not effective during resets so do it after going idle. 2013-05-25 23:21:11 +10:00
Con Kolivas
4794ce702e Send only a single byte reset. 2013-05-25 23:11:45 +10:00
Con Kolivas
e2c4379290 Repeat going idle after avalon reset, and wait for write ready before sending each reset request instead of some arbitrary sleep time. 2013-05-25 22:21:02 +10:00
Con Kolivas
a1cec2cdaf Revert "Send full avalon init task for reset."
This reverts commit fa1bca3118.

No difference.
2013-05-25 22:16:10 +10:00
Con Kolivas
fa1bca3118 Send full avalon init task for reset. 2013-05-25 16:09:46 +10:00
Con Kolivas
c7b1b03085 Timeouts on avalon_read and avalon_write should be 100ms. 2013-05-25 16:04:42 +10:00
Con Kolivas
4ddbe24135 Don't close avalon after detecting it until we're cleaning up, instead using reset for comms failures. 2013-05-25 15:52:08 +10:00
Con Kolivas
18710b14d2 Check for avalon_wait_write before sending reset command. 2013-05-25 15:18:31 +10:00
Con Kolivas
0e071c98f6 Sleep in avalon_write_ready. 2013-05-25 15:07:10 +10:00
Con Kolivas
674539bddc Make avalon_wait_write a bool function and check its return value. 2013-05-25 15:03:02 +10:00
Con Kolivas
290666a124 Show how many idle tasks are sent to avalon if it aborts on buffer full. 2013-05-25 14:54:00 +10:00
Con Kolivas
8b1a247106 Reset avalon->device_fd after it is closed. 2013-05-25 14:48:23 +10:00
Con Kolivas
a640164381 Create an avalon_wait_write function that is used before sending avalon idle command. 2013-05-25 14:42:38 +10:00