diff --git a/slsDetectorServers/mythen3DetectorServer/CMakeLists.txt b/slsDetectorServers/mythen3DetectorServer/CMakeLists.txt index b109aa3d0..a5f14667a 100644 --- a/slsDetectorServers/mythen3DetectorServer/CMakeLists.txt +++ b/slsDetectorServers/mythen3DetectorServer/CMakeLists.txt @@ -10,6 +10,7 @@ add_executable(mythen3DetectorServer_virtual ../slsDetectorServer/src/LTC2620_Driver.c ../slsDetectorServer/src/ALTERA_PLL_CYCLONE10.c ../slsDetectorServer/src/programFpgaNios.c + ../slsDetectorServer/src/readDefaultPattern.c ../slsDetectorServer/src/sharedMemory.c ) diff --git a/slsDetectorServers/mythen3DetectorServer/DefaultPattern.txt b/slsDetectorServers/mythen3DetectorServer/DefaultPattern.txt new file mode 100644 index 000000000..511d693b9 --- /dev/null +++ b/slsDetectorServers/mythen3DetectorServer/DefaultPattern.txt @@ -0,0 +1,256 @@ +patword 0x0000 0x0000000000000000 +patword 0x0001 0x0000000000000000 +patword 0x0002 0x0000000000000000 +patword 0x0003 0x0000000000000000 +patword 0x0004 0x0000000000000000 +patword 0x0005 0x0000000000000000 +patword 0x0006 0x0000000000c00000 +patword 0x0007 0x0000000000c00000 +patword 0x0008 0x0000000000c00000 +patword 0x0009 0x0000000000c00000 +patword 0x000a 0x0000000000c00000 +patword 0x000b 0x0000000000c00000 +patword 0x000c 0x0000000000000000 +patword 0x000d 0x0000000000000000 +patword 0x000e 0x0000000000000000 +patword 0x000f 0x0000000000000000 +patword 0x0010 0x0000000000000000 +patword 0x0011 0x0000000000000000 +patword 0x0012 0x0000000000200000 +patword 0x0013 0x0000000000200000 +patword 0x0014 0x0000000000e00000 +patword 0x0015 0x0000000000e00000 +patword 0x0016 0x0000000000e00000 +patword 0x0017 0x0000000000e00000 +patword 0x0018 0x0000000000e00000 +patword 0x0019 0x0000000000e00000 +patword 0x001a 0x0000000000e00000 +patword 0x001b 0x0000000000e00000 +patword 0x001c 0x0000000000200000 +patword 0x001d 0x0000000000200000 +patword 0x001e 0x0000000000200000 +patword 0x001f 0x0000000000200000 +patword 0x0020 0x0000000000200000 +patword 0x0021 0x0000000000200000 +patword 0x0022 0x0000000000200000 +patword 0x0023 0x0000000000200000 +patword 0x0024 0x0000000000200000 +patword 0x0025 0x0000000000200000 +patword 0x0026 0x0000000000200000 +patword 0x0027 0x0000000000200000 +patword 0x0028 0x0000000000200000 +patword 0x0029 0x0000000001200000 +patword 0x002a 0x0000000000200000 +patword 0x002b 0x0000000000200000 +patword 0x002c 0x0000000000200000 +patword 0x002d 0x0000000000200000 +patword 0x002e 0x0000000000200000 +patword 0x002f 0x0000000000200000 +patword 0x0030 0x0000000000200000 +patword 0x0031 0x0000000000200000 +patword 0x0032 0x0000000001200000 +patword 0x0033 0x0000000000200000 +patword 0x0034 0x0000000000200000 +patword 0x0035 0x0000000000200000 +patword 0x0036 0x0000000000200000 +patword 0x0037 0x0000000000200000 +patword 0x0038 0x0000000000200000 +patword 0x0039 0x0000000000200000 +patword 0x003a 0x0000000000200000 +patword 0x003b 0x0000000001200000 +patword 0x003c 0x0000000000200000 +patword 0x003d 0x0000000000200000 +patword 0x003e 0x0000000000200000 +patword 0x003f 0x0000000000200000 +patword 0x0040 0x0000000000200000 +patword 0x0041 0x0000000000200000 +patword 0x0042 0x0000000000200000 +patword 0x0043 0x0000000000200000 +patword 0x0044 0x0000000001200000 +patword 0x0045 0x0000000000200000 +patword 0x0046 0x0000000000200000 +patword 0x0047 0x0000000000200000 +patword 0x0048 0x0000000000200000 +patword 0x0049 0x0000000000200000 +patword 0x004a 0x0000000000200000 +patword 0x004b 0x0000000000200000 +patword 0x004c 0x0000000000200000 +patword 0x004d 0x0000000001200000 +patword 0x004e 0x0000000000200000 +patword 0x004f 0x0000000000200000 +patword 0x0050 0x0000000000200000 +patword 0x0051 0x0000000000200000 +patword 0x0052 0x0000000000200000 +patword 0x0053 0x0000000000200000 +patword 0x0054 0x0000000000200000 +patword 0x0055 0x0000000000200000 +patword 0x0056 0x0000000001200000 +patword 0x0057 0x0000000000200000 +patword 0x0058 0x0000000000200000 +patword 0x0059 0x0000000000200000 +patword 0x005a 0x0000000000280000 +patword 0x005b 0x0000000000280000 +patword 0x005c 0x0000000000280000 +patword 0x005d 0x0000000000280000 +patword 0x005e 0x0000000000280000 +patword 0x005f 0x0000000001280000 +patword 0x0060 0x0000000000280000 +patword 0x0061 0x0000000000200000 +patword 0x0062 0x0000000000200000 +patword 0x0063 0x0000000000200000 +patword 0x0064 0x0000000000200000 +patword 0x0065 0x0000000000200000 +patword 0x0066 0x0000000000200000 +patword 0x0067 0x0000000000200000 +patword 0x0068 0x0000000001200000 +patword 0x0069 0x0000000000200000 +patword 0x006a 0x0000000000200000 +patword 0x006b 0x0000000000200000 +patword 0x006c 0x0000000000200000 +patword 0x006d 0x0000000000200000 +patword 0x006e 0x0000000000200000 +patword 0x006f 0x0000000000200000 +patword 0x0070 0x0000000000200000 +patword 0x0071 0x0000000001200000 +patword 0x0072 0x0000000000200000 +patword 0x0073 0x0000000000200000 +patword 0x0074 0x0000000000200000 +patword 0x0075 0x0000000000200000 +patword 0x0076 0x0000000000200000 +patword 0x0077 0x0000000000200000 +patword 0x0078 0x0000000000200000 +patword 0x0079 0x0000000000200000 +patword 0x007a 0x0000000001200000 +patword 0x007b 0x0000000000200000 +patword 0x007c 0x0000000000200000 +patword 0x007d 0x0000000000200000 +patword 0x007e 0x0000000000280000 +patword 0x007f 0x0000000000280000 +patword 0x0080 0x0000000000280000 +patword 0x0081 0x0000000000280000 +patword 0x0082 0x0000000000280000 +patword 0x0083 0x0000000001280000 +patword 0x0084 0x0000000000280000 +patword 0x0085 0x0000000000200000 +patword 0x0086 0x0000000000200000 +patword 0x0087 0x0000000000200000 +patword 0x0088 0x0000000000200000 +patword 0x0089 0x0000000000200000 +patword 0x008a 0x0000000000200000 +patword 0x008b 0x0000000000200000 +patword 0x008c 0x0000000001200000 +patword 0x008d 0x0000000000200000 +patword 0x008e 0x0000000000200000 +patword 0x008f 0x0000000000200000 +patword 0x0090 0x0000000000200000 +patword 0x0091 0x0000000000200000 +patword 0x0092 0x0000000000200000 +patword 0x0093 0x0000000000200000 +patword 0x0094 0x0000000000200000 +patword 0x0095 0x0000000001200000 +patword 0x0096 0x0000000000200000 +patword 0x0097 0x0000000000200000 +patword 0x0098 0x0000000000200000 +patword 0x0099 0x0000000000200000 +patword 0x009a 0x0000000000200000 +patword 0x009b 0x0000000000200000 +patword 0x009c 0x0000000000200000 +patword 0x009d 0x0000000000200000 +patword 0x009e 0x0000000001200000 +patword 0x009f 0x0000000000200000 +patword 0x00a0 0x0000000000200000 +patword 0x00a1 0x0000000000200000 +patword 0x00a2 0x0000000000200000 +patword 0x00a3 0x0000000000200000 +patword 0x00a4 0x0000000000200000 +patword 0x00a5 0x0000000000200000 +patword 0x00a6 0x0000000000200000 +patword 0x00a7 0x0000000001200000 +patword 0x00a8 0x0000000000200000 +patword 0x00a9 0x0000000000200000 +patword 0x00aa 0x0000000000200000 +patword 0x00ab 0x0000000000200000 +patword 0x00ac 0x0000000000200000 +patword 0x00ad 0x0000000000200000 +patword 0x00ae 0x0000000000200000 +patword 0x00af 0x0000000000200000 +patword 0x00b0 0x0000000001200000 +patword 0x00b1 0x0000000000200000 +patword 0x00b2 0x0000000000200000 +patword 0x00b3 0x0000000000200000 +patword 0x00b4 0x0000000000200000 +patword 0x00b5 0x0000000000200000 +patword 0x00b6 0x0000000000200000 +patword 0x00b7 0x0000000000200000 +patword 0x00b8 0x0000000000200000 +patword 0x00b9 0x0000000001200000 +patword 0x00ba 0x0000000000200000 +patword 0x00bb 0x0000000000200000 +patword 0x00bc 0x0000000000200000 +patword 0x00bd 0x0000000000200000 +patword 0x00be 0x0000000000200000 +patword 0x00bf 0x0000000000200000 +patword 0x00c0 0x0000000000200000 +patword 0x00c1 0x0000000000200000 +patword 0x00c2 0x0000000001200000 +patword 0x00c3 0x0000000000200000 +patword 0x00c4 0x0000000000200000 +patword 0x00c5 0x0000000000200000 +patword 0x00c6 0x0000000000300000 +patword 0x00c7 0x0000000000300000 +patword 0x00c8 0x0000000000300000 +patword 0x00c9 0x0000000000300000 +patword 0x00ca 0x0000000000300000 +patword 0x00cb 0x0000000000200000 +patword 0x00cc 0x0000000000200000 +patword 0x00cd 0x0000000000200000 +patword 0x00ce 0x0000000000200000 +patword 0x00cf 0x0000000000200000 +patword 0x00d0 0x0000000000200000 +patword 0x00d1 0x0000000000200000 +patword 0x00d2 0x0000000000000000 +patword 0x00d3 0x0000000000000000 +patword 0x00d4 0x0000000000000000 +patword 0x00d5 0x0000000000000000 +patword 0x00d6 0x0000000000000000 +patword 0x00d7 0x0000000000000000 +patword 0x00d8 0x0000000000000000 +patword 0x00d9 0x0000000000000000 +patword 0x00da 0x0000000000c00000 +patword 0x00db 0x0000000000c00000 +patword 0x00dc 0x0000000000c00000 +patword 0x00dd 0x0000000000c00000 +patword 0x00de 0x0000000000c00000 +patword 0x00df 0x0000000000c00000 +patword 0x00e0 0x0000000000c00000 +patword 0x00e1 0x0000000000c00000 +patword 0x00e2 0x0000000000c00000 +patword 0x00e3 0x0000000000c00000 +patword 0x00e4 0x0000000000000000 +patword 0x00e5 0x0000000000000000 +patword 0x00e6 0x0000000000000000 +patword 0x00e7 0x0000000000000000 +patword 0x00e8 0x0000000000000000 +patword 0x00e9 0x0000000000000000 +patword 0x00ea 0x0000000000000000 +patword 0x00eb 0x0000000000000000 +patword 0x00ec 0x0000000000000000 +patword 0x00ed 0x0000000000000000 +patword 0x00ee 0x0000000000000000 +patword 0x00ef 0x0000000000000000 +patword 0x00f0 0x0000000000000000 +patword 0x00f1 0x0000000000000000 +patword 0x00f2 0x0000000000000000 +patlimits 0x0000 0x00f2 +patloop0 0x0400 0x0400 +patnloop0 0 +patloop1 0x0400 0x0400 +patnloop1 0 +patloop2 0x0400 0x0400 +patnloop2 0 +patwait0 0x0400 +patwaittime0 0 +patwait1 0x0400 +patwaittime1 0 +patwait2 0x0400 +patwaittime2 0 diff --git a/slsDetectorServers/mythen3DetectorServer/Makefile b/slsDetectorServers/mythen3DetectorServer/Makefile index c0cd3f3f2..607d27228 100755 --- a/slsDetectorServers/mythen3DetectorServer/Makefile +++ b/slsDetectorServers/mythen3DetectorServer/Makefile @@ -12,7 +12,7 @@ DESTDIR ?= bin INSTMODE = 0777 SRCS = slsDetectorFunctionList.c -SRCS += $(main_src)slsDetectorServer.c $(main_src)slsDetectorServer_funcs.c $(main_src)communication_funcs.c $(main_src)nios.c $(main_src)DAC6571.c $(main_src)common.c $(main_src)LTC2620_Driver.c $(main_src)ALTERA_PLL_CYCLONE10.c $(main_src)/programFpgaNios.c $(main_src)/sharedMemory.c +SRCS += $(main_src)slsDetectorServer.c $(main_src)slsDetectorServer_funcs.c $(main_src)communication_funcs.c $(main_src)nios.c $(main_src)DAC6571.c $(main_src)common.c $(main_src)LTC2620_Driver.c $(main_src)ALTERA_PLL_CYCLONE10.c $(main_src)/programFpgaNios.c $(main_src)readDefaultPattern.c $(main_src)/sharedMemory.c OBJS = $(SRCS:.c=.o) diff --git a/slsDetectorServers/mythen3DetectorServer/bin/mythen3DetectorServer_developer b/slsDetectorServers/mythen3DetectorServer/bin/mythen3DetectorServer_developer index a05c7977b..cc759311d 100755 Binary files a/slsDetectorServers/mythen3DetectorServer/bin/mythen3DetectorServer_developer and b/slsDetectorServers/mythen3DetectorServer/bin/mythen3DetectorServer_developer differ diff --git a/slsDetectorServers/mythen3DetectorServer/slsDetectorFunctionList.c b/slsDetectorServers/mythen3DetectorServer/slsDetectorFunctionList.c index 850f51d74..f9c68111f 100644 --- a/slsDetectorServers/mythen3DetectorServer/slsDetectorFunctionList.c +++ b/slsDetectorServers/mythen3DetectorServer/slsDetectorFunctionList.c @@ -426,6 +426,7 @@ void setupDetector() { setGateDelay(i, DEFAULT_GATE_DELAY); } setInitialExtSignals(); + loadDefaultPattern(DEFAULT_PATTERN_FILE); } int setDefaultDacs() { diff --git a/slsDetectorServers/mythen3DetectorServer/slsDetectorServer_defs.h b/slsDetectorServers/mythen3DetectorServer/slsDetectorServer_defs.h index 4b82051be..805cdb553 100644 --- a/slsDetectorServers/mythen3DetectorServer/slsDetectorServer_defs.h +++ b/slsDetectorServers/mythen3DetectorServer/slsDetectorServer_defs.h @@ -24,6 +24,7 @@ #define MAX_EXT_SIGNALS (8) /** Default Parameters */ +#define DEFAULT_PATTERN_FILE ("DefaultPattern.txt") #define DEFAULT_INTERNAL_GATES (1) #define DEFAULT_EXTERNAL_GATES (1) #define DEFAULT_DYNAMIC_RANGE (24) diff --git a/slsDetectorServers/slsDetectorServer/include/readDefaultPattern.h b/slsDetectorServers/slsDetectorServer/include/readDefaultPattern.h index 178055de2..74bd32aa4 100644 --- a/slsDetectorServers/slsDetectorServer/include/readDefaultPattern.h +++ b/slsDetectorServers/slsDetectorServer/include/readDefaultPattern.h @@ -7,7 +7,9 @@ int loadDefaultPattern(char *fname); int default_writePatternWord(char *line, uint32_t addr, uint64_t word); +#ifndef MYTHEN3D int default_writePatternIOControl(char *line, uint64_t arg); +#endif int default_setPatternLoopLimits(char *line, uint32_t startAddr, uint32_t stopAddr); diff --git a/slsDetectorServers/slsDetectorServer/include/slsDetectorFunctionList.h b/slsDetectorServers/slsDetectorServer/include/slsDetectorFunctionList.h index c7065994f..71b6c16d9 100644 --- a/slsDetectorServers/slsDetectorServer/include/slsDetectorFunctionList.h +++ b/slsDetectorServers/slsDetectorServer/include/slsDetectorFunctionList.h @@ -8,7 +8,7 @@ defined(MOENCHD) #include "AD9257.h" // commonServerFunctions.h, blackfin.h, ansi.h #endif -#ifdef MOENCHD +#if defined(MOENCHD) || defined(MYTHEN3D) #include "readDefaultPattern.h" #endif diff --git a/slsDetectorServers/slsDetectorServer/src/readDefaultPattern.c b/slsDetectorServers/slsDetectorServer/src/readDefaultPattern.c index cf3c6b8e6..e4557958c 100644 --- a/slsDetectorServers/slsDetectorServer/src/readDefaultPattern.c +++ b/slsDetectorServers/slsDetectorServer/src/readDefaultPattern.c @@ -9,7 +9,9 @@ extern char initErrorMessage[MAX_STR_LENGTH]; extern int initError; +#ifndef MYTHEN3D extern uint64_t writePatternIOControl(uint64_t word); +#endif extern uint64_t writePatternWord(int addr, uint64_t word); extern int setPatternWaitAddress(int level, int addr); extern uint64_t setPatternWaitTime(int level, uint64_t t); @@ -103,6 +105,7 @@ int loadDefaultPattern(char *fname) { } // patioctrl +#ifndef MYTHEN3D if (!strncmp(line, "patioctrl", strlen("patioctrl"))) { uint64_t arg = 0; @@ -123,6 +126,7 @@ int loadDefaultPattern(char *fname) { break; } } +#endif // patlimits if (!strncmp(line, "patlimits", strlen("patlimits"))) { @@ -300,6 +304,7 @@ int default_writePatternWord(char *line, uint32_t addr, uint64_t word) { return OK; } +#ifndef MYTHEN3D int default_writePatternIOControl(char *line, uint64_t arg) { uint64_t retval = writePatternIOControl(arg); if (retval != arg) { @@ -318,6 +323,7 @@ int default_writePatternIOControl(char *line, uint64_t arg) { } return OK; } +#endif int default_setPatternLoopLimits(char *line, uint32_t startAddr, uint32_t stopAddr) { diff --git a/slsSupportLib/include/versionAPI.h b/slsSupportLib/include/versionAPI.h index 024ae05df..a4961b09f 100644 --- a/slsSupportLib/include/versionAPI.h +++ b/slsSupportLib/include/versionAPI.h @@ -7,6 +7,6 @@ #define APIGOTTHARD 0x200703 #define APIGOTTHARD2 0x200703 #define APIJUNGFRAU 0x200703 -#define APIMYTHEN3 0x200703 #define APIMOENCH 0x200702 #define APIEIGER 0x200703 +#define APIMYTHEN3 0x200708