summaryrefslogtreecommitdiffstats
path: root/command/sol_cmds.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'command/sol_cmds.hpp')
-rw-r--r--command/sol_cmds.hpp43
1 files changed, 43 insertions, 0 deletions
diff --git a/command/sol_cmds.hpp b/command/sol_cmds.hpp
index 2336f02..cc19323 100644
--- a/command/sol_cmds.hpp
+++ b/command/sol_cmds.hpp
@@ -186,6 +186,49 @@ struct SetConfParamsResponse
std::vector<uint8_t> setConfParams(const std::vector<uint8_t>& inPayload,
const message::Handler& handler);
+/** @struct GetConfParamsRequest
+ *
+ * IPMI payload for Get SOL configuration parameters command request.
+ */
+struct GetConfParamsRequest
+{
+#if BYTE_ORDER == LITTLE_ENDIAN
+ uint8_t channelNum : 4; //!< Channel number.
+ uint8_t reserved : 3; //!< Reserved.
+ uint8_t getParamRev : 1; //!< Get parameter or Get parameter revision
+#endif
+
+#if BYTE_ORDER == BIG_ENDIAN
+ uint8_t getParamRev : 1; //!< Get parameter or Get parameter revision
+ uint8_t reserved : 3; //!< Reserved.
+ uint8_t channelNum : 4; //!< Channel number.
+#endif
+
+ uint8_t paramSelector; //!< Parameter selector.
+ uint8_t setSelector; //!< Set selector.
+ uint8_t blockSelector; //!< Block selector.
+} __attribute__((packed));
+
+/** @struct GetConfParamsResponse
+ *
+ * IPMI payload for Get SOL configuration parameters command response.
+ */
+struct GetConfParamsResponse
+{
+ uint8_t completionCode; //!< Completion code.
+ uint8_t paramRev; //!< Parameter revision.
+} __attribute__((packed));
+
+/** @brief Get SOL configuration parameters command.
+ *
+ * @param[in] inPayload - Request data for the command.
+ * @param[in] handler - Reference to the message handler.
+ *
+ * @return Response data for the command.
+ */
+std::vector<uint8_t> getConfParams(const std::vector<uint8_t>& inPayload,
+ const message::Handler& handler);
+
} // namespace command
} // namespace sol
OpenPOWER on IntegriCloud