Merge branch 'master' of github.com:ckolivas/cgminer
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112
diff --git a/libztex.c b/libztex.c
index 7c1abd2..9dbe777 100644
--- a/libztex.c
+++ b/libztex.c
@@ -25,13 +25,12 @@
#include <stdio.h>
#include <unistd.h>
#include <string.h>
+#include <config.h>
#include "miner.h"
#include "fpgautils.h"
#include "libztex.h"
-#define BUFSIZE 256
-
//* Capability index for EEPROM support.
#define CAPABILITY_EEPROM 0,0
//* Capability index for FPGA configuration support.
@@ -103,9 +102,10 @@ static enum check_result libztex_checkDevice(struct libusb_device *dev)
FILE *fp = NULL;
libusb_device_handle *hndl = NULL;
struct libusb_device_descriptor desc;
- int i, ret = CHECK_ERROR, err, cnt;
+ int ret = CHECK_ERROR, err, cnt;
size_t got_bytes, length;
unsigned char buf[64], *fw_buf;
+ unsigned int i;
err = libusb_get_device_descriptor(dev, &desc);
if (unlikely(err != 0)) {
@@ -292,7 +292,7 @@ static bool libztex_checkCapability(struct libztex_device *ztex, int i, int j)
return true;
}
-static int libztex_detectBitstreamBitOrder(const unsigned char *buf, int size)
+static char libztex_detectBitstreamBitOrder(const unsigned char *buf, int size)
{
int i;
@@ -407,7 +407,6 @@ static int libztex_configureFpgaHS(struct libztex_device *ztex, const char* firm
applog(LOG_ERR, "%s: HS FPGA configuration failed: DONE pin does not go high", ztex->repr);
return -3;
}
-
}
libusb_release_interface(ztex->hndl, settings[1]);
@@ -415,7 +414,6 @@ static int libztex_configureFpgaHS(struct libztex_device *ztex, const char* firm
nmsleep(200);
applog(LOG_INFO, "%s: HS FPGA configuration done", ztex->repr);
return 0;
-
}
static int libztex_configureFpgaLS(struct libztex_device *ztex, const char* firmware, bool force, char bs)
@@ -490,9 +488,9 @@ int libztex_configureFpga(struct libztex_device *ztex)
strcpy(buf, ztex->bitFileName);
strcat(buf, ".bit");
- rv = libztex_configureFpgaHS(ztex, buf, true, 2);
+ rv = libztex_configureFpgaHS(ztex, buf, true, 2);
if (rv != 0)
- rv = libztex_configureFpgaLS(ztex, buf, true, 2);
+ rv = libztex_configureFpgaLS(ztex, buf, true, 2);
return rv;
}
@@ -520,7 +518,7 @@ int libztex_numberOfFpgas(struct libztex_device *ztex) {
int libztex_selectFpga(struct libztex_device *ztex) {
int cnt, fpgacnt = libztex_numberOfFpgas(ztex->root);
- int number = ztex->fpgaNum;
+ uint16_t number = ztex->fpgaNum;
if (number < 0 || number >= fpgacnt) {
applog(LOG_WARNING, "%s: Trying to select wrong fpga (%d in %d)", ztex->repr, number, fpgacnt);
return 1;
@@ -631,7 +629,6 @@ int libztex_prepare_device(struct libusb_device *dev, struct libztex_device** zt
newdev->moduleReserved[10] = buf[28];
newdev->moduleReserved[11] = buf[29];
-
cnt = libusb_control_transfer(newdev->hndl, 0xc0, 0x82, 0, 0, buf, 64, 500);
if (unlikely(cnt < 0)) {
applog(LOG_ERR, "Ztex check device: Failed to read ztex descriptor with err %d", cnt);
@@ -668,7 +665,7 @@ int libztex_prepare_device(struct libusb_device *dev, struct libztex_device** zt
newdev->suspendSupported = (buf[0] == 5);
newdev->hashesPerClock = buf[0] > 2? (((buf[8] & 255) | ((buf[9] & 255) << 8)) + 1) / 128.0: 1.0;
newdev->extraSolutions = buf[0] > 4? buf[10]: 0;
-
+
applog(LOG_DEBUG, "PID: %d numNonces: %d offsNonces: %d freqM1: %f freqMaxM: %d freqM: %d suspendSupported: %s hashesPerClock: %f extraSolutions: %d",
buf[0], newdev->numNonces, newdev->offsNonces, newdev->freqM1, newdev->freqMaxM, newdev->freqM, newdev->suspendSupported ? "T": "F",
newdev->hashesPerClock, newdev->extraSolutions);
@@ -810,7 +807,7 @@ done:
int libztex_sendHashData(struct libztex_device *ztex, unsigned char *sendbuf)
{
- int cnt, ret, len;
+ int cnt = 0, ret, len;
if (ztex == NULL || ztex->hndl == NULL)
return 0;
@@ -836,7 +833,7 @@ int libztex_readHashData(struct libztex_device *ztex, struct libztex_hash_data n
if (ztex->hndl == NULL)
return 0;
-
+
rbuf = malloc(sizeof(unsigned char) * (ztex->numNonces * bufsize));
if (rbuf == NULL) {
applog(LOG_ERR, "%s: Failed to allocate memory for reading nonces", ztex->repr);