140e9b92eSEd Tanous // SPDX-License-Identifier: Apache-2.0 240e9b92eSEd Tanous // SPDX-FileCopyrightText: Copyright OpenBMC Authors 3665e7602SGunnar Mills #pragma once 4665e7602SGunnar Mills /**************************************************************** 5665e7602SGunnar Mills * READ THIS WARNING FIRST 6665e7602SGunnar Mills * This is an auto-generated header which contains definitions 7665e7602SGunnar Mills * for Redfish DMTF defined messages. 8665e7602SGunnar Mills * DO NOT modify this registry outside of running the 9665e7602SGunnar Mills * parse_registries.py script. The definitions contained within 10665e7602SGunnar Mills * this file are owned by DMTF. Any modifications to these files 11665e7602SGunnar Mills * should be first pushed to the relevant registry in the DMTF 12665e7602SGunnar Mills * github organization. 13665e7602SGunnar Mills ***************************************************************/ 14665e7602SGunnar Mills #include "registries.hpp" 15665e7602SGunnar Mills 16665e7602SGunnar Mills #include <array> 17665e7602SGunnar Mills 18665e7602SGunnar Mills // clang-format off 19665e7602SGunnar Mills 20*4a102cd4SPatrick Williams namespace redfish::registries 21665e7602SGunnar Mills { 22*4a102cd4SPatrick Williams struct EthernetFabric 23*4a102cd4SPatrick Williams { 24*4a102cd4SPatrick Williams static constexpr Header header = { 25665e7602SGunnar Mills "Copyright 2020-2023 DMTF. All rights reserved.", 26665e7602SGunnar Mills "#MessageRegistry.v1_6_2.MessageRegistry", 2756b81992SEd Tanous 1, 2856b81992SEd Tanous 0, 2956b81992SEd Tanous 1, 30665e7602SGunnar Mills "Ethernet Fabric Message Registry", 31665e7602SGunnar Mills "en", 32665e7602SGunnar Mills "This registry defines messages for Ethernet fabrics.", 33665e7602SGunnar Mills "EthernetFabric", 34665e7602SGunnar Mills "DMTF", 35665e7602SGunnar Mills }; 36*4a102cd4SPatrick Williams 37*4a102cd4SPatrick Williams static constexpr const char* url = 38665e7602SGunnar Mills "https://redfish.dmtf.org/registries/EthernetFabric.1.0.1.json"; 39665e7602SGunnar Mills 40*4a102cd4SPatrick Williams static constexpr std::array registry = 41665e7602SGunnar Mills { 42665e7602SGunnar Mills MessageEntry{ 43665e7602SGunnar Mills "LLDPInterfaceDisabled", 44665e7602SGunnar Mills { 45665e7602SGunnar Mills "Indicates that an interface has disabled Link Layer Discovery Protocol (LLDP).", 46665e7602SGunnar Mills "LLDP was disabled on switch '%1' port '%2'.", 47665e7602SGunnar Mills "Warning", 48665e7602SGunnar Mills 2, 49665e7602SGunnar Mills { 50665e7602SGunnar Mills "string", 51665e7602SGunnar Mills "string", 52665e7602SGunnar Mills }, 53665e7602SGunnar Mills "Check that LLDP is enabled on device endpoints.", 54665e7602SGunnar Mills }}, 55665e7602SGunnar Mills MessageEntry{ 56665e7602SGunnar Mills "LLDPInterfaceEnabled", 57665e7602SGunnar Mills { 58665e7602SGunnar Mills "Indicates that an interface has enabled Link Layer Discovery Protocol (LLDP).", 59665e7602SGunnar Mills "LLDP was enabled on switch '%1' port '%2'.", 60665e7602SGunnar Mills "OK", 61665e7602SGunnar Mills 2, 62665e7602SGunnar Mills { 63665e7602SGunnar Mills "string", 64665e7602SGunnar Mills "string", 65665e7602SGunnar Mills }, 66665e7602SGunnar Mills "None.", 67665e7602SGunnar Mills }}, 68665e7602SGunnar Mills MessageEntry{ 69665e7602SGunnar Mills "MLAGInterfaceDegraded", 70665e7602SGunnar Mills { 71665e7602SGunnar Mills "Indicates that multi-chassis link aggregation group (MLAG) interfaces were established, but at an unexpectedly low aggregated link speed.", 72665e7602SGunnar Mills "MLAG interface '%1' is degraded on switch '%2'.", 73665e7602SGunnar Mills "Warning", 74665e7602SGunnar Mills 2, 75665e7602SGunnar Mills { 76665e7602SGunnar Mills "string", 77665e7602SGunnar Mills "string", 78665e7602SGunnar Mills }, 79665e7602SGunnar Mills "Contact the network administrator for problem resolution.", 80665e7602SGunnar Mills }}, 81665e7602SGunnar Mills MessageEntry{ 82665e7602SGunnar Mills "MLAGInterfaceDown", 83665e7602SGunnar Mills { 84665e7602SGunnar Mills "Indicates that the multi-chassis link aggregation group (MLAG) interface is down on a switch.", 85665e7602SGunnar Mills "The MLAG interface '%1' on switch '%2' is down.", 86665e7602SGunnar Mills "Warning", 87665e7602SGunnar Mills 2, 88665e7602SGunnar Mills { 89665e7602SGunnar Mills "string", 90665e7602SGunnar Mills "string", 91665e7602SGunnar Mills }, 92665e7602SGunnar Mills "Check physical connectivity and that the MLAG system ID matches on switch pairs.", 93665e7602SGunnar Mills }}, 94665e7602SGunnar Mills MessageEntry{ 95665e7602SGunnar Mills "MLAGInterfacesUp", 96665e7602SGunnar Mills { 97665e7602SGunnar Mills "Indicates that all multi-chassis link aggregation group (MLAG) interfaces are up.", 98665e7602SGunnar Mills "All MLAG interfaces were established for MLAG ID '%1'.", 99665e7602SGunnar Mills "OK", 100665e7602SGunnar Mills 1, 101665e7602SGunnar Mills { 102665e7602SGunnar Mills "string", 103665e7602SGunnar Mills }, 104665e7602SGunnar Mills "None.", 105665e7602SGunnar Mills }}, 106665e7602SGunnar Mills MessageEntry{ 107665e7602SGunnar Mills "MLAGPeerDown", 108665e7602SGunnar Mills { 109665e7602SGunnar Mills "Indicates that the multi-chassis link aggregation group (MLAG) peer is down.", 110665e7602SGunnar Mills "MLAG peer switch '%1' with MLAG ID '%2' is down.", 111665e7602SGunnar Mills "Warning", 112665e7602SGunnar Mills 2, 113665e7602SGunnar Mills { 114665e7602SGunnar Mills "string", 115665e7602SGunnar Mills "string", 116665e7602SGunnar Mills }, 117665e7602SGunnar Mills "Check physical connectivity and that the port channel ID matches on switch pairs.", 118665e7602SGunnar Mills }}, 119665e7602SGunnar Mills MessageEntry{ 120665e7602SGunnar Mills "MLAGPeerUp", 121665e7602SGunnar Mills { 122665e7602SGunnar Mills "Indicates that the multi-chassis link aggregation group (MLAG) peer is up.", 123665e7602SGunnar Mills "MLAG peer switch '%1' with MLAG ID '%2' is up.", 124665e7602SGunnar Mills "OK", 125665e7602SGunnar Mills 2, 126665e7602SGunnar Mills { 127665e7602SGunnar Mills "string", 128665e7602SGunnar Mills "string", 129665e7602SGunnar Mills }, 130665e7602SGunnar Mills "None.", 131665e7602SGunnar Mills }}, 132665e7602SGunnar Mills MessageEntry{ 133665e7602SGunnar Mills "RoutingFailureThresholdExceeded", 134665e7602SGunnar Mills { 135665e7602SGunnar Mills "Indicates that a switch has encountered an unusually large number of routing errors.", 136665e7602SGunnar Mills "Switch '%1' has encountered %2 routing errors in the last %3 minutes.", 137665e7602SGunnar Mills "Warning", 138665e7602SGunnar Mills 3, 139665e7602SGunnar Mills { 140665e7602SGunnar Mills "string", 141665e7602SGunnar Mills "number", 142665e7602SGunnar Mills "number", 143665e7602SGunnar Mills }, 144665e7602SGunnar Mills "Contact the network administrator for problem resolution.", 145665e7602SGunnar Mills }}, 146665e7602SGunnar Mills 147665e7602SGunnar Mills }; 148665e7602SGunnar Mills 149665e7602SGunnar Mills enum class Index 150665e7602SGunnar Mills { 151665e7602SGunnar Mills lLDPInterfaceDisabled = 0, 152665e7602SGunnar Mills lLDPInterfaceEnabled = 1, 153665e7602SGunnar Mills mLAGInterfaceDegraded = 2, 154665e7602SGunnar Mills mLAGInterfaceDown = 3, 155665e7602SGunnar Mills mLAGInterfacesUp = 4, 156665e7602SGunnar Mills mLAGPeerDown = 5, 157665e7602SGunnar Mills mLAGPeerUp = 6, 158665e7602SGunnar Mills routingFailureThresholdExceeded = 7, 159665e7602SGunnar Mills }; 160*4a102cd4SPatrick Williams }; // struct ethernet_fabric 161*4a102cd4SPatrick Williams 162*4a102cd4SPatrick Williams [[gnu::constructor]] inline void registerEthernetFabric() 163*4a102cd4SPatrick Williams { registerRegistry<EthernetFabric>(); } 164*4a102cd4SPatrick Williams 165*4a102cd4SPatrick Williams } // namespace redfish::registries 166