summaryrefslogtreecommitdiffstats
path: root/extensions/openpower-pels
diff options
context:
space:
mode:
Diffstat (limited to 'extensions/openpower-pels')
-rw-r--r--extensions/openpower-pels/mtms.cpp13
-rw-r--r--extensions/openpower-pels/mtms.hpp26
2 files changed, 33 insertions, 6 deletions
diff --git a/extensions/openpower-pels/mtms.cpp b/extensions/openpower-pels/mtms.cpp
index 9f4144e..3ef8e87 100644
--- a/extensions/openpower-pels/mtms.cpp
+++ b/extensions/openpower-pels/mtms.cpp
@@ -62,7 +62,7 @@ MTMS::MTMS(Stream& stream)
}
}
-Stream& operator<<(Stream& s, MTMS& mtms)
+Stream& operator<<(Stream& s, const MTMS& mtms)
{
for (size_t i = 0; i < MTMS::mtmSize; i++)
{
@@ -79,16 +79,23 @@ Stream& operator<<(Stream& s, MTMS& mtms)
Stream& operator>>(Stream& s, MTMS& mtms)
{
+ std::array<uint8_t, MTMS::mtmSize> mtm;
+
for (size_t i = 0; i < MTMS::mtmSize; i++)
{
- s >> mtms.machineTypeAndModelRaw()[i];
+ s >> mtm[i];
}
+ mtms.setMachineTypeAndModel(mtm);
+
+ std::array<uint8_t, MTMS::snSize> sn;
for (size_t i = 0; i < MTMS::snSize; i++)
{
- s >> mtms.machineSerialNumberRaw()[i];
+ s >> sn[i];
}
+ mtms.setMachineSerialNumber(sn);
+
return s;
}
} // namespace pels
diff --git a/extensions/openpower-pels/mtms.hpp b/extensions/openpower-pels/mtms.hpp
index 6b76ec7..928fb74 100644
--- a/extensions/openpower-pels/mtms.hpp
+++ b/extensions/openpower-pels/mtms.hpp
@@ -63,12 +63,22 @@ class MTMS
*
* @return std::array<uint8_t, mtmSize>& - The TM value
*/
- std::array<uint8_t, mtmSize>& machineTypeAndModelRaw()
+ const std::array<uint8_t, mtmSize>& machineTypeAndModelRaw() const
{
return _machineTypeAndModel;
}
/**
+ * @brief Sets the machine type and model field
+ *
+ * @param[in] mtm - The new value
+ */
+ void setMachineTypeAndModel(const std::array<uint8_t, mtmSize>& mtm)
+ {
+ _machineTypeAndModel = mtm;
+ }
+
+ /**
* @brief Returns the machine type/model value
*
* @return std::string - The TM value
@@ -91,12 +101,22 @@ class MTMS
*
* @return std::array<uint8_t, snSize>& - The SN value
*/
- std::array<uint8_t, snSize>& machineSerialNumberRaw()
+ const std::array<uint8_t, snSize>& machineSerialNumberRaw() const
{
return _serialNumber;
}
/**
+ * @brief Sets the machine serial number field
+ *
+ * @param[in] sn - The new value
+ */
+ void setMachineSerialNumber(const std::array<uint8_t, snSize>& sn)
+ {
+ _serialNumber = sn;
+ }
+
+ /**
* @brief Returns the machine serial number value
*
* @return std::string - The SN value
@@ -157,7 +177,7 @@ Stream& operator>>(Stream& s, MTMS& mtms);
*
* @return Stream&
*/
-Stream& operator<<(Stream& s, MTMS& mtms);
+Stream& operator<<(Stream& s, const MTMS& mtms);
} // namespace pels
} // namespace openpower
OpenPOWER on IntegriCloud