diff --git a/README.md b/README.md index c4705fd3..18490778 100644 --- a/README.md +++ b/README.md @@ -562,6 +562,7 @@ metric format for the CRORC and the CRU is different, as different parameters ar | `"pciAddress"` | - | string | | `"status"` | 0/1 (DOWN/UP) | int | | `"opticalPower"` | - | double | +| `"orbitSor"` | - | int | | Tag key | Value | | --------------------- | --------------------- | diff --git a/doc/releaseNotes.md b/doc/releaseNotes.md index 1580f1b3..c245265c 100644 --- a/doc/releaseNotes.md +++ b/doc/releaseNotes.md @@ -48,3 +48,8 @@ This file describes the main feature changes for released versions of ReadoutCar - Added some counters for roc-status: - link (with --monitoring option only): pktProcessed, pktErrorProtocol, pktErrorCheck1, pktErrorCheck2, pktErrorOversize, orbitSor (including for UL link 15) - onu (with --onu option, all output modes, including --monitoring): glitchCounter + +## v0.44.0 - 02/06/2023 +- Added some counters for roc-status: + - link (with --monitoring option only): orbitSOR for CRORC +- Updated list of firmwares for CRORC diff --git a/src/CommandLineUtilities/ProgramStatus.cxx b/src/CommandLineUtilities/ProgramStatus.cxx index 6674f376..b053a969 100644 --- a/src/CommandLineUtilities/ProgramStatus.cxx +++ b/src/CommandLineUtilities/ProgramStatus.cxx @@ -162,6 +162,7 @@ class ProgramStatus : public Program .addValue(card.pciAddress.toString(), "pciAddress") .addValue(link.status, "status") .addValue(opticalPower, "opticalPower") + .addValue((uint64_t)link.orbitSor, "orbitSor") .addTag(tags::Key::SerialId, card.serialId.getSerial()) .addTag(tags::Key::CRORC, card.sequenceId) .addTag(tags::Key::ID, id) diff --git a/src/Crorc/Common.h b/src/Crorc/Common.h index 70c9a0d0..ff3f1259 100644 --- a/src/Crorc/Common.h +++ b/src/Crorc/Common.h @@ -32,6 +32,7 @@ enum LinkStatus { struct Link { LinkStatus status = LinkStatus::Down; float opticalPower = 0.0; + uint32_t orbitSor = 0; }; struct ReportInfo { diff --git a/src/Crorc/Constants.h b/src/Crorc/Constants.h index ba47921d..1d7888b9 100644 --- a/src/Crorc/Constants.h +++ b/src/Crorc/Constants.h @@ -429,6 +429,7 @@ static constexpr Register SERIAL_NUMBER(0x000000FC); static constexpr Register ACQ_RATE(0x00000050); static constexpr Register PKTS_RECEIVED(0x00000054); +static constexpr Register ORBIT_SOR(0x00000060); } // namespace Registers } //namespace Crorc diff --git a/src/Crorc/CrorcBar.cxx b/src/Crorc/CrorcBar.cxx index 2a256e8e..6420998c 100644 --- a/src/Crorc/CrorcBar.cxx +++ b/src/Crorc/CrorcBar.cxx @@ -146,6 +146,12 @@ Crorc::ReportInfo CrorcBar::report(bool forConfig) } getOpticalPowers(linkMap); + + for (auto& el : linkMap) { + auto& link = el.second; + link.orbitSor = readRegister(Crorc::Registers::ORBIT_SOR.index); + } + Crorc::ReportInfo reportInfo = { linkMap, getCrorcId(), diff --git a/src/FirmwareChecker.cxx b/src/FirmwareChecker.cxx index fd83a250..1476027f 100644 --- a/src/FirmwareChecker.cxx +++ b/src/FirmwareChecker.cxx @@ -41,6 +41,8 @@ FirmwareChecker::FirmwareChecker() : mCompatibleFirmwareList({ { "221ff280", "v2.10.0" }, { "cfa0bc9c", "2.10.1" }, { "2d4c9028", "2.11.0" }, + { "c7ff5689", "2.12.0" }, + { "ac9dd573", "2.12.1" }, }) // second list for older firmware diff --git a/src/ReadoutCardVersion.cxx b/src/ReadoutCardVersion.cxx index 53ae036c..f56b8fec 100644 --- a/src/ReadoutCardVersion.cxx +++ b/src/ReadoutCardVersion.cxx @@ -11,7 +11,7 @@ #include "ReadoutCard/Version.h" -#define O2_READOUTCARD_VERSION "0.43.0" +#define O2_READOUTCARD_VERSION "0.44.0" namespace o2 {