mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2025-04-24 23:30:03 +02:00
removed locking in locallink
This commit is contained in:
parent
46b75c1429
commit
515a0c05b9
@ -1,7 +1,6 @@
|
||||
#include "LocalLinkInterface.h"
|
||||
#include "HardwareMMappingDefs.h"
|
||||
#include "clogger.h"
|
||||
#include "sharedMemory.h"
|
||||
|
||||
#include <fcntl.h>
|
||||
#include <sys/mman.h>
|
||||
@ -9,8 +8,6 @@
|
||||
|
||||
void Local_LocalLinkInterface(struct LocalLinkInterface *ll,
|
||||
unsigned int ll_fifo_badr) {
|
||||
sharedMemory_lockLocalLink();
|
||||
|
||||
LOG(logDEBUG1, ("Initialize PLB LL FIFOs\n"));
|
||||
ll->ll_fifo_base = 0;
|
||||
ll->ll_fifo_ctrl_reg = 0;
|
||||
@ -21,8 +18,6 @@ void Local_LocalLinkInterface(struct LocalLinkInterface *ll,
|
||||
} else
|
||||
LOG(logERROR,
|
||||
("\tCould not map LocalLink : 0x%08x\n\n\n", ll_fifo_badr));
|
||||
|
||||
sharedMemory_unlockLocalLink();
|
||||
}
|
||||
|
||||
int Local_Init(struct LocalLinkInterface *ll, unsigned int ll_fifo_badr) {
|
||||
@ -79,7 +74,6 @@ unsigned int Local_StatusVector(struct LocalLinkInterface *ll) {
|
||||
|
||||
int Local_Write(struct LocalLinkInterface *ll, unsigned int buffer_len,
|
||||
void *buffer) {
|
||||
sharedMemory_lockLocalLink();
|
||||
|
||||
// note: buffer must be word (4 byte) aligned
|
||||
// frame_len in byte
|
||||
@ -91,7 +85,6 @@ int Local_Write(struct LocalLinkInterface *ll, unsigned int buffer_len,
|
||||
xfs_u32 status;
|
||||
|
||||
if (buffer_len < 1) {
|
||||
sharedMemory_unlockLocalLink();
|
||||
return -1;
|
||||
}
|
||||
|
||||
@ -137,14 +130,11 @@ int Local_Write(struct LocalLinkInterface *ll, unsigned int buffer_len,
|
||||
}
|
||||
}
|
||||
|
||||
sharedMemory_unlockLocalLink();
|
||||
|
||||
return buffer_len;
|
||||
}
|
||||
|
||||
int Local_Read(struct LocalLinkInterface *ll, unsigned int buffer_len,
|
||||
void *buffer) {
|
||||
sharedMemory_lockLocalLink();
|
||||
|
||||
static unsigned int buffer_ptr = 0;
|
||||
// note: buffer must be word (4 byte) aligned
|
||||
@ -165,7 +155,6 @@ int Local_Read(struct LocalLinkInterface *ll, unsigned int buffer_len,
|
||||
if (status & PLB_LL_FIFO_STATUS_LL_SOF) {
|
||||
if (buffer_ptr) {
|
||||
buffer_ptr = 0;
|
||||
sharedMemory_unlockLocalLink();
|
||||
return -1; // buffer overflow
|
||||
}
|
||||
buffer_ptr = 0;
|
||||
@ -181,7 +170,6 @@ int Local_Read(struct LocalLinkInterface *ll, unsigned int buffer_len,
|
||||
word_ptr[buffer_ptr++] = fifo_val; // write to buffer
|
||||
} else {
|
||||
buffer_ptr = 0;
|
||||
sharedMemory_unlockLocalLink();
|
||||
return -2; // buffer overflow
|
||||
}
|
||||
|
||||
@ -191,15 +179,11 @@ int Local_Read(struct LocalLinkInterface *ll, unsigned int buffer_len,
|
||||
PLB_LL_FIFO_STATUS_LL_REM_SHIFT);
|
||||
LOG(logDEBUG1, ("Len: %d\n", len));
|
||||
buffer_ptr = 0;
|
||||
sharedMemory_unlockLocalLink();
|
||||
return len;
|
||||
}
|
||||
}
|
||||
}
|
||||
} while (!(status & PLB_LL_FIFO_STATUS_EMPTY));
|
||||
|
||||
sharedMemory_unlockLocalLink();
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user