Browse Source

Minor bfl tidy.

nfactor-troky
Con Kolivas 13 years ago
parent
commit
96183bbdf4
  1. 10
      driver-bitforce.c

10
driver-bitforce.c

@ -339,14 +339,17 @@ static uint64_t bitforce_get_result(struct thr_info *thr, struct work *work) @@ -339,14 +339,17 @@ static uint64_t bitforce_get_result(struct thr_info *thr, struct work *work)
while (bitforce->wait_ms < BITFORCE_LONG_TIMEOUT_MS) {
if (unlikely(work_restart[thr->id].restart))
return 1;
mutex_lock(&bitforce->device_mutex);
BFwrite(fdDev, "ZFX", 3);
BFgets(pdevbuf, sizeof(pdevbuf), fdDev);
mutex_unlock(&bitforce->device_mutex);
if (pdevbuf[0] && pdevbuf[0] != 'B') /* BFL does not respond during throttling */
break;
/* if BFL is throttling, no point checking so quickly */
delay_time_ms = (pdevbuf[0] ? BITFORCE_CHECK_INTERVAL_MS : 2*WORK_CHECK_INTERVAL_MS);
delay_time_ms = (pdevbuf[0] ? BITFORCE_CHECK_INTERVAL_MS : 2 * WORK_CHECK_INTERVAL_MS);
usleep(delay_time_ms * 1000);
bitforce->wait_ms += delay_time_ms;
}
@ -356,8 +359,9 @@ static uint64_t bitforce_get_result(struct thr_info *thr, struct work *work) @@ -356,8 +359,9 @@ static uint64_t bitforce_get_result(struct thr_info *thr, struct work *work)
bitforce->device_last_not_well = time(NULL);
bitforce->device_not_well_reason = REASON_DEV_OVER_HEAT;
bitforce->dev_over_heat_count++;
if (!pdevbuf[0]) /* Only return if we got nothing after timeout - there still may be results */
return 1;
return 1;
} else if (pdevbuf[0] == 'N') {/* Hashing complete (NONCE-FOUND or NO-NONCE) */
/* Simple timing adjustment */
delay_time_ms = bitforce->sleep_ms;
@ -370,7 +374,7 @@ static uint64_t bitforce_get_result(struct thr_info *thr, struct work *work) @@ -370,7 +374,7 @@ static uint64_t bitforce_get_result(struct thr_info *thr, struct work *work)
}
applog(LOG_DEBUG, "BFL%i: waited %dms until %s", bitforce->device_id, bitforce->wait_ms, pdevbuf);
if (pdevbuf[2] == '-')
if (pdevbuf[2] == '-')
return bitforce->nonces; /* No valid nonce found */
else if (pdevbuf[0] == 'I')
return 1; /* Device idle */

Loading…
Cancel
Save