Matt Spinler | 8c686cc | 2019-09-20 13:46:02 -0500 | [diff] [blame] | 1 | #include "severity.hpp" |
| 2 | |
Matt Spinler | a7525aa | 2019-11-01 11:11:07 -0500 | [diff] [blame] | 3 | #include "pel_types.hpp" |
| 4 | |
Matt Spinler | 8c686cc | 2019-09-20 13:46:02 -0500 | [diff] [blame] | 5 | namespace openpower |
| 6 | { |
| 7 | namespace pels |
| 8 | { |
| 9 | |
| 10 | using LogSeverity = phosphor::logging::Entry::Level; |
| 11 | |
Matt Spinler | 8c686cc | 2019-09-20 13:46:02 -0500 | [diff] [blame] | 12 | uint8_t convertOBMCSeverityToPEL(LogSeverity severity) |
| 13 | { |
Matt Spinler | a7525aa | 2019-11-01 11:11:07 -0500 | [diff] [blame] | 14 | uint8_t pelSeverity = static_cast<uint8_t>(SeverityType::unrecoverable); |
Matt Spinler | 8c686cc | 2019-09-20 13:46:02 -0500 | [diff] [blame] | 15 | switch (severity) |
| 16 | { |
| 17 | case (LogSeverity::Notice): |
| 18 | case (LogSeverity::Informational): |
| 19 | case (LogSeverity::Debug): |
Matt Spinler | a7525aa | 2019-11-01 11:11:07 -0500 | [diff] [blame] | 20 | pelSeverity = static_cast<uint8_t>(SeverityType::nonError); |
Matt Spinler | 8c686cc | 2019-09-20 13:46:02 -0500 | [diff] [blame] | 21 | break; |
| 22 | |
| 23 | case (LogSeverity::Warning): |
Matt Spinler | a7525aa | 2019-11-01 11:11:07 -0500 | [diff] [blame] | 24 | pelSeverity = static_cast<uint8_t>(SeverityType::predictive); |
Matt Spinler | 8c686cc | 2019-09-20 13:46:02 -0500 | [diff] [blame] | 25 | break; |
| 26 | |
| 27 | case (LogSeverity::Critical): |
Matt Spinler | a7525aa | 2019-11-01 11:11:07 -0500 | [diff] [blame] | 28 | pelSeverity = static_cast<uint8_t>(SeverityType::critical); |
Matt Spinler | 8c686cc | 2019-09-20 13:46:02 -0500 | [diff] [blame] | 29 | break; |
| 30 | |
| 31 | case (LogSeverity::Emergency): |
| 32 | case (LogSeverity::Alert): |
| 33 | case (LogSeverity::Error): |
Matt Spinler | a7525aa | 2019-11-01 11:11:07 -0500 | [diff] [blame] | 34 | pelSeverity = static_cast<uint8_t>(SeverityType::unrecoverable); |
Matt Spinler | 8c686cc | 2019-09-20 13:46:02 -0500 | [diff] [blame] | 35 | break; |
| 36 | } |
| 37 | |
| 38 | return pelSeverity; |
| 39 | } |
| 40 | } // namespace pels |
| 41 | } // namespace openpower |