summaryrefslogtreecommitdiff
path: root/redfish-core/include/generated/enums/protocol.hpp
blob: 135c4ddffb3a6b5843b412c2697efa3bb2474f96 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
// SPDX-License-Identifier: Apache-2.0
// SPDX-FileCopyrightText: Copyright OpenBMC Authors
#pragma once
#include <nlohmann/json.hpp>

namespace protocol
{
// clang-format off

enum class Protocol{
    Invalid,
    PCIe,
    AHCI,
    UHCI,
    SAS,
    SATA,
    USB,
    NVMe,
    FC,
    iSCSI,
    FCoE,
    FCP,
    FICON,
    NVMeOverFabrics,
    SMB,
    NFSv3,
    NFSv4,
    HTTP,
    HTTPS,
    FTP,
    SFTP,
    iWARP,
    RoCE,
    RoCEv2,
    I2C,
    TCP,
    UDP,
    TFTP,
    GenZ,
    MultiProtocol,
    InfiniBand,
    Ethernet,
    NVLink,
    OEM,
    DisplayPort,
    HDMI,
    VGA,
    DVI,
    CXL,
    UPI,
    QPI,
    eMMC,
    UET,
    UALink,
};

NLOHMANN_JSON_SERIALIZE_ENUM(Protocol, {
    {Protocol::Invalid, "Invalid"},
    {Protocol::PCIe, "PCIe"},
    {Protocol::AHCI, "AHCI"},
    {Protocol::UHCI, "UHCI"},
    {Protocol::SAS, "SAS"},
    {Protocol::SATA, "SATA"},
    {Protocol::USB, "USB"},
    {Protocol::NVMe, "NVMe"},
    {Protocol::FC, "FC"},
    {Protocol::iSCSI, "iSCSI"},
    {Protocol::FCoE, "FCoE"},
    {Protocol::FCP, "FCP"},
    {Protocol::FICON, "FICON"},
    {Protocol::NVMeOverFabrics, "NVMeOverFabrics"},
    {Protocol::SMB, "SMB"},
    {Protocol::NFSv3, "NFSv3"},
    {Protocol::NFSv4, "NFSv4"},
    {Protocol::HTTP, "HTTP"},
    {Protocol::HTTPS, "HTTPS"},
    {Protocol::FTP, "FTP"},
    {Protocol::SFTP, "SFTP"},
    {Protocol::iWARP, "iWARP"},
    {Protocol::RoCE, "RoCE"},
    {Protocol::RoCEv2, "RoCEv2"},
    {Protocol::I2C, "I2C"},
    {Protocol::TCP, "TCP"},
    {Protocol::UDP, "UDP"},
    {Protocol::TFTP, "TFTP"},
    {Protocol::GenZ, "GenZ"},
    {Protocol::MultiProtocol, "MultiProtocol"},
    {Protocol::InfiniBand, "InfiniBand"},
    {Protocol::Ethernet, "Ethernet"},
    {Protocol::NVLink, "NVLink"},
    {Protocol::OEM, "OEM"},
    {Protocol::DisplayPort, "DisplayPort"},
    {Protocol::HDMI, "HDMI"},
    {Protocol::VGA, "VGA"},
    {Protocol::DVI, "DVI"},
    {Protocol::CXL, "CXL"},
    {Protocol::UPI, "UPI"},
    {Protocol::QPI, "QPI"},
    {Protocol::eMMC, "eMMC"},
    {Protocol::UET, "UET"},
    {Protocol::UALink, "UALink"},
});

// clang-format on
} // namespace protocol