jungfrau server has same resetfpga, programfpga and debug mode as developer branch, eiger server has effects from debug flag, but not compiled

This commit is contained in:
Dhanya Maliakal
2018-01-10 15:49:40 +01:00
parent 6690335971
commit 68d6c514a9
8 changed files with 49 additions and 25 deletions

View File

@ -17,7 +17,7 @@ Here are the definitions, but the actual implementation should be done for each
// basic tests
void checkFirmwareCompatibility();
void checkFirmwareCompatibility(int flag);
#ifdef JUNGFRAUD
int checkType();
u_int32_t testFpga(void);

View File

@ -10,7 +10,7 @@
#include <stdio.h>
#include <stdlib.h>
#include <signal.h>
#include <string.h>
extern int sockfd;
@ -23,11 +23,19 @@ int main(int argc, char *argv[]){
int portno, b;
int retval=OK;
int sd, fd;
int debugflag = 0;
// if socket crash, ignores SISPIPE, prevents global signal handler
// subsequent read/write to socket gives error - must handle locally
signal(SIGPIPE, SIG_IGN);
// circumvent the basic tests
if(argc > 1) {
if(!strcasecmp(argv[1],"-debug")){
debugflag = 1;
argc=1;
}
}
#ifdef STOP_SERVER
char cmd[100];
@ -40,9 +48,10 @@ int main(int argc, char *argv[]){
"********************************************************\n\n"
, portno);
b=1;
basictests();
basictests(debugflag);
#ifdef STOP_SERVER
sprintf(cmd,"%s %d &",argv[0],DEFAULT_PORTNO+1);
//cprintf(BLUE,"cmd:%s\n", cmd);
system(cmd);
#endif
} else {

View File

@ -37,7 +37,8 @@ int sockfd; // (updated in slsDetectorServer) as extern
int (*flist[NUM_DET_FUNCTIONS])(int);
char mess[MAX_STR_LENGTH];
int dataBytes = 10;
int isControlServer = 0;
int debugflag = 0;
/* initialization functions */
@ -46,9 +47,10 @@ int printSocketReadError() {
return FAIL;
}
void basictests() {
void basictests(int flag) {
debugflag = flag;
#ifdef SLS_DETECTOR_FUNCTION_LIST
checkFirmwareCompatibility();
checkFirmwareCompatibility(debugflag);
#endif
}
@ -59,8 +61,10 @@ void init_detector(int controlserver) {
#endif
#ifdef SLS_DETECTOR_FUNCTION_LIST
if (controlserver)
if (controlserver) {
isControlServer = 1;
initControlServer();
}
else initStopServer();
#endif
strcpy(mess,"dummy message");
@ -4601,6 +4605,9 @@ int program_fpga(int file_des) {
#ifdef VERY_VERBOSE
printf("Done with program receiving command\n");
#endif
if (isControlServer)
basictests(debugflag);
init_detector(isControlServer);
}
#endif
if (ret==OK)
@ -4646,7 +4653,9 @@ int reset_fpga(int file_des) {
}
#ifdef SLS_DETECTOR_FUNCTION_LIST
else {
initControlServer();
if (isControlServer)
basictests(debugflag);
initControlServer(isControlServer);
ret = FORCE_UPDATE;
}
#endif

View File

@ -6,7 +6,7 @@
// initialization functions
int printSocketReadError();
void basictests();
void basictests(int);
void init_detector(int);
int decode_function(int);
const char* getFunctionName(enum detFuncs func);