summaryrefslogtreecommitdiff
path: root/meta-openbmc-mods/meta-common/recipes-phosphor/ipmi
diff options
context:
space:
mode:
authorJason M. Bills <jason.m.bills@linux.intel.com>2020-01-07 21:40:08 +0300
committerJason M. Bills <jason.m.bills@linux.intel.com>2020-01-07 21:43:56 +0300
commit820013481a115100d5f8f22dc01aac8cc0363a23 (patch)
tree99cd46b66d5b9b97d38265d553f4fb60fee0d6a2 /meta-openbmc-mods/meta-common/recipes-phosphor/ipmi
parent965a056096e5e043748da8766fa50cb7afedb608 (diff)
downloadopenbmc-820013481a115100d5f8f22dc01aac8cc0363a23.tar.xz
Update to internal 2020-01-07
Signed-off-by: Jason M. Bills <jason.m.bills@linux.intel.com>
Diffstat (limited to 'meta-openbmc-mods/meta-common/recipes-phosphor/ipmi')
-rw-r--r--meta-openbmc-mods/meta-common/recipes-phosphor/ipmi/phosphor-ipmi-host/0002-Fixed-issue-in-setLan-command-for-IP-source.patch62
-rw-r--r--meta-openbmc-mods/meta-common/recipes-phosphor/ipmi/phosphor-ipmi-host/0003-Fix-for-return-CC-in-setLan-command-cases.patch69
-rw-r--r--meta-openbmc-mods/meta-common/recipes-phosphor/ipmi/phosphor-ipmi-host_%.bbappend4
-rw-r--r--meta-openbmc-mods/meta-common/recipes-phosphor/ipmi/phosphor-ipmi-net/0012-Do-not-stop-session-in-deactivate-payload.patch48
-rw-r--r--meta-openbmc-mods/meta-common/recipes-phosphor/ipmi/phosphor-ipmi-net_%.bbappend3
-rw-r--r--meta-openbmc-mods/meta-common/recipes-phosphor/ipmi/phosphor-node-manager-proxy_git.bb2
6 files changed, 136 insertions, 52 deletions
diff --git a/meta-openbmc-mods/meta-common/recipes-phosphor/ipmi/phosphor-ipmi-host/0002-Fixed-issue-in-setLan-command-for-IP-source.patch b/meta-openbmc-mods/meta-common/recipes-phosphor/ipmi/phosphor-ipmi-host/0002-Fixed-issue-in-setLan-command-for-IP-source.patch
new file mode 100644
index 000000000..6f080a4f4
--- /dev/null
+++ b/meta-openbmc-mods/meta-common/recipes-phosphor/ipmi/phosphor-ipmi-host/0002-Fixed-issue-in-setLan-command-for-IP-source.patch
@@ -0,0 +1,62 @@
+From 12ebdc2d53a18d286e34abf0f1553ca423ca6ca5 Mon Sep 17 00:00:00 2001
+From: Rajashekar Gade Reddy <raja.sekhar.reddy.gade@linux.intel.com>
+Date: Wed, 18 Dec 2019 12:01:36 +0530
+Subject: [PATCH] Fixed issue in setLan command for IP source.
+
+Issue: returns success completion code for multiple requests which
+is not correct as per IPMI spec.
+
+Fix: Added proper conditional checks
+
+Tested:
+//IP Address Source: 0x0 (unspecified)
+ipmitool -I lanplus -U root -P 0penBmc -H <ip_addr> raw 0x0c 0x01 0x03 0x04 0x0
+0xCC// Invalid data field in request
+
+//IP Address Source: 0x1 (static address)
+ipmitool -I lanplus -U root -P 0penBmc -H <ip_addr> raw 0x0c 0x01 0x03 0x04 0x1
+0x00 //Success
+
+//IP Address Source: 0x2 (address obtained by BMC running DHCP)
+ipmitool -I lanplus -U root -P 0penBmc -H <ip_addr> raw 0x0c 0x01 0x03 0x04 0x2
+0x00 //Success
+
+//IP Address Source: 0x3 (address loaded by the BIOS or system software)
+ipmitool -I lanplus -U root -P 0penBmc -H <ip_addr> raw 0x0c 0x01 0x03 0x04 0x3
+0xCC// Invalid data field in request
+
+//IP Address Source: 0x4 (address obtained by BMC running other address assignment protocol)
+ipmitool -I lanplus -U root -P 0penBmc -H <ip_addr> raw 0x0c 0x01 0x03 0x04 0x4
+0xCC// Invalid data field in request
+
+ipmitool -I lanplus -U root -P 0penBmc -H <ip_addr> raw 0x0c 0x01 0x03 0x04 0x5
+0x80 // param not supported
+
+Signed-off-by: Rajashekar Gade Reddy <raja.sekhar.reddy.gade@linux.intel.com>
+
+%% original patch: 0002-Fixed-issue-in-setLan-command-for-IP-source.patch
+---
+ transporthandler.cpp | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/transporthandler.cpp b/transporthandler.cpp
+index 7407396..2df3e45 100644
+--- a/transporthandler.cpp
++++ b/transporthandler.cpp
+@@ -1453,9 +1453,12 @@ RspType<> setLan(uint4_t channelBits, uint4_t, uint8_t parameter,
+ return responseSuccess();
+ }
+ case IPSrc::Unspecified:
+- case IPSrc::Static:
+ case IPSrc::BIOS:
+ case IPSrc::BMC:
++ {
++ return responseInvalidFieldRequest();
++ }
++ case IPSrc::Static:
+ {
+ channelCall<setDHCPProperty>(channel, dhcpoff);
+ return responseSuccess();
+--
+2.17.1
+
diff --git a/meta-openbmc-mods/meta-common/recipes-phosphor/ipmi/phosphor-ipmi-host/0003-Fix-for-return-CC-in-setLan-command-cases.patch b/meta-openbmc-mods/meta-common/recipes-phosphor/ipmi/phosphor-ipmi-host/0003-Fix-for-return-CC-in-setLan-command-cases.patch
new file mode 100644
index 000000000..bab451f32
--- /dev/null
+++ b/meta-openbmc-mods/meta-common/recipes-phosphor/ipmi/phosphor-ipmi-host/0003-Fix-for-return-CC-in-setLan-command-cases.patch
@@ -0,0 +1,69 @@
+From 8b3cb6842746d43c0cab3d32821dc5239768642f Mon Sep 17 00:00:00 2001
+From: "Joshi, Mansi" <mansi.joshi@linux.intel.com>
+Date: Wed, 18 Dec 2019 15:10:25 +0530
+Subject: [PATCH] Fix for return CC in setLan command cases
+
+Issue: When DHCP is enabled, setting ip and setting subnet mask returns
+completion code 0xff. Setting default gateway returns 0x00.
+
+Fix: Returns CC 0xd5 because this parameter is R/W. It is only unable
+to be updated because the current state blocks it (i.e. 0xd5).
+
+Tested:
+ipmitool raw 0x0c 0x01 0x03 0x03 0x00 0x00 0x00 0x00 //setting ip
+0xd5 //Command, or request parameter, not supported in present state.
+
+ipmitool raw 0x0c 0x01 0x03 0x06 0xff 0xff 0xf0 0x00 //subnet mask
+0xd5 //Command, or request parameter, not supported in present state.
+
+ipmitool raw 0x0c 0x01 0x03 0x0c 0x0a 0xfe 0xef 0x77 //default gateway
+0xd5 //Command, or request parameter, not supported in present state.
+
+%% original patch: 0065-Fix-for-return-CC-in-setLan-command-cases.patch
+---
+ transporthandler.cpp | 15 +++++++++++++++
+ 1 file changed, 15 insertions(+)
+
+diff --git a/transporthandler.cpp b/transporthandler.cpp
+index 7407396..7b9ff3d 100644
+--- a/transporthandler.cpp
++++ b/transporthandler.cpp
+@@ -1423,6 +1423,11 @@ RspType<> setLan(uint4_t channelBits, uint4_t, uint8_t parameter,
+ }
+ case LanParam::IP:
+ {
++ std::string dhcp = channelCall<getDHCPProperty>(channel);
++ if ((dhcp == dhcpv4) || (dhcp == dhcpv4v6))
++ {
++ return responseCommandNotAvailable();
++ }
+ in_addr ip;
+ std::array<uint8_t, sizeof(ip)> bytes;
+ if (req.unpack(bytes) != 0 || !req.fullyUnpacked())
+@@ -1477,6 +1482,11 @@ RspType<> setLan(uint4_t channelBits, uint4_t, uint8_t parameter,
+ }
+ case LanParam::SubnetMask:
+ {
++ std::string dhcp = channelCall<getDHCPProperty>(channel);
++ if ((dhcp == dhcpv4) || (dhcp == dhcpv4v6))
++ {
++ return responseCommandNotAvailable();
++ }
+ in_addr netmask;
+ std::array<uint8_t, sizeof(netmask)> bytes;
+ if (req.unpack(bytes) != 0 || !req.fullyUnpacked())
+@@ -1490,6 +1500,11 @@ RspType<> setLan(uint4_t channelBits, uint4_t, uint8_t parameter,
+ }
+ case LanParam::Gateway1:
+ {
++ std::string dhcp = channelCall<getDHCPProperty>(channel);
++ if ((dhcp == dhcpv4) || (dhcp == dhcpv4v6))
++ {
++ return responseCommandNotAvailable();
++ }
+ in_addr gateway;
+ std::array<uint8_t, sizeof(gateway)> bytes;
+ if (req.unpack(bytes) != 0 || !req.fullyUnpacked())
+--
+2.7.4
+
diff --git a/meta-openbmc-mods/meta-common/recipes-phosphor/ipmi/phosphor-ipmi-host_%.bbappend b/meta-openbmc-mods/meta-common/recipes-phosphor/ipmi/phosphor-ipmi-host_%.bbappend
index c6bc80202..ba148779f 100644
--- a/meta-openbmc-mods/meta-common/recipes-phosphor/ipmi/phosphor-ipmi-host_%.bbappend
+++ b/meta-openbmc-mods/meta-common/recipes-phosphor/ipmi/phosphor-ipmi-host_%.bbappend
@@ -2,7 +2,7 @@ FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
PROJECT_SRC_DIR := "${THISDIR}/${PN}"
SRC_URI = "git://github.com/openbmc/phosphor-host-ipmid"
-SRCREV = "225dec858e52f0e8319acfe72d7b3630adcc7a0d"
+SRCREV = "ebc53cb165ea26aa48f0bbf01d9bce0e4abb0b7d"
SRC_URI += "file://phosphor-ipmi-host.service \
file://host-ipmid-whitelist.conf \
@@ -15,6 +15,8 @@ SRC_URI += "file://phosphor-ipmi-host.service \
file://0063-Save-the-pre-timeout-interrupt-in-dbus-property.patch \
file://0064-Update-provisioning-mode-filter-logic.patch \
file://0001-Modify-Get-Lan-Configuration-IP-Address-Source-to-us.patch \
+ file://0002-Fixed-issue-in-setLan-command-for-IP-source.patch \
+ file://0003-Fix-for-return-CC-in-setLan-command-cases.patch \
"
EXTRA_OECONF_append = " --disable-i2c-whitelist-check"
diff --git a/meta-openbmc-mods/meta-common/recipes-phosphor/ipmi/phosphor-ipmi-net/0012-Do-not-stop-session-in-deactivate-payload.patch b/meta-openbmc-mods/meta-common/recipes-phosphor/ipmi/phosphor-ipmi-net/0012-Do-not-stop-session-in-deactivate-payload.patch
deleted file mode 100644
index 6430a6928..000000000
--- a/meta-openbmc-mods/meta-common/recipes-phosphor/ipmi/phosphor-ipmi-net/0012-Do-not-stop-session-in-deactivate-payload.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-From cf8c0e1bf18334fe4a8f76c1e9b34ccfdc82f6f9 Mon Sep 17 00:00:00 2001
-From: Yong Li <yong.b.li@linux.intel.com>
-Date: Fri, 15 Nov 2019 18:34:04 +0800
-Subject: [PATCH] Do not stop session in deactivate payload
-
-IPMI spec defines that:
-The Deactivate Payload command does not cause the session to be terminated;
-
-Also during SOL looptest, there is only one time startSession call,
-but multiple stopSessions calls,
-This causes the looptest will fail if there is any new sessions comes in,
-needs to remove the stopSession call.
-
-Tested:
-Start the loop test in a terminal:
-ipmitool -H $BMCIP -Uroot -P 0penBmc -I lanplus sol looptest 500 200
-
-Then start a new session in another terminal:
-ipmitool -H $BMCIP -Uroot -P 0penBmc -I lanplus raw 6 1
-
-The looptest still works
-
-Signed-off-by: Yong Li <yong.b.li@linux.intel.com>
----
- command/payload_cmds.cpp | 7 -------
- 1 file changed, 7 deletions(-)
-
-diff --git a/command/payload_cmds.cpp b/command/payload_cmds.cpp
-index f558781..363b843 100644
---- a/command/payload_cmds.cpp
-+++ b/command/payload_cmds.cpp
-@@ -176,13 +176,6 @@ std::vector<uint8_t> deactivatePayload(const std::vector<uint8_t>& inPayload,
- */
- return outPayload;
- }
--
-- auto check =
-- std::get<session::Manager&>(singletonPool).stopSession(sessionID);
-- if (!check)
-- {
-- response->completionCode = IPMI_CC_UNSPECIFIED_ERROR;
-- }
- }
- catch (std::exception& e)
- {
---
-2.7.4
-
diff --git a/meta-openbmc-mods/meta-common/recipes-phosphor/ipmi/phosphor-ipmi-net_%.bbappend b/meta-openbmc-mods/meta-common/recipes-phosphor/ipmi/phosphor-ipmi-net_%.bbappend
index b488e6d8e..614133645 100644
--- a/meta-openbmc-mods/meta-common/recipes-phosphor/ipmi/phosphor-ipmi-net_%.bbappend
+++ b/meta-openbmc-mods/meta-common/recipes-phosphor/ipmi/phosphor-ipmi-net_%.bbappend
@@ -3,7 +3,7 @@ inherit useradd
# TODO: This should be removed, once up-stream bump up
# issue is resolved
SRC_URI += "git://github.com/openbmc/phosphor-net-ipmid"
-SRCREV = "0f63e01ce6bb11920d78d999267558500ca9a272"
+SRCREV = "46bec0f60a201a644c1f3af4cec2f31da58a0595"
USERADD_PACKAGES = "${PN}"
# add a group called ipmi
@@ -22,6 +22,5 @@ FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
SRC_URI += " file://0006-Modify-dbus-namespace-of-chassis-control-for-guid.patch \
file://0009-Add-dbus-interface-for-sol-commands.patch \
file://0011-Remove-Get-SOL-Config-Command-from-Netipmid.patch \
- file://0012-Do-not-stop-session-in-deactivate-payload.patch \
"
diff --git a/meta-openbmc-mods/meta-common/recipes-phosphor/ipmi/phosphor-node-manager-proxy_git.bb b/meta-openbmc-mods/meta-common/recipes-phosphor/ipmi/phosphor-node-manager-proxy_git.bb
index 635f2d3a4..9f657e39b 100644
--- a/meta-openbmc-mods/meta-common/recipes-phosphor/ipmi/phosphor-node-manager-proxy_git.bb
+++ b/meta-openbmc-mods/meta-common/recipes-phosphor/ipmi/phosphor-node-manager-proxy_git.bb
@@ -3,7 +3,7 @@ DESCRIPTION = "The Node Manager Proxy provides a simple interface for communicat
with Management Engine via IPMB"
SRC_URI = "git://github.com/Intel-BMC/node-manager;protocol=ssh"
-SRCREV = "13c62849bce28161fc58134c52920e0c494745f9"
+SRCREV = "ddba32d5ac94cdd8db19e18215535d7fe86675e6"
PV = "0.1+git${SRCPV}"
LICENSE = "Apache-2.0"