summaryrefslogtreecommitdiff
path: root/include/cpu.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'include/cpu.hpp')
-rw-r--r--include/cpu.hpp33
1 files changed, 14 insertions, 19 deletions
diff --git a/include/cpu.hpp b/include/cpu.hpp
index 4f31c93..231d5f4 100644
--- a/include/cpu.hpp
+++ b/include/cpu.hpp
@@ -25,6 +25,7 @@
#include <xyz/openbmc_project/Inventory/Decorator/Revision/server.hpp>
#include <xyz/openbmc_project/Inventory/Item/Cpu/server.hpp>
#include <xyz/openbmc_project/Inventory/Item/server.hpp>
+#include <xyz/openbmc_project/State/Decorator/OperationalStatus/server.hpp>
namespace phosphor
{
@@ -37,8 +38,9 @@ using asset = sdbusplus::xyz::openbmc_project::Inventory::Decorator::server::Ass
using location = sdbusplus::xyz::openbmc_project::Inventory::Decorator::server::LocationCode;
using connector = sdbusplus::xyz::openbmc_project::Inventory::Connector::server::Slot;
using processor = sdbusplus::xyz::openbmc_project::Inventory::Item::server::Cpu;
-using Item = sdbusplus::xyz::openbmc_project::Inventory::server::Item;
+using item = sdbusplus::xyz::openbmc_project::Inventory::server::Item;
using association = sdbusplus::xyz::openbmc_project::Association::server::Definitions;
+using operstatus = sdbusplus::xyz::openbmc_project::State::Decorator::server::OperationalStatus;
// Definition follow smbios spec DSP0134 3.0.0
static const std::map<uint8_t, std::string> familyTable = {
@@ -95,8 +97,9 @@ static const std::array<std::optional<processor::Capability>, 16>
std::nullopt,
std::nullopt};
-class Cpu : sdbusplus::server::object_t<processor, asset, location, connector, rev,
- Item, association>
+class Cpu :
+ sdbusplus::server::object_t<processor, asset, location, connector, rev,
+ item, association, operstatus>
{
public:
Cpu() = delete;
@@ -110,19 +113,13 @@ class Cpu : sdbusplus::server::object_t<processor, asset, location, connector, r
const uint8_t &cpuId, struct ManagedDataRegion *region) :
sdbusplus::server::object_t<processor, asset, location, connector, rev,
- Item, association>(bus, objPath.c_str()),
+ Item, association, operstatus>(bus, objPath.c_str()),
cpuNum(cpuId), regionS(region)
{
- processorInfoUpdate();
+ infoUpdate();
}
- void processorInfoUpdate(void);
-
- std::string processorSocket(std::string value);
- uint32_t processorId(uint32_t value);
- uint16_t processorMaxSpeed(uint16_t value);
- uint16_t processorCoreCount(uint16_t value);
- uint16_t processorThreadCount(uint16_t value);
+ void infoUpdate(void);
private:
/** @brief Path of the group instance */
@@ -163,13 +160,11 @@ class Cpu : sdbusplus::server::object_t<processor, asset, location, connector, r
uint16_t threadCount2;
} __attribute__((packed));
- void cpuSocket(uint8_t positionNum, uint8_t structLen, uint8_t *dataIn);
- void cpuType(uint8_t value);
- void cpuFamily(uint8_t value);
- void cpuManufacturer(uint8_t positionNum, uint8_t structLen,
- uint8_t *dataIn);
- void cpuVersion(uint8_t positionNum, uint8_t structLen, uint8_t *dataIn);
- void cpuCharacteristics(uint16_t value);
+ void socket(uint8_t positionNum, uint8_t structLen, uint8_t *dataIn);
+ void family(uint8_t value);
+ void manufacturer(uint8_t positionNum, uint8_t structLen, uint8_t *dataIn);
+ void version(uint8_t positionNum, uint8_t structLen, uint8_t *dataIn);
+ void characteristics(uint16_t value);
};
} // namespace smbios