Add power sequencer errors
Add the errors that can be created by the UCD90160 device.
Change-Id: Ic12c8cbdaf01602583226c93feeb6b22cdbed283
Signed-off-by: Matt Spinler <spinler@us.ibm.com>
diff --git a/elog-errors.hpp b/elog-errors.hpp
index e10831c..676d754 100644
--- a/elog-errors.hpp
+++ b/elog-errors.hpp
@@ -41,6 +41,66 @@
{
namespace Error
{
+ struct PowerSequencerPGOODFault;
+} // namespace Error
+} // namespace Fault
+} // namespace Power
+} // namespace openbmc_project
+} // namespace xyz
+} // namespace sdbusplus
+
+namespace sdbusplus
+{
+namespace xyz
+{
+namespace openbmc_project
+{
+namespace Power
+{
+namespace Fault
+{
+namespace Error
+{
+ struct PowerSequencerVoltageFault;
+} // namespace Error
+} // namespace Fault
+} // namespace Power
+} // namespace openbmc_project
+} // namespace xyz
+} // namespace sdbusplus
+
+namespace sdbusplus
+{
+namespace xyz
+{
+namespace openbmc_project
+{
+namespace Power
+{
+namespace Fault
+{
+namespace Error
+{
+ struct PowerSequencerFault;
+} // namespace Error
+} // namespace Fault
+} // namespace Power
+} // namespace openbmc_project
+} // namespace xyz
+} // namespace sdbusplus
+
+namespace sdbusplus
+{
+namespace xyz
+{
+namespace openbmc_project
+{
+namespace Power
+{
+namespace Fault
+{
+namespace Error
+{
struct Shutdown;
} // namespace Error
} // namespace Fault
@@ -132,6 +192,183 @@
}
+namespace xyz
+{
+namespace openbmc_project
+{
+namespace Power
+{
+namespace Fault
+{
+namespace _PowerSequencerVoltageFault
+{
+
+struct RAIL
+{
+ static constexpr auto str = "RAIL=%d";
+ static constexpr auto str_short = "RAIL";
+ using type = std::tuple<std::decay_t<decltype(str)>,uint16_t>;
+ explicit constexpr RAIL(uint16_t a) : _entry(entry(str, a)) {};
+ type _entry;
+};
+struct RAIL_NAME
+{
+ static constexpr auto str = "RAIL_NAME=%s";
+ static constexpr auto str_short = "RAIL_NAME";
+ using type = std::tuple<std::decay_t<decltype(str)>,const char*>;
+ explicit constexpr RAIL_NAME(const char* a) : _entry(entry(str, a)) {};
+ type _entry;
+};
+struct RAW_STATUS
+{
+ static constexpr auto str = "RAW_STATUS=%s";
+ static constexpr auto str_short = "RAW_STATUS";
+ using type = std::tuple<std::decay_t<decltype(str)>,const char*>;
+ explicit constexpr RAW_STATUS(const char* a) : _entry(entry(str, a)) {};
+ type _entry;
+};
+
+} // namespace _PowerSequencerVoltageFault
+
+struct PowerSequencerVoltageFault
+{
+ static constexpr auto L = level::ERR;
+ using RAIL = _PowerSequencerVoltageFault::RAIL;
+ using RAIL_NAME = _PowerSequencerVoltageFault::RAIL_NAME;
+ using RAW_STATUS = _PowerSequencerVoltageFault::RAW_STATUS;
+ using metadata_types = std::tuple<RAIL, RAIL_NAME, RAW_STATUS>;
+
+};
+
+} // namespace Fault
+} // namespace Power
+} // namespace openbmc_project
+} // namespace xyz
+
+
+namespace details
+{
+
+template <>
+struct map_exception_type<sdbusplus::xyz::openbmc_project::Power::Fault::Error::PowerSequencerVoltageFault>
+{
+ using type = xyz::openbmc_project::Power::Fault::PowerSequencerVoltageFault;
+};
+
+}
+
+namespace xyz
+{
+namespace openbmc_project
+{
+namespace Power
+{
+namespace Fault
+{
+namespace _PowerSequencerPGOODFault
+{
+
+struct INPUT_NUM
+{
+ static constexpr auto str = "INPUT_NUM=%d";
+ static constexpr auto str_short = "INPUT_NUM";
+ using type = std::tuple<std::decay_t<decltype(str)>,uint16_t>;
+ explicit constexpr INPUT_NUM(uint16_t a) : _entry(entry(str, a)) {};
+ type _entry;
+};
+struct INPUT_NAME
+{
+ static constexpr auto str = "INPUT_NAME=%s";
+ static constexpr auto str_short = "INPUT_NAME";
+ using type = std::tuple<std::decay_t<decltype(str)>,const char*>;
+ explicit constexpr INPUT_NAME(const char* a) : _entry(entry(str, a)) {};
+ type _entry;
+};
+struct RAW_STATUS
+{
+ static constexpr auto str = "RAW_STATUS=%s";
+ static constexpr auto str_short = "RAW_STATUS";
+ using type = std::tuple<std::decay_t<decltype(str)>,const char*>;
+ explicit constexpr RAW_STATUS(const char* a) : _entry(entry(str, a)) {};
+ type _entry;
+};
+
+} // namespace _PowerSequencerPGOODFault
+
+struct PowerSequencerPGOODFault
+{
+ static constexpr auto L = level::ERR;
+ using INPUT_NUM = _PowerSequencerPGOODFault::INPUT_NUM;
+ using INPUT_NAME = _PowerSequencerPGOODFault::INPUT_NAME;
+ using RAW_STATUS = _PowerSequencerPGOODFault::RAW_STATUS;
+ using metadata_types = std::tuple<INPUT_NUM, INPUT_NAME, RAW_STATUS>;
+
+};
+
+} // namespace Fault
+} // namespace Power
+} // namespace openbmc_project
+} // namespace xyz
+
+
+namespace details
+{
+
+template <>
+struct map_exception_type<sdbusplus::xyz::openbmc_project::Power::Fault::Error::PowerSequencerPGOODFault>
+{
+ using type = xyz::openbmc_project::Power::Fault::PowerSequencerPGOODFault;
+};
+
+}
+
+namespace xyz
+{
+namespace openbmc_project
+{
+namespace Power
+{
+namespace Fault
+{
+namespace _PowerSequencerFault
+{
+
+struct RAW_STATUS
+{
+ static constexpr auto str = "RAW_STATUS=%s";
+ static constexpr auto str_short = "RAW_STATUS";
+ using type = std::tuple<std::decay_t<decltype(str)>,const char*>;
+ explicit constexpr RAW_STATUS(const char* a) : _entry(entry(str, a)) {};
+ type _entry;
+};
+
+} // namespace _PowerSequencerFault
+
+struct PowerSequencerFault
+{
+ static constexpr auto L = level::ERR;
+ using RAW_STATUS = _PowerSequencerFault::RAW_STATUS;
+ using metadata_types = std::tuple<RAW_STATUS>;
+
+};
+
+} // namespace Fault
+} // namespace Power
+} // namespace openbmc_project
+} // namespace xyz
+
+
+namespace details
+{
+
+template <>
+struct map_exception_type<sdbusplus::xyz::openbmc_project::Power::Fault::Error::PowerSequencerFault>
+{
+ using type = xyz::openbmc_project::Power::Fault::PowerSequencerFault;
+};
+
+}
+
} // namespace logging
diff --git a/xyz/openbmc_project/Power/Fault.errors.yaml b/xyz/openbmc_project/Power/Fault.errors.yaml
index e428494..5cfddf6 100644
--- a/xyz/openbmc_project/Power/Fault.errors.yaml
+++ b/xyz/openbmc_project/Power/Fault.errors.yaml
@@ -1,4 +1,14 @@
- name: Shutdown
description: A power off was issued because a power fault was detected
+
- name: PowerOnFailure
description: System power failed to turn on
+
+- name: PowerSequencerVoltageFault
+ description: The power sequencer chip detected a voltage fault
+
+- name: PowerSequencerPGOODFault
+ description: The power sequencer chip detected a PGOOD fault
+
+- name: PowerSequencerFault
+ description: The power sequencer chip detected a fault
diff --git a/xyz/openbmc_project/Power/Fault.metadata.yaml b/xyz/openbmc_project/Power/Fault.metadata.yaml
index ff416df..f0436d6 100644
--- a/xyz/openbmc_project/Power/Fault.metadata.yaml
+++ b/xyz/openbmc_project/Power/Fault.metadata.yaml
@@ -1,4 +1,31 @@
- name: Shutdown
level: ERR
+
- name: PowerOnFailure
level: ERR
+
+- name: PowerSequencerVoltageFault
+ level: ERR
+ meta:
+ - str: "RAIL=%d"
+ type: uint16
+ - str: "RAIL_NAME=%s"
+ type: string
+ - str: "RAW_STATUS=%s"
+ type: string
+
+- name: PowerSequencerPGOODFault
+ level: ERR
+ meta:
+ - str: "INPUT_NUM=%d"
+ type: uint16
+ - str: "INPUT_NAME=%s"
+ type: string
+ - str: "RAW_STATUS=%s"
+ type: string
+
+- name: PowerSequencerFault
+ level: ERR
+ meta:
+ - str: "RAW_STATUS=%s"
+ type: string