-
Notifications
You must be signed in to change notification settings - Fork 10
Feature/ge21 compatibility #119
Feature/ge21 compatibility #119
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
cursory
Are all the commits in your development area uploaded here? E.g. many files remain unmodified and I would expect some changes are needed to calibration functions, VFAT functions, optohybrid functions (broadcast read/write come immediately to mind). I recall that there are multiple locations in which array sizes are checked; while empty elements for VFATs from 13-23 are not an issue they are a potential memory overhead. Not sure if that should be addressed here or wait for cmsgemos and retirement of this branch completely. Not sure if these were also updated in the ctp7_modules repo...? On my phone so it’s hard to check. |
@@ -458,9 +458,15 @@ DLLEXPORT uint32_t getmonVFATLink(struct VFATLinkMonitor *vfatLinkMon, uint32_t | |||
for(int vfatN = 0; vfatN < 24; ++vfatN){ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nvfats
missing here I think.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Isn't this still outstanding?
@@ -174,7 +175,7 @@ DLLEXPORT uint32_t readVFAT3ADCMultiLink(uint32_t ohMask, uint32_t *ohVfatMaskAr | |||
return 1; | |||
} | |||
|
|||
const uint32_t size = 12*24; | |||
const uint32_t size = 12*nvfats; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
do we want this 12
to be replaced with an nohs
? I'm fine with the answer being "no". But again this would present a potential issue for a setup driven by GLIB
.
Still need some GE2/1 vs. GE1/1 fixes, e.g.:
https://github.com/mexanick/xhal/blob/58984c8cc70ffa03620a1388ce20fab7ba646da4/xhalcore/src/common/rpc_manager/daq_monitor.cc#L263-L269
Aside from these issues I think you're good; the SCA one could also be a separate issue. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Still a few places where nvfats
or NGBT's
is not used appropriately.
@@ -115,7 +115,7 @@ DLLEXPORT uint32_t getVFAT3ChipIDs(uint32_t * chipIDData, uint32_t ohN, uint32_t | |||
} | |||
|
|||
std::string regBase = "GEM_AMC.OH.OH" + std::to_string(ohN) + ".GEB.VFAT"; | |||
for(int vfat=0; vfat < 24; ++vfat) | |||
for(int vfat=0; vfat < nvfats; ++vfat) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
if you're changing to ensure signed/unsigned comparisons, probably you want to change here too.
also comment made here re unsigned int
vs unsigned
vs uintX_t
Needs |
58984c8
to
11532f2
Compare
I've rebased. The compatibility in the daq_monitor part deserves a separate issue in my opinion, as this also concerns the |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
cursory
@bdorney please see my comment considering outstanding issues |
@mexanick In addition to this comment here I see the above issues are still outstanding. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Still seems like some outstanding issues have not been addressed, comments here
The SCA function I agree is a separate issue due to HW changes between boards; but the other issues I pointed out in |
Description
Implements GE2/1 compatibility. All new parameters are backed with default values set to GE1/1 defaults. Thus the rest of the software should be able to work unchanged. Requires cms-gem-daq-project/ctp7_modules#132 to work with GE2/1
Types of changes
Motivation and Context
Need to be able to use the current legacy software for GE2/1 integration stand
How Has This Been Tested?
Tested with GE2/1 integration stand.
Screenshots (if appropriate):
Checklist: