From: hadaq Date: Tue, 15 Oct 2002 12:12:29 +0000 (+0000) Subject: indented -- mm X-Git-Url: https://jspc29.x-matter.uni-frankfurt.de/git/?a=commitdiff_plain;h=b7c338503a008839f454ffaa13a13cfd8d19e112;p=daqdata.git indented -- mm --- diff --git a/hadaq/hwship.c b/hadaq/hwship.c index dca3abc..2d8a1b5 100644 --- a/hadaq/hwship.c +++ b/hadaq/hwship.c @@ -1,4 +1,4 @@ -static char *rcsId = "$Header: /misc/hadesprojects/daq/cvsroot/eventbuilder/hadaq/Attic/hwship.c,v 6.23 2002-10-09 12:42:18 hadaq Exp $"; +static char *rcsId = "$Header: /misc/hadesprojects/daq/cvsroot/eventbuilder/hadaq/Attic/hwship.c,v 6.24 2002-10-15 12:12:29 hadaq Exp $"; #include #include @@ -15,125 +15,119 @@ static char *rcsId = "$Header: /misc/hadesprojects/daq/cvsroot/eventbuilder/hada #include "hwship.h" -int conHwShip(HwShip * my, const char *name, const Param *param) +int conHwShip(HwShip *my, const char *name, const Param *param) { - unsigned long cardBase; + unsigned long cardBase; int paramWasFound; - int i; + int i; - assert(my != NULL); + assert(my != NULL); - strcpy(my->name, name); + strcpy(my->name, name); Param_getInt(param, my->name, "cardbase", ¶mWasFound, &cardBase); if (!paramWasFound) { syslog(LOG_WARNING, - "Parameter %s(%s) not found, default = 0", my->name, "cardbase"); + "Parameter %s(%s) not found, default = 0", my->name, "cardbase"); cardBase = 0; } + my->lvme = malloc(sizeof(LVme)); + if (0 > conLVme(my->lvme, cardBase, 0x400000UL, 0x39UL, 0, 0)) { + syslog(LOG_ERR, "HwShip on %p not found", cardBase); + return -1; + } + /* Select VME-accessible register of LVL2-controller */ + LVme_setW(my->lvme, LVL2_SEL_VMEREG, LVL2_SELMEM_VMEREG); - my->lvme = malloc(sizeof(LVme)); - if (0 > conLVme(my->lvme, cardBase, 0x400000UL, 0x39UL, 0, 0)) { - syslog(LOG_ERR, "HwShip on %p not found", cardBase); - return -1; - } - /* Select VME-accessible register of LVL2-controller */ - LVme_setW(my->lvme, LVL2_SEL_VMEREG, LVL2_SELMEM_VMEREG); - - my->currAddr = 0x7fffffff; /* behind end of memory */ - my->endOfData = 0; - return 0; + my->currAddr = 0x7fffffff; /* behind end of memory */ + my->endOfData = 0; + return 0; } -void desHwShip(HwShip * my) +void desHwShip(HwShip *my) { - desLVme(my->lvme); + desLVme(my->lvme); } -void HwShip_requestBuffer(HwShip *my) { - int i; +void HwShip_requestBuffer(HwShip *my) +{ + int i; #ifndef NDEBUG - syslog(LOG_DEBUG, "wait for data"); + syslog(LOG_DEBUG, "wait for data"); #endif - while ((LVme_getL(my->lvme, LVL2_ACCESS_VMEREG) >> 16 & 0xffff) <= 2) { + while ((LVme_getL(my->lvme, LVL2_ACCESS_VMEREG) >> 16 & 0xffff) <= 2) { #if 1 - struct timespec tS, *t = &tS; - t->tv_sec = 0; - t->tv_nsec = 010000000; - nanosleep(t, NULL); + struct timespec tS, *t = &tS; + t->tv_sec = 0; + t->tv_nsec = 010000000; + nanosleep(t, NULL); #endif - } + } #ifndef NDEBUG - syslog(LOG_DEBUG, "data available"); + syslog(LOG_DEBUG, "data available"); #endif - i = my->bankRequested == 1 ? 0 : 1; - LVme_setL(my->lvme, LVL2_ACCESS_VMEREG, i); - my->bankRequested = i; - my->currAddr = LVL2_DATASTART; + i = my->bankRequested == 1 ? 0 : 1; + LVme_setL(my->lvme, LVL2_ACCESS_VMEREG, i); + my->bankRequested = i; + my->currAddr = LVL2_DATASTART; - /* to indicate a buffer request state which is cleared by getEndOfData */ - my->endOfData =0; + /* to indicate a buffer request state which is cleared by getEndOfData */ + my->endOfData = 0; } #define SHIP_NODATASIZE 16 int HwShip_readSubEvt(HwShip *my, void *subEvt) { - uint32_t * data = (uint32_t *)subEvt; - int lastAddr; - int currAddr = my->currAddr; - int size, i; - char str[200], buff[200]; - unsigned long *tempPtr; + uint32_t *data = (uint32_t *) subEvt; + int lastAddr; + int currAddr = my->currAddr; + int size, i; + char str[200], buff[200]; + unsigned long *tempPtr; - size = LVme_getL(my->lvme, currAddr); + size = LVme_getL(my->lvme, currAddr); - lastAddr = currAddr + size; - my->currAddr = lastAddr; + lastAddr = currAddr + size; + my->currAddr = lastAddr; - /* skip empty subevent, nobody will realize this */ + /* skip empty subevent, nobody will realize this */ #if 1 - if (size <= SHIP_NODATASIZE) return 1; -#endif - - /* copy one sub evt from RC to memory */ - *data++ = size; - i=0; - /* we are not sure what the maximum number of words is allowed in the ipcs*/ - while ( ( (currAddr+=4) < lastAddr) && ( i < 0x1600 ) ) { - *data++ = LVme_getL(my->lvme, currAddr); - i++; - } - - if(size > 0x1900) { - syslog(LOG_ERR,"Error, size too large: %.8x", size); - - tempPtr = data-0x1600; - - str[0] = 0; - for(i=0;i < 100; i++) { - sprintf(buff, "%.8x ", tempPtr[i]); - strcpy((char *) ((unsigned int)str + strlen(str)) , buff); - if( ((i+1)%4) == 0) { - syslog(LOG_ERR, str); - str[0] = 0; - } - } - if( (i%4)) { - syslog(LOG_ERR, str); - str[0] = 0; - } - } + if (size <= SHIP_NODATASIZE) + return 1; +#endif + /* copy one sub evt from RC to memory */ + *data++ = size; + i = 0; + /* we are not sure what the maximum number of words is allowed in the ipcs*/ + while (((currAddr += 4) < lastAddr) && (i < 0x1600)) { + *data++ = LVme_getL(my->lvme, currAddr); + i++; + } + if (size > 0x1900) { + syslog(LOG_ERR, "Error, size too large: %.8x", size); + + tempPtr = data - 0x1600; + + str[0] = 0; + for (i = 0; i < 100; i++) { + sprintf(buff, "%.8x ", tempPtr[i]); + strcpy((char *) ((unsigned int) str + strlen(str)), buff); + if (((i + 1) % 4) == 0) { + syslog(LOG_ERR, str); + str[0] = 0; + } + } + if ((i % 4)) { + syslog(LOG_ERR, str); + str[0] = 0; + } + } #ifndef NDEBUG syslog(LOG_DEBUG, "subEvt: %s", SubEvt_2charP(subEvt)); #endif - return 0; + return 0; } - - - - - diff --git a/hadaq/hwship.h b/hadaq/hwship.h index 599212d..0156795 100644 --- a/hadaq/hwship.h +++ b/hadaq/hwship.h @@ -7,12 +7,14 @@ #include "ipc_basis.h" typedef struct HwShipS { - char name[12]; - LVme *lvme; - int currAddr; - int endOfData; - int bankRequested; -} HwShip; + char name[12]; + LVme *lvme; + int currAddr; + int endOfData; + int bankRequested; +} + +HwShip; int conHwShip(HwShip *my, const char *name, const Param *param); @@ -20,24 +22,29 @@ void desHwShip(HwShip *my); void HwShip_requestBuffer(HwShip *my); -static int bankConfirmed(HwShip *my) { +static int bankConfirmed(HwShip *my) +{ return LVme_tstBitL(my->lvme, LVL2_ACCESS_VMEREG, 7); } -static void HwShip_getEndOfData(HwShip *my) { +static void HwShip_getEndOfData(HwShip *my) +{ my->endOfData = LVme_getL(my->lvme, LVL2_OFFSET) - 2 + LVL2_OFFSET; } -static int HwShip_isBusy(HwShip *my) { - return my->bankRequested != bankConfirmed(my); +static int HwShip_isBusy(HwShip *my) +{ + return my->bankRequested != bankConfirmed(my); } -static int HwShip_isEmpty(HwShip *my) { - return my->currAddr >= my->endOfData; +static int HwShip_isEmpty(HwShip *my) +{ + return my->currAddr >= my->endOfData; } -static int HwShip_isBufRequested(HwShip *my) { - return my->endOfData == 0; +static int HwShip_isBufRequested(HwShip *my) +{ + return my->endOfData == 0; } int HwShip_readSubEvt(HwShip *my, void *subEvt); diff --git a/hadaq/hwshow.c b/hadaq/hwshow.c index b8e37b0..8e8d88b 100644 --- a/hadaq/hwshow.c +++ b/hadaq/hwshow.c @@ -1,4 +1,4 @@ -static char *rcsId = "$Header: /misc/hadesprojects/daq/cvsroot/eventbuilder/hadaq/Attic/hwshow.c,v 6.23 2002-10-09 12:42:18 hadaq Exp $"; +static char *rcsId = "$Header: /misc/hadesprojects/daq/cvsroot/eventbuilder/hadaq/Attic/hwshow.c,v 6.24 2002-10-15 12:12:29 hadaq Exp $"; #define _POSIX_C_SOURCE 199309L @@ -8,7 +8,7 @@ static char *rcsId = "$Header: /misc/hadesprojects/daq/cvsroot/eventbuilder/hada #include #include #include -#include +#include #include #include @@ -51,7 +51,7 @@ Hardware *newHardware(void) /*my->maxSubEvtSize = SubEvt_hdrSize() + (NSHIPS * 1600 * sizeof(uint32_t));*/ my->maxSubEvtSize = SubEvt_hdrSize() + (NSHIPS * 1900 * sizeof(uint32_t)); - syslog(LOG_WARNING, "max subevent size: %.8x", my->maxSubEvtSize ); + syslog(LOG_WARNING, "max subevent size: %.8x", my->maxSubEvtSize); for (i = 0; i < NSHIPS; i++) { @@ -95,28 +95,28 @@ void Hardware_waitForTrigger(Hardware *my, void *subEvt) } do { - for (i = 0; i < NSHIPS; i++) { - if (HwShip_isBufRequested(my->ship[i])) { - if (!HwShip_isBusy(my->ship[i])) { - HwShip_getEndOfData(my->ship[i]); - --nRequests; - } + for (i = 0; i < NSHIPS; i++) { + if (HwShip_isBufRequested(my->ship[i])) { + if (!HwShip_isBusy(my->ship[i])) { + HwShip_getEndOfData(my->ship[i]); + --nRequests; + } + } } - } #if 0 /* * This sleep prevents a tight loop which stops work on real * time systems if the priority of readout is not lowered. * When not using the sleep use option -p -2 for daq_readout. */ - if (nRequests == NSHIPS) { - struct timespec tS, *t = &tS; - t->tv_sec = 0; - t->tv_nsec = 020000000; - nanosleep(t, NULL); - } + if (nRequests == NSHIPS) { + struct timespec tS, *t = &tS; + t->tv_sec = 0; + t->tv_nsec = 020000000; + nanosleep(t, NULL); + } #endif - } while(nRequests); + } while (nRequests); } @@ -134,24 +134,24 @@ void Hardware_readout(Hardware *my, void *partEvt) /* read all ships, check for common trigger tag */ for (i = 0; i < NSHIPS; i++) { - if( HwShip_readSubEvt(my->ship[i], subEvt) == 0) { - if (firstShip < 0) { - trigTag = SubEvt_trigNr(subEvt) & 0xff; - firstShip = i; - } else { - if (trigTag != (SubEvt_trigNr(subEvt) & 0xff)) { - SubEvt_setId(subEvt, SubEvt_id(subEvt) | 0x80000000UL); - SubEvt_setId(partEvt, SubEvt_id(partEvt) | 0x80000000UL); - syslog(LOG_ERR, "(%s)Trigger tag mismatch: 0x%08x (%d) != 0x%08x", - my->ship[i]->name,trigTag,firstShip,SubEvt_trigNr(subEvt)); + if (HwShip_readSubEvt(my->ship[i], subEvt) == 0) { + if (firstShip < 0) { + trigTag = SubEvt_trigNr(subEvt) & 0xff; + firstShip = i; + } else { + if (trigTag != (SubEvt_trigNr(subEvt) & 0xff)) { + SubEvt_setId(subEvt, SubEvt_id(subEvt) | 0x80000000UL); + SubEvt_setId(partEvt, SubEvt_id(partEvt) | 0x80000000UL); + syslog(LOG_ERR, "(%s)Trigger tag mismatch: 0x%08x (%d) != 0x%08x", + my->ship[i]->name, trigTag, firstShip, SubEvt_trigNr(subEvt)); + } } + subEvt = SubEvt_next(partEvt, subEvt); } - subEvt = SubEvt_next(partEvt, subEvt); - } } SubEvt_setTrigNr(partEvt, trigNr << 8 | trigTag); - SubEvt_setSize(partEvt, (char *)subEvt - (char *)partEvt); + SubEvt_setSize(partEvt, (char *) subEvt - (char *) partEvt); trigNr++; assert(SubEvt_size(partEvt) <= my->maxSubEvtSize); diff --git a/hadaq/indent.pro b/hadaq/indent.pro index eed0339..d65d712 100644 --- a/hadaq/indent.pro +++ b/hadaq/indent.pro @@ -23,3 +23,5 @@ -T HwV488 -T HwV556 -T HwDtu +-T HwShip +-T LVme