Commit 045d0362e79730d868a62041b39f61b3023c557b

Con Kolivas 2013-04-26T20:35:05

Since we are filling a queue on the bflsc devices, there is no need to run through scanwork frequently provided we use the restart_wait function to abort early during a block change.

diff --git a/driver-bflsc.c b/driver-bflsc.c
index dda2dbe..231fb9d 100644
--- a/driver-bflsc.c
+++ b/driver-bflsc.c
@@ -278,13 +278,13 @@ struct SaveString {
 // SCAN_TIME - delay after sending work
 // RES_TIME - delay between checking for results
 // TODO: make dynamic? (for all but MiniRig)
-#define BAM_SCAN_TIME 2
+#define BAM_SCAN_TIME 20
 #define BAM_RES_TIME 2
-#define BAS_SCAN_TIME 36
+#define BAS_SCAN_TIME 360
 #define BAS_RES_TIME 36
-#define BAL_SCAN_TIME 72
+#define BAL_SCAN_TIME 720
 #define BAL_RES_TIME 72
-#define BAJ_SCAN_TIME 100
+#define BAJ_SCAN_TIME 1000
 #define BAJ_RES_TIME 100
 
 #define BFLSC_TEMP_SLEEPMS 5
@@ -1560,7 +1560,7 @@ static int64_t bflsc_scanwork(struct thr_info *thr)
 
 	// avoid a hard loop
 	if (sc_info->scan_sleep_time > 0)
-		nmsleep(sc_info->scan_sleep_time);
+		restart_wait(sc_info->scan_sleep_time);
 
 	// Count up the work done since we last were here
 	wr_lock(&(sc_info->stat_lock));