Remove the static OpenBMC Message Registry file

This change removes the static OpenBMC Message Registry file and
replaces it with a compile-time structure.

Tested:
Verified the OpenBMC Message registry is correctly returned from
the existing endpoints without using the static files.

Change-Id: I60ab3ce0d23c9ac7e91ebb85f445fb9ca731983d
Signed-off-by: Jason M. Bills <jason.m.bills@linux.intel.com>
diff --git a/redfish-core/include/redfish.hpp b/redfish-core/include/redfish.hpp
index a741a76..6237e47 100644
--- a/redfish-core/include/redfish.hpp
+++ b/redfish-core/include/redfish.hpp
@@ -112,6 +112,8 @@
             std::make_unique<MessageRegistryFileCollection>(app));
         nodes.emplace_back(std::make_unique<BaseMessageRegistryFile>(app));
         nodes.emplace_back(std::make_unique<BaseMessageRegistry>(app));
+        nodes.emplace_back(std::make_unique<OpenBMCMessageRegistryFile>(app));
+        nodes.emplace_back(std::make_unique<OpenBMCMessageRegistry>(app));
 
         for (const auto& node : nodes)
         {
diff --git a/redfish-core/include/registries/openbmc_message_registry.hpp b/redfish-core/include/registries/openbmc_message_registry.hpp
new file mode 100644
index 0000000..662aa88
--- /dev/null
+++ b/redfish-core/include/registries/openbmc_message_registry.hpp
@@ -0,0 +1,1213 @@
+/*
+// Copyright (c) 2019 Intel Corporation
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+*/
+#pragma once
+#include <registries.hpp>
+
+namespace redfish::message_registries::openbmc
+{
+const Header header = {
+    .copyright = "Copyright 2018 Intel. All rights reserved.",
+    .type = "#MessageRegistry.v1_0_0.MessageRegistry",
+    .id = "OpenBMC.0.1.0",
+    .name = "OpenBMC Message Registry",
+    .language = "en",
+    .description = "This registry defines the base messages for OpenBMC.",
+    .registryPrefix = "OpenBMC",
+    .registryVersion = "0.1.0",
+    .owningEntity = "OpenBMC",
+};
+const std::array registry = {
+    MessageEntry{
+        "ADDDCCorrectable",
+        {
+            .description = "Indicates an ADDDC Correctable Error.",
+            .message =
+                "ADDDC Correctable Error.Socket=%1 Channel=%2 DIMM=%3 Rank=%4.",
+            .severity = "Warning",
+            .numberOfArgs = 4,
+            .paramTypes =
+                {
+                    "number",
+                    "string",
+                    "number",
+                    "number",
+                },
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "BIOSBoot",
+        {
+            .description =
+                "Indicates BIOS has transitioned control to the OS Loader.",
+            .message = "BIOS System Boot.",
+            .severity = "OK",
+            .numberOfArgs = 0,
+            .paramTypes = {},
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "BIOSPOSTError",
+        {
+            .description = "Indicates BIOS POST has encountered an error.",
+            .message = "BIOS POST Error. Error Code=%1",
+            .severity = "Warning",
+            .numberOfArgs = 1,
+            .paramTypes = {"number"},
+            .resolution = "None.",
+        }},
+    MessageEntry{"BIOSRecoveryComplete",
+                 {
+                     .description = "Indicates BIOS Recovery has completed.",
+                     .message = "BIOS Recovery Complete.",
+                     .severity = "OK",
+                     .numberOfArgs = 0,
+                     .paramTypes = {},
+                     .resolution = "None.",
+                 }},
+    MessageEntry{"BIOSRecoveryStart",
+                 {
+                     .description = "Indicates BIOS Recovery has started.",
+                     .message = "BIOS Recovery Start.",
+                     .severity = "Warning",
+                     .numberOfArgs = 0,
+                     .paramTypes = {},
+                     .resolution = "None.",
+                 }},
+    MessageEntry{"CPUError",
+                 {
+                     .description = "Indicates that a CPU Error occurred of "
+                                    "the specified type or cause.",
+                     .message = "CPU Error Occurred: %1.",
+                     .severity = "Critical",
+                     .numberOfArgs = 1,
+                     .paramTypes = {"string"},
+                     .resolution = "None.",
+                 }},
+    MessageEntry{
+        "DCPowerOff",
+        {
+            .description = "Indicates that the system DC power is off.",
+            .message = "Host system DC power is off",
+            .severity = "OK",
+            .numberOfArgs = 0,
+            .paramTypes = {},
+            .resolution = "None.",
+        }},
+    MessageEntry{"DCPowerOn",
+                 {
+                     .description = "Indicates that the system DC power is on.",
+                     .message = "Host system DC power is on",
+                     .severity = "OK",
+                     .numberOfArgs = 0,
+                     .paramTypes = {},
+                     .resolution = "None.",
+                 }},
+    MessageEntry{
+        "EventLogCleared",
+        {
+            .description = "Indicates that the event log has been cleared.",
+            .message = "Event Log Cleared.",
+            .severity = "OK",
+            .numberOfArgs = 0,
+            .paramTypes = {},
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "FanInserted",
+        {
+            .description = "Indicates that a system fan has been inserted.",
+            .message = "Fan %1 inserted.",
+            .severity = "OK",
+            .numberOfArgs = 1,
+            .paramTypes = {"number"},
+            .resolution = "None.",
+        }},
+    MessageEntry{"FanRedundancyLost",
+                 {
+                     .description =
+                         "Indicates that system fan redundancy has been lost.",
+                     .message = "Fan redundancy lost.",
+                     .severity = "Warning",
+                     .numberOfArgs = 0,
+                     .paramTypes = {},
+                     .resolution = "None.",
+                 }},
+    MessageEntry{
+        "FanRedundancyRegained",
+        {
+            .description =
+                "Indicates that system fan redundancy has been regained.",
+            .message = "Fan redundancy regained.",
+            .severity = "OK",
+            .numberOfArgs = 0,
+            .paramTypes = {},
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "FanRemoved",
+        {
+            .description = "Indicates that a system fan has been removed.",
+            .message = "Fan %1 removed.",
+            .severity = "Warning",
+            .numberOfArgs = 1,
+            .paramTypes = {"number"},
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "FirmwareUpdateCompleted",
+        {
+            .description =
+                "Indicates a firmware update has completed successfully.",
+            .message = "%1 firmware update to version %2 completed "
+                       "successfully.",
+            .severity = "OK",
+            .numberOfArgs = 2,
+            .paramTypes = {"string", "string"},
+            .resolution = "None.",
+        }},
+    MessageEntry{"FirmwareUpdateFailed",
+                 {
+                     .description = "Indicates a firmware update has failed.",
+                     .message = "%1 firmware update to version %2 failed.",
+                     .severity = "Warning",
+                     .numberOfArgs = 2,
+                     .paramTypes = {"string", "string"},
+                     .resolution = "None.",
+                 }},
+    MessageEntry{"FirmwareUpdateStarted",
+                 {
+                     .description = "Indicates a firmware update has started.",
+                     .message = "%1 firmware update to version %2 started.",
+                     .severity = "OK",
+                     .numberOfArgs = 2,
+                     .paramTypes = {"string", "string"},
+                     .resolution = "None.",
+                 }},
+    MessageEntry{
+        "GeneralFirmwareSecurityViolation",
+        {
+            .description =
+                "Indicates a general firmware security violation has occurred.",
+            .message = "Firmware security violation: %1.",
+            .severity = "Critical",
+            .numberOfArgs = 1,
+            .paramTypes = {"string"},
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "InvalidLoginAttempted",
+        {
+            .description =
+                "Indicates that a login was attempted on the specified "
+                "interface with an invalid username or password.",
+            .message = "Invalid username or password attempted on %1.",
+            .severity = "Warning",
+            .numberOfArgs = 1,
+            .paramTypes = {"string"},
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "IntelUPILinkWidthReducedToHalf",
+        {
+            .description =
+                "Indicates Intel UPI link width has reduced to half width.",
+            .message = "Intel UPI link width reduced to half. Node=%1.",
+            .severity = "Warning",
+            .numberOfArgs = 1,
+            .paramTypes =
+                {
+                    "number",
+                },
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "IntelUPILinkWidthReducedToQuarter",
+        {
+            .description =
+                "Indicates Intel UPI link width has reduced to quarter width.",
+            .message = "Intel UPI link width reduced to quarter. Node=%1.",
+            .severity = "Warning",
+            .numberOfArgs = 1,
+            .paramTypes =
+                {
+                    "number",
+                },
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "LegacyPCIPERR",
+        {
+            .description = "Indicates a Legacy PCI PERR.",
+            .message = "Legacy PCI PERR. Bus=%1 Device=%2 Function=%3.",
+            .severity = "Warning",
+            .numberOfArgs = 3,
+            .paramTypes =
+                {
+                    "number",
+                    "number",
+                    "number",
+                },
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "LegacyPCISERR",
+        {
+            .description = "Indicates a Legacy PCI SERR.",
+            .message = "Legacy PCI SERR. Bus=%1 Device=%2 Function=%3.",
+            .severity = "Critical",
+            .numberOfArgs = 3,
+            .paramTypes =
+                {
+                    "number",
+                    "number",
+                    "number",
+                },
+            .resolution = "None.",
+        }},
+    MessageEntry{"ManufacturingModeEntered",
+                 {
+                     .description = "Indicates that Factory, Manufacturing, or "
+                                    "Test mode has been entered.",
+                     .message = "Entered Manufacturing Mode.",
+                     .severity = "Warning",
+                     .numberOfArgs = 0,
+                     .paramTypes = {},
+                     .resolution = "None.",
+                 }},
+    MessageEntry{"MemoryECCCorrectable",
+                 {
+                     .description = "Indicates a Correctable Memory ECC error.",
+                     .message = "Memory ECC correctable error. Socket=%1 "
+                                "Channel=%2 DIMM=%3 Rank=%4.",
+                     .severity = "Warning",
+                     .numberOfArgs = 4,
+                     .paramTypes =
+                         {
+                             "number",
+                             "string",
+                             "number",
+                             "number",
+                         },
+                     .resolution = "None.",
+                 }},
+    MessageEntry{
+        "MemoryECCUncorrectable",
+        {
+            .description = "Indicates an Uncorrectable Memory ECC error.",
+            .message = "Memory ECC uncorrectable error. Socket=%1 Channel=%2 "
+                       "DIMM=%3 Rank=%4.",
+            .severity = "Critical",
+            .numberOfArgs = 4,
+            .paramTypes =
+                {
+                    "number",
+                    "string",
+                    "number",
+                    "number",
+                },
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "MemoryParityCommandAndAddress",
+        {
+            .description = "Indicates a Command and Address parity error.",
+            .message = "Command and Address parity error. Socket=%1 Channel=%2 "
+                       "DIMM=%3 ChannelValid=%4 DIMMValid=%5.",
+            .severity = "Critical",
+            .numberOfArgs = 5,
+            .paramTypes =
+                {
+                    "number",
+                    "string",
+                    "number",
+                    "number",
+                    "number",
+                },
+            .resolution = "None.",
+        }},
+    MessageEntry{"MemoryParityNotKnown",
+                 {
+                     .description = "Indicates an unknown parity error.",
+                     .message = "Memory parity error. Socket=%1 Channel=%2 "
+                                "DIMM=%3 ChannelValid=%4 DIMMValid=%5.",
+                     .severity = "Critical",
+                     .numberOfArgs = 5,
+                     .paramTypes =
+                         {
+                             "number",
+                             "string",
+                             "number",
+                             "number",
+                             "number",
+                         },
+                     .resolution = "None.",
+                 }},
+    MessageEntry{
+        "MemoryRASConfigurationDisabled",
+        {
+            .description =
+                "Indicates Memory RAS Disabled Configuration Status.",
+            .message = "Memory RAS Configuration Disabled. Error=%1 Mode=%2.",
+            .severity = "OK",
+            .numberOfArgs = 2,
+            .paramTypes =
+                {
+                    "string",
+                    "string",
+                },
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "MemoryRASConfigurationEnabled",
+        {
+            .description = "Indicates Memory RAS Enabled Configuration Status.",
+            .message = "Memory RAS Configuration Enabled. Error=%1 Mode=%2.",
+            .severity = "OK",
+            .numberOfArgs = 2,
+            .paramTypes =
+                {
+                    "string",
+                    "string",
+                },
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "MemoryRASModeDisabled",
+        {
+            .description = "Indicates Memory RAS Disabled Mode Selection.",
+            .message = "Memory RAS Mode Select Disabled. Prior Mode=%1 "
+                       "Selected Mode=%2.",
+            .severity = "OK",
+            .numberOfArgs = 2,
+            .paramTypes =
+                {
+                    "string",
+                    "string",
+                },
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "MemoryRASModeEnabled",
+        {
+            .description = "Indicates Memory RAS Enabled Mode Selection.",
+            .message = "Memory RAS Mode Select Enabled. Prior Mode=%1 Selected "
+                       "Mode=%2.",
+            .severity = "OK",
+            .numberOfArgs = 2,
+            .paramTypes =
+                {
+                    "string",
+                    "string",
+                },
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "MemoryThermTrip",
+        {
+            .description =
+                "Indicates that the system memory ThermTrip is asserted.",
+            .message = "Memory ThermTrip asserted.",
+            .severity = "Critical",
+            .numberOfArgs = 0,
+            .paramTypes = {},
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "MirroringRedundancyDegraded",
+        {
+            .description =
+                "Indicates the mirroring redundancy state is degraded.",
+            .message = "Mirroring redundancy state degraded. Socket=%1 "
+                       "Channel=%2 DIMM=%3 Pair=%4 Rank=%5.",
+            .severity = "Warning",
+            .numberOfArgs = 5,
+            .paramTypes =
+                {
+                    "number",
+                    "string",
+                    "number",
+                    "number",
+                    "number",
+                },
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "MirroringRedundancyFull",
+        {
+            .description =
+                "Indicates the mirroring redundancy state is fully redundant.",
+            .message = "Mirroring redundancy state fully redundant. Socket=%1 "
+                       "Channel=%2 DIMM=%3 Pair=%4 Rank=%5.",
+            .severity = "OK",
+            .numberOfArgs = 5,
+            .paramTypes =
+                {
+                    "number",
+                    "string",
+                    "number",
+                    "number",
+                    "number",
+                },
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "NMIButtonPressed",
+        {
+            .description = "Indicates that the NMI button was pressed.",
+            .message = "NMI Button Pressed.",
+            .severity = "Critical",
+            .numberOfArgs = 0,
+            .paramTypes = {},
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "PCIeCorrectableAdvisoryNonFatal",
+        {
+            .description =
+                "Indicates a PCIe Correctable Advisory Non-fatal Error.",
+            .message = "PCIe Correctable Advisory Non-fatal Error. Bus=%1 "
+                       "Device=%2 Function=%3.",
+            .severity = "Warning",
+            .numberOfArgs = 3,
+            .paramTypes =
+                {
+                    "number",
+                    "number",
+                    "number",
+                },
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "PCIeCorrectableBadDLLP",
+        {
+            .description = "Indicates a PCIe Correctable Bad DLLP Error.",
+            .message =
+                "PCIe Correctable Bad DLLP. Bus=%1 Device=%2 Function=%3.",
+            .severity = "Warning",
+            .numberOfArgs = 3,
+            .paramTypes =
+                {
+                    "number",
+                    "number",
+                    "number",
+                },
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "PCIeCorrectableBadTLP",
+        {
+            .description = "Indicates a PCIe Correctable Bad TLP Error.",
+            .message =
+                "PCIe Correctable Bad TLP. Bus=%1 Device=%2 Function=%3.",
+            .severity = "Warning",
+            .numberOfArgs = 3,
+            .paramTypes =
+                {
+                    "number",
+                    "number",
+                    "number",
+                },
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "PCIeCorrectableHeaderLogOverflow",
+        {
+            .description =
+                "Indicates a PCIe Correctable Header Log Overflow Error.",
+            .message = "PCIe Correctable Header Log Overflow. Bus=%1 Device=%2 "
+                       "Function=%3.",
+            .severity = "Warning",
+            .numberOfArgs = 3,
+            .paramTypes =
+                {
+                    "number",
+                    "number",
+                    "number",
+                },
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "PCIeCorrectableInternal",
+        {
+            .description = "Indicates a PCIe Correctable Internal Error.",
+            .message = "PCIe Correctable Internal Error. Bus=%1 Device=%2 "
+                       "Function=%3.",
+            .severity = "Warning",
+            .numberOfArgs = 3,
+            .paramTypes =
+                {
+                    "number",
+                    "number",
+                    "number",
+                },
+            .resolution = "None.",
+        }},
+    MessageEntry{"PCIeCorrectableLinkBWChanged",
+                 {
+                     .description =
+                         "Indicates a PCIe Correctable Link BW Changed Error.",
+                     .message = "PCIe Correctable Link BW Changed. Bus=%1 "
+                                "Device=%2 Function=%3.",
+                     .severity = "Warning",
+                     .numberOfArgs = 3,
+                     .paramTypes =
+                         {
+                             "number",
+                             "number",
+                             "number",
+                         },
+                     .resolution = "None.",
+                 }},
+    MessageEntry{
+        "PCIeCorrectableReceiverError",
+        {
+            .description = "Indicates a PCIe Correctable Receiver Error.",
+            .message = "PCIe Correctable Receiver Error. Bus=%1 Device=%2 "
+                       "Function=%3.",
+            .severity = "Warning",
+            .numberOfArgs = 3,
+            .paramTypes =
+                {
+                    "number",
+                    "number",
+                    "number",
+                },
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "PCIeCorrectableReplayNumRollover",
+        {
+            .description = "Indicates a PCIe Correctable Replay Num Rollover.",
+            .message = "PCIe Correctable Replay Num Rollover. Bus=%1 Device=%2 "
+                       "Function=%3.",
+            .severity = "Warning",
+            .numberOfArgs = 3,
+            .paramTypes =
+                {
+                    "number",
+                    "number",
+                    "number",
+                },
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "PCIeCorrectableReplayTimerTimeout",
+        {
+            .description = "Indicates a PCIe Correctable Replay Timer Timeout.",
+            .message = "PCIe Correctable Replay Timer Timeout. Bus=%1 "
+                       "Device=%2 Function=%3.",
+            .severity = "Warning",
+            .numberOfArgs = 3,
+            .paramTypes =
+                {
+                    "number",
+                    "number",
+                    "number",
+                },
+            .resolution = "None.",
+        }},
+    MessageEntry{"PCIeCorrectableUnspecifiedAERError",
+                 {
+                     .description =
+                         "Indicates a PCIe Correctable Unspecified AER Error.",
+                     .message = "PCIe Correctable Unspecified AER Error. "
+                                "Bus=%1 Device=%2 Function=%3.",
+                     .severity = "Warning",
+                     .numberOfArgs = 3,
+                     .paramTypes =
+                         {
+                             "number",
+                             "number",
+                             "number",
+                         },
+                     .resolution = "None.",
+                 }},
+    MessageEntry{
+        "PCIeFatalACSViolation",
+        {
+            .description = "Indicates a PCIe ACS Violation Error.",
+            .message =
+                "PCIe Fatal ACS Violation. Bus=%1 Device=%2 Function=%3.",
+            .severity = "Error",
+            .numberOfArgs = 3,
+            .paramTypes =
+                {
+                    "number",
+                    "number",
+                    "number",
+                },
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "PCIeFatalAtomicEgressBlocked",
+        {
+            .description = "Indicates a PCIe Atomic Egress Blocked Error.",
+            .message = "PCIe Fatal Atomic Egress Blocked. Bus=%1 Device=%2 "
+                       "Function=%3.",
+            .severity = "Error",
+            .numberOfArgs = 3,
+            .paramTypes =
+                {
+                    "number",
+                    "number",
+                    "number",
+                },
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "PCIeFatalCompleterAbort",
+        {
+            .description = "Indicates a PCIe Completer Abort Error.",
+            .message =
+                "PCIe Fatal Completer Abort. Bus=%1 Device=%2 Function=%3.",
+            .severity = "Error",
+            .numberOfArgs = 3,
+            .paramTypes =
+                {
+                    "number",
+                    "number",
+                    "number",
+                },
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "PCIeFatalCompletionTimeout",
+        {
+            .description = "Indicates a PCIe Completion Timeout Error.",
+            .message =
+                "PCIe Fatal Completion Timeout. Bus=%1 Device=%2 Function=%3.",
+            .severity = "Error",
+            .numberOfArgs = 3,
+            .paramTypes =
+                {
+                    "number",
+                    "number",
+                    "number",
+                },
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "PCIeFatalDataLinkLayerProtocol",
+        {
+            .description = "Indicates a PCIe Data Link Layer Protocol Error.",
+            .message =
+                "PCIe Fatal Data Link Layer Protocol Error. Bus=%1 Device=%2 "
+                "Function=%3.",
+            .severity = "Error",
+            .numberOfArgs = 3,
+            .paramTypes =
+                {
+                    "number",
+                    "number",
+                    "number",
+                },
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "PCIeFatalECRCError",
+        {
+            .description = "Indicates a PCIe ECRC Error.",
+            .message = "PCIe Fatal ECRC Error. Bus=%1 Device=%2 Function=%3.",
+            .severity = "Error",
+            .numberOfArgs = 3,
+            .paramTypes =
+                {
+                    "number",
+                    "number",
+                    "number",
+                },
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "PCIeFatalFlowControlProtocol",
+        {
+            .description = "Indicates a PCIe Flow Control Protocol Error.",
+            .message =
+                "PCIe Fatal Flow Control Protocol Error. Bus=%1 Device=%2 "
+                "Function=%3.",
+            .severity = "Error",
+            .numberOfArgs = 3,
+            .paramTypes =
+                {
+                    "number",
+                    "number",
+                    "number",
+                },
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "PCIeFatalMalformedTLP",
+        {
+            .description = "Indicates a PCIe Malformed TLP Error.",
+            .message =
+                "PCIe Fatal Malformed TLP Error. Bus=%1 Device=%2 Function=%3.",
+            .severity = "Error",
+            .numberOfArgs = 3,
+            .paramTypes =
+                {
+                    "number",
+                    "number",
+                    "number",
+                },
+            .resolution = "None.",
+        }},
+    MessageEntry{"PCIeFatalMCBlockedTLP",
+                 {
+                     .description = "Indicates a PCIe MC Blocked TLP Error.",
+                     .message = "PCIe Fatal MC Blocked TLP Error. Bus=%1 "
+                                "Device=%2 Function=%3.",
+                     .severity = "Error",
+                     .numberOfArgs = 3,
+                     .paramTypes =
+                         {
+                             "number",
+                             "number",
+                             "number",
+                         },
+                     .resolution = "None.",
+                 }},
+    MessageEntry{
+        "PCIeFatalPoisonedTLP",
+        {
+            .description = "Indicates a PCIe Poisoned TLP Error.",
+            .message =
+                "PCIe Fatal Poisoned TLP Error. Bus=%1 Device=%2 Function=%3.",
+            .severity = "Error",
+            .numberOfArgs = 3,
+            .paramTypes =
+                {
+                    "number",
+                    "number",
+                    "number",
+                },
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "PCIeFatalReceiverBufferOverflow",
+        {
+            .description = "Indicates a PCIe Receiver Buffer Overflow Error.",
+            .message = "PCIe Fatal Receiver Buffer Overflow. Bus=%1 Device=%2 "
+                       "Function=%3.",
+            .severity = "Error",
+            .numberOfArgs = 3,
+            .paramTypes =
+                {
+                    "number",
+                    "number",
+                    "number",
+                },
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "PCIeFatalReceivedERR_NONFATALMessage",
+        {
+            .description =
+                "Indicates a PCIe Received ERR_NONFATAL Message Error.",
+            .message =
+                "PCIe Fatal Received ERR_NONFATAL Message. Bus=%1 Device=%2 "
+                "Function=%3.",
+            .severity = "Error",
+            .numberOfArgs = 3,
+            .paramTypes =
+                {
+                    "number",
+                    "number",
+                    "number",
+                },
+            .resolution = "None.",
+        }},
+    MessageEntry{"PCIeFatalReceivedFatalMessageFromDownstream",
+                 {
+                     .description = "Indicates a PCIe Received Fatal Message "
+                                    "From Downstream Error.",
+                     .message =
+                         "PCIe Fatal Received Fatal Message From Downstream. "
+                         "Bus=%1 Device=%2 Function=%3.",
+                     .severity = "Error",
+                     .numberOfArgs = 3,
+                     .paramTypes =
+                         {
+                             "number",
+                             "number",
+                             "number",
+                         },
+                     .resolution = "None.",
+                 }},
+    MessageEntry{
+        "PCIeFatalSurpriseLinkDown",
+        {
+            .description = "Indicates a PCIe Surprise Link Down Error.",
+            .message = "PCIe Fatal Surprise Link Down Error. Bus=%1 Device=%2 "
+                       "Function=%3.",
+            .severity = "Error",
+            .numberOfArgs = 3,
+            .paramTypes =
+                {
+                    "number",
+                    "number",
+                    "number",
+                },
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "PCIeFatalTLPPrefixBlocked",
+        {
+            .description = "Indicates a PCIe TLP Prefix Blocked Error.",
+            .message = "PCIe Fatal TLP Prefix Blocked Error. Bus=%1 Device=%2 "
+                       "Function=%3.",
+            .severity = "Error",
+            .numberOfArgs = 3,
+            .paramTypes =
+                {
+                    "number",
+                    "number",
+                    "number",
+                },
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "PCIeFatalUncorrectableInternal",
+        {
+            .description = "Indicates a PCIe Uncorrectable Internal Error.",
+            .message =
+                "PCIe Fatal Uncorrectable Internal Error. Bus=%1 Device=%2 "
+                "Function=%3.",
+            .severity = "Error",
+            .numberOfArgs = 3,
+            .paramTypes =
+                {
+                    "number",
+                    "number",
+                    "number",
+                },
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "PCIeFatalUnexpectedCompletion",
+        {
+            .description = "Indicates a PCIe Unexpected Completion Error.",
+            .message = "PCIe Fatal Unexpected Completion. Bus=%1 Device=%2 "
+                       "Function=%3.",
+            .severity = "Error",
+            .numberOfArgs = 3,
+            .paramTypes =
+                {
+                    "number",
+                    "number",
+                    "number",
+                },
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "PCIeFatalUnspecifiedNonAERFatalError",
+        {
+            .description = "Indicates a PCIe Unspecified Non-AER Fatal Error.",
+            .message = "PCIe Fatal Unspecified Non-AER Fatal Error. Bus=%1 "
+                       "Device=%2 Function=%3.",
+            .severity = "Error",
+            .numberOfArgs = 3,
+            .paramTypes =
+                {
+                    "number",
+                    "number",
+                    "number",
+                },
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "PCIeFatalUnsupportedRequest",
+        {
+            .description = "Indicates a PCIe Unsupported Request Error.",
+            .message =
+                "PCIe Fatal Unsupported Request. Bus=%1 Device=%2 Function=%3.",
+            .severity = "Error",
+            .numberOfArgs = 3,
+            .paramTypes =
+                {
+                    "number",
+                    "number",
+                    "number",
+                },
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "PowerButtonPressed",
+        {
+            .description = "Indicates that the power button was pressed.",
+            .message = "Power Button Pressed.",
+            .severity = "OK",
+            .numberOfArgs = 0,
+            .paramTypes = {},
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "PowerSupplyACLost",
+        {
+            .description = "Indicates that a power supply has lost AC power.",
+            .message = "Power supply %1 AC power lost.",
+            .severity = "Critical",
+            .numberOfArgs = 1,
+            .paramTypes = {"number"},
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "PowerSupplyConfigurationError",
+        {
+            .description = "Indicates an error in power supply configuration.",
+            .message = "Power supply %1 configuration error.",
+            .severity = "Critical",
+            .numberOfArgs = 1,
+            .paramTypes = {"number"},
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "PowerSupplyFanFailed",
+        {
+            .description =
+                "Indicates that the specified power supply fan has failed.",
+            .message = "Power supply %1 fan %2 failed.",
+            .severity = "Critical",
+            .numberOfArgs = 2,
+            .paramTypes = {"number", "number"},
+            .resolution = "None.",
+        }},
+    MessageEntry{"PowerSupplyFailed",
+                 {
+                     .description = "Indicates that a power supply has failed.",
+                     .message = "Power supply %1 failed.",
+                     .severity = "Critical",
+                     .numberOfArgs = 1,
+                     .paramTypes = {"number"},
+                     .resolution = "None.",
+                 }},
+    MessageEntry{"PowerSupplyFailurePredicted",
+                 {
+                     .description =
+                         "Indicates that a power supply is predicted to fail.",
+                     .message = "Power supply %1 failure predicted.",
+                     .severity = "Warning",
+                     .numberOfArgs = 1,
+                     .paramTypes = {"number"},
+                     .resolution = "None.",
+                 }},
+    MessageEntry{
+        "PowerSupplyInserted",
+        {
+            .description = "Indicates that a power supply has been inserted.",
+            .message = "Power supply %1 inserted.",
+            .severity = "OK",
+            .numberOfArgs = 1,
+            .paramTypes = {"number"},
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "PowerSupplyRemoved",
+        {
+            .description = "Indicates that a power supply has been removed.",
+            .message = "Power supply %1 removed.",
+            .severity = "Warning",
+            .numberOfArgs = 1,
+            .paramTypes = {"number"},
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "ResetButtonPressed",
+        {
+            .description = "Indicates that the reset button was pressed.",
+            .message = "Reset Button Pressed.",
+            .severity = "OK",
+            .numberOfArgs = 0,
+            .paramTypes = {},
+            .resolution = "None.",
+        }},
+    MessageEntry{"SELEntryAdded",
+                 {
+                     .description = "Indicates a SEL entry was added using the "
+                                    "Add SEL Entry or Platform Event command.",
+                     .message = "SEL Entry Added: %1",
+                     .severity = "OK",
+                     .numberOfArgs = 1,
+                     .paramTypes =
+                         {
+                             "string",
+                         },
+                     .resolution = "None.",
+                 }},
+    MessageEntry{
+        "SensorThresholdCriticalHighGoingHigh",
+        {
+            .description = "Indicates that a threshold sensor has crossed a "
+                           "critical high threshold going high.",
+            .message = "%1 sensor crossed a critical high threshold going "
+                       "high. Reading=%2 Threshold=%3.",
+            .severity = "Critical",
+            .numberOfArgs = 3,
+            .paramTypes = {"string", "number", "number"},
+            .resolution = "Check the sensor or subsystem for errors.",
+        }},
+    MessageEntry{
+        "SensorThresholdCriticalHighGoingLow",
+        {
+            .description = "Indicates that a threshold sensor has crossed a "
+                           "critical high threshold going low.",
+            .message = "%1 sensor crossed a critical high threshold going low. "
+                       "Reading=%2 Threshold=%3.",
+            .severity = "OK",
+            .numberOfArgs = 3,
+            .paramTypes = {"string", "number", "number"},
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "SensorThresholdCriticalLowGoingHigh",
+        {
+            .description = "Indicates that a threshold sensor has crossed a "
+                           "critical low threshold going high.",
+            .message = "%1 sensor crossed a critical low threshold going high. "
+                       "Reading=%2 Threshold=%3.",
+            .severity = "OK",
+            .numberOfArgs = 3,
+            .paramTypes = {"string", "number", "number"},
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "SensorThresholdCriticalLowGoingLow",
+        {
+            .description = "Indicates that a threshold sensor has crossed a "
+                           "critical low threshold going low.",
+            .message = "%1 sensor crossed a critical low threshold going low. "
+                       "Reading=%2 Threshold=%3.",
+            .severity = "Critical",
+            .numberOfArgs = 3,
+            .paramTypes = {"string", "number", "number"},
+            .resolution = "Check the sensor or subsystem for errors.",
+        }},
+    MessageEntry{
+        "SensorThresholdWarningHighGoingHigh",
+        {
+            .description = "Indicates that a threshold sensor has crossed a "
+                           "warning high threshold going high.",
+            .message = "%1 sensor crossed a warning high threshold going high. "
+                       "Reading=%2 Threshold=%3.",
+            .severity = "Warning",
+            .numberOfArgs = 3,
+            .paramTypes = {"string", "number", "number"},
+            .resolution = "Check the sensor or subsystem for errors.",
+        }},
+    MessageEntry{
+        "SensorThresholdWarningHighGoingLow",
+        {
+            .description = "Indicates that a threshold sensor has crossed a "
+                           "warning high threshold going low.",
+            .message = "%1 sensor crossed a warning high threshold going low. "
+                       "Reading=%2 Threshold=%3.",
+            .severity = "OK",
+            .numberOfArgs = 3,
+            .paramTypes = {"string", "number", "number"},
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "SensorThresholdWarningLowGoingHigh",
+        {
+            .description = "Indicates that a threshold sensor has crossed a "
+                           "warning low threshold going high.",
+            .message = "%1 sensor crossed a warning low threshold going high. "
+                       "Reading=%2 Threshold=%3.",
+            .severity = "OK",
+            .numberOfArgs = 3,
+            .paramTypes = {"string", "number", "number"},
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "SensorThresholdWarningLowGoingLow",
+        {
+            .description = "Indicates that a threshold sensor has crossed a "
+                           "warning low threshold going low.",
+            .message = "%1 sensor crossed a warning low threshold going low. "
+                       "Reading=%2 Threshold=%3.",
+            .severity = "Warning",
+            .numberOfArgs = 3,
+            .paramTypes = {"string", "number", "number"},
+            .resolution = "Check the sensor or subsystem for errors.",
+        }},
+    MessageEntry{"SparingRedundancyDegraded",
+                 {
+                     .description =
+                         "Indicates the sparing redundancy state is degraded.",
+                     .message = "Sparing redundancy state degraded. Socket=%1 "
+                                "Channel=%2 DIMM=%3 Domain=%4 Rank=%5.",
+                     .severity = "Warning",
+                     .numberOfArgs = 5,
+                     .paramTypes =
+                         {
+                             "number",
+                             "string",
+                             "number",
+                             "string",
+                             "number",
+                         },
+                     .resolution = "None.",
+                 }},
+    MessageEntry{
+        "SparingRedundancyFull",
+        {
+            .description =
+                "Indicates the sparing redundancy state is fully redundant.",
+            .message = "Sparing redundancy state fully redundant. Socket=%1 "
+                       "Channel=%2 DIMM=%3 Domain=%4 Rank=%5.",
+            .severity = "OK",
+            .numberOfArgs = 5,
+            .paramTypes =
+                {
+                    "number",
+                    "string",
+                    "number",
+                    "string",
+                    "number",
+                },
+            .resolution = "None.",
+        }},
+    MessageEntry{"SystemPowerLost",
+                 {
+                     .description = "Indicates that power was lost while the "
+                                    "system was powered on.",
+                     .message = "System Power Lost.",
+                     .severity = "Critical",
+                     .numberOfArgs = 0,
+                     .paramTypes = {},
+                     .resolution = "None.",
+                 }},
+    MessageEntry{
+        "SystemPowerOffFailed",
+        {
+            .description = "Indicates that the system failed to power off.",
+            .message = "System Power-Off Failed.",
+            .severity = "Critical",
+            .numberOfArgs = 0,
+            .paramTypes = {},
+            .resolution = "None.",
+        }},
+    MessageEntry{
+        "SystemPowerOnFailed",
+        {
+            .description = "Indicates that the system failed to power on.",
+            .message = "System Power-On Failed.",
+            .severity = "Critical",
+            .numberOfArgs = 0,
+            .paramTypes = {},
+            .resolution = "None.",
+        }},
+};
+} // namespace redfish::message_registries::openbmc
diff --git a/redfish-core/lib/message_registries.hpp b/redfish-core/lib/message_registries.hpp
index e44e97d..31412f3 100644
--- a/redfish-core/lib/message_registries.hpp
+++ b/redfish-core/lib/message_registries.hpp
@@ -18,6 +18,7 @@
 #include "node.hpp"
 #include "registries.hpp"
 #include "registries/base_message_registry.hpp"
+#include "registries/openbmc_message_registry.hpp"
 
 namespace redfish
 {
@@ -193,4 +194,122 @@
     }
 };
 
+class OpenBMCMessageRegistryFile : public Node
+{
+  public:
+    template <typename CrowApp>
+    OpenBMCMessageRegistryFile(CrowApp &app) :
+        Node(app, "/redfish/v1/Registries/OpenBMC/")
+    {
+        entityPrivileges = {
+            {boost::beast::http::verb::get, {{"Login"}}},
+            {boost::beast::http::verb::head, {{"Login"}}},
+            {boost::beast::http::verb::patch, {{"ConfigureManager"}}},
+            {boost::beast::http::verb::put, {{"ConfigureManager"}}},
+            {boost::beast::http::verb::delete_, {{"ConfigureManager"}}},
+            {boost::beast::http::verb::post, {{"ConfigureManager"}}}};
+    }
+
+  private:
+    void doGet(crow::Response &res, const crow::Request &req,
+               const std::vector<std::string> &params) override
+    {
+        std::shared_ptr<AsyncResp> asyncResp = std::make_shared<AsyncResp>(res);
+
+        asyncResp->res.jsonValue["@odata.id"] =
+            "/redfish/v1/Registries/OpenBMC";
+        asyncResp->res.jsonValue["@odata.type"] =
+            "#MessageRegistryFile.v1_1_0.MessageRegistryFile";
+        asyncResp->res.jsonValue["@odata.context"] =
+            "/redfish/v1/$metadata#MessageRegistryFile.MessageRegistryFile";
+        asyncResp->res.jsonValue["Name"] = "Open BMC Message Registry File";
+        asyncResp->res.jsonValue["Description"] =
+            "Open BMC Message Registry File Location";
+        asyncResp->res.jsonValue["Id"] =
+            message_registries::openbmc::header.registryPrefix;
+        asyncResp->res.jsonValue["Registry"] =
+            message_registries::openbmc::header.id;
+        nlohmann::json &messageRegistryLanguageArray =
+            asyncResp->res.jsonValue["Languages"];
+        messageRegistryLanguageArray = nlohmann::json::array();
+        messageRegistryLanguageArray.push_back({"en"});
+        asyncResp->res.jsonValue["Languages@odata.count"] =
+            messageRegistryLanguageArray.size();
+        nlohmann::json &messageRegistryLocationArray =
+            asyncResp->res.jsonValue["Location"];
+        messageRegistryLocationArray = nlohmann::json::array();
+        messageRegistryLocationArray.push_back(
+            {{"Language", "en"},
+             {"Uri", "/redfish/v1/Registries/OpenBMC/OpenBMC"}});
+        asyncResp->res.jsonValue["Location@odata.count"] =
+            messageRegistryLocationArray.size();
+    }
+};
+
+class OpenBMCMessageRegistry : public Node
+{
+  public:
+    template <typename CrowApp>
+    OpenBMCMessageRegistry(CrowApp &app) :
+        Node(app, "/redfish/v1/Registries/OpenBMC/OpenBMC/")
+    {
+        entityPrivileges = {
+            {boost::beast::http::verb::get, {{"Login"}}},
+            {boost::beast::http::verb::head, {{"Login"}}},
+            {boost::beast::http::verb::patch, {{"ConfigureManager"}}},
+            {boost::beast::http::verb::put, {{"ConfigureManager"}}},
+            {boost::beast::http::verb::delete_, {{"ConfigureManager"}}},
+            {boost::beast::http::verb::post, {{"ConfigureManager"}}}};
+    }
+
+  private:
+    void doGet(crow::Response &res, const crow::Request &req,
+               const std::vector<std::string> &params) override
+    {
+        std::shared_ptr<AsyncResp> asyncResp = std::make_shared<AsyncResp>(res);
+
+        asyncResp->res.jsonValue["@Redfish.Copyright"] =
+            message_registries::openbmc::header.copyright;
+        asyncResp->res.jsonValue["@odata.type"] =
+            message_registries::openbmc::header.type;
+        asyncResp->res.jsonValue["Id"] = message_registries::openbmc::header.id;
+        asyncResp->res.jsonValue["Name"] =
+            message_registries::openbmc::header.name;
+        asyncResp->res.jsonValue["Language"] =
+            message_registries::openbmc::header.language;
+        asyncResp->res.jsonValue["Description"] =
+            message_registries::openbmc::header.description;
+        asyncResp->res.jsonValue["RegistryPrefix"] =
+            message_registries::openbmc::header.registryPrefix;
+        asyncResp->res.jsonValue["RegistryVersion"] =
+            message_registries::openbmc::header.registryVersion;
+        asyncResp->res.jsonValue["OwningEntity"] =
+            message_registries::openbmc::header.owningEntity;
+        nlohmann::json &messageArray = asyncResp->res.jsonValue["Messages"];
+        messageArray = nlohmann::json::array();
+
+        // Go through the Message Registry and populate each Message
+        for (const message_registries::MessageEntry &message :
+             message_registries::openbmc::registry)
+        {
+            messageArray.push_back(
+                {{message.first,
+                  {{"Description", message.second.description},
+                   {"Message", message.second.message},
+                   {"Severity", message.second.severity},
+                   {"NumberOfArgs", message.second.numberOfArgs},
+                   {"Resolution", message.second.resolution}}}});
+            if (message.second.numberOfArgs > 0)
+            {
+                nlohmann::json &messageParamArray =
+                    messageArray.back()[message.first]["ParamTypes"];
+                for (int i = 0; i < message.second.numberOfArgs; i++)
+                {
+                    messageParamArray.push_back(message.second.paramTypes[i]);
+                }
+            }
+        }
+    }
+};
+
 } // namespace redfish
diff --git a/static/redfish/v1/Registries/OpenBMC/OpenBMC.0.1.0.json b/static/redfish/v1/Registries/OpenBMC/OpenBMC.0.1.0.json
deleted file mode 100644
index 572061d..0000000
--- a/static/redfish/v1/Registries/OpenBMC/OpenBMC.0.1.0.json
+++ /dev/null
@@ -1,123 +0,0 @@
-{
-    "@Redfish.Copyright": "Copyright 2018 Intel. All rights reserved.",
-    "@odata.type": "#MessageRegistry.v1_0_0.MessageRegistry",
-    "Id": "OpenBMC.0.1.0",
-    "Name": "OpenBMC Message Registry",
-    "Language": "en",
-    "Description": "This registry defines the base messages for OpenBMC",
-    "RegistryPrefix": "OpenBMC",
-    "RegistryVersion": "0.1.0",
-    "OwningEntity": "OpenBMC",
-    "Messages": {
-        "SensorThresholdCriticalLowGoingLow": {
-            "Description": "Indicates that a threshold sensor has crossed a critical low threshold going low.",
-            "Message": "%1 sensor crossed a critical low threshold going low. Reading=%2 Threshold=%3.",
-            "Severity": "Critical",
-            "NumberOfArgs": 3,
-            "ParamTypes": [
-                "string",
-                "number",
-                "number"
-            ],
-            "Resolution": "Check the sensor or subsystem for errors."
-        },
-        "SensorThresholdWarningLowGoingLow": {
-            "Description": "Indicates that a threshold sensor has crossed a warning low threshold going low.",
-            "Message": "%1 sensor crossed a warning low threshold going low. Reading=%2 Threshold=%3.",
-            "Severity": "Warning",
-            "NumberOfArgs": 3,
-            "ParamTypes": [
-                "string",
-                "number",
-                "number"
-            ],
-            "Resolution": "Check the sensor or subsystem for errors."
-        },
-        "SensorThresholdWarningHighGoingHigh": {
-            "Description": "Indicates that a threshold sensor has crossed a warning high threshold going high.",
-            "Message": "%1 sensor crossed a warning high threshold going high. Reading=%2 Threshold=%3.",
-            "Severity": "Warning",
-            "NumberOfArgs": 3,
-            "ParamTypes": [
-                "string",
-                "number",
-                "number"
-            ],
-            "Resolution": "Check the sensor or subsystem for errors."
-        },
-        "SensorThresholdCriticalHighGoingHigh": {
-            "Description": "Indicates that a threshold sensor has crossed a critical high threshold going high.",
-            "Message": "%1 sensor crossed a critical high threshold going high. Reading=%2 Threshold=%3.",
-            "Severity": "Critical",
-            "NumberOfArgs": 3,
-            "ParamTypes": [
-                "string",
-                "number",
-                "number"
-            ],
-            "Resolution": "Check the sensor or subsystem for errors."
-        },
-        "SensorThresholdCriticalLowGoingHigh": {
-            "Description": "Indicates that a threshold sensor has crossed a critical low threshold going high.",
-            "Message": "%1 sensor crossed a critical low threshold going high. Reading=%2 Threshold=%3.",
-            "Severity": "OK",
-            "NumberOfArgs": 3,
-            "ParamTypes": [
-                "string",
-                "number",
-                "number"
-            ],
-            "Resolution": "None."
-        },
-        "SensorThresholdWarningLowGoingHigh": {
-            "Description": "Indicates that a threshold sensor has crossed a warning low threshold going high.",
-            "Message": "%1 sensor crossed a warning low threshold going high. Reading=%2 Threshold=%3.",
-            "Severity": "OK",
-            "NumberOfArgs": 3,
-            "ParamTypes": [
-                "string",
-                "number",
-                "number"
-            ],
-            "Resolution": "None."
-        },
-        "SensorThresholdWarningHighGoingLow": {
-            "Description": "Indicates that a threshold sensor has crossed a warning high threshold going low.",
-            "Message": "%1 sensor crossed a warning high threshold going low. Reading=%2 Threshold=%3.",
-            "Severity": "OK",
-            "NumberOfArgs": 3,
-            "ParamTypes": [
-                "string",
-                "number",
-                "number"
-            ],
-            "Resolution": "None."
-        },
-        "SensorThresholdCriticalHighGoingLow": {
-            "Description": "Indicates that a threshold sensor has crossed a critical high threshold going low.",
-            "Message": "%1 sensor crossed a critical high threshold going low. Reading=%2 Threshold=%3.",
-            "Severity": "OK",
-            "NumberOfArgs": 3,
-            "ParamTypes": [
-                "string",
-                "number",
-                "number"
-            ],
-            "Resolution": "None."
-        },
-        "DCPowerOff": {
-            "Description": "Indicates that the system DC power is off.",
-            "Message": "Host system DC power is off",
-            "Severity": "OK",
-            "Resolution": "None.",
-            "NumberOfArgs": 0
-        },
-        "DCPowerOn": {
-            "Description": "Indicates that the system DC power is on.",
-            "Message": "Host system DC power is on",
-            "Severity": "OK",
-            "Resolution": "None.",
-            "NumberOfArgs": 0
-        }
-    }
-}
diff --git a/static/redfish/v1/Registries/OpenBMC/index.json b/static/redfish/v1/Registries/OpenBMC/index.json
deleted file mode 100644
index 1e0e3da..0000000
--- a/static/redfish/v1/Registries/OpenBMC/index.json
+++ /dev/null
@@ -1,20 +0,0 @@
-{
-    "@odata.context": "/redfish/v1/$metadata#MessageRegistryFile.MessageRegistryFile",
-    "@odata.id": "/redfish/v1/Registries/OpenBMC",
-    "@odata.type": "#MessageRegistryFile.v1_1_0.MessageRegistryFile",
-    "Name": "OpenBMC MessageRegistry File",
-    "Description": "OpenBMC MessageRegistry File Location",
-    "Id": "OpenBMC",
-    "Registry": "OpenBMC.0.1",
-    "Languages": [
-        "en"
-    ],
-    "Languages@odata.count": 1,
-    "Location": [
-        {
-            "Language": "en",
-            "Uri": "/redfish/v1/Registries/OpenBMC/OpenBMC.0.1.0.json"
-        }
-    ],
-    "Location@odata.count": 1
-}
\ No newline at end of file