summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTom Joseph <tomjoseph@in.ibm.com>2018-03-27 03:01:58 +0530
committerVernon Mauery <vernon.mauery@linux.intel.com>2018-04-04 15:23:34 +0000
commit6f83cbc9a97578653259345dc2e7a63c7edcdcfc (patch)
tree00a7b988207aace03f7902977437fbc55aa00531
parent1d9d41668fcdaeb99708be784ce04402578182b4 (diff)
downloadphosphor-net-ipmid-6f83cbc9a97578653259345dc2e7a63c7edcdcfc.tar.gz
phosphor-net-ipmid-6f83cbc9a97578653259345dc2e7a63c7edcdcfc.zip
Support SOL parameter channel number
Even though channel number is an optional parameter, the ipmitool shows in the output the channel as 14(0x0e). 0x0e is reserved to indicate in the command, the channel on which the command is received. So the default channel number 1 is returned. Resolves openbmc/openbmc#2959 Change-Id: Ifd069886d4ea8e9ba5c90ca015be39ebdece413d Signed-off-by: Tom Joseph <tomjoseph@in.ibm.com>
-rw-r--r--command/sol_cmds.cpp7
-rw-r--r--sol/sol_manager.hpp10
2 files changed, 16 insertions, 1 deletions
diff --git a/command/sol_cmds.cpp b/command/sol_cmds.cpp
index fd9a610..fffefb3 100644
--- a/command/sol_cmds.cpp
+++ b/command/sol_cmds.cpp
@@ -229,9 +229,14 @@ std::vector<uint8_t> getConfParams(const std::vector<uint8_t>& inPayload,
std::copy_n(buffer, sizeof(port), std::back_inserter(outPayload));
break;
}
+ case Parameter::CHANNEL:
+ {
+ outPayload.push_back(std::get<sol::Manager&>
+ (singletonPool).channel);
+ break;
+ }
case Parameter::NVBITRATE:
case Parameter::VBITRATE:
- case Parameter::CHANNEL:
default:
response->completionCode = ipmiCCParamNotSupported;
}
diff --git a/sol/sol_manager.hpp b/sol/sol_manager.hpp
index 4a615af..a244431 100644
--- a/sol/sol_manager.hpp
+++ b/sol/sol_manager.hpp
@@ -169,6 +169,16 @@ class Manager
*/
std::chrono::milliseconds retryInterval = 100ms;
+ /** @brief Channel Number
+ *
+ * This parameter indicates which IPMI channel is being used for the
+ * communication parameters (e.g. IP address, MAC address) for the SOL
+ * Payload. Typically, these parameters will come from the same channel
+ * that the Activate Payload command for SOL was accepted over. The
+ * network channel number is defaulted to 1.
+ */
+ uint8_t channel = 1;
+
/** @brief Start a SOL payload instance.
*
* Starting a payload instance involves creating the context object,
OpenPOWER on IntegriCloud