Browse Source

Do avalon driver detection last as it will try to claim any similar device and they are not reliably detected.

Con Kolivas 12 years ago
parent
commit
f4a9a8e60c
1 changed files with 11 additions and 9 deletions
  1. 11 9
      cgminer.c

+ 11 - 9
cgminer.c

@@ -7155,10 +7155,6 @@ static void *hotplug_thread(void __maybe_unused *userdata)
 			icarus_drv.drv_detect();
 #endif
 
-#ifdef USE_AVALON
-			avalon_drv.drv_detect();
-#endif
-
 #ifdef USE_BFLSC
 			bflsc_drv.drv_detect();
 #endif
@@ -7171,6 +7167,10 @@ static void *hotplug_thread(void __maybe_unused *userdata)
 			modminer_drv.drv_detect();
 #endif
 
+#ifdef USE_AVALON
+			avalon_drv.drv_detect();
+#endif
+
 			if (new_devices)
 				hotplug_process();
 
@@ -7384,11 +7384,6 @@ int main(int argc, char *argv[])
 		icarus_drv.drv_detect();
 #endif
 
-#ifdef USE_AVALON
-	if (!opt_scrypt)
-		avalon_drv.drv_detect();
-#endif
-
 #ifdef USE_BFLSC
 	if (!opt_scrypt)
 		bflsc_drv.drv_detect();
@@ -7409,6 +7404,13 @@ int main(int argc, char *argv[])
 		ztex_drv.drv_detect();
 #endif
 
+	/* Detect avalon last since it will try to claim the device regardless
+	 * as detection is unreliable. */
+#ifdef USE_AVALON
+	if (!opt_scrypt)
+		avalon_drv.drv_detect();
+#endif
+
 	if (devices_enabled == -1) {
 		applog(LOG_ERR, "Devices detected:");
 		for (i = 0; i < total_devices; ++i) {