diff options
author | Tom Joseph <tomjoseph@in.ibm.com> | 2017-10-31 17:25:33 +0530 |
---|---|---|
committer | Tom Joseph <tomjoseph@in.ibm.com> | 2017-11-03 17:55:15 +0530 |
commit | b647d5be78df54b3dab6a91476412474a6cb7e1d (patch) | |
tree | b0a547cbbcdc6cb518f8d1a38f66c051c6f0f201 /elog-errors.hpp | |
parent | b0b395b670b6e496dda0ce117e1b5a1e195ab0e9 (diff) | |
download | phosphor-host-ipmid-b647d5be78df54b3dab6a91476412474a6cb7e1d.tar.gz phosphor-host-ipmid-b647d5be78df54b3dab6a91476412474a6cb7e1d.zip |
Commit a MaintenanceProcedure log entry on a 0xDE SEL record
In the case of a procedure callout, HB sends a eSEL of 0xDF type.
It is followed by a Add SEL record with OEM record type 0xDE
and byte 11 in the record indicate the procedure associated
with the eSEL.
Resolves openbmc/openbmc#2368
Change-Id: Ia57f423c9d533cd8968b613d7522b409a9820198
Signed-off-by: Tom Joseph <tomjoseph@in.ibm.com>
Diffstat (limited to 'elog-errors.hpp')
-rw-r--r-- | elog-errors.hpp | 128 |
1 files changed, 128 insertions, 0 deletions
diff --git a/elog-errors.hpp b/elog-errors.hpp index 02649f4..671d99f 100644 --- a/elog-errors.hpp +++ b/elog-errors.hpp @@ -128,6 +128,26 @@ namespace Error namespace sdbusplus { +namespace org +{ +namespace open_power +{ +namespace Common +{ +namespace Callout +{ +namespace Error +{ + struct Procedure; +} // namespace Error +} // namespace Callout +} // namespace Common +} // namespace open_power +} // namespace org +} // namespace sdbusplus + +namespace sdbusplus +{ namespace xyz { namespace openbmc_project @@ -431,6 +451,22 @@ namespace Error } // namespace org } // namespace sdbusplus +namespace sdbusplus +{ +namespace org +{ +namespace open_power +{ +namespace Host +{ +namespace Error +{ + struct MaintenanceProcedure; +} // namespace Error +} // namespace Host +} // namespace open_power +} // namespace org +} // namespace sdbusplus namespace phosphor { @@ -695,6 +731,53 @@ struct map_exception_type<sdbusplus::xyz::openbmc_project::Common::Callout::Erro } +namespace org +{ +namespace open_power +{ +namespace Common +{ +namespace Callout +{ +namespace _Procedure +{ + +struct PROCEDURE +{ + static constexpr auto str = "PROCEDURE=%u"; + static constexpr auto str_short = "PROCEDURE"; + using type = std::tuple<std::decay_t<decltype(str)>,uint32_t>; + explicit constexpr PROCEDURE(uint32_t a) : _entry(entry(str, a)) {}; + type _entry; +}; + +} // namespace _Procedure + +struct Procedure +{ + static constexpr auto L = level::ERR; + using PROCEDURE = _Procedure::PROCEDURE; + using metadata_types = std::tuple<PROCEDURE>; + +}; + +} // namespace Callout +} // namespace Common +} // namespace open_power +} // namespace org + + +namespace details +{ + +template <> +struct map_exception_type<sdbusplus::org::open_power::Common::Callout::Error::Procedure> +{ + using type = org::open_power::Common::Callout::Procedure; +}; + +} + namespace xyz { namespace openbmc_project @@ -1235,6 +1318,51 @@ struct map_exception_type<sdbusplus::org::open_power::Host::Error::Event> } +namespace org +{ +namespace open_power +{ +namespace Host +{ +namespace _MaintenanceProcedure +{ + +struct ESEL +{ + static constexpr auto str = "ESEL=%s"; + static constexpr auto str_short = "ESEL"; + using type = std::tuple<std::decay_t<decltype(str)>,const char*>; + explicit constexpr ESEL(const char* a) : _entry(entry(str, a)) {}; + type _entry; +}; + +} // namespace _MaintenanceProcedure + +struct MaintenanceProcedure +{ + static constexpr auto L = level::ERR; + using ESEL = _MaintenanceProcedure::ESEL; + using PROCEDURE = org::open_power::Common::Callout::Procedure::PROCEDURE; + using metadata_types = std::tuple<ESEL, PROCEDURE>; + +}; + +} // namespace Host +} // namespace open_power +} // namespace org + + +namespace details +{ + +template <> +struct map_exception_type<sdbusplus::org::open_power::Host::Error::MaintenanceProcedure> +{ + using type = org::open_power::Host::MaintenanceProcedure; +}; + +} + namespace xyz { namespace openbmc_project |