This commit is contained in:
maliakal_d 2020-06-18 17:53:43 +02:00
parent f14c2d06a5
commit b40e481da9

View File

@ -361,7 +361,7 @@ void modeNotImplemented(char *modename, int mode) {
} }
void validate(int arg, int retval, char *modename, enum numberMode nummode) { void validate(int arg, int retval, char *modename, enum numberMode nummode) {
if (ret == OK && arg != -1 && retval != arg) { if (ret == OK && arg != GET_FLAG && retval != arg) {
ret = FAIL; ret = FAIL;
if (nummode == HEX) if (nummode == HEX)
sprintf(mess, "Could not %s. Set 0x%x, but read 0x%x\n", modename, sprintf(mess, "Could not %s. Set 0x%x, but read 0x%x\n", modename,
@ -375,7 +375,7 @@ void validate(int arg, int retval, char *modename, enum numberMode nummode) {
void validate64(int64_t arg, int64_t retval, char *modename, void validate64(int64_t arg, int64_t retval, char *modename,
enum numberMode nummode) { enum numberMode nummode) {
if (ret == OK && arg != -1 && retval != arg) { if (ret == OK && arg != GET_FLAG && retval != arg) {
ret = FAIL; ret = FAIL;
if (nummode == HEX) if (nummode == HEX)
sprintf(mess, "Could not %s. Set 0x%llx, but read 0x%llx\n", sprintf(mess, "Could not %s. Set 0x%llx, but read 0x%llx\n",
@ -998,7 +998,7 @@ int set_dac(int file_des) {
(mV ? "mV" : "dac units"))); (mV ? "mV" : "dac units")));
// set & get // set & get
if ((val == -1) || (Server_VerifyLock() == OK)) { if ((val == GET_FLAG) || (Server_VerifyLock() == OK)) {
switch (ind) { switch (ind) {
// adc vpp // adc vpp
@ -1072,7 +1072,7 @@ int set_dac(int file_des) {
case V_POWER_C: case V_POWER_C:
case V_POWER_D: case V_POWER_D:
case V_POWER_IO: case V_POWER_IO:
if (val != -1) { if (val != GET_FLAG) {
if (!mV) { if (!mV) {
ret = FAIL; ret = FAIL;
sprintf(mess, sprintf(mess,
@ -1126,7 +1126,8 @@ int set_dac(int file_des) {
} }
retval = getVchip(); retval = getVchip();
LOG(logDEBUG1, ("Vchip: %d\n", retval)); LOG(logDEBUG1, ("Vchip: %d\n", retval));
if (ret == OK && val != -1 && val != -100 && retval != val) { if (ret == OK && val != GET_FLAG && val != -100 &&
retval != val) {
ret = FAIL; ret = FAIL;
sprintf(mess, "Could not set vchip. Set %d, but read %d\n", sprintf(mess, "Could not set vchip. Set %d, but read %d\n",
val, retval); val, retval);
@ -1170,9 +1171,9 @@ int set_dac(int file_des) {
LOG(logERROR, (mess)); LOG(logERROR, (mess));
} else { } else {
#if defined(CHIPTESTBOARDD) || defined(MOENCHD) #if defined(CHIPTESTBOARDD) || defined(MOENCHD)
if ((val != -1 && mV && if ((val != GET_FLAG && mV &&
checkVLimitCompliant(val) == FAIL) || checkVLimitCompliant(val) == FAIL) ||
(val != -1 && !mV && (val != GET_FLAG && !mV &&
checkVLimitDacCompliant(val) == FAIL)) { checkVLimitDacCompliant(val) == FAIL)) {
ret = FAIL; ret = FAIL;
sprintf(mess, sprintf(mess,
@ -1187,7 +1188,7 @@ int set_dac(int file_des) {
retval = getDAC(serverDacIndex, mV); retval = getDAC(serverDacIndex, mV);
} }
#ifdef EIGERD #ifdef EIGERD
if (val != -1) { if (val != GET_FLAG) {
// changing dac changes settings to undefined // changing dac changes settings to undefined
switch (serverDacIndex) { switch (serverDacIndex) {
case E_VCMP_LL: case E_VCMP_LL:
@ -1208,7 +1209,7 @@ int set_dac(int file_des) {
#endif #endif
// check // check
if (ret == OK) { if (ret == OK) {
if ((abs(retval - val) <= 5) || val == -1) { if ((abs(retval - val) <= 5) || val == GET_FLAG) {
ret = OK; ret = OK;
} else { } else {
ret = FAIL; ret = FAIL;
@ -1686,7 +1687,7 @@ int start_acquisition(int file_des) {
"same as hardware detector mac address %s\n", "same as hardware detector mac address %s\n",
src_mac); src_mac);
LOG(logERROR, (mess)); LOG(logERROR, (mess));
} else if (!enableTenGigabitEthernet(-1) && } else if (!enableTenGigabitEthernet(GET_FLAG) &&
(udpDetails.srcip != getDetectorIP())) { (udpDetails.srcip != getDetectorIP())) {
ret = FAIL; ret = FAIL;
uint32_t sourceip = getDetectorIP(); uint32_t sourceip = getDetectorIP();
@ -1804,7 +1805,7 @@ int start_and_read_all(int file_des) {
"same as hardware detector mac address %s\n", "same as hardware detector mac address %s\n",
src_mac); src_mac);
LOG(logERROR, (mess)); LOG(logERROR, (mess));
} else if (!enableTenGigabitEthernet(-1) && } else if (!enableTenGigabitEthernet(GET_FLAG) &&
(udpDetails.srcip != getDetectorIP())) { (udpDetails.srcip != getDetectorIP())) {
ret = FAIL; ret = FAIL;
uint32_t sourceip = getDetectorIP(); uint32_t sourceip = getDetectorIP();
@ -2623,10 +2624,10 @@ int set_dynamic_range(int file_des) {
LOG(logDEBUG1, ("Setting dr to %d\n", dr)); LOG(logDEBUG1, ("Setting dr to %d\n", dr));
// set & get // set & get
if ((dr == -1) || (Server_VerifyLock() == OK)) { if ((dr == GET_FLAG) || (Server_VerifyLock() == OK)) {
// check dr // check dr
switch (dr) { switch (dr) {
case -1: case GET_FLAG:
#ifdef MYTHEN3D #ifdef MYTHEN3D
case 32: case 32:
#elif EIGERD #elif EIGERD
@ -2795,8 +2796,8 @@ int enable_ten_giga(int file_des) {
functionNotImplemented(); functionNotImplemented();
#else #else
// set & get // set & get
if ((arg == -1) || (Server_VerifyLock() == OK)) { if ((arg == GET_FLAG) || (Server_VerifyLock() == OK)) {
if (arg >= 0 && enableTenGigabitEthernet(-1) != arg) { if (arg >= 0 && enableTenGigabitEthernet(GET_FLAG) != arg) {
enableTenGigabitEthernet(arg); enableTenGigabitEthernet(arg);
uint64_t hardwaremac = getDetectorMAC(); uint64_t hardwaremac = getDetectorMAC();
if (udpDetails.srcmac != hardwaremac) { if (udpDetails.srcmac != hardwaremac) {
@ -2810,7 +2811,7 @@ int enable_ten_giga(int file_des) {
} }
configure_mac(); configure_mac();
} }
retval = enableTenGigabitEthernet(-1); retval = enableTenGigabitEthernet(GET_FLAG);
LOG(logDEBUG1, ("10GbE: %d\n", retval)); LOG(logDEBUG1, ("10GbE: %d\n", retval));
validate(arg, retval, "enable/disable 10GbE", DEC); validate(arg, retval, "enable/disable 10GbE", DEC);
} }
@ -2870,7 +2871,7 @@ int set_pattern_io_control(int file_des) {
#else #else
LOG(logDEBUG1, LOG(logDEBUG1,
("Setting Pattern IO Control to 0x%llx\n", (long long int)arg)); ("Setting Pattern IO Control to 0x%llx\n", (long long int)arg));
if (((int64_t)arg == -1) || (Server_VerifyLock() == OK)) { if (((int64_t)arg == GET_FLAG) || (Server_VerifyLock() == OK)) {
retval = writePatternIOControl(arg); retval = writePatternIOControl(arg);
LOG(logDEBUG1, LOG(logDEBUG1,
("Pattern IO Control retval: 0x%llx\n", (long long int)retval)); ("Pattern IO Control retval: 0x%llx\n", (long long int)retval));
@ -2893,7 +2894,7 @@ int set_pattern_clock_control(int file_des) {
#else #else
LOG(logDEBUG1, LOG(logDEBUG1,
("Setting Pattern Clock Control to 0x%llx\n", (long long int)arg)); ("Setting Pattern Clock Control to 0x%llx\n", (long long int)arg));
if (((int64_t)arg == -1) || (Server_VerifyLock() == OK)) { if (((int64_t)arg == GET_FLAG) || (Server_VerifyLock() == OK)) {
retval = writePatternClkControl(arg); retval = writePatternClkControl(arg);
LOG(logDEBUG1, LOG(logDEBUG1,
("Pattern Clock Control retval: 0x%llx\n", (long long int)retval)); ("Pattern Clock Control retval: 0x%llx\n", (long long int)retval));
@ -2955,7 +2956,8 @@ int set_pattern_loop_addresses(int file_des) {
LOG(logDEBUG1, ("Setting Pattern loop addresses(loopLevel:%d " LOG(logDEBUG1, ("Setting Pattern loop addresses(loopLevel:%d "
"startAddr:0x%x stopAddr:0x%x)\n", "startAddr:0x%x stopAddr:0x%x)\n",
loopLevel, startAddr, stopAddr)); loopLevel, startAddr, stopAddr));
if ((startAddr == -1) || (stopAddr == -1) || (Server_VerifyLock() == OK)) { if ((startAddr == GET_FLAG) || (stopAddr == GET_FLAG) ||
(Server_VerifyLock() == OK)) {
// valid loop level // valid loop level
if (loopLevel < -1 || if (loopLevel < -1 ||
loopLevel > 2) { // loop level of -1 : complete pattern loopLevel > 2) { // loop level of -1 : complete pattern
@ -3007,7 +3009,7 @@ int set_pattern_loop_cycles(int file_des) {
int numLoops = args[1]; int numLoops = args[1];
LOG(logDEBUG1, ("Setting Pattern loop cycles (loopLevel:%d numLoops:%d)\n", LOG(logDEBUG1, ("Setting Pattern loop cycles (loopLevel:%d numLoops:%d)\n",
loopLevel, numLoops)); loopLevel, numLoops));
if ((numLoops == -1) || (Server_VerifyLock() == OK)) { if ((numLoops == GET_FLAG) || (Server_VerifyLock() == OK)) {
// valid loop level // valid loop level
if (loopLevel < 0 || loopLevel > 2) { if (loopLevel < 0 || loopLevel > 2) {
ret = FAIL; ret = FAIL;
@ -3017,8 +3019,8 @@ int set_pattern_loop_cycles(int file_des) {
loopLevel); loopLevel);
LOG(logERROR, (mess)); LOG(logERROR, (mess));
} else { } else {
int startAddr = -1; int startAddr = GET_FLAG;
int stopAddr = -1; int stopAddr = GET_FLAG;
setPatternLoop(loopLevel, &startAddr, &stopAddr, &numLoops); setPatternLoop(loopLevel, &startAddr, &stopAddr, &numLoops);
retval = numLoops; retval = numLoops;
LOG(logDEBUG1, LOG(logDEBUG1,
@ -3045,7 +3047,7 @@ int set_pattern_wait_addr(int file_des) {
int addr = args[1]; int addr = args[1];
LOG(logDEBUG1, ("Setting Pattern wait address (loopLevel:%d addr:0x%x)\n", LOG(logDEBUG1, ("Setting Pattern wait address (loopLevel:%d addr:0x%x)\n",
loopLevel, addr)); loopLevel, addr));
if ((addr == -1) || (Server_VerifyLock() == OK)) { if ((addr == GET_FLAG) || (Server_VerifyLock() == OK)) {
// valid loop level 0-2 // valid loop level 0-2
if (loopLevel < 0 || loopLevel > 2) { if (loopLevel < 0 || loopLevel > 2) {
ret = FAIL; ret = FAIL;
@ -3088,7 +3090,7 @@ int set_pattern_wait_time(int file_des) {
uint64_t timeval = args[1]; uint64_t timeval = args[1];
LOG(logDEBUG1, ("Setting Pattern wait time (loopLevel:%d timeval:0x%llx)\n", LOG(logDEBUG1, ("Setting Pattern wait time (loopLevel:%d timeval:0x%llx)\n",
loopLevel, (long long int)timeval)); loopLevel, (long long int)timeval));
if (((int64_t)timeval == -1) || (Server_VerifyLock() == OK)) { if (((int64_t)timeval == GET_FLAG) || (Server_VerifyLock() == OK)) {
// valid loop level 0-2 // valid loop level 0-2
if (loopLevel < 0 || loopLevel > 2) { if (loopLevel < 0 || loopLevel > 2) {
ret = FAIL; ret = FAIL;
@ -3245,7 +3247,7 @@ int set_counter_bit(int file_des) {
setCounterBit(arg); setCounterBit(arg);
} }
// get // get
retval = setCounterBit(-1); retval = setCounterBit(GET_FLAG);
LOG(logDEBUG1, ("Set counter bit retval: %d\n", retval)); LOG(logDEBUG1, ("Set counter bit retval: %d\n", retval));
validate(arg, retval, "set counter bit", DEC); validate(arg, retval, "set counter bit", DEC);
#endif #endif
@ -3747,7 +3749,7 @@ int power_chip(int file_des) {
functionNotImplemented(); functionNotImplemented();
#else #else
// set & get // set & get
if ((arg == -1) || (Server_VerifyLock() == OK)) { if ((arg == GET_FLAG) || (Server_VerifyLock() == OK)) {
#if defined(MYTHEN3D) || defined(GOTTHARD2D) #if defined(MYTHEN3D) || defined(GOTTHARD2D)
// check only when powering on // check only when powering on
if (arg != -1 && arg != 0) { if (arg != -1 && arg != 0) {
@ -3783,7 +3785,7 @@ int power_chip(int file_des) {
#ifdef JUNGFRAUD #ifdef JUNGFRAUD
// narrow down error when powering on // narrow down error when powering on
if (ret == FAIL && arg > 0) { if (ret == FAIL && arg > 0) {
if (setTemperatureEvent(-1) == 1) if (setTemperatureEvent(GET_FLAG) == 1)
sprintf(mess, sprintf(mess,
"Powering chip failed due to over-temperature event. " "Powering chip failed due to over-temperature event. "
"Clear event & power chip again. Set %d, read %d \n", "Clear event & power chip again. Set %d, read %d \n",
@ -3810,7 +3812,7 @@ int set_activate(int file_des) {
functionNotImplemented(); functionNotImplemented();
#else #else
// set & get // set & get
if ((arg == -1) || (Server_VerifyLock() == OK)) { if ((arg == GET_FLAG) || (Server_VerifyLock() == OK)) {
if (arg >= 0) { if (arg >= 0) {
if (setActivate(arg) == FAIL) { if (setActivate(arg) == FAIL) {
ret = FAIL; ret = FAIL;
@ -3869,7 +3871,7 @@ int threshold_temp(int file_des) {
functionNotImplemented(); functionNotImplemented();
#else #else
// set & get // set & get
if ((arg == -1) || (Server_VerifyLock() == OK)) { if ((arg == GET_FLAG) || (Server_VerifyLock() == OK)) {
if (arg > MAX_THRESHOLD_TEMP_VAL) { if (arg > MAX_THRESHOLD_TEMP_VAL) {
ret = FAIL; ret = FAIL;
sprintf(mess, "Threshold Temp %d should be in range: 0 - %d\n", arg, sprintf(mess, "Threshold Temp %d should be in range: 0 - %d\n", arg,
@ -3902,7 +3904,7 @@ int temp_control(int file_des) {
functionNotImplemented(); functionNotImplemented();
#else #else
// set & get // set & get
if ((arg == -1) || (Server_VerifyLock() == OK)) { if ((arg == GET_FLAG) || (Server_VerifyLock() == OK)) {
retval = setTemperatureControl(arg); retval = setTemperatureControl(arg);
LOG(logDEBUG1, ("Temperature control: %d\n", retval)); LOG(logDEBUG1, ("Temperature control: %d\n", retval));
validate(arg, retval, "set temperature control", DEC); validate(arg, retval, "set temperature control", DEC);
@ -3926,7 +3928,7 @@ int temp_event(int file_des) {
functionNotImplemented(); functionNotImplemented();
#else #else
// set & get // set & get
if ((arg == -1) || (Server_VerifyLock() == OK)) { if ((arg == GET_FLAG) || (Server_VerifyLock() == OK)) {
retval = setTemperatureEvent(arg); retval = setTemperatureEvent(arg);
LOG(logDEBUG1, ("Temperature event: %d\n", retval)); LOG(logDEBUG1, ("Temperature event: %d\n", retval));
validate(arg, retval, "set temperature event", DEC); validate(arg, retval, "set temperature event", DEC);
@ -3949,7 +3951,7 @@ int auto_comp_disable(int file_des) {
functionNotImplemented(); functionNotImplemented();
#else #else
// set & get // set & get
if ((arg == -1) || (Server_VerifyLock() == OK)) { if ((arg == GET_FLAG) || (Server_VerifyLock() == OK)) {
retval = autoCompDisable(arg); retval = autoCompDisable(arg);
LOG(logDEBUG1, ("Auto comp disable: %d\n", retval)); LOG(logDEBUG1, ("Auto comp disable: %d\n", retval));
validate(arg, retval, "set auto comp disable", DEC); validate(arg, retval, "set auto comp disable", DEC);
@ -3972,7 +3974,7 @@ int storage_cell_start(int file_des) {
functionNotImplemented(); functionNotImplemented();
#else #else
// set & get // set & get
if ((arg == -1) || (Server_VerifyLock() == OK)) { if ((arg == GET_FLAG) || (Server_VerifyLock() == OK)) {
if (arg > MAX_STORAGE_CELL_VAL) { if (arg > MAX_STORAGE_CELL_VAL) {
ret = FAIL; ret = FAIL;
strcpy(mess, "Max Storage cell number should not exceed 15\n"); strcpy(mess, "Max Storage cell number should not exceed 15\n");
@ -4092,7 +4094,7 @@ int led(int file_des) {
functionNotImplemented(); functionNotImplemented();
#else #else
// set & get // set & get
if ((arg == -1) || (Server_VerifyLock() == OK)) { if ((arg == GET_FLAG) || (Server_VerifyLock() == OK)) {
retval = setLEDEnable(arg); retval = setLEDEnable(arg);
LOG(logDEBUG1, ("LED Enable: %d\n", retval)); LOG(logDEBUG1, ("LED Enable: %d\n", retval));
validate(arg, retval, "LED Enable", DEC); validate(arg, retval, "LED Enable", DEC);
@ -4386,7 +4388,7 @@ int set_external_sampling_source(int file_des) {
functionNotImplemented(); functionNotImplemented();
#else #else
// set & get // set & get
if ((arg == -1) || (Server_VerifyLock() == OK)) { if ((arg == GET_FLAG) || (Server_VerifyLock() == OK)) {
if (arg < -1 || arg > 63) { if (arg < -1 || arg > 63) {
ret = FAIL; ret = FAIL;
sprintf(mess, sprintf(mess,
@ -4418,7 +4420,7 @@ int set_external_sampling(int file_des) {
functionNotImplemented(); functionNotImplemented();
#else #else
// set & get // set & get
if ((arg == -1) || (Server_VerifyLock() == OK)) { if ((arg == GET_FLAG) || (Server_VerifyLock() == OK)) {
arg = (arg > 0) ? 1 : arg; arg = (arg > 0) ? 1 : arg;
retval = setExternalSampling(arg); retval = setExternalSampling(arg);
LOG(logDEBUG1, ("External Sampling enable: %d\n", retval)); LOG(logDEBUG1, ("External Sampling enable: %d\n", retval));
@ -4663,8 +4665,8 @@ int set_read_n_lines(int file_des) {
MAX_ROWS_PER_READOUT); MAX_ROWS_PER_READOUT);
LOG(logERROR, (mess)); LOG(logERROR, (mess));
} else { } else {
int dr = setDynamicRange(-1); int dr = setDynamicRange(GET_FLAG);
int isTenGiga = enableTenGigabitEthernet(-1); int isTenGiga = enableTenGigabitEthernet(GET_FLAG);
unsigned int maxnl = MAX_ROWS_PER_READOUT; unsigned int maxnl = MAX_ROWS_PER_READOUT;
unsigned int maxnp = (isTenGiga ? 4 : 16) * dr; unsigned int maxnp = (isTenGiga ? 4 : 16) * dr;
if ((arg * maxnp) % maxnl) { if ((arg * maxnp) % maxnl) {
@ -6955,7 +6957,7 @@ int get_receiver_parameters(int file_des) {
return printSocketReadError(); return printSocketReadError();
// dynamic range // dynamic range
i32 = setDynamicRange(-1); i32 = setDynamicRange(GET_FLAG);
n += sendData(file_des, &i32, sizeof(i32), INT32); n += sendData(file_des, &i32, sizeof(i32), INT32);
if (n < 0) if (n < 0)
return printSocketReadError(); return printSocketReadError();
@ -6968,7 +6970,7 @@ int get_receiver_parameters(int file_des) {
// 10 gbe // 10 gbe
#if defined(EIGERD) || defined(CHIPTESTBOARDD) || defined(MOENCHD) #if defined(EIGERD) || defined(CHIPTESTBOARDD) || defined(MOENCHD)
i32 = enableTenGigabitEthernet(-1); i32 = enableTenGigabitEthernet(GET_FLAG);
#else #else
i32 = 0; i32 = 0;
#endif #endif