From 6b22921598d340e845bb4a175562ee248914cd95 Mon Sep 17 00:00:00 2001 From: hades Date: Sat, 27 May 2000 16:56:34 +0000 Subject: [PATCH] Double words solved --- hadaq/hwtip.c | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/hadaq/hwtip.c b/hadaq/hwtip.c index fc34e99..4cd14ca 100644 --- a/hadaq/hwtip.c +++ b/hadaq/hwtip.c @@ -28,11 +28,28 @@ void sigbusHandler(int sig) static LVme_L berrGetL(LVme * my, unsigned long offset) { - LVme_L retVal; + volatile LVme_L retVal; + static LVme_L oldWord = 0xffffffff; + static LVme_L oldOff = 0xffffffff; + do { ourVmeAccessOK = 1; retVal = LVme_getL(my, offset); + retVal = LVme_getL(my, offset); + retVal = LVme_getL(my, offset); + retVal = LVme_getL(my, offset); + retVal = LVme_getL(my, offset); + retVal = LVme_getL(my, offset); + retVal = LVme_getL(my, offset); + retVal = LVme_getL(my, offset); + retVal = LVme_getL(my, offset); + retVal = LVme_getL(my, offset); } while (!ourVmeAccessOK); + if (oldOff != offset && oldWord == retVal) { + msglog(LOG_ERR, "wird twice: 0x%08x on 0x%08x\n", retVal, offset); + } + oldOff = offset; + oldWord = retVal; return retVal; } -- 2.43.0