static bool gridseed_prepare_work(struct thr_info __maybe_unused *thr, struct work *work) { struct cgpu_info *gridseed = thr->cgpu; GRIDSEED_INFO *info = gridseed->device_data; cgtime(&info->scanhash_time); gc3355_send_cmds(gridseed, str_ltc_reset); usb_buffer_clear(gridseed); return gridseed_send_task(gridseed, work); }
static void gc3355_init(struct cgpu_info *gridseed, GRIDSEED_INFO *info) { unsigned char buf[512]; int amount; applog(LOG_NOTICE, "System reseting"); gc3355_send_cmds(gridseed, str_reset); cgsleep_ms(200); usb_buffer_clear(gridseed); usb_read_timeout(gridseed, buf, sizeof(buf), &amount, 10, C_GETRESULTS); gc3355_send_cmds(gridseed, str_init); gc3355_send_cmds(gridseed, str_ltc_reset); gc3355_set_core_freq(gridseed); if (info->voltage) gc3355_increase_voltage(gridseed); }
static void gc3355_init(struct cgpu_info *gridseed, GRIDSEED_INFO *info, bool set_nonce) { unsigned char buf[512]; int amount; applog(LOG_NOTICE, "System reseting"); gc3355_send_cmds(gridseed, str_reset); cgsleep_ms(200); usb_buffer_clear(gridseed); usb_read_timeout(gridseed, buf, sizeof(buf), &amount, 10, C_GETRESULTS); gc3355_send_cmds(gridseed, str_init); gc3355_send_cmds(gridseed, str_ltc_reset); gc3355_set_core_freq(gridseed); if (set_nonce) gc3355_set_init_nonce(gridseed); //gc3355_send_cmds(gridseed, str_baud); //gc3355_send_cmds(gridseed, str_enable_btc_cores); gc3355_enable_btc_cores(gridseed, info); if (info->usefifo == 0) gc3355_send_cmds(gridseed, str_nofifo); gridseed_request_ltc_task(gridseed, info); return; }