xref: /openbmc/openpower-hw-diags/attn/attn_dump.hpp (revision a92dc027c4532d20ba94c96ab7029d74fad6e6cb)
17029e525SBen Tyner #pragma once
2135793a8SBen Tyner #include <cstdint>
37029e525SBen Tyner 
47029e525SBen Tyner namespace attn
57029e525SBen Tyner {
67029e525SBen Tyner 
77029e525SBen Tyner /** @brief Dump types supported by dump request */
87029e525SBen Tyner enum class DumpType
97029e525SBen Tyner {
107029e525SBen Tyner     Hostboot,
117f6ce6acSBen Tyner     Hardware,
127f6ce6acSBen Tyner     SBE
137029e525SBen Tyner };
147029e525SBen Tyner 
157029e525SBen Tyner /** @brief Structure for dump request parameters */
167029e525SBen Tyner class DumpParameters
177029e525SBen Tyner {
187029e525SBen Tyner   public:
197029e525SBen Tyner     uint32_t unitId;
207029e525SBen Tyner     DumpType dumpType;
217029e525SBen Tyner };
227029e525SBen Tyner 
237029e525SBen Tyner /**
247029e525SBen Tyner  * Request a dump from the dump manager
257029e525SBen Tyner  *
267029e525SBen Tyner  * Request a dump from the dump manager and register a monitor for observing
277029e525SBen Tyner  * the dump progress.
287029e525SBen Tyner  *
29611b3442SZane Shelley  * @param i_logId        The platform log ID associated with the dump request.
307029e525SBen Tyner  * @param dumpParameters Parameters for the dump request
317029e525SBen Tyner  */
32611b3442SZane Shelley void requestDump(uint32_t i_logId, const DumpParameters& dumpParameters);
337029e525SBen Tyner 
34*a92dc027SDeepa Karthikeyan /**
35*a92dc027SDeepa Karthikeyan  * Enable or disable host watchdog dbus property
36*a92dc027SDeepa Karthikeyan  *
37*a92dc027SDeepa Karthikeyan  * This property is used in enabling/ disabling host watchdog.
38*a92dc027SDeepa Karthikeyan  *
39*a92dc027SDeepa Karthikeyan  * @param enable        Whether to enable (True) or disable (False) the watchdog
40*a92dc027SDeepa Karthikeyan  */
41*a92dc027SDeepa Karthikeyan void enableWatchdog(bool enable);
42*a92dc027SDeepa Karthikeyan 
437029e525SBen Tyner } // namespace attn
44