Browse Source

Check for work restart, breaking out early after usb reads in BF1.

nfactor-troky
Con Kolivas 11 years ago
parent
commit
f97e1ad25f
  1. 5
      driver-bitfury.c

5
driver-bitfury.c

@ -181,6 +181,8 @@ static int64_t bitfury_scanhash(struct thr_info *thr, struct work *work,
* look for the results to prev work. */ * look for the results to prev work. */
usb_read_timeout(bitfury, info->buf, 512, &amount, 600, C_BFO_GETRES); usb_read_timeout(bitfury, info->buf, 512, &amount, 600, C_BFO_GETRES);
info->tot += amount; info->tot += amount;
if (unlikely(thr->work_restart))
goto cascade;
/* Now look for the bulk of the previous work results, they will come /* Now look for the bulk of the previous work results, they will come
* in a batch following the first data. */ * in a batch following the first data. */
@ -191,6 +193,9 @@ static int64_t bitfury_scanhash(struct thr_info *thr, struct work *work,
info->tot += amount; info->tot += amount;
}; };
if (unlikely(thr->work_restart))
goto cascade;
/* Send work */ /* Send work */
usb_write(bitfury, buf, 45, &amount, C_BFO_REQWORK); usb_write(bitfury, buf, 45, &amount, C_BFO_REQWORK);
/* Get response acknowledging work */ /* Get response acknowledging work */

Loading…
Cancel
Save