From 0f9fd5cd7332fe7ba379316bc7d2da1f2d393f85 Mon Sep 17 00:00:00 2001 From: Dhanya Thattil Date: Wed, 6 Nov 2019 16:58:34 +0100 Subject: [PATCH] rename of clkdivider to clkfrequency in servers --- .../bin/ctbDetectorServer_developer | Bin 184836 -> 184836 bytes .../slsDetectorFunctionList.c | 42 +++++++++--------- .../bin/gotthard2DetectorServer_developer | Bin 134900 -> 134900 bytes .../slsDetectorFunctionList.c | 30 ++++++------- .../bin/mythen3DetectorServer_developer | Bin 133968 -> 133968 bytes .../slsDetectorFunctionList.c | 26 +++++------ slsSupportLib/include/versionAPI.h | 4 +- 7 files changed, 51 insertions(+), 51 deletions(-) diff --git a/slsDetectorServers/ctbDetectorServer/bin/ctbDetectorServer_developer b/slsDetectorServers/ctbDetectorServer/bin/ctbDetectorServer_developer index 1ffc0f30a50e351906fd5fc9dd9cd4159b66c532..c36b2168451208e38ee91ee90e7ae465a747e13b 100755 GIT binary patch delta 26 icmZo!!riijdx93z+iBA;Ix|T$y0p45ZgpWga1j8GJ_?2a delta 26 icmZo!!riijdx93z!<*ADIx|T$y0p45ZgpWga1j8Jq6)nL diff --git a/slsDetectorServers/ctbDetectorServer/slsDetectorFunctionList.c b/slsDetectorServers/ctbDetectorServer/slsDetectorFunctionList.c index 69a7e563c..a0bbfa4b7 100755 --- a/slsDetectorServers/ctbDetectorServer/slsDetectorFunctionList.c +++ b/slsDetectorServers/ctbDetectorServer/slsDetectorFunctionList.c @@ -52,7 +52,7 @@ char volatile *digitalDataPtr = 0; char udpPacketData[UDP_PACKET_DATA_BYTES + sizeof(sls_detector_header)]; int32_t clkPhase[NUM_CLOCKS] = {0, 0, 0, 0}; -uint32_t clkDivider[NUM_CLOCKS] = {40, 20, 20, 200}; +uint32_t clkFrequency[NUM_CLOCKS] = {40, 20, 20, 200}; int dacValues[NDAC] = {0}; // software limit that depends on the current chip on the ctb @@ -457,10 +457,10 @@ void setupDetector() { for (i = 0; i < NUM_CLOCKS; ++i) { clkPhase[i] = 0; } - clkDivider[RUN_CLK] = DEFAULT_RUN_CLK; - clkDivider[ADC_CLK] = DEFAULT_ADC_CLK; - clkDivider[SYNC_CLK] = DEFAULT_SYNC_CLK; - clkDivider[DBIT_CLK] = DEFAULT_DBIT_CLK; + clkFrequency[RUN_CLK] = DEFAULT_RUN_CLK; + clkFrequency[ADC_CLK] = DEFAULT_ADC_CLK; + clkFrequency[SYNC_CLK] = DEFAULT_SYNC_CLK; + clkFrequency[DBIT_CLK] = DEFAULT_DBIT_CLK; for (i = 0; i < NDAC; ++i) dacValues[i] = -1; } @@ -842,12 +842,12 @@ int setExpTime(int64_t val) { return FAIL; } FILE_LOG(logINFO, ("Setting exptime %lld ns\n", (long long int)val)); - val *= (1E-3 * clkDivider[RUN_CLK]); + val *= (1E-3 * clkFrequency[RUN_CLK]); setPatternWaitTime(0, val); // validate for tolerance int64_t retval = getExpTime(); - val /= (1E-3 * clkDivider[RUN_CLK]); + val /= (1E-3 * clkFrequency[RUN_CLK]); if (val != retval) { return FAIL; } @@ -855,7 +855,7 @@ int setExpTime(int64_t val) { } int64_t getExpTime() { - return setPatternWaitTime(0, -1) / (1E-3 * clkDivider[RUN_CLK]); + return setPatternWaitTime(0, -1) / (1E-3 * clkFrequency[RUN_CLK]); } int setPeriod(int64_t val) { @@ -864,12 +864,12 @@ int setPeriod(int64_t val) { return FAIL; } FILE_LOG(logINFO, ("Setting period %lld ns\n", (long long int)val)); - val *= (1E-3 * clkDivider[SYNC_CLK]); + val *= (1E-3 * clkFrequency[SYNC_CLK]); set64BitReg(val, PERIOD_LSB_REG, PERIOD_MSB_REG); // validate for tolerance int64_t retval = getPeriod(); - val /= (1E-3 * clkDivider[SYNC_CLK]); + val /= (1E-3 * clkFrequency[SYNC_CLK]); if (val != retval) { return FAIL; } @@ -877,7 +877,7 @@ int setPeriod(int64_t val) { } int64_t getPeriod() { - return get64BitReg(PERIOD_LSB_REG, PERIOD_MSB_REG)/ (1E-3 * clkDivider[SYNC_CLK]); + return get64BitReg(PERIOD_LSB_REG, PERIOD_MSB_REG)/ (1E-3 * clkFrequency[SYNC_CLK]); } int setDelayAfterTrigger(int64_t val) { @@ -886,12 +886,12 @@ int setDelayAfterTrigger(int64_t val) { return FAIL; } FILE_LOG(logINFO, ("Setting delay after trigger %lld ns\n", (long long int)val)); - val *= (1E-3 * clkDivider[SYNC_CLK]); + val *= (1E-3 * clkFrequency[SYNC_CLK]); set64BitReg(val, DELAY_LSB_REG, DELAY_MSB_REG); // validate for tolerance int64_t retval = getDelayAfterTrigger(); - val /= (1E-3 * clkDivider[SYNC_CLK]); + val /= (1E-3 * clkFrequency[SYNC_CLK]); if (val != retval) { return FAIL; } @@ -899,7 +899,7 @@ int setDelayAfterTrigger(int64_t val) { } int64_t getDelayAfterTrigger() { - return get64BitReg(DELAY_LSB_REG, DELAY_MSB_REG) / (1E-3 * clkDivider[SYNC_CLK]); + return get64BitReg(DELAY_LSB_REG, DELAY_MSB_REG) / (1E-3 * clkFrequency[SYNC_CLK]); } int64_t getNumFramesLeft() { @@ -911,11 +911,11 @@ int64_t getNumTriggersLeft() { } int64_t getDelayAfterTriggerLeft() { - return get64BitReg(DELAY_LEFT_LSB_REG, DELAY_LEFT_MSB_REG) / (1E-3 * clkDivider[SYNC_CLK]); + return get64BitReg(DELAY_LEFT_LSB_REG, DELAY_LEFT_MSB_REG) / (1E-3 * clkFrequency[SYNC_CLK]); } int64_t getPeriodLeft() { - return get64BitReg(PERIOD_LEFT_LSB_REG, PERIOD_LEFT_MSB_REG) / (1E-3 * clkDivider[SYNC_CLK]); + return get64BitReg(PERIOD_LEFT_LSB_REG, PERIOD_LEFT_MSB_REG) / (1E-3 * clkFrequency[SYNC_CLK]); } int64_t getFramesFromStart() { @@ -1593,11 +1593,11 @@ int getMaxPhase(enum CLKINDEX ind) { FILE_LOG(logERROR, ("Unknown clock index %d to get max phase\n", ind)); return -1; } - int ret = ((double)PLL_VCO_FREQ_MHZ / (double)clkDivider[ind]) * MAX_PHASE_SHIFTS_STEPS; + int ret = ((double)PLL_VCO_FREQ_MHZ / (double)clkFrequency[ind]) * MAX_PHASE_SHIFTS_STEPS; char* clock_names[] = {CLK_NAMES}; FILE_LOG(logDEBUG1, ("Max Phase Shift (%s): %d (Clock: %d MHz, VCO:%d MHz)\n", - clock_names[ind], ret, clkDivider[ind], PLL_VCO_FREQ_MHZ)); + clock_names[ind], ret, clkFrequency[ind], PLL_VCO_FREQ_MHZ)); return ret; } @@ -1647,8 +1647,8 @@ int setFrequency(enum CLKINDEX ind, int val) { FILE_LOG(logDEBUG1, ("\tRemembering DBIT phase: %d\n", dbitPhase)); // Calculate and set output frequency - clkDivider[ind] = ALTERA_PLL_SetOuputFrequency (ind, PLL_VCO_FREQ_MHZ, val); - FILE_LOG(logINFO, ("\t%s clock (%d) frequency set to %d MHz\n", clock_names[ind], ind, clkDivider[ind])); + clkFrequency[ind] = ALTERA_PLL_SetOuputFrequency (ind, PLL_VCO_FREQ_MHZ, val); + FILE_LOG(logINFO, ("\t%s clock (%d) frequency set to %d MHz\n", clock_names[ind], ind, clkFrequency[ind])); // adc and dbit phase is reset by pll (when setting output frequency) clkPhase[ADC_CLK] = 0; @@ -1678,7 +1678,7 @@ int getFrequency(enum CLKINDEX ind) { FILE_LOG(logERROR, ("Unknown clock index %d to get frequency\n", ind)); return -1; } - return clkDivider[ind]; + return clkFrequency[ind]; } void configureSyncFrequency(enum CLKINDEX ind) { diff --git a/slsDetectorServers/gotthard2DetectorServer/bin/gotthard2DetectorServer_developer b/slsDetectorServers/gotthard2DetectorServer/bin/gotthard2DetectorServer_developer index 374ef5ee67b12184c6f7952facdae2398d00e012..eb17f2c0f69e39a4dad86b07cc525e1d5569c52e 100755 GIT binary patch delta 5390 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 WB5t6ntU5R(;x6T{Iy)p{#Qy=&gyLxc delta 5387 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 XL?sVb>+5%nj+&@u)_*ZNYV7|3Wt`#* diff --git a/slsDetectorServers/gotthard2DetectorServer/slsDetectorFunctionList.c b/slsDetectorServers/gotthard2DetectorServer/slsDetectorFunctionList.c index 33420f4c6..783aad5d3 100644 --- a/slsDetectorServers/gotthard2DetectorServer/slsDetectorFunctionList.c +++ b/slsDetectorServers/gotthard2DetectorServer/slsDetectorFunctionList.c @@ -36,7 +36,7 @@ int virtual_stop = 0; #endif int32_t clkPhase[NUM_CLOCKS] = {0, 0, 0, 0, 0, 0}; -uint32_t clkDivider[NUM_CLOCKS] = {0, 0, 0, 0, 0, 0}; +uint32_t clkFrequency[NUM_CLOCKS] = {0, 0, 0, 0, 0, 0}; int highvoltage = 0; int dacValues[NDAC] = {0}; int detPos[2] = {0, 0}; @@ -329,12 +329,12 @@ void initStopServer() { void setupDetector() { FILE_LOG(logINFO, ("This Server is for 1 Gotthard2 module \n")); - clkDivider[READOUT_C0] = DEFAULT_READOUT_C0; - clkDivider[READOUT_C1] = DEFAULT_READOUT_C1; - clkDivider[SYSTEM_C0] = DEFAULT_SYSTEM_C0; - clkDivider[SYSTEM_C1] = DEFAULT_SYSTEM_C1; - clkDivider[SYSTEM_C2] = DEFAULT_SYSTEM_C2; - clkDivider[SYSTEM_C3] = DEFAULT_SYSTEM_C3; + clkFrequency[READOUT_C0] = DEFAULT_READOUT_C0; + clkFrequency[READOUT_C1] = DEFAULT_READOUT_C1; + clkFrequency[SYSTEM_C0] = DEFAULT_SYSTEM_C0; + clkFrequency[SYSTEM_C1] = DEFAULT_SYSTEM_C1; + clkFrequency[SYSTEM_C2] = DEFAULT_SYSTEM_C2; + clkFrequency[SYSTEM_C3] = DEFAULT_SYSTEM_C3; highvoltage = 0; @@ -728,11 +728,11 @@ int getMaxPhase(enum CLKINDEX ind) { } int vcofreq = getVCOFrequency(ind); int maxshiftstep = ALTERA_PLL_C10_GetMaxPhaseShiftStepsofVCO(); - int ret = ((double)vcofreq / (double)clkDivider[ind]) * maxshiftstep; + int ret = ((double)vcofreq / (double)clkFrequency[ind]) * maxshiftstep; char* clock_names[] = {CLK_NAMES}; FILE_LOG(logDEBUG1, ("\tMax Phase Shift (%s): %d (Clock: %d Hz, VCO:%d Hz)\n", - clock_names[ind], ret, clkDivider[ind], vcofreq)); + clock_names[ind], ret, clkFrequency[ind], vcofreq)); return ret; } @@ -765,7 +765,7 @@ int getFrequency(enum CLKINDEX ind) { FILE_LOG(logERROR, ("Unknown clock index %d to get frequency\n", ind)); return -1; } - return clkDivider[ind]; + return clkFrequency[ind]; } int getVCOFrequency(enum CLKINDEX ind) { @@ -791,10 +791,10 @@ int setClockDivider(enum CLKINDEX ind, int val) { } char* clock_names[] = {CLK_NAMES}; int vcofreq = getVCOFrequency(ind); - int currentdiv = vcofreq / clkDivider[ind]; + int currentdiv = vcofreq / clkFrequency[ind]; int newfreq = vcofreq / val; - FILE_LOG(logINFO, ("\tSetting %s clock (%d) divider from %d (%d Hz) to %d (%d Hz). \n\t(Vcofreq: %d Hz)\n", clock_names[ind], ind, currentdiv, clkDivider[ind], val, newfreq, vcofreq)); + FILE_LOG(logINFO, ("\tSetting %s clock (%d) divider from %d (%d Hz) to %d (%d Hz). \n\t(Vcofreq: %d Hz)\n", clock_names[ind], ind, currentdiv, clkFrequency[ind], val, newfreq, vcofreq)); // Remembering old phases in degrees int oldPhases[NUM_CLOCKS]; @@ -810,8 +810,8 @@ int setClockDivider(enum CLKINDEX ind, int val) { int pllIndex = ind >= SYSTEM_C0 ? SYSTEM_PLL : READOUT_PLL; int clkIndex = ind >= SYSTEM_C0 ? ind - SYSTEM_C0 : ind; int ret = ALTERA_PLL_C10_SetOuputFrequency (pllIndex, clkIndex, newfreq); - clkDivider[ind] = newfreq; - FILE_LOG(logINFO, ("\t%s clock (%d) divider set to %d (%d Hz)\n", clock_names[ind], ind, val, clkDivider[ind])); + clkFrequency[ind] = newfreq; + FILE_LOG(logINFO, ("\t%s clock (%d) divider set to %d (%d Hz)\n", clock_names[ind], ind, val, clkFrequency[ind])); // phase is reset by pll (when setting output frequency) if (ind >= READOUT_C0) { @@ -840,7 +840,7 @@ int getClockDivider(enum CLKINDEX ind) { FILE_LOG(logERROR, ("Unknown clock index %d to get clock divider\n", ind)); return -1; } - return (getVCOFrequency(ind) / clkDivider[ind]); + return (getVCOFrequency(ind) / clkFrequency[ind]); } diff --git a/slsDetectorServers/mythen3DetectorServer/bin/mythen3DetectorServer_developer b/slsDetectorServers/mythen3DetectorServer/bin/mythen3DetectorServer_developer index 773330a84ba147e256c3c0271583be741f093954..100d846746fc0cd1dfc591ec4c979887053e8af0 100755 GIT binary patch delta 5173 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