summaryrefslogtreecommitdiffstats
path: root/user_channel/channel_layer.hpp
diff options
context:
space:
mode:
authorRichard Marian Thomaiyar <richard.marian.thomaiyar@linux.intel.com>2018-11-29 06:29:21 +0530
committerRichard Marian Thomaiyar <richard.marian.thomaiyar@linux.intel.com>2018-12-19 01:11:45 +0000
commit6e1ba9effa687791170858cf10aa1c26c0742b75 (patch)
tree916ac96453a1a8e4d791bb43e3393eadc8a5c8ac /user_channel/channel_layer.hpp
parent43cb12895039d972e640b992bacf9c13146876ee (diff)
downloadphosphor-host-ipmid-6e1ba9effa687791170858cf10aa1c26c0742b75.tar.gz
phosphor-host-ipmid-6e1ba9effa687791170858cf10aa1c26c0742b75.zip
Doxygen comments for enum & structure
Added doxygen comments for enums & structures for user & channel layers. Unit-test: verified build. Change-Id: Ie5af8d6cdd4c04cb396869b7a3dc44f84efedd19 Signed-off-by: Richard Marian Thomaiyar <richard.marian.thomaiyar@linux.intel.com>
Diffstat (limited to 'user_channel/channel_layer.hpp')
-rw-r--r--user_channel/channel_layer.hpp50
1 files changed, 41 insertions, 9 deletions
diff --git a/user_channel/channel_layer.hpp b/user_channel/channel_layer.hpp
index 3a9b5f5..60badbc 100644
--- a/user_channel/channel_layer.hpp
+++ b/user_channel/channel_layer.hpp
@@ -24,14 +24,19 @@ namespace ipmi
static constexpr uint8_t maxIpmiChannels = 16;
static constexpr uint8_t selfChNum = 0xE;
-// IPMI return codes specific to channel
+/**
+ * @enum IPMI return codes specific to channel (refer spec se 22.22 response
+ * data)
+ */
enum ipmi_channel_return_codes
{
IPMI_CC_ACTION_NOT_SUPPORTED_FOR_CHANNEL = 0x82,
IPMI_CC_ACCESS_MODE_NOT_SUPPORTED_FOR_CHANEL = 0x83
};
-// IPMI Spec: Channel Protocol Type
+/**
+ * @enum Channel Protocol Type (refer spec sec 6.4)
+ */
enum class EChannelProtocolType : uint8_t
{
na = 0x00,
@@ -47,7 +52,9 @@ enum class EChannelProtocolType : uint8_t
oem = 0x1C,
};
-// IPMI Spec: Channel Medium Type
+/**
+ * @enum Channel Medium Type (refer spec sec 6.5)
+ */
enum class EChannelMediumType : uint8_t
{
reserved = 0x00,
@@ -67,7 +74,10 @@ enum class EChannelMediumType : uint8_t
unknown = 0x82,
};
-// IPMI Spec: Channel Session Type
+/**
+ * @enum Channel Session Type (refer spec sec 22.24 -
+ * response data byte 5)
+ */
enum class EChannelSessSupported : uint8_t
{
none = 0,
@@ -76,7 +86,9 @@ enum class EChannelSessSupported : uint8_t
any = 3,
};
-// IPMI Spec: Channel Access Mode
+/**
+ * @enum Channel Access Mode (refer spec sec 6.6)
+ */
enum class EChannelAccessMode : uint8_t
{
disabled = 0,
@@ -85,7 +97,10 @@ enum class EChannelAccessMode : uint8_t
shared = 3,
};
-// IPMI Spec 2.0 : Authentication Types
+/**
+ * @enum Authentication Types (refer spec sec 13.6 - IPMI
+ * Session Header)
+ */
enum class EAuthType : uint8_t
{
none = (1 << 0x0),
@@ -96,7 +111,10 @@ enum class EAuthType : uint8_t
oem = (1 << 0x5),
};
-// IPMI Spec: Access mode for channel access set/get
+/**
+ * @enum Access mode for channel access set/get (refer spec
+ * sec 22.22 - request byte 2[7:6])
+ */
typedef enum
{
doNotSet = 0x00,
@@ -105,6 +123,10 @@ typedef enum
reserved = 0x03,
} EChannelActionType;
+/**
+ * @enum Access set flag to determine changes that has to be updated
+ * in channel access data configuration.
+ */
enum AccessSetFlag
{
setAccessMode = (1 << 0),
@@ -114,7 +136,12 @@ enum AccessSetFlag
setPrivLimit = (1 << 4),
};
-// Struct to store channel access data
+/** @struct ChannelAccess
+ *
+ * Structure to store channel access related information, defined in IPMI
+ * specification and used in Get / Set channel access (refer spec sec 22.22
+ * & 22.23)
+ */
struct ChannelAccess
{
uint8_t accessMode;
@@ -124,7 +151,12 @@ struct ChannelAccess
uint8_t privLimit;
};
-// Struct store channel info data
+/** @struct ChannelInfo
+ *
+ * Structure to store data about channel information, which identifies each
+ * channel type and information as defined in IPMI specification. (refer spec
+ * sec 22.22 & 22.23)
+ */
struct ChannelInfo
{
uint8_t mediumType;
OpenPOWER on IntegriCloud