From b647d5be78df54b3dab6a91476412474a6cb7e1d Mon Sep 17 00:00:00 2001 From: Tom Joseph Date: Tue, 31 Oct 2017 17:25:33 +0530 Subject: 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 --- elog-errors.hpp | 128 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 128 insertions(+) (limited to 'elog-errors.hpp') diff --git a/elog-errors.hpp b/elog-errors.hpp index 02649f4..671d99f 100644 --- a/elog-errors.hpp +++ b/elog-errors.hpp @@ -126,6 +126,26 @@ namespace Error } // namespace xyz } // namespace sdbusplus +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 @@ -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,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; + +}; + +} // namespace Callout +} // namespace Common +} // namespace open_power +} // namespace org + + +namespace details +{ + +template <> +struct map_exception_type +{ + using type = org::open_power::Common::Callout::Procedure; +}; + +} + namespace xyz { namespace openbmc_project @@ -1235,6 +1318,51 @@ struct map_exception_type } +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,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; + +}; + +} // namespace Host +} // namespace open_power +} // namespace org + + +namespace details +{ + +template <> +struct map_exception_type +{ + using type = org::open_power::Host::MaintenanceProcedure; +}; + +} + namespace xyz { namespace openbmc_project -- cgit v1.2.1